Author Topic: specification for betting in channels  (Read 1918 times)

zack

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 384
    • View Profile
specification for betting in channels
« on: August 21, 2015, 10:46:33 pm »
betting in channels: https://github.com/BumblebeeBat/FlyingFox/blob/development/docs/channels.md

Any suggestions or questions are much appreciated.
« Last Edit: August 21, 2015, 11:52:00 pm by zack »

psztorc

  • Administrator
  • Sr. Member
  • *****
  • Posts: 464
    • View Profile
Re: specification for betting in channels
« Reply #1 on: August 21, 2015, 11:22:45 pm »
One thing I've been wondering about your approach is "Why do the trades *want* to be private?".

I also wonder why they can't support market makers.
Nullius In Verba

zack

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 384
    • View Profile
Re: specification for betting in channels
« Reply #2 on: August 21, 2015, 11:51:46 pm »
Every bit of data you put onto a blockchain costs money. If we had to write every trade onto the blockchain, then we would hit the block size limit pretty quickly.

I was wrong, it will work with market makers.

psztorc

  • Administrator
  • Sr. Member
  • *****
  • Posts: 464
    • View Profile
Re: specification for betting in channels
« Reply #3 on: August 23, 2015, 09:09:08 pm »
But surely they can be in channels and also be "public" in the sense that no one is excluded from looking at prices, or trading?
Nullius In Verba

zack

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 384
    • View Profile
Re: specification for betting in channels
« Reply #4 on: August 24, 2015, 05:07:41 pm »
It is possible to make a public order book which uses channels to function. If you or I looked at the order book to trade, we could look at open bids and tell what the current price is. Such an order book would have an incentive to lie, and claim a lot more trading occurs than is actually happening. We would have no way to tell when they lie, because none of the bets are on the blockchain. The blockchain records all the addresses, and bounds on how much money the addresses could have.

Today I realized that OTR can be applied to all channel-blocks so that no one can prove anything about how you bet, not even your partner.
If your partner refuses to continue, and threatens to reveal your betting on the most recent channel block, or if he does reveal your bets by publishing the channel block, you have the option of erasing your history with the channel. All the money in the channel gets deleted, including any money your partner had in it.

Even if we don't add OTR to the channels, they wont be very public. There is no easy way to access another person's trades, unless that person, or their partners, decided to keep a record of it, and they agree to send it to you. It is easy to create fake trades that look real to everyone except your partner.

The only bets you would find out about are when one of the gamblers loses his private key, so they can't update the channel any more and have to publish it in it's most recently signed state.