-
-
Notifications
You must be signed in to change notification settings - Fork 91
-
Dot | P2P web browsing for the space age
- HTTP ! HTTP/3 + HTTPS (https://https.cio.gov/) + DAT (https://www.datprotocol.com/) + Hypercore (https://hypercore-protocol.org/) + Tor (https://wiki.wireshark.org/Tor)
Internet technologies are growing faster than ever in today's day and age. A call for a more open web is more secure and open web is more prevalent than ever, and with emerging technologies such as P2P communication, it's the next big step for web browsing technologies as a whole. Until recently, basic storage of our files has been completely centralised to large corporations such as dropbox and google, forcing us to keep our files locked in one place. Now with protocols as such DAT rising, we have the choice to completely decentralise what we share online, whether that be a news article fighting against corrupt governments, documents corrupt entities want to censor, or information private companies don't want us knowing. The internet was meant to be decentralised, not controlled and monitored by major web organisations who hold a monopoly over the web as a whole.
DAT, Hypercore and Tor allow us to experience the internet as it should've been. Free from prying eyes, no dictatorship over open speech, and anti censorship. Introducing one of these protocols into Dot could be revolutionary for kicking off a new age of web technologies. The web is ours. Not Alphabet Incs, internet companies or others. Ours.
Dat transfers files over an encrypted connection using state-of-the-art cryptography. Only users with your unique read key can access your files, allowing them to download, view, and re-share your files. To update the contents of a Dat, users must have the write key. By verifying hashes during transfer, Dat makes sure no data is altered or corrupted. As long as the read key isn't shared outside of your team, the content will remain private, while the discovery key and IP addresses of peers sharing the Dat can become known. Read more about security in Dat.
(https://docs.datproject.org/docs/intro)
Implementation
Implementation of even one of these protocols will be trivial for integration with Dot. It could be approached a multitude of ways.
My implementation idea
Frontend:
- Hidden Firefox extension. Invisible to user and ships with browser by default. Toggle to disable DAT protocol in settings
- Parse DAT links and sends them off to the running P2P handler
- Once data is returned to frontend extension, it would handle rendering the content returned. This rendering could be done on an extension page to allow full control over content displaying
- Rendering HTML all handled by Firefox. Data just has to rendered using some Javascript and loading the HTML into the page (think of it as injecting into it's own extension page) to display the content
Backend (P2P handler):
- Written in nim for simplicity and performance
- Once request is asked by frontend extension, P2P handler contacts the DAT link, grabs data, and returns it back to frontend extension
- Sleeps until next request
I'll update this doc later tonight with specific implementation details, but for now I thought I'd at least get this out so we can get a solid start into planning out implementation of these modern protocols for Dot users to utilise. Leave comments with thoughts and implementation ideas.
Beta Was this translation helpful? Give feedback.
All reactions
-
👍 11
Replies: 3 comments 2 replies
-
That's a really interesting idea, I hope to see this implementation in Dot browser. 😍
Beta Was this translation helpful? Give feedback.
All reactions
-
❤️ 6
-
I am going to go on the record saying that we should implement something, but not Tor. Because a vast majority of users of Tor use the provided browser, it is really hard to fingerprint anyone. That means that any slight difference can be used to uniquely identify users, breaking the purpose of tor.
Beta Was this translation helpful? Give feedback.
All reactions
-
Yeah, a false sense of security is worse than no security
Beta Was this translation helpful? Give feedback.
All reactions
-
When will this be implemented? Or is this just theoretical?
Beta Was this translation helpful? Give feedback.
All reactions
-
Yes, we are still getting the essentials down first though.
Beta Was this translation helpful? Give feedback.