Copyright | (c) Alfredo Garcia 2023 |
---|---|
License | MIT |
Stability | experimental |
Portability | POSIX |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Rowround
Description
This module implements the rowround function, a fundamental operation in the Salsa20 stream cipher. The rowround function processes a 4x4 matrix, employing the quarterround function as its single operation. The quarterround expressions are formed and evaluated through F-Algebra operations, including modular arithmetic, rotation, and bitwise XOR.
The module offers functionalities to:
- Compute numeric values resulting from rowround expressions.
- Generate string representations of rowround expressions.
- Perform Keelung specific computations using the UInt 32 type.
The rowround function is divided into four quarterround operations, each applying unique sorting strategies to manipulate the input matrix.
Synopsis
- rowroundCompute :: [Word32] -> [Word32]
- rowroundDisplay :: [String] -> [String]
- rowroundKeelung :: [UInt 32] -> Comp [UInt 32]
Documentation
rowroundCompute :: [Word32] -> [Word32] #
The rowround expression computed.
rowroundDisplay :: [String] -> [String] #
The rowround expression as a string.
rowroundKeelung :: [UInt 32] -> Comp [UInt 32] #
The rowround Keelung expression.