While informing myself on the inner-working of Monero, I stumbled on Curve25519.
The CryptoNote White Paper states:
l: a prime order of the base point; l = 2^252 + 27742317777372353535851937790883648493;
[...]
private ec-key is a standard elliptic curve private key: a number a ∈ [1, l − 1];
Another Stack Exchange answer states the following:
All you need protocol-wise is a private spend key and a private view key, where a private key is just some number smaller than
l
wherel
is a prime order of the EC curve basepointl=2^252 + 27742317777372353535851937790883648493
. Anything bigger than that will get wrapped around iea
anda+l
are equivalent.
From my understanding this means that a private key a
has the same derived public key as private key a+l
.
I've however been unable to reproduce the said "wrapping".
Using a very random a=0x1111111111111111111111111111111111111111111111111111111111111111
I calculated a+l=0x2111111111111111111111111111111125f00aefb408ade76923742b6e06e4fe
.
I then tried to use a
and a+l
on llcoins as Hexadecimal Seed, as Private Spend Key or as Private View Key. They never generated the same results.
Does the wrapping occurring on a
,when greater or equal to l
, occur at another step? Does it only occur sometimes?