This is what Namecoin[1] tried to do using the Bitcoin blockchain ten years ago without success. This gets reinvented about every year on top of every new blockchain, and none of these implementations have proven useful yet.
The main problem is that speculators become domain squatters, and buy all the popular domain names with the hope that they go up in price.
almost as if the existing structures, as flawed as they are, were created for a reason.
This is the worst part about any web3 project.
Though, there are some differences between namecoin, ens, and handshake.
Handshake lets you register the TLD while ens, namecoin, etc are limited to domain on a single TLD. The potential number of combination of domain + tld is enormous comparatively.
Secondly, handshake doesn't release all TLD at once. They are released slowly to stop speculators from gobbling up the initial supply.
I do agree speculation is a huge problem which happens in normal ICANN world as well. So nothing to miss except I can own the TLD for which I don't need to pay over 200k USD with chance of getting rejected from ICANN and ongoing cost.
I like the geo-libertarian approach to this. Said squatters should need to keep paying the market value of the resource in rent to remain in control of it. Thus removing the benefit of just squatting and require you to provide additional value on top of being the current owner to not lose money.
Should we let a bunch of black hats purchase google.com if they can extract more value from it than Google can (and are therefore willing to pay more for it than Google)?
a) On black hats, and presumably the risk of being tricked. Perhaps this is an orthogonal problem to who controls the name. Then again it might not.
b) On who the name is valuable for. You hint at there being a public interest in who controls the name. The free market response would be that in theory if the black hats can extract more value its because the invisible hand provides that value to the public in unforeseen ways. Or it may be that we just exchange one rent extractor for another, in which case perhaps the public should be more directly involved in the value assignment. A democratically governed central authority is one approach, another might be a more direct decentralised trust/value assessment towards a particular assignment
c) On bidding. I can see different approaches but to avoid a takeover situation a bid would probably have to binding over some significant time making it implausible for a takeover to be profitable unless the calculated return can be sustained.
Who is the boogey-man trying to control your site memberships? The site operator? I highly doubt this system is robust against site operators trying to "moderate" you, but supppse it was, why would they sign up for it?
For an ecosystem originally built on keen insights on how to mix tech with incentive structures, web3 seems to have thrown that all out the window and replaced it with wishful thinking.
People use centralized platforms like patreon for memberships. They can kick you off and you will lose all your subscribers. Your patrons will lose access as well. That is what unlock tries to solve.
The membership data is stored on the blockchain publicly which everyone has equal access to. You can prove you own a particular nft stored on the blockchain by signing using your private key. So even if all data is public, authorization is secure and reliable.
I mean i guess, but you could also just back up your subscribers list.
Let's say, I want to provide special benefit to people who own membership on hackernews.
In the model where this data is public, I can query the wallet of people to check for HN nft and provide special discount or perks.
If this membership data was privately backed up, I cannot do that.
It fits nicely into the blockchain model, imo.
Subscriber owns the membership and can prove to the service provider.
Service provider has access to the membership and can check the validity.
How will you provide your "perks" if either you or your members have been kicked off the platform where those perks made sense in the first place?
With this use-case you're describing - all you have is a list of wallets that were at some point relevant to you in some way. This is the equivalent of maintaining a mailing list. Why does any of this require a distributed ledger? What problem does this solve exactly?
> "Subscriber owns the membership and can prove to the service provider. Service provider has access to the membership and can check the validity."
How is this any different than signing up with an email-address as a username?
I'm not the one providing HN membership. That would be YC but I as a third party can verify whether someone has a valid HN membership and provide them perks based on their membership. That is the problem a distributed ledger solves. The data is public and usable by any service provider.
To verify you have a HN account (membership) today, a service provider need to build something like keybase. That is complicated and will be different for each service.
That is the problem unlock-protocol "solves". It defines the protocol for managing these memberships. To create, verify, deploy, etc.
You need some way to pay for membership without a middleman. This is solved by cryptocurrency part of the blockchain these nfts are stored on.
Memberships are also more complicated than a list of email addresses. They can be transferred, expired, and change depending on the action of the user. For example, some provider want their memberships to be reduced to half when transferred.
This is the part smart contracts solve.
What's wrong with plain old digital signatures in this contrived scenario. If for some reason this was desired, hn signs an assertion that so and so is a member. Person presents this assertion as neccesary. No blockchain required.
Memorizing hn's public key is no more hard than memorizing what their nft is.
I suppose you'll say transfering memberships. If hn is onboard with the transfer they could just issue a new signed assertion. So the only use case is if you want to transfer ownership against the service provider's will. But how does blockchain solve that? Unless i missed some great advance in zkp, all transfers are public on the blockchain, and service providers can trace the transfers and not recognize transfers they don't like.
> They can be transferred, expired, and change depending on the action of the user. For example, some provider want their memberships to be reduced to half when transferred.
What's a real world example of someone wanting something like this? I can't think of any.
Blockchain isn't required for this part and I answered why not certificates in this thread elsewhere. The simple reason is, wallet based authentication & authorization is more mainstream than pgp today. You also need to pay for memberships and that can be done through the same wallet. Arguably better UX.
> If hn is onboard with the transfer they could just issue a new signed assertion. So the only use case is if you want to transfer ownership against the service provider's will. But how does blockchain solve that?
Indeed. That's the point of storing membership data on blockchain. The user and community can go against the service provider. Think of freenode transfer a while ago, if the identity, moderation, ownership of channels, etc data was stored on the blockchain and controlled by the user. The community could migrate to another IRC service which fetched data from the blockchain and each user could get the same account they had on freenode by verifying they owned that data.
Check out other commenter on the same thread too. https://news.ycombinator.com/item?id=29862347
This is the one of the most "damning with faint praise" comments I have seen this year.
So what, the killer feature is its UI isn't as shit as the program world famous for having a shit UI
Besides if that is your metric, JWTs are definitely more mainstream than blockchain stuff.
>Think of freenode transfer a while ago, if the identity, moderation, ownership of channels, etc data was stored on the blockchain and controlled by the user. The community could migrate to another IRC service which fetched data from the blockchain and each user could get the same account they had on freenode by verifying they owned that data.
Kind of hard to have a secret cabal channel if membership is public. Does this mean to ban someone from a channel you need to pay a transaction fee? That sounds fun from a channel op perspective.
No, they need at-best a small subset of what OAuth offers. OAuth is already distributed in that sense. It's a standard protocol which accounts for this exact scenario. This is a solved problem today.
It's not different than "login with Google"/"login with Apple".
> "You need some way to pay for membership without a middleman. This is solved by cryptocurrency part of the blockchain these nfts are stored on."
What does this sentence even mean? Your membership costs are on a per-service basis, and they are tied to each service you want to pay for. Different services have different costs.
This could make some sense if services wanted to get paid with Bitcoin, but ironically enough - the Bitcoin must be converted to USD at some point down the chain?
> "Memberships are also more complicated than a list of email addresses. They can be transferred, expired, and change depending on the action of the user."
Sure, but wtf does the blockchain have anything to do with this? You're free to have an account with any service and manage it as you wish on an individual per-service basis.
It's the problem delegated auth (OAuth, etc.) already solved.
> You need some way to pay for membership without a middleman. This is solved by cryptocurrency part of the blockchain these nfts are stored on.
But... it's not, because a system that relies on a distributed network of middlemen isn't “without a middleman”.
> Memberships are also more complicated than a list of email addresses. They can be transferred, expired, and change depending on the action of the user. For example, some provider want their memberships to be reduced to half when transferred.
Smart contracts just add complication; this is trivially solved internally in centralized membership systems.
AuthN is one of the few use cases where having a public shared database/blockchain and users authenticate using their private keys works out better in some respects because the alternative is to depend on a centralized user database owned by a private company (eg Facebook). What happens on all of the sites you used Facebook login on, if your Facebook account gets suspended?
> This is membership protocol powered by nft. […]
How is this preferable to just having the client generate a local private key and authenticating using public key cryptography?
That data is stored on blockchain vs having a centralized database. Refer to an earlier comment for why having it public is useful.
As for why people didn't use certificates till now, I don't know. I know they use wallet connect more which operates on the same principle but with existing adoption.
Really though, I am not sure what problem is being solved here. Why do we need this in the first place? What is the attack scenario we are trying to address?
> Permanent storage using incentives and built on the idea of storage getting cheaper. […]
How does this compare to existing implementations of the same idea such as STORJ?
The service provider sure does. They can just decide to not let you use the service.
https://app.ens.domains/name/suzuha.eth/details
also, my post is on arweave, one of the cryptoeconomic data availability layers mentioned on the post:
https://3m44zon3blpnpjs3neglffbhqaibvuaeofkln2rd645dvky7cblq...
> The ENS token contract is token.ensdao.eth: 0xC18360217D8F7Ab5e7c516566761Ea12Ce7F9D72
> Double check the website URL and contract address to avoid scams.
> Users have until May 4th, 2022 to claim their tokens, after which any remaining tokens will be sent to the DAO treasury.
Yeah of course.
> https://3m44zon3blpnpjs3neglffbhqaibvuaeofkln2rd645dvky7cblq...
Is it me or this links to some JSON?
More info on the ENS Governance page: https://docs.ens.domains/v/governance/process
1. Handshake
This is decentralized root naming system. This is one of the most practical use of a blockchain where all records need to be public and verifiable. No need to depend on icann and registry owners for having a tld which you own.
2. Unlock
This is membership protocol powered by nft. People can buy a nft and then for authorization, service provider can check whether the wallet has the nft and is valid. This way, nobody controls your membership and you can move them around the web as you like.
They are all connected to a wallet you control.
3. Arweave
Permanent storage using incentives and built on the idea of storage getting cheaper. Of course, this may not scale but I like the potential.