Property is tied to regular Ethereum addresses. It’s the responsibility of the developer to implement a robust
regulatory framework to ensure the link between the owner and such address.
security-contact: security@plumaa.id
State Variables
ENDORSER_STORAGE
PROVENANCE_AUTHORIZER_ROLE
_MINT_AUTHORIZATION_TYPEHASH
Functions
constructor
Note: oz-upgrades-unsafe-allow: constructorgetProvenanceHash
Leaf hash. Uses SHA256 according to the algorithms approved by the Mexican government.initialize
Initializes the contract setting an initial authority and a Witness contractWITNESS
The Witness contract that this contract uses to verify provenance.mint
Mints a new token for the providedto
address if the proof is valid and nullifies it so it can’t be used again.
setWitness
Sets the Witness contractWitness is set by default to the mainnet address, it should be updated
to the correct address before deployment when deploying to testnets.
_baseURI
_validateAndNullifyProof
Checks whether a proof is valid and nullifies it so it can’t be used again. Requirements:- The leaf was not nullified before.
- The mint request was signed by an authorizer.
- The authorizer is a member of the PROVENANCE_AUTHORIZER_ROLE.
- The proof is valid according to the Witness contract.