This project introduces and demonstrates a technique by which an NFT project can
provide a secure way to store the assets of the project in a hot wallet. The idea is that after
the asset is minted the holder registers a send address to the contract that will be used for
the next send transaction. After registration, if anyone performs a send transaction on that
resource, it will be delivered to the registered address rather than the requested address.
This functionality helps address the problem of losing assets to a second person that is
able to sign transaction on the same address (hacked accounts).
The protocol requires action on behalf of the asset holder. After the asset is minted, it
should be transferred to the wallet in which it will be used. Once in that wallet, the user
needs to register the next location to where the resource will be sent. This should be a
second wallet owned by the same user that is not associated with the first wallet. Once a
send address is registered, it cannot be changed. The next time the asset is send, the
contract will send the resource to the registered address rather than the requested address.
This functionality basically means the contract will guarantee the delivery of the resource
to the registered address on the next send.
If a hacker gets control of the private keys (or they log into a wallet like Metamask), they
will not be able to change the registered location for the next send. And, if they try to
send it to their own address, that will get overwritten.
The minting cost will be 5 tfuel. The mint will be limited to 42 NFTs.
There are two images for this NFT. One is truther.png and the other is speeder.png. The
contract offers the user the ability to flip the NFT for 3 tfuel.
The main project metadata file is sendlock.json. This file will hold the hashtable used by
this project. nftGenCon.exe can be used to validate all files.
The sendlock NFT is a standard 721 contract with a couple additional routines and, of
course, the sendlock functionality.
There are no extra promises provided with this NFT. Only accounts that mint the NFT
qualify for receiving a version of nfGenCon.exe v1.0 for Windows. The offer expires 3
months after the first NFT is minted from this contract.