Live data from Hacker News

Decentralized Naming and Certificate Authority

handshake.org

11–20 of 128 posts

Re: Decentralized Naming and Certificate Authority

#12
post #7

They've somehow managed to make the two least optimal choices of language possible. The full node daemon, hsd, is written in Javascript. A non type safe language with poor package management for consensus critical code. We also have a light client, hnsd, which is written in C A non memory safe and error prone language for client code people would run on their systems as root.

I hope more implementations will become available. It’s a decent start, since the C based light client doesn’t expose any services.

Re: Decentralized Naming and Certificate Authority

#13
I know the handshake devs/maintainers are active on here. I've heard explanations from y'all about how handshake tries to solve the squatter problem. As far as I understand those explanations:

- Names are released at a trickle, meaning no one can buy all of them in one go.

- Names have to be constantly renewed (it's not a buy-once-keep-forever scheme), and (correct me if I'm wrong), you can't buy 10 years out in advance.

- A large portion of the initial names are reserved for Open Source developers, under the assumption that squatting won't be so much of a problem if they get first pick.

It's still not clear to me how this solves resource scarcity.

- If names are released at a trickle, does this mean I might want to register a domain for a project and there literally won't be any able available for me to choose from?

- If names have to be renewed on a year-by-year basis, is there any mechanism for archival? Won't this be strictly worse for link rot?

- If names are released at a trickle, doesn't this create an even greater incentive for both good and bad actors to grab them as soon as they become available?

I'm mildly interested in Handshake because based on very limited research it seems in general to be an improvement over what we have. I get that perfect is the enemy of the good, I would take almost any improvement over the existing system. But at the same time, I still just don't understand how this helps solve the squatter problem -- every once and a while I ask and get an explanation, and then think about it for a while and end up having more questions.

My perspective is, we want everyone to be online. We want everyone to have their own blog, we want people to be able to create websites on impulse. And we want resilient, long-term links that can serve as permanent addresses for content. The idea of combating squatters is based on the assumption that domain names will continue to be a scarce resource. But you fundamentally can't have domains be a limited resource that are difficult to hoard if you also want random/poor elementary school kids to be able to buy them.

Handshake talks about solving Zooko's triangle: human-meaningful, decentralized, or secure. But the way I originally heard Zooko's triangle explained to me (which may have been wrong) was: human-meaningful, secure, high-availability. Am I correct in assuming that in the second version, Handshake is optimized for human-meaningful and secure at the expense of high-availability? That domains will continue to be a limited, scarce resource that are susceptible to hoarding by people with lots of money? Or are there other mechanisms here that I don't understand?

Re: Decentralized Naming and Certificate Authority

#14
post #9
post #3

I don't see information on how names are handled. I know Zeronet started the entire .bit (which can be purchased with NameCoin). Are there reserved TLDs for handshake? Has ICANN said anything about .bit or .onion TLDs? I suspect TOR is big enough they won't touch .onion, but if they sell .bit, you'll then have some name overlap/conflicts.

The handshake namespace overlaps with the normal domain name system, but they reserve the top 100k domains for the current owners. My only concern is the long term sync between DNS and the old system. But I like the project and I think it’s a good way forward for replacing the current centralized DNS and PKI system

That's just an immediate non-starter then. Nobody is following all of these esoteric systems in the case that one of them gains marketshare, it guarantees that people will be phished and defrauded as soon as they use it. We had this issue with namecoin already, where people went and registered names of prominent people and tried to use that to solicit fraudulent donations.

Re: Decentralized Naming and Certificate Authority

#15
post #12
post #7

They've somehow managed to make the two least optimal choices of language possible. The full node daemon, hsd, is written in Javascript. A non type safe language with poor package management for consensus critical code. We also have a light client, hnsd, which is written in C A non memory safe and error prone language for client code people would run on their systems as root.

I hope more implementations will become available. It’s a decent start, since the C based light client doesn’t expose any services.

You can't say that a C daemon interacting with a network has no attack surface, especially as the thing runs as root.

It promiscuously makes outgoing TCP connections to an unauthenticated P2P network, so given enough time you'll eventually interact with an attacker if there is one.

Re: Decentralized Naming and Certificate Authority

#16

This has been tried. It's called Namecoin and it failed to get much traction. I suspect that using Bitcoin instead would improve adoption dramatically instead of creating yet another token. This can be done using sidechains or something similar.

It is not the same as Namecoin.

Handshake at it's core is a decentralized root zone of trust, the equivalent of ICANN. It's up to people building on it to create the registrars and such.

Previous experiments were for one TLD like .bit or .eth

With Handshake, every possible TLD is released over 52 weeks

Even more so, it works with existing DNS infrastructure and tools. All it is doing is allowing for all TLDs and resolving them (with preference for ICANN / HNS) where the overlap occurs. It was built from the start to exist along side today's systems.

Re: Decentralized Naming and Certificate Authority

#18

I know the handshake devs/maintainers are active on here. I've heard explanations from y'all about how handshake tries to solve the squatter problem. As far as I understand those explanations: - Names are released at a trickle, meaning no one can buy all of them in one go. - Names have to be constantly renewed (it's not a buy-once-keep-forever scheme), and (correct me if I'm wrong), you can't buy 10 years out in adva…

- Names are released over the course of 52 weeks. Determined by hash(name) % 52. So at worst the name you want to register will not be available until ~51 weeks from now (Handshake launched last week!). - Names have to be renewed bi-annually. You don't need to pay a fee, you just need to submit a transaction to prove you still have access to the private key. I don't think this will be any different than the existing DNS in terms of link rot. - I think the main thing names being released over time does is it allows for more people to find out about Handshake and start competing for the good names before they're gone. In an ideal world, everyone would know about Handshake at the same time, and so any name that is registered has the maximum competition for it. That world is not feasible but we can get closer to it by releasing names over time. - I've only heard Zooko's triangle described in the first way, which matches the wikipedia article on it https://en.wikipedia.org/wiki/Zooko%27s_triangle

Disclaimer: I'm the ceo of Namebase.io, we built a registrar for Handshake domains and exchange for Handshake coins (HNS), so I'm pretty bullish on Handshake.

Re: Decentralized Naming and Certificate Authority

#19

This has been tried. It's called Namecoin and it failed to get much traction. I suspect that using Bitcoin instead would improve adoption dramatically instead of creating yet another token. This can be done using sidechains or something similar.

Yeah, domain registration seemed like one of the few problems that potentially (lots and lots of handwaving around the details here) could actually have been a good fit for a blockchain solution.

- It's all public - It doesn't change that often - It is a data storage issue (as compared to processing) - On a per record basis it's pretty small (as compared to trying to store PNGs in the blockchain)

Re: Decentralized Naming and Certificate Authority

#20

This has been tried. It's called Namecoin and it failed to get much traction. I suspect that using Bitcoin instead would improve adoption dramatically instead of creating yet another token. This can be done using sidechains or something similar.

One of the issues with Namecoin is the issuance. You can register any name for a set price. This leads to easy squatting behavior and allows whales to buy up all the good names. Handshake built in mechanisms to improve the issuance of names (detailed in danShumway's comment) which is critical when you're working with the issuance of scarce, non-fungible assets. It's like drawing a comparison to bitcoin and bit gold. Both had the same idea, but the specifics matter.
Post reply on HN