1 2 #include "crypto_stream.h" 3 #include "randombytes.h" 4 5 size_t 6 crypto_stream_keybytes(void) 7 { 8 return crypto_stream_KEYBYTES; 9 } 10 11 size_t 12 crypto_stream_noncebytes(void) 13 { 14 return crypto_stream_NONCEBYTES; 15 } 16 17 size_t 18 crypto_stream_messagebytes_max(void) 19 { 20 return crypto_stream_MESSAGEBYTES_MAX; 21 } 22 23 const char * 24 crypto_stream_primitive(void) 25 { 26 return crypto_stream_PRIMITIVE; 27 } 28 29 int 30 crypto_stream(unsigned char *c, unsigned long long clen, 31 const unsigned char *n, const unsigned char *k) 32 { 33 return crypto_stream_xsalsa20(c, clen, n, k); 34 } 35 36 37 int 38 crypto_stream_xor(unsigned char *c, const unsigned char *m, 39 unsigned long long mlen, const unsigned char *n, 40 const unsigned char *k) 41 { 42 return crypto_stream_xsalsa20_xor(c, m, mlen, n, k); 43 } 44 45 void 46 crypto_stream_keygen(unsigned char k[crypto_stream_KEYBYTES]) 47 { 48 randombytes_buf(k, crypto_stream_KEYBYTES); 49 } 50