bend-collections-laws-crypto
Search uses release 1.0.0.0 · 8,881 definitions
Definitions (8,881)
- def RThe field element of an implementation block (its 16 bytes, as SP 800-38D reads them).
- def bitThe U32 the implementation reads for a coefficient c.
- def FAlgorithm 1 continued from an implementation accumulator (Z, V) over the coefficients cs.
- def stepsThe implementation's steps over a list of coefficients.
- def block_withOne block with an optional expanded key (the byte API in one call).
- def open128Decrypt what an encryption returned (None stays None).
- def open256
- law Sbox.valueThe constant-time S-box circuit is FIPS 197's S-box (the inverse in GF(2^8), {00} to {00}, then the affine map), on every input.
- law Inverse.unitThe specification's inverse (a^254) is the multiplicative inverse of FIPS 197 section 4.4: a * a^-1 = {01} for every nonzero byte, and {00} goes to {00} (5.1.1); so S.sbox is "inverse, then affine map".
- law Inverse.zero
- law Cipher.valueThe implementation's cipher with its expanded key is FIPS 197's Cipher with KeyExpansion, for every Nk, Nr, key and state.
- law Block.valueThe byte API: a key of 16, 24 or 32 bytes encrypts a 16-byte block with AES under the key's Nk = length/4 and Nr = Nk + 6 (FIPS 197 Figure 4).
- law Block.aes128A 16-, 24-, 32-byte key is AES-128 (Nk = 4, Nr = 10), AES-192 (6, 12), AES-256 (8, 14).
- law Block.aes192
- law Block.aes256
- law Gcm.sealThe implementation's GCM-AE / GCM-AD, for every expanded key, 96-bit nonce, AAD and input.
- law Gcm.open
- law Aead.roundtripAEAD correctness of the specification: opening the sealed message gives it back; C || T with T other than the tag of C is rejected.
- law Aead.forgery
- law Api128.encrypt
- law Api128.decrypt
- law Api128.roundtripdecrypt(encrypt(x)) == Some(x).
- law Api128.forgeryA wrong tag gives None.
- law Api128.bad_keyA key of another length is rejected.
- law Api128.bad_key_open
- law Api128.bad_nonceA nonce other than 12 bytes is rejected.
- law Api128.bad_nonce_open
- law Api256.encrypt
- law Api256.decrypt
- law Api256.roundtripdecrypt(encrypt(x)) == Some(x).
- law Api256.forgeryA wrong tag gives None.
- law Api256.bad_keyA key of another length is rejected.
- law Api256.bad_key_open
- law Api256.bad_nonceA nonce other than 12 bytes is rejected.
- law Api256.bad_nonce_open