PR for Face to Face trade

If I understand BISQ correctly:
Both the maker and taker need to put up a security deposit/escrow.

This makes BISQ more resilient than localbitcoins. BISQ discourages wasted time and spam/scams.

I also commend your work and dedication!

Great news! I think @erizo will like it.
I’m reading everything on the PR and I like a lot how all the possible issues can be managed. I was very skepticall about F2F trades on Bisq. But after Localbitcoins requiring KYC I think that a window has been opened and something better than Localbitcoins is on the way.

2 Likes

I hope the security deposit will help to avoid that. But good point we need to check how the arbitrator can find a solution in such cases. If peer tells a conflicting story the fund might get locked up if arbitrator cannot find clear evidence. The seller is here for sure more at risk as he has more funds locked up.

Just stumbled over an older discussion here:


The idea from @erizo to use a bank transfer as security tool was quite interesting.
We could recommend the users that they do a tiny 1 EUR transfer to each other, so they know the others bank details. That gives them some sort of KYC and reduces the risk of robbery a lot IMO. As it is just a recommendation it is up to the users to do it or not. They could also perform a normal ID check but that comes with ID theft risk, so a bank transfer might be less critical.

@peertrade also gave a lot of input there. Would love to hear his opion about the current proposal.

Thank you for this pull request.

I would like to propose this also.
For the traders who do not want to leak personal data, shop keepers may become witness of a trade and receive a tip for that.

For example an exchange is done in a shop with a shop keeper as a witness.

  • the shop keeper creates a bisq account, and broadcasts his adress and his readiness to act as a witness
  • two traders meet in his shop to perform a trade
  • the shop keeper scans the QR code of both participants, so that he receives the trade details and be linked to the trade
  • the traders perform the trade
  • the traders and the shop keeper confirm (or not) that the trade occured properly
  • if everything is ok, the shop keeper receives a witness fee and gets an increase in reputation

The shop keeper would have little incentive to lie because his shop real adress would be public, while the traders may remain anonymous and not give away private information (ID, voice/camera record of the trade, etc.).

Hm interesting approach but wouldn’t turn that the shop keeper as the trusted third party who could act as escrow anyway? E.g. wouldn’t it be more simple to just do a classical escrow with the shop keeper in such cases?

1 Like

very interesting idea.

The shop owners can put up a BSQ bond to prove ownership and escrow legitimacy.
It’s true, the shops can do this outside of the platform, but BISQ can provide a listing space for these F2F shops.

I’ll open the first bonded BISQ trade shop!

I like the idea of trying to standardize things, but this shopkeeper idea is imo the (nth) return of the third party. Throw him by the door, he reenters by the window.
Not only would the shopkeeper be a third party, but also a wonderful point of failure.
Half of drug affairs today in the US are affairs where one of the party cooperates with the FBI when he’s not simply a FBI guy.
Even if not cooperating, a fixed place is also an easy place to easily monitor today. Even from outside, even with non specialized hardware.
etc.

1 Like

Personally, other party showing up hasn’t been an issue for me. But considering the scenario…

It seems to me that if counterparty doesn’t show up, then either:

  1. both parties should get their escrowed funds returned, or
  2. the party that did show up should receive escrowed funds of the one that didn’t, as compensation for lost time/expense, and to dis-incentivze that behavior.

(1) is simple, and likely sufficient for now, unless/until it becomes a significant issue.

(2) is perhaps more desirable, but it requires some proof for arbitrator.

For (2) I can think of a policy something like:

  1. meet details (address, place name, time) must be recorded and agreed in advance somehow, in a private but non-forgeable way. Ideally bisq would include a tool for this, eg so both parties can digitally sign. Then it is recorded via proofofexistence.com or maybe encrypted in bisq p2p network (accepted offer info).
  2. If party a does not show, party b can take photos to prove s/he was there. Ideally this would be of signage such as: entrance to establishment, address on door, street name sign, etc. Ideally with GPS location in photo metadata. The photos should be entered into a timestamping service such as proofofexistence.com within 1 hour of the meetng.
  1. agrieved party submits original agreement from (1) and photos from (2). arbitrator checks them at proofofexistence.com ( or similar service ) and awards if photos are convincing and timestamped docs are found. (if counterparty cannot do same within X period.)

quite possibly more trouble than it is worth in short term, but could perhaps be usable by mere mortals with enough hand-holding from the app. I imagine even a bisq localtrader mobile app that assists with evidence gathering and submission to timestamping service(s) and arbitrator.

I just had a look at the screenshots and reading discussion. In general, very happy, thanks! a nice surprise. :slight_smile:

A couple thoughts:

  1. I don’t see need for bringing laptop. I think most people doing f2f are accustomed to using phone wallets for actual transfer. And the laptop doesn’t accomplish so much. if a thief is going to rob me, he can simply shove a gun in my face and instruct me to confirm the transaction was completed. Then he takes my laptop too. Instead, why not let the meetup be for funds transfer only, and then the final step is completed when one is back in a safe place.

  2. The escrow brings some warm fuzzies for both parties, but may actually be a risk for bisq project and arbitrators as it puts them in uncomfortable situation if law enforcement gets involved over a dispute. Bisq could instead act simply as a “counterparty discovery” mechanism, and everything that happens after two parties contact eachother is their own responsibility and no one else’s. I fear that the arbitration feature could become a “hook” one day used by kyc/aml advocates to go after the bisq project, particularly if a violent crime ever occurred and funds were somehow released to the wrongdoer.

In general, I suggest f2f participants to use the following strategy.

  1. Use a system such as bisq to find new people to trade with locally.
  2. For first trade(s) with someone, use small amounts only. Bring a phone wallet with only small amounts loaded, or equiv small amount in cash. Meet in public place and Bring a friend or two if you are worried about safety.
  3. Get a feel for the person. Build up trust over a few smaller trades, or walk away.
  4. If the person is reliable and solid, you can continue to do many trades with them over time. Usually can just contact them directly, no need to use bisq, lbc, etc.

So imho the escrow is only really needed for large amounts and untrusted parties, but that’s not a situation one should find oneself in, if using above approach.

2 Likes

another thought, looking at the market screenshot for takers…

I see that there is “Filter by Payment Method”, and presumably one can select “F2F”. well and good.

But then I guess I would see F2F offers from all over the world.

I think that when F2F filter is chosen, another filter should appear that is Filter by Location. Ideally one could type in a city, country and choose a proximity (eg default 100 miles) to get all offers in that area. Or maybe for now it is just a listbox with values populated with unique country,city from all offers, or even just country is likely sufficient for many places.

LBC offers google map integration and that could be nice at some point, though not really necessary.

A sortable location column also be quite useful.

1 Like

Yes, I don’t think laptop is necessary, smartphone is useless as well.
You can simply do the cash transfer on site and confirm the payment once you get home.
Just like going to a bank to do a cash deposit.

Escrow isn’t something Bisq offers, but if people want to do something with it outside of Bisq, that shouldn’t be anything stopping them.

We don’t want to introduce a new trade protocol as we don’t have the dev resources as well we don’t know if users will really use that new payment method. So we need to start with existing structures and that is that the payment is done via Bisq and the arbitrator is part of it. If we see that the payment method will really be used we can invest more effort to fine-tune.
So for now the main challenge is to make the best out of that setup and if we can find ways to add more security without adding a lot of dev effort. To recommend a test bank transfer of a 1 EUR amount for both traders is such a suggestion which will not add effort on Bisq dev side but would add quite a bit of security for those who are willing to do that.

I think that requiring and ID exchange (know your peer identity) at meeting point in “Additional Terms” is not supported by the trading protocol.
If both parts aggree, why is that a bad idea?

1 Like

1/ At the beginning of this same thread, it was noticed that
"after Localbitcoins requiring KYC I think that a window has been opened "
… and now there is suggestion to walk the same path ?

2/ Honest people do not use false IDs, but dishonest people have no worry with that.
By dishonest I mean also people collaborating with govs, and for them false ID is very easy.

There is certainly room for improvement for this very new F2F feature.
But hopefully we’ll have enough imagination to find new solutions and not returning to using usual gov collars.
I don’t know if it is already in the protocol, but each party bringing it’s onion address may perhaps be useful ?

Or for people wanting, they may have PGP exchanges before and agree on a passphrase or a dressing code etc (shower ideas ;-))

2 Likes

Police/law force is going to be needed if things get ugly. I don’t think that a PGP key or a dressing code is needed. If someone is coming to a trade we’ll have no problem to identify ourselves. Lack of reputation and liability is the problem here. Exchanging PGP keys it’s not something that will make me feel more confident, it doesn’t say anything about my peer’s past behaviour. But knowing your peer’s ID could be a good way to start a police report and make things easier, so it could be also a good way to stop some people from doing bad things.
I understand that a bad guy could use a fake ID. That’s a very good point against requiring ID, but I still thing that it could be allowed as “Additional Terms”.
Faking ID is a crime that police will pursue, and is heavily punished, so it could stop some bad guys for low amounts.

Concerning reputation,
it was already discussed here, and the idea which emerges which conciliates privacy together with reputation,
is to consider negative reputation (only appying to few) versus positive reputation (applies to everybody).

You have already some reputation tools here in Bisq:

  • make a search with your buyer/seller onion address here in the forum. If he’s a known scammer, you’ll know it
  • look at the account age, number of trades, you’ll know if your peer is a new account or an old bisq user.

And I profit to remind the doc about F2F and smart advices:
https://docs.bisq.network/trading-rules.html#face-to-face-f2f-trading

1 Like

Even though @ManfredKarrer has stated against Mutual Assured Destruction (MAD) and this method has not been deployed in favour of the current one, I’ve been thinking about it lately and I belelieve it’s still a great solution for face to face transactions.

For those unfamiliar with MAD:
If maker is buying 1 btc, he has to sign a transaction that will send 1 btc to a 2/2 multisig address. Then, taker signs a transaction with 2 btc to that address, so 3BTC are locked like a security deposit.
Then, the fiat payment is made on a public place, face to face and both parts can go back home. When the seller is ok, she releases the funds. 2BTC goes to the buyer and 1BTC goes back to the seller.
With this protocol, both parts have something to lose until the end of the trade, and only the parts involved are responsible that the protocol have been followed. If one of the parts doesn’t aggree with the other, s/he could destroy all the funds.

Advantages:

  • No need to bring any laptop or even a smartphone to the trade: Because seller has also something to lose until the end of the trade, s/he can go back home with fiat and then sign the release locked funds + payment to buyer.
  • Private keys can stay safe, no need to bring them with you: That diminishes incentive for extortion.
  • No third party involved: It’s already stated in the current protocol that “The lack of verifiable actions makes arbitrating face-to-face disputes much harder”. As arbitrator can’t do very much is better to remove it. That also fulfills Bitcoin’s philosophy.
  • No need to provide evidence: No one knows better what happens in any trade than the parts involved. They are the best witness possible, and if someone lies or is confused, they have the tools to defend themselves.

Disadvantages:

  • Asimetry and blackmail: There’s always one part which could lose the double than the other. I don’t think trying to blackmail someone in this situation is rational, as the other part can defend itself. Would you risk loosing an eye if the other part gets blind?
  • Both parts need twice the amount to be traded.

Maybe we could be affraid that Bisq can’t add value with this method, because there are no arbitrators involved. I think that this is not true, and even if it were, that wouldn´t be a reason to stop trying to impulse it. Bisq can still offer quality software, ready to be used easily in a private way, and a little but growing community. The decentralized reputation systems that is being developed by Bisq could be used for this payment method as well.

I know that F2F payments have little volume and it’s not because the current protocol is bad, so maybe this is not the main thing that Bisq should focus on. But once the DAO has been released and it’s stable, we could try to give an impulse to F2F trading and this MAD protocol is, in my opinion, the best way for it, and it will be very important to have tools like this in case the “then they fight you” phase starts sooner than expected. If MAD success for trading fiat, it could be used to trade any kind of goods.

You can see a good infography of how MAD works here:
http://nashx.com/HowItWorks

The idea with high deposits can also be applied to any payment method, obliviating the need for arbitration. A field with email (or something else) in the account data is needed so the traders can communicate and resolve technical problems with payments: https://github.com/bisq-network/bisq/issues/2805

HIgh privacy can be obtained if the communication channel is Wickr or privacy-protecting email such as Tutanota et simile.

1 Like

+1 for making this an option for ALL trade types when creating offer. no arbitration or 3rd party needed.
+1 for wickr communication channel.

If this were to become an option with clear visibility and filterability when taking offers, then the market could signal which method is preferred.