/usr/include/sodium
NameSizeModeActions
core.h3910644editdlrm
crypto_aead_aes256gcm.h79800644editdlrm
crypto_aead_chacha20poly1305.h87820644editdlrm
crypto_aead_xchacha20poly1305.h48480644editdlrm
crypto_auth.h11430644editdlrm
crypto_auth_hmacsha256.h21360644editdlrm
crypto_auth_hmacsha512.h21230644editdlrm
crypto_auth_hmacsha512256.h21330644editdlrm
crypto_box.h68380644editdlrm
crypto_box_curve25519xchacha20poly1305.h79570644editdlrm
crypto_box_curve25519xsalsa20poly1305.h46970644editdlrm
crypto_core_ed25519.h28980644editdlrm
crypto_core_hchacha20.h8160644editdlrm
crypto_core_hsalsa20.h8040644editdlrm
crypto_core_ristretto255.h31400644editdlrm
crypto_core_salsa20.h7920644editdlrm
crypto_core_salsa208.h9680644editdlrm
crypto_core_salsa2012.h8160644editdlrm
crypto_generichash.h24950644editdlrm
crypto_generichash_blake2b.h39630644editdlrm
crypto_hash.h9010644editdlrm
crypto_hash_sha256.h14920644editdlrm
crypto_hash_sha512.h14960644editdlrm
crypto_kdf.h13080644editdlrm
crypto_kdf_blake2b.h10710644editdlrm
crypto_kx.h22010644editdlrm
crypto_onetimeauth.h19120644editdlrm
crypto_onetimeauth_poly1305.h21980644editdlrm
crypto_pwhash.h49660644editdlrm
crypto_pwhash_argon2i.h39190644editdlrm
crypto_pwhash_argon2id.h39810644editdlrm
crypto_pwhash_scryptsalsa208sha256.h46880644editdlrm
crypto_scalarmult.h11840644editdlrm
crypto_scalarmult_curve25519.h10980644editdlrm
crypto_scalarmult_ed25519.h14060644editdlrm
crypto_scalarmult_ristretto255.h11190644editdlrm
crypto_secretbox.h33160644editdlrm
crypto_secretbox_xchacha20poly1305.h28530644editdlrm
crypto_secretbox_xsalsa20poly1305.h24190644editdlrm
crypto_secretstream_xchacha20poly1305.h38320644editdlrm
crypto_shorthash.h9600644editdlrm
crypto_shorthash_siphash24.h12360644editdlrm
crypto_sign.h33530644editdlrm
crypto_sign_ed25519.h43410644editdlrm
crypto_sign_edwards25519sha512batch.h20530644editdlrm
crypto_stream.h16060644editdlrm
crypto_stream_chacha20.h36720644editdlrm
crypto_stream_salsa20.h18360644editdlrm
crypto_stream_salsa208.h17310644editdlrm
crypto_stream_salsa2012.h15320644editdlrm
crypto_stream_xchacha20.h18750644editdlrm
crypto_stream_xsalsa20.h18560644editdlrm
crypto_verify_16.h4190644editdlrm
crypto_verify_32.h4190644editdlrm
crypto_verify_64.h4190644editdlrm
export.h13470644editdlrm
randombytes.h18470644editdlrm
randombytes_internal_random.h4270644editdlrm
randombytes_sysrandom.h2820644editdlrm
runtime.h8890644editdlrm
utils.h61490644editdlrm
version.h5090644editdlrm
Edit: /usr/include/sodium/crypto_stream_chacha20.h (3672B)
#ifndef crypto_stream_chacha20_H #define crypto_stream_chacha20_H /* * WARNING: This is just a stream cipher. It is NOT authenticated encryption. * While it provides some protection against eavesdropping, it does NOT * provide any security against active attacks. * Unless you know what you're doing, what you are looking for is probably * the crypto_box functions. */ #include #include #include "export.h" #ifdef __cplusplus # ifdef __GNUC__ # pragma GCC diagnostic ignored "-Wlong-long" # endif extern "C" { #endif #define crypto_stream_chacha20_KEYBYTES 32U SODIUM_EXPORT size_t crypto_stream_chacha20_keybytes(void); #define crypto_stream_chacha20_NONCEBYTES 8U SODIUM_EXPORT size_t crypto_stream_chacha20_noncebytes(void); #define crypto_stream_chacha20_MESSAGEBYTES_MAX SODIUM_SIZE_MAX SODIUM_EXPORT size_t crypto_stream_chacha20_messagebytes_max(void); /* ChaCha20 with a 64-bit nonce and a 64-bit counter, as originally designed */ SODIUM_EXPORT int crypto_stream_chacha20(unsigned char *c, unsigned long long clen, const unsigned char *n, const unsigned char *k) __attribute__ ((nonnull)); SODIUM_EXPORT int crypto_stream_chacha20_xor(unsigned char *c, const unsigned char *m, unsigned long long mlen, const unsigned char *n, const unsigned char *k) __attribute__ ((nonnull)); SODIUM_EXPORT int crypto_stream_chacha20_xor_ic(unsigned char *c, const unsigned char *m, unsigned long long mlen, const unsigned char *n, uint64_t ic, const unsigned char *k) __attribute__ ((nonnull)); SODIUM_EXPORT void crypto_stream_chacha20_keygen(unsigned char k[crypto_stream_chacha20_KEYBYTES]) __attribute__ ((nonnull)); /* ChaCha20 with a 96-bit nonce and a 32-bit counter (IETF) */ #define crypto_stream_chacha20_ietf_KEYBYTES 32U SODIUM_EXPORT size_t crypto_stream_chacha20_ietf_keybytes(void); #define crypto_stream_chacha20_ietf_NONCEBYTES 12U SODIUM_EXPORT size_t crypto_stream_chacha20_ietf_noncebytes(void); #define crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX \ SODIUM_MIN(SODIUM_SIZE_MAX, 64ULL * (1ULL << 32)) SODIUM_EXPORT size_t crypto_stream_chacha20_ietf_messagebytes_max(void); SODIUM_EXPORT int crypto_stream_chacha20_ietf(unsigned char *c, unsigned long long clen, const unsigned char *n, const unsigned char *k) __attribute__ ((nonnull)); SODIUM_EXPORT int crypto_stream_chacha20_ietf_xor(unsigned char *c, const unsigned char *m, unsigned long long mlen, const unsigned char *n, const unsigned char *k) __attribute__ ((nonnull)); SODIUM_EXPORT int crypto_stream_chacha20_ietf_xor_ic(unsigned char *c, const unsigned char *m, unsigned long long mlen, const unsigned char *n, uint32_t ic, const unsigned char *k) __attribute__ ((nonnull)); SODIUM_EXPORT void crypto_stream_chacha20_ietf_keygen(unsigned char k[crypto_stream_chacha20_ietf_KEYBYTES]) __attribute__ ((nonnull)); /* Aliases */ #define crypto_stream_chacha20_IETF_KEYBYTES crypto_stream_chacha20_ietf_KEYBYTES #define crypto_stream_chacha20_IETF_NONCEBYTES crypto_stream_chacha20_ietf_NONCEBYTES #define crypto_stream_chacha20_IETF_MESSAGEBYTES_MAX crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX #ifdef __cplusplus } #endif #endif