Note: This repository is a WIP and will be updated frequently in the coming weeks. This is probably completely broken, please don't use this in production!
- Add real testing
- See if there are any obvious optimizations
- Add support for verification of signatures with different messages
We use Truffle for testing.
$ truffle test Compiling ./contracts/BLS.sol... Compiling ./contracts/BLSTest.sol... Compiling ./contracts/Migrations.sol... Compiling ./contracts/Pairing.sol... Contract: BLS ✓ should verify a valid signature (302ms) ✓ should not verify a invalid signature (59ms) ✓ should not verify a invalid message (291ms)
The cost of verifying a signature is currently ~365,000 gas.