This is the initial spec for the Beam Name Service. We are looking for feedback on the functionality and parameters as we start to build it out. Although this is the initial spec, the long term goal is to make it an integral part of the Beam ecosystem, and a building block for the likes of identity management, and Beam wallet address books.
As this will be an essential tool in the ecosystem it will act as a public good, with funds from sold domains going to the BeamX DAO Treasury.
- BNS (temporary name) is the Beam equivalent of the popular ENS (https://ens.domains/) service on the Ethereum network. Unlike ENS, however, Beam service protects the privacy of the users by keeping the identity of the domain owner as well as the assets sent to this domain confidential and only visible to the owner of the domain.
2. Basic definitions
Domain - a string of characters (A-Z, a-z, _ TBD) followed by a mandatory suffix (.beam) Examples: alex.beam, vik.beam
Domain name length should be between 3 (minimum) and 64 (maximum, TBD) characters
Domain is unique in a sense that only one instance of a domain can exist in the system at the same time and belongs to a single user or entity
3. Initial purchasing of a domain
A user can mint a new unique domain that is not yet registered in the system directly from the dApp by paying a price (in Beam).
Price depends on the length of the domain (TBD):
5+ character .BEAM names: $5 in BEAM per year.
4 character .BEAM names: $160 in BEAM per year.
3 character .BEAM names $640 in BEAM per year.
Purchased domain are in an ‘inactive’ state
All proceeds are forwarded to the vault controlled by BeamX DAO
A domain is sold with a default expiration date of one year (in blocks) from the date of purchase
After the domain expires, an owner gets 90 days to extend it
5. Domain activation
Users can activate a domain by sending an appropriate transaction
After the activation the domain points to a public key of the user
6. Sending assets to a domain
A user can send Beam or any Confidential Assets to a domain through the dApp
An owner of the domain can see all the assets that were sent to the domain and withdraw them to their wallet
Any user who is not an owner of the domain can only see the funds that were sent by themselves, but not the assets that were sent by others
7. Selling a domain
An owner of the domain can sell the domain on the Marketplace for any fixed price set in Beam
The domain is sold as is, with the existing expiration date and in an inactive state
Selling the domain does not affect the existing users account in the system or their ability to withdraw assets that were previously sent to the domain. It only affects future transactions to this domain.
8. Open questions
Should we support multiple top level domains in addition to .beam ?
Should we support subdomains at this point?
Should there be royalties on secondary sales?
Can we make NFT as an image of your .beam domain? Example: How To Make Your NFT Your ENS Profile Avatar
What shall the name be? BNS? Or something else?
9. Future versions
Beam wallet integrations
Auction support (English? Dutch?)
Additional Top level domains
Adding the ability to provide subdomains
One change I’d like considered is having the domains be permanent or closer to it than needing a yearly renewal. I really apppreciate that aspect of unstoppable domains.
I think we shall have the DAO treasury in mind, and the renewal model will assure the DAO treasury keeps getting bigger.
IMHO if you remove the yearly renewal, you shall add royalties to assure the treasury keeps getting bigger. and when you look at it like this I vote for renewal over royalties.
If enough domains are sold that alone could help offset the treasury amounts to remove renewals since I do like how I never have to renew my Unstoppable Domains. However, if the renewal route is the way we want to go maybe the renewal time should be increased to somewhere between 2-5 years similar to other domain hosting sites instead of just 1.
Binance already has BNS and this acronym also stands for Blockchain Name Service. I propose the name BeamNS or PNS from the word privacy.
My short answers to ‘Open questions:’
.beam is ok for the start, but multiple top level domains should be good to increase funds.
Subdomains are very important.
I think the good side of Unstoppable Domains sales price model is good to consider (one payment forever), but doing this in fashion to avoid domains hoarding for oligopoly.
Its a great idea
BNS is ok.
Will there be premium names like other TLD require, otherwise Beam will miss out lots of easy money. I don’t think it’s smart to go off the normal price structures and rental lengths.
Having a “premium” list will be bad for the market IMHO.
other issues are: who will determine the price? who will decide what enters the list?
it’s a bold intervention in a potentially free market
I think prices are a bit high.
we cannot compare to ENS in this case as they have massive networks and thus massive demand.
I think we need to take into consideration that Beam is still growing, and start with way lower costs. I suggest:
5+ character.BEAM names: $10 in BEAM per year.
4 character.BEAM names: $120 in BEAM per year.
3 character.BEAM names $320 in BEAM per year.
I’m so glad my name isn’t Guy, or Gus
In our opinion, the right approach is to introduce more attractive alternatives at more affordable prices that anyone in the community can afford to purchase, and ability to hold for a long period of time.
5+ character.BEAM names: $10 in BEAM per year, $16 in BEAM for 2 years, $21 in BEAM for 3 years (2 years discount is 20%, 3 years discount is 30%).
4 character.BEAM names: $100 in BEAM per year, $160 in BEAM for 2 years, $210 in BEAM for 3 years (2 years discount is 20%, 3 years discount is 30%).
3 character.BEAM names $300 in BEAM per year, $480 in BEAM for 2 years, $630 in BEAM for 3 years (2 years discount is 20%, 3 years discount is 30%).
Here is mine recommendations:
- We have to change the name from BNS to something else, there already exists a crypto token with a name BNS (listed on Bitbns, Kucoin and more)
- Name can contain the word “Private” or “Confidential” in its name. It makes the name more attractive and by the name you can guess what does it provide.
- Beam is a growing ecosystem, we should reduce price for domains.
- NFT integration as your profile picture would be great.
- Subdomains can be added at a later stage (like a roadmap launch)
- I guess if we reduce the price, we can add royalties. It will provide greater benefit in the long run. The initial minting at a reduced cost and when the demands starts to accumulate, the price of previous domains will rise. Hence, Royalties will give a great source of income for treasury in the long run.
½ . PrivateID3
3. I think prices are ok (just my opinion)
5. Dev question.
6. see 3.
Where can new .beam sites be hosted and perhaps purchased? Surely it’s possible to partner with someone like Netim.com (use often for domains & hosting). Maybe .beam can look at their Reseller Program, they’re HQ’d in France or Belgium.
My thoughts re the open questions + :
- Yes. multiple top level domains in addition to .beam would be amazing. But I think this can come later, and potentially even be more interoperable with the wider crypto space.
- Later Subdomains would be amazing but I think less relevant for initial phase and early adoption
- No royalties on secondary sales. My thinking is that either royalties or renewal costs should be there but not both. Royalties maybe are a part of NFT marketplace which would also benefit the DAO.
- I think this is cool to have some NFT image attached to .beam addy
- Name is difficult I have no idea ANS? Anonymous name service. Anonames…?
Some great feedback re renewals bad forever good that has come up a few times:
Personally think this leads to dead addresses and people squatting. Both bad for the ecosystem. Renewal cost presents and easy model. Works well in ENS and if it not broke dont fix it imho. Also comes with benefit of being self sustaining.
Another point was wrt to premium list. I think this is a can of warms, adds unneeded complexity, and essentially stifles adoption by squashing speculation. Those that speculate on addresses are incentivised to get out and shill them to sell them. Premium address list will be difficult to manage, and stops speculation which I think at such an early point is detrimental.
Who controls the accounts within this smart contract? Beamx dao? Who has the dev keys? Safety is extremely important. And this type of thing should be standardized for other dapps too
Also it’s actually possible to have a domain name but nobody else can see the transactions or the amounts of it? And that is consistent even when that domain name is transferred? Sounds awesome if doable with no harms to privacy
Domain name trading is like the precursor to NFT trading. In this sense, I think beam names should be NFTs and, thus, no expiry… unless you’re saying that NFTs could have expiry dates?
I’ll pitch in, “GoPrive” for the BNS.