What’s up with this value spinning like a clock? Are there other values that can do this too? How do we even find them? Can we hit values like 2 or 3 in, say, five or seven steps? Also, when it comes to "n=fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141", can we derive it using "p=fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"?
ECDSA: Exploring Roots and Their Properties
6 replies 415 views
Apparently because N^2 = 1, and this value (let's call it E) gets to N in 6 multiplications.
And E^4 = E^2-1. I don't know what to make of this except E^2 would be sqrt(E^2-1), try checking that. (I am not sure how'd you compute a square root in a group!)
Without a specialized ECC calculator you'd have to experiment with different values manually.
If there was a way to find roots, then you could create arbitrary-sized roots of N (sqrt, cbrt, etc.) and generate a full circle that is about twice the size as the root being taken.
Because "n-1=fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364140" is divisible by 12.
Yes, as long as you can divide n-1 by some number and get zero as a remainder, you can do that:
By using numbers, where (n-1) modulo your_number is zero.
No, because (n-1)%5 is equal to one, and (n-1)%7 is equal to two.
Of course, but not for 12. For example for 14:
There are many such values. Eventually what are you looking for is Primitive root modulo n. From it you can get every possible root of 1.
Here is an algorithm for finding a primitive root modulo prime p (that is (p-1)-th root of 1):
(prime ** power = primepower)
Modulo p we get the following roots: 2 (square), 3 (cube), 7-th, 13341, 205115282021455665897114700593932402728804164701536103180137503955397371, and any multiple of these numbers, for a total of 25-1 = 31 possible roots (2nd, 3rd, 6th, 7th, 14th, 21st, 42th,...). Each k-th prime root has k-1 possible values besides 1. However if k is composite, some of the k-1 values are the corresponding smaller root, i.e. if a is 6-th root of 1, a3 would be square root of 1, and not 6th.
Modulo n we get the following factors (and roots): 26, 3, 149, 631, 107361793816595537, 174723607534414371449, 341948486974166000522343609283189. 7 * 26 - 1 = 447 possible roots. Your example is for 22*3=12-th root.
Here are two primitive roots of 1 modulo the corresponding prime:
n: rn = 106331823171076060141872636901030920105366729272408102113527681246281393517969
p: rp = 77643668876891235360856744073230947502707792537156648322526682022085734511405
So, let's say you want a 631th root of 1 modulo n: x = pow(rn, (n-1)/631, n). Since 631 is prime number, you could get all 631 possible 631-th roots of 1 (modulo n) by rising x to the power from 1 to 631.
sam_vectorMember
Posts: 20 · Reputation: 150
#5Feb 7, 2020, 12:40 AM
I just found that if you double one point
Q = P * 2^155555555555555555555555555555553a393d1339460d5a4ffc328bbc04857
You get the point with the same Py=Qy value and different X | Qx != Px....
(I know this is old thread but I had to say)
sam_vectorMember
Posts: 20 · Reputation: 150
#6Feb 7, 2020, 01:12 AM
I was using this code to check that
And I have starting point 0x10 * G
After executing the code I got 0xc9c52b33fa3cf1f5ad9e3fd77ed9ba573d36fec6139d59d88ec4cf8b2f09b056 * G
Maybe something is not good, but I tested for many points
pow(2, T, n) == 0xac9c52b33fa3cf1f5ad9e3fd77ed9ba4a880b9fc8ec739c2e0cfc810b51283ce
This is one of the two endomorphism constants for secp256k1's scalar domain.
So, when any point is multiplied by this value, in affine coordinates, the Y will be the same.
The question I have is: how did you compute T?
LE: nvm, it's just above. Still a bit unexpected though!
Related topics
- Exploring the Potential and Challenges of a Kardashev-Scale Bitcoin Network 3
- Understanding square and cube roots in secp224k1 6
- Bitcoin Core displaying coins (UTXOs) in a new tab 13
- Are you in favor of BIP-110? Let's get a Bitcoin poll going. 0
- Erlay seems to have some issues here’s a better proposal for a bitcoin protocol without invites 3
- New Optional Hourglass Implementation is Live 3