Use consistent names for ipcrypt array lengths

This commit is contained in:
Frank Denis
2025-12-29 23:13:17 +01:00
parent 12b39aab60
commit 8c84e36514
5 changed files with 64 additions and 38 deletions
+5 -3
View File
@@ -170,21 +170,23 @@ _crypto_core_keccak1600_permute_12 0 1
_crypto_core_keccak1600_permute_24 0 1
_crypto_core_keccak1600_statebytes 0 1
_crypto_core_keccak1600_xor_bytes 0 1
_crypto_ipcrypt_bytes 1 1
_crypto_ipcrypt_decrypt 1 1
_crypto_ipcrypt_encrypt 1 1
_crypto_ipcrypt_inputbytes 1 1
_crypto_ipcrypt_keybytes 1 1
_crypto_ipcrypt_keygen 1 1
_crypto_ipcrypt_nd_bytes 1 1
_crypto_ipcrypt_nd_decrypt 1 1
_crypto_ipcrypt_nd_encrypt 1 1
_crypto_ipcrypt_nd_inputbytes 1 1
_crypto_ipcrypt_nd_keybytes 1 1
_crypto_ipcrypt_nd_outputbytes 1 1
_crypto_ipcrypt_nd_tweakbytes 1 1
_crypto_ipcrypt_ndx_bytes 1 1
_crypto_ipcrypt_ndx_decrypt 1 1
_crypto_ipcrypt_ndx_encrypt 1 1
_crypto_ipcrypt_ndx_inputbytes 1 1
_crypto_ipcrypt_ndx_keybytes 1 1
_crypto_ipcrypt_ndx_keygen 1 1
_crypto_ipcrypt_ndx_outputbytes 1 1
_crypto_ipcrypt_ndx_tweakbytes 1 1
_crypto_kem_mlkem768_ciphertextbytes 1 1
_crypto_kem_mlkem768_dec 1 1
+18 -6
View File
@@ -21,9 +21,9 @@
static const ipcrypt_implementation *implementation = &ipcrypt_soft_implementation;
size_t
crypto_ipcrypt_inputbytes(void)
crypto_ipcrypt_bytes(void)
{
return crypto_ipcrypt_INPUTBYTES;
return crypto_ipcrypt_BYTES;
}
size_t
@@ -45,9 +45,15 @@ crypto_ipcrypt_nd_tweakbytes(void)
}
size_t
crypto_ipcrypt_nd_bytes(void)
crypto_ipcrypt_nd_inputbytes(void)
{
return crypto_ipcrypt_ND_BYTES;
return crypto_ipcrypt_ND_INPUTBYTES;
}
size_t
crypto_ipcrypt_nd_outputbytes(void)
{
return crypto_ipcrypt_ND_OUTPUTBYTES;
}
size_t
@@ -63,9 +69,15 @@ crypto_ipcrypt_ndx_tweakbytes(void)
}
size_t
crypto_ipcrypt_ndx_bytes(void)
crypto_ipcrypt_ndx_inputbytes(void)
{
return crypto_ipcrypt_NDX_BYTES;
return crypto_ipcrypt_NDX_INPUTBYTES;
}
size_t
crypto_ipcrypt_ndx_outputbytes(void)
{
return crypto_ipcrypt_NDX_OUTPUTBYTES;
}
void
+26 -18
View File
@@ -12,9 +12,9 @@
extern "C" {
#endif
#define crypto_ipcrypt_INPUTBYTES 16U
#define crypto_ipcrypt_BYTES 16U
SODIUM_EXPORT
size_t crypto_ipcrypt_inputbytes(void);
size_t crypto_ipcrypt_bytes(void);
#define crypto_ipcrypt_KEYBYTES 16U
SODIUM_EXPORT
@@ -28,9 +28,13 @@ size_t crypto_ipcrypt_nd_keybytes(void);
SODIUM_EXPORT
size_t crypto_ipcrypt_nd_tweakbytes(void);
#define crypto_ipcrypt_ND_BYTES 24U
#define crypto_ipcrypt_ND_INPUTBYTES 16U
SODIUM_EXPORT
size_t crypto_ipcrypt_nd_bytes(void);
size_t crypto_ipcrypt_nd_inputbytes(void);
#define crypto_ipcrypt_ND_OUTPUTBYTES 24U
SODIUM_EXPORT
size_t crypto_ipcrypt_nd_outputbytes(void);
#define crypto_ipcrypt_NDX_KEYBYTES 32U
SODIUM_EXPORT
@@ -40,9 +44,13 @@ size_t crypto_ipcrypt_ndx_keybytes(void);
SODIUM_EXPORT
size_t crypto_ipcrypt_ndx_tweakbytes(void);
#define crypto_ipcrypt_NDX_BYTES 32U
#define crypto_ipcrypt_NDX_INPUTBYTES 16U
SODIUM_EXPORT
size_t crypto_ipcrypt_ndx_bytes(void);
size_t crypto_ipcrypt_ndx_inputbytes(void);
#define crypto_ipcrypt_NDX_OUTPUTBYTES 32U
SODIUM_EXPORT
size_t crypto_ipcrypt_ndx_outputbytes(void);
SODIUM_EXPORT
void crypto_ipcrypt_keygen(unsigned char k[crypto_ipcrypt_KEYBYTES]) __attribute__((nonnull));
@@ -52,40 +60,40 @@ void crypto_ipcrypt_ndx_keygen(unsigned char k[crypto_ipcrypt_NDX_KEYBYTES])
__attribute__((nonnull));
SODIUM_EXPORT
void crypto_ipcrypt_encrypt(unsigned char out[crypto_ipcrypt_INPUTBYTES],
const unsigned char in[crypto_ipcrypt_INPUTBYTES],
void crypto_ipcrypt_encrypt(unsigned char out[crypto_ipcrypt_BYTES],
const unsigned char in[crypto_ipcrypt_BYTES],
const unsigned char k[crypto_ipcrypt_KEYBYTES])
__attribute__((nonnull));
SODIUM_EXPORT
void crypto_ipcrypt_decrypt(unsigned char out[crypto_ipcrypt_INPUTBYTES],
const unsigned char in[crypto_ipcrypt_INPUTBYTES],
void crypto_ipcrypt_decrypt(unsigned char out[crypto_ipcrypt_BYTES],
const unsigned char in[crypto_ipcrypt_BYTES],
const unsigned char k[crypto_ipcrypt_KEYBYTES])
__attribute__((nonnull));
SODIUM_EXPORT
void crypto_ipcrypt_nd_encrypt(unsigned char out[crypto_ipcrypt_ND_BYTES],
const unsigned char in[crypto_ipcrypt_INPUTBYTES],
void crypto_ipcrypt_nd_encrypt(unsigned char out[crypto_ipcrypt_ND_OUTPUTBYTES],
const unsigned char in[crypto_ipcrypt_ND_INPUTBYTES],
const unsigned char t[crypto_ipcrypt_ND_TWEAKBYTES],
const unsigned char k[crypto_ipcrypt_ND_KEYBYTES])
__attribute__((nonnull));
SODIUM_EXPORT
void crypto_ipcrypt_nd_decrypt(unsigned char out[crypto_ipcrypt_INPUTBYTES],
const unsigned char in[crypto_ipcrypt_ND_BYTES],
void crypto_ipcrypt_nd_decrypt(unsigned char out[crypto_ipcrypt_ND_INPUTBYTES],
const unsigned char in[crypto_ipcrypt_ND_OUTPUTBYTES],
const unsigned char k[crypto_ipcrypt_ND_KEYBYTES])
__attribute__((nonnull));
SODIUM_EXPORT
void crypto_ipcrypt_ndx_encrypt(unsigned char out[crypto_ipcrypt_NDX_BYTES],
const unsigned char in[crypto_ipcrypt_INPUTBYTES],
void crypto_ipcrypt_ndx_encrypt(unsigned char out[crypto_ipcrypt_NDX_OUTPUTBYTES],
const unsigned char in[crypto_ipcrypt_NDX_INPUTBYTES],
const unsigned char t[crypto_ipcrypt_NDX_TWEAKBYTES],
const unsigned char k[crypto_ipcrypt_NDX_KEYBYTES])
__attribute__((nonnull));
SODIUM_EXPORT
void crypto_ipcrypt_ndx_decrypt(unsigned char out[crypto_ipcrypt_INPUTBYTES],
const unsigned char in[crypto_ipcrypt_NDX_BYTES],
void crypto_ipcrypt_ndx_decrypt(unsigned char out[crypto_ipcrypt_NDX_INPUTBYTES],
const unsigned char in[crypto_ipcrypt_NDX_OUTPUTBYTES],
const unsigned char k[crypto_ipcrypt_NDX_KEYBYTES])
__attribute__((nonnull));
+10 -8
View File
@@ -15,23 +15,25 @@ main(void)
{
unsigned char key[crypto_ipcrypt_KEYBYTES];
unsigned char ndx_key[crypto_ipcrypt_NDX_KEYBYTES];
unsigned char input[crypto_ipcrypt_INPUTBYTES];
unsigned char output[crypto_ipcrypt_INPUTBYTES];
unsigned char nd_output[crypto_ipcrypt_ND_BYTES];
unsigned char ndx_output[crypto_ipcrypt_NDX_BYTES];
unsigned char input[crypto_ipcrypt_BYTES];
unsigned char output[crypto_ipcrypt_BYTES];
unsigned char nd_output[crypto_ipcrypt_ND_OUTPUTBYTES];
unsigned char ndx_output[crypto_ipcrypt_NDX_OUTPUTBYTES];
unsigned char tweak_nd[crypto_ipcrypt_ND_TWEAKBYTES];
unsigned char tweak_ndx[crypto_ipcrypt_NDX_TWEAKBYTES];
unsigned char decrypted[crypto_ipcrypt_INPUTBYTES];
unsigned char decrypted[crypto_ipcrypt_BYTES];
size_t i;
printf("crypto_ipcrypt_INPUTBYTES: %zu\n", crypto_ipcrypt_inputbytes());
printf("crypto_ipcrypt_BYTES: %zu\n", crypto_ipcrypt_bytes());
printf("crypto_ipcrypt_KEYBYTES: %zu\n", crypto_ipcrypt_keybytes());
printf("crypto_ipcrypt_ND_KEYBYTES: %zu\n", crypto_ipcrypt_nd_keybytes());
printf("crypto_ipcrypt_ND_TWEAKBYTES: %zu\n", crypto_ipcrypt_nd_tweakbytes());
printf("crypto_ipcrypt_ND_BYTES: %zu\n", crypto_ipcrypt_nd_bytes());
printf("crypto_ipcrypt_ND_INPUTBYTES: %zu\n", crypto_ipcrypt_nd_inputbytes());
printf("crypto_ipcrypt_ND_OUTPUTBYTES: %zu\n", crypto_ipcrypt_nd_outputbytes());
printf("crypto_ipcrypt_NDX_KEYBYTES: %zu\n", crypto_ipcrypt_ndx_keybytes());
printf("crypto_ipcrypt_NDX_TWEAKBYTES: %zu\n", crypto_ipcrypt_ndx_tweakbytes());
printf("crypto_ipcrypt_NDX_BYTES: %zu\n", crypto_ipcrypt_ndx_bytes());
printf("crypto_ipcrypt_NDX_INPUTBYTES: %zu\n", crypto_ipcrypt_ndx_inputbytes());
printf("crypto_ipcrypt_NDX_OUTPUTBYTES: %zu\n", crypto_ipcrypt_ndx_outputbytes());
/* Test 1: Format-preserving encryption with known key/input */
memset(key, 0x00, sizeof key);
+5 -3
View File
@@ -1,11 +1,13 @@
crypto_ipcrypt_INPUTBYTES: 16
crypto_ipcrypt_BYTES: 16
crypto_ipcrypt_KEYBYTES: 16
crypto_ipcrypt_ND_KEYBYTES: 16
crypto_ipcrypt_ND_TWEAKBYTES: 8
crypto_ipcrypt_ND_BYTES: 24
crypto_ipcrypt_ND_INPUTBYTES: 16
crypto_ipcrypt_ND_OUTPUTBYTES: 24
crypto_ipcrypt_NDX_KEYBYTES: 32
crypto_ipcrypt_NDX_TWEAKBYTES: 16
crypto_ipcrypt_NDX_BYTES: 32
crypto_ipcrypt_NDX_INPUTBYTES: 16
crypto_ipcrypt_NDX_OUTPUTBYTES: 32
Test 1: Format-preserving encryption
Key: 0102030405060708090a0b0c0d0e0f10