Files
libsodium/test/default/ipcrypt.exp
T

50 lines
1.6 KiB
Plaintext

crypto_ipcrypt_BYTES: 16
crypto_ipcrypt_KEYBYTES: 16
crypto_ipcrypt_ND_KEYBYTES: 16
crypto_ipcrypt_ND_TWEAKBYTES: 8
crypto_ipcrypt_ND_INPUTBYTES: 16
crypto_ipcrypt_ND_OUTPUTBYTES: 24
crypto_ipcrypt_NDX_KEYBYTES: 32
crypto_ipcrypt_NDX_TWEAKBYTES: 16
crypto_ipcrypt_NDX_INPUTBYTES: 16
crypto_ipcrypt_NDX_OUTPUTBYTES: 32
Test 1: Format-preserving encryption
Key: 0102030405060708090a0b0c0d0e0f10
Input: 00000000000000000000ffffc0000201
Encrypted: 574549939d262d3dc317324ac05a8d59
Decrypted: 00000000000000000000ffffc0000201
OK: Round-trip successful
Test 2: Non-deterministic encryption (ND mode)
Tweak: aabbccddeeff1122
ND Encrypted: aabbccddeeff1122377e9a17198d908604f3261d45fd639a
ND Decrypted: 00000000000000000000ffffc0000201
OK: ND round-trip successful
Test 3: Non-deterministic encryption (NDX mode with 16-byte tweak)
NDX Key: 0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20
NDX Tweak: aaabacadaeafb0b1b2b3b4b5b6b7b8b9
NDX Encrypted: aaabacadaeafb0b1b2b3b4b5b6b7b8b97df52c417f76ef314bbe7bea5b30bcea
NDX Decrypted: 00000000000000000000ffffc0000201
OK: NDX round-trip successful
Test 4: Key generation
Random key generated (skipped in output)
Random NDX key generated (skipped in output)
Test 5: Different inputs produce different outputs
Input[0]: 00000000000000000000ffff00000000
05406dbec71c4163c3033a3a76b9ebad
Input[1]: 00000000000000000000ffff00000001
1672fc1d4626d0db668088eb5b54a40e
Input[2]: 00000000000000000000ffff00000002
748c9d664ca12e3669ae344a280202c8
Input[3]: 00000000000000000000ffff00000003
524ca1315033ea4509bbaabf93c3ec80
Test 6: Verify deterministic encryption
OK: Deterministic encryption verified
All tests passed!