Bitcoin Forum
September 07, 2026, 11:10:48 PM *
News: Latest Bitcoin Core release: 31.1 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Why are username systems in wallets centralized?  (Read 161 times)
big-mops (OP)
Newbie
*
Offline

Activity: 6
Merit: 0


View Profile
September 03, 2026, 06:34:38 PM
 #1

Yo! Cool

Why is it that 99% of modern crypto wallets, even if they have username systems, store usernames centrally in a database?

That's wrong if the product advocates complete decentralization. I thought about this for a long time and came up with a good mechanism based on the IPFS network.
The wallet generates keys. It creates a file in the IPFS network with a signature, public network addresses, and most importantly, its username.
And Nostr Relay stores the registration fact and a link to the SID file with the signature.
In fact, such a system is very secure against sanctions, because removing a user from the network requires coordination with all nodes, which is practically impossible.

What do you think?
Danish Ali
Jr. Member
*
Offline

Activity: 56
Merit: 123


View Profile
September 04, 2026, 01:58:26 AM
Merited by d5000 (4), ABCbits (2), hugeblack (2), vapourminer (1)
 #2

Problem with this is, how do you make sure that two different people do not use the same username at the same time?

Content addressed storage (made possible with IPFS, which allows files to never change), and Nostr relays help distribute the content. But neither of them gives you a way to agree on order.

Assume that Alice and Bob try to register "satoshi" at the same time. Both of them sign and upload their files onto IPFS and then announce it on various Nostr relays. But, who is satoshi, really? Alice's registration reaches Relay A first, Bob's reaches Relay B first. If a common source of truth is not present, then in this environment users may end up with different perceptions of who owns that same name.

This is Zooko's Triangle in action — you cannot get decentralized, secure, and human readable names without a global ordering system. This is why blockchain is used in name services, a ledger is required as proof of who was first to register. There is no such state machine available via IPFS + Nostr alone.

A few other things worth thinking on:

  • If someone is not pinning their files on IPFS, they will eventually stop existing. Who is in charge of keeping the username records stored for the long term?
  • Relay filtering: Relays can decide not to distribute certain events, so this is only censorship-resistant if enough independently operated relays are carrying it.

But you would still need a lightweight consensus mechanism (such as an on-chain timestamp) so that there is no username clash. How would you handle that conflict scenario?
ABCbits
Legendary
*
Offline

Activity: 3724
Merit: 10361



View Profile
September 04, 2026, 07:32:36 AM
Merited by vapourminer (1)
 #3

In fact, such a system is very secure against sanctions, because removing a user from the network requires coordination with all nodes, which is practically impossible.

Both BitTorrent and IPFS protocol have similar limitation, device or node that willing to store the data. How many IPFS node would store and verify data with format you specified?

What do you think?

Such feature is better as part of the coin/network itself. That way, some issues such as  who register the username first and immutability can be considered as solved.

Assume that Alice and Bob try to register "satoshi" at the same time. Both of them sign and upload their files onto IPFS and then announce it on various Nostr relays. But, who is satoshi, really? Alice's registration reaches Relay A first, Bob's reaches Relay B first. If a common source of truth is not present, then in this environment users may end up with different perceptions of who owns that same name.

In addition, how would new IPFS node or Nostr relay known which one register "satoshi" first.

LoyceV
Legendary
*
Offline

Activity: 4158
Merit: 22620


Thick-Skinned Gang Leader and Golden Feather 2021


View Profile WWW
September 06, 2026, 09:47:15 AM
Last edit: September 06, 2026, 04:06:51 PM by LoyceV
 #4

Why is it that 99% of modern crypto wallets, even if they have username systems, store usernames centrally in a database?
What makes you say this? I use at least 6 different wallets on a regular basis, and none of them asks for a username.

¡uʍop ǝpᴉsdn pɐǝɥ ɹnoʎ ɥʇᴉʍ ʎuunɟ ʞool no⅄
Cinexa
Jr. Member
*
Offline

Activity: 50
Merit: 73


View Profile WWW
September 06, 2026, 01:15:59 PM
 #5

Wallets store usernames in a database because username is not a key, a username is a declaration "this human string uniquely belongs to me, forever." Keys don't require a global notary. Names do.

IPFS + Nostr can host the file and gossip that you registered @alice; They can't tell two strangers who received Satoshi first if Alice & Bob both send data to different relays simultaneously. There is no common ordering; so no unique name exists. This is why every functional name system relies on a ledger.

The few tangible problems on this are: when no node pins the CID the username vanishes. If registration is free bot registration devours a domain registry within an hour. And "you have to synchronize with all nodes to revoke someone" is unlike how clients currently achieve that; they query a few relays & a gateway; Block the relayed names & the user is generally vanished.

If only you seek "send data to another human and paste in my address doesn't have to occur," there is no need for a decentralized username; Lightning Address/BIP 353 can achieve it simply and without the pretense to be a decentralized Namecoin.
ABCbits
Legendary
*
Offline

Activity: 3724
Merit: 10361



View Profile
Today at 07:48:13 AM
 #6

Why is it that 99% of modern crypto wallets, even if they have username systems, store usernames centrally in a database?
What makes you say this? I use at least 6 different wallets on a regular basis, and none of them asks for a username.

My best guess is OP use few different crypto custodial service, but call them as crypto wallets.

Lightning Address/BIP 353 can achieve it simply and without the pretense to be a decentralized Namecoin.

For LN, LNURL-pay is also alternative. But AFAIK both BIP 353 and LN-URL pay aren't that decentralized, since it require you to own a regular domain.

LoyceV
Legendary
*
Offline

Activity: 4158
Merit: 22620


Thick-Skinned Gang Leader and Golden Feather 2021


View Profile WWW
Today at 08:25:19 AM
 #7

My best guess is OP use few different crypto custodial service, but call them as crypto wallets.
In that case he's asking companies to stop storing their own data. That's a terrible suggestion.

¡uʍop ǝpᴉsdn pɐǝɥ ɹnoʎ ɥʇᴉʍ ʎuunɟ ʞool no⅄
devouring-DARKNESS
Jr. Member
*
Offline

Activity: 65
Merit: 2


View Profile
Today at 04:15:53 PM
 #8

The fact that wallets use a centralized username database isn't necessarily a mistake.
A username is fundamentally a human readable alias, and aliases need coordination. If everyone can independently claim @big-mops, you need some mechanism to establish uniqueness.
So even a decentralized system eventually needs something equivalent to 'Who gets this name, and under what rules?' That is the hard part.
Lontor
Jr. Member
*
Offline

Activity: 44
Merit: 24


View Profile
Today at 05:58:18 PM
 #9

I am guessing that you must be using a centralised crypto wallet aka custodial wallet, by the way the the hell is username bothering you? That's the last thing I would worry about if I'm keeping some crypto coins.

Username? Oh please, like who cares? It's even possible to use username with some Bitcoin LN wallets, it just makes it's more stylish and easy, alias? Imagine your name is max and you can send max@cake.cash to receive Bitcoin instead of coy pasting that long BTC address.

I would rather worry about which crypto wallets deserves storing my Bitcoin on rather than getting worried because of username, in your case it looks like you are using a custodial wallet, if I am wrong you can share the name.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!