News for hackers. Stuff that matters.
Re:Decentralized Naming and Certificate Authority by troquerre on Wednesday February 12, 2020 @01:08PM (#22311101)
- 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 by danShumway on Wednesday February 12, 2020 @01:38PM (#22311414)
If I'm understanding you, the 52 week release is a one time thing, not a continual thing? So it's not that names will be continually trickle-released it's that for the next 52 (51) weeks, they'll be trickle-released, and then everything will be out there and this will work just like normal domain registration? I was under the impression that the trickle release was just how registration would work in general.

That doesn't seem to me at first glance like it's going to be that much of an improvement over squatting, but again, I get that there are multiple goals here worth accomplishing. And it is a much simpler system than needing to go into a queue to register a domain.

Just to make sure I understand -- am I correct in saying that Handshake is not designed to solve domain name scarcity, more to decentralize it so that an organization like ICANN can't rent-seek on top of that scarcity?

Re:Decentralized Naming and Certificate Authority by rasengan on Wednesday February 12, 2020 @02:38PM (#22312014)
Additionally to combat squatting, to register a name, one needs to go thru a Vickrey auction and bid on a name after it is released. Bidding continues for about 5 days thereafter and there are 10 days to reveal the bids.

The winner pays the second highest bid.

Re:Decentralized Naming and Certificate Authority by danShumway on Wednesday February 12, 2020 @04:39PM (#22313085)
Wait, what?

That seems like it could have a lot of unintended consequences, to the point of invalidating all of the benefits from having tons and tons of new names. I have a lot of follow questions about the potential for abuse.

From the squatter/troll angle: if I'm a troll or I'm trying to steal good names before anyone else can get them, what stops me from monitoring the current auctions and stealing domains by bidding above the statistically most likely market price for that domain? Users have to guess in advance how much a domain will cost?

From the decentralized, anti-corporate angle: if I'm Comcast, what stops me from monitoring the current auctions, and blocking anyone who tries to register any variant of `comcastsucks`? With the current system, that's prohibitively expensive since there are tons of variations that I'd need to preemptively register. With the system you're describing, it costs me nothing until someone tries to register a domain that triggers my Regex, and then I just outbid them and block any domain that criticizes me, because as a company I'll always be able to trivially and safely outbid any single person.

From a general user angle: does this mean I have to wait 5 days to register a new domain? With the current system, I can set up a brand new website in a single evening, and all I need to do is find a name that isn't taken yet -- I don't have to worry someone else will see what I'm doing and snipe my purchase. With the system you're describing, I have to wait 5 days to discover whether or not I'm actually going to be able to buy the domain I want at all, and if I don't get it, then I need to repeat the entire process?

I have so many questions about this system now. There has to be something you're leaving out here. I can't imagine using a DNS registrar that made me wait 5 days to discover whether or not I got to have the domain, or that made me guess how much it would cost at the risk of losing the entire domain. If there aren't other details you're leaving out, that's a strictly worse system than what we have right now.

Re:Decentralized Naming and Certificate Authority by troquerre on Wednesday February 12, 2020 @04:49PM (#22313174)
The auctions are semi-blind. You bid, and can optionally add a blind to your bid. The network sees your combined total bid + blind, but won't know your true bid value until the reveal period. So if you want to guarantee you win an auction, just make sure your bid is greater than the highest existing total.
Re:Decentralized Naming and Certificate Authority by danShumway on Wednesday February 12, 2020 @05:00PM (#22313264)
> if you want to guarantee you win an auction, just make sure your bid is greater than the highest existing total.

How do I do that if other people's bids can contain blinds? How do I know what the highest existing total is -- I still have to guess everyone else's total, right?

And even if the auction wasn't partially sealed, even if it was completely public -- I don't see how my concerns above would go away. Isn't it still possible for companies who can trivially outspend anyone else to do regex matches on all of the current auctions and dominate the entire domain space? Don't I still need to wait 5 days to do something that I can do today in less than an hour?

Learning about auctions pretty much entirely, just by itself, took me from thinking, "it's not perfect, but it still seems almost universally better than what we have" to, "no, this would be a massive downgrade from our current system." I thought the point was to stop rent-seeking, not to implicitly allow every fortune 500 company and government to personally vet/block every single domain transaction.

The auction system being described here doesn't just focus on other problems other than name scarcity, it makes the name scarcity problem way worse. If I'm China and I want to censor this system, what stops me from monitoring the auctions and throwing a measly $2000 at any domain name that sounds critical of me in any way? What's the point of having a distributed or decentralized protocol in that scenario?

Re:Decentralized Naming and Certificate Authority by hpfr on Wednesday February 12, 2020 @07:26PM (#22314273)
> How do I do that if other people's bids can contain blinds?

You're right, you can't. I'm not sure what "just make sure your bid is greater than the highest existing total" means when blinds are in the mix.

> If I'm China and I want to censor this system, what stops me from monitoring the auctions and throwing a measly $2000 at any domain name that sounds critical of me in any way?

Nothing, but there are quite a few(TM) domain names. Everything that isn't an ICANN TLD (or a future ICANN TLD, I guess--not sure how that would work) is available. I don't think a government could reliably censor all objectionable TLD's.

Furthermore, once you own a Handshake TLD, you become the registrar for that TLD. So every subdomain is yours to sell, no auction necessary. So as long as someone purchases some simple TLD and is willing to sell you some relevant subdomain, you're good. It's not really necessary to have censorthis/; you can just buy censorthis.sometld. Of course, then you do depend on the owner of sometld as a registrar, but that's not very significant given the space of TLD's available. It wouldn't be difficult to find a new registrar if something happened.

Re:Decentralized Naming and Certificate Authority by danShumway on Wednesday February 12, 2020 @10:02PM (#22314991)
> Nothing, but there are quite a few(TM) domain names. Everything that isn't an ICANN TLD (or a future ICANN TLD, I guess--not sure how that would work) is available. I don't think a government could reliably censor all objectionable TLD's.

If I understand correctly (and maybe I don't), the domain being auctioned is public. With the current system, a government can't censor everything because doing so would require them to pre-emptively grab the entire space, which is economically infeasible. With public auctions, my understanding is they only need to pay attention to the domains someone actually tries to register. So if I'm China, I don't need to preemptively register the entire space of `/tiananmen/g`. I only need to download the list of auctions every day and run a regex on that finite space.

Of course, they can't restrict subdomains, so maybe that allows people to sneak stealth TLDs through without getting censored. But (see below) it seems like actually owning TLDs is really important, so I still need to navigate a space where every troll and every government and every fortune 500 company is given the opportunity to snipe every TLD I want, and it seems like that's at least an opportunity for wild price increases on TLDs.

> Of course, then you do depend on the owner of sometld as a registrar, but that's not very significant given the space of TLD's available. It wouldn't be difficult to find a new registrar if something happened.

Can you expand on this?

Right now, if I lose a .com domain, I can find a new registrar and set up a different domain. But all of the links to my current domain will be broken, and if I'm using that domain for email I'll have lost control of all the emails being sent there, and I'll basically be starting over from scratch.

Part of the reason I've avoided "novelty" TLDs like `.tech`, `.party`, `.amazon`, etc... in the current system is because many of them are completely privatized. The owners of those TLDs can raise prices however they want, and can kick anyone off for any reason. And if I'm tying my entire business or (even worse) my entire online identity to one of those domains, that would catastrophic.

If a registrar behind a top level Handshake domain goes bad, is there a mechanism where I can switch registrars and keep myself as a subdomain of the original TLD? If not, won't I be in the same position?

The thing that's attractive to me about Handshake is owning TLDs -- being able to own something that can't be arbitrarily taken away from me by a centralized authority. Otherwise I haven't gained anything as a user over the current system, I've just lost any regulatory price caps that might exist.

----

I guess I can register an innocuous TLD like `danshumway`, hope the trolls don't notice and outbid me, and then use it as a private TLD I control. Realistically, to preserve privacy and avoid linking everything I do together under a single identity, I'll likely want at least 4 or 5 TLDs, possibly more. I don't think I'm atypical there. Anyone who's using a domain for their email or an identity server will want to own that TLD. Is the system designed to scale to that?

Direct question to the people behind Handshake: what do you expect the average cost of a generic 2-3 word TLD to be? A while ago I registered the domain `animalsareignorant.com` for a personal art project I'm still working on. It costs $10 a year. Are we expecting a TLD like `animalsareignorant` to cost $100? $1000? A million? I assume you've done market research on this and you're not just jumping in blind.

This isn't a theoretical question. When (at this point, if) I ever start using Handshake, at some point I'm going to register a TLD and you're going to ask me how much I want to bid for that domain. So if you expect people like me to be able to guess on the spot what the market value of a TLD is, you need to be able to point to some kind of measure that will keep that guess from being a purely blind shot in the dark.

Re:Decentralized Naming and Certificate Authority by Ajedi32 on Thursday February 13, 2020 @10:24AM (#22318380)
> With public auctions, my understanding is they only need to pay attention to the domains someone actually tries to register. So if I'm China, I don't need to preemptively register the entire space of `/tiananmen/g`. I only need to download the list of auctions every day and run a regex on that finite space.

Sure, but since it doesn't cost anything to lose a bid (I believe?) if anyone tried that it'd be pretty easy to force them to spend a _lot_ of money buying domains that they have no intention of using. It also wouldn't stop anyone from registering `tiananmen.massacre`, as you noted.

Re:Decentralized Naming and Certificate Authority by rasengan on Wednesday February 12, 2020 @09:36PM (#22314859)
> Don't I still need to wait 5 days to do something that I can do today in less than an hour?

It takes months to years to get a tld today with a 185k deposit and no guarantee you'll actually get through the process [1].

[1] https://newgtlds.icann.org/en/applicants/global-support/faqs...

Re:Decentralized Naming and Certificate Authority by danShumway on Wednesday February 12, 2020 @10:21PM (#22315066)
Sure, but owning my own TLD is the only value proposition I see in Handshake. If only big companies can register TLDs, and if I end up renting subdomains from another registrar, what is the benefit to me that the TLD system is decentralized?

I can already rent `.com` subdomains today, and they have price caps. The worst case scenario for a `.com` domain right now is that the current ICANN proposal goes through and the cost jumps up to maybe $20 a year. That's nothing compared to the rent-seeking that can happen on a purely privatized TLD with no oversight.

As a user, buying a subdomain controlled by a single source is not decentralization. I'll still have a single company that can do anything it wants to my domain, and by extension, anything it wants to my online identity. It'll still be trivial for governments to pressure that company into transferring my domain. I won't get to manage my own keys or set up my own security. I won't be able to renew the domain for free.

Unless I'm missing something really big, the only benefit I see from Handshake is democratizing TLDs for ordinary, everyday people.

Re:Decentralized Naming and Certificate Authority by sdtsui on Thursday February 13, 2020 @04:44AM (#22316484)
> I can't imagine using a DNS registrar that made me wait 5 days to discover whether or not I got to have the domain, or that made me guess how much it would cost at the risk of losing the entire domain.

That's fair - may help to compare this with the current tld system, not just the regular domains (x.com). Right now, getting a new tld takes months and a six figure investment. Here it is 5+ days.

After that tld is claimed, it's up to the owner to administer it and make a profit on selling the names, or not.

Re:Decentralized Naming and Certificate Authority by troquerre on Wednesday February 12, 2020 @02:23PM (#22311859)
You are correct in that Handshake is trying to decentralize DNS more so than solve the scarcity nature of naming. That said, Handshake will increase the supply of TLDs by multiple orders of magnitude so the names do become less scarce overall.
Re:Decentralized Naming and Certificate Authority by wtmt on Wednesday February 12, 2020 @01:50PM (#22311535)
> 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.

When talking about email alternatives here, I see a lot of comments strongly suggesting owning a custom domain and using it. If the domain cannot be renewed and kept alive in advance for a few years, the bus factor of being the only technical person in the family could mean that they lose their emails very soon (worst case scenario where something bad happens to the technical person towards the end of the bi-annual period just before the renewal).

“You need to submit a transaction to prove you still have access to the private key” — “transaction”? “prove”? “private key”? There’s no way this is going to last if people use these domains for emails and mailboxes for their families. At least with the conventional system, it’s easy to note down simple instructions to go to a site, pay and renew. This system seems better suited for institutions that may be able to handle it (though it could be argued that even large companies fail in trivial ways, like it happened with a certificate expiry with Microsoft recently).

Re:Decentralized Naming and Certificate Authority by danShumway on Wednesday February 12, 2020 @02:17PM (#22311796)
I'm not affiliated with Handshake in any way.

But my assumption is that there would still be registrars that can handle this sort of thing for you, in the same way that a service like Netlify can handle setting up a static site server and renewing LetsEncrypt certificates. It's just that if you wanted to do it manually, you could.

Re:Decentralized Naming and Certificate Authority by troquerre on Wednesday February 12, 2020 @04:23PM (#22312959)
Exactly. We built a registrar for Handshake (https://namebase.io) and our service will automatically handle renewal transactions. That said, anyone can still manage their keys and submit renewal transactions on their own if they want to do that, similar to how you can use Coinbase vs a desktop wallet for Bitcoin.
Re:Decentralized Naming and Certificate Authority by wtmt on Wednesday February 12, 2020 @11:46PM (#22315391)
Thanks. I’m still wary of the bi-annual renewal requirement. If I register a name today, can I renew it one year later from today to stretch it to two years from then (which would be three years from now) or would I be able to renew it for two years only near the end of the two year period? In other words, can I perpetually have it renewed to approximately two years in the future at all times? If not, that brings the same risk I talked about in my comment above (where families may not have enough time to figure things out and handle it).
Re:Decentralized Naming and Certificate Authority by withinboredom on Wednesday February 12, 2020 @11:59PM (#22315433)
It's not even that. It reads like it's a cliff. Currently under ICANN, if you fail to renew a domain, you have ~90 days to figure out that you didn't renew it before it's lost forever. Even if it's scripted to renew, it could fail for any number of reasons (lack of fiat currency, transient network failures, lack of crypto-currency, etc).
Re:Decentralized Naming and Certificate Authority by wtmt on Wednesday February 12, 2020 @11:23PM (#22315328)
Thanks. That makes sense. For some reason I didn’t think of concentrated service providers because I was too focused on decentralization (and to think of it, such concentrated providers are everywhere in decentralized platforms).
Re:Decentralized Naming and Certificate Authority by xoa on Wednesday February 12, 2020 @02:50PM (#22312128)
>- 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!).

Can you clarify on what "names" means here? Common names, dictionary, every single name that exists in current DNS? If someone has a unique non-word domain right now do they have to submit that? Wait a year?

>- 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.

That sounds decent on the face of it but it depends on how automated that can be made, what the window is like, etc. Right now I can renew every 10 years, or do so for 10 years and add on more time every year so that if I ever forget or have trouble once I still have a huge window, and have automated billing/warnings etc. Not free, but pretty reliable. If namebase.io or the like are needed to handle this by most users I also don't see how decentralized that can actually end up being though I guess the infrastructure can help. How are transfers to different registrars handled?

Re:Decentralized Naming and Certificate Authority by troquerre on Wednesday February 12, 2020 @04:51PM (#22313197)
Any name up to 63 characters (normal domain name characters, unicode gets converted to punycode) can be registered. The difference with Handshake is that users get to choose how they store their names. There's a spectrum of convenience and self-sovereignty. In traditional DNS the existing system makes that choice for you, whereas Handshake is creating a system where individuals get to choose based on their preferences. I place a lot of value on that freedom to choose.
Re:Decentralized Naming and Certificate Authority by xoa on Wednesday February 12, 2020 @05:06PM (#22313328)
>Any name up to 63 characters (normal domain name characters, unicode gets converted to punycode) can be registered.

But how does that square with the 52-week staggered release bit? If I wish to go register my domain right now, what happens? I don't see anything on namebase that would simply allow entry of an arbitrary domain, instead the "bid soon" seems to just be a bunch of dictionary words. There is an invitation to enter your handle or whatever, but does that mean all such handles and existing domains have been auto scanned already for entry? Or if I do a search, do you then take that and put it up for auction like so many typical registrars? This is a really basic thing and it's not clear.

>There's a spectrum of convenience and self-sovereignty. In traditional DNS the existing system makes that choice for you, whereas Handshake is creating a system where individuals get to choose based on their preferences. I place a lot of value on that freedom to choose.

No offense but this reads as boilerplate PR mush, it doesn't actually answer anything. Choose what? High level values are all well and good but they're not a substitute for nuts-and-bolts implementation specifics either.

Re:Decentralized Naming and Certificate Authority by rwiggum on Thursday February 13, 2020 @01:16AM (#22315690)
>But how does that square with the 52-week staggered release bit?

It's random, but distributed over 52 weeks because the hash function has psuedo-random output. It's quite clever, IMO. That's what "Determined by hash(name) % 52" means. You want to register "meow" today? Well, then check if hash("meow") % 52 <= currentWeekIndex

That's my understanding, but I haven't actually read any docs.