By Abhijith Chandrashekar and Dushyant Maheshwary.

Slides:



Advertisements
Similar presentations
Lecture 8: Lattices and Elliptic Curves
Advertisements

Authentication and Digital Signatures CSCI 5857: Encoding and Encryption.
Public Key Algorithms …….. RAIT M. Chatterjee.
YSLInformation Security -- Public-Key Cryptography1 Elliptic Curve Cryptography (ECC) For the same length of keys, faster than RSA For the same degree.
ELECTRONIC PAYMENT SYSTEMSFALL 2002COPYRIGHT © 2002 MICHAEL I. SHAMOS Electronic Payment Systems Lecture 6 Epayment Security II.
Elliptic Curve Cryptography (ECC) Mustafa Demirhan Bhaskar Anepu Ajit Kunjal.
Windows Core Security1© 2006 Microsoft Corp Cryptography: Helping Number Theorists Bring Home the Bacon Since 1977 Dan Shumow SDE Windows Core Security.
Cryptography1 CPSC 3730 Cryptography Chapter 10 Key Management.
CS470, A.SelcukElGamal Cryptosystem1 ElGamal Cryptosystem and variants CS 470 Introduction to Applied Cryptography Instructor: Ali Aydin Selcuk.
Introduction to Signcryption November 22, /11/2004 Signcryption Public Key (PK) Cryptography Discovering Public Key (PK) cryptography has made.
Dr. Lo’ai Tawalbeh Fall 2005 Chapter 10 – Key Management; Other Public Key Cryptosystems Dr. Lo’ai Tawalbeh Computer Engineering Department Jordan University.
Electronic Payment Systems Lecture 5: ePayment Security II
ELECTRONIC PAYMENT SYSTEMSFALL 2001COPYRIGHT © 2001 MICHAEL I. SHAMOS Electronic Payment Systems Lecture 6 Epayment Security II.
Public Key Cryptography RSA Diffie Hellman Key Management Based on slides by Dr. Lawrie Brown of the Australian Defence Force Academy, University College,
CPE5021 Advanced Network Security --- Advanced Cryptography: Elliptic Curve Cryptography --- Lecture 3 CPE5021 Advanced Network Security --- Advanced Cryptography:
Computer Science CSC 474Dr. Peng Ning1 CSC 474 Information Systems Security Topic 2.5 Public Key Algorithms.
ASYMMETRIC CIPHERS.
Cryptography and Network Security Chapter 13
Introduction to Public Key Cryptography
Public Key Model 8. Cryptography part 2.
Andreas Steffen, , 4-PublicKey.pptx 1 Internet Security 1 (IntSi1) Prof. Dr. Andreas Steffen Institute for Internet Technologies and Applications.
Information Security and Management 13. Digital Signatures and Authentication Protocols Chih-Hung Wang Fall
Page 1 Secure Communication Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content of this presentation.
Bob can sign a message using a digital signature generation algorithm
Elliptic Curve Cryptography
Digital Signatures: Mathematics Zdeněk Říha. Data authentication Data integrity + data origin Digital signature Asymmetric cryptography public and private.
Understanding Cryptography – A Textbook for Students and Practitioners by Christof Paar and Jan Pelzl Chapter 10 – Digital Signatures.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Application of Elliptic Curves to Cryptography
CS 627 Elliptic Curves and Cryptography Paper by: Aleksandar Jurisic, Alfred J. Menezes Published: January 1998 Presented by: Sagar Chivate.
1 Lecture 9 Public Key Cryptography Public Key Algorithms CIS CIS 5357 Network Security.
Topic 22: Digital Schemes (2)
Digital Signatures A primer 1. Why public key cryptography? With secret key algorithms Number of key pairs to be generated is extremely large If there.
Elliptic Curve Cryptography Implementation & PKI Adoption Brian Saville Jonathan Mitchell.
Cryptography and Network Security (CS435) Part Eight (Key Management)
Cryptography and Network Security Chapter 10 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Elliptical Curve Cryptography Manish Kumar Roll No - 43 CS-A, S-7 SOE, CUSAT.
Public Key Cryptography. symmetric key crypto requires sender, receiver know shared secret key Q: how to agree on key in first place (particularly if.
Cryptography and Network Security Chapter 13 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
CS461/ECE422 Spring 2012 Nikita Borisov — UIUC1.  Text Chapters 2 and 21  Handbook of Applied Cryptography, Chapter 8 
Basic Elliptic Curve Cryptography 1Lt Peter Hefley 90 OSS Instructor Fall ‘06.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
PUBLIC-KEY CRYPTOGRAPH IT 352 : Lecture 2- part3 Najwa AlGhamdi, MSc – 2012 /1433.
Chapter 3 (B) – Key Management; Other Public Key Cryptosystems.
Cryptography and Network Security Key Management and Other Public Key Cryptosystems.
Understanding Cryptography by Christof Paar and Jan Pelzl These slides were prepared by Tim Güneysu, Christof Paar and Jan Pelzl.
Cryptography and Network Security
Chapter 9 Public Key Cryptography and RSA. Private-Key Cryptography traditional private/secret/single key cryptography uses one key shared by both sender.
1 Chapter 10: Key Management in Public key cryptosystems Fourth Edition by William Stallings Lecture slides by Lawrie Brown (Modified by Prof. M. Singhal,
Public Key Algorithms Lesson Introduction ●Modular arithmetic ●RSA ●Diffie-Hellman.
Elliptic Curves Number Theory and Cryptography. A Pile of Cannonballs A Square of Cannonballs.
11 RSA Variants.  Scheme ◦ Select s.t. p and q = 3 mod 4 ◦ n=pq, public key =n, private key =p,q ◦ y= e k (x)=x (x+b) mod n ◦ x=d k (y)=  y mod n.
Key Management Network Systems Security Mort Anvari.
1 Network Security Dr. Syed Ismail Shah
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Lecture 9 Overview. Digital Signature Properties CS 450/650 Lecture 9: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
Introduction to Pubic Key Encryption CSCI 5857: Encoding and Encryption.
Diffie-Hellman Key Exchange first public-key type scheme proposed by Diffie & Hellman in 1976 along with the exposition of public key concepts – note:
1 Cryptanalysis Lab Elliptic Curves. Cryptanalysis Lab Elliptic Curves 2 Outline [1] Elliptic Curves over R [2] Elliptic Curves over GF(p) [3] Properties.
Introduction to Elliptic Curve Cryptography CSCI 5857: Encoding and Encryption.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Cryptography and Network Security Chapter 10 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Cryptography services Lecturer: Dr. Peter Soreanu Students: Raed Awad Ahmad Abdalhalim
Motivation Basis of modern cryptosystems
Key Management public-key encryption helps address key distribution problems have two aspects of this: – distribution of public keys – use of public-key.
Cryptography and Network Security Chapter 13
Elliptic Curve Public Key Cryptography Why ? ● ECC offers greater security for a given key size. ● The smaller key size also makes possible much more compact.
Elliptic Curve Public Key Cryptography
The Application of Elliptic Curves Cryptography in Embedded Systems
CSCE 715: Network Systems Security
Presentation transcript:

By Abhijith Chandrashekar and Dushyant Maheshwary

Introduction  What are Elliptic Curves? Curve with standard form y 2 = x 3 + ax + b a, b ℝ  Characteristics of Elliptic Curve Forms an abelian group Symmetric about the x-axis Point at Infinity acting as the identity element

Examples of Elliptic Curves

Finite Fields  aka Galois Field  GF(p n ) = a set of integers {0, 1, 2, …, p n -1) where p is a prime, n is a positive integer  It is denoted by {F, +, x} where + and x are the group operators

Group, Ring, Field

Why Elliptic Curve Cryptography?  Shorter Key Length  Lesser Computational Complexity  Low Power Requirement  More Secure

Comparable Key Sizes for Equivalent Security Symmetric Encryption (Key Size in bits) RSA and Diffie-Hellman (modulus size in bits) ECC Key Size in bits

What is Elliptic Curve Cryptography?  Implementing Group Operations Main operations - point addition and point multiplication Adding two points that lie on an Elliptic Curve – results in a third point on the curve Point multiplication is repeated addition If P is a known point on the curve (aka Base point; part of domain parameters) and it is multiplied by a scalar k, Q=kP is the operation of adding P + P + P + P… +P (k times) Q is the resulting public key and k is the private key in the public-private key pair

 Adding two points on the curve  P and Q are added to obtain P+Q which is a reflection of R along the X axis What is Elliptic Curve Cryptography?

 A tangent at P is extended to cut the curve at a point; its reflection is 2P  Adding P and 2P gives 3P  Similarly, such operations can be performed as many times as desired to obtain Q = kP What is Elliptic Curve Cryptography?

 Discrete Log Problem The security of ECC is due the intractability or difficulty of solving the inverse operation of finding k given Q and P This is termed as the discrete log problem Methods to solve include brute force and Pollard’s Rho attack both of which are computationally expensive or unfeasible The version applicable in ECC is called the Elliptic Curve Discrete Log Problem Exponential running time

ECC in Windows DRM v2.0 A Practical Example : Finite field chosen p = Gx = Gy = y 2 = x x Gx and Gy constitute the agreed upon base point (P) and the numbers in the above equation are values for the parameters a and b

Elliptic Curve Schemes  Elliptic Curve Digital Signature Algorithm (ECDSA)  Elliptic Curve Pintsov Vanstone Signature(ECPVS)  Elliptic Curve Diffie-Hellman (ECDH)

Elliptic Curve Digital Signature Algorithm (ECDSA)  Elliptic curve variant of Digital Signature Algorithm Canadian postage stamp that uses ECDSA

ECDSA  Signature Generation Once we have the domain parameters and have decided on the keys to be used, the signature is generated by the following steps. 1. A random number k, 1 ≤ k ≤ n-1 is chosen 2. kG = (x 1,y 1 ) is computed. x 1 is converted to its corresponding integer x 1 ’ 3. Next, r = x 1 mod n is computed 4. We then compute k -1 mod q 5. e = HASH(m) where m is the message to be signed 6. s = k -1 (e + dr) mod n where d is the private key of the sender. We have the signature as (r,s)

ECDSA  Signature Verification At the receiver’s end the signature is verified as follows: 1. Verify whether r and s belong to the interval [1, n-1] for the signature to be valid. 2. Compute e = HASH(m). The hash function should be the same as the one used for signature generation. 3. Compute w = s -1 mod n. 4. Compute u 1 = ew mod n and u 2 = rw mod n. 5. Compute (x 1,y 1 ) = u 1 G + u 2 Q. 6. The signature is valid if r = x 1 mod n, invalid otherwise. This is how we know that the verification works the way we want it to: We have, s = k -1 (e + dr) mod n which we can rearrange to obtain, k = s -1 (e + dr) which is s -1 e + s -1 rd This is nothing but we + wrd = (u 1 + u 2 d) (mod n) We have u 1 G + u 2 Q = (u 1 + u 2 d)G = kG which translates to v = r.

Elliptic Curve Pintsov Vanstone Signature (ECPVS)  Signature scheme using Elliptic Curves  More efficient than RSA as overhead is extremely low

ECPVS  Signature Generation The plaintext message is split into two parts: part C representing the data elements requiring confidentiality and part V representing the data elements presented in plaintext. Both the parts are signed. The signature is generated as follows: 1. A random number k, 1 ≤ k ≤ n-1 is chosen. 2. Calculate the point R on the curve (R = kG). 3. Use point R and a symmetric encryption algorithm to get e = T R (C). 4. Calculate a variable d such that d = HASH(e || I A || V) where I A is the identity of the mailer terminal. 5. Now calculate the other part of the signature s as follows: s= ad + k(mod n); where a is the private key of the sender. The signature pair (s,e) is transmitted together with the portion V of the plaintext.

ECPVS  Signature Verification 1. Retrieve Q A (Q A is mailer A’s public key) 2. Calculate the variable d = HASH(e || I A || V) using the same HASH algorithm as the one used for generating the signature. 3. Compute U = sG – dQ A. 4. Recover C = T u -1 (e). 5. Run a redundancy test on C. If the test fails, discard the message. Else, the plaintext is recovered. We have, s = ad + k. Multiply by base point G to obtain sG = adG + kG which is dQ A + R Therefore, R = sG – dQ A which is U. Comparing the decrypted versions, m and m’ obtained using U and R, we ascertain the validity of the signature

Elliptic Curve Diffie-Hellman (ECDH)  Elliptic curve variant of the key exchange Diffie-Hellman protocol.  Decide on domain parameters and come up with a Public/Private key pair  To obtain the private key, the attacker needs to solve the discrete log problem

ECDH  How the key exchange takes place: 1. Alice and Bob publicly agree on an elliptic curve E over a large finite field F and a point P on that curve. 2. Alice and Bob each privately choose large random integers, denoted a and b 3. Using elliptic curve point-addition, Alice computes aP on E and sends it to Bob. Bob computes bP on E and sends it to Alice. 4. Both Alice and Bob can now compute the point abP Alice by multiplying the received value of bP by her secret number a and Bob vice-versa. 5. Alice and Bob agree that the x coordinate of this point will be their shared secret value.

Pros and Cons  Pros Shorter Key Length ○ Same level of security as RSA achieved at a much shorter key length Better Security ○ Secure because of the ECDLP ○ Higher security per key-bit than RSA Higher Performance ○ Shorter key-length ensures lesser power requirement – suitable in wireless sensor applications and low power devices ○ More computation per bit but overall lesser computational expense or complexity due to lesser number of key bits

Pros and Cons  Cons Relatively newer field ○ Idea prevails that all the aspects of the topic may not have been explored yet – possibly unknown vulnerabilities ○ Doesn’t have widespread usage Not perfect ○ Attacks still exist that can solve ECC (112 bit key length has been publicly broken) ○ Well known attacks are the Pollard’s Rho attack (complexity O(√n) ), Pohlig’s attack, Baby Step,Giant Step etc