|
@@ -397,14 +397,14 @@ extern struct ltc_cipher_descriptor {
|
|
|
@param skey The scheduled key
|
|
|
@return CRYPT_OK if successful
|
|
|
*/
|
|
|
- int (*ecb_encrypt)(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
+ int (*ecb_encrypt)(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
/** Decrypt a block
|
|
|
@param ct The ciphertext
|
|
|
@param pt [out] The plaintext
|
|
|
@param skey The scheduled key
|
|
|
@return CRYPT_OK if successful
|
|
|
*/
|
|
|
- int (*ecb_decrypt)(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+ int (*ecb_decrypt)(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
/** Test the block cipher
|
|
|
@return CRYPT_OK if successful, CRYPT_NOP if self-testing has been disabled
|
|
|
*/
|
|
@@ -598,8 +598,8 @@ extern struct ltc_cipher_descriptor {
|
|
|
@return CRYPT_OK if successful
|
|
|
*/
|
|
|
int (*accel_xts_encrypt)(const unsigned char *pt, unsigned char *ct,
|
|
|
- unsigned long blocks, unsigned char *tweak, symmetric_key *skey1,
|
|
|
- symmetric_key *skey2);
|
|
|
+ unsigned long blocks, unsigned char *tweak,
|
|
|
+ const symmetric_key *skey1, const symmetric_key *skey2);
|
|
|
|
|
|
/** Accelerated XTS decryption
|
|
|
@param ct Ciphertext
|
|
@@ -613,14 +613,14 @@ extern struct ltc_cipher_descriptor {
|
|
|
@return CRYPT_OK if successful
|
|
|
*/
|
|
|
int (*accel_xts_decrypt)(const unsigned char *ct, unsigned char *pt,
|
|
|
- unsigned long blocks, unsigned char *tweak, symmetric_key *skey1,
|
|
|
- symmetric_key *skey2);
|
|
|
+ unsigned long blocks, unsigned char *tweak,
|
|
|
+ const symmetric_key *skey1, const symmetric_key *skey2);
|
|
|
} cipher_descriptor[];
|
|
|
|
|
|
#ifdef LTC_BLOWFISH
|
|
|
int blowfish_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int blowfish_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int blowfish_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int blowfish_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int blowfish_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int blowfish_test(void);
|
|
|
void blowfish_done(symmetric_key *skey);
|
|
|
int blowfish_keysize(int *keysize);
|
|
@@ -629,8 +629,8 @@ extern const struct ltc_cipher_descriptor blowfish_desc;
|
|
|
|
|
|
#ifdef LTC_RC5
|
|
|
int rc5_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int rc5_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int rc5_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int rc5_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int rc5_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int rc5_test(void);
|
|
|
void rc5_done(symmetric_key *skey);
|
|
|
int rc5_keysize(int *keysize);
|
|
@@ -639,8 +639,8 @@ extern const struct ltc_cipher_descriptor rc5_desc;
|
|
|
|
|
|
#ifdef LTC_RC6
|
|
|
int rc6_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int rc6_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int rc6_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int rc6_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int rc6_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int rc6_test(void);
|
|
|
void rc6_done(symmetric_key *skey);
|
|
|
int rc6_keysize(int *keysize);
|
|
@@ -650,8 +650,8 @@ extern const struct ltc_cipher_descriptor rc6_desc;
|
|
|
#ifdef LTC_RC2
|
|
|
int rc2_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
int rc2_setup_ex(const unsigned char *key, int keylen, int bits, int num_rounds, symmetric_key *skey);
|
|
|
-int rc2_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int rc2_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int rc2_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int rc2_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int rc2_test(void);
|
|
|
void rc2_done(symmetric_key *skey);
|
|
|
int rc2_keysize(int *keysize);
|
|
@@ -660,8 +660,8 @@ extern const struct ltc_cipher_descriptor rc2_desc;
|
|
|
|
|
|
#ifdef LTC_SAFERP
|
|
|
int saferp_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int saferp_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int saferp_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int saferp_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int saferp_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int saferp_test(void);
|
|
|
void saferp_done(symmetric_key *skey);
|
|
|
int saferp_keysize(int *keysize);
|
|
@@ -673,8 +673,8 @@ int safer_k64_setup(const unsigned char *key, int keylen, int num_rounds, symmet
|
|
|
int safer_sk64_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
int safer_k128_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
int safer_sk128_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int safer_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *key);
|
|
|
-int safer_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *key);
|
|
|
+int safer_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *key);
|
|
|
+int safer_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *key);
|
|
|
int safer_k64_test(void);
|
|
|
int safer_sk64_test(void);
|
|
|
int safer_sk128_test(void);
|
|
@@ -699,13 +699,13 @@ extern const struct ltc_cipher_descriptor safer_k64_desc, safer_k128_desc, safer
|
|
|
#define aes_enc_keysize rijndael_enc_keysize
|
|
|
|
|
|
int rijndael_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int rijndael_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int rijndael_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int rijndael_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int rijndael_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int rijndael_test(void);
|
|
|
void rijndael_done(symmetric_key *skey);
|
|
|
int rijndael_keysize(int *keysize);
|
|
|
int rijndael_enc_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int rijndael_enc_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
+int rijndael_enc_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
void rijndael_enc_done(symmetric_key *skey);
|
|
|
int rijndael_enc_keysize(int *keysize);
|
|
|
extern const struct ltc_cipher_descriptor rijndael_desc, aes_desc;
|
|
@@ -714,8 +714,8 @@ extern const struct ltc_cipher_descriptor rijndael_enc_desc, aes_enc_desc;
|
|
|
|
|
|
#ifdef LTC_XTEA
|
|
|
int xtea_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int xtea_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int xtea_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int xtea_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int xtea_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int xtea_test(void);
|
|
|
void xtea_done(symmetric_key *skey);
|
|
|
int xtea_keysize(int *keysize);
|
|
@@ -724,8 +724,8 @@ extern const struct ltc_cipher_descriptor xtea_desc;
|
|
|
|
|
|
#ifdef LTC_TWOFISH
|
|
|
int twofish_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int twofish_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int twofish_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int twofish_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int twofish_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int twofish_test(void);
|
|
|
void twofish_done(symmetric_key *skey);
|
|
|
int twofish_keysize(int *keysize);
|
|
@@ -734,14 +734,14 @@ extern const struct ltc_cipher_descriptor twofish_desc;
|
|
|
|
|
|
#ifdef LTC_DES
|
|
|
int des_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int des_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int des_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int des_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int des_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int des_test(void);
|
|
|
void des_done(symmetric_key *skey);
|
|
|
int des_keysize(int *keysize);
|
|
|
int des3_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int des3_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int des3_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int des3_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int des3_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int des3_test(void);
|
|
|
void des3_done(symmetric_key *skey);
|
|
|
int des3_keysize(int *keysize);
|
|
@@ -750,8 +750,8 @@ extern const struct ltc_cipher_descriptor des_desc, des3_desc;
|
|
|
|
|
|
#ifdef LTC_CAST5
|
|
|
int cast5_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int cast5_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int cast5_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int cast5_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int cast5_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int cast5_test(void);
|
|
|
void cast5_done(symmetric_key *skey);
|
|
|
int cast5_keysize(int *keysize);
|
|
@@ -760,8 +760,8 @@ extern const struct ltc_cipher_descriptor cast5_desc;
|
|
|
|
|
|
#ifdef LTC_NOEKEON
|
|
|
int noekeon_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int noekeon_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int noekeon_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int noekeon_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int noekeon_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int noekeon_test(void);
|
|
|
void noekeon_done(symmetric_key *skey);
|
|
|
int noekeon_keysize(int *keysize);
|
|
@@ -770,8 +770,8 @@ extern const struct ltc_cipher_descriptor noekeon_desc;
|
|
|
|
|
|
#ifdef LTC_SKIPJACK
|
|
|
int skipjack_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int skipjack_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int skipjack_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int skipjack_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int skipjack_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int skipjack_test(void);
|
|
|
void skipjack_done(symmetric_key *skey);
|
|
|
int skipjack_keysize(int *keysize);
|
|
@@ -780,8 +780,8 @@ extern const struct ltc_cipher_descriptor skipjack_desc;
|
|
|
|
|
|
#ifdef LTC_KHAZAD
|
|
|
int khazad_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int khazad_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int khazad_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int khazad_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int khazad_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int khazad_test(void);
|
|
|
void khazad_done(symmetric_key *skey);
|
|
|
int khazad_keysize(int *keysize);
|
|
@@ -790,8 +790,8 @@ extern const struct ltc_cipher_descriptor khazad_desc;
|
|
|
|
|
|
#ifdef LTC_ANUBIS
|
|
|
int anubis_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int anubis_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int anubis_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int anubis_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int anubis_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int anubis_test(void);
|
|
|
void anubis_done(symmetric_key *skey);
|
|
|
int anubis_keysize(int *keysize);
|
|
@@ -800,8 +800,8 @@ extern const struct ltc_cipher_descriptor anubis_desc;
|
|
|
|
|
|
#ifdef LTC_KSEED
|
|
|
int kseed_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int kseed_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int kseed_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int kseed_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int kseed_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int kseed_test(void);
|
|
|
void kseed_done(symmetric_key *skey);
|
|
|
int kseed_keysize(int *keysize);
|
|
@@ -810,8 +810,8 @@ extern const struct ltc_cipher_descriptor kseed_desc;
|
|
|
|
|
|
#ifdef LTC_KASUMI
|
|
|
int kasumi_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int kasumi_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int kasumi_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int kasumi_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int kasumi_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int kasumi_test(void);
|
|
|
void kasumi_done(symmetric_key *skey);
|
|
|
int kasumi_keysize(int *keysize);
|
|
@@ -821,8 +821,8 @@ extern const struct ltc_cipher_descriptor kasumi_desc;
|
|
|
|
|
|
#ifdef LTC_MULTI2
|
|
|
int multi2_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int multi2_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int multi2_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int multi2_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int multi2_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int multi2_test(void);
|
|
|
void multi2_done(symmetric_key *skey);
|
|
|
int multi2_keysize(int *keysize);
|
|
@@ -831,8 +831,8 @@ extern const struct ltc_cipher_descriptor multi2_desc;
|
|
|
|
|
|
#ifdef LTC_CAMELLIA
|
|
|
int camellia_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int camellia_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int camellia_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int camellia_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int camellia_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int camellia_test(void);
|
|
|
void camellia_done(symmetric_key *skey);
|
|
|
int camellia_keysize(int *keysize);
|
|
@@ -841,8 +841,8 @@ extern const struct ltc_cipher_descriptor camellia_desc;
|
|
|
|
|
|
#ifdef LTC_IDEA
|
|
|
int idea_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int idea_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int idea_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int idea_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int idea_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int idea_test(void);
|
|
|
void idea_done(symmetric_key *skey);
|
|
|
int idea_keysize(int *keysize);
|
|
@@ -851,8 +851,8 @@ extern const struct ltc_cipher_descriptor idea_desc;
|
|
|
|
|
|
#ifdef LTC_SERPENT
|
|
|
int serpent_setup(const unsigned char *key, int keylen, int num_rounds, symmetric_key *skey);
|
|
|
-int serpent_ecb_encrypt(const unsigned char *pt, unsigned char *ct, symmetric_key *skey);
|
|
|
-int serpent_ecb_decrypt(const unsigned char *ct, unsigned char *pt, symmetric_key *skey);
|
|
|
+int serpent_ecb_encrypt(const unsigned char *pt, unsigned char *ct, const symmetric_key *skey);
|
|
|
+int serpent_ecb_decrypt(const unsigned char *ct, unsigned char *pt, const symmetric_key *skey);
|
|
|
int serpent_test(void);
|
|
|
void serpent_done(symmetric_key *skey);
|
|
|
int serpent_keysize(int *keysize);
|
|
@@ -872,7 +872,7 @@ int cfb_start(int cipher, const unsigned char *IV, const unsigned char *key,
|
|
|
int keylen, int num_rounds, symmetric_CFB *cfb);
|
|
|
int cfb_encrypt(const unsigned char *pt, unsigned char *ct, unsigned long len, symmetric_CFB *cfb);
|
|
|
int cfb_decrypt(const unsigned char *ct, unsigned char *pt, unsigned long len, symmetric_CFB *cfb);
|
|
|
-int cfb_getiv(unsigned char *IV, unsigned long *len, symmetric_CFB *cfb);
|
|
|
+int cfb_getiv(unsigned char *IV, unsigned long *len, const symmetric_CFB *cfb);
|
|
|
int cfb_setiv(const unsigned char *IV, unsigned long len, symmetric_CFB *cfb);
|
|
|
int cfb_done(symmetric_CFB *cfb);
|
|
|
#endif
|
|
@@ -882,7 +882,7 @@ int ofb_start(int cipher, const unsigned char *IV, const unsigned char *key,
|
|
|
int keylen, int num_rounds, symmetric_OFB *ofb);
|
|
|
int ofb_encrypt(const unsigned char *pt, unsigned char *ct, unsigned long len, symmetric_OFB *ofb);
|
|
|
int ofb_decrypt(const unsigned char *ct, unsigned char *pt, unsigned long len, symmetric_OFB *ofb);
|
|
|
-int ofb_getiv(unsigned char *IV, unsigned long *len, symmetric_OFB *ofb);
|
|
|
+int ofb_getiv(unsigned char *IV, unsigned long *len, const symmetric_OFB *ofb);
|
|
|
int ofb_setiv(const unsigned char *IV, unsigned long len, symmetric_OFB *ofb);
|
|
|
int ofb_done(symmetric_OFB *ofb);
|
|
|
#endif
|
|
@@ -892,7 +892,7 @@ int cbc_start(int cipher, const unsigned char *IV, const unsigned char *key,
|
|
|
int keylen, int num_rounds, symmetric_CBC *cbc);
|
|
|
int cbc_encrypt(const unsigned char *pt, unsigned char *ct, unsigned long len, symmetric_CBC *cbc);
|
|
|
int cbc_decrypt(const unsigned char *ct, unsigned char *pt, unsigned long len, symmetric_CBC *cbc);
|
|
|
-int cbc_getiv(unsigned char *IV, unsigned long *len, symmetric_CBC *cbc);
|
|
|
+int cbc_getiv(unsigned char *IV, unsigned long *len, const symmetric_CBC *cbc);
|
|
|
int cbc_setiv(const unsigned char *IV, unsigned long len, symmetric_CBC *cbc);
|
|
|
int cbc_done(symmetric_CBC *cbc);
|
|
|
#endif
|
|
@@ -910,7 +910,7 @@ int ctr_start( int cipher,
|
|
|
symmetric_CTR *ctr);
|
|
|
int ctr_encrypt(const unsigned char *pt, unsigned char *ct, unsigned long len, symmetric_CTR *ctr);
|
|
|
int ctr_decrypt(const unsigned char *ct, unsigned char *pt, unsigned long len, symmetric_CTR *ctr);
|
|
|
-int ctr_getiv(unsigned char *IV, unsigned long *len, symmetric_CTR *ctr);
|
|
|
+int ctr_getiv(unsigned char *IV, unsigned long *len, const symmetric_CTR *ctr);
|
|
|
int ctr_setiv(const unsigned char *IV, unsigned long len, symmetric_CTR *ctr);
|
|
|
int ctr_done(symmetric_CTR *ctr);
|
|
|
int ctr_test(void);
|
|
@@ -929,7 +929,7 @@ int lrw_start( int cipher,
|
|
|
symmetric_LRW *lrw);
|
|
|
int lrw_encrypt(const unsigned char *pt, unsigned char *ct, unsigned long len, symmetric_LRW *lrw);
|
|
|
int lrw_decrypt(const unsigned char *ct, unsigned char *pt, unsigned long len, symmetric_LRW *lrw);
|
|
|
-int lrw_getiv(unsigned char *IV, unsigned long *len, symmetric_LRW *lrw);
|
|
|
+int lrw_getiv(unsigned char *IV, unsigned long *len, const symmetric_LRW *lrw);
|
|
|
int lrw_setiv(const unsigned char *IV, unsigned long len, symmetric_LRW *lrw);
|
|
|
int lrw_done(symmetric_LRW *lrw);
|
|
|
int lrw_test(void);
|
|
@@ -945,7 +945,7 @@ int f8_start( int cipher, const unsigned char *IV,
|
|
|
int num_rounds, symmetric_F8 *f8);
|
|
|
int f8_encrypt(const unsigned char *pt, unsigned char *ct, unsigned long len, symmetric_F8 *f8);
|
|
|
int f8_decrypt(const unsigned char *ct, unsigned char *pt, unsigned long len, symmetric_F8 *f8);
|
|
|
-int f8_getiv(unsigned char *IV, unsigned long *len, symmetric_F8 *f8);
|
|
|
+int f8_getiv(unsigned char *IV, unsigned long *len, const symmetric_F8 *f8);
|
|
|
int f8_setiv(const unsigned char *IV, unsigned long len, symmetric_F8 *f8);
|
|
|
int f8_done(symmetric_F8 *f8);
|
|
|
int f8_test_mode(void);
|
|
@@ -968,12 +968,12 @@ int xts_encrypt(
|
|
|
const unsigned char *pt, unsigned long ptlen,
|
|
|
unsigned char *ct,
|
|
|
unsigned char *tweak,
|
|
|
- symmetric_xts *xts);
|
|
|
+ const symmetric_xts *xts);
|
|
|
int xts_decrypt(
|
|
|
const unsigned char *ct, unsigned long ptlen,
|
|
|
unsigned char *pt,
|
|
|
unsigned char *tweak,
|
|
|
- symmetric_xts *xts);
|
|
|
+ const symmetric_xts *xts);
|
|
|
|
|
|
void xts_done(symmetric_xts *xts);
|
|
|
int xts_test(void);
|
|
@@ -1046,8 +1046,8 @@ typedef struct {
|
|
|
unsigned ptr;
|
|
|
} sosemanuk_state;
|
|
|
|
|
|
-int sosemanuk_setup(sosemanuk_state *ss, unsigned char *key, unsigned long keylen);
|
|
|
-int sosemanuk_setiv(sosemanuk_state *ss, unsigned char *iv, unsigned long ivlen);
|
|
|
+int sosemanuk_setup(sosemanuk_state *ss, const unsigned char *key, unsigned long keylen);
|
|
|
+int sosemanuk_setiv(sosemanuk_state *ss, const unsigned char *iv, unsigned long ivlen);
|
|
|
int sosemanuk_crypt(sosemanuk_state *ss, const unsigned char *in, unsigned long datalen, unsigned char *out);
|
|
|
int sosemanuk_keystream(sosemanuk_state *ss, unsigned char *out, unsigned long outlen);
|
|
|
int sosemanuk_done(sosemanuk_state *ss);
|