Skip to main content

Shridhar Jayanthi

Do we have to blockchain twitter?

2 min read

I just saw a blockchain'd version of twitter called peepeth. The idea is interesting: a smart contract deployed on Ethereum keeps track of links to tweets, and the tweets themselves are stored on IPFS. The promise is that of decentralization and, thus, that no one will be able to censor. I don't know the details for implementation - it's odd that they claim no one can remove or delete information when the blockchain is not storing the data. The reason stated for storage of links, instead of storage of the tweets themselves, is that it would save on Ethereum costs, which makes sense.

In that model, friending, unfriending, and posting will have costs too. This is a weak criticism though. If you were doing a blockchain twitter, it would be ridiculous to expect a different way to go. At best, one could criticize the fact that the cost of sharing messages becomes susceptible to fluctuations in the Ethereum exchange rate. But hey, you can't do a DAPP on the blockchain and complain about the costs of using a blockchain. And there are some advantages - the discourse is likely to become more civilized in the internet if the content producers have to pay for spreading their ideas.

The bigger problem for me is that blockchain computation is one in which the memory is never really erased. The blockchain remembers everything, making it really hard to delete things from the internet.* This is a feature in many, many applications, but for a social media application, it's a bug. People need to be able to remove things they said. The right to be forgotten is actually important.

*There are ways of making this possible. If the data stored is encrypted, can be accomplished by deleting the key. With a public/private key infrastructure, every message stored can be signed by the author, committed as encrypted and the public key may be shared.**

**The known markdown plugin doesn't support footnotes. I am new to Markdown, and don't know if footnotes are part of the spec or not. But this is something that needs to be implemented.