def rung

bend-collections-laws-crypto@1.0.0.0 · src/crypto/curve25519/x25519.bend:81

import bend-collections-laws-crypto@1.0.0.0/src/crypto/curve25519/x25519.bend as X25519
import Base
import bend-collections-laws-crypto@1.0.0.0/src/crypto/curve25519/field.bend as F

81# swap ^= k_t; cswap; the step; swap = k_t
82def rung(+c24: List<&2, U32>, +x1: List<&2, U32>, st: St, +kt: U32) -> St:
83  match st:
84    case St{+x2, +z2, +x3, +z3, swap}:
85      +sw = U32.xor(swap, kt)
86      step(c24, x1, F.select(sw, x2, x3), F.select(sw, z2, z3), F.select(sw, x3, x2), F.select(sw, z3, z2), kt)

Uses (6)

Used by (3)