I am trying to implement an elliptic curve scheme in micro_ecc, wherein the secret key is the addition of two random numbers and the public key is derived from the secret key as follows priv_key = (a+b) public_key = (a+b)G. I have checked the code in micro_ecc the key pair generation is defined in uECC_make_key() in uECC.c but it seems that the implementation cannot be modified to add any new elements. I have run the code in the pkg_micro-ecc-with-hwrng example given in the tests folder. Can someone tell me how I can randomly select the secret key and then generate the key pair as mentioned above? If micro_ecc in Riot does not support it, can I do the same in the relic?
Asked
Active
Viewed 143 times
0
-
why are you messing around with adding numbers for the private scalar generation, why not just use the system csprng? – Woodstock Apr 28 '21 at 14:06
-
I am designing a shared group key scheme that involves the addition of random numbers and then scalar multiplication. I hope it makes sense. – Aisha Apr 28 '21 at 15:53