proofs
, like verified time-based document watermarks on the blockchainproofs
as NFT/ERC721, which can be sent to a recipient addressproofs
default_admin
: contract deployer set as default, can be transferred; is allowed to grant/revoke all roles (admins + whitelists)proof_whitelisted
: add/delete proofs; admins are not automatically whitelisted, so that needs to be added if desiredconfirm_whitelisted
: add/delete confirmations of proofsproofs
grantRole()
as Proof_Whitelisted
using 0xf555e1ec80c58c7664dc73d872d3ef6e07bdd9c5ba6b3bf7a91ffaa413b8dac5
addProof()
using proofHash
(hash of a document, file, string, etc.), string
(any description of the hash) and the address
where the proofHash
shall be sent toproof
in your address) you can delete it by using deleteProof()
confirmation of proofs
grantRole()
as Confirm_Whitelisted
with 0x53eebd7fe83ace838d6b0a9d4f111237deb02359c62b25f1025613d537b2379b
confirmation of a proof
with addConfirmation()
using tokenId
proof
datagetProofData()
and/or getProofIdByHash() to get
proofHash, timestamp, description`getProofIdByHash()
proofHash
and get tokenId
getProofData()
tokenId
and get proofHash, timestamp, description
getProofConfirmationCount()
tokenId
and get confirmation count
getProofIdByHash()
proofHash
and get tokenId
isConfirmedBy()
address
confirmed a proof
/ tokenId
balanceOf()
address
ownsownerOf()
address
who owns a tokenId
safeTransferFrom()
address from
, address to
, tokenId
tokenOfOwnerByIndex()
address owner
, index (uint256)
// index is a 1..n numbering of proofs owned by the address. Use this to get all proofs
owned by an address, in combination with balanceOf
to get the counttotalSupply()
proofs
in existence; burnt/deleted not includedaddProof()
proofHash (0x{hash})
(hash of a document, file, string, etc.), string
(any description of the hash; length only affects gas), address
(where the NFT/ERC721 is being sent to); contract returns tokenId
; Fails if hash already exists; Requires being whitelisted; creates an ERC721 and a custom eventdeleteProof()
tokenId
, deletes proof/token; only the address holding a proof token can burn it, not any default_admin
or proof_whitelisted
addConfirmation()
tokenId
add confirmation of the data; requires being whitelisted; creates an eventtransferFrom()
address from
, address to
, tokenId
// do not use, unsafeapprove()
address to
, tokenId
) // give “address to" the right to transfer ownership of a proof the contract ownssetApprovalForAll()
address operator
, bool _approved
// gives "address to" the right to transfer ownership of all proofs the sender ownsgrantRole()
hash of role
, addresses ["0x...", "0x..."]
to grant certain role to certain address; hashes of the roles are const in the contract: Default_Admin_Role
with0x0000000000000000000000000000000000000000000000000000000000000000
, Proof_Whitelisted
with 0xf555e1ec80c58c7664dc73d872d3ef6e07bdd9c5ba6b3bf7a91ffaa413b8dac5
, Confirm_Whitelisted
with 0x53eebd7fe83ace838d6b0a9d4f111237deb02359c62b25f1025613d537b2379b
batchGrantRole()
hash of role
, addresses [0x..., 0x...]
to grant certain role to multiple addressesrevokeRole()
grantRole
only reverseproof_whitelisted
is multisig with council members (tbd)proofs
using hash and title; send it to a Swarm Council wallet; e.g proof (SCV_1587031154_Decision regarding_April_Voting_Period.md)
proof_whitelisted
of a contract put in place by councilproofs
and send proof
NFTs to masternode wallets