3 ms·
At a glance it seems fair to say that this is both a cryptocurrency library and a cryptography library. The only truly general purpose thing here is SHA256. Ev
by debatem1 2y ago
At a glance it seems fair to say that this is both a cryptocurrency library and a cryptography library.
The only truly general purpose thing here is SHA256. Every protocol on its supported list starts with either "ethereum" or "evm", and to the best of my knowledge the other primitives have seen very little use besides cryptocurrency.
- mratsim 2y agoBLS signatures are general purpose, the only Ethereum specific thing is choosing which elliptic curves are used for public keys and which for signatures as well as a prefix before hashing inputs. Similarly KZG polynomial commitments are generic, the Ethereum specific thing is the trusted setup ceremony which needs to be specialized per protocol. The finite field backends and the elliptic curves supported are all generic as well: https://github.com/mratsim/constantine/blob/master/constantine%2Fnamed%2Fconfig_fields_and_curves.nim#L73-L283 https://github.com/mratsim/constantine/blob/master/constanti...
- mratsim 2y agoThe Internet Engineering Task Force, which in particular standardizes TLS, has acknowledge my contributions for my contributions to the very generic and globally useful hashing-to-curve primitive: https://datatracker.ietf.org/doc/html/draft-irtf-cfrg-hash-to-curve-16#name-acknowledgements https://datatracker.ietf.org/doc/html/draft-irtf-cfrg-hash-t... And BLS signatures are standards as well: https://www.ietf.org/archive/id/draft-irtf-cfrg-bls-signature-05.html https://www.ietf.org/archive/id/draft-irtf-cfrg-bls-signatur...