[bisq-network/bisq] Bisq-2 UX challenges (Discussion #5959)

chimp1984 notifications at github.com
Fri Jan 7 17:58:40 CET 2022


I just had a conversation with @UX-P about Bisq-2. To summarize the information about the UX challenges and rough ideas I thought its best to post it here for further discussions.

Bisq-2 comes with multiple options on many different layers. 
I give here an overview about different categories. Some are constrained by each other, but some have flexibility (e.g. Fiat settlement is a flexible option for current Bisq protocol but not BTC settlement as its integrated with the security aspect). I give examples of the options we intende to integrate. Initially it will be limited to the most important, but conceptually those options are open.
Options are roughly sorted from "best" to "worst" according to core values of Bisq (security, privacy, accessibility, convenience). I only add those where we have already experience or at least a good idea about it. There will be more like interesting options using Oracles, DLC based contracts,...

- Multiple clients
    - Desktop application
    - Headless application controlled via REST or Grpc API
    - Mobile light client (remote control for a full node in users control)  
    - Mobile (semi) full node client (will likely still use some specialized nodes in the network for Gossip network functionalities, but does not require running an additional full node.
- Multiple contract types
    - Asset Swaps
    - Options
    - Futures
    - CFD/Bets
    - Loans
- Multiple trade protocols
    - Atomic BTC <-> BSQ swaps
    - Atomic asset swaps on Liquid (e.g. BTC-L <-> USDT)
    - Atomic cross chain swaps for BTC <-> XMR based on [Farcaster protocol](https://github.com/farcaster-project/). Could be extended to other coins as well
    - Lightning Network (LN) based 3 party trade protocol (@stejbac is working on that, not 100% sure yet if its feasible)
    - Bitcoin MultiSig based protocol (like current Bisq protocol using 2of2 MS + delayed payout tx). Supports dispute resolution with mediators and arbitrators.
    - Bitcoin 2of2 MultiSig without dispute resolution
    - BSQ bond based protocol. Reputation is provided by locked up or burned BSQ
    - Reputation based off-chain protocol. Does not provide security based on smart contracts but use reputation (flexible what type of reputaton is used, can be a social media account or PGP web of trust).
- Multiple security mechanism (constrained by the trade protocol)
    - Atomic swap on same chain
    - Atomic cross chain swap
    - MultiSig based 
    - Collateral based
    - Reputation based
- Multiple smart contract layers
    - Bitcoin mainnet
    - LN
    - Liquid
    - Monero
    - Bisq DAO
    - Any other blockchain if a trade protocol requires it
- Multiple wallets (wallets integrated via RPC if trade protocol requires it)
    - Bitcoin core
    - Electrum
    - Liquid wallet
    - LN wallet
- Multiple settlement methods for the crypto currency (if not constrained by the trade protocol)
    - Bitcoin mainnet
    - Bitcoin on LN
    - Wrapped BTC on Liquid, RSK or ETH or any other blockchain
- Multiple settlement methods for the fiat side
    - Bank transfer
    - Fintech payment providers
    - Cash by mail
    - In person
- Multiple identities (an identity is a key pair and a network address - like onion address). User can manage identities.
    - Isolated identity for each interaction (best privacy, but does not allow features like reputation, account age witness)
    - One Identity per payment account (avoid linking ID from trades where real life ID is exposed - like SEPA - to others with better privacy where only a user name or email is exposed - like Revolut)
    - One Identity for all fiat accounts, one for all altcoins accounts (avoid linking ID over to altcoin trades)
    - One global identity for all (privacy like in current Bisq, allows local reputation and account age witness feature)
- Multiple privacy networks
    - Tor
    - I2P
    - Clear net (only relevant for network nodes like seed nodes)

These options create a variety of trade-offs between different core values:
- Privacy
- Security
- Accessibility (mobile vs. full node, simple UI for newbies vs. feature richness for pro traders)
- Convenience (speed, effort for technical setup like running a full node,...)

To not overwhelm the user with the amount of functionalities and options we need to find a UX solution which radically simplifies all that.
I think it is possible to start with a default (recommended) path and guide the user through the various steps, offering options to dive deeper at each level and learn about the context of each option. It might have some aspects of a guided education experience where the user learns more iteratively and related to their goals (e.g. a hardcore BTC maximalist does not need to learn about XMR-BTC swaps).

It could start with a UniSwap like interface of what the user wants (I only sketch out an asset swap here).
Initially the user sees 2 sides for the assets with an amount text field and a combobox for currency selection.
In between the 2 fields is the price which is set to the market price by default. A next button moves to the next step.

I have:
[____] [EUR]
Price: 45 000 BTC/EUR
I want:
[____] [BTC]
[>> Next]

Then in the next screen we move further down the options tree (select protocol,...). Maybe we can use an approach to derive information from the application data to select the recommended option. E.g. if the user has BTC in their wallet the protocols requiring BTC are in the recommended options list.






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

Message ID: <bisq-network/bisq/repo-discussions/5959 at github.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bisq.network/pipermail/bisq-github/attachments/20220107/348c8347/attachment-0001.htm>


More information about the bisq-github mailing list