Live data from Hacker News

WebTorrent

webtorrent.io

51–60 of 149 posts

Re: WebTorrent

#51

Earlier quoted context omitted.

I am on a 200GB capped residential LTE internet connection. Upload is included in that data cap. If this was surreptitiously deployed that would cost me money and generally be not cool.

Thankfully internet innovation doesn’t stop because a few people have terrible internet service providers.

While there are definitely some terrible ISPs out there, not every instance of someone not being able to use as much bandwidth as they want is a great injustice.

Sometimes it’s just sane network management. LTE networks in particular are limited in capacity. There are a bunch of different ways to limit use with different tradeoffs, and bandwidth caps actually strike a good balance between effectiveness and predictability. I have a lot of experience thinking about and implementing bandwidth pricing models, and I don’t have time to list all the options and their tradeoffs here, but you can suggest one you think is better if you want. Bandwidth caps cause users to limit their use, while still allowing a user to use the network heavily without penalty when they need to.

The real problem here is that OP doesn’t have an intuitive UX for limiting upload bandwidth to something he is comfortable with. Webtorrent then breaks his assumption that web browsing will not incur upload bandwidth.

Re: WebTorrent

#52
post #45

Imagine visiting a website and the ads are sent to you via webtorrent and your browser diligently reshares it. Not only do you suffer the ads, you unwittingly contribute your resources (power and bandwidth) to propagating them

Seems like ad blockers have a new field to look at. I was just thinking about what how people would feel about this when they’re on limited or metered bandwidth.

Sounds like an amazing browser feature to meter bandwidth.

Not only does it increase accessibility of the internet for low bandwidth users (they will use more if they know they won’t blow out their budget) but it will help shame the bloated websites with more user visibility into the issue

Re: WebTorrent

#53

I've always been very, very nervous about the privacy implications of this technology. Creating a persistent, public record of every IP that has ever accessed a particular video is a HUGE step backwards compared to current video/file distribution systems, and I don't think end-users correctly appreciate the trade-offs yet of making that sort of information public and joinable across domains / different activity (i.e.…

I think the good ol’ saying applies here as well that security through obscurity is not secure . Here like in other aspects it is best to secure users in such a way that if a christian school does a search like that and punishes students based on what they do in their free time (or worse their gender perception or sexual orientation) then there should be an easy course of action through the legal system for the stude…

You shouldn’t rely on security by obscurity, but you also shouldn’t resign from it. In the end of the day, if you have a password hidden somewhere, it’s also security by obscurity.

Re: WebTorrent

#54

Earlier quoted context omitted.

This isn't true. In 2017 appear.in published some numbers. They saw ~15% were not able to do P2P. https://medium.com/@fippo/what-kind-of-turn-server-is-being-... Reading your stackoverflow link my guess is that you aren't using STUN. A P2P connection can't be established without a NAT hole punch. Also if possible I would avoid the terms `Full-cone NAT` and `Symmetric NAT` they don't do a good job of describing what i…

> In 2017 appear.in published some numbers. They saw ~15% were not able to do P2P. https://medium.com/@fippo/what-kind-of-turn-server-is-being- ... Thank you for this. I guess P2P connectivity is more often possible than I thought! For the record, I have tried to form P2P connections with multiple different devices and multiple different network conditions, and although I have been able to achieve connectivity with P…

Tailscale has a really excellent explanation of STUN and NAT Traversal:

https://tailscale.com/blog/how-nat-traversal-works/

Re: WebTorrent

#55

Earlier quoted context omitted.

Along those lines, Comcast/Xfinity for example has a defaultish setting on their routers to leave an open guest network available. If I connect to my neighbors guest network and download game of thrones, will my neighbor get the nastygram, or is it smart enough to know it is a guest network? Should I connect to my own guest network (not that I have it enabled) if I want to do illegal things?

The xfinitywifi network requires you log your device into a Comcast account. It's not strictly a "guest network" for arbitrary devices, it's more of a roaming access to your own account. Pretty sure they can nail you even harder for piracy on this than on your own network where it might be someone else's device.

Not only does it require login, but it is not like they are giving you full bandwidth. Good luck to anyone trying to do a lot of high-bandwidth downloads over an Xfinity guest network.

Re: WebTorrent

#56
What is the particular reason WebTorrent is trending today? Anything new? I mean, its my main torrent software since a few years now

Re: WebTorrent

#57
post #19

Oh, huh, I first knew about this from Peertube, and I assumed they were the ones who had created it. It seemed like a really clever solution to the problem of "how do I host my own YouTube without needing a massive infrastructure to deliver video?" Really cool to learn that Webtorrent is a generic API that others can use. There seems to be a lot of good ways it can be used to decentralise the web again.

When exactly do you think the web was "decentralized"? The web the majority has ever interacted with has always lived on someone else's server. Self-hosting has always been rare.

It's weird seeing people talk about some mythical history where the web was somehow decentralized.

Re: WebTorrent

#58
Disclosure: I'm the author of WebTorrent.

It's so fulfilling to see WebTorrent still popping up on Hacker News after all these years. I started the project in 2013 and devoted most of my 20s to working on it, ultimately becoming a full-time open source maintainer. I started WebTorrent with the goal of extending the BitTorrent protocol to become more web-friendly, allowing any browser to become a peer in the torrent network. Within less than a year of starting the project, I got WebTorrent fully working (see https://news.ycombinator.com/item?id=8317441). And it worked _well_, beating many native torrent apps in terms of raw download speed and the ability to stream videos within seconds of adding a torrent.

WebTorrent never got as much attention as the cryptocurrency projects selling tokens throughout the mid-2010s, even though WebTorrent _actually worked_, and it had more users than almost all of them :) I was never tempted to add a cryptotoken to WebTorrent, despite many well-meaning friends telling me to do it and cash in. Nonetheless, WebTorrent served as an accessible on-ramp to the world of decentralized tech, along with other projects like Dat (https://dat-ecosystem.org/) and Secure Scuttlebutt (https://scuttlebutt.nz/), playing a role in getting people excited about decentralization.

But WebTorrent is more than a protocol extension to BitTorrent. We also built a popular desktop torrent client, WebTorrent Desktop (https://webtorrent.io/desktop/), which supports powerful features like instant video streaming.

We also built a `webtorrent` JavaScript package (https://socket.dev/npm/package/webtorrent) which implements the full BitTorrent/WebTorrent protocol in JavaScript. This implementation uses TCP, UDP, and/or WebRTC for peer-to-peer transport in any environment – whether Node.js (TCP/UDP), Electron (TCP/UDP/WebRTC), or the web browser (WebRTC). In the browser, the `webtorrent` package uses WebRTC which doesn’t require a browser plugin, extension, or any kind of installation to work. If you’re building a website and want to fetch files from a torrent, you can use `webtorrent` to do that directly client-side, in a decentralized manner. The WebTorrent Workshop (https://webtorrent.github.io/workshop/) is helpful for getting started and teaches you how to download and stream a torrent into an HTML page in just 10 lines of code.

Now that WebTorrent is fully supported in nearly all the most popular torrent clients, including uTorrent, dare I say that we succeeded?

Not only that, but we helped the JavaScript ecosystem a ton by writing hundreds of npm packages including buffer (https://github.com/feross/buffer), simple-peer (https://github.com/feross/simple-peer), and StandardJS (https://standardjs.com/).

It's been a long and winding journey, but I'm glad to have played a role in making WebTorrent happen. Huge shoutouts to all the open source contributors to WebTorrent over the years, but especially Diego R Baquero and Alex Morais who were critical to WebTorrent's success.

If you're curious what I'm up to now... I'm building Socket (https://socket.dev) with an awesome team of open source folks. And there's actually a WebTorrent connection, too! Before Socket, we built an end-to-end encrypted file transfer app, Wormhole (https://wormhole.app), using WebTorrent under-the-hood (Show HN thread: https://news.ycombinator.com/item?id=26666142). Like Firefox Send before it, security was a primary goal of Wormhole (see security details here: https://wormhole.app/security). But one area where we felt we could improve the security of Wormhole was in how we audited our open source dependencies.

Like most teams building apps with JavaScript, we had a large `node_modules` folder filled with lots of constantly-updating third-party code. The risk of a software supply chain attack was huge, especially with 30% of Wormhole visitors coming from China. As most teams do, we enforced code review for our first-party code; but as most teams do, we pulled in third-party dependencies and dependency updates from npm without even glancing at the code. It's too much work to read every line of code of all dependencies. But the status quo would leave our users open to supply chain attack and we wanted to do better for our users. We looked around for a solution to detect signs of attack and to analyze the risk of various open source packages, but none existed.

So we built Socket to help developers ship faster and spend less time on security busywork by helping them safely find, audit, and manage OSS. By analyzing the full picture – from maintainers and how they behave, to open-source codebases and how they evolve – we help developers and security teams to identify risk from malware, hidden code, typo-squatting, misleading packages, and more.

Re: WebTorrent

#59
post #12
post #5

Besides being an amazing technical achievement, I find this very interesting legally, as it further blurs the line between passively viewing content hosted somewhere and redistributing/actively sharing content. Have there already been cases of websites making their visitors unwitting peers, similar to e.g. JavaScript cryptocurrency mining?

Well spotted. In other words, WebRTC lets a site owner have their visitors distribute content directly to others without their knowledge or consent, basically making it impossible to argue that the distributor has intent to do so in the general case. That said, it was already highly questionable for legal application, since a torrent client can run on any machine connected to a home wifi, including guests and comprom…

Do countries other than Germany also have dedicated, famous [1] legal agencies sending out cease and desist letters and suing for damages (~900€) as soon as you accidentally seed a compromised torrent for even a few seconds?

[1]: https://de.wikipedia.org/wiki/Frommer_Legal

Re: WebTorrent

#60
While I absolutely love BitTorrent and make heavy use of it, I still am not sure if embedding it in a browser is a good thing. I have no doubts about the usefulness, but wouldn't a low priority daemon, or even a client on a minimal external system such as the smallest *Pi-like board, be more functional? It would also speed up peer discovery. As an example, I have my client as a service on my XigmaNAS NAS, so that it stays on even after all PCs in the house are turned off at night, and frankly I can't imagine going back to a traditional client or a browser, therefore a PC to stay turned on to work. ...Unless I completely misunderstood the purpose of this software.
Post reply on HN