[...]... 11 4 Generic Devices 11 4 RNG Setup 11 5 PRNG Algorithms 11 5 PRNG Design 11 5 Bit Extractors 11 6 Seeding and Lifetime 11 6 PRNG Attacks 11 7 Input Control 11 7 Malleability... 11 8 Backtracking Attacks 11 8 Yarrow PRNG 11 8 Design 11 9 Reseeding 12 0 Statefulness 12 1 Pros and Cons 12 1 Fortuna PRNG 12 2 xi 404_CRYPTO_TOC.qxd xii 10 /30/06 2: 21 PM Page xii Contents... 404_CRYPTO_TOC.qxd 10 /30/06 2: 21 PM Page xiii Contents Precomputed Tables 16 5 Decryption Tables 16 7 Macros 16 8 Key Schedule 16 9 Performance 17 4 x86 Performance 17 4 ARM Performance 17 6 Performance of the Small Variant 17 8... 19 1 Decryption 19 1 Performance 19 1 Security 19 1 Implementation 19 2 Choosing a Chaining Mode 19 2 Putting It All Together 19 3 Keying Your Cipher 19 3 Rekeying Your Cipher 19 4 Bi-Directional... 13 1 RNG versus PRNG 13 1 Fuse Bits 13 2 Use of PRNGs 13 2 Example Platforms 13 3 Desktop and Server 13 3 Consoles 13 4 Network Appliances 13 5 Frequently Asked Questions 13 6 Chapter 4... 10 1 Analogue to Digital Errors 10 3 RNG Data Gathering 10 4 LFSR Basics 10 5 Table-based LFSRs 10 5 Large LFSR Implementation 10 7 RNG Processing and Output 10 7 RNG Estimation 11 2 Keyboard and Mouse 11 3 Timer ... 12 2 Reseeding 12 6 Statefulness 12 6 Pros and Cons 12 6 NIST Hash Based DRBG 12 7 Design 12 7 Reseeding 13 1 Statefulness 13 1 Pros and Cons 13 1 Putting It All Together... 208 SHA -1 Design 209 SHA -1 State 209 SHA -1 Expansion 209 SHA -1 Compression 210 SHA -1 Implementation 211 SHA-256 Design 217 SHA-256 State 219 SHA-256 Expansion 219 SHA-256 Compression... 18 0 Practical Attacks 18 1 Side Channels 18 2 Processor Caches 18 2 Associative Caches 18 2 Cache Organization 18 3 Bernstein Attack 18 3 Osvik Attack 18 4 Defeating Side Channels 18 5 Little... 18 5 Chaining Modes 18 6 Cipher Block Chaining 18 7 What’s in an IV? 18 7 Message Lengths 18 8 Decryption 18 8 Performance Downsides 18 9 Implementation 18 9 Counter Mode 19 0 Message Lengths . executed in a computer system, but they may not be reproduced for publication. 1 2 3 4 5 6 7 8 9 0 ISBN -10 : 1- 59749 -10 4-7 ISBN -13 : 978 -1- 59749 -10 4-4 Publisher: Andrew Williams Page Layout and Art: Patricia. . . . . . . . . . .19 1 Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19 1 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19 1 Implementation . . . . . . . . . .11 5 PRNG Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 5 Bit Extractors . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 6 Seeding and Lifetime