def done_value

bend-collections-laws-crypto@1.0.0.0 · proofs/crypto/kdf/proof.bend:68

import bend-collections-laws-crypto@1.0.0.0/proofs/crypto/kdf/proof.bend as Proof
import Base
import bend-collections-laws-crypto@1.0.0.0/src/crypto/kdf.bend as KDF

68def done_value(+prk: List<&2, U32>, +info: List<&2, U32>, +len: Nat, +out: List<&2, U32>, +b: Bool, +h: {KDF.expand_if(prk, info, len, b) == Done{out} : Result<&2, &2, KDF.KdfError, List<&2, U32>>}) -> {KDF.blocks(len, prk, info, Nil{}, 1) == out : List<&2, U32>}:
69  match b:
70    case True{}:
71      done_inj(KDF.blocks(len, prk, info, Nil{}, 1), out, h)
72    case False{}:
73      Empty.absurd({KDF.blocks(len, prk, info, Nil{}, 1) == out : List<&2, U32>}, fail_done(KDF.LengthTooLarge{}, out, h))

Uses (11)

Used by (1)