EC Cryptography Tutorials - Herong's Tutorial Examples - v1.03, by Herong Yang
What Is tinyec
This section introduces what is tinyec - a tiny library to perform arithmetic operations on elliptic curves in pure Python.
What Is tinyec? tinyec is a tiny library to perform arithmetic operations on elliptic curves in pure Python. It is not a library suitable for production. It is useful for security professionals to understand the inner workings of EC, and be able to play with pre-defined curves.
There are 2 main classes in tinyec:
tinyec also supports some named curves: brainpoolP160r1, brainpoolP192r1, brainpoolP224r1, brainpoolP256r1, brainpoolP320r1, brainpoolP384r1, brainpoolP512r1, secp192r1, secp224r1, secp256r1, secp384r1, secp521r1
For more information, see tinyec Website at github.com/alexmgr/tinyec.
Table of Contents
Geometric Introduction to Elliptic Curves
Algebraic Introduction to Elliptic Curves
Abelian Group and Elliptic Curves
Discrete Logarithm Problem (DLP)
Generators and Cyclic Subgroups
►tinyec - Python Library for ECC
Perform Point Addition with tinyec
Find Subgroup with Point Addition
Set Subgroup Order to Higher Value
ECDH (Elliptic Curve Diffie-Hellman) Key Exchange
ECDSA (Elliptic Curve Digital Signature Algorithm)