Replying to Avatar Freakoverse

Each new DNN ID is generated based on when their policy valid Bitcoin transaction is created, and its order position in the block.

A policy valid Bitcoin transaction is one where it's a self-transfer and the transaction fee is set at a minimum of 5 vBytes.

For example, I did that for myself using my Bitcoin derived address from my nostr address (this is also an important point) and got the numbers n4.8 and b922664.8 (n as in nostr/DNN, b as in bitcoin).

The first number in each is the entry of where the transaction took place, and the second number is its position within them, in the context of policy validity (self transfer, minimum fee, order based on amount).

From that it's already unique and will always be so.

From there, the encoder transforms that number based ID to a human-readable and memorable one. That n4.8 turned into nABCeAbsurd.

n = DNN/nostr prefix

abc = batch of blocks of an upper limit if 15,600 policy valid transactions per block

e = block position within a batch

(future numbers) = cycle of 78,000 blocks

absurd = bip39 mapping to the policy valid transaction position within a block ordered by highest paying fee rate

<3_letter_batch><1_letter_block>

So, with that number based ID and its encoder results, IDs will always be unique (and all are already created technically, just born yet. This is infinitely scalable, where I simulated results from 10k and a 100k years later and it still gave human-readable and memorable IDs). No collision.

So the IDs exist, and you get what you get in the end based on timing and fee rate. I'd imagine most people won't try to time to acquire a ID as other people would bump them up or down in position, they'll just do a self transfer and they get what they get. My name is still freakoverse, but my ID is nABCeAbsurd, and my I can have whatever website name, and however many, under that ID/TLD.

Regarding SEC, I'd love to (wanted to go there for a while), but most likely I'm unable to (though there would be someone there where he might do what he did last time, which is do a quick stream to everyone there of projects from people that aren't there).

That sounds really promising! It makes sense that Bitcoin would be the anchor for a global naming system, because Bitcoin is the closest approximation to a truly global database that we have.

Have you heard of the spaces protocol? I managed to set up the DHT client on my computer, but haven't tried securing and/or resolving a name yet. Would be interested in your thoughts...

https://spacesprotocol.org/paper/

https://docs.spacesprotocol.org/getting-started/fabric-dht

https://github.com/spacesprotocol/sips/blob/main/sip-0002.mediawiki

https://github.com/spacesprotocol/fabric

Unfortunately soveng is in person only, but it would be incredible if your able to join. The 7th cohort is all about networking, so your project would fit in perfectly..

Cc: nostr:nprofile1qqsxu35yyt0mwjjh8pcz4zprhxegz69t4wr9t74vk6zne58wzh0waycpzamhxue69uhkzarvv9ejumn0wd68ytnvv9hxgtcpzemhxue69uhk2er9dchxummnw3ezumrpdejz78f205a

Reply to this note

Please Login to reply.

Discussion

It seems like the similarity between Spaces and DNN ends at 'both use bitcoin' (more specifically, both use bitcoin txid, but even there it differs).

Based on my understanding, at least on a surface level, Spaces has scarce names, must go through a bidding process to get a new name, and that process results in burning bitcoin (at scale, this isn't healthy for bitcoin in my opinion), and said process might result in requiring the user to pay (burn) a high number to get a single desired name/id/domain.

##Spaces:

Pros:

-uses bitcoin

-name transfer

-decentralized website

-equal to dns human readability

Cons:

-burning bitcoin

-relies on 'op_return' (putting spam in bitcoin, and spam here means anything that is not transaction data)

-similar bad ux as dns in terms of acquiring a name (or worse? requires consensus permission? i might be wrong on that 'requires consensus permission' bit)

-potentially very expensive

-scarce names (might not be a pro depending on who you ask, but for the end average user, and for scalability, it's a con)

-(not technical con:) brand tied (.spaces, .bitcoin)

Neutral:

-Can be updated to do what DNN is doing to circumvent IANA/IPs

##On DNN's side:

Pros:

-uses bitcoin

-decentralized websites (infinite)

-cheap

-doesn't burn bitcoin (but circulates it in a neutral sense)

-doesn't put any data on bitcoin (zero / no spam) / no reliance on 'op_return' or anything else, just the txid self-transfer

-no permission

-easy UX (self transfer btc, one click publishing of nostr events (4 button clicks at the moment, but will make it a one-click process soon), and done. Two actions. Well, three assuming you don't have funds on your bitcoin derived nostr address)

-no name scarcity (have whatever name you want, the ID/TLD part is a 'you get what you get')

-Brand-agnostic ('nabceabsurd' is just a simple structure)

Neutral:

-human-readable and memorable, but not as equal to the level of dns.

Cons:

-no transfer (though in most cases, 99%, there isn't a need to do it)

---

Aside from that, I think I'd have a much easier time with adoption, and faster, from developer adoption on nostr and on bitcoin (it's infra is bitcoin+nostr, and bitcoin and nostr sides are merging more and more over time, as well as how easy it is/would-be to implement dnn support on existing nostr signers apps or extensions), to user adoption through short to long term strategies. There's also an assumption of Tollgate's future potential growth/success that utilizes nostr, so DNN's growth path is intertwined with Tollgate as well.

---

So far, I see Spaces as a market of names to have fun in (and with usefulness in terms of identification and/or rendering sites), but not as the non-hostile slow/invisible infrastructure takeover of ICANN-DNS&IANA which DNN is going for. Though that's my opinion so far from what I looked into, and of course you're asking me who is the person behind DNN in this 'DNN vs Spaces' comparison x3 but who knows, maybe Space will be the dominant network in the future (hopefully no though, not out of malice but out of those cons i mentioned) and DNN won't be, which is fine, but I'd want to continue developing and pushing DNN to be that 'new internet' (hopefully along with Tollgate, it's awesome =3) as I took decisions for it to be simple, easy, infinitely scalable within bounds, cheap, not worry about names, and bring in a host of secondary benefit solutions.

Thanks for the patient explanation nostr:nprofile1qqsre6jgq6c7r2vzn5cdtju20qq36sn3cer5avc4x8kfru5pzrlr7sqpzpmhxue69uhhxmmvda3k7tnwdshsvcu4cn. Getting a sense of the tradeoffs helps a bit, but I must admit that I still need to give it more thought before I fully grock your system. What do you mean by "no name scarcity"? Can others claim the same name that I have already claimed? I guess the cost of doing a Bitcoin transaction is what rate limits my ability to claim as many names as I want right?

A pleasure =3

To further elaborate on what I meant by "no name scarcity", let's look at Space to help deliver what I mean.

You have name.space on the Spaces protocol, where "name" is unique and "space" is the protocol TLD (like .com) let's say.

On DNN, we have name.nABCeAbsurd, where the unique part of this is the TLD/ID (in this example, it's nABCeAbsurd, which is what I got when I did a bitcoin self-transfer. Another's might be nJHDcAbility, for example, or nMDKa12Zoo many years later), and "name" can be whatever you want, even if it's the same as someone else. The unique part is the TLD/ID, not the name.

Aah, so the name is human readable, but the TLD is a large random string - ie. the entropy that makes it secure. That makes sense. Does this mean I need to check the large random string like checking an npub to make sure I'm being redirected to the right IP address?

Are you familiar with zookos triangle?

https://en.wikipedia.org/wiki/Zooko%27s_triangle

When trying to understand new systems, I like to try to place them on that triangle to reason about the tradeoffs...

It seems to me like DNN has the same set of tradeoffs as noDNS, but DNN has a global state thanks to Bitcoin. Where does DNN store the IP address that a name resolves to? Does it use nostr for this? Apologies if you already explained this..