Fast Poly1305 MAC implementation by timw · Pull Request #27 · bcgit/bc-java
Poly1305 was designed by D.J. Bernstein. The fast polynomial calculation in this implementation is adapted from the public domain 'poly1305-donna-unrolled' C implementation by Andrew M (@floodyberry) (https://github.com/floodyberry/poly1305-donna). JCE registrations are provided for Poly1305-* for 128 bit AES era block ciphers (AES, Serpent, Twofish etc.) Test cases generated from poly1305 reference and nacl implementations included. Throughput tests for Macs included to compare Poly1305 performance against reference implementation and other Macs.