-
Notifications
You must be signed in to change notification settings - Fork 10
Description
This is a Bisq Network proposal. Please familiarize yourself with the submission and review process.
Censorship Resistance with 1M5 Integration
Proposal for Bisq Network to integrate 1M5 into its communication stack, inter-node and when accessing remote Bitcoin, seed, and pricing nodes (or any public node).
Issue
Censorship is the suppression of speech, public communication, or other information, on the basis that such material is considered objectionable, harmful, sensitive, politically incorrect or "inconvenient" as determined by government authorities or by community consensus. Bisq, by providing a decentralized exchange not registered in any jurisdiction, is likely to come under attack by jurisdictions that consider it illegal.
Bisq runs its DApps as Tor hidden services using seeds to discover the Bisq network. Tor can be censored, as is done in China, by discovering entry nodes and blocking them by IP. Bisq gets around this by offering bridges to bypass the blocks but these bridges can also be blocked, same with VPNs. There are an estimated 7000 Tor nodes in operation today with about 2000 of them entry nodes and 1000 exit nodes. To block 2000 entry nodes is easy work as they are provided publicly and it's not a large list. But Tor is the ideal method to connect to a remote Bitcoin node as they normally are ran in the clear via the internet.
Opportunities
The Invisible Internet Project (I2P) is much less known and thus less targeted. It works somewhat similarly to Tor with a few differences. Where Tor shines when accessing clearnet sites privately, I2P shines accessing other nodes running I2P, e.g. peer-to-peer networking apps like messaging. I2P doesn't have entry nodes, every node is a potential entry node and there are roughly 65,000 I2P peers (all I2P peers by default are contributors to the network). I2P, like any application, has its vulnerabilities, but they are an active team working to constantly improve it. There is no known attempts to block the I2P network globally although when cellular towers are turned off or the user is behind a severely restrictive firewall (e.g. corporate), even I2P will not work as it requires internet access. This is where Bluetooth and WiFi Direct have become helpful.
Bluetooth and WiFi Direct support sending messages to nearby peers to share information. This has been used successfully in demonstrations in Hong Kong among others. But what they do not do is propagate out until a peer with internet access is available and use that peer to complete a request for an internet resource. Bluetooth and WiFi Direct are implemented using low-powered radios in phones and PCs and they're easily jammed (WiFi more so than Bluetooth). When in this position, shortwave communications is necessary.
Using the full radio spectrum is the next major advancement in commercial radio communications. Adding anti-jamming capabilities additionally will enhance censorship resistance further. But what happens when you're under serious jamming? LiFi is the next battlefield.
LiFi is short for Light Fidelity. It is basically wireless light communications. A dongle with a LiFi transceiver can send/receive light as data to/from another LiFi transceiver and the only method for blocking it is to physically block the light. Line-of-sight is required although some bouncing can be supported with degraded bandwidth and range.
Proposal
Routing using Tor, I2P, Bluetooth, WiFi Direct, WiFi, Shortwave, and LiFi to ensure censorship resistance is the primary mission behind 1M5 - Invisible Matrix Services. It's designed to support additional future networks like Nym if/when they prove to be helpful. When integrated with Bisq, 1M5 would ensure each node can find each other and maintain communications regardless how attacked, even with a national or global internet shutdown. It would also ensure the same level of censorship-resistance when accessing remote Bitcoin, seed, or price nodes...any public node.
Development would require the ability to expose 1M5 as a proxy to Bisq, testing the integration, then documenting it. In addition, a 1M5 Operator/Admin Role would be added to monitor and report on 1M5 effectiveness fixing any bugs that come up while providing an expected level of support.
1M5 is open source under the Unlicense 'license'.
1M5 currently can access the Tor and I2P networks and use Bluetooth. Additional networks will be integrated in the future.
This proposal will only seek to determine how best to integrate 1M5 resulting in a concrete integration project proposal with work breakdown and milestones.
Evaluation + Design + Roadmap + Project Plan: ~80 hours = 80M Satoshis
Notes
The best timing for this integration is unknown especially considering budgeting issues, although DEXs are beginning to get attention.
Resources
Keybase Conversations
- 12/14/2019 #chinese: @ff98sha verified I2P not blocked in Shanghai
- 12/14/2019 #chinese: @wiz perhaps believes bridges are good enough for now
- 12/28/2019 #general: @sunerok knows I2P amd favors it
- 12/31/2019 #dev: @mileschet likes 1M5 and has experience with Nym, a potential future integration
Future Projects
Future 1M5 projects will request contributions from Bisq along with other users of 1M5 to spread costs
across the user community. Some future projects include:
- using Tor when I2P gets blocked
- using Bluetooth to propagate out requests (implementation started but on hold)
- using WiFi Direct for request propagation
- using Shortwave/Full Radio Spectrum (large scope that will be broken down)
- using LiFi (some research completed, vendor relationship in place)
- Nym potentially