
Announcing Hyperswarm - bpierre
https://pfrazee.hashbase.io/blog/hyperswarm
======
pfraze
Hyperswarm is a Kademlia DHT with hole-punching builtin. It's designed to
arrange p2p connections. For context as to why you'd want this, when you
create a p2p connection (like with WebRTC) you typically need a "signaling
server" to arrange the connection. Hyperswarm replaces that server with a
distributed signaling system. We built it for the dat protocol, but it's
reusable in a lot of other contexts. (In fact, the creator of the Manyverse
mobile app which released yesterday [1] has voiced an interest in using to
Hyperswarm [2].)

1\.
[https://news.ycombinator.com/item?id=18065567](https://news.ycombinator.com/item?id=18065567)

2\.
[https://twitter.com/andrestaltz/status/1044973699940659200](https://twitter.com/andrestaltz/status/1044973699940659200)

~~~
k__
First time I heared about such things was with Overnet many years ago, how
come it never caught on?

Or asked differently, what makes Hyperswarm better than Overnet? :)

~~~
pfraze
I'd be interested to hear other perspectives on this, but I think p2p
computing in general got skipped over when the cloud became a thing. DHTs have
had steady use in the p2p world though, including with BitTorrent.

DHTs are not without their problems. I know some other projects in our space
decided it wasn't tenable to solve the Sybil attack and so they created a
peer-routing system that bootstraps off of a blockchain. As brad0 pointed out,
there have also been performance issues in some deployments. We're going to
iterate on the security and performance and see how it goes.

~~~
kodablah
> I'd be interested to hear other perspectives on this, but I think p2p
> computing in general got skipped over when the cloud became a thing

There are few commercial benefits/incentives for a DHT provider and few
guarantees p2p tech can give a company requiring an always-on central
presence.

> I know some other projects in our space decided it wasn't tenable to solve
> the Sybil attack and so they created a peer-routing system that bootstraps
> off of a blockchain.

One approach is to do the S/Kademlia thing where you require all peers to
generate IDs (hash of a key) and require the it start with a certain number of
0 bits and then require another random X that, when xor'd w/ the ID, starts
with a certain number of 0 bits.

~~~
pfraze
> There are few commercial benefits/incentives for a DHT provider and few
> guarantees p2p tech can give a company requiring an always-on central
> presence.

There are quite a few commercial benefits! It's just that nobody's properly
banked on them yet. P2P distributes costs, simplifies configuration & ops, and
improves data privacy. For the politically-minded, P2P also distributes power
more equitably by moving business logic to user devices.

P2P will _not_ remove the need for always-on presences. You need a peer of
last resort. However, running a peer will be cheaper and easier than running a
server.

> One approach is to do the S/Kademlia thing where you require all peers to
> generate IDs (hash of a key) and require the it start with a certain number
> of 0 bits and then require another random X that, when xor'd w/ the ID,
> starts with a certain number of 0 bits.

We're looking at the crypto-puzzle approach, but there needs to be a work-
requirement asymmetry between honest nodes and attackers, which I think is
only the case with the Eclipse attacks and not the Sybil attacks. Otherwise,
the puzzles only provide security if honest nodes outspend attackers, and we
don't want to turn our userbase into mining farms.

~~~
tracker1
Beyond that, there's nothing stopping a commercial entity from ensuring that
there are enough baseline hosts in the DHT network from always on.

------
zygotic12
FreeNet

~~~
zygotic12
Sorry

