Public key cryptosystems based on Discrete logarithms Flashcards

1
Q

How does the Diffie-Hellman key exchange work?

A

Secret sharing over insecure communication channels

Public:
- Generator g of a multiplicative group G of order t

A: select a, 0 < a
B: select b, b < t

A -> B: g^a
B -> A: g^b

Both compute key Z = g^ab

Secret value Z can be used to compute a key

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Example in Z_p^*

A

Public:
p = 181
g: 2

A: a = 50
B: b = 33

A -> B: g^50 mod 181 = 116
B -> A: g^33 mod 181 = 30

A: Z = 30^50 mod 181
B: Z = 116^33 mod 181

Z = 49

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Define the security of Diffie-Hellman

A

The protocol can be broken if an attacker finds discrete logarithms in group G
- intercepts g^a and take the discrete log to obtain a
- compute g^ab

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the Diffie-Hellman problem?

A

The problem of finding Z=g^ab from knowledge of g^a and g^b

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

How can a man-in-the-middle attack be used on Diffie-Hellman?

A

DH are not authenticated.

Neither A or B knows who the secret Z is shared with.

Because of this, an adversary can set up 2 keys, one with A and one with B, and relay messages between the two

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are ephemeral keys?

A

Keys that are used once and then discarded

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

How does static Diffie-Hellman work?

A

A chooses a long-term private key Xa with corresponding public key Ya = g^Xa

B chooses a long-term private key Xb with corresponding public key Yb = g^Xb

Shared secret can be found by looking up each others public key:
S = g^XaXb

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What does it mean that a secret is static in the Static DH?

A

The key stays the same long-term, until the public keys are changed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is the Elgamal cryptosystem?

A

Turns the DH protocol into a cryptosystem

A combines their ephemeral private key with B’s long-term public key

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Describe Elgamal key generation

A

Select prime p and generator g of Z_p^*

Select long-term private key x where 0 < x < p-1

y = g^x mod p

Public key: (p, g, y)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Describe encryption in Elgamal

A

Public key: Ke = (p, g y)

  1. For any value M where 0 < M < p
  2. Choose k at random and compute g^k mod p
  3. C = E(M, Ke) =
    (g^k mod p, M*y^k mod p)

y^k mod p is a mask for the message M

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Describe decryption in Elgamal

A

Private key: Kd = x, with y = g^x mod p

1: C = (C1, C2)
2. Compute C_1^x mod p
3. D(C, Kd) = C_2 * (C_1^x)⁻1 mod p = M

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is the security of Elgamal?

A

The system can be broken if the discrete log problem is solved by determining the private key x from g^x mod p

Possible for many users to share the same p and g values

Has a proof of security in a suitable model subject to the difficulty of the decision DH problem

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Describe the discrete log problem over Z_p

A

p: large prime

g: generator of multiplicative group Z_p

For any non-zero element in Z_p, we can find a unique i between 1 and p-1 such that a = g^i mod p

log_g(a) = i mod p

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is the definition of the discrete log problem?

A

given a,
find log_g(a) (mod p)

For a sufficiently large p, this is an intricate problem

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

How is discrete log problem is used in public key ciphers?

A

Implementation of these depends on this property:
a^p-1≡1
for all nonzero elements in Z_p

17
Q

Why does discrete log ciphers modulo p offer the same level of security as RSA?

A

Solving the discrete log problem over Z_p is comparable to the difficulty of factoring n, where n is the product of 2 primes, if the number of bits in n is the same as the number of bits in p.

18
Q

What are elliptic curves?

A

Algebraic structures formed from cubic equations.
Elliptic fields can be defined over any field.

Example:
Set of all (x,y) which satisfy:
y²=x³+ax+b mod p

19
Q

What is an elliptic curve group?

A

When we have elliptic curves, once an identity element is added, a binary operation can be defined on these points.

With the operation, the elliptic curve points form an elliptic curve group

20
Q

How are elliptic curve computations denoted?

A

The operation can be denoted by any symbol, but by convention it is called elliptic curve addition:

P + Q = R

Shows group operation on curve points P and Q with the result R

21
Q

What is the elliptic curve discrete log problem?

A

Find value m, given point P and generator G so that

P = mG = G + G +…+ G (m times)

The same as in Z_p^* but with addition as the group operation instead of multiplication

22
Q

Name 3 ways of representing elliptic curves?

A

Short Weierstrass

Montgomery: Allows fixed time elliptic curve multiplication

Edwards: Allows faster group operations

23
Q

How are elliptic curves chosen?

A

A new curve can be generated at any time, but usually standard curves are used.

The predefined set of curves exist because they are generated in a way to ensure no hidden special properties.

24
Q

How are elliptic curves used in cryptography?

A

Widely deployed

Most cryptosystems based on discrete logarithms can be constructed with elliptic curves as well as in Z_p^*

For example, DH and Elgamal can be run on elliptic curves

25
Q

How will public key cryptography be affected by post-quantum computers?

A

Broken due to Shor’s algorithm for factorisation.

This algorithm can also be used to find discrete logarithms.

26
Q

How will symmetric key cryptography be affected by post-quantum computers?

A

Can still be used, but with double length keys due to Grover’s algorithm for searching