1CAST5 vector creation
2=====================
3
4This page documents the code that was used to generate the CAST5 CBC, CFB, OFB,
5and CTR test vectors as well as the code used to verify them against another
6implementation. The CBC, CFB, and OFB vectors were generated using OpenSSL and
7the CTR vectors were generated using Apple's CommonCrypto. All the generated
8vectors were verified with Go.
9
10Creation
11--------
12
13``cryptography`` was modified to support CAST5 in CBC, CFB, and OFB modes. Then
14the following Python script was run to generate the vector files.
15
16.. literalinclude:: /development/custom-vectors/cast5/generate_cast5.py
17
18Download link: :download:`generate_cast5.py
19</development/custom-vectors/cast5/generate_cast5.py>`
20
21
22Verification
23------------
24
25The following Go code was used to verify the vectors.
26
27.. literalinclude:: /development/custom-vectors/cast5/verify_cast5.go
28    :language: go
29
30Download link: :download:`verify_cast5.go
31</development/custom-vectors/cast5/verify_cast5.go>`
32