What is wrong?
It would be nice if py_ecc.secpk256k1, py_ecc.bls12_381 and py_ecc.bn128 all had roughly the same API.
How can it be fixed
A combination of exposing a few un-exposed APIs from secpk256k1 and renaming things.
- expose
add and multiply from py_ecc.secp256k1.secp256k1 from py_ecc.secp256k1
- I think
py_ecc.secp256k1.secp256k1.inv needs to be renamed/aliased to neg to line up with the bls/bn APIs.
- some other things like
field_modulus and curve_order might need to have their equivalent values exposed from secp256k1
What is wrong?
It would be nice if
py_ecc.secpk256k1,py_ecc.bls12_381andpy_ecc.bn128all had roughly the same API.How can it be fixed
A combination of exposing a few un-exposed APIs from
secpk256k1and renaming things.addandmultiplyfrompy_ecc.secp256k1.secp256k1frompy_ecc.secp256k1py_ecc.secp256k1.secp256k1.invneeds to be renamed/aliased tonegto line up with the bls/bn APIs.field_modulusandcurve_ordermight need to have their equivalent values exposed fromsecp256k1