A
ADCs (analogue-to-digital converters),
103–104
Addition in ECC (elliptic curve cryptography),
392–393
AddRoundKey function,
146
Advances in Cryptology (Coppersmith, ed.),
375
AES (Advanced Encryption Standard) block cipher
AddRoundKey function,
146
bi-directional channels,
195
embedding cipher keys,
193,
197
performance on x86-based platforms,
174–176
AES implementation, 8-bit
AES implementation, 32-bit
performance, small variant,
178–180
AMD Opteron cache design,
183
Analogue-to-digital converters (ADCs),
103–104
Apple computers’ CPU timers,
101
Applied Cryptography), (Schneier),
14,
16
Array end, reading past,
59
The Art Of Computer Programming Volume 2 (Knuth),
375
ASN.1 (Abstract Syntax Notation One)
data types, primitive,
30
key length encodings,
31–32
ASN.1 encoders and decoders
BIT STRING encoding,
52–55
IA5STRING encoding,
63–67
OBJECT IDENTIFIER (OLD) encoding,
58–62
OCTET STRING encoding,
55–57
PrintableString encoding,
63–67
SEQUENCE (OF) encoding,
71–77
Asymmetric key algorithms,
380
goal of cryptography,
8–10
Autocorrelation test,
95–98
B
Backtracking attacks,
118
Basic Encoding Rules (BER),
22–23
Bi-directional channels,
195
performance math libraries,
376
BigNum Math: Implementing Cryptographic Multiple Precision Arithmetic (St. Denis, Rose),
375,
390,
405
Blinded exponentiation techniques,
390–391
Block levels and X86 processors,
15
Advances in Cryptology book (Coppersmith, ed.),
375
The Art Of Computer Programming Volume 2 book (Knuth),
375
BigNum Math’Implementing Cryptographic Multiple Precision Arithmetic book (St. Denis, Rose),
375,
390,
405
Guide to Elliptic Curve Cryptography book (Hankerson, Menezes, Vanstone),
391,
399,
405,
407
Handbook of Applied Cryptography book,
16,
375
Practical Cryptography,
16
C
C functions memcpy, memcmp, malloc, and flee,
56
Canonical Encoding Rules (CER),
22–23
CCM (Counter with CBC MAC)
selection as standard,
299
CE1K (Canonical Encoding Rules),
22–23
Certification, FIPS,
19,
217
performance downsides,
189
CHOICE modifier in ASN., ,
27
Cipher keys, embedding in applications,
193,
197
Classification bits in ASN.1,
29
HMACs (hash message authentication codes),
279,
293–294
SHA-1 family of hash functions,
210
SHA-256 hash functions,
219
SHA-512 hash functions,
226
Constructed bit in ASN.1,
29–30
Containers in ASN., ,
24–25
Counters in authentication portion,
13
Cryptography, elliptic curve (ECC).
Cryptography, goals of,
4–11
D
Dark Age of Camelot video game,
Data Encryption Standard (DES) block cipher, ,
140–141
DEFAULT modifier in ASN., ,
26–27
DER (Distinguished Encoding Rules),
22–23
DES (Data Encryption Standard) block cipher, ,
140–141
Deterministic random bit generators (DRBGs).
See DRBGs
Diffie-Hellman key exchange,
380
Distinguished Encoding Rules (DER),
22–23
Doubling hash functions,
241
Doubling in ECC (elliptic curve cryptography),
393
DRBGs (deterministic random bit generators)
E
ECC (elliptic curve cryptography)
Jacobian projective points,
400–401
key generation and storage,
395–397
parameters (field curves),
394
prime field ECC curves,
391
Embedding cipher keys in applications,
193,
197
Encrypt and authenticate modes
ECC (elliptic curve cryptography),
397
Explicit values in ASN., ,
24
Dark Age of Camelot video game,
G
Game
Dark Age of Camelot,
GCM (Galois Counter Mode)
additional authentication data (AAD) processing,
316–319
Single Instruction Multiple Data (SIMD) instructions,
325–326
Generic devices, trapping,
114
GMP (GNU Multiple Precision) library,
376
GNU Multiple Precision (GMP) library,
376
Goals of cryptography,
4–11
Guide to Elliptic Curve Cryptography (Hankerson, Menezes, Vanstone),
391,
399,
405,
407
H
Handbook of Applied Cryptography, ,
16,
375
Hash-based DRBG (deterministic random bit generator),
127
intrusion detection software (IDS),
239
message authentication codes (MACs),
240–241
performance considerations,
244–245
random number generators (1KNGs),
108,
238
Hash message authentication code.
See HMACs
Header bytes in ASN., ,
28–30
HMACs (hash message authentication codes)
I
IDS (intrusion detection software),
239–240
GCM (Galois Counter Mode),
304
HMACs (hash message authentication codes),
270–275
public key (PK) standards,
83–89
SHA-1 family of hash functions,
211–217
Inline expansion of hash functions,
244
Integrity as goal of cryptography,
6–8
Intrusion detection software (IDS),
239–240
Inverse cipher in AES,
155
Inversion, multiplicative,
374
K
KDFs (key derivation functions),
201,
236
Key derivation functions (KDFs),
201,
236
Key generation in ECC (elliptic curve cryptography),
395–396
Keys, embedding in applications,
193,
197
Kolmogorov complexity,
94
M
MACs (message authentication codes)
Memory, virtual and swap,
338
Message authentication codes.
See MACs
Mismatch of strength,
206
Modeling threats,
3–4,
18
Modifiers in ASN., ,
26–27
Monte Carlo simulations,
94
“The Montgomery Powering Ladder” (Yen and Joye),
390
ECC (elliptic curve cryptography),
393–394
Multiplicative inversion,
374
Myths about block ciphers,
196
O
Open-source libraries,
15,
19,
90
AES implementation, 32 -bit,
165
GCM (Galois Counter Mode) multiplication,
311–312
SHA-1 family of hash functions,
212
OPTIONAL modifier in ASN., ,
26
Osvik attack (Dag Arne Osvik),
184–185
P
Packet loss and re-ordering,
295
re-applied hash functions,
243
MACs (message authentication codes),
296
PIC (Programmable Interrupt Controller),
99
RSAES-OAEP encryption scheme,
385–386
PowerPC processors’ CPU timers,
101
Practical Cryptography (Ferguson and Schreier),
16,
122
“A Practical Implementation of Elliptic Curve Cryptosystems over GF(p) on a 16 -bit Microprocessor” (Hasegawa, Nakajima, and Matsui),
401
Prime field ECC curves,
391
Primitive encoders in ASN.1,
45
Primitive types in ASN.1,
30
goal of cryptography,
4–5
PRNGs (pseudo random number generators)
Programmable Interrupt Controller (PlC),
99
Projective points, Jacobian,
400–401
PRP (pseudo random permutation),
142,
201
Pseudo random number generators.
See PRNGs
Pseudo random permutation (PRP),
142,
201
Public-domain open-source libraries,
15,
19,
90
Number Field Sieve algorithm,
389–390
Public-key (PK) standards, implementing
Public-key signatures,
381
R
Random bit generators,
92
Random number generators (RNGs)
generic devices, trapping,
114
platforms, desktop and server,
133–134
SG100 nine-pin serial-port RNG,
134
Re-applied hash functions for passwords,
243
Re-ordering of packets,
295
Right shift operation,
300
Rijndael block cipher,
140
Rings (mathematical),
144
RSA public key cryptography
RSA (Rivest Shamir Adleman) algorithm,
380
RSAES-OAEP encryption scheme,
385–386
S
Secret and Lies (Bruce Schneier),
13–14
Secure Hash Standard (SHS) hash functions,
Security problems: reading past array end,
59
Serpent block cipher,
140
SG100 nine-pin serial-port R.NG,
134
SHA-1 family of hash functions
zero-copy compression,
214
SHA-2 family of hash functions
SHS (Secure Hash Standard) hash functions,
Signatures in ECC (elliptic curve cryptography),
398–399
Simulations, Monte Carlo,
94
ASN. 1 (Abstract Syntax Notation One),
90
DES (Data Encryption Standard) block cipher, ,
140–141
public-key cryptography,
406
SHS (Secure Hash Standard) hash functions,
Strength, mismatch of,
206
Strengthening of message digests (MDs),
207–208,
250
Substitution-permutation network,
140,
142
Symmetric key ciphers, ,
380
Syntax of ASN.l(Abstract Syntax Notation One),
23–27