Presentation is loading. Please wait.

Presentation is loading. Please wait.

Digital signatures.

Similar presentations


Presentation on theme: "Digital signatures."β€” Presentation transcript:

1 Digital signatures

2 What is a digital signature
A digital signature allows the holder of the secret key (the signing key) to sign a document Everyone who knows the verification key can verify that the signature is valid (correctness) No one can forge a signature even given the verification key even though he is given a signature

3 Structure of digital signature
𝐺𝑒𝑛 1 𝑛 β†’ (π‘ π‘˜,π‘£π‘˜) 𝑆𝑖𝑔𝑛 π‘ π‘˜ π‘š β†’ 𝑠𝑖𝑔 𝑉𝑒 π‘Ÿ π‘£π‘˜ π‘š,𝑠𝑖𝑔 β†’ {0,1}

4 Structure of digital signature scheme (DSS)
𝐺𝑒𝑛 1 𝑛 β†’ (π‘ π‘˜,π‘£π‘˜) 𝑆𝑖𝑔𝑛 π‘ π‘˜ π‘š β†’ 𝑠𝑖𝑔 𝑉𝑒 π‘Ÿ π‘£π‘˜ π‘š,𝑠𝑖𝑔 β†’ {0,1} Correctness 𝑉𝑒 π‘Ÿ π‘£π‘˜ π‘š,𝑆𝑖𝑔 𝑛 π‘ π‘˜ (π‘š) =1 Unforgeability To be continued

5 DSS VS MAC 𝐺𝑒𝑛 1 𝑛 β†’ (π‘ π‘˜,π‘£π‘˜) 𝐺𝑒𝑛 1 𝑛 β†’ π‘˜ 𝑆𝑖𝑔𝑛 π‘ π‘˜ π‘š β†’ 𝑠𝑖𝑔 π‘šπ‘Žπ‘ π‘˜ π‘š β†’ 𝑑
𝐺𝑒𝑛 1 𝑛 β†’ (π‘ π‘˜,π‘£π‘˜) 𝑆𝑖𝑔𝑛 π‘ π‘˜ π‘š β†’ 𝑠𝑖𝑔 𝑉𝑒 π‘Ÿ π‘£π‘˜ π‘š,𝑠𝑖𝑔 β†’ {0,1} 𝐺𝑒𝑛 1 𝑛 β†’ π‘˜ π‘šπ‘Žπ‘ π‘˜ π‘š β†’ 𝑑 v𝑒 π‘Ÿ π‘˜ π‘š,𝑑 β†’ {0,1}

6 Mac forgery game M ←{} k ∈ 𝑅 0,1 𝑠 π‘šβ€² M←𝑀βˆͺ{π‘šβ€²} Repeat as many times
as the adversary wants 𝑑′ β†π‘šπ‘Ž 𝑐 π‘˜ (π‘šβ€²) 𝑑′ Wins if π‘š βˆ‰π‘€ π‘£π‘’π‘Ÿπ‘–π‘“π‘¦ π‘š,𝑑 =1 (π‘š,𝑑)

7 Signature forgery game
π‘£π‘˜ M ←{} π‘ π‘˜,π‘£π‘˜β†πΊπ‘’π‘›( 1 𝑠 ) π‘šβ€² M←𝑀βˆͺ{π‘šβ€²} Repeat as many times as the adversary wants 𝑠𝑖𝑔′ ←𝑆𝑖𝑔 𝑛 π‘ π‘˜ (π‘šβ€²) 𝑠𝑖𝑔′ Wins if π‘š βˆ‰π‘€ π‘‰π‘’π‘Ÿπ‘–π‘“ 𝑦 π‘£π‘˜ π‘š,𝑠𝑖𝑔 =1 (π‘š,𝑠𝑖𝑔)

8 Definition of signature scheme
Correctness: Pr 𝑉𝑒 π‘Ÿ π‘£π‘˜ π‘š,𝑆𝑖𝑔 𝑛 π‘ π‘˜ π‘š =1 π‘ π‘˜,π‘£π‘˜ ←𝐺𝑒𝑛 1 𝑠 =1 Unforgeability For all PPT adversary 𝐴, there exists negligible function πœ‡, Pr 𝐴 𝑀𝑖𝑛𝑠 π‘‘β„Žπ‘’ π‘ π‘–π‘”π‘›π‘Žπ‘‘π‘’π‘Ÿπ‘’ π‘“π‘œπ‘Ÿπ‘”π‘’π‘Ÿπ‘¦ π‘”π‘Žπ‘šπ‘’ β‰€πœ‡(𝑛)

9 Relation between macs and signatures
Every signature scheme is a message authentication code. A mac scheme is not necessarily a signature. Without the key, it may be impossible to verify a mac.

10 Signatures are expensive
They require public-key operations for each signature you wish to do. Hash functions are relatively cheap

11 Hash and sign Let (𝐺𝑒𝑛′,𝑆𝑖𝑔𝑛′,π‘‰π‘’π‘Ÿπ‘–π‘“π‘¦β€²) be a signature scheme and let 𝐻 be a collision resistant hash function, then the following 𝐺𝑒𝑛 1 𝑠 ≔𝐺𝑒 𝑛 β€² 1 𝑠 𝑆𝑖𝑔 𝑛 π‘ π‘˜ π‘š ≔ 𝑆𝑖𝑔 𝑛 π‘ π‘˜ β€² (𝐻 π‘š ) π‘‰π‘’π‘Ÿπ‘–π‘“ 𝑦 π‘£π‘˜ π‘š,𝑠𝑖𝑔 ≔ π‘‰π‘’π‘Ÿπ‘–π‘“ 𝑦 π‘£π‘˜ β€² 𝐻 π‘š ,𝑠𝑖𝑔 =1

12 Security of hash and sign
Let (𝐺𝑒𝑛′,𝑆𝑖𝑔𝑛′,π‘‰π‘’π‘Ÿπ‘–π‘“π‘¦β€²) be a signature scheme and let 𝐻 be a collision resistant hash function, then the following 𝐺𝑒𝑛 1 𝑠 ≔𝐺𝑒 𝑛 β€² 1 𝑠 𝑆𝑖𝑔 𝑛 π‘ π‘˜ π‘š ≔ 𝑆𝑖𝑔 𝑛 π‘ π‘˜ β€² (𝐻 π‘š ) π‘‰π‘’π‘Ÿπ‘–π‘“ 𝑦 π‘ π‘˜ π‘š,𝑠𝑖𝑔 ≔ π‘‰π‘’π‘Ÿπ‘–π‘“ 𝑦 β€² 𝐻 π‘š ,𝑠𝑖𝑔 =1 Essentially the same proof as hash and mac Breaking security of this scheme means Finding a collision Finding a signature on an unsigned message

13 Interesting property of plaintext RSA
π‘ π‘˜,π‘π‘˜ ←𝐾𝑒𝑦𝐺𝑒𝑛 1 𝑠 β‡’ 𝐸𝑛 𝑐 π‘π‘˜ 𝐷𝑒 𝑐 π‘ π‘˜ π‘š =π‘š Due to the fact that π‘š 𝑒 𝑑 = π‘š 𝑑 𝑒 = π‘š 𝑒𝑑

14 RSA signature scheme Let (𝐾𝑒𝑦𝑔𝑒𝑛,𝐸𝑛𝑐,𝐷𝑒𝑐) denote the RSA encryption scheme 𝐺𝑒𝑛 1 𝑠 ≔{π‘ π‘˜β†π‘  π‘˜ β€² , π‘£π‘˜β†π‘π‘˜βˆ£ 𝑠 π‘˜ β€² ,𝑝 π‘˜ β€² ←𝐾𝑒𝑦𝑔𝑒𝑛 1 𝑠 } 𝑆𝑖𝑔 𝑛 π‘ π‘˜ π‘š ≔ 𝐷𝑒𝑐 π‘ π‘˜ π‘š π‘‰π‘’π‘Ÿπ‘–π‘“ 𝑦 π‘£π‘˜ π‘š, 𝑠𝑖𝑔 ≔ 𝐸𝑛 𝑐 π‘£π‘˜ 𝑠𝑖𝑔 =π‘š

15 Insecure RSA signature scheme
𝐺𝑒𝑛 1 𝑠 ≔{ π‘£π‘˜β†π‘π‘˜, π‘ π‘˜β†π‘ π‘˜β€² ∣ 𝑠 π‘˜ β€² ,𝑝 π‘˜ β€² ←𝐾𝑒𝑦𝑔𝑒𝑛 1 𝑠 } 𝑆𝑖𝑔 𝑛 π‘ π‘˜ π‘š ≔ 𝐷𝑒𝑐 π‘ π‘˜ π‘š π‘‰π‘’π‘Ÿπ‘–π‘“ 𝑦 π‘£π‘˜ π‘š,𝑆𝑖𝑔 𝑛 π‘ π‘˜ π‘š = 𝐸𝑛 𝑐 π‘£π‘˜ 𝐷𝑒𝑐 π‘ π‘˜ π‘š 𝐸𝑛 𝑐 π‘£π‘˜ 𝐷𝑒𝑐 π‘ π‘˜ π‘š = π‘š 𝑑 𝑒 = π‘š 𝑒⋅𝑑 =π‘š

16 Secure RSA signature scheme
Assumptions Random oracle 𝐻 (Hash function modeled as a random oracle 𝑛=π‘π‘ž where 𝑝,π‘ž are prime 𝐺𝑒𝑛 1 𝑠 ≔{ π‘£π‘˜β†π‘π‘˜, π‘ π‘˜β†π‘ π‘˜β€² ∣ 𝑠 π‘˜ β€² ,𝑝 π‘˜ β€² ←𝐾𝑒𝑦𝑔𝑒𝑛 1 𝑠 } 𝑆𝑖𝑔 𝑛 π‘ π‘˜ π‘š ≔ 𝐷𝑒𝑐 π‘ π‘˜ 𝐻(π‘š) π‘‰π‘’π‘Ÿπ‘–π‘“ 𝑦 π‘£π‘˜ π‘š,𝑆𝑖𝑔 𝑛 π‘ π‘˜ π‘š ≔𝐻 π‘š = 𝐸𝑛 𝑐 π‘£π‘˜ 𝐷𝑒𝑐 π‘ π‘˜ 𝐻(π‘š) 𝐸𝑛 𝑐 π‘£π‘˜ 𝐷𝑒𝑐 π‘ π‘˜ 𝐻(π‘š) = (𝐻 (π‘š)) 𝑑 𝑒 π‘šπ‘œπ‘‘ 𝑛 (𝐻 (π‘š)) 𝑑 𝑒 π‘šπ‘œπ‘‘ 𝑛 = 𝐻(π‘š) 𝑒⋅𝑑 π‘šπ‘œπ‘‘ πœ™(𝑛) (π‘šπ‘œπ‘‘ 𝑛)=𝐻(π‘š)

17 Schnorr signature scheme
Based on Group G Generator 𝑔 for G Random oracle 𝐻 Discrete logarithm

18 Schnorr signature scheme
Requirement: Group 𝐺, 𝐺 =π‘ž, generator 𝑔, random oracle 𝐻 𝐺𝑒𝑛 1 𝑠 π‘ π‘˜ ∈ 𝑅 𝐺 π‘£π‘˜β† 𝑔 π‘ π‘˜ π‘‰π‘’π‘Ÿπ‘–π‘“ 𝑦 π‘£π‘˜ (π‘š,𝑠𝑖𝑔) π‘Ž,𝑠 ←𝑠𝑖𝑔 u ← 𝑔 𝑠 β‹… π‘£π‘˜ βˆ’π‘Ž Output 𝐻 𝑒,π‘š =π‘Ž 𝑆𝑖𝑔 𝑛 π‘ π‘˜ π‘š π‘βˆˆ 𝑅 𝑍 |𝐺| 𝑒← 𝑔 𝑏 π‘Žβ†π»(𝑒,π‘š) π‘ β†π‘Žβ‹…π‘ π‘˜+𝑏 (π‘šπ‘œπ‘‘ π‘ž) Output (π‘Ž,𝑠)


Download ppt "Digital signatures."

Similar presentations


Ads by Google