Token, Hash
Oct 3, 2021 

To buy an NFT is to buy a number in a distributed database. Owning a CryptoPunk is paying to put your wallet address beside a given token ID.

The above statement may be factually correct, but it does not capture the experience of owning a CryptoPunk. In my experience as an artist, NFTs are not just numbers in databases; they are immaterial symbols around which cultural, social and financial value transacts. The feeling of selling an NFT is not the feeling of putting a name in a database, but an experience of joy, validation, gratitude, and possibility. 

The desire for a CryptoPunk relates to the cultural position they hold; owning one signals an alignment with the culture of crytpo, a degree of wealth, and is an opportunity for self expression. But at a practical level, the anchor of this social and cultural utility is still a wallet address beside a number in a distributed database.   

CryptoPunks attempt to solidify this tenuous link by embedding an encoded image of the punks in their contract. This image circulates freely,  but the authenticity of any image can be verified by running the image through a SHA256 cryptographic hash function and comparing the output to the hash encoded in the contract

Artists such as Deafbeef have taken further steps to strengthen the link between token ID and artwork. Deafbeef encodes the parameters for each audio-visual artwork on-chain, and embeds the scripts used to generate the work as input data on each transaction. This provides the collector with all the information necessary to re-create the artwork, should the original render linked in the token be lost. 

Projects such as Loot take on-chain one step further, generating the output images on-chain as SVGs. This removes the need for a collector to run parameters through scripts, but introduces new challenges. Randomness is key to generative work, but standard random functions return a different value each time they are called. If typical random functions were used in on-chain generative projects, the image for a given token ID would change dramatically each time it was requested.

To solve this issue, on-chain artists generate their random values deterministically. Deterministic number generation relies on a the same cryptographic hash function which CrytoPunks uses to encode their reference image, and ideed the same hash function which secures the entire Ethereum network. A hash function always returns a consistent output for a given input, but importantly, any small change in the input will result in a vastly different output.

In the case of Loot, the random value that determines which asset a token is given is derived by feeding a hash function a piece of text such as ‘WEAPON’, and appending the token ID. This combined value, for example ‘WEAPON56’, is fed into the function and returns a value. The hash function will return the same value time WEAPON56 is input, but will be give a drastically different value if WEAPON57 is entered.

To become useful as an input, the hash value is divided by the number of items in a predetermined list of weapons and the remainder is used as the index to retrieve that token ID’s weapon. This approach can be applied to different lists of items, and if they are all of varying lengths, the random hash value will return different values for each list.

Autoglyphs, Loot, Artblocks et al. each input different values to their deterministic generation functions, but the central concept remains the same; use a stable input to return a stable random value. A token’s image is drawn anew each time it is requested, built from the token ID and it’s hashed value.  

In Token Hash these two values which constitute the generative NFT are laid bare. Stripped of visual and story, the tokens display the scaffolding from which generative images are constructed. In their raw form the numbers convey the core characteristics of the on-chain generative NFT; rarity, scarcity, symmetry, beauty.

By reducing the on-chain generative NFT to its core mechanics, Token Hash enables us to look beyond the visual to examine the social and cultural experiences these numbers generate. 

Token Hash public sale opens Thursday Oct 7 at 10 am EST.
1000 tokens will available for sequential minting, at a price of 0.02 ETH each.