1 // tweetnacl.h - written and placed in the public domain by Jeffrey Walton 2 3 /// \file nr.h 4 /// \brief Declarations for Bernstein's TweetNaCL 5 /// \details TweetNaCL is used to cross-validate the library's implementations. 6 /// The implementation itself is not optimized and kind of amusing. However 7 /// it serves a valuable purpose for cross-validation. 8 /// \details Don't use this in production. 9 10 #ifndef TWEETNACL_H 11 #define TWEETNACL_H 12 #define crypto_auth_PRIMITIVE "hmacsha512256" 13 #define crypto_auth crypto_auth_hmacsha512256 14 #define crypto_auth_verify crypto_auth_hmacsha512256_verify 15 #define crypto_auth_BYTES crypto_auth_hmacsha512256_BYTES 16 #define crypto_auth_KEYBYTES crypto_auth_hmacsha512256_KEYBYTES 17 #define crypto_auth_IMPLEMENTATION crypto_auth_hmacsha512256_IMPLEMENTATION 18 #define crypto_auth_VERSION crypto_auth_hmacsha512256_VERSION 19 #define crypto_auth_hmacsha512256_tweet_BYTES 32 20 #define crypto_auth_hmacsha512256_tweet_KEYBYTES 32 21 extern int crypto_auth_hmacsha512256_tweet(unsigned char *,const unsigned char *,unsigned long long,const unsigned char *); 22 extern int crypto_auth_hmacsha512256_tweet_verify(const unsigned char *,const unsigned char *,unsigned long long,const unsigned char *); 23 #define crypto_auth_hmacsha512256_tweet_VERSION "-" 24 #define crypto_auth_hmacsha512256 crypto_auth_hmacsha512256_tweet 25 #define crypto_auth_hmacsha512256_verify crypto_auth_hmacsha512256_tweet_verify 26 #define crypto_auth_hmacsha512256_BYTES crypto_auth_hmacsha512256_tweet_BYTES 27 #define crypto_auth_hmacsha512256_KEYBYTES crypto_auth_hmacsha512256_tweet_KEYBYTES 28 #define crypto_auth_hmacsha512256_VERSION crypto_auth_hmacsha512256_tweet_VERSION 29 #define crypto_auth_hmacsha512256_IMPLEMENTATION "crypto_auth/hmacsha512256/tweet" 30 #define crypto_box_PRIMITIVE "curve25519xsalsa20poly1305" 31 #define crypto_box crypto_box_curve25519xsalsa20poly1305 32 #define crypto_box_open crypto_box_curve25519xsalsa20poly1305_open 33 #define crypto_box_keypair crypto_box_curve25519xsalsa20poly1305_keypair 34 #define crypto_box_beforenm crypto_box_curve25519xsalsa20poly1305_beforenm 35 #define crypto_box_afternm crypto_box_curve25519xsalsa20poly1305_afternm 36 #define crypto_box_open_afternm crypto_box_curve25519xsalsa20poly1305_open_afternm 37 #define crypto_box_PUBLICKEYBYTES crypto_box_curve25519xsalsa20poly1305_PUBLICKEYBYTES 38 #define crypto_box_SECRETKEYBYTES crypto_box_curve25519xsalsa20poly1305_SECRETKEYBYTES 39 #define crypto_box_BEFORENMBYTES crypto_box_curve25519xsalsa20poly1305_BEFORENMBYTES 40 #define crypto_box_NONCEBYTES crypto_box_curve25519xsalsa20poly1305_NONCEBYTES 41 #define crypto_box_ZEROBYTES crypto_box_curve25519xsalsa20poly1305_ZEROBYTES 42 #define crypto_box_BOXZEROBYTES crypto_box_curve25519xsalsa20poly1305_BOXZEROBYTES 43 #define crypto_box_IMPLEMENTATION crypto_box_curve25519xsalsa20poly1305_IMPLEMENTATION 44 #define crypto_box_VERSION crypto_box_curve25519xsalsa20poly1305_VERSION 45 #define crypto_box_curve25519xsalsa20poly1305_tweet_PUBLICKEYBYTES 32 46 #define crypto_box_curve25519xsalsa20poly1305_tweet_SECRETKEYBYTES 32 47 #define crypto_box_curve25519xsalsa20poly1305_tweet_BEFORENMBYTES 32 48 #define crypto_box_curve25519xsalsa20poly1305_tweet_NONCEBYTES 24 49 #define crypto_box_curve25519xsalsa20poly1305_tweet_ZEROBYTES 32 50 #define crypto_box_curve25519xsalsa20poly1305_tweet_BOXZEROBYTES 16 51 extern int crypto_box_curve25519xsalsa20poly1305_tweet(unsigned char *,const unsigned char *,unsigned long long,const unsigned char *,const unsigned char *,const unsigned char *); 52 extern int crypto_box_curve25519xsalsa20poly1305_tweet_open(unsigned char *,const unsigned char *,unsigned long long,const unsigned char *,const unsigned char *,const unsigned char *); 53 extern int crypto_box_curve25519xsalsa20poly1305_tweet_keypair(unsigned char *,unsigned char *); 54 extern int crypto_box_curve25519xsalsa20poly1305_tweet_beforenm(unsigned char *,const unsigned char *,const unsigned char *); 55 extern int crypto_box_curve25519xsalsa20poly1305_tweet_afternm(unsigned char *,const unsigned char *,unsigned long long,const unsigned char *,const unsigned char *); 56 extern int crypto_box_curve25519xsalsa20poly1305_tweet_open_afternm(unsigned char *,const unsigned char *,unsigned long long,const unsigned char *,const unsigned char *); 57 #define crypto_box_curve25519xsalsa20poly1305_tweet_VERSION "-" 58 #define crypto_box_curve25519xsalsa20poly1305 crypto_box_curve25519xsalsa20poly1305_tweet 59 #define crypto_box_curve25519xsalsa20poly1305_open crypto_box_curve25519xsalsa20poly1305_tweet_open 60 #define crypto_box_curve25519xsalsa20poly1305_keypair crypto_box_curve25519xsalsa20poly1305_tweet_keypair 61 #define crypto_box_curve25519xsalsa20poly1305_beforenm crypto_box_curve25519xsalsa20poly1305_tweet_beforenm 62 #define crypto_box_curve25519xsalsa20poly1305_afternm crypto_box_curve25519xsalsa20poly1305_tweet_afternm 63 #define crypto_box_curve25519xsalsa20poly1305_open_afternm crypto_box_curve25519xsalsa20poly1305_tweet_open_afternm 64 #define crypto_box_curve25519xsalsa20poly1305_PUBLICKEYBYTES crypto_box_curve25519xsalsa20poly1305_tweet_PUBLICKEYBYTES 65 #define crypto_box_curve25519xsalsa20poly1305_SECRETKEYBYTES crypto_box_curve25519xsalsa20poly1305_tweet_SECRETKEYBYTES 66 #define crypto_box_curve25519xsalsa20poly1305_BEFORENMBYTES crypto_box_curve25519xsalsa20poly1305_tweet_BEFORENMBYTES 67 #define crypto_box_curve25519xsalsa20poly1305_NONCEBYTES crypto_box_curve25519xsalsa20poly1305_tweet_NONCEBYTES 68 #define crypto_box_curve25519xsalsa20poly1305_ZEROBYTES crypto_box_curve25519xsalsa20poly1305_tweet_ZEROBYTES 69 #define crypto_box_curve25519xsalsa20poly1305_BOXZEROBYTES crypto_box_curve25519xsalsa20poly1305_tweet_BOXZEROBYTES 70 #define crypto_box_curve25519xsalsa20poly1305_VERSION crypto_box_curve25519xsalsa20poly1305_tweet_VERSION 71 #define crypto_box_curve25519xsalsa20poly1305_IMPLEMENTATION "crypto_box/curve25519xsalsa20poly1305/tweet" 72 #define crypto_core_PRIMITIVE "salsa20" 73 #define crypto_core crypto_core_salsa20 74 #define crypto_core_OUTPUTBYTES crypto_core_salsa20_OUTPUTBYTES 75 #define crypto_core_INPUTBYTES crypto_core_salsa20_INPUTBYTES 76 #define crypto_core_KEYBYTES crypto_core_salsa20_KEYBYTES 77 #define crypto_core_CONSTBYTES crypto_core_salsa20_CONSTBYTES 78 #define crypto_core_IMPLEMENTATION crypto_core_salsa20_IMPLEMENTATION 79 #define crypto_core_VERSION crypto_core_salsa20_VERSION 80 #define crypto_core_salsa20_tweet_OUTPUTBYTES 64 81 #define crypto_core_salsa20_tweet_INPUTBYTES 16 82 #define crypto_core_salsa20_tweet_KEYBYTES 32 83 #define crypto_core_salsa20_tweet_CONSTBYTES 16 84 extern int crypto_core_salsa20_tweet(unsigned char *,const unsigned char *,const unsigned char *,const unsigned char *); 85 #define crypto_core_salsa20_tweet_VERSION "-" 86 #define crypto_core_salsa20 crypto_core_salsa20_tweet 87 #define crypto_core_salsa20_OUTPUTBYTES crypto_core_salsa20_tweet_OUTPUTBYTES 88 #define crypto_core_salsa20_INPUTBYTES crypto_core_salsa20_tweet_INPUTBYTES 89 #define crypto_core_salsa20_KEYBYTES crypto_core_salsa20_tweet_KEYBYTES 90 #define crypto_core_salsa20_CONSTBYTES crypto_core_salsa20_tweet_CONSTBYTES 91 #define crypto_core_salsa20_VERSION crypto_core_salsa20_tweet_VERSION 92 #define crypto_core_salsa20_IMPLEMENTATION "crypto_core/salsa20/tweet" 93 #define crypto_core_hsalsa20_tweet_OUTPUTBYTES 32 94 #define crypto_core_hsalsa20_tweet_INPUTBYTES 16 95 #define crypto_core_hsalsa20_tweet_KEYBYTES 32 96 #define crypto_core_hsalsa20_tweet_CONSTBYTES 16 97 extern int crypto_core_hsalsa20_tweet(unsigned char *,const unsigned char *,const unsigned char *,const unsigned char *); 98 #define crypto_core_hsalsa20_tweet_VERSION "-" 99 #define crypto_core_hsalsa20 crypto_core_hsalsa20_tweet 100 #define crypto_core_hsalsa20_OUTPUTBYTES crypto_core_hsalsa20_tweet_OUTPUTBYTES 101 #define crypto_core_hsalsa20_INPUTBYTES crypto_core_hsalsa20_tweet_INPUTBYTES 102 #define crypto_core_hsalsa20_KEYBYTES crypto_core_hsalsa20_tweet_KEYBYTES 103 #define crypto_core_hsalsa20_CONSTBYTES crypto_core_hsalsa20_tweet_CONSTBYTES 104 #define crypto_core_hsalsa20_VERSION crypto_core_hsalsa20_tweet_VERSION 105 #define crypto_core_hsalsa20_IMPLEMENTATION "crypto_core/hsalsa20/tweet" 106 #define crypto_hashblocks_PRIMITIVE "sha512" 107 #define crypto_hashblocks crypto_hashblocks_sha512 108 #define crypto_hashblocks_STATEBYTES crypto_hashblocks_sha512_STATEBYTES 109 #define crypto_hashblocks_BLOCKBYTES crypto_hashblocks_sha512_BLOCKBYTES 110 #define crypto_hashblocks_IMPLEMENTATION crypto_hashblocks_sha512_IMPLEMENTATION 111 #define crypto_hashblocks_VERSION crypto_hashblocks_sha512_VERSION 112 #define crypto_hashblocks_sha512_tweet_STATEBYTES 64 113 #define crypto_hashblocks_sha512_tweet_BLOCKBYTES 128 114 extern int crypto_hashblocks_sha512_tweet(unsigned char *,const unsigned char *,unsigned long long); 115 #define crypto_hashblocks_sha512_tweet_VERSION "-" 116 #define crypto_hashblocks_sha512 crypto_hashblocks_sha512_tweet 117 #define crypto_hashblocks_sha512_STATEBYTES crypto_hashblocks_sha512_tweet_STATEBYTES 118 #define crypto_hashblocks_sha512_BLOCKBYTES crypto_hashblocks_sha512_tweet_BLOCKBYTES 119 #define crypto_hashblocks_sha512_VERSION crypto_hashblocks_sha512_tweet_VERSION 120 #define crypto_hashblocks_sha512_IMPLEMENTATION "crypto_hashblocks/sha512/tweet" 121 #define crypto_hashblocks_sha256_tweet_STATEBYTES 32 122 #define crypto_hashblocks_sha256_tweet_BLOCKBYTES 64 123 extern int crypto_hashblocks_sha256_tweet(unsigned char *,const unsigned char *,unsigned long long); 124 #define crypto_hashblocks_sha256_tweet_VERSION "-" 125 #define crypto_hashblocks_sha256 crypto_hashblocks_sha256_tweet 126 #define crypto_hashblocks_sha256_STATEBYTES crypto_hashblocks_sha256_tweet_STATEBYTES 127 #define crypto_hashblocks_sha256_BLOCKBYTES crypto_hashblocks_sha256_tweet_BLOCKBYTES 128 #define crypto_hashblocks_sha256_VERSION crypto_hashblocks_sha256_tweet_VERSION 129 #define crypto_hashblocks_sha256_IMPLEMENTATION "crypto_hashblocks/sha256/tweet" 130 #define crypto_hash_PRIMITIVE "sha512" 131 #define crypto_hash crypto_hash_sha512 132 #define crypto_hash_BYTES crypto_hash_sha512_BYTES 133 #define crypto_hash_IMPLEMENTATION crypto_hash_sha512_IMPLEMENTATION 134 #define crypto_hash_VERSION crypto_hash_sha512_VERSION 135 #define crypto_hash_sha512_tweet_BYTES 64 136 extern int crypto_hash_sha512_tweet(unsigned char *,const unsigned char *,unsigned long long); 137 #define crypto_hash_sha512_tweet_VERSION "-" 138 #define crypto_hash_sha512 crypto_hash_sha512_tweet 139 #define crypto_hash_sha512_BYTES crypto_hash_sha512_tweet_BYTES 140 #define crypto_hash_sha512_VERSION crypto_hash_sha512_tweet_VERSION 141 #define crypto_hash_sha512_IMPLEMENTATION "crypto_hash/sha512/tweet" 142 #define crypto_hash_sha256_tweet_BYTES 32 143 extern int crypto_hash_sha256_tweet(unsigned char *,const unsigned char *,unsigned long long); 144 #define crypto_hash_sha256_tweet_VERSION "-" 145 #define crypto_hash_sha256 crypto_hash_sha256_tweet 146 #define crypto_hash_sha256_BYTES crypto_hash_sha256_tweet_BYTES 147 #define crypto_hash_sha256_VERSION crypto_hash_sha256_tweet_VERSION 148 #define crypto_hash_sha256_IMPLEMENTATION "crypto_hash/sha256/tweet" 149 #define crypto_onetimeauth_PRIMITIVE "poly1305" 150 #define crypto_onetimeauth crypto_onetimeauth_poly1305 151 #define crypto_onetimeauth_verify crypto_onetimeauth_poly1305_verify 152 #define crypto_onetimeauth_BYTES crypto_onetimeauth_poly1305_BYTES 153 #define crypto_onetimeauth_KEYBYTES crypto_onetimeauth_poly1305_KEYBYTES 154 #define crypto_onetimeauth_IMPLEMENTATION crypto_onetimeauth_poly1305_IMPLEMENTATION 155 #define crypto_onetimeauth_VERSION crypto_onetimeauth_poly1305_VERSION 156 #define crypto_onetimeauth_poly1305_tweet_BYTES 16 157 #define crypto_onetimeauth_poly1305_tweet_KEYBYTES 32 158 extern int crypto_onetimeauth_poly1305_tweet(unsigned char *,const unsigned char *,unsigned long long,const unsigned char *); 159 extern int crypto_onetimeauth_poly1305_tweet_verify(const unsigned char *,const unsigned char *,unsigned long long,const unsigned char *); 160 #define crypto_onetimeauth_poly1305_tweet_VERSION "-" 161 #define crypto_onetimeauth_poly1305 crypto_onetimeauth_poly1305_tweet 162 #define crypto_onetimeauth_poly1305_verify crypto_onetimeauth_poly1305_tweet_verify 163 #define crypto_onetimeauth_poly1305_BYTES crypto_onetimeauth_poly1305_tweet_BYTES 164 #define crypto_onetimeauth_poly1305_KEYBYTES crypto_onetimeauth_poly1305_tweet_KEYBYTES 165 #define crypto_onetimeauth_poly1305_VERSION crypto_onetimeauth_poly1305_tweet_VERSION 166 #define crypto_onetimeauth_poly1305_IMPLEMENTATION "crypto_onetimeauth/poly1305/tweet" 167 #define crypto_scalarmult_PRIMITIVE "curve25519" 168 #define crypto_scalarmult crypto_scalarmult_curve25519 169 #define crypto_scalarmult_base crypto_scalarmult_curve25519_base 170 #define crypto_scalarmult_BYTES crypto_scalarmult_curve25519_BYTES 171 #define crypto_scalarmult_SCALARBYTES crypto_scalarmult_curve25519_SCALARBYTES 172 #define crypto_scalarmult_IMPLEMENTATION crypto_scalarmult_curve25519_IMPLEMENTATION 173 #define crypto_scalarmult_VERSION crypto_scalarmult_curve25519_VERSION 174 #define crypto_scalarmult_curve25519_tweet_BYTES 32 175 #define crypto_scalarmult_curve25519_tweet_SCALARBYTES 32 176 extern int crypto_scalarmult_curve25519_tweet(unsigned char *,const unsigned char *,const unsigned char *); 177 extern int crypto_scalarmult_curve25519_tweet_base(unsigned char *,const unsigned char *); 178 #define crypto_scalarmult_curve25519_tweet_VERSION "-" 179 #define crypto_scalarmult_curve25519 crypto_scalarmult_curve25519_tweet 180 #define crypto_scalarmult_curve25519_base crypto_scalarmult_curve25519_tweet_base 181 #define crypto_scalarmult_curve25519_BYTES crypto_scalarmult_curve25519_tweet_BYTES 182 #define crypto_scalarmult_curve25519_SCALARBYTES crypto_scalarmult_curve25519_tweet_SCALARBYTES 183 #define crypto_scalarmult_curve25519_VERSION crypto_scalarmult_curve25519_tweet_VERSION 184 #define crypto_scalarmult_curve25519_IMPLEMENTATION "crypto_scalarmult/curve25519/tweet" 185 #define crypto_secretbox_PRIMITIVE "xsalsa20poly1305" 186 #define crypto_secretbox crypto_secretbox_xsalsa20poly1305 187 #define crypto_secretbox_open crypto_secretbox_xsalsa20poly1305_open 188 #define crypto_secretbox_KEYBYTES crypto_secretbox_xsalsa20poly1305_KEYBYTES 189 #define crypto_secretbox_NONCEBYTES crypto_secretbox_xsalsa20poly1305_NONCEBYTES 190 #define crypto_secretbox_ZEROBYTES crypto_secretbox_xsalsa20poly1305_ZEROBYTES 191 #define crypto_secretbox_BOXZEROBYTES crypto_secretbox_xsalsa20poly1305_BOXZEROBYTES 192 #define crypto_secretbox_IMPLEMENTATION crypto_secretbox_xsalsa20poly1305_IMPLEMENTATION 193 #define crypto_secretbox_VERSION crypto_secretbox_xsalsa20poly1305_VERSION 194 #define crypto_secretbox_xsalsa20poly1305_tweet_KEYBYTES 32 195 #define crypto_secretbox_xsalsa20poly1305_tweet_NONCEBYTES 24 196 #define crypto_secretbox_xsalsa20poly1305_tweet_ZEROBYTES 32 197 #define crypto_secretbox_xsalsa20poly1305_tweet_BOXZEROBYTES 16 198 extern int crypto_secretbox_xsalsa20poly1305_tweet(unsigned char *,const unsigned char *,unsigned long long,const unsigned char *,const unsigned char *); 199 extern int crypto_secretbox_xsalsa20poly1305_tweet_open(unsigned char *,const unsigned char *,unsigned long long,const unsigned char *,const unsigned char *); 200 #define crypto_secretbox_xsalsa20poly1305_tweet_VERSION "-" 201 #define crypto_secretbox_xsalsa20poly1305 crypto_secretbox_xsalsa20poly1305_tweet 202 #define crypto_secretbox_xsalsa20poly1305_open crypto_secretbox_xsalsa20poly1305_tweet_open 203 #define crypto_secretbox_xsalsa20poly1305_KEYBYTES crypto_secretbox_xsalsa20poly1305_tweet_KEYBYTES 204 #define crypto_secretbox_xsalsa20poly1305_NONCEBYTES crypto_secretbox_xsalsa20poly1305_tweet_NONCEBYTES 205 #define crypto_secretbox_xsalsa20poly1305_ZEROBYTES crypto_secretbox_xsalsa20poly1305_tweet_ZEROBYTES 206 #define crypto_secretbox_xsalsa20poly1305_BOXZEROBYTES crypto_secretbox_xsalsa20poly1305_tweet_BOXZEROBYTES 207 #define crypto_secretbox_xsalsa20poly1305_VERSION crypto_secretbox_xsalsa20poly1305_tweet_VERSION 208 #define crypto_secretbox_xsalsa20poly1305_IMPLEMENTATION "crypto_secretbox/xsalsa20poly1305/tweet" 209 #define crypto_sign_PRIMITIVE "ed25519" 210 #define crypto_sign crypto_sign_ed25519 211 #define crypto_sign_open crypto_sign_ed25519_open 212 #define crypto_sign_keypair crypto_sign_ed25519_keypair 213 #define crypto_sign_BYTES crypto_sign_ed25519_BYTES 214 #define crypto_sign_PUBLICKEYBYTES crypto_sign_ed25519_PUBLICKEYBYTES 215 #define crypto_sign_SECRETKEYBYTES crypto_sign_ed25519_SECRETKEYBYTES 216 #define crypto_sign_IMPLEMENTATION crypto_sign_ed25519_IMPLEMENTATION 217 #define crypto_sign_VERSION crypto_sign_ed25519_VERSION 218 #define crypto_sign_ed25519_tweet_BYTES 64 219 #define crypto_sign_ed25519_tweet_PUBLICKEYBYTES 32 220 #define crypto_sign_ed25519_tweet_SECRETKEYBYTES 64 221 extern int crypto_sign_ed25519_tweet(unsigned char *,unsigned long long *,const unsigned char *,unsigned long long,const unsigned char *); 222 extern int crypto_sign_ed25519_tweet_open(unsigned char *,unsigned long long *,const unsigned char *,unsigned long long,const unsigned char *); 223 extern int crypto_sign_ed25519_tweet_keypair(unsigned char *,unsigned char *); 224 #define crypto_sign_ed25519_tweet_VERSION "-" 225 #define crypto_sign_ed25519 crypto_sign_ed25519_tweet 226 #define crypto_sign_ed25519_open crypto_sign_ed25519_tweet_open 227 #define crypto_sign_ed25519_keypair crypto_sign_ed25519_tweet_keypair 228 #define crypto_sign_ed25519_BYTES crypto_sign_ed25519_tweet_BYTES 229 #define crypto_sign_ed25519_PUBLICKEYBYTES crypto_sign_ed25519_tweet_PUBLICKEYBYTES 230 #define crypto_sign_ed25519_SECRETKEYBYTES crypto_sign_ed25519_tweet_SECRETKEYBYTES 231 #define crypto_sign_ed25519_VERSION crypto_sign_ed25519_tweet_VERSION 232 #define crypto_sign_ed25519_IMPLEMENTATION "crypto_sign/ed25519/tweet" 233 #define crypto_stream_PRIMITIVE "xsalsa20" 234 #define crypto_stream crypto_stream_xsalsa20 235 #define crypto_stream_xor crypto_stream_xsalsa20_xor 236 #define crypto_stream_KEYBYTES crypto_stream_xsalsa20_KEYBYTES 237 #define crypto_stream_NONCEBYTES crypto_stream_xsalsa20_NONCEBYTES 238 #define crypto_stream_IMPLEMENTATION crypto_stream_xsalsa20_IMPLEMENTATION 239 #define crypto_stream_VERSION crypto_stream_xsalsa20_VERSION 240 #define crypto_stream_xsalsa20_tweet_KEYBYTES 32 241 #define crypto_stream_xsalsa20_tweet_NONCEBYTES 24 242 extern int crypto_stream_xsalsa20_tweet(unsigned char *,unsigned long long,const unsigned char *,const unsigned char *); 243 extern int crypto_stream_xsalsa20_tweet_xor(unsigned char *,const unsigned char *,unsigned long long,const unsigned char *,const unsigned char *); 244 #define crypto_stream_xsalsa20_tweet_VERSION "-" 245 #define crypto_stream_xsalsa20 crypto_stream_xsalsa20_tweet 246 #define crypto_stream_xsalsa20_xor crypto_stream_xsalsa20_tweet_xor 247 #define crypto_stream_xsalsa20_KEYBYTES crypto_stream_xsalsa20_tweet_KEYBYTES 248 #define crypto_stream_xsalsa20_NONCEBYTES crypto_stream_xsalsa20_tweet_NONCEBYTES 249 #define crypto_stream_xsalsa20_VERSION crypto_stream_xsalsa20_tweet_VERSION 250 #define crypto_stream_xsalsa20_IMPLEMENTATION "crypto_stream/xsalsa20/tweet" 251 #define crypto_stream_salsa20_tweet_KEYBYTES 32 252 #define crypto_stream_salsa20_tweet_NONCEBYTES 8 253 extern int crypto_stream_salsa20_tweet(unsigned char *,unsigned long long,const unsigned char *,const unsigned char *); 254 extern int crypto_stream_salsa20_tweet_xor(unsigned char *,const unsigned char *,unsigned long long,const unsigned char *,const unsigned char *); 255 #define crypto_stream_salsa20_tweet_VERSION "-" 256 #define crypto_stream_salsa20 crypto_stream_salsa20_tweet 257 #define crypto_stream_salsa20_xor crypto_stream_salsa20_tweet_xor 258 #define crypto_stream_salsa20_KEYBYTES crypto_stream_salsa20_tweet_KEYBYTES 259 #define crypto_stream_salsa20_NONCEBYTES crypto_stream_salsa20_tweet_NONCEBYTES 260 #define crypto_stream_salsa20_VERSION crypto_stream_salsa20_tweet_VERSION 261 #define crypto_stream_salsa20_IMPLEMENTATION "crypto_stream/salsa20/tweet" 262 #define crypto_verify_PRIMITIVE "16" 263 #define crypto_verify crypto_verify_16 264 #define crypto_verify_BYTES crypto_verify_16_BYTES 265 #define crypto_verify_IMPLEMENTATION crypto_verify_16_IMPLEMENTATION 266 #define crypto_verify_VERSION crypto_verify_16_VERSION 267 #define crypto_verify_16_tweet_BYTES 16 268 extern int crypto_verify_16_tweet(const unsigned char *,const unsigned char *); 269 #define crypto_verify_16_tweet_VERSION "-" 270 #define crypto_verify_16 crypto_verify_16_tweet 271 #define crypto_verify_16_BYTES crypto_verify_16_tweet_BYTES 272 #define crypto_verify_16_VERSION crypto_verify_16_tweet_VERSION 273 #define crypto_verify_16_IMPLEMENTATION "crypto_verify/16/tweet" 274 #define crypto_verify_32_tweet_BYTES 32 275 extern int crypto_verify_32_tweet(const unsigned char *,const unsigned char *); 276 #define crypto_verify_32_tweet_VERSION "-" 277 #define crypto_verify_32 crypto_verify_32_tweet 278 #define crypto_verify_32_BYTES crypto_verify_32_tweet_BYTES 279 #define crypto_verify_32_VERSION crypto_verify_32_tweet_VERSION 280 #define crypto_verify_32_IMPLEMENTATION "crypto_verify/32/tweet" 281 #endif 282