Asset Storage
-
Artworks are off-chain
The visual representation for each punk is neither stored on-chain nor on a decentralized protocol. The contract does not store the artwork, relying instead on the image hash for verification.
-
Metadata are off-chain
The attributes for each punk is neither stored on-chain nor on a decentralized protocol. It's impossible to verify the rarity of the punks on-chain.
-
A provenance proof is on-Chain
The smart contract contains a provenance proof hash. This hash verifies the image file containing all the punks, linking on-chain elements to their off-chain representations : ac39af4793119ee46bbff351d8cb6b5f23da60222126add4268e261199a2921b
Smart contract
-
Holder-token ID mapping stored in logs
The mapping between the holder and their token ID is not stored within the smart contract. Since the smart contract adheres to the ERC-20 standard, it solely maintains on-chain holder balances.
The mapping of IDs is recorded in the logs upon a transfer. Event logs enhance dApp interactions but are not essential for the core operations of the blockchain.
-
Market Rules are on-chain
The contract embeds market functionality, including offers for sale, bids, and withdrawal of funds, directly within its logic, differing from typical NFT platforms where such features might be external or modular.
-
History Market is logged
All the transactions are stored in logs of the blockchain. Event logs enhance dApp interactions but are not essential for the core operations of the blockchain.
-
Custom NFT Model
Unlike standard ERC-721 NFTs, CryptoPunks utilize a unique model tailored for their specific use case, including custom methods for transferring and selling punks.
Initial drop fairness
-
Centralized Airdrop
The initial distribution of CryptoPunks was controlled by the contract owner, allowing for a centralized allocation of punks before transfer capabilities were enabled. This phase was critical for establishing initial ownership.
-
Transfer Restrictions
Transfers of punks were not possible until the conclusion of the initial assignment phase, indicating a lock period where asset liquidity was intentionally restricted.
Our comments
-
One of the first NFT smart contract
We applaud the CryptoPunks project for pioneering the very first model of an NFT-type smart contract. This project marked the beginning of significant technical evolutions in smart contract development.
-
Optimized smart contract for gas fees
We also applaud the initiative for the on-chain storage of provenance proof within the smart contract, as well as the ingenuity of storing the mappings of IDs with holders in the logs to maintain a lightweight smart contract.
-
Clear documentation
We note the clear and concise documentation provided by the CryptoPunks team, which has been instrumental in understanding the image proof verification : here.