ocaml-nocrypto
ocaml-nocrypto copied to clipboard
GCM is homework-grade
- GF2^128
- Two boxed Int64s are bad.
- Multiplication is quadratic in polynomial size. Wield mean high-school techniques to make it faster.
- Might move GF treatment to C. It only requires two operations, and one is xor.
- Once there, might even use PCLMULQDQ for multiplication.
- Counter should not collect block-by-block. Requires sane in-place xor not to.
Much progress on this front, but not integrated. Keeping open as a reminder. In the meantime, GCM is still not terribly fast.