Solidity API
submitProofOfAddressOwnership
Submit an optimistic proof of multiple address ownership for the Custodian. The proof is subject to an off-chain verification as it's not feasible to verify the signatures of non-EVM chains in an Ethereum smart contract.
Parameters
Name | Type | Description |
---|---|---|
_addressOwnershipProofs | struct Summa.AddressOwnershipProof[] | The list of address ownership proofs |
submitCommitment
Submit liabilities commitment for the Custodian
Parameters
Name | Type | Description |
---|---|---|
snarkProof | bytes | A zk-SNARK proof from Univariate Grand Sum circuit includes KZG commitments to the polynomials |
grandSumProof | bytes | A KZG opening proof for the grand total sum of cryptocurrency balances |
totalBalances | uint256[] | The grand total sum of all user balances included |
timestamp | uint256 | The timestamp at which the Custodian took the snapshot of its assets and liabilities |
verifyInclusionProof
Verify the proof of user inclusion into the liabilities commitment
Parameters
Name | Type | Description |
---|---|---|
timestamp | uint256 | The timestamp at which the Custodian took the snapshot of its assets and liabilities to generate this proof |
inclusionProof | bytes | A KZG proof for the polynomials containing usernames and balances, associated with a specific user index |
challenges | uint256[] | An array representing a point in the G2 affine space, corresponding to the user index |
values | uint256[] | The user data that contains user ID and balances |
Last updated