mirror of
https://github.com/logos-storage/logos-storage-contracts-eth.git
synced 2026-01-14 11:13:10 +00:00
Current tests are failing because ECMUL is not a valid opcode in hardhat. Exploring alternatives.
25 lines
545 B
Solidity
25 lines
545 B
Solidity
// SPDX-License-Identifier: MIT
|
|
|
|
pragma solidity >=0.8.0 <=0.8.13;
|
|
|
|
import "./Curve.sol";
|
|
|
|
library Verifier {
|
|
struct QElement {
|
|
int64 i;
|
|
uint256 v;
|
|
}
|
|
|
|
struct Proof {
|
|
// TODO: should `q` be bounded?
|
|
QElement[] q;
|
|
uint256[10] mus;
|
|
// sigma is probably only the x coordinate
|
|
// (https://github.com/supranational/blst#serialization-format)
|
|
Curve.G1Point sigma;
|
|
// TODO: should `u` be bounded?
|
|
Curve.G1Point[] u;
|
|
bytes name;
|
|
Curve.G2Point publicKey;
|
|
}
|
|
} |