ECDSA (Elliptic Curve Digital Signature Algorithm)

This chapter provides tutorial notes on ECDSA (Elliptic Curve Digital Signature Algorithm). Topics includes ECDSA digital signature generation process and verification process; security issue of the private key with same random number k is used; find possible public keys from a digital signature; installing pycoin Python library; using pycoin to generate and manage EC keys; using pycoin to generate and verify ECDSA digital signatures.


These sections are omitted from this Web preview version. To view the full content, see information on how to obtain the full version this book.

ECDSA (Elliptic Curve Digital Signature Algorithm)

ECDSA Digital Signature Generation

ECDSA Digital Signature Verification

ECDSA Problem If k Used Twice

Find ECDSA Public Key from Signature

Download and Install pycoin

pycoin.ecdsa.ellipticcurve Module

pycoin.ecdsa.generator_secp256k1 Object

Generate EC Key Pair with pycoin.ecdsa

pycoin.ecdsa.ecdsa.sign() - Signature Generation

pycoin.ecdsa.ecdsa.sign() - Signature Verification

'openssl dgst' - Signing and Verification


Takeaways:

Table of Contents

 About This Book

 Geometric Introduction to Elliptic Curves

 Algebraic Introduction to Elliptic Curves

 Abelian Group and Elliptic Curves

 Discrete Logarithm Problem (DLP)

 Finite Fields

 Generators and Cyclic Subgroups

 Reduced Elliptic Curve Groups

 Elliptic Curve Subgroups

 tinyec - Python Library for ECC

 EC (Elliptic Curve) Key Pair

 ECDH (Elliptic Curve Diffie-Hellman) Key Exchange

ECDSA (Elliptic Curve Digital Signature Algorithm)

 ECES (Elliptic Curve Encryption Scheme)

 EC Cryptography in Java

 Standard Elliptic Curves

 Terminology

 References

 Full Version in PDF/EPUB