We were inspired by the IPFS technology to build a proof-of-concept solution to the challenges presented to society in a crisis. There are many reasons that centralized networks will fail in the event of a major crisis. Malignant actors may attempt to disrupt communications, and natural disasters may cause major outages in networks. Our solution makes it possible to reliably disseminate accurate information in a time of crisis.
What it does
Our solution is a distributed, resilient crisis information solution built on-top of the Interplanetary File System (IPFS). Since IPFS is a content-addressed system, all data added to the system is cryptographically secured, and the Interplanatary Name System (IPNS) can be used to sign dynamic content while still ensuring the sender remains the same using private-public-key signing.
In our proof-of-concept implementation we show public reports from the police and display a map of shelters. Of course, any type of information that can normally be displayed on the web can be displayed this way. We have also developed a prototype command line tool to make it easier to publish static sites to IPFS/IPNS.
How we built it
We utilized a static site generator (Hugo) to generate a site which displays data from the police, and a map which was generated using OpenMapTiles.
Challenges we ran into
- We faced some challenges in handling map data and placing that on IPFS
- Slow resolution of sites to the Interplanatary Name System (IPNS, roughly DNS for IPFS) slowed us down a bit
Accomplishments that we are proud of
We were able to construct a proof-of-concept showing-casing how IPFS can be used to present relatively complex data.
What we learned
We learned a lot about IPFS/IPNS, OpenMapTiles, and static site generators.
What's next for Resilient, distributed crisis information
We would like to encourage everyone, developers as well as public agencies to support the IPFS project to ensure that the future will be distributed rather than centralized.
We would like to acknowledge Johan Hermansson for being part of developing this idea prior to Hack4Swe but who could unfortuneatly attend the event, and Anders Ekman for taking late night phone calls with questions about SWEREF99.