Finite Field Definition: a "finite field" is defined as a finite set of numbers and two operations (addition) and (multiplication) that satisfy the following:
1. If a and b are in the set, a + b and a * b are in the set. We call this property closed.
2. 0 exists and has the property a + 0 = a. We call this additive identity.
3. 1 exists and has the property a * 1 = a. We call this multiplicative identity.
4. If a is in the set, -a is in the set, which is defined as the value that makes a + (-a) = 0. This is what we call the additive inverse.
5. If a is in the set and is not 0, a^-1 is in the set, which is defined as the value that makes a * a^-1 = 1. This is what we call the multiplicative inverse.
We have a set of numbers that finite. The set is finite so we can designate a number p, which is how big the set is. This is what we call the order of the set.
Fp = { 0, 1, 2, .... p-1 }
Field of p
Modulo Arithmetic 7 % 3 = 1, 1747 % 241 = 60
a, b ∈ F 19
∈ it means "is an element of" in this case a and b are elements of F 19
a + f b ∈ F 19
with addition being closed
a + f b = ( a + b) % 19
7 + f8 = (7+8) % 19 = 15
we take any two numbers in the set, add and "wrap around" the end to get the sum
Finite Field Division: n^(p-1) % p = 1
where p is prime
Fermat's Little theorem.
{ 1, 2, 3, ... p-2, p-1}
Elliptic Curves y^2 = x^3 + ax + b
Elliptic curve used in Bitcoin secp256k1 use the equation: y^2 = x^3 + 7
y^2 = x^3 + ax + b where a = 0, b = 7
Point Addition is where we can do a operation on two of the points to get a third point.
A+B = C if we reflect that point over the x-axis. (A+B) + C = A + (B+C)
Reversing scalar multiplication is referred to as the discrete log problem.
P1 * P2 = P3
Scalar multiplication is adding the same point to itself some number of times.
12 * (47, 71) = (69, 137) which is easy to figure out
but s * (47, 71) = (194, 172) solving for s is hard.
If we take a generator point from an elliptic curve over a finite field, we can generate a finite cyclic group.
Signing and Verification:
Imagine this scenario, you are an archer and you must prove to a person that you can shoot a target 500 yards away with out the person watch you shoot the arrow. You inscribe the the arrow tip with the position and target you are going to hit, once the person comes later and pulls out the arrow the target, the inscription matches the target.
1. If a and b are in the set, a + b and a * b are in the set. We call this property closed.
2. 0 exists and has the property a + 0 = a. We call this additive identity.
3. 1 exists and has the property a * 1 = a. We call this multiplicative identity.
4. If a is in the set, -a is in the set, which is defined as the value that makes a + (-a) = 0. This is what we call the additive inverse.
5. If a is in the set and is not 0, a^-1 is in the set, which is defined as the value that makes a * a^-1 = 1. This is what we call the multiplicative inverse.
We have a set of numbers that finite. The set is finite so we can designate a number p, which is how big the set is. This is what we call the order of the set.
Fp = { 0, 1, 2, .... p-1 }
Field of p
Modulo Arithmetic 7 % 3 = 1, 1747 % 241 = 60
a, b ∈ F 19
∈ it means "is an element of" in this case a and b are elements of F 19
a + f b ∈ F 19
with addition being closed
a + f b = ( a + b) % 19
7 + f8 = (7+8) % 19 = 15
we take any two numbers in the set, add and "wrap around" the end to get the sum
Finite Field Division: n^(p-1) % p = 1
where p is prime
Fermat's Little theorem.
{ 1, 2, 3, ... p-2, p-1}
Elliptic Curves y^2 = x^3 + ax + b
Elliptic curve used in Bitcoin secp256k1 use the equation: y^2 = x^3 + 7
y^2 = x^3 + ax + b where a = 0, b = 7
Point Addition is where we can do a operation on two of the points to get a third point.
A+B = C if we reflect that point over the x-axis. (A+B) + C = A + (B+C)
Reversing scalar multiplication is referred to as the discrete log problem.
P1 * P2 = P3
Scalar multiplication is adding the same point to itself some number of times.
12 * (47, 71) = (69, 137) which is easy to figure out
but s * (47, 71) = (194, 172) solving for s is hard.
If we take a generator point from an elliptic curve over a finite field, we can generate a finite cyclic group.
Signing and Verification:
Imagine this scenario, you are an archer and you must prove to a person that you can shoot a target 500 yards away with out the person watch you shoot the arrow. You inscribe the the arrow tip with the position and target you are going to hit, once the person comes later and pulls out the arrow the target, the inscription matches the target.
Comments
Post a Comment