digital signatures - a mathematical scheme for demonstrating the authenticity of a digital message
TRANSCRIPT
Digital SignaturesA mathematical scheme for demonstrating the authenticity of a digital message or document.
[email protected]@mikedance
Presentation Goals
• Provide a high level overview of digital signatures
• Define the terminology used for digital signatures
AnalogyA handwritten signature or seal placed on a written
document.
Important Distinction
A digital signature is unique to each message
Unlike a physical signature, where the same signature is used for multiple documents, a digital signature changes with each message.
PurposeWhat security principles do we achieve with digital
signatures?
AuthenticationProvides proof that a message was sent by a known
sender.
IntegrityThe message was not altered in transit.
Non RepudiationThe sender cannot deny having sent the message.
Terminology
Key GenerationAn algorithm that outputs a private key (signing key),
and public key (verification key).
Signing KeyThe private key used to generate a digital signature.
Verification KeyThe public key available to anyone to verify whether a
digital signature is valid.
Signing AlgorithmGiven a message, and signing key produces a digital
signature.
Signature Verification Algorithm
Given a message, verification key, and a digital signature determines whether the message is authentic.
Digital Signature Schemes
What are the main digital signature schemes in use today?
DSA
• Digital Signature Algorithm
• Established by NIST in 1991 as the US government standard for digital signatures
• Is a variant of the ELGamal Signature Scheme
ECDSA
• Elliptic Curve Digital Signature Algorithm
• Used in Bitcoin to transfer funds from one address to another
Bitcoin Usage
• When spending bitcoins, the bitcoin owner presents their public key, and a signature for the transaction
• The bitcoin network uses the digital signature verification algorithm to verify the public key, and signature are valid
Live Demohttps://brainwallet.github.io/#sign
What’s Next?
• Hash Functions
• Elliptic Curve Cryptography
• Bitcoin Cryptography Usage
Further Reading• Brainwallet
• https://brainwallet.github.io/
• Princeton Lecture 1 — Intro to Crypto and Cryptocurrencies
• https://www.youtube.com/watch?v=fOMVZXLjKYo
• Digital Signature Algorithm
• http://en.wikipedia.org/wiki/Digital_Signature_Algorithm
• Elliptic Curve Digital Signature Algorithm
• http://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm