Hacker News new | comments | show | ask | jobs | submit login

Firefox recently whitelisted a bunch of p2p protocols so that they can be used by browser extensions. One of them is the Dat protocol [0], which is similar to BitTorrent but has better support for mutable data and random access [1]. It's far from being "baked in", but it's a step in the right direction.

[0]: https://docs.datproject.org/

[1]: https://docs.datproject.org/faq#dat-vs




We always could do that with extensions since JS is turing complete and has access to the network. Webtorrent is a thing after all.

The issue is not technical. It's just a chicken and egg problem. Most won't use bittorent unless it's stupidely easy to do. Remember that the average user don't know what an URL is and doesn't open new tabs willingly. Since they are the majority, they drive cost and benefits, so we must include them.


> We always could do that with extensions

You couldn't, until Firefox 59. Before that, protocol handlers were not allowed to handle links to Dat/IPFS resources [0].

And while I agree with your comment regarding the chicken and egg problem, there are still some technical issues. As the shadowbanned sibling comment says, extensions don't have access to UDP/TCP sockets, meaning that you will need to run a gateway on your machine. See e.g. what dat-fox [1] does.

[0]: https://developer.mozilla.org/en-US/Add-ons/WebExtensions/ma...

[1]: https://github.com/sammacbeth/dat-fox


> You couldn't, until Firefox 59. Before that, protocol handlers were not allowed to handle links to Dat/IPFS resources [0].

You could, kind of, before Firefox 57 (or at least, at some point). Implementing nsIProtocolHandler/nsIChannel/etc. correctly was difficult (and probably not from JavaScript), and distribution problems meant nobody did it.


No, not nobody. OverbiteFF was implemented in nearly exactly that fashion, and 100% JavaScript.

https://addons.mozilla.org/en-US/firefox/addon/overbiteff/

But, not possible anymore (without tricks).


True, I remember looking into that and it was all a bit of a mess.


> and has access to the network

It does not have access to TCP or UDP sockets.




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: