Featured Add-On: Push to IPFS/FIlecoin

Featured Add-On: Push to IPFS/FIlecoin

We at DocumentCloud, with support from the Filecoin Foundation for the Decentralized Web, are uploading documents for long-term preservation and distribution via the Filecoin network and the InterPlanetary File System (IPFS).

IPFS is a peer-to-peer distributed file system, meaning files are dispersed across many hosts, also called nodes. The Filecoin network is a system that offers incentives for sharing and storing data using a blockchain and tokens, including through IPFS. Both were created by Protocol Labs, an open-source software development company.

One key strength of the IPFS network is censorship resistance: because it is decentralized, authorities can’t target a single entity or location to take a file offline. It also offers a backup, so that your documents are much less likely to go offline, like in the case of a DDoS attack.

IPFS can also be a powerful privacy resource, because documents can be hard to trace back to their source. However, DocumentCloud is not an anonymous service – if you’re interested in anonymity, you can check out some other resources, like this guide from Reporters without Borders.

Another advantage is the ability to verify whether content has been modified. IPFS uses unique Content Identifiers (or CIDs) to verify whether each file has been tampered with. No matter where or how you obtain a document, if you know its CID, you can check to see whether it was changed.

The decentralized upload structure does have its downsides: it is much harder to remove a document if you don’t want it to be public anymore. When you upload a file to an IPFS node, any other node can copy and store it - so it will stay available until every node in the network unpins (or removes) it.

MuckRock is committed to working with our users to keep every DocumentCloud document live. That’s why we think it’s important to utilize the IPFS network where we can, and make sure our users understand the trade offs.

Since March 2022, we have uploaded nearly 800,000 documents using DocumentCloud’s Push to IPFS/Filecoin Add-On. If you use this Add-On on your own documents, we’ll use a service called web3.storage to push them to the IPFS/Filecoin Network. We will also add tags to your documents listing the CID and IPFS URL. The IPFS URL allows you to access the document through an IPFS gateway from the convenience of your web browser.

We get takedown notices regularly, and at times we’ve had to make tough choices about keeping documents online or our tools available. Some of these takedown notices are clearly spurious, but some are backed by law, and we work with our users and the legal system to keep those documents available to the public.

This past winter, MuckRock received a removal request for documents about the Association of Appin Training Centers and their “hacking for hire” services. The request cited a preliminary court ruling issued in New Delhi against Reuters for their original story about Appin, which has since been replaced with an editor’s note. With the help of the Electronic Frontier Foundation, we resisted this takedown request and continue to host these documents on DocumentCloud.

Similarly, in the past year we were advised by Netlify, the service that hosts some of our front-end code, that a document on DocumentCloud was in violation of a French counterterrorism law. The document, a copy of “Inspire,” published by al-Qaeda in the Arabian Peninsula, had been featured in Jeremy Scahill’s reporting on the Yemeni al-Queda branch.

In that case, we coordinated with the editorial team at The Intercept, who opted to make the document private rather than navigate an appeal in the French court system. But our alternative would have been to convince a court to keep the document live - or risk having all of DocumentCloud disabled.

Many takedown requests we receive are for journalistically important documents, which we want to keep available long term, regardless of the whims of state or corporate actors. We believe the IFPS network can help us with that goal.

Whether you want to experiment with an IPFS node, back up your documents for long-term preservation, or migrate them to a censorship resistant repository, the Push to IPFS Add-On is a service you may find useful. The Add-On is also open source, so if you want to fork or reuse the code for your own purposes, you can find it in this MuckRock Github repository.