urbit-hob-0.3.3: Hoon-style atom manipulation and printing functions

Copyright(c) 2019 Jared Tobin
LicenseMIT
MaintainerJared Tobin <jared@jtobin.io>
Stabilityunstable
Portabilityghc
Safe HaskellNone
LanguageHaskell2010

Urbit.Ob.Ob

Description

Integer obfuscation functions.

Analogous to the +ob arm in hoon.hoon.

Synopsis

Documentation

fein :: (Integral a, Bits a) => a -> a Source #

Conceal structure v3.

fynd :: (Integral a, Bits a) => a -> a Source #

Restore structure v3.

feis :: Word32 -> Word32 Source #

Generalised Feistel cipher.

See: Black and Rogaway (2002), "Ciphers with arbitrary finite domains."

Note that this has been adjusted from the reference paper in order to support some legacy behaviour.

tail :: Word32 -> Word32 Source #

Reverse feis.

See: Black and Rogaway (2002), "Ciphers with arbitrary finite domains."

Note that this has been adjusted from the reference paper in order to support some legacy behaviour.

fe :: Int -> Word32 -> Word32 -> (Int -> Word32 -> Word32) -> Word32 -> Word32 Source #

fe in B&R (2002).

fen :: Int -> Word32 -> Word32 -> (Int -> Word32 -> Word32) -> Word32 -> Word32 Source #

fen in B&R (2002).

capF :: Int -> Word32 -> Word32 Source #

A PRF for j in [0, .., 3]

capFe :: Int -> Word32 -> Word32 -> Word32 -> (Int -> Word32 -> Word32) -> Word32 -> Word32 Source #

Fe in B&R (2002).

capFen :: Int -> Word32 -> Word32 -> Word32 -> (Int -> Word32 -> Word32) -> Word32 -> Word32 Source #

Fen in B&R (2002).