Download presentation
Presentation is loading. Please wait.
1
Group theory exercise
2
Group A group Consists Extra property Set π Operation β
:πΓπβπ
Identity-element Properties Closure π₯,π¦β πβ π₯β
π¦βπ Identity β πβπ : π₯βπβ πβ
π₯=π₯ (we use e to denote the identity element) Associativity π₯,π¦,π§β πβ xβ
π¦ β
π§βπ₯β
(π¦β
π§) Inverse: π₯βπββ π¦βπ :π₯β
π¦=π Extra property Commutativity: π₯,π¦β πβ π₯β
π¦=π¦β
π₯
3
Uniqueness of multiplication
For every group πΊ and π₯,π¦,π§βπΊ , if π₯β
π¦=π₯β
π§ then π¦=π§ Proof π₯β
π¦=π₯β
π§ π₯ β1 β
π₯β
π¦ = π₯ β1 β
π₯β
π§ (π₯ β1 β
π₯)β
π¦ = (π₯ β1 β
π₯)β
π§ (associativity) 1β
π¦ =1β
π§ (inverse) π¦=π§ (identity)
4
Sampling games For any group G, for any π₯β πΊ, the following two games are indistinguishable π€ πβπΊ π€ πβπΊ wβπ wβπ₯β
π Follows that For every group πΊ and π₯,π¦,π§βπΊ , π₯β
π¦=π₯β
π§ then π¦=π§
5
Inverse of product For every group πΊ and a,bβπΊ, ππ β1 = π β1 β
π β1
Proof: ππ β
π β1 π β1 πβ
πβ
π β1 β
π β1 (associativity) πβ
1β
π β (inverse) πβ
π β (neutral) (inverse)
6
Public-key cryptography
7
Topics in public cryptography for today
Key-exchange Public-key encryption
8
Key-exchange When Alice and Bob want to exchange keys
Adversary should learn no information about the keys
9
Key-exchange π π πΉ πππ¦βππ₯πβππππ |π| β secure channel
10
Merkle puzzle βKey-exchangeβ protocol published in 1978
Alice effort small Bobβs effort π 1 Adversaryβs effort π(π) Gap in effort between Bob and adversary
11
Merkle puzzle Puzzle Algorithm for key-exchange
Easy to produce, some difficulty to solve Solving the puzzle produces an identifier and a key Sending the identifier does not help solve the puzzles Algorithm for key-exchange Alice creates n puzzles with different identifiers and sends them to Bob Bob solves one of them and sends the resulting identifier to Alice Alice and Bob uses the key for the one that Bob solved.
12
Diffie-Hellman assumption
Group G Generator g (π π¦ ) π₯ = (π π₯ ) π¦ The following two games are indistinguishable π₯,π¦ β π
πΊ π₯,π¦ β π
πΊ (π,π,π) β (π,π,π) aβ π π₯ aβ π π₯ πβ π π¦ πβ π π¦ πβ π π₯π¦ π β π
πΊ
13
Security of DH-Key exchange
Need a group πΊ such that Generator g βπ₯,π¦βπΊ : (π π¦ ) π₯ = (π π₯ ) π¦ Diffie-Hellman assumption holds Assumption Adversary will not tamper with communication Channel is authenticated between Alice and Bob
14
Diffie-Hellman key-exchange
π₯ β π
πΊ π π₯ y β π
πΊ π π¦ π= ( π π¦ ) π₯ = π π₯π¦ π= ( π π₯ ) π¦ = π π₯π¦
15
Security of Diffie-Hellman key-exchange
π₯ β π
πΊ π π y β π
πΊ πβ π π₯π¦ π π₯ , π π¦ , |π|
16
Security of Diffie-Hellman key-exchange
β β secure channel
17
Insecurity against man-in-the-middle adversary
π π₯ π π₯ π₯ β π
πΊ y β π
πΊ π₯ β π
πΊ π¦ β π
πΊ π π¦ π π¦ π 1 = π π₯ π¦ π 1 = π π₯ π¦ π 2 = π π₯ π¦ π 2 = π π₯ π¦
18
Public key-encryption
How can people send encrypted messages to google, steam, your bank, even though they have never exchanged secret keys with those companies? Public-key encryption allows you to do it Public key is revealed publicly so that everyone can encrypt messages Secret key is kept hidden and only the owner is allowed is able to decrypt the ciphertext
19
Public-key encryption
The Gen algorithm takes security parameter 1 π and outputs both a secret key and a public key The encrypt algorithm takes a public key ππ and a message π and outputs a ciphertext π The decrypt algorithm takes a secret key π π and a ciphertext π and outputs the message m
20
Formal definition πΊππ 1 π β(π π,ππ) πΈπ π ππ π βπ where πβπ, πβπΆ
πΊππ 1 π β(π π,ππ) πΈπ π ππ π βπ where πβπ, πβπΆ π·π π π π π βπ where πβπ, πβπΆ Correctness: Pr[ Dec sk πΈπ π ππ π =π | π π,ππ βπΊππ 1 π ]=1
21
Chosen-plaintext security
ππ ππ π π,ππ βπΊππ( 1 π ) π π,ππ βπΊππ( 1 π ) π 0 , π 1 π 0 , π 1 cβπΈπ π ππ ( π 0 ) cβπΈπ π ππ ( π 1 ) c c β m m cβπΈπ π ππ (π) cβπΈπ π ππ (π) c c Repeat as many times as the distinguisher wants Repeat as many times as the distinguisher wants πΊ 0 πΊ 1
22
Multi-message indistinguishability
pπ pπ π π,ππ βπΊππ( 1 π ) π π,ππ βπΊππ( 1 π ) π 0 1 ,β¦, π 0 π π 0 1 ,β¦, π 0 π c i βπΈπ π ππ ( π 0 ) c i βπΈπ π ππ ( π 1 ) π 1 1 ,β¦, π 1 π π 1 1 ,β¦, π 1 π β πβ π 1 ,β¦, π π πβ π 1 ,β¦, π π π π πΊ 0 πΊ 1
23
Security relationship
Multi-message security of public-key encryption => CPA-security of public-key Reason: public-key encryption allows adversary to encrypt any message of his choice
24
Validation oracles / error oracles
When encrypting message using public-key encryption, it might be that the website sends you an error if the message is not valid. Homomorphic properties of certain encryption schemes πΈπ π ππ ( π 1 ) β πΈπ π ππ ( π 2 ) = πΈππ ππ ( π 1 + π 2 )
25
Validation oracle attack using homomorphism
π = π₯ | π₯ πππ 3=0, π₯<π βͺ π₯ | π₯ πππ 3=1, π₯<π π·π π π π πΈπ π ππ π₯ βπΈπ π ππ 1 βπ β π·π π π π πΈπ π ππ π₯+1 βπ β π₯ πππ 3=0
26
Require CCA-security Distinguisher loses automatically if π = πβ² πΊ 0
ππ ππ π π,ππ βπΊππ( 1 π ) π π,ππ βπΊππ( 1 π ) π 0 , π 1 π 0 , π 1 cβπΈππ( π 0 ) cβπΈππ( π 1 ) c c πβ² πβ² mβπ·ππ(πβ²) m m mβπ·ππ(πβ²) Repeat as many times as the distinguisher wants Repeat as many times as the distinguisher wants πΊ 0 πΊ 0
27
Key-encapsulation Why not use public-key encryption to encrypt long messages? Public-key encryption is hundreds to thousand of times slower than private key-encryption Key-encapsulation attempts to combine the properties of a public key encryption with the speed of private key-encryption
28
Key-encapsulation (hybrid-encryption)
πΊππ,πΈπ π ππ ,π·π π π π is a public-key encryption πΈπ π π ,π·π π π is a private key encryption π β π
0,1 π π ( π 1 , π 2 ) ( π 1 , π 2 ) πβπ·π π π π ( π 1 ) π c 1 βπΈπ π ππ (π) πβπ·π π π ( π 2 ) c 2 βπΈπ π π (π) πΈππ
29
Security of key-encapsulation
β π β π
0,1 π β π ( π 1 , π 2 ) c 1 βπΈπ π ππ (π) c 2 βπΈπ π π (πβ²) πΈππ
30
El-Gamal public-key encryption
Group G |πΊ| = π Generator π πΊππ 1 π π₯β π
πΊ β= π π₯ π πβπ₯ ππβ(πΊ,π,π,β)
31
El-Gamal encryption/ decryption
ππ=(πΊ,π,π,β) π π π¦ β π
πΊ π πβ π π¦ π₯ = π π₯π¦ ( π π¦ , π β² ) π π β π¦ = π π₯π¦ πβ( π π¦ , β π¦ β
π) πβ π β² β π¦ πΈππ π·ππ
32
Sampling games For any group G, for any π₯β πΊ, the following two games are indistinguishable π€ πβπΊ π€ πβπΊ wβπ wβπ₯β
π Follows that For every group πΊ and π₯,π¦,π§βπΊ , π₯β
π¦=π₯β
π§ then π¦=π§
33
Security of El-Gamal β β ππ=(πΊ,π,π,β) ππ=(πΊ,π,π,β) π 0 π π¦ β π
πΊ π π π
πβ π
πΊ π πβ( π π¦ , β π¦ β
π 0 ) πβ( π π¦ ,πβ
π 0 ) πΈππ πΈππ ππ=(πΊ,π,π,β) ππ=(πΊ,π,π,β) π 1 π πβ π
πΊ π π 1 β π¦ β π
πΊ π πβ( π π¦ ,πβ
π 1 ) πβ( π π¦ , β π¦ β
π 1 ) πΈππ πΈππ
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.