status-im / nim-blscurve

Nim implementation of BLS signature scheme (Boneh-Lynn-Shacham) over Barreto-Lynn-Scott (BLS) curve BLS12-381
Apache License 2.0
26 stars 11 forks source link

BLST no ASM flag for non-x86 non-ARM #98

Closed mratsim closed 3 years ago

mratsim commented 3 years ago

This tests the suggested patch https://github.com/supranational/blst/issues/46#issuecomment-738939501 for a no assembly fallback.

In https://github.com/status-im/nim-blscurve/pull/96 we could use BLS on non x86 and non ARM 64-bit target as the #if #elif branch where missing that case.

The relevant test to check is Travis PowerPC 64.

This uses a patch that isn't upstream in travis.yml

The patch has been successfully tested and integrated in the master branch of BLST. So this PR bumps BLST and uses it on non-x86, non-ARM. THis seems to work on Travis on PowerPC64.

This means that there is no reason to continue maintaining the Miracl backend, especially once BLST completes their security audit and formal verification. Unless we want a fallback for things like https://github.com/status-im/nimbus-eth2/pull/1753 but even then we can force pass the BLST_NO_ASM flag.