awesome-crypto-papers

Cryptography guide

A curated collection of cryptography papers and resources for educating software developers on cryptographic concepts and techniques.

A curated list of cryptography papers, articles, tutorials and howtos.

GitHub

2k stars
70 watching
141 forks
last commit: almost 2 years ago
Linked from 8 awesome lists

applied-cryptographyawesomeawesome-listawesome-listscryptographyhowto

Awesome Crypto Papers / The list / Introducing people to data security and cryptography

Nuts and Bolts of Encryption: A Primer for Policymakers
Keys under DoormatsOr why cryptography shouldn't be backdoored, by a all-star committee of crypto researches from around the world
An Overview of CryptographyBy Gary C. Kessler
Using Encryption for Authentication in Large NetworksBy Needham, Schroeder: this is were crypto-based auth starts
Communication Theory of Secrecy SystemsFundamental cryptography paper by Claude Shannon
Another Look at “Provable Security”Inquiries into formalism and naive intuition behind security proofs, by Neal Koblitz et al
The security impact of a new cryptographic libraryIntroductory paper on NaCl, discussing important aspects of implementing cryptography and using it as a larger building block in security systems, by Daniel J. Bernstein, Tanja Lange, Peter Schwabe

Awesome Crypto Papers / The list / Specific topics

FIPS 198-1: HMACsThe Keyed-Hash Message Authentication Code FIPS document
FIPS 202: SHA3SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions
Birthday problemThe best simple explanation of math behind
On the Security of HMAC and NMAC Based on HAVAL, MD4, MD5, SHA-0 and SHA-1Security analysis of different legacy HMAC schemes by Jongsung Kim et al
On the Security of Randomized CBC-MAC Beyond the Birthday Paradox LimitSecurity of randomized CBC-MACs and a new construction that resists birthday paradox attacks and provably reaches full security, by E. Jaulmes et al
FIPS 197AES FIPS document
List of proposed operation modes of AESMaintained by NIST
Recomendation for Block Cipher modes of operation: Methods and Techniques
Stick figure guide to AESIf stuff above was a bit hard or you're looking for a good laugh
Cache timing attacks on AESExample of designing great practical attack on cipher implementation, by Daniel J. Bernstein
Cache Attacks and Countermeasures: the Case of AESSide channel attacks on AES, another view, by Dag Arne Osvik, Adi Shamir and Eran Tromer
Salsa20 family of stream ciphersBroad explanation of Salsa20 security cipher by Daniel J. Bernstein
New Features of Latin Dances: Analysis of Salsa, ChaCha, and RumbaAnalysis of Salsa20 family of ciphers, by Jean-Philippe Aumasson et al
ChaCha20-Poly1305 Cipher Suites for Transport Layer Security (TLS)IETF Draft of ciphersuite family, by Adam Langley et al
AES submission document on RijndaelOriginal Rijndael proposal by Joan Daemen and Vincent Rijmen
Ongoing Research Areas in Symmetric CryptographyOverview of ongoing research in secret key crypto and hashes by ECRYPT Network of Excellence in Cryptology
The Galois/Counter Mode of Operation (GCM)Original paper introducing GCM, by by David A. McGrew and John Viega
The Security and Performance of the Galois/Counter Mode (GCM) of OperationDesign, analysis and security of GCM, and, more specifically, AES GCM mode, by David A. McGrew and John Viega
GCM Security Bounds ReconsideredAn analysis and algorithm for nonce generation for AES GCM with higher counter-collision probability, by Yuichi Niwa, Keisuke Ohashi, Kazuhiko Minematsu, Tetsu Iwata
Proxy-Mediated Searchable Encryption in SQL Databases Using Blind IndexesAn overview of existing searchable encryption schemes, and analysis of scheme built on AES-GCM, blind index and bloom filter by Eugene Pilyankevich, Dmytro Kornieiev, Artem Storozhuk
DES is not a groupOld but gold mathematical proof that the set of DES permutations (encryption and decryption for each DES key) is not closed under functional composition. That means that multiple DES encryption is not equivalent to single DES encryption and means that the size of the subgroup generated by the set of DES permutations is greater than 10^2499, which is too large for potential attacks on DES, which would exploit a small subgroup
Differential Cryptanalysis of Salsa20/8A great example of stream cipher cryptanalysis, by Yukiyasu Tsunoo et al
Slide Attacks on a Class of Hash FunctionsApplying slide attacks (typical cryptanalysis technique for block ciphers) to hash functions, M. Gorski et al
Self-Study Course in Block Cipher CryptanalysisAttempt to organize the existing literature of block-cipher cryptanalysis in a way that students can use to learn cryptanalytic techniques and ways to break new algorithms, by Bruce Schneier
Statistical Cryptanalysis of Block CiphersBy Pascal Junod
Cryptanalysis of block ciphers and protocolsBy Elad Pinhas Barkan
Too much cryptoAnalysis of number of rounds for symmetric cryptography primitives, and suggestions to do fewer rounds, by Jean-Philippe Aumasson
How to Break MD5 and Other Hash FunctionsA 2005 paper about modular differential collision attack on MD5, MD4 and other hash functions, by Xiaoyun Wang and Hongbo Yu
New attacks on Keccak-224 and Keccak-256A 2012 paper about using the combination of differential and algebraic techniques for collision attacks on SHA-3, by Itai Dinur, Orr Dunkelman, Adi Shamir
A Single-Key Attack on the Full GOST Block CipherAn attack ("Reflection-Meet-inthe-Middle Attack") on GOST block cipher that allows to recover key with 2^225 computations and 2^32 known plaintexts, by Takanori Isobe
Intro to Linear & Differential CryptanalysisA beginner-friendly paper explaining and demonstrating techniques for linear and differential cryptanalysis
MEGA: Malleable Encryption Goes AwryProof-of-concept versions of attacks on MEGA data storage. Showcasing their practicality and exploitability.
New Directions in CryptographySeminal paper by Diffie and Hellman, introducing public key cryptography and key exchange/agreement protocol
RFC 2631: Diffie-Hellman Key AgreementAn explanation of the Diffie-Hellman methon in more engineering terms
A Method for Obtaining Digital Signatures and Public-Key CryptosystemsOriginal paper introducing RSA algorithm
RSA AlgorithmRather education explanation of every bit behind RSA
Secure Communications Over Insecure ChannelsPaper by R. Merkle, predated "New directions in cryptography" though it was published after it. The Diffie-Hellman key exchange is an implementation of such a Merkle system
On the Security of Public Key ProtocolsDolev-Yao model is a formal model, used to prove properties of interactive cryptographic protocols
How to Share a Secret8over 6 years agoA safe method for sharing secrets
Twenty Years of Attacks on the RSA CryptosystemGreat inquiry into attacking RSA and it's internals, by Dan Boneh
Remote timing attacks are practicalAn example in attacking practical crypto implementationby D. Boneh, D. Brumley
The Equivalence Between the DHP and DLP for Elliptic Curves Used in Practical Applications, Revisitedby K. Bentahar
SoK: Password-Authenticated Key Exchange – Theory, Practice, Standardization and Real-World LessonsHistory and classification of the PAKE algorithms
RSA, DH and DSA in the WildCollection of implementation mistakes which lead to exploits of assymetric cryptography
Elliptic Curve cryptography: A gentle introduction
Explain me like I'm 5: How digital signatures actually workEdDSA explained with ease and elegance
Elliptic Curve Cryptography: finite fields and discrete logarithms
Detailed Elliptic Curve cryptography tutorial
Elliptic Curve Cryptography: ECDH and ECDSA
Elliptic Curve Cryptography: breaking security and a comparison with RSA
Elliptic Curve Cryptography: the serpentine course of a paradigm shiftHistoric inquiry into development of ECC and it's adoption
Let's construct an elliptic curve: Introducing Crackpot2065Fine example of building up ECC from scratch
Explicit-Formulas DatabaseFor many elliptic curve representation forms
Curve25519: new Diffie-Hellman speed recordsPaper on Curve25519
Software implementation of the NIST elliptic curves over prime fieldsPracitcal example of implementing elliptic curve crypto, by M. Brown et al
High-speed high-security signaturesSeminal paper on EdDSA signatures on ed25519 curve by Daniel J. Bernstein et al
Recommendations for Discrete Logarithm-Based Cryptography: Elliptic Curve Domain Parameters (NIST SP 800-186)Official NIST guide how securely implement elliptic curves. It also includes math shortcuts, optimizations and possible security risk of wrong algorithm implementation
Biased Nonce Sense: Lattice Attacks against Weak ECDSA Signatures in CryptocurrenciesComputing private keys by analyzing and exploiting biases in ECDSA nonces
Minerva: The curse of ECDSA noncesExploiting timing/bit-length leaks for recovering private keys from ECDSA signatures
LadderLeak: Breaking ECDSA With Less Than One Bit Of Nonce LeakageBreaking 160-bit curve ECDSA using less than one bit leakage
Proofs of knowledgeA pair of papers which investigate the notions of proof of knowledge and proof of computational ability, M. Bellare and O. Goldreich
How to construct zero-knowledge proof systems for NPClassic paper by Goldreich, Micali and Wigderson
Proofs that yield nothing but their validity and a Methodology of Cryptographic protocol designBy Goldreich, Micali and Wigderson, a relative to the above
A Survey of Noninteractive Zero Knowledge Proof System and Its Applications
How to Prove a Theorem So No One Else Can Claim ItBy Manuel Blum
Information Theoretic Reductions among Disclosure ProblemsBrassau et al
Knowledge complexity of interactive proof systems3almost 6 years agoBy GoldWasser, Micali and Rackoff. Defining computational complexity of "knowledge" within zero knowledge proofs
A Survey of Zero-Knowledge Proofs with Applications to CryptographyGreat intro on original ZKP protocols
Zero Knowledge Protocols and Small SystemsA good intro into Zero knowledge protocols
Multi-Theorem Preprocessing NIZKs from LatticesConstruction of non-interactive zero-knowledge (NIZK) proofs using lattice-based preprocessing models, by Sam Kim and David J. Wu
Recommendation for Key Management – Part 1: GeneralMethodologically very relevant document on goals and procedures of key management
Selecting Cryptographic Key SizesClassic paper from 1999 with guidelines for the determination of key sizes for symmetric cryptosystems, RSA, ECC, by Arjen K. Lenstra and Eric R. Verheul
PRIMES is in PUnconditional deterministic polynomial-time algorithm that determines whether an input number is prime or composite
Kyber and DilithiumThese lectures describe Kyber (ML-KEM) and Dilithium (ML-DSA), the quantum-safe lattice-based key encapsulation and signature schemes that were standardized in August 2024 by the National Institute of Standards and Technology (NIST)
Post-quantum cryptography - dealing with the fallout of physics successBrief observation of mathematical tasks that can be used to build cryptosystems secure against attacks by post-quantum computers
Post-quantum cryptographyIntroduction to post-quantum cryptography
Post-quantum RSADaniel Bernshtein's insight how to save RSA in post-quantum period
MAYO: Practical Post-Quantum Signatures from Oil-and-Vinegar MapsThe Oil and Vinegar signature scheme, proposed in 1997 by Patarin, is one of the oldest and best-understood multivariate quadratic signature schemes. It has excellent performance and signature sizes. This paper is about enhancing this algorithm in usage in the post-quantum era.

Awesome Crypto Papers / The list / Books

A Graduate Course in Applied CryptographyBy Dan Boneh and Victor Shoup. A well-balanced introductory course into cryptography, a bit of cryptanalysis and cryptography-related security
Analysis and design of cryptographic hash functions, MAC algorithms and block ciphersBroad overview of design and cryptanalysis of various ciphers and hash functions, by Bart Van Rompay
CrypTool bookPredominantly mathematically oriented information on learning, using and experimenting cryptographic procedures
Handbook of Applied CryptographyBy Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone. Good classical introduction into cryptography and ciphers
The joy of CryptographyBy Mike Rosulek. A lot of basic stuff covered really well. No ECC
A Computational Introduction to Number Theory and AlgebraBy Victor Shoup, excellent starters book on math universally used in cryptography

Awesome Crypto Papers / The list / Lectures and educational courses

Understanding cryptography: A textbook for Students and PractitionersTextbook, great lectures and problems to solve
Crypto101Crypto 101 is an introductory course on cryptography, freely available for programmers of all ages and skill levels
A Course in CryptographyLecture notes by Rafael Pass, Abhi Shelat
Lecture Notes on CryptographyFamous set of lectures on cryptography by Shafi Goldwasser (MIT), M. Bellare (University of California)
Introduction to Cryptography by Christof PaarVideo course by Christof Paar (University of Bochum in Germany). In english
Cryptography IStanford University course on Coursera, taught by prof. Dan Boneh. is still in development

Backlinks from these awesome lists:

0