bend-collections
Releases (1)
-
1.0.0.0 indexed
Definitions (4,483)
src/crypto/sha512/core.bend
- def choose
- def majority
- def step
- def feedforward
- def nextW[t] from W[t-2], W[t-7], W[t-15], W[t-16].
- def window_roundsThe remaining q rounds (64 after the block's own sixteen): each derives its schedule word from the window, then drops the oldest word.
- def block_roundsThe block's own words first, then q window rounds (q = 64 for SHA-512); win is the block reversed.
- def compress16
- def blocksEvery whole block of sixteen words; a shorter tail is ignored (padded messages have none).
- def pack
- def lanesBig-endian 64-bit words, eight bytes each.
- def base256
- def bit_length8n as sixteen big-endian octets: n div 32 in the top fifteen, 8 (n mod 32) last.
- def zeros_if
- def zeros
- def suffix0x80, zeros up to 112 mod 128, then the 128-bit bit length.
- def octets
- def lane_octets
- def digest_bytesThe 64-byte digest H0 ..
- def initial
- def round_constants
- def hash_padded
- def sha512
src/crypto/sha512/sha512.bend
- def sha512SHA-512 (FIPS 180-4).
- def ascii
- def hex_digit_if
- def hex_digit
- def hexLowercase hex of a byte list.
src/crypto/sha512/types.bend
- type LaneA 64-bit word as its two 32-bit halves, most significant first.
- type StateThe working variables a..h (and the chaining value H0..H7).
src/crypto/sign.bend
- type Keypair
- def keypair_if
- def generate_keypair
- def word_bytes
- def random_bytes
- def generate_keypair_os
- def sign_if
- def sign
- def verify_if
- def verify
src/crypto/subtle.bend
- def diffOR of the XOR of every pair of positions, over the common prefix.
- def eqTrue exactly when a and b are the same list.
src/math/f64.bend
- type F64
- def word_lo
- def word_hi
- def of_bits
- def off
- def sgn
- def signbit
- def exp_field
- def frac
- def mag
- def nz
- def is_nan
- def is_inf
- def is_finite
- def is_zero
- def nan
- def inf
- def zero
- def one
- def neg
- def abs
- def copysign
- def nan_or
- def pack64
- def packsign, exponent field e and significand m; the hidden bit of m (bit 52) carries into the exponent field, as packToF64's addition does
- def zero_e
- def rp_fin3
- def rp_fin2
- def rp_finsig has its top bit at 62 and e is the plain exponent (0 <= e <= 0x7FD): add half an ulp of the kept 53 bits, shift, and clear bit 0 on a tie
- def rp_over
- def rp_neg
- def round_packe is the biased exponent minus one, offset by OFF; sig has its top bit at 62
- def rp62_picksig below 2^62 is shifted up once
- def rp62
- def nrp_exp
- def nrp_pick
- def nrp_sd
- def norm_round_packSoftFloat's normRoundPackToF64 (e offset)
- def norm_ethe offset exponent and 53-bit significand (hidden bit at 52) of a nonzero finite value, subnormals normalized (SoftFloat's normSubnormalF64Sig)
- def norm_f
- def am_small
- def am_big|x| + |y| with sign s, the larger exponent eL
- def am_eq_n
- def am_eq
- def am_case
- def add_mags
- def sm_small
- def sm_big|big| - |small| with sign s, the larger exponent eL
- def sm_exact3
- def sm_exactan exact difference of equal exponents, normalized without rounding
- def sm_eq2
- def cmp64
- def sm_eq
- def sm_case
- def sub_mags
- def add_pick
- def add
- def sub