def checkpoint_aad_and_multiblock_plaintext_stream
qasim-bend-kit@0.1.0.2 · proof/AES_NistVectorProof.bend:211
import qasim-bend-kit@0.1.0.2/proof/AES_NistVectorProof.bend as AESNistVectorProof
import Base
import qasim-bend-kit@0.1.0.2/LAWS.bend as L
import qasim-bend-kit@0.1.0.2/libs/AES256GCM.bend as AES
import qasim-bend-kit@0.1.0.2/libs/AES256GCMCore.bend as Core
import qasim-bend-kit@0.1.0.2/proof/AES_NistKeyScheduleProof.bend as Key
import qasim-bend-kit@0.1.0.2/proof/AES_NistObservationProof.bend as Obs
import qasim-bend-kit@0.1.0.2/proof/AES_NistCtrProof.bend as Ctr
import qasim-bend-kit@0.1.0.2/proof/AES_NistCtr2BlockProof.bend as Ctr2
211def checkpoint_aad_and_multiblock_plaintext_stream() ->
212 {Core.gcm_ctr_stream_exact(List.length(&2, U32, aad_and_multiblock_plaintext()), Key.words_60(), Core.gcm_inc32(Core.gcm_j0(AES.raw_nonce_bytes(L.aes256gcm_nist_nonce())))) == Ctr.stream_64() : List<&2, U32>}:
213 Obs.stream_parameters(List.length(&2, U32, aad_and_multiblock_plaintext()), Key.words_60(),
214 Core.gcm_inc32(Core.gcm_j0(AES.raw_nonce_bytes(L.aes256gcm_nist_nonce()))), 64n, Ctr2.block(), Ctr.stream_64(),
215 {==}, {==}, Ctr.checkpoint_stream_64())