chiark / gitweb /
halfway through implementing mintstamp
[chiark-tcl.git] / crypto / crypto.tct
1
2
3 Table *hbcryptotoplevel TopLevel_Command
4         hbcrypto
5                 subcmd  enum(HBCrypto/_SubCommand, "hbcrypto subcommand")
6                 ...     obj
7
8 Table hbcrypto HBCrypto_SubCommand
9         pad
10                 op      enum(PadOp/, "hbytes pad subcommand")
11                 v       hbv
12                 blocksz obj
13                 meth    enum(PadMethodInfo/, "pad method")
14                 ...     methargs
15         blockcipher
16                 op      enum(BlockCipherOp/, "op")
17                 ...     obj
18         hash
19                 alg     enum(HashAlgInfo/, "hash alg")
20                 message hb
21                 =>      hb
22         hmac
23                 alg     enum(HashAlgInfo/, "hash alg for hmac")
24                 message hb
25                 key     obj
26                 ?maclen obj
27                 =>      hb
28         hash-prop
29                 prop    enum(HashAlgPropInfo/, "prop")
30                 alg     enum(HashAlgInfo/, "alg")
31                 =>      int
32
33 Table padmethodinfo PadMethodInfo
34         pkcs5
35                 =>      int
36         rfc2406
37                 nxthdr  obj
38                 =>      int
39
40 Table blockcipherop BlockCipherOp
41         e       1
42                 v       hbv
43                 alg     enum(BlockCipherAlgInfo/, "alg")
44                 key     obj
45                 mode    enum(BlockCipherModeInfo/, "mode")
46                 ?iv     hb
47                 =>      hb
48         d       0
49                 v       hbv
50                 alg     enum(BlockCipherAlgInfo/, "alg")
51                 key     obj
52                 mode    enum(BlockCipherModeInfo/, "mode")
53                 ?iv     hb
54                 =>      hb
55         mac     -1
56                 msg     hb
57                 alg     enum(BlockCipherAlgInfo/, "alg")
58                 key     obj
59                 mode    enum(BlockCipherModeInfo/, "mode")
60                 iv      hb
61                 =>      hb
62         prop    -1
63                 prop    enum(BlockCipherPropInfo/, "prop")
64                 alg     enum(BlockCipherAlgInfo/, "alg")
65                 =>      int
66
67 EntryExtra BlockCipherOp
68         int encrypt;