Crypto primitives

Collision resistant hash function

A hash function where it is hard for an adversary to find y: h(x) = h(y), given h(x) and y.

Strength of hardness assumptions

If violation of hardness assumption A implies violation of assumption B, A is weaker than B. Weaker assumptions are preferred.

To show weakness \htext{A<B}

Take poly time alg to break A and make poly time alg to break B whp.

Hierarchy of strength

DL<CDH<DDH<CDH.

Candidate one way functions

Easy to compute, hard (takes superpolynomial time) to invert whp. Often from computational number theory. Useful in key exchange.

One way functions based on Factoring

f:(x,y)xy. Believed to be hard.

Hard core predicate h for one way functions F

No prob. polytime alg to predict output of h using F significantly better than random guessing, over U.

Group theoretic functions

Group G, generator g. In practice, |G|2160.

Number theoretic groups

For alg for finding large primes, see number theory ref. Can efficiently find generators \why.

Elliptic curve groups

See Topology ref.

The discrete log problem on elliptic curve groups is believed to be more difficult than in the underlying finite field’s multiplicative group. So shorter keys yield same security.

Discrete logarithm (DL)

xZp, g its generator, DLogp,g(a):= least power i{0,..p2}: gi=a.

Breaking: So, given a, p, g: find i.

Computational Diffie Hellman (CDH)

Pick a, b randomly from G.

Breaking: Given ga,gb,g, output gab.

Decisional Diffie Hellman

Pick a, b from G. Pick dU{0,1}. If d = 0, output T=gab, else output TUG.

Breaking: Given the Diffie Hellman tuple (ga,gb,g,T), guess d. Do this significantly better than random guessing.

Not secure if bilinear map efficiently computable.

Decisional linear assumption (DLA)

Decisional linear problem: Given group G of prime order p and elements\ g,u,v,ga,ub, distinguish T=va+b from a random number. T is chosen to be va+b based on a random bit s.

Group with efficiently computable bilinear map e

Now adversary has access to p.

CDH assumed to be hard.

DDH is no longer hard: Given g,ga,gb,T, check if e(g,T)=e(ga,gb).

Bilinear DDH (BDDH)

Extends DDH.

Breaking: Do this significantly better than random guessing:

Given g,ga,gb,gc, distinguish gabc from random T wnnp.

q-BDHE

Given g,h,ga,ga2,..gaq,gaq+2..ga2a:\ no gaq+1; distinguish e(g,h)aq+1 from random r. A different assumption for each q!

Can prove security (if PNP) under generic group model: only certain ops ( pairing, arithmatic .. ) allowed; oracle access to pairing fn.

Information theoretic one way functions

Decoding random (n, k) linear codes. See Information and coding theory ref for details.

Assumptions from learning theory

Learning subspace with noise assumption. Weaker than LPN.

Learning partity with noise (LPN) assumed to be hard.

Lattice based cryptography

Does not assume hardness of factoring.

\tbc

Trapdoor one way function

One way function f which also has some trapdoor used to invert f.

RSA hardness assumption

p,q prime. N=pq. Given y=xemodN, N, e, hard to find y1e. Hard to find d given e and N by factoring N=pq, then finding ϕ(N) and then finding d by Euclid’s Algorithm.

Discrete cube root

Special case where e = 3.

Circuits to compute RSA fn: Iterated products problem

Multiply n n-bit numbers mod N. Computable by polynomial sized ckts of depth O(logn).

Finding xemodN efficient with poly(n) sized boolean ckts which use repeated squaring and multiplying the right squares.

Similarly, can compute ith output bit of BBS pseudorandom generator (see randomized algorithms ref).

Strong/ Flexible RSA assumption

Got N = pq, h; Find some e,h1/e. \ Stronger than RSA ass.