Index
A
addition
elliptic curve 106
normal basis 118
over GF(2 n ) 110
over real numbers 107
polynomial basis 49, 54, 115
integer 14, 20
almost inverse
algorithm 285
ascii_to_bigint 28
authen_secret 191, 194
avalanche
130
B
balanced form 122
BIGINT 17
bigint_to_ascii 28
binary
representation 17
C
CARRY 16
Certicom 4
Certicom challenge 168
commutative cipher.
See Massey-Omura.
complex multiplication method 298
compression 297
conversion 57
copy 57
copy_cust 290
copy_point 113
counting
points 298
cracking. See cryptanalysis.
Crandall 299
cryptanalysis
132
cryptography 129
CURVE 113
cus_times_u_to_n 290
CUSTFIELD 289
D
Dahm. See inversion, fast.
DBLBITS 54
DBLFIELD 54
DBLLOOP 54
dblnull 56
DBLSHIFT 54
DBLWORD 54
degree 49, 60
degreeof 61
derivative 68
DERIVMASK 54, 69
DES 132
DH_gen_send_key 175
DH_key_share 176
DIEHARD 168
Diffie-Hellman 166, 174-180
digital
signature 256-282
div_shift 59
division
integer 14, 23
polynomial 50, 58, 62
DSA 271-282
E
EC_KEYPAIR 224
EC_PARAMETER 212, 224
ECES_decrypt 217
ECES_encrypt 217
ECKGP 216, 225
edbl 119
ELEMENT 17, 52
ElGamal 166, 180-188
elliptic curve
discrete logarithm problem 132
embedding data 136
nonsupersingular
110, 133
order 108
over GF(2 n ) 109
over real numbers 104
subtraction
supersingular 110
elliptic curve equation 104
Galois Fields 109
real 104
elliptic curve mathematics 103-126
elptic_mul 123
embedding data 136
normal basis 146
polynomial basis 161
encryption 199
Elliptic Curve Encryption Scheme 200
esub 120
esum 118
Euclid's
algorithm 50, 66
example
DSA 276, 280
encryption 215, 218
integer 27
Massey-Omura 240,
242
MQV 192, 194, 248, 251
Nyberg-Rueppel 265, 269
exponential time
5, 6
F
factoring 5
Fermat's Theorem 39, 104
field conversion. See
conversion.
field_prime 82, 85
field_to_int 222
FIELD2N 52
finite fields 40
fofx 147
freelip 14
G
Galois Fields 43
Gaussian elimination 227
gen_MO_pair 236
generator 43
See also prime polynomial.
genlambda 82
genlambda2 90
GF. See
Galois Field.
Gillogly, James 203
greatest common factor
integer 30, 35
polynomial 67
H
HALFSIZE 16
hash 259
hash_to_int 259
Hasse's Theorem 108, 133,
171
header
bigint.h 16, 18
eliptic.h 111
field2n.h 18, 51
poly.h 54
HIMASK 16
hyperelliptic curves 299
I
IDEA 132
identity element 40
IEEE P1363 131, 166, 200, 225, 244,
258, 271
INDEX 18, 52
init_opt_math 289
init_poly_math 153
init_two 288
initialization
normal basis math 289
polynomial math 153
int_add 20
int_copy
19
int_div 24
int_div2 34
int_gcd 35
int_mul 22
int_neg 20
int_null 19
int_onecmp 236
int_sub 21
int_to_field 224
integer representation 17
INTLOOP 18
INTMAX 16
inversion
fast 284-297
matrix, polynomial basis 150
normal basis 97, 100, 292
polynomial 66
irreducible 70
irreducible polynomial 49
isomorphic 76
K
key exchange 222
Knuth 34
Koblitz 4, 122, 136, 219, 226, 234, 298
Koblitz curves 133
L
Lambda 82
lambda matrix 79, 82, 87, 90
language 11
large integer
math 14, 19, 27
lg2_m 82
LiDIA 14
linear equations 226
log_2 60
log2 288
LOMASK 16
LONGBIT 288
LONGMASK 288
LONGSHIFT 288
LONGWORD 288
M
man-in-the-middle attack 179
Marsaglia 168
mask generation function
202-212
mass
Massey-Omura 222, 234-244
matrix 227
diagonalize 231
transpose 231
matrix_print 152
MAXBITS 51
MAXDBL 54
MAXLONG 16, 51
MAXSHIFT 51
MAXSTRING 16
Menezes-Qu-Vanstone 188-197, 222
Mentat 203
message hash 259
MGF_Hash 210
Miller 4
MIRACL 14
mod_exp 38
mod_inv 42
modular arithmetic
exponentiation 38
integer 29, 37
inversion 41
modulus 41
Mother 169
MQV. See Menezes-Qu-Vanstone.
MSB 51
MSB_HW 16
mul_shift 55
mul_x_mod 69
multiplication
elliptic curve 120
normal basis 92, 122
polynomial basis 125
integer 14, 21
normal
basis 78, 94
polynomial 49, 55, 57, 65, 69
multiplication table 79, 82
N
negation
elliptic curve 110, 113
integer 20
nist_guts 208
nonadjacent
form 122
normal basis 75-102
normal basis representation 76
NR_Signature 262
NR_Verify 263
null 56
null_cust 290
Null_Row 149
number
theory 13-44
NUMBITS 16, 51
NUMWORD 16, 51
Nyberg-Rueppel 256,
260-271
O
onb_DSA_Signature 273
onb_DSA_Verify 274
onb_Massey_Omura_rcv 239
onb_Massey_Omura_send 238
onb_mqv 246
one 97
opt_embed 146
opt_inv 100, 292
opt_mul 94
opt_quadratic 141
optimal normal
basis 76, 101
Type I 80-84
Type II 85-92
order 43
See also Hasse's Theorem.
output 96
P
P1363. See IEEE P1363.
perfect forward secrecy 189
PGP 4, 5
Pinch 140
POINT 113
point at infinity 105
poly_div 62
poly_DSA_Signature 278
poly_DSA_Verify 279
poly_ECES_decrypt 214
poly_ECES_encrypt 213
poly_ECKGP 225
poly_ECKGP_0 213
poly_edbl
116
poly_embed 161
poly_esub 117
poly_esum 115
poly_fofx 161
poly_gcd 68
poly_gf8 230
poly_inv 66
poly_Massey_Omura_rcv 239
poly_Massey_Omura_send 238
poly_matrix_invert 150
poly_mqv 250
poly_mul 65
poly_mul_partial 57
poly_NR_Signature 267
poly_NR_Verify 268
poly_quadratic 158
polynomial basis 48
polynomial math 47-72
polynomial time 5
prime 30, 48
prime
polynomial 49, 65, 68, 70
print_curve 114
print_field 96, 114
print_point 114
private key 130, 166
protocols 165-197
protocols. See Diffie-Hellman, ElGamal, Massey-Omura, Nyberg-Rueppel, DSA,
Menezes-Qu-Vanstone, encryption.
public key 130, 166
Q
quadratic equation
normal basis 141
polynomial basis 148, 158
quadratic equations 137
R
rand_curve 172
rand_point 173
random bit generator 168
random_field 171
receive_elgamal 183, 186
remainder 49
rot_left
94
rot_right 94
rotate
RSA 5
S
schematic 15, 53, 77, 112, 142, 167, 201, 223, 257, 284
Schroeppel 292
secret key 130, 166
security 131, 297
send_elgamal 182, 185
sha_file 206
sha_memory 207
sha_stream 207
SHA-1 200, 202, 203,
259
shift
shift_by 288
SIGNATURE 258
signature
256-282
Smatrix 149
sngltodbl 57
solution vectors 229, 233
square root
normal basis 141
polynomial 160
squaring
normal basis 78, 94
polynomial 70
subexponential time 5
subtraction
elliptic curve
normal basis 120
polynomial basis 117
integer 21
polynomial 50
SUMLOOP 52
T
test routine 96
time to crack 4
Tmatrix 149, 158
Trace 137, 138
Trace vector 139
Trace_Vector 149
twist 133
two_bit 288
two_inx 288
TYPE2 85
U
UPRBIT 52
UPRMASK 52
UPRSHIFT 16, 51
U.S. patent 5600725 256
V
W