diff options
author | Jack Lloyd <[email protected]> | 2016-01-04 12:08:23 -0500 |
---|---|---|
committer | Jack Lloyd <[email protected]> | 2016-01-04 12:08:23 -0500 |
commit | 49850af444825fa347d4bc863cb2ee02e17d5ae8 (patch) | |
tree | 7a5a3d4034e7e016e7a7a90773571e950801d8a6 /doc/reading_list.txt | |
parent | ec326f7e2afa7553c646e5ed841e924a43216850 (diff) |
Misc doc updates
[ci skip]
Diffstat (limited to 'doc/reading_list.txt')
-rw-r--r-- | doc/reading_list.txt | 70 |
1 files changed, 46 insertions, 24 deletions
diff --git a/doc/reading_list.txt b/doc/reading_list.txt index 6d944d87f..f35ae6ed7 100644 --- a/doc/reading_list.txt +++ b/doc/reading_list.txt @@ -1,42 +1,35 @@ +These are papers, articles and books that are interesting or useful from the +perspective of crypto implementation. + +Papers +================== + Implementation Techniques ----------------------------------------- +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * "Randomizing the Montgomery Powering Ladder" Le, Tan, Tunstall https://eprint.iacr.org/2015/657 + A variant of Algorithm 7 is used for GF(p) point multplications when + BOTAN_POINTGFP_BLINDED_MULTIPLY_USE_MONTGOMERY_LADDER is set * "Accelerating AES with vector permute instructions" - Hamburg https://shiftleft.org/papers/vector_aes/ + Mike Hamburg https://shiftleft.org/papers/vector_aes/ + His public doman assembly code was rewritten into SSS3 intrinsics + for aes_ssse3. * "Elliptic curves and their implementation" Langley http://www.imperialviolet.org/2010/12/04/ecc.html + Describes sparse representations for ECC math Random Number Generation ----------------------------------------- +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * "On Extract-then-Expand Key Derivation Functions and an HMAC-based KDF" - Krawczyk http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.131.8254 + Hugo Krawczyk http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.131.8254 RNG design underlying HMAC_RNG -Standards ----------------------------------------- - -* ISO/IEC 18033-2 http://www.shoup.net/iso/std4.pdf - RSA-KEM, PSEC-KEM - -* NIST SP 800-108 - http://csrc.nist.gov/publications/nistpubs/800-108/sp800-108.pdf - KDF schemes - -* NIST SP 800-90A - http://csrc.nist.gov/publications/nistpubs/800-90A/SP800-90A.pdf - HMAC_DRBG, Hash_DRBG, CTR_DRBG, maybe one other thing? - - -Side Channel Attacks ----------------------------------------- - -AES +AES Side Channels ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * "Software mitigations to hedge AES against cache-based software side @@ -48,7 +41,7 @@ AES * "Cache-Collision Timing Attacks Against AES" Bonneau, Mironov http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.88.4753 -Public Key +Public Key Side Channels ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * "Fast Elliptic Curve Multiplications Resistant against Side Channel Attacks" @@ -67,3 +60,32 @@ Public Key * "Minimum Requirements for Evaluating Side-Channel Attack Resistance of Elliptic Curve Implementations" BSI https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Zertifizierung/Interpretationen/AIS_46_ECCGuide_e_pdf.pdf + +Books +======= + +* "Handbook of Elliptic and Hyperelliptic Curve Cryptography" + Cohen and Frey https://www.hyperelliptic.org/HEHCC/ + An excellent reference for ECC math, algorithms, and side channels + +* "Post-Quantum Cryptography" Bernstein, Buchmann, Dahmen + Covers code, lattice, and hash based cryptography + +Standards +============ + +* IEEE 1363 http://grouper.ieee.org/groups/1363/ + Very influential early in the library lifetime, so a lot of terminology used + in the public key (such as "EME" for message encoding) code comes from here. + +* ISO/IEC 18033-2 http://www.shoup.net/iso/std4.pdf + RSA-KEM, PSEC-KEM + +* NIST SP 800-108 + http://csrc.nist.gov/publications/nistpubs/800-108/sp800-108.pdf + KDF schemes + +* NIST SP 800-90A + http://csrc.nist.gov/publications/nistpubs/800-90A/SP800-90A.pdf + HMAC_DRBG, Hash_DRBG, CTR_DRBG, maybe one other thing? + |