The Cryptography Research Crypto FAQ
COMING SOON ...
Information about the exciting field of
cryptography.
Please contact us at faq-editor@cryptography.com
with
comments and questions
1. Project-management tips
- 1.1 Importance of clear requirements
- 1.2 Avoiding proprietary algorithms
- 1.3 Best practices
- 1.4 Getting your design reviewed early
- 1.5 How can I tell if it's any good?
- 1.6 Can I get my product certified?
- 1.7 Advice on choosing systems or algorithms
2. Tips for implementers
3. Background
- 3.1 What is it for?
- 3.1.1 Secrecy
- 3.1.2 Authentication
- 3.2 What attacks must it resist?
- 3.2.1 Cryptanalytic attacks
- 3.2.2 Exhaustive key search attacks
- 3.2.3 Side-channel attacks
- 3.2.4 Exploitation of bad implementations
4. Symmetric cryptography
- 4.1 Useful concepts in symmetric algorithms
- 4.1.1 Block ciphers
- 4.1.2 Stream ciphers
- 4.1.3 One-way functions
- 4.1.2 Stream ciphers
- 4.2 Useful classical algorithms
- 4.2.1 One-time pad
- 4.2.2 AES
- 4.2.3 SHA-1
5. The key-distribution problem
- 5.1 The classical key-distribution center
- 5.2 The public-key concept
6. Public-key cryptography
- 6.1 Public-key concepts
- 6.2 Public-key building blocks
- 6.2.1 Trapdoor one-way functions
- 6.2.2 Modular arithmetic
- 6.2.3 The factoring problem
- 6.2.4 The discrete log problem
- 6.3 Useful public-key algorithms
- 6.3.1 RSA encryption
- 6.3.2 RSA digital signatures
- 6.3.3 Diffie-Hellman key agreement
- 6.3.4 DSA digital signatures
7. Other amazing techniques
- 7.1 Secret sharing
- 7.2 Zero-knowledge proofs
- 7.3 Secure multiparty computations
8. References
9. Glossary




