Cryptography Flashcards

(31 cards)

1
Q

SIDH

A

Supersingular Isogeny Diffie-Hellman

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

SIKE

A

Supersingular Isogeny Key Encapsulation

Got through round 3 of the NIST PostQuantum process
Broken in 2021 by researchers using difficult elliptic curve theory.

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

SSL/TLS

A

Secure Socket Layer/Transport Layer Security

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

Secure Communication Example

A

Starting with a message in a chest
1. Lock the chest with padlock A
2. Send to B
3. Lock the chest with padlock B
4. Send to A
5. Unlock padlock A
6. Send to B
7. Unlock padlock B

And then B ends up with the message without anyone inbetween having been able to read it

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

Diffie-Hellman Algorithm

A

Represent data as intergers modulo a large prime P
1. A will rase x to a power a (x^a)
2. Send to B
3. B will raise to a power b (x^ab)
4. Send to A
5. Take ath root (x^b)
6. Send to B
7. Take bth root (x)

B now has the unencrypted message
If we could take logarithms the message could be unecrypted by a third party but for an appropriate P we can’t do that efficiently.

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

Secure Key Agreement

A

Everyone knows both large prime P and x
1. A and B pick their powers
2. Raise x to them
3. Exchange results
4. Raise results to their powers

Now both A and B have x^ab which they can use as a key for an efficient cipher such as AES

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

RSA Public/Private Key Communication

A
  1. A selects two distinct prime numbers P and Q, which must be
    sufficiently large and sufficiently ‘random’ to ensure that no
    adversary could factor N = PQ except by luck.
  2. A then chooses a number x relatively prime to
    ϕ(N) = (P − 1)(Q − 1) and publishes the values of N and x.
  3. Anyone wishing to send a message to A then divides it up into
    digits to the base N (taking care to avoid extremely small
    digits) and transmits each digit a by sending ax (mod N)
  4. A decodes by computing x-th roots, since she knows P and Q
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Man-in-the-middle

A

In Diffie–Hellman (and many others), our attacker E can pretend to be B to A, and A to B, so each thinks they have a secure channel to the other, whereas in fact they have a secure channel via E, who decrypts and re-encrypts the messages. This is why TLS requires signatures to prevent this.

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

Meet-in-the-middle

A

If ek (m) is implemented as ek1 (ek2 (m)), you might think we had to guess all combinations of (k1, k2). But under a Known Plaintext Attack (we know m and c, and want k), we compute (and store!) ek1 (m) for all possible k1, then start computing dk2 (c) and look for a match.

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

DES

A
  • Data Encryption Standard
  • 56-bit key
  • 64-bit blocks
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

2DES

A
  • e_{k1, k2}(m) = e_k1(ek2(m))
  • a meet in the middle attack requires 2^57 operations (144 petaops)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

3DES

A
  • e{k1,k2,k3}(m) = ek1(dk2(ek3(m)))
  • k1 = k2 = k3 is just DES
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

AES

A
  • 128-but blocks
  • 128/192/256 bit keys
  • it is possible to break related 192-bit keys in 2^176 operations and related 256-bit keys in 2^99.5 operations
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Hashes

A

An n-bit hash function reduces an arbitrary message to an n-bit
string: h(m) ∈ [0, 2n − 1].

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

Collision Resistance

A

it is hard to find two messages m1 != m2 with h(1) == h(m2)

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

Pre-image Resistance

A

given v is it hard to find m with h(m) = v

17
Q

SHA-1

A

descendant of MD5, deprecated in 2010

18
Q

SHA-2

A

comes in a variety of size, e.g. SHA224

varying strengths, still viable

19
Q

SHA-3

A

current hashing algorithm recommendation

20
Q

Password Hashing

A

want a slower hashing algorithm to make brute force and dictionary attacks harder

often slowed down by performing the hash 10000 times

Argon is a password specific hash

21
Q

Cryptographically Secure Pseudo-Random Numbers

A

requirements
* next bit - given the first k bits of a random sequence there is no polynomial-time algorithm that can predict the (k+1)th bit with probability of success non-negligibly better than 50%
* state compromise - if part or all of its state has been revealed it hsould be impossible to reconstruct the stream of random numbers prior to the revelation

CSPRNGs
* ChaCha2.0 - Linux
* AES in counter mode

22
Q

CSPRNG Warnings

A

require a random seed to start them off

see difference between /dev/random and /dev/urandom

23
Q

Cloudflare Seeds

A

cloudflare uses physical randomness to generate the seeds
* main HQ - lava lamps
* london HQ - double pendulum
* singapore HQ - uranium radioactive decay

24
Q

ECB

A

Electronic Codebook

each message block is encoded separately, c_i := e_k(m_i), this is open to frequency and pattern attacks

25
CBC
cipher block chaining c_i = e_k (m_o ⊕ ci−1). c_0 is a supplied “initialisation vector”. Encryption is serial.
26
CTR
Counter Mode ci = mi ⊕ ek (i), i.e. a counter is encrypted, and the result X-ored with the input. Encryption can be parallel.
27
GCM
Galois/Counter Mode.
28
Harvest Now Decrypt Later
collect sensitive communications, break the ECDH in 10 years time and read the secrets
29
Grover Algorithm
uses quantum computing for attacking hashes and block cipher
30
Shors Algorithm
uses quantum computer for attacking RSA, Diffie-Hellman, EC Diffie-Hellman and ECDSA
31
ML-KEM
quantum proof key encapsulation chosen by NIST bob will encapsulate the key with alices public key and then pass this to alice where she can decrypt it with her private key and reveal the shared key | formerly called Crystals-Kyber