🌶Chipotle.cash – a Coinparty hackathon project by tealovers team
During Coinparty 2021 hackathon, we are committed to taking the Memo protocol on Bitcoin Cash to the new level by implementing a BitTorrent/WebTorrent based rich media layer.
The power of Memo and a missing jigsaw piece
When Memo protocol was introduced back in 2018 by u/arnold2040 it became quite clear the idea can reinvent the web as we know it. With the massive scaling capabilities our blockchain offers, Memo fuses the economic and social interactions into a new paradigm that has never existed before. As Mike Masnick had envisioned back in 2015, the future of the web is about protocols, not platforms. We believe Memo marks the beginning of this future.
However, with all its beauty and simplicity, Memo lacks a way to share rich media content. We believe this forms a bottleneck for adoption – every time a member wants to share something heavier than 200 bytes, the reliance on centralized solutions is necessary. This not just weakens the system but also worsens user-experience to a great degree.
We propose to utilize a BitTorrent file-sharing network to form a media layer on top of Memo. While not a new idea per se as people have been playing with posting torrent magnet links in transactions for quite some time, to our knowledge, nobody has yet provided a meaningful implementation.
Using blockchain within the context of Memo transactions to store torrent hashes provides several neat qualities to every piece of content published on the Memo network.
First of all, the whole media layer is as open and permissionless as the underlying Memo protocol. BitTorrent network is capable of functioning without any central points. That said, even the most simple and primitive implementation where end-users are not participating in seeding makes it possible for anyone to archive the content and run the mirror independently.
To better understand the above piece, let's break down the case with the Yours.org platform. Yours pioneered the Bitcoin Cash-powered monetization for independent blogging and achieved great success in attracting content creators from the community. However, during the 2018 split, the platform switched to Bitcoin SV, and left the Bitcoin Cash community with nothing. Read.cash has filled the space, but chances are pretty high that the platform's interests will go against the community's interests some time into the future.
Now, consider that we have a blogging platform where each blogpost is a Memo action that carries an info_hash payload pointing to content in BitTorrent. This way, any existing Memo implementation can easily be tweaked to download the content and display it as a part of a Memo action. Furthermore, by integrating WebTorrent – a BitTorrent implementation that supports peering between web browser nodes – to Memo web clients such as memo.cash and member.cash, we can leverage the power of community to extend a content's lifecycle to a potentially indefinite period of time. In such a setup, every 'like' action is a commitment to store content for a prolonged period (e.g., defined within peer's cache policy).
The layer does not guarantee that content will be stored forever, but this is actually a good thing – peers will form a kind of a social 'filter' that will optimize the network to only store content collectively perceived as valuable. This contrasts with centralized platforms that commit to storing 'everything' and thus tune the signal:noise ratio close to zero.
Why not IPFS?
The layer we are designing will function with any content network, including IPFS, but we only focus on delivering the BitTorrent based implementation. We believe IPFS is not as good as advertised and not quite suitable for the Memo protocol. There is no much difference on a lower level between BitTorrent and IPFS, and in some way, IPFS is more advanced. With this comes several drawbacks that could prevent the layer from bootstrapping successfully.
First, IPFS is almost completely incompatible with web browsers. It's not a web standard and will unlikely become one in the foreseeable future. Among all popular browsers, only Brave experimentally supports IPFS. This makes it a norm to rely on centralized gateways, which become major points of failure. On the other hand, BitTorrent for the web relies on WebRTC – a standard implemented in every browser, including the most restricted and crippled Mobile Safari. Web peers will still rely on trackers during the early phase but will continue functioning as independent nodes. Also, as info_hashes are inscribed in blockchain, it's possible to replicate trackers in a much faster manner than with the original BitTorrent design, and trackers are thus not points of failure per se.
Second, BitTorrent is a truly battle-tested technology, while IPFS is still quite immature. More importantly, IPFS is designed to be monetized with Filecoin. While a good thing in itself, we believe it's not economically wise to rely on an external cryptocurrency network. It would be much better to have native Bitcoin Cash-based monetization for BitTorrent akin to what JoyStream pioneered some time ago. The tech is here, and we would only need to put a few more pieces together.
With all that being said, we do believe it's much better to invest time in proven tech.
The ability to store rich media in the Memo network would open huge mass adoption possibilities for Bitcoin Cash. For example, we would be able to bring honest and fully open alternatives to onlyfans-like services to life and serve other innovative communities with free, permissionless, and censorship-resistant social media access.
However, a journey of a thousand miles begins with a single step, and this step should be careful. Chipotle.cash will form a permissionless registry for CHIPs – Bitcoin CaSH Improvement Proposals. Memo actions from within the dedicated topic will be parsed to fetch the markdown formatted articles from the BitTorrent network. The resulting CHIPs will be rendered on a simple web app. This will enable discussions to stay on Memo and be accessible from the memo.cash and member.cash. We will open-source the code alongside the detailed protocol specification to allow independent mirrors to form in the easiest manner possible.
We believe that by sharing ideas and discussing Bitcoin Cash innovation in a fully permissionless way, we can bootstrap a migration from centralized social networks such as Reddit to a place that will always be free from corrupt moderation practices.
Existing projects we utilize to run the project
- BlockPress – A Memo protocol implementation
- Transmission – BitTorrent client
- transmission-ng – interface to transmission BitTorrent client
- Pandoc — a document converter