Group is a set with:
- an associative and closed binary operator
- an identity element
- every element has an inverse
An Abelian group has the additional requirement:
- the binary operator is commutative
The order of a group is just the number of elements in it.
A cyclic group is a group that has an element that can generate all the others by applying binary operator repeatedly to that element or its inverse. It is generally called
If a group is cyclic, then it is abelian:
$R = P + Q$ -
$R = (g+g+g+...+g) + (g+...+g)$ , so we can invert$P$ and$Q$
The inverse statement isn't always true.
Let A be a group with binary operator □ and B be a group with binary operator △.
Group A is homomorphic to group B if there exists a transformation φ where φ maps elements from A to B, and for all a, a’ in A, φ(a □ a’) = φ(a) △ φ(a’).
Sets:
- integers under addition
- powers of 2 under multiplication
Then, then transformation
If our transformation φ is cryptographically hard to invert, then we have homomorphic encryption. That is, we can apply binary operators to encrypted data and “do valid math” but not know what the original values were.
It is possible to take the product of two groups (as they are special sets).
The product of two groups is a group. It is sometimes called the direct product, and can be written as
Let's take the product of two non-equal groups
"Elliptic curve points under addition modulo p are a cyclic finite group and integers under addition are homomorphic to this group."