**EC Cryptography Tutorials - Herong's Tutorial Examples** - v1.03, by Herong Yang

What Is Abelian Group

This section describes Abelian Group, which a set of elements with a binary operation satisfing 5 conditions.

**What Is Abelian Group?**
An Abelian Group is a set, G, of elements with a binary operation, F(),
that satisfy the following 5 conditions:

1. Closure - The result, R, of F() of any given two elements, P and Q, in G must be an element in G. In other words:

R = F(P, Q) in G, if P and Q are in G.

2. Commutativity - The result of the operation is not changing, when the order of given two elements is changed. In other words:

F(P, Q) = F(Q, P) for any given two points.

3. Associativity -

F(F(P, Q), S) = F(P, F(Q, S))

4. Identity Element - A special element called identity element, I, exists with the following property:

F(P, I) = P

5. Symmetry - Every element P has an symmetric element (or inverse element) Q with the following property:

F(P, Q) = I

Good introductions of groups can be found in "Introduction to Finite Fields" by Yunghsiang S. Han at http://web.ntpu.edu.tw/~yshan/algebra.pdf, and in "BSI TR-03111 Elliptic Curve Cryptography, Version 2.10" at bsi.bund.de/SharedDocs/Downloads/EN/BSI/Publications/TechGuidelines/TR03111/BSI-TR-03111_pdf.pdf.

Table of Contents

Geometric Introduction to Elliptic Curves

Algebraic Introduction to Elliptic Curves

►Abelian Group and Elliptic Curves

Niels Henrik Abel and Abelian Group

Multiplicative Notation of Abelian Group

Additive Notation of Abelian Group

Modular Addition of 10 - Abelian Group

Modular Multiplication of 10 - Not Abelian Group

Modular Multiplication of 11 - Abelian Group

Abelian Group on Elliptic Curve

Discrete Logarithm Problem (DLP)

Generators and Cyclic Subgroups

tinyec - Python Library for ECC

ECDH (Elliptic Curve Diffie-Hellman) Key Exchange

ECDSA (Elliptic Curve Digital Signature Algorithm)