law ds_open

bend-collections-laws-crypto@1.0.0.0 · proofs/crypto/aead/proof.bend:152

import bend-collections-laws-crypto@1.0.0.0/proofs/crypto/aead/proof.bend as Proof
import Base
import bend-collections-laws-crypto@1.0.0.0/src/crypto/aead.bend as A
import bend-collections-laws-crypto@1.0.0.0/proofs/crypto/aead/laws.bend as Laws

152law ds_open:
153  for +alg: A.Alg
154  for +key: List<&2, U32>
155  for +nonce: List<&2, U32>
156  for +aad: List<&2, U32>
157  for +m: Maybe<&2, List<&2, U32>>
158  for +hk: {List.length(&2, U32, key) == A.key_size(alg) : Nat}
159  for +hn: {List.length(&2, U32, nonce) == A.nonce_size(alg) : Nat}
160  {Laws.decrypt_sealed(alg, key, nonce, aad, m) == open_sealed(alg, key, nonce, aad, m) : Maybe<&2, List<&2, U32>>}

Uses (11)

Used by (1)