def mac_data
import bend-collections-laws-crypto@1.0.0.0/spec/crypto/chacha20poly1305.bend as Chacha20poly1305import Base
29# mac_data = aad | pad16(aad) | ciphertext | pad16(ciphertext)
30# | num_to_8_le_bytes(aad.length) | num_to_8_le_bytes(ciphertext.length)
31def mac_data(+aad: List<&2, U32>, +ct: List<&2, U32>) -> List<&2, U32>:
32 List.append(&2, U32, aad, List.append(&2, U32, pad16(aad), List.append(&2, U32, ct,
33 List.append(&2, U32, pad16(ct), List.append(&2, U32, le8(8n, List.length(&2, U32, aad)), le8(8n, List.length(&2, U32, ct)))))))
Uses (6)
Used by (4)
- bend-collections-laws-crypto@1.0.0.0/spec/crypto/chacha20poly1305:tag
- bend-collections-laws-crypto@1.0.0.0/proofs/crypto/aead/chacha20poly1305:tag_eq
- bend-collections-laws-crypto@1.0.0.0/proofs/crypto/aead/chacha20poly1305:mac_data_eq
- bend-collections-laws-crypto@1.0.0.0/proofs/crypto/aead/chacha20poly1305:roundtrip