… | |
… | |
80 | |
80 | |
81 | package Crypt::Spritz; |
81 | package Crypt::Spritz; |
82 | |
82 | |
83 | use XSLoader; |
83 | use XSLoader; |
84 | |
84 | |
85 | $VERSION = 0.2; |
85 | $VERSION = 1.01; |
86 | |
86 | |
87 | XSLoader::load __PACKAGE__, $VERSION; |
87 | XSLoader::load __PACKAGE__, $VERSION; |
88 | |
88 | |
89 | @Crypt::Spritz::ISA = Crypt::Spritz::Base::; |
89 | @Crypt::Spritz::ISA = Crypt::Spritz::Base::; |
90 | |
90 | |
… | |
… | |
659 | |
659 | |
660 | As a cipher/prng, Spritz is reasonably fast (about 100MB/s on 2014 era |
660 | As a cipher/prng, Spritz is reasonably fast (about 100MB/s on 2014 era |
661 | hardware, for comparison, AES will be more like 200MB/s). |
661 | hardware, for comparison, AES will be more like 200MB/s). |
662 | |
662 | |
663 | For key setup, ivs, hashing, nonces and so on, Spritz is very slow (about |
663 | For key setup, ivs, hashing, nonces and so on, Spritz is very slow (about |
664 | 5MB/s on 2014 era hardware, which does 200MB/s with SHA-256). |
664 | 5MB/s on 2014 era hardware, which does SHA-256 at about 200MB/s). |
|
|
665 | |
|
|
666 | |
|
|
667 | =head1 SUPPORT FOR THE PERL MULTICORE SPECIFICATION |
|
|
668 | |
|
|
669 | This module supports the perl multicore specification |
|
|
670 | (L<http://perlmulticore.schmorp.de/>) for all encryption/decryption |
|
|
671 | (non-aead > 4000 octets, aead > 400 octets), hashing/absorbing (> 400 |
|
|
672 | octets) and squeezing/prng (> 4000 octets) functions. |
665 | |
673 | |
666 | |
674 | |
667 | =head1 SEE ALSO |
675 | =head1 SEE ALSO |
668 | |
676 | |
669 | L<http://people.csail.mit.edu/rivest/pubs/RS14.pdf>. |
677 | L<http://people.csail.mit.edu/rivest/pubs/RS14.pdf>. |