What is CryptoPunks? The Solution To Digital Art

2018-11-29 22:04:23 · 3521 views · 15 min read

Larva Labs is known for its very interesting apps, for working on projects like RoadTrip, a free to play game on IOS and Android, and Androidify, a small project that ended up allowing every user to look like an android. Then they tried their hand with the crypto world and created CryptoPunks a collection of 10,000 unique punk characters showing off the Solidity's capability and inspiring other projects at the same time.

When CryptoPunks first started the 10,000 strong punks were all free for anyone to snag and make their own. Now they are being traded and auctioned off by their owners, creating a limited edition pixelated art. We simply had to find out more. We invited Matt Hall and John Watkinson the founders of Larva Labs.

When you worked on Crypto Punks did you plan to make it blockchain art? What were your expectations when you started?

Matt: I think how it started was that John had been working on this character generator and we really liked where it was going. We weren't quite sure what to do with it, whether to make a game out of it or something else. Then it all happened during May / June 2017. We thought it would be interesting to make it a token on the blockchain and give it a uniqueness element. Back then non-fungible tokens didn't have a name, so we started working on modifying ERC20 contracts to do something that could do what the non-fungible token contracts do today.


John: As to whether we thought it was art at the time, we thought that people would see it more as a collectible in the traditional sense like collecting cards, such as  sports cards.


How did you manage to make Crypto Punks both ERC20 and ERC721?

John: Well, they're not really 721, as at that time 721 didn't exist. Someone later on submitted ERC721 to the standard process, based on Cryptopunks and a few other projects that had followed since, and made more generic so that it could apply to any tokenized items. Matt had added the functions and modified others in the ERC-20 spec so that it would represent individual and unique tokens rather than be a fungible token. So the code matches the specs of ERC20 as closely as possible, but not perfectly.  And, it's also not quite 721 because the standard didn't exist yet with the naming scheme that is enforced today, so our code is very specific to the word “punk”.


What was the process to create the code for Crypto Punks?

John: Really there was a lot of trial and error. We were just going through everything in ERC20, function by function, and asking "How would this work now?" We  eventually diverged from ERC20 fairly drastically.


There were definitely a few points where we became exasperated because the Ethereum community was in its early stages, even though it was only a year-and-a-half ago. There wasn't a lot of information about Solidity development, and not a lot of Stack Overflow answers yet. The only working examples at the time that were remotely close to what we wanted was ERC20 contracts and there wasn't a huge variety of completed projects to look at to see what worked.


Also, we ended up having a big bug in our deployed contract, which we can talk about later!

How are the punks stored on the blockchain?

Matt: We ended up finding out a solution after several attempts at this. The solution was to do a composite image with all the punks in it and then take a hash of that and store it in the contract. It is essentially an IPFS hash in the contract. We got there after trying to store images in the contract or somewhere on the blockchain itself. That proved basically impossible. We really weren't sure whether this was going to be acceptable to people or not; whether it felt to them that there was a strong enough connection between the image and the contract.  Now, thankfully, it's a standard but back then it was really something completely unknown.


Essentially you're telling me you have managed to be fully decentralized?

John: Yes, and, we had to accept the idea that once we release this thing, it would be completely decentralized and would not need us anymore. It’s a very different approach to software, but it seemed  really cool and that drove us to finish it.


Why did you choose punks specifically?

John: Well, I just like Punk culture in general, so that was the start of it. Blockchain Culture was really quite punky in its early days; it embodied the  punk ethos of “f*** the system, we're going to operate against the rules or against the norms.” Once we sort of had it together with Ethereum everyone went "oh yeah these are the Cryptopunks", just like the actual people who are developing the blockchain tech are considered Cryptopunks.


How does it feel not to have control of your creations?

Matt: It’s definitely an interesting experience, especially for me as a developer it was very different from how we normally did projects. Normally you put it out there and you iterate rapidly based on the feedback people give you. In this case it was a done deal which is what made it cool. It wasn't under our control anymore, it was truly not our project in a certain way, we couldn't make changes that people wanted and we weren't responsible for things that people did with the smart contract. It was definitely an interesting experience and that's one of the new things about blockchain and Ethereum specifically. Certainly, it runs counter to traditional software development, we don't really know how to write software without bugs so there are some interesting ramifications to this whole thing but it is pretty interesting in that way.


John: There's something really cool about the fact that this is no longer ours.  I mean during the recent show we had at a gallery in Switzerland, we wanted to include certain Cryptopunks because they look good together and capture a sense of the whole set. So, we had to go out and buy those Cryptopunks. As the creators, of course, we could have just made more images that looked the way we want. But those wouldn’t be Cryptopunks, they would be something else. So, it's kind of fun now that we are equal participants, we're just in this market like anyone else and we don't have any advantage over anyone else. That's really unique and that captures the spirit of what's new and exciting about blockchain. It's a cool feeling to see this perpetual motion machine that you can't affect but also nobody can stop. I suppose we could make a new smart contract with more Cryptopunks, but that’s not something we want to do.


Matt: And, even if we did, people at this point would say, “No, those aren't the real Crypto Punks,” even though we are the original creators of it. The real Crypto Punks are these 10,000!


John: Yes, you’re right, even if we made more, the community would probably reject them, as they should. And if we selfishly made new ones people would just say no, and you can never pass one off as the other. There's no confusing the new ones with the old ones because it would be a different contract and there's no way to make more in that initial contract.


What was the mistake in the Smart Contract?

John: It was bad. We wrote a lot of test cases and everything seemed to be working and ...


Matt: We should mention before we tell this story that built into this contract we also wrote in a marketplace so that you can offer things for sale. ERC20 is just focused on ownership, however, we also added in functions like "Offer for a price," "Buy something that is on offer" and stuff like that.


John: That's right, the history of it is: when we launched there were only 10,000 Crypto Punks, we kept 1,000 to ourselves, and made the rest available for free. The only cost for claiming a punk was the Ethereum transaction fee. For the first few days, only a few punks were claimed, mostly Ethereum enthusiasts and other developers. Then we got some press. I think almost a week later, overnight they were all claimed, things got competitive, and boom; they were all gone.


As soon as that happened, sales began as people started selling between each other because, as Matt said before, we embedded a market in the smart contract. If somebody wanted to sell a Cryptopunk for 1 Ether, and then somebody wanted to buy the Cryptopunk for that amount, they simply supplied the 1 Ether and got the Cryptopunk in exchange. The smart contract would essentially be the proxy for this transaction, it would not release the Cryptopunk until the buyer supplied the Ether. Anyways we had test cases for all this and yet the test case that tested the purchasing method had a matching bug. The bug was that rather than allocating the funds of the sale to the seller, it allocated it back to the buyer. You could just buy the Cryptopunk and withdraw the money that you spent, and the actual owner would get nothing. It was just completely backward and wrong. Insanely, when we looked through our testing, we found a matching mistake in the way we were testing, so that it seemed like it was working correctly.


Things were going so well up to that point, there was a lot of enthusiasm and people were claiming punks and being proud about it, sharing it on Twitter, all that good stuff that you would like to see. Suddenly the whole thing was busted, people were saying, "Hey, I sold the Crypto Punk for 1 ETH never got the money.” You know, it was a heart-stopper, we had this cool thing and now it was ruined.


What we had to do was migrate the contract, which means make a new contract and move all the data over to the new one. By data we mean we had to go back to what everybody claimed originally. Any sale that happened, we had to unroll because of course the money was not actually transferred. We announced this, and fixing the contract was not that hard, once you see the bug it was simple, but we had to migrate the data of 10,000 entries. To make matters worse it all happened during the BAT crowd-sale for the token. Which was a monster to us, because the way they did it was on a first to come first served basis. So right when we were ready to fix the contract, the entire network was completely slammed. I remember Matt was trying to run those things and it couldn't get through. We had to run like 200 of these transactions.


You had to pay to make the transactions go through?

John: Yeah we had to, it was either that or give up. The transaction fees were really high because the network was so busy, these were really large transactions. It took almost a week just to get the transactions through.


Matt: We couldn't afford to pay a higher gas price because then it would have cost thousands of dollars.


John: This whole thing was still pretty unproven and we weren't in a position where we felt comfortable spending a couple hundred grand to get this done. Meanwhile, we were worried because everybody was waiting for their Crypto Punks and everything was kind of on hold. Decentralized stuff requires the community to accept it so we explained the situation to everyone. We explained that we had a bug and that we were going to migrate, and hope that people moved to the new contract.

Then we finally got it through! It was quite satisfying because people jumped on it very quickly, activity resumed, and things went back to normal instantly.


No one was complaining and saying "Oh, I only accept the old contract", people were happy with the fixed version and we also added a new and important feature which was bidding.   Anyone can say that they are willing to buy a Crypto Punk for 1 Ether, and store the Ether in the contract. If the seller accepts the Ether then transaction would be made immediately. So now each Crypto Punk essentially became a true market.


Did all this happen before or after Crypto Kitties?

John: This happened quite a bit before. They came out during the fall three or four months after us.


There was no precedent for you guys at all.

John: Yeah, even before the bug, as we were getting ready to deploy, we came up with the idea that maybe we should have had bidding. Of course, it would add another layer of complexity and we were worried about having to fix the bugs that would be created from implementing bidding.


Matt: When we were fixing the bug we realized that we had to do it now, because if not it could never be added later. Of course now we are so happy we did it, but at the time we were like "oh God!"


John: Yeah, adding bidding really completes it, making it a full marketplace. You're absolutely right as well that there was no precedent for this stuff so we had to feel it out as we went on. Even though it was such a nightmare to have to fix that bug, in a way I'm glad we had the opportunity to do it, because if it had been working just fine, it would be a much harder sell to migrate the contract just to add another feature.


What happened after you fixed Crypto Punks?

John: Everything went really fast. One Crypto Punk sold for 10 ETH which at that time was worth $3,000. I think the highest price paid for a Crypto Punk is  $16,000 and that's the record now. There's definitely a real range in the market, and recently we saw a lot of transactions happening because ETH is down so a bunch of CryptoPunks that were previously very expensive are now affordable again..


Tell me about the gallery show, are you wishing you had a rent feature on Crypto Punks?

John: We've been speaking at a few events, both at blockchain and art events. We were quite surprised by the response that we got from the art community and it turns out that in digital art there's always been this problem of how you own digital art. It's easily copyable and you can't discern an original copy from a fake because it's all binary data. There is a lot of wacky stuff going on with digital art management in the art world. There was a piece of individual art that was highly valued and it would be kept in storage in a secure basement of some gallery or some Museum. There might be only 10 copies of this file in the world but nobody really knows whether someone has copied it, you just don't know. There was a lot of angst about this and without realizing it we had offered them a solution. Essentially we said “don't worry about someone copying the file because that's a natural thing that occurs with digital data.” You cannot force conventional art to be the same as digital art, rather we should just do the ownership on the blockchain.

Through speaking at a number of events about this topic we ultimately got invited to talk at Christie's Auction House in London where they had a whole day to just talk about blockchain in art. After that, we started talking to a curator of digital art in Switzerland, Georg Bak, and he said he wanted to do a blockchain art show in Switzerland and feature Crypto Punks in it. He was primarily interested in prints of the Crypto Punks. That's how we ended up doing a gallery show.

What does a blockchain art show look like?

John: We had to think about that for a while because we didn't just want to do prints and disassociate the blockchain side of Crypto Punks. We wanted this to be very much about the blockchain. We thought about a few different methods of how we can tie everything together and what we did was actually pretty fun. We made prints of a few Crypto Punks that we own then we transferred the ownership of the Crypto Punks to new paper wallets that we printed. The wallets would then be put in an envelope and sealed using the custom Crypto Punk wax seal. If you bought one of the prints you would get an envelope which would have the paper wallet of where the Crypto Punk address is stored on the blockchain.


The idea was trying to bring the traditional art world into the blockchain space. It would be too complicated to tell them to get on MetaMask and learn how to use it in a gallery show. Our way of presenting it kind of showed the middle ground between blockchain and what people are familiar with in the art world. The event was generally well-received and in fact, we sold all the Crypto Punks in the first hour of the show! It was quite a success and fun to see that it was resonating with the art world.


What is the biggest negative comment you received from the art world?

Matt: The question "Do you feel that this describes ownership of digital art?" is a debate that many still have. If you get to the other side of that and you make the leap, everything kind of works. Right now blockchain art really works on the blockchain as it stands today. That's definitely one of the topics that get discussed most often.


John: In the traditional art community, the jury is still out on whether this is the answer for digital art. I think it will eventually win out. I was trying to explain this to a few people in an art show.


Blockchain art works like this: You own a very expensive piece of artwork that is permanently on loan to a museum where anyone in the world can just look at it. But there's a little sign on the side that says on loan from You! That's how blockchain art works, anyone can see it, anyone can look at these files, but everybody knows there's only one owner and who that person is in the form of an address.  The reason I think it will win out is because it has such great properties once you accept and make the mental leap. You can now transact this artwork anywhere in the world, very rapidly and very safely without worrying about fraud or any other problem. All you have to do is pay a small gas fee even if the transaction is worth millions.

Last question what is your favorite Punk?

John: That's a tricky one, I don't even own this one but I'd love to!  There's also this one zombie that I really love.


Matt: Oh yeah that zombie is good! It's weird everybody has their own favorite, even type,  some people are really into the rare ones, others like zombies and aliens, some people like the accessories so they look for the rare accessories. I have a couple that I like so I'm trying to buy as many of those that I can, but I won't say the ones that I want because otherwise, people will just hold out on them.


John: It's okay I feel like there's no hope of me getting that Crypto Punk anyways so I'll just share it with you. I don't know if I'll ever get it from the person who owns it but as time goes by that's one of my favorites.


Who knows maybe they will read this and make a dream come true!


We definitely enjoyed our time talking with both Matt and John about Crypto Punks and their impact on the digital art world. Crypto Punks is a great example of a blockchain project working to make something very unique while pushing and experimenting the boundaries of blockchain technology. What makes their project even more inspirational is the fact that the project they designed and launched on the blockchain is no longer in their control and yet it is still being used and talked about today.


Crypto Punks is definitely a new twist as well as a new opportunity for both the art and blockchain world, it truly shows that the applications of blockchain technologies are only limited by our imaginations. Who knows what the next project that is fully decentralized, out of the creator's hands, and capable to shake up an establishment will be?


We definitely enjoyed our time talking with both Matt and John about Crypto Punks and their impact on the digital art world. Crypto Punks is a great example of a blockchain project working to make something very unique while pushing and experimenting the boundaries of blockchain technology. What makes their project even more inspirational is the fact that the project they designed and launched on the blockchain is no longer in their control and yet it is still being used and talked about today.

Crypto Punks is definitely a new twist as well as a new opportunity for both the art and blockchain world, it truly shows that the applications of blockchain technologies are only limited by our imaginations. Who knows what the next project that is fully decentralized, out of the creator's hands, and capable to shake up an establishment will be?


How to buy a CryptoPunks?

Step-by-step tutorial here.


By Alessio Casablanca
Comments Write Comment
Currently there are no comments for this article. Would you like to be the first to write one?