Summary
SIMD-48 outlines an implementation of the secp256r1 ECDSA verification routine as a precompile in the Solana runtime.
A current testing repo for SIMD-48 can be found here
Since Firedancer is being developed concurrently to the Solana Labs runtime, considerations towards the implementation of the precompile in C need to be made. Specifically towards the reproducibility of the verification operation. Any potential discrepancy would lead to serious security risks as well as a chain fork.
The OpenSSL implementation of secp256r1 should serve as the underlying reference point, as it’s one of the most well maintained and scrutinised cryptography implementations. As its written in C it can additionally serve as a reference point for the development of the Firedancer implementation.
Currently the test repo includes programatic analysis of test vector results of both the SIMD-48 implementation as well as the OpenSSL implementation.
This forum serves as a place to discuss the methodology behind ensuring a safe and reproducible implementation of SIMD-48.