[bisq-network/bisq] Bisq 2 identity concept (Discussion #6013)

chimp1984 notifications at github.com
Mon Jan 31 03:03:32 CET 2022


For Bisq 2 there will be a more fine grained control for the users identity. I will lay out here the current ideas.

- An identity is a key pair associated with network addresses for the server[1] on the supported transport networks (e.g. hidden service address, I2P address). It can gets assigned to a "domain ID" which can be the offerID or a user defined tag
- By default the user creates a new identity for each interaction (e.g. each offer comes with its own identity - avoiding that multiple offers of the same maker can be linked by the pubKey or the onion address) 
- The user can choose the level of privacy. E.g. the default option provides highest level of privacy but it does not permit that repeated interactions can be used to create reputation. Account age witness are such a sort of reputation or just to see how often one has traded with the same user. So there is a trade off to be made. It's in the hand of the user to make that decision. Defaults are for best privacy protection.
- The user could choose to use one identity for all fiat offers and another one for altcoin trades. Anything between the 2 poles is possible.
- There is a pool of servers started initially to be ready to be taken so when a user creates an offer they do not need to wait until the hidden service is published (which takes about 5 sec). This is a technical feature but helps to avoid UX drawbacks by the delay for the network server to be initialised.
- For the social trading aspect (e.g. chat channels) the user can create user name based accounts. They can use multiple and switch between them. 
- The user name is chosen by the user but it will be extended by a short phrase and an icon generated from the pubkey hash. This should counter impersonating attempts. Reputation should be derived anyway not primarily from a user name but from other means like burned BSQ, feedback,...
- We could support also linking to external accounts (e.g. keybase, Github, Twitter,...) but I would leave that option out for the start as long it is not really needed. I think it causes more problems as it helps
- Identities can be exported and moved over to a newly setup Bisq instance or to other computers running Bisq. Though running 2 identities in parallel causes network reliability issues as its undefined which node a message would receive if both use the same onion address

Any feedback welcome!

[1] A network node consists of a server for accepting incoming connections and a socket for sending outbound messages. Bisq 2 use a default node for the gossip network (e.g. data distribution) and multiple nodes bound to identities. There can be a high number of such nodes (e.g. hidden services in case of Tor) so that even for power traders with 100s of offers it's possible to isolate each offer by a separate network address. All that is already implemented.

-- 
Reply to this email directly or view it on GitHub:
https://github.com/bisq-network/bisq/discussions/6013
You are receiving this because you are subscribed to this thread.

Message ID: <bisq-network/bisq/repo-discussions/6013 at github.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bisq.network/pipermail/bisq-github/attachments/20220130/49929067/attachment.htm>


More information about the bisq-github mailing list