Cryptography Reference
In-Depth Information
return the Jacobi symbol
b
int
jacobi (const LINT& a,
const LINT& b);
LINT
lcm (const LINT& a,
const LINT& b);
return the least common
multiple of
a
and
b
unsigned int
ld (const LINT& a);
log
2
(
a
)
return
LINT
nextprime (const LINT& a,
const LINT& f);
return the smallest prime
p
above
a
with
gcd(
p
−
1
,
f
)=1
,
f
odd
LINT
primroot (unsigned noofprimes,
LINT** primes);
return a primitive root modulo
p
.In
noofprimes
is passed the
number of distinct prime fac-
tors of the group order
p −
1
,
in primes a vector of pointers
to
LINT
objects, beginning with
p
1
, then come the prime divi-
sors
p
1
,...,p
k
of the group order
p −
1=
p
e
1
−
···p
e
k
with
k
=
noofprimes
LINT
root (const LINT& a);
return
the
integer
part
of
the
square root of
a
LINT
root (const LINT& a,
const LINT& p);
return the square root of
a
mod-
ulo an odd prime
p
LINT
root (const LINT& a,
const LINT& p,
const LINT& q);
return the square root of
a
mod-
ulo
p*q
for
p
and
q
odd primes
LINT
strongprime (const LINT& pmin,
const LINT& pmax,
const LINT& f);
prime
p
with
return
a
strong
pmin
≤ p ≤
pmax
,
gcd(
p−
1
,
f
)=
1
,
f
odd, default lengths
lr
,
lt
,
ls
of prime divisors
r
of
p −
1
,
t
of
r
1
−
1
,
s
of
p
+1
:
lt
4
,
ls
≈
1
2
lr
of the binary length of