Applied Cryptography, Second Edition: Protocols, Algorthms, and Source Code in C (cloth)
(Publisher: John Wiley & Sons, Inc.)
Author(s): Bruce Schneier
ISBN: 0471128457
Publication Date: 01/01/96
Index
- A5, 389, 662667
- Abadi, Martin, 66
- Absolute rate, of language, 234
- Accreditation, 103
- Active attacks, 27
- Active cheaters, 27
- Adams, Carlisle, 334
- Adaptive-chosen-plaintext attack, 6
- Addition chaining, 244
- Additive generators, 390392
- Adjudicated protocol, 26, 71
- Adjudicator, 26
- Adleman, Leonard M., 163164, 467
- Adler, Roy, 266
- Agnew, G. B., 423
- Algebraic structure, DES, 282283
- Algorithm M, 393394
- Algorithms, 24, 17
- all-or-nothing disclosure of secrets, 543546
- Asmuth-Bloom, 529530
- Barretts, 244
- Berlekamp-Massey algorithm, 380, 404
- block
- chain mode, 206207
- choosing, 354355
- replay, 191193
- breaking, 8
- CAST, 334335
- choosing, 214216
- cipher block chaining mode, 193197, 208210
- cipher block chaining of plaintext difference mode, 208
- cipher block chaining with checksum, 207208
- cipher-feedback mode, 200202, 208210
- cipher mode
- choosing, 208210
- summary, 209
- classes, 217
- coin flipping
- using Blum integers, 543
- using exponentiation modulo p, 542543
- using square roots, 541542
- complexity, 237239
- constant, 238
- convertible undeniable signatures, 538539
- counter mode, 205206, 209
- cubic, 238
- data compression, 226
- designated confirmer signatures, 539540
- Diffie-Hellman, fair, 546547
- digital signatures, 39
- exponential, 238
- for export, 215216
- extended Euclidean, 246248
- factoring, 256
- ISO/IEC 9979 registered, 607
- Karnin-Greene-Hellman, 530
- Khafre, 317318
- Khufu, 317
- linear, 238
- linear syndrome, 381
- modes, DES, 277278
- multiple block
- cascading, 367368
- combining, 368
- multiple-key public-key cryptography, 527528
- oblivious transfer, 550
- one-way accumulators, 543
- output-feedback mode, 203205, 208210
- output feedback with a nonlinear function, 208
- plaintext block chaining mode, 208
- plaintext feedback mode, 208
- polynomial, 238
- polynomial-time, 238
- probabilistic encryption, 552554
- propagating cipher block chaining mode, 207
- public-key, 45, 33
- quadratic, 238
- quantum cryptography, 554557
- restricted, 3
- running times, 238239
- secret-sharing algorithms, 528531
- secure multiparty computation, 551552
- Algorithms (Cont.)
- security, 89
- self-synchronizing stream cipher, 198199
- stream ciphers, 197198
- subliminal-channel signature, 79
- superpolynomial, 238
- symmetric, 4
- synchronous stream cipher, 202203
- TEA, 346
- types, 189
- unconditionally secure, 8
- undeniable digital signatures, 536539
- using, 213229
- vector scheme, 529
- zero-knowledge proofs, 548550
- See also Block ciphers; Stream ciphers
- All-or-nothing disclosure of secrets, 96, 543546
- voting with a single central facility, 128130
- Alternating stop-and-go generator, 383, 385, 410411
- American National Standards Institute, DES approval, 267268
- Anderson, Ross, 391
- ANDOS, see All-or-nothing disclosure of secrets
- Anonymous message broadcast, 137139
- ANSI X3.105, 267
- ANSI X3.106, 267
- ANSI X9.8, 267
- ANSI X9.17, 268, 359
- key generation, 175
- ANSI X9.19, 267
- ANSI X9.26, 268
- Arbitrated protocol, 2326
- Arbitration, timestamping, 7576
- Arbitrator, 23
- document signing with, 3537
- group signatures with, 8485
- AR hash function, 453
- Arithmetic, modular, 242245
- Arms Export Control Act, 610
- Asmuth-Bloom scheme, 529530
- Association for Computing Machinery, 608
- Asymmetric algorithms, see Public-key algorithms
- Atomic Energy Act, 610
- Attack, 5
- AT&T Model 3600 Telephone Security Device, 594595
- Authentication, 2, 5256
- DASS, 62
- Denning-Sacco protocol, 63
- dictionary attacks, 52
- ISO framework, 574577
- Kerberos, 60
- message, 56
- Needham-Schroeder protocol, 5859
- Neuman-Stubblebine protocol, 6062
- Otway-Rees protocol, 5960
- protocols, formal analysis, 6568
- salt, 5253
- Schnorr, 511
- SESAME, 572
- SKEY, 53
- SKID, 5556
- using interlock protocol, 5455
- using one-way functions, 52
- using public-key cryptography, 5354
- Wide-Mouth Frog protocol, 5657
- Woo-Lam protocol, 6364
- Yahalom, 5758
- Authenticators, 568
- Avalanche effect, 273
- Backup keys, 181182
- BAN logic, 6667
- Barretts algorithm, 244
- BaseKing, 346
- Basis, polarization measurement, 555
- Battista, Leon, 11
- BBS generator, 417
- add to spelled out, 553554
- Beacons, 64
- Bellovin, Steve, 518, 520521, 571
- Bennett, Charles, 555, 557
- Berlekamp-Massey algorithm, 380, 404
- Bernstein, Dan, 616
- Berson, Tom, 441
- Best affine approximation attack, 381
- Beth-Piper stop-and-go generator, 383384
- Bias, 425
- Bidirectional message authentication codes, 457
- Biham, Eli, 284285, 288, 296, 301, 303, 306, 308, 311312, 314, 316, 319, 354, 361, 434
- Bilateral stop-and-go generator, 384385
- Binary trees, 78
- Biotechnology, as cryptanalysis tool, 156157
- Birthday attack, 165166, 430
- Bit commitment, 8688
- using one-way functions, 8788
- using pseudo-random-sequence generators, 88
- using symmetric cryptography, 8687
- Blakley, George, 72, 529
- Blaze, Matt, 346, 364
- Blinding factor, 112
- Blind signatures, 112115, 549550
- patents, 115
- voting with, 126127
- Blobs, 88
- Block algorithms, 4
- Block chain mode, 206207
- Block ciphers, 4, 189
- Blowfish, 336339
- CA-1.1, 327328
- cascading algorithms, 367368
- CAST, 334335
- CDMF key shortening, 366
- choosing algorithms, 354355
- combining algorithms, 368
- counter mode, 205206, 209
- Crab, 342344
- CRYPTO-MECCANO, 346
- designing, 351
- design theory, 346351
- Feistel networks, 347
- group structure, 348
- S-box, 349351
- simple relations, 347348
- strength against differential and linear cryptanalysis, 348349
- weak keys, 348
- double encryption, 357358
- double OFB/counter, 363364
- doubling length, 363
- electronic codebook mode, 189191, 208210
- encryption speeds, 355
- FEAL, 308312
- feedback, 193
- GOST, 331334
- IDEA, 319325
- iterated, 347
- Li-Wang algorithm, 346
- LOKI, 314316
- Lucifer, 303304
- Madryga, 304306
- McEliece algorithm, 346
- MMB, 325327
- multiple encryption, 357
- NewDES, 306308
- Rao-Nam algorithm, 346
- RC2, 318319
- RC5, 344346
- REDOC II, 311313
- REDOC III, 313
- SAFER K-64, 339341
- security, based on one-way hash functions, 353354
- Skipjack, 328329
- versus stream ciphers, 210211
- SXAL8/MBAL, 344
- triple encryption, 358363
- 3Way, 341342
- using one-way hash functions, 351354
- whitening, 366367
- xDES1, 365366
- Block length, doubling, 363
- Block replay, 191193
- Blocks, 4
- Blowfish, 336339, 354, 647654
- Blum, Manuel, 89, 105, 108
- Blum, Blum, and Shub generator, 417418
- Blum integers, 253
- coin flipping, 543
- zero-knowledge proofs, 549
- Blum-Micali generator, 416417
- Boolean functions, in S-boxes, 350
- Bosselaers, Antoon, 436, 441
- Boyar, Joan, 369
- Brassard, Gilles, 555, 557
- Broadcasting:
- anonymous, 137139
- secret, 523524
- Brute-force attack, 8, 151152
- software-based, 154155
- time and cost estimates, 152154
- Bureau of Export Administration, 610611
- Burrows, Michael, 66
- CA-1.1, 327328
- Cade algorithm, 500501
- Caesar Cipher, 11
- CAFE, 606607
- CALC, 346
- Cantwell Bill, 615616
- Capstone, 593594
- Cascade generators, 405
- Cascades, Gollmann, 387388
- Cascading:
- multiple block algorithms, 367368
- multiple stream ciphers, 419420
- Cash, digital, see Digital cash
- Cassells, Ian, 381
- CAST, 334335
- S-boxes, 349
- CBC, see Cipher block chaining mode
- CCEP, 269, 598599
- CDMF, 366, 574
- Cellhash, 446
- Cellular automata, 500
- Cellular automaton generator, 414
- Certificates:
- Privacy-Enhanced Mail, 579
- public-key, 185187
- X.509, 574575
- Certification authority, 186
- Certification path, 576
- Certified mail, digital, 122123
- Chaining variables, 436
- Chambers, Bill, 385386
- Characteristics, 286288
- Chaum, David, 84, 115, 133, 137, 536, 549
- Cheater, 27
- sharing secrets with, 531
- Chess Grandmaster Problem, 109
- Chinese Lottery, 156157
- Chinese remainder theorem, 249250, 470
- Chor-Rivest knapsack, 466
- Chosen-ciphertext attack, 67, 471472
- Chosen-key attack, 7
- Chosen-plaintext attack, 67, 359
- Chosen-text attack, 7
- Cipher:
- substitution, 1012
- transposition, 12
- Cipher block chaining mode, 193197, 208210
- DES, 277278
- error extension, 196
- error propagation, 195196
- initialization vector, 194
- message authentication codes, 456
- padding, 195
- security, 196197
- self-recovering, 196
- triple encryption, 360361
- Cipher block chaining of plaintext difference mode, 208
- Cipher block chaining with checksum, 207208
- Cipher-feedback mode, 200202, 208210
- DES, 277
- error propagation, 201202
- initialization vector, 201
- Cipher mode:
- choosing, 208210
- summary, 208210
- Ciphertext, 12
- auto key, 198
- hiding in ciphertext, 227228
- pairs, differential cryptanalysis, 285
- stealing, 191
- Ciphertext-only attack, 56
- Cleartext, see Plaintext
- Clipper chip, 591593
- Clipper key-escrow, 328
- Clipper phone, 594
- Clock-controlled generators, 381
- Clocking, 381
- CoCom, 610
- Code, 9
- Coefficients, solving for, 248
- Coin flipping, 8992
- fair, 541543
- into a well, 92
- key generation, 92
- using Blum integers, 543
- using one-way functions, 90
- using public-key cryptography, 9091
- using square roots, 541542
- Collision, 166
- Collision-free, 30
- Collision-resistance, 429
- Combination generator, 381
- Combining function, 381
- Commercial COMSEC Endorsement Program, 269, 598599
- Commercial Data Masking Facility, 366, 574
- Common Cryptographic Architecture, 573574
- Common modulus, dangers of, 493
- Common modulus attack, RSA, 472
- Communications:
- using public-key cryptography, 3134
- using symmetric cryptography, 2829
- Communications channels, encryption, 216220
- Communications Setup, 517518
- Complementation property, 281
- Complement keys, DES, 281282
- Completely blind signatures, 112113
- Complete set of residues, 242
- Complexity-theoretic approach, stream ciphers, 415418
- Complexity theory, 237242
- algorithms, 237239
- complexity of problems, 239241
- Compression, 226
- Compression function, 431
- Compression permutation, 273274
- Compromise, 5
- Compromised keys, 182183
- Computational complexity, 237
- Computationally secure, 8
- Computer algorithms, 17
- Computer clock, as random-sequence generator, 424
- Computer Security Act of 1987, 600601
- Computing, with encrypted data, 8586, 540541
- COMSET, 517518
- Conditional Access for Europe, 606607
- Conference key distribution, 524
- Confusion, 237, 346347
- Congruent, 242
- Connection integer, 403
- feedback with carry shift registers, maximal-period, 406407
- Continued fraction algorithm, 256
- Contract signing, simultaneous:
- with an arbitrator, 118
- without an arbitrator
- face-to-face, 118119
- not face-to-face, 119120
- using cryptography, 120122
- Control Vector, 180
- Convertible undeniable signatures, 538539
- Coppersmith, Don, 94, 266, 280, 283, 293, 398, 457
- Coppersmiths algorithm, 263
- Correlation attack, 380
- Correlation immunity, stream ciphers, 380
- Correlations, random-sequence generators, 425
- Counter mode, 205206, 209
- Counting coincidences, 14
- Crab, 342344
- Credit cards, anonymous, 147
- Crepeau, Claude, 555
- Crypt(1), 414
- CRYPT(3), 296
- Cryptanalysis, 1, 58
- differential, see Differential cryptanalysis
- FEAL, 311312
- GOST, 333334
- IDEA, 323
- linear, 290293
- LOKI91, 316
- Madryga, 306
- N-Hash, 434435
- related-key, 290
- Snefru, 432
- types, 57
- Cryptanalysts, 1
- Crypt Breakers Workbench, 414
- Cryptographers, 1
- Cryptographic algorithm, see Cipher
- Cryptographically secure pseudo-random, 45
- Cryptographic facility, 562
- Cryptographic mode, 189
- Cryptographic protection, databases, 7374
- Cryptographic protocol, 22
- Cryptography, 1
- CRYPTO-LEGGO, 414
- Cryptologists, 1
- Cryptology, 1
- CRYPTO-MECCANO, 346
- Cryptosystems, 4
- fair, 97
- finite automaton public-key, 482
- hybrid, 3234
- security, 234235
- weak, 97
- Cusick, Thomas, 312
- Cut and choose, 103
- Cypherpunks, 609
- Daemen, Joan, 325, 341, 349, 414
- Damgard, Ivan, 446
- Damm, Arvid Gerhard, 13
- Data, encrypted:
- computing with, 8586, 540541
- discrete logarithm problem, 540541
- for storage, 220222
- Databases, cryptographic protection, 7374
- Data complexity, 9
- Data Encryption Algorithm, see Data Encryption Standard
- Data Encryption Standard, 17, 265301
- adoption, 267268
- algorithm, brute-force attack efficiency, 152153
- characteristics, 286288
- commercial chips, 279
- compared to GOST, 333334
- compression permutation, 273274
- CRYPT(3), 296
- decryption, 277
- description, 270
- DESX, 295
- development, 265267
- differential cryptanalysis, 284290
- DES variants, 298
- expansion permutation, 273275
- final permutation, 277
- generalized, 296297
- hardware and software implementation, 278279
- with independent subkeys, 295
- initial permutation, 271
- iterated block cipher, 347
- key transformation, 272273
- linear cryptanalysis, 290293
- modes, 277278
- multiple, 294295
- 1987 review, 268269
- 1993 review, 269270
- outline of algorithm, 270272
- P-boxes