ECDSA

« Back to Glossary Index

(R1)

WHAT: Elliptic Curve Digital Signature Algorithm: a digital signature variant using elliptic curve cryptography (ECC). ECC is a form of public key cryptography that relies on a curved geometric set of points with operations that are mathematically unsolvable. The formula for an elliptic curve:

y² = x³ + ax + b


(R2, R3)

WHY: ECDSA is used by Bitcoin to ensure funds can only be spent by the rightful owner. ECC uses 256 bit private key to generate a geometric point that is the public key. Bitcoin uses the private key to generate digital signatures. (R2)

 

 

 

 

(R4)

Fundamental concepts:

Private Key: a randomly generated number, known only by the person that generated it (single unsigned 256 bit integer). Someone with a private key that corresponds to Bitcoins on the public ledger can spend those Bitcoins.

Public Key: a number that can be calculated from a private key, but not vice versa. A public key can be used to determine if a signature is genuine.

Signature: a number proving that a signing operation took place. A signature is mathematically generated from a hash of something to be signed, plus a private key. The signature itself is two numbers known as r and s.

REFERENCES:
(R1)https://en.bitcoin.it/wiki/Technical_background_of_version_1_Bitcoin_addresses#Collisions_.28lack_thereof.29
(R2) https://medium.com/blockthought/how-does-bitcoin-validate-transactions-a-primer-21e007f3a9d3
(R3) https://www.desmos.com/calculator/ialhd71we3
(R4) Secure Implementation of ECDSA Signatures in Bitcoin by Di Wang (Sept 2014)

« Back to Glossary Index