SlideShare a Scribd company logo
Cryptocurrency Café
cs4501 Spring 2015
David Evans
University of Virginia
Class 3:
Elliptic Curve
Cryptography
y2 = x3 + 7
Project 1 will be
posted by midnight
tonight, and is due on
January 30.
Plan for Today
Bitcoin Wallets and Passwords
Asymmetric Cryptography Recap:
Transferring a Coin
Crash Course in Number Theory
Elliptic Curve Cryptography
1
Buying Bitcoin
2
3
4
5
My Advice
6
Don’t waste brainpower/space on passwords that don’t matter
“silly” is a fine password for most things than need one
Don’t follow any widely-available advice
password cracker authors can read too!
Humans cannot generate randomness and neither can you
Generate a random password
Share your password
(but only with people with whom you are willing to raise children)
Write down your important passwords
Store them somewhere safe, and write down in a way that
someone who steals it wouldn’t be able to use.
Using Bitcoin in This Class
7
It is “real” money: try not lose (all of) it. (But you
can do everything in this class with very small
amounts.)
If you do, I’ll send you
more (so long as you
learned something from
the loss). Everyone gets
one embarrassment-free
transfer.
Using Asymmetric Crypto: Signatures
8
E D
Verified
Message
Signed Message
Message
Insecure Channel
KUB
KRB
Bob
Generates key pair: KUB, KRB
Publishes KUB
Anyone
Get KUB from
trusted provider
Transferring a Coin
9
Alice signs m1 = { “I give coin x = KUA, t to address KUB.”}
with KRA.
How does Bob transfer x to Colleen (KUC)?
Transferring a Coin
10
Alice signs m1 = { “I give coin x = KUA, t to address KUB.”}
with KRA.
Bob signs m2 = { “I give coin x = KUA, t, given to me by
m1to address KUC.”} with KRB.
Transferring a Coin
11
Alice signs m1 = { “I give coin x = KUA, t to address KUB.”}
with KRA.
Bob signs m2 = { “I give coin x = KUA, t, given to me by
m1to address KUC.”} with KRB.
Colleen signs m2 = { “I give coin x = KUA, t, given to me by
m2to address KUD.”} with KRC.
…
This does not prevent double spending! (Next week)
Asymmetry Required
Need a function f that is:
Easy to compute:
given x, easy to compute f (x)
Hard to invert:
given f (x), hard to compute x
Has a trap-door:
given f (x) and t,
easy to compute x
12
Elliptic Curve Cryptography
13
14
Real numbers are useless!
Groups
15
A group is a set, G, on which the operation ⊕ is defined with
the following properties:
1. Closure: for all a, b ∈ G, a ⊕ b ∈ G.
2. Associative: for all a, b, c ∈ G, (a ⊕ b) ⊕ c = a ⊕ (b ⊕ c).
3. Identity: there is some element, 0 ∈ G, such that:
for all a ∈ G, a ⊕ 0 = 0 ⊕ a = a.
4. Inverse: for all a ∈ G, there exists an inverse, -a ∈ G, such
that a ⊕ (-a) = 0.
16
1. Closure: for all a, b ∈ G, a ⊕ b ∈ G.
2. Associative: for all a, b, c ∈ G, (a ⊕ b) ⊕ c = a ⊕ (b ⊕ c).
3. Identity: there is some element, 0 ∈ G, such that:
for all a ∈ G, a ⊕ 0 = 0 ⊕ a = a.
4. Inverse: for all a ∈ G, there exists an inverse, -a ∈ G, such that a ⊕ (-a) = 0.
Is Integers, + a group?
17
1. Closure: for all a, b ∈ G, a ⊕ b ∈ G.
2. Associative: for all a, b, c ∈ G, (a ⊕ b) ⊕ c = a ⊕ (b ⊕ c).
3. Identity: there is some element, 0 ∈ G, such that:
for all a ∈ G, a ⊕ 0 = 0 ⊕ a = a.
4. Inverse: for all a ∈ G, there exists an inverse, -a ∈ G, such that a ⊕ (-a) = 0.
Is Naturals, + a group?
18
1. Closure: for all a, b ∈ G, a ⊕ b ∈ G.
2. Associative: for all a, b, c ∈ G, (a ⊕ b) ⊕ c = a ⊕ (b ⊕ c).
3. Identity: there is some element, 0 ∈ G, such that:
for all a ∈ G, a ⊕ 0 = 0 ⊕ a = a.
4. Inverse: for all a ∈ G, there exists an inverse, -a ∈ G, such that a ⊕ (-a) = 0.
Is Rationals, * a group?
Abelian Groups
19
A group is a set, G, on which the operation ⊕ is defined with
the following properties:
1. Closure: for all a, b ∈ G, a ⊕ b ∈ G.
2. Associative: for all a, b, c ∈ G, (a ⊕ b) ⊕ c = a ⊕ (b ⊕ c).
3. Identity: there is some element, 0 ∈ G, such that:
for all a ∈ G, a ⊕ 0 = 0 ⊕ a = a.
4. Inverse: for all a ∈ G, there exists an inverse, -a ∈ G, such
that a ⊕ (-a) = 0.
5. Commutative: for all a, b ∈ G, a ⊕ b = b ⊕ a.
20
1. Closure: for all a, b ∈ G, a ⊕ b ∈ G.
2. Associative: for all a, b, c ∈ G, (a ⊕ b) ⊕ c = a ⊕ (b ⊕ c).
3. Identity: there is some element, 0 ∈ G, such that:
for all a ∈ G, a ⊕ 0 = 0 ⊕ a = a.
4. Inverse: for all a ∈ G, there exists an inverse, -a ∈ G, such that a ⊕ (-a) = 0.
5. Commutative: for all a, b ∈ G, a ⊕ b = b ⊕ a.
Is Rationals – {0}, * an abelian group?
Finite Fields
21
A finite field is a set F of N ≥ 2 elements on which the
operators ⊕ and × are defined with these properties:
1. The set F is an abelian group with identity 0 under
the ⊕ operation.
2. The set F - { 0 } is an abelian group with identity 1
under the × operation.
3. Distributive: For all a, b, c ∈ F,
(a ⊕ b) × c = (a × c) ⊕ (b × c).
Know any
finite
fields?
22
A finite field is a set F of N ≥ 2 elements on which the operators ⊕ and
× are defined with these properties:
1. The set F is an abelian group with identity 0 under the ⊕ operation.
2. The set F - { 0 } is an abelian group with identity 1 under the ×
operation.
3. Distributive: For all a, b, c ∈ F, (a ⊕ b) × c = (a × c) ⊕ (b × c).
23
0
1
2
34
5
6
GF(7)
Évariste Galois
Killed in duel at 20
Prime Fields
24
Prime Field Theorem: For every prime
number p, the set { 0, 1, …, p - 1 } forms
a finite field with the operations addition
and multiplication modulo p.
Elliptic Curves in Finite Fields
25
y2 = x3 + 7 in GF(3)
Elliptic Curves in Finite Fields
26
y2 = x3 + 7 in GF(3)
Elliptic Curves in Finite Fields
27
y2 = x3 + 7 in GF(2256 - 232 - 29 - 28 - 27 - 26 - 24 - 1)
28
y2 = x3 + 7 in GF(2256 - 232 - 29 - 28 - 27 - 26 - 24 - 1)
115 quattuorvigintillion 792 trevigintillion
89 duovigintillion 237 unvigintillion 316
vigintillion 195 novemdecillion 423
octodecillion 570 septendecillion 985
sexdecillion 8 quindecillion 687
quattuordecillion 907 tredecillion 853
duodecillion 269 undecillion 984 decillion
665 nonillion 640 octillion 564 septillion
39 sextillion 457 quintillion 584 quadrillion
7 trillion 908 billion 834 million 671
thousand 663
(0.0012 × the number of atoms in the
visible universe)
Addition on Elliptic Curves
29
y2 = x3 – 7 (mod p)
Addition: P + Q
= negate intersection of curve
with line through P and Q
P
Q
P + Q
Addition
30Image from: http://www.coindesk.com/math-behind-bitcoin/
P + Q = R
What should we do if P = Q?
Addition
31Image from: http://www.coindesk.com/math-behind-bitcoin/
Same idea for finite fields (just
more complex)
Picture is for F67.
How would this look for Fhuge?
Density of Elliptic Curve
32
y2 = x3 + 7 in GF(2256 - 232 - 29 - 28 - 27 - 26 - 24 - 1)
(Believed to be) Hard Problem
Elliptic curve discrete
logarithm problem: given
points P and Q on an elliptic
curve, it is hard to find an
integer k such that Q = kP.
34
Charge
• Investigate the bitcoin you received
• Project 1 will be posted before midnight
tonight and due on Jan 30
• Readings: Satoshi’s original bitcoin paper,
Chapter 5
35
Next class: how to use Elliptic Curve Crypto for signatures;
how (not) to use Elliptic Curves for pseudorandom number generation
Next week: preventing double spending

More Related Content

What's hot

Elliptic Curve Cryptography: Arithmetic behind
Elliptic Curve Cryptography: Arithmetic behindElliptic Curve Cryptography: Arithmetic behind
Elliptic Curve Cryptography: Arithmetic behind
Ayan Sengupta
 
IntrRSCode
IntrRSCodeIntrRSCode
IntrRSCode
aniruddh Tyagi
 
Reed Solomon encoder and decoder \ ريد سلمون
Reed Solomon encoder and decoder \ ريد سلمونReed Solomon encoder and decoder \ ريد سلمون
Reed Solomon encoder and decoder \ ريد سلمون
Muhammed Abdulmahdi
 
Bch and reed solomon codes generation in frequency domain
Bch and reed solomon codes generation in frequency domainBch and reed solomon codes generation in frequency domain
Bch and reed solomon codes generation in frequency domain
Madhumita Tamhane
 
Understanding Reed-Solomon code
Understanding Reed-Solomon codeUnderstanding Reed-Solomon code
Understanding Reed-Solomon code
继顺(Jeffrey) 王
 
Error control coding bch, reed-solomon etc..
Error control coding   bch, reed-solomon etc..Error control coding   bch, reed-solomon etc..
Error control coding bch, reed-solomon etc..
Madhumita Tamhane
 
Signyourd digital signature certificate provider
Signyourd   digital signature certificate providerSignyourd   digital signature certificate provider
Signyourd digital signature certificate provider
Kishankant Yadav
 
Gate-Cs 2006
Gate-Cs 2006Gate-Cs 2006
Gate-Cs 2006
Ravi Rajput
 
Number theory lecture (part 2)
Number theory lecture (part 2)Number theory lecture (part 2)
Number theory lecture (part 2)
Aleksandr Yampolskiy
 
Unit 3
Unit 3Unit 3
Eucledian algorithm for gcd of integers and polynomials
Eucledian algorithm for gcd of integers and polynomialsEucledian algorithm for gcd of integers and polynomials
Eucledian algorithm for gcd of integers and polynomials
SWAMY J S
 
Directed Acyclic Graph
Directed Acyclic Graph Directed Acyclic Graph
Directed Acyclic Graph
AJAL A J
 
Active Attacks on DH Key Exchange
Active Attacks on DH Key ExchangeActive Attacks on DH Key Exchange
Active Attacks on DH Key Exchange
Dharmalingam Ganesan
 
Number Theory for Security
Number Theory for SecurityNumber Theory for Security
Number Theory for Security
Abhijit Mondal
 
Crypto lecture PDF
Crypto lecture PDFCrypto lecture PDF
Crypto lecture PDF
Nedia Hamoudi
 
ACM ICPC 2016 NEERC (Northeastern European Regional Contest) Problems Review
ACM ICPC 2016 NEERC (Northeastern European Regional Contest) Problems ReviewACM ICPC 2016 NEERC (Northeastern European Regional Contest) Problems Review
ACM ICPC 2016 NEERC (Northeastern European Regional Contest) Problems Review
Roman Elizarov
 
Reed solomon Encoder and Decoder
Reed solomon Encoder and DecoderReed solomon Encoder and Decoder
Reed solomon Encoder and Decoder
Ameer H Ali
 
Justesen codes alternant codes goppa codes
Justesen codes alternant codes goppa codesJustesen codes alternant codes goppa codes
Justesen codes alternant codes goppa codes
Madhumita Tamhane
 
Cs 601
Cs 601Cs 601
CMSC 56 | Lecture 10: Integer Representations & Algorithms
CMSC 56 | Lecture 10: Integer Representations & AlgorithmsCMSC 56 | Lecture 10: Integer Representations & Algorithms
CMSC 56 | Lecture 10: Integer Representations & Algorithms
allyn joy calcaben
 

What's hot (20)

Elliptic Curve Cryptography: Arithmetic behind
Elliptic Curve Cryptography: Arithmetic behindElliptic Curve Cryptography: Arithmetic behind
Elliptic Curve Cryptography: Arithmetic behind
 
IntrRSCode
IntrRSCodeIntrRSCode
IntrRSCode
 
Reed Solomon encoder and decoder \ ريد سلمون
Reed Solomon encoder and decoder \ ريد سلمونReed Solomon encoder and decoder \ ريد سلمون
Reed Solomon encoder and decoder \ ريد سلمون
 
Bch and reed solomon codes generation in frequency domain
Bch and reed solomon codes generation in frequency domainBch and reed solomon codes generation in frequency domain
Bch and reed solomon codes generation in frequency domain
 
Understanding Reed-Solomon code
Understanding Reed-Solomon codeUnderstanding Reed-Solomon code
Understanding Reed-Solomon code
 
Error control coding bch, reed-solomon etc..
Error control coding   bch, reed-solomon etc..Error control coding   bch, reed-solomon etc..
Error control coding bch, reed-solomon etc..
 
Signyourd digital signature certificate provider
Signyourd   digital signature certificate providerSignyourd   digital signature certificate provider
Signyourd digital signature certificate provider
 
Gate-Cs 2006
Gate-Cs 2006Gate-Cs 2006
Gate-Cs 2006
 
Number theory lecture (part 2)
Number theory lecture (part 2)Number theory lecture (part 2)
Number theory lecture (part 2)
 
Unit 3
Unit 3Unit 3
Unit 3
 
Eucledian algorithm for gcd of integers and polynomials
Eucledian algorithm for gcd of integers and polynomialsEucledian algorithm for gcd of integers and polynomials
Eucledian algorithm for gcd of integers and polynomials
 
Directed Acyclic Graph
Directed Acyclic Graph Directed Acyclic Graph
Directed Acyclic Graph
 
Active Attacks on DH Key Exchange
Active Attacks on DH Key ExchangeActive Attacks on DH Key Exchange
Active Attacks on DH Key Exchange
 
Number Theory for Security
Number Theory for SecurityNumber Theory for Security
Number Theory for Security
 
Crypto lecture PDF
Crypto lecture PDFCrypto lecture PDF
Crypto lecture PDF
 
ACM ICPC 2016 NEERC (Northeastern European Regional Contest) Problems Review
ACM ICPC 2016 NEERC (Northeastern European Regional Contest) Problems ReviewACM ICPC 2016 NEERC (Northeastern European Regional Contest) Problems Review
ACM ICPC 2016 NEERC (Northeastern European Regional Contest) Problems Review
 
Reed solomon Encoder and Decoder
Reed solomon Encoder and DecoderReed solomon Encoder and Decoder
Reed solomon Encoder and Decoder
 
Justesen codes alternant codes goppa codes
Justesen codes alternant codes goppa codesJustesen codes alternant codes goppa codes
Justesen codes alternant codes goppa codes
 
Cs 601
Cs 601Cs 601
Cs 601
 
CMSC 56 | Lecture 10: Integer Representations & Algorithms
CMSC 56 | Lecture 10: Integer Representations & AlgorithmsCMSC 56 | Lecture 10: Integer Representations & Algorithms
CMSC 56 | Lecture 10: Integer Representations & Algorithms
 

Viewers also liked

Elliptic Curve Cryptography
Elliptic Curve CryptographyElliptic Curve Cryptography
Elliptic Curve Cryptography
Kelly Bresnahan
 
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.SrinivasanMathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan
municsaa
 
Elliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio
Elliptic curvecryptography Shane Almeida Saqib Awan Dan PalacioElliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio
Elliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio
Information Security Awareness Group
 
Oruta privacy preserving public auditing for shared data in the cloud
Oruta privacy preserving public auditing for shared data in the cloud Oruta privacy preserving public auditing for shared data in the cloud
Oruta privacy preserving public auditing for shared data in the cloud
Adz91 Digital Ads Pvt Ltd
 
5 Cryptography Part1
5 Cryptography Part15 Cryptography Part1
5 Cryptography Part1
Alfred Ouyang
 
Privacy preserving public auditing for regenerating-code-based cloud storage
Privacy preserving public auditing for regenerating-code-based cloud storagePrivacy preserving public auditing for regenerating-code-based cloud storage
Privacy preserving public auditing for regenerating-code-based cloud storage
Nagamalleswararao Tadikonda
 
Oruta ppt
Oruta pptOruta ppt
Oruta ppt
Manasa Chowdary
 
Oruta project report
Oruta project reportOruta project report
Oruta project report
Manasa Chowdary
 
Privacy preserving public auditing for secure cloud storage
Privacy preserving public auditing for secure cloud storagePrivacy preserving public auditing for secure cloud storage
Privacy preserving public auditing for secure cloud storage
Mustaq Syed
 
Privacy Preserving Public Auditing for Data Storage Security in Cloud
Privacy Preserving Public Auditing for Data Storage Security in Cloud Privacy Preserving Public Auditing for Data Storage Security in Cloud
Privacy Preserving Public Auditing for Data Storage Security in Cloud
Girish Chandra
 
PRIVACY-PRESERVING PUBLIC AUDITING FOR DATA STORAGE SECURITY IN CLOUD COMPUTING
PRIVACY-PRESERVING PUBLIC AUDITING FOR DATA STORAGESECURITY IN CLOUD COMPUTINGPRIVACY-PRESERVING PUBLIC AUDITING FOR DATA STORAGESECURITY IN CLOUD COMPUTING
PRIVACY-PRESERVING PUBLIC AUDITING FOR DATA STORAGE SECURITY IN CLOUD COMPUTING
Kayalvizhi Selvaraj
 
5. message authentication and hash function
5. message authentication and hash function5. message authentication and hash function
5. message authentication and hash function
Chirag Patel
 
Diffiehellman
DiffiehellmanDiffiehellman
Diffiehellman
chenlahero
 
Privacy Preserving Public Auditing for Data Storage Security in Cloud.ppt
Privacy Preserving Public Auditing for Data Storage Security in Cloud.pptPrivacy Preserving Public Auditing for Data Storage Security in Cloud.ppt
Privacy Preserving Public Auditing for Data Storage Security in Cloud.ppt
Girish Chandra
 
Diffie-Hellman key exchange
Diffie-Hellman key exchangeDiffie-Hellman key exchange
Diffie-Hellman key exchange
hughpearse
 
Ppt 1
Ppt 1Ppt 1
Cloud security ppt
Cloud security pptCloud security ppt
Cloud security ppt
Venkatesh Chary
 
Message Authentication
Message AuthenticationMessage Authentication
Message Authentication
Ram Dutt Shukla
 
Cours implementation-crypto
Cours implementation-cryptoCours implementation-crypto

Viewers also liked (20)

Elliptic Curve Cryptography
Elliptic Curve CryptographyElliptic Curve Cryptography
Elliptic Curve Cryptography
 
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.SrinivasanMathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan
 
Elliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio
Elliptic curvecryptography Shane Almeida Saqib Awan Dan PalacioElliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio
Elliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio
 
Oruta privacy preserving public auditing for shared data in the cloud
Oruta privacy preserving public auditing for shared data in the cloud Oruta privacy preserving public auditing for shared data in the cloud
Oruta privacy preserving public auditing for shared data in the cloud
 
5 Cryptography Part1
5 Cryptography Part15 Cryptography Part1
5 Cryptography Part1
 
Privacy preserving public auditing for regenerating-code-based cloud storage
Privacy preserving public auditing for regenerating-code-based cloud storagePrivacy preserving public auditing for regenerating-code-based cloud storage
Privacy preserving public auditing for regenerating-code-based cloud storage
 
Oruta ppt
Oruta pptOruta ppt
Oruta ppt
 
Oruta project report
Oruta project reportOruta project report
Oruta project report
 
Privacy preserving public auditing for secure cloud storage
Privacy preserving public auditing for secure cloud storagePrivacy preserving public auditing for secure cloud storage
Privacy preserving public auditing for secure cloud storage
 
Privacy Preserving Public Auditing for Data Storage Security in Cloud
Privacy Preserving Public Auditing for Data Storage Security in Cloud Privacy Preserving Public Auditing for Data Storage Security in Cloud
Privacy Preserving Public Auditing for Data Storage Security in Cloud
 
PRIVACY-PRESERVING PUBLIC AUDITING FOR DATA STORAGE SECURITY IN CLOUD COMPUTING
PRIVACY-PRESERVING PUBLIC AUDITING FOR DATA STORAGESECURITY IN CLOUD COMPUTINGPRIVACY-PRESERVING PUBLIC AUDITING FOR DATA STORAGESECURITY IN CLOUD COMPUTING
PRIVACY-PRESERVING PUBLIC AUDITING FOR DATA STORAGE SECURITY IN CLOUD COMPUTING
 
5. message authentication and hash function
5. message authentication and hash function5. message authentication and hash function
5. message authentication and hash function
 
Diffiehellman
DiffiehellmanDiffiehellman
Diffiehellman
 
Privacy Preserving Public Auditing for Data Storage Security in Cloud.ppt
Privacy Preserving Public Auditing for Data Storage Security in Cloud.pptPrivacy Preserving Public Auditing for Data Storage Security in Cloud.ppt
Privacy Preserving Public Auditing for Data Storage Security in Cloud.ppt
 
Diffie-Hellman key exchange
Diffie-Hellman key exchangeDiffie-Hellman key exchange
Diffie-Hellman key exchange
 
Ppt 1
Ppt 1Ppt 1
Ppt 1
 
Cloud security ppt
Cloud security pptCloud security ppt
Cloud security ppt
 
Message Authentication
Message AuthenticationMessage Authentication
Message Authentication
 
Le chiffrement
Le chiffrementLe chiffrement
Le chiffrement
 
Cours implementation-crypto
Cours implementation-cryptoCours implementation-crypto
Cours implementation-crypto
 

Similar to Introduction to Elliptic Curve Cryptography

CH04.ppt
CH04.pptCH04.ppt
Ch04
Ch04Ch04
ch04 cryptography and network security.ppt
ch04 cryptography and network security.pptch04 cryptography and network security.ppt
ch04 cryptography and network security.ppt
ubaidullah75790
 
Cryptography and Network Security chapter 4.ppt
Cryptography and Network Security chapter 4.pptCryptography and Network Security chapter 4.ppt
Cryptography and Network Security chapter 4.ppt
the9amit
 
11848 ch04(1) (1)
11848 ch04(1) (1)11848 ch04(1) (1)
11848 ch04(1) (1)
Debanjan Bhattacharya
 
11848 ch04
11848 ch0411848 ch04
11848 ch04(1)
11848 ch04(1)11848 ch04(1)
11848 ch04(1)
Debanjan Bhattacharya
 
2.ppt
2.ppt2.ppt
MinFill_Presentation
MinFill_PresentationMinFill_Presentation
MinFill_Presentation
Anna Lasota
 
Finite fields
Finite fields Finite fields
Finite fields
BhumikaPal1
 
Maths04
Maths04Maths04
Maths04
sansharmajs
 
Ecc2
Ecc2Ecc2
Chapter_2_Boolean_Algebra_and_Logic_Gates.ppt
Chapter_2_Boolean_Algebra_and_Logic_Gates.pptChapter_2_Boolean_Algebra_and_Logic_Gates.ppt
Chapter_2_Boolean_Algebra_and_Logic_Gates.ppt
MdTahsinAmin2
 
Number theory
Number theoryNumber theory
Number theory
dhivyakesavan3
 
Number theoretic-rsa-chailos-new
Number theoretic-rsa-chailos-newNumber theoretic-rsa-chailos-new
Number theoretic-rsa-chailos-new
Christos Loizos
 
Greatest Common Measure: the Last 2500 Years
Greatest Common Measure: the Last 2500 YearsGreatest Common Measure: the Last 2500 Years
Greatest Common Measure: the Last 2500 Years
sixtyone
 
Freecomplexnumbers
FreecomplexnumbersFreecomplexnumbers
Freecomplexnumbers
MUSTAFA MABUTA
 
Real World Haskell: Lecture 5
Real World Haskell: Lecture 5Real World Haskell: Lecture 5
Real World Haskell: Lecture 5
Bryan O'Sullivan
 
Chap4
Chap4Chap4
Chap4
nathanurag
 
555_Spring12_topic06.ppt
555_Spring12_topic06.ppt555_Spring12_topic06.ppt
555_Spring12_topic06.ppt
SnehSinha6
 

Similar to Introduction to Elliptic Curve Cryptography (20)

CH04.ppt
CH04.pptCH04.ppt
CH04.ppt
 
Ch04
Ch04Ch04
Ch04
 
ch04 cryptography and network security.ppt
ch04 cryptography and network security.pptch04 cryptography and network security.ppt
ch04 cryptography and network security.ppt
 
Cryptography and Network Security chapter 4.ppt
Cryptography and Network Security chapter 4.pptCryptography and Network Security chapter 4.ppt
Cryptography and Network Security chapter 4.ppt
 
11848 ch04(1) (1)
11848 ch04(1) (1)11848 ch04(1) (1)
11848 ch04(1) (1)
 
11848 ch04
11848 ch0411848 ch04
11848 ch04
 
11848 ch04(1)
11848 ch04(1)11848 ch04(1)
11848 ch04(1)
 
2.ppt
2.ppt2.ppt
2.ppt
 
MinFill_Presentation
MinFill_PresentationMinFill_Presentation
MinFill_Presentation
 
Finite fields
Finite fields Finite fields
Finite fields
 
Maths04
Maths04Maths04
Maths04
 
Ecc2
Ecc2Ecc2
Ecc2
 
Chapter_2_Boolean_Algebra_and_Logic_Gates.ppt
Chapter_2_Boolean_Algebra_and_Logic_Gates.pptChapter_2_Boolean_Algebra_and_Logic_Gates.ppt
Chapter_2_Boolean_Algebra_and_Logic_Gates.ppt
 
Number theory
Number theoryNumber theory
Number theory
 
Number theoretic-rsa-chailos-new
Number theoretic-rsa-chailos-newNumber theoretic-rsa-chailos-new
Number theoretic-rsa-chailos-new
 
Greatest Common Measure: the Last 2500 Years
Greatest Common Measure: the Last 2500 YearsGreatest Common Measure: the Last 2500 Years
Greatest Common Measure: the Last 2500 Years
 
Freecomplexnumbers
FreecomplexnumbersFreecomplexnumbers
Freecomplexnumbers
 
Real World Haskell: Lecture 5
Real World Haskell: Lecture 5Real World Haskell: Lecture 5
Real World Haskell: Lecture 5
 
Chap4
Chap4Chap4
Chap4
 
555_Spring12_topic06.ppt
555_Spring12_topic06.ppt555_Spring12_topic06.ppt
555_Spring12_topic06.ppt
 

More from David Evans

Cryptocurrency Jeopardy!
Cryptocurrency Jeopardy!Cryptocurrency Jeopardy!
Cryptocurrency Jeopardy!
David Evans
 
Trick or Treat?: Bitcoin for Non-Believers, Cryptocurrencies for Cypherpunks
Trick or Treat?: Bitcoin for Non-Believers, Cryptocurrencies for CypherpunksTrick or Treat?: Bitcoin for Non-Believers, Cryptocurrencies for Cypherpunks
Trick or Treat?: Bitcoin for Non-Believers, Cryptocurrencies for Cypherpunks
David Evans
 
Hidden Services, Zero Knowledge
Hidden Services, Zero KnowledgeHidden Services, Zero Knowledge
Hidden Services, Zero Knowledge
David Evans
 
Anonymity in Bitcoin
Anonymity in BitcoinAnonymity in Bitcoin
Anonymity in Bitcoin
David Evans
 
Midterm Confirmations
Midterm ConfirmationsMidterm Confirmations
Midterm Confirmations
David Evans
 
Scripting Transactions
Scripting TransactionsScripting Transactions
Scripting Transactions
David Evans
 
How to Live in Paradise
How to Live in ParadiseHow to Live in Paradise
How to Live in Paradise
David Evans
 
Bitcoin Script
Bitcoin ScriptBitcoin Script
Bitcoin Script
David Evans
 
Mining Economics
Mining EconomicsMining Economics
Mining Economics
David Evans
 
Mining
MiningMining
Mining
David Evans
 
The Blockchain
The BlockchainThe Blockchain
The Blockchain
David Evans
 
Becoming More Paranoid
Becoming More ParanoidBecoming More Paranoid
Becoming More Paranoid
David Evans
 
Asymmetric Key Signatures
Asymmetric Key SignaturesAsymmetric Key Signatures
Asymmetric Key Signatures
David Evans
 
Introduction to Cryptography
Introduction to CryptographyIntroduction to Cryptography
Introduction to Cryptography
David Evans
 
Class 1: What is Money?
Class 1: What is Money?Class 1: What is Money?
Class 1: What is Money?
David Evans
 
Multi-Party Computation for the Masses
Multi-Party Computation for the MassesMulti-Party Computation for the Masses
Multi-Party Computation for the Masses
David Evans
 
Proof of Reserve
Proof of ReserveProof of Reserve
Proof of Reserve
David Evans
 
Silk Road
Silk RoadSilk Road
Silk Road
David Evans
 
Blooming Sidechains!
Blooming Sidechains!Blooming Sidechains!
Blooming Sidechains!
David Evans
 
Useful Proofs of Work, Permacoin
Useful Proofs of Work, PermacoinUseful Proofs of Work, Permacoin
Useful Proofs of Work, Permacoin
David Evans
 

More from David Evans (20)

Cryptocurrency Jeopardy!
Cryptocurrency Jeopardy!Cryptocurrency Jeopardy!
Cryptocurrency Jeopardy!
 
Trick or Treat?: Bitcoin for Non-Believers, Cryptocurrencies for Cypherpunks
Trick or Treat?: Bitcoin for Non-Believers, Cryptocurrencies for CypherpunksTrick or Treat?: Bitcoin for Non-Believers, Cryptocurrencies for Cypherpunks
Trick or Treat?: Bitcoin for Non-Believers, Cryptocurrencies for Cypherpunks
 
Hidden Services, Zero Knowledge
Hidden Services, Zero KnowledgeHidden Services, Zero Knowledge
Hidden Services, Zero Knowledge
 
Anonymity in Bitcoin
Anonymity in BitcoinAnonymity in Bitcoin
Anonymity in Bitcoin
 
Midterm Confirmations
Midterm ConfirmationsMidterm Confirmations
Midterm Confirmations
 
Scripting Transactions
Scripting TransactionsScripting Transactions
Scripting Transactions
 
How to Live in Paradise
How to Live in ParadiseHow to Live in Paradise
How to Live in Paradise
 
Bitcoin Script
Bitcoin ScriptBitcoin Script
Bitcoin Script
 
Mining Economics
Mining EconomicsMining Economics
Mining Economics
 
Mining
MiningMining
Mining
 
The Blockchain
The BlockchainThe Blockchain
The Blockchain
 
Becoming More Paranoid
Becoming More ParanoidBecoming More Paranoid
Becoming More Paranoid
 
Asymmetric Key Signatures
Asymmetric Key SignaturesAsymmetric Key Signatures
Asymmetric Key Signatures
 
Introduction to Cryptography
Introduction to CryptographyIntroduction to Cryptography
Introduction to Cryptography
 
Class 1: What is Money?
Class 1: What is Money?Class 1: What is Money?
Class 1: What is Money?
 
Multi-Party Computation for the Masses
Multi-Party Computation for the MassesMulti-Party Computation for the Masses
Multi-Party Computation for the Masses
 
Proof of Reserve
Proof of ReserveProof of Reserve
Proof of Reserve
 
Silk Road
Silk RoadSilk Road
Silk Road
 
Blooming Sidechains!
Blooming Sidechains!Blooming Sidechains!
Blooming Sidechains!
 
Useful Proofs of Work, Permacoin
Useful Proofs of Work, PermacoinUseful Proofs of Work, Permacoin
Useful Proofs of Work, Permacoin
 

Recently uploaded

The Vulnerabilities of Individuals Born Under Swati Nakshatra.pdf
The Vulnerabilities of Individuals Born Under Swati Nakshatra.pdfThe Vulnerabilities of Individuals Born Under Swati Nakshatra.pdf
The Vulnerabilities of Individuals Born Under Swati Nakshatra.pdf
AstroAnuradha
 
Monthly Khazina-e-Ruhaniyaat Jun’2024 (Vol.15, Issue 2)
Monthly Khazina-e-Ruhaniyaat Jun’2024 (Vol.15, Issue 2)Monthly Khazina-e-Ruhaniyaat Jun’2024 (Vol.15, Issue 2)
Monthly Khazina-e-Ruhaniyaat Jun’2024 (Vol.15, Issue 2)
Darul Amal Chishtia
 
Heartfulness Magazine - June 2024 (Volume 9, Issue 6)
Heartfulness Magazine - June 2024 (Volume 9, Issue 6)Heartfulness Magazine - June 2024 (Volume 9, Issue 6)
Heartfulness Magazine - June 2024 (Volume 9, Issue 6)
heartfulness
 
Seminar on Music on the Liturgy Parish .pptx
Seminar on Music on the Liturgy Parish .pptxSeminar on Music on the Liturgy Parish .pptx
Seminar on Music on the Liturgy Parish .pptx
lexielhyn
 
Astronism, Cosmism and Cosmodeism: the space religions espousing the doctrine...
Astronism, Cosmism and Cosmodeism: the space religions espousing the doctrine...Astronism, Cosmism and Cosmodeism: the space religions espousing the doctrine...
Astronism, Cosmism and Cosmodeism: the space religions espousing the doctrine...
Cometan
 
Chandra Dev: Unveiling the Mystery of the Moon God
Chandra Dev: Unveiling the Mystery of the Moon GodChandra Dev: Unveiling the Mystery of the Moon God
Chandra Dev: Unveiling the Mystery of the Moon God
Exotic India
 
Sanatan Vastu | Experience Great Living | Vastu Expert
Sanatan Vastu | Experience Great Living | Vastu ExpertSanatan Vastu | Experience Great Living | Vastu Expert
Sanatan Vastu | Experience Great Living | Vastu Expert
Sanatan Vastu
 
Lesson 12 - The Blessed Hope: The Mark of the Christian.pptx
Lesson 12 - The Blessed Hope: The Mark of the Christian.pptxLesson 12 - The Blessed Hope: The Mark of the Christian.pptx
Lesson 12 - The Blessed Hope: The Mark of the Christian.pptx
Celso Napoleon
 
Trusting God's Providence | Verse: Romans 8: 28-31
Trusting God's Providence | Verse: Romans 8: 28-31Trusting God's Providence | Verse: Romans 8: 28-31
Trusting God's Providence | Verse: Romans 8: 28-31
JL de Belen
 
Deerfoot Church of Christ Bulletin 6 16 24
Deerfoot Church of Christ Bulletin 6 16 24Deerfoot Church of Christ Bulletin 6 16 24
Deerfoot Church of Christ Bulletin 6 16 24
deerfootcoc
 
Is Lucid Dreaming Dangerous? Risks and Benefits!
Is Lucid Dreaming Dangerous? Risks and Benefits!Is Lucid Dreaming Dangerous? Risks and Benefits!
Is Lucid Dreaming Dangerous? Risks and Benefits!
Symbolic Whispers
 
English - The Book of 1st Samuel the Prophet.pdf
English - The Book of 1st Samuel the Prophet.pdfEnglish - The Book of 1st Samuel the Prophet.pdf
English - The Book of 1st Samuel the Prophet.pdf
Filipino Tracts and Literature Society Inc.
 

Recently uploaded (12)

The Vulnerabilities of Individuals Born Under Swati Nakshatra.pdf
The Vulnerabilities of Individuals Born Under Swati Nakshatra.pdfThe Vulnerabilities of Individuals Born Under Swati Nakshatra.pdf
The Vulnerabilities of Individuals Born Under Swati Nakshatra.pdf
 
Monthly Khazina-e-Ruhaniyaat Jun’2024 (Vol.15, Issue 2)
Monthly Khazina-e-Ruhaniyaat Jun’2024 (Vol.15, Issue 2)Monthly Khazina-e-Ruhaniyaat Jun’2024 (Vol.15, Issue 2)
Monthly Khazina-e-Ruhaniyaat Jun’2024 (Vol.15, Issue 2)
 
Heartfulness Magazine - June 2024 (Volume 9, Issue 6)
Heartfulness Magazine - June 2024 (Volume 9, Issue 6)Heartfulness Magazine - June 2024 (Volume 9, Issue 6)
Heartfulness Magazine - June 2024 (Volume 9, Issue 6)
 
Seminar on Music on the Liturgy Parish .pptx
Seminar on Music on the Liturgy Parish .pptxSeminar on Music on the Liturgy Parish .pptx
Seminar on Music on the Liturgy Parish .pptx
 
Astronism, Cosmism and Cosmodeism: the space religions espousing the doctrine...
Astronism, Cosmism and Cosmodeism: the space religions espousing the doctrine...Astronism, Cosmism and Cosmodeism: the space religions espousing the doctrine...
Astronism, Cosmism and Cosmodeism: the space religions espousing the doctrine...
 
Chandra Dev: Unveiling the Mystery of the Moon God
Chandra Dev: Unveiling the Mystery of the Moon GodChandra Dev: Unveiling the Mystery of the Moon God
Chandra Dev: Unveiling the Mystery of the Moon God
 
Sanatan Vastu | Experience Great Living | Vastu Expert
Sanatan Vastu | Experience Great Living | Vastu ExpertSanatan Vastu | Experience Great Living | Vastu Expert
Sanatan Vastu | Experience Great Living | Vastu Expert
 
Lesson 12 - The Blessed Hope: The Mark of the Christian.pptx
Lesson 12 - The Blessed Hope: The Mark of the Christian.pptxLesson 12 - The Blessed Hope: The Mark of the Christian.pptx
Lesson 12 - The Blessed Hope: The Mark of the Christian.pptx
 
Trusting God's Providence | Verse: Romans 8: 28-31
Trusting God's Providence | Verse: Romans 8: 28-31Trusting God's Providence | Verse: Romans 8: 28-31
Trusting God's Providence | Verse: Romans 8: 28-31
 
Deerfoot Church of Christ Bulletin 6 16 24
Deerfoot Church of Christ Bulletin 6 16 24Deerfoot Church of Christ Bulletin 6 16 24
Deerfoot Church of Christ Bulletin 6 16 24
 
Is Lucid Dreaming Dangerous? Risks and Benefits!
Is Lucid Dreaming Dangerous? Risks and Benefits!Is Lucid Dreaming Dangerous? Risks and Benefits!
Is Lucid Dreaming Dangerous? Risks and Benefits!
 
English - The Book of 1st Samuel the Prophet.pdf
English - The Book of 1st Samuel the Prophet.pdfEnglish - The Book of 1st Samuel the Prophet.pdf
English - The Book of 1st Samuel the Prophet.pdf
 

Introduction to Elliptic Curve Cryptography

  • 1. Cryptocurrency Café cs4501 Spring 2015 David Evans University of Virginia Class 3: Elliptic Curve Cryptography y2 = x3 + 7 Project 1 will be posted by midnight tonight, and is due on January 30.
  • 2. Plan for Today Bitcoin Wallets and Passwords Asymmetric Cryptography Recap: Transferring a Coin Crash Course in Number Theory Elliptic Curve Cryptography 1
  • 4. 3
  • 5. 4
  • 6. 5
  • 7. My Advice 6 Don’t waste brainpower/space on passwords that don’t matter “silly” is a fine password for most things than need one Don’t follow any widely-available advice password cracker authors can read too! Humans cannot generate randomness and neither can you Generate a random password Share your password (but only with people with whom you are willing to raise children) Write down your important passwords Store them somewhere safe, and write down in a way that someone who steals it wouldn’t be able to use.
  • 8. Using Bitcoin in This Class 7 It is “real” money: try not lose (all of) it. (But you can do everything in this class with very small amounts.) If you do, I’ll send you more (so long as you learned something from the loss). Everyone gets one embarrassment-free transfer.
  • 9. Using Asymmetric Crypto: Signatures 8 E D Verified Message Signed Message Message Insecure Channel KUB KRB Bob Generates key pair: KUB, KRB Publishes KUB Anyone Get KUB from trusted provider
  • 10. Transferring a Coin 9 Alice signs m1 = { “I give coin x = KUA, t to address KUB.”} with KRA. How does Bob transfer x to Colleen (KUC)?
  • 11. Transferring a Coin 10 Alice signs m1 = { “I give coin x = KUA, t to address KUB.”} with KRA. Bob signs m2 = { “I give coin x = KUA, t, given to me by m1to address KUC.”} with KRB.
  • 12. Transferring a Coin 11 Alice signs m1 = { “I give coin x = KUA, t to address KUB.”} with KRA. Bob signs m2 = { “I give coin x = KUA, t, given to me by m1to address KUC.”} with KRB. Colleen signs m2 = { “I give coin x = KUA, t, given to me by m2to address KUD.”} with KRC. … This does not prevent double spending! (Next week)
  • 13. Asymmetry Required Need a function f that is: Easy to compute: given x, easy to compute f (x) Hard to invert: given f (x), hard to compute x Has a trap-door: given f (x) and t, easy to compute x 12
  • 16. Groups 15 A group is a set, G, on which the operation ⊕ is defined with the following properties: 1. Closure: for all a, b ∈ G, a ⊕ b ∈ G. 2. Associative: for all a, b, c ∈ G, (a ⊕ b) ⊕ c = a ⊕ (b ⊕ c). 3. Identity: there is some element, 0 ∈ G, such that: for all a ∈ G, a ⊕ 0 = 0 ⊕ a = a. 4. Inverse: for all a ∈ G, there exists an inverse, -a ∈ G, such that a ⊕ (-a) = 0.
  • 17. 16 1. Closure: for all a, b ∈ G, a ⊕ b ∈ G. 2. Associative: for all a, b, c ∈ G, (a ⊕ b) ⊕ c = a ⊕ (b ⊕ c). 3. Identity: there is some element, 0 ∈ G, such that: for all a ∈ G, a ⊕ 0 = 0 ⊕ a = a. 4. Inverse: for all a ∈ G, there exists an inverse, -a ∈ G, such that a ⊕ (-a) = 0. Is Integers, + a group?
  • 18. 17 1. Closure: for all a, b ∈ G, a ⊕ b ∈ G. 2. Associative: for all a, b, c ∈ G, (a ⊕ b) ⊕ c = a ⊕ (b ⊕ c). 3. Identity: there is some element, 0 ∈ G, such that: for all a ∈ G, a ⊕ 0 = 0 ⊕ a = a. 4. Inverse: for all a ∈ G, there exists an inverse, -a ∈ G, such that a ⊕ (-a) = 0. Is Naturals, + a group?
  • 19. 18 1. Closure: for all a, b ∈ G, a ⊕ b ∈ G. 2. Associative: for all a, b, c ∈ G, (a ⊕ b) ⊕ c = a ⊕ (b ⊕ c). 3. Identity: there is some element, 0 ∈ G, such that: for all a ∈ G, a ⊕ 0 = 0 ⊕ a = a. 4. Inverse: for all a ∈ G, there exists an inverse, -a ∈ G, such that a ⊕ (-a) = 0. Is Rationals, * a group?
  • 20. Abelian Groups 19 A group is a set, G, on which the operation ⊕ is defined with the following properties: 1. Closure: for all a, b ∈ G, a ⊕ b ∈ G. 2. Associative: for all a, b, c ∈ G, (a ⊕ b) ⊕ c = a ⊕ (b ⊕ c). 3. Identity: there is some element, 0 ∈ G, such that: for all a ∈ G, a ⊕ 0 = 0 ⊕ a = a. 4. Inverse: for all a ∈ G, there exists an inverse, -a ∈ G, such that a ⊕ (-a) = 0. 5. Commutative: for all a, b ∈ G, a ⊕ b = b ⊕ a.
  • 21. 20 1. Closure: for all a, b ∈ G, a ⊕ b ∈ G. 2. Associative: for all a, b, c ∈ G, (a ⊕ b) ⊕ c = a ⊕ (b ⊕ c). 3. Identity: there is some element, 0 ∈ G, such that: for all a ∈ G, a ⊕ 0 = 0 ⊕ a = a. 4. Inverse: for all a ∈ G, there exists an inverse, -a ∈ G, such that a ⊕ (-a) = 0. 5. Commutative: for all a, b ∈ G, a ⊕ b = b ⊕ a. Is Rationals – {0}, * an abelian group?
  • 22. Finite Fields 21 A finite field is a set F of N ≥ 2 elements on which the operators ⊕ and × are defined with these properties: 1. The set F is an abelian group with identity 0 under the ⊕ operation. 2. The set F - { 0 } is an abelian group with identity 1 under the × operation. 3. Distributive: For all a, b, c ∈ F, (a ⊕ b) × c = (a × c) ⊕ (b × c).
  • 23. Know any finite fields? 22 A finite field is a set F of N ≥ 2 elements on which the operators ⊕ and × are defined with these properties: 1. The set F is an abelian group with identity 0 under the ⊕ operation. 2. The set F - { 0 } is an abelian group with identity 1 under the × operation. 3. Distributive: For all a, b, c ∈ F, (a ⊕ b) × c = (a × c) ⊕ (b × c).
  • 25. Prime Fields 24 Prime Field Theorem: For every prime number p, the set { 0, 1, …, p - 1 } forms a finite field with the operations addition and multiplication modulo p.
  • 26. Elliptic Curves in Finite Fields 25 y2 = x3 + 7 in GF(3)
  • 27. Elliptic Curves in Finite Fields 26 y2 = x3 + 7 in GF(3)
  • 28. Elliptic Curves in Finite Fields 27 y2 = x3 + 7 in GF(2256 - 232 - 29 - 28 - 27 - 26 - 24 - 1)
  • 29. 28 y2 = x3 + 7 in GF(2256 - 232 - 29 - 28 - 27 - 26 - 24 - 1) 115 quattuorvigintillion 792 trevigintillion 89 duovigintillion 237 unvigintillion 316 vigintillion 195 novemdecillion 423 octodecillion 570 septendecillion 985 sexdecillion 8 quindecillion 687 quattuordecillion 907 tredecillion 853 duodecillion 269 undecillion 984 decillion 665 nonillion 640 octillion 564 septillion 39 sextillion 457 quintillion 584 quadrillion 7 trillion 908 billion 834 million 671 thousand 663 (0.0012 × the number of atoms in the visible universe)
  • 30. Addition on Elliptic Curves 29 y2 = x3 – 7 (mod p) Addition: P + Q = negate intersection of curve with line through P and Q P Q P + Q
  • 32. Addition 31Image from: http://www.coindesk.com/math-behind-bitcoin/ Same idea for finite fields (just more complex) Picture is for F67. How would this look for Fhuge?
  • 33. Density of Elliptic Curve 32 y2 = x3 + 7 in GF(2256 - 232 - 29 - 28 - 27 - 26 - 24 - 1)
  • 34.
  • 35. (Believed to be) Hard Problem Elliptic curve discrete logarithm problem: given points P and Q on an elliptic curve, it is hard to find an integer k such that Q = kP. 34
  • 36. Charge • Investigate the bitcoin you received • Project 1 will be posted before midnight tonight and due on Jan 30 • Readings: Satoshi’s original bitcoin paper, Chapter 5 35 Next class: how to use Elliptic Curve Crypto for signatures; how (not) to use Elliptic Curves for pseudorandom number generation Next week: preventing double spending