Black Mirror

Black Mirror

A Decentralized, Autonomous, Anonymous, incentive based, Censorship-Resistant Jornalism WebApp. Journalism is often censored and nor everyone has the technical skills of using the onion service (Tor)

The problem Black Mirror solves

We belive in freedom of speech ( which is freedom of press) and the privacy should not mixed with secrecy. Journalism is often censored and nor everyone has the technical skills of using the onion service (Tor) provided by Gaurdian, WSJ, etc to hide their identity while publishing true events and also getting incentives from it. We Believe in a censorship resistant world which is neither good or evil, as the boundaries between them are often blurred. So we built a privacy oriented Journalism app where anyone can post news.
We Built this project in a modular form. The backend is on IPFS using OrbitDB which indexes the news for us while storing minimal information. For the upload part we have write access only to us so that the DB is not bloated, while we can make our key public and everything is open-source. We used ZkBoB to built anonymous single use address system. Also to prevent sybill we made a staking system of Misleading/Reliable. We also used push protocol to enhance the UX as anonymity often comes with compromises.

Challenges we ran into

-We experimented various database management systems, in order to find the best suited one for our use case. We came accross too many errors while using different storage mechanisms like html import error in web3.storage.
-Orbit-db was a difficult task to tackle, but was the best for privacy and transperancy. We first didn't get how to upload out database to the live IPFS network, then we tried to make our own local IPFS node and then connect to global IPFS network.
-The zkBOB API was in its development stage, so first we ran into various errors while using it, but then we finally did it.
-The most difficult part was to integrate our three module - The news publishing and fetching, the incentive mechanism and the front-end.

Discussion