Solidity API
submitProofOfAddressOwnership
function submitProofOfAddressOwnership(struct Summa.AddressOwnershipProof[] _addressOwnershipProofs) public
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
_addressOwnershipProofs
struct Summa.AddressOwnershipProof[]
The list of address ownership proofs
submitCommitment
function submitCommitment(uint256 mstRoot, uint256[] rootBalances, struct Summa.Cryptocurrency[] cryptocurrencies, uint256 timestamp) public
Submit liabilities commitment for the Custodian
Parameters
mstRoot
uint256
Merkle sum tree root of the Custodian's liabilities
rootBalances
uint256[]
The total sums of the liabilities included into the Merkle sum tree
cryptocurrencies
struct Summa.Cryptocurrency[]
The cryptocurrencies included into the Merkle sum tree
timestamp
uint256
The timestamp at which the Custodian took the snapshot of its assets and liabilities
verifyInclusionProof
function verifyInclusionProof(bytes proof, uint256[] publicInputs, uint256 timestamp) public view returns (bool)
Verify the proof of user inclusion into the liabilities MST
Parameters
proof
bytes
ZK proof
publicInputs
uint256[]
proof public inputs
timestamp
uint256
The timestamp at which the Custodian took the snapshot of its assets and liabilities to generate this proof
Last updated