Gcm.gctr: def of bend-collections@1.0.0.0 Import: import bend-collections@1.0.0.0/src/crypto/aes/gcm.bend as Gcm Lines 133-139 of bend-collections@1.0.0.0/src/crypto/aes/gcm.bend: https://jend.leeeet.dev/read.txt?path=bend-collections@1.0.0.0/src/crypto/aes/gcm.bend&start_line=133&end_line=139 import Base import bend-collections@1.0.0.0/src/crypto/aes/types.bend as T import bend-collections@1.0.0.0/src/crypto/aes/aes.bend as A def gctr(+sched: A.Schedule, +xs: List<&2, U32>, +n0: T.Quad, +n1: T.Quad, +n2: T.Quad, +c: U32) -> List<&2, U32>: match xs: case x0 <> x1 <> x2 <> x3 <> x4 <> x5 <> x6 <> x7 <> x8 <> x9 <> x10 <> x11 <> x12 <> x13 <> x14 <> x15 <> rest: List.append(&2, U32, xor_bytes([x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15], keystream(sched, n0, n1, n2, c)), gctr(sched, rest, n0, n1, n2, U32.inc(c))) case _: xor_bytes(xs, keystream(sched, n0, n1, n2, c)) Uses (8): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List.append https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.inc https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/crypto/aes/aes.bend&name=Schedule https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/crypto/aes/gcm.bend&name=keystream https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/crypto/aes/gcm.bend&name=xor_bytes https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/crypto/aes/types.bend&name=Quad