2
2
From here, we can read that :
A private key is a 256-bit value, meaning there are approximately 1.1579e77 possible keys (There are about 1.2288e66 invalid values
But here, we have :
Nearly every 256-bit number is a valid ECDSA private key. Specifically, any 256-bit number from 0x1 to 0xFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4140 is a valid private key.
Does "nearly every" mean (1.1579e77-1.2288e66) out of 1.1579e77 ?
1
The answer is right there in the passage you quoted. "Any 256-bit number from 0x1 to 0xFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4140 is a valid private key." So for instance, 0x0 and 0xFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4141 are not valid private keys. You can read https://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm to see why; the key must be less than
– Nate Eldredge – 2016-07-08T16:16:59.893n, the size of the group.1The count of invalid on reddit is wrong, it should be about 4.32420e38. But either of these is small compared to 1.15972e77, hence 'nearly every'. – dave_thompson_085 – 2016-07-09T01:02:04.147