Bitcoin Forum
April 25, 2024, 12:10:16 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: Experiment: A signed offer to buy BTC that one may accept by sending the BTC  (Read 2386 times)
casascius (OP)
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1386
Merit: 1136


The Casascius 1oz 10BTC Silver Round (w/ Gold B)


View Profile WWW
December 12, 2012, 06:16:41 AM
 #1

I am conducting an experiment that I am hoping will generate some discussion about the way bitcoins are traded.

As an experiment, I have posted in the Currency Exchange subforum, a PGP-signed offer to buy Bitcoins from the first person who sends them to me, and using the blockchain as the arbiter of who actually accepted my offer in case there's more than one candidate.  This is clearly an unusual way to solicit a trade, and I'm just interested to see what the outcome is.

The posting can be found here, https://bitcointalk.org/index.php?topic=130318.0

Part of the motivation for this is that I have this idea for a semi-decentralized exchange using crypto-based escrow and, which importantly doesn't touch anybody's money.  It relies on the blockchain as a way of recording trades, and depends on people to settle the dollar side of their trades themselves (using various methods to enforce it, of which escrow is a part).  Seeing how this offer does or does not go down and the discussion that follows it will help me guess how my idea might be received by the community.

Companies claiming they got hacked and lost your coins sounds like fraud so perfect it could be called fashionable.  I never believe them.  If I ever experience the misfortune of a real intrusion, I declare I have been honest about the way I have managed the keys in Casascius Coins.  I maintain no ability to recover or reproduce the keys, not even under limitless duress or total intrusion.  Remember that trusting strangers with your coins without any recourse is, as a matter of principle, not a best practice.  Don't keep coins online. Use paper or hardware wallets instead.
1714003816
Hero Member
*
Offline Offline

Posts: 1714003816

View Profile Personal Message (Offline)

Ignore
1714003816
Reply with quote  #2

1714003816
Report to moderator
Once a transaction has 6 confirmations, it is extremely unlikely that an attacker without at least 50% of the network's computation power would be able to reverse it.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714003816
Hero Member
*
Offline Offline

Posts: 1714003816

View Profile Personal Message (Offline)

Ignore
1714003816
Reply with quote  #2

1714003816
Report to moderator
1714003816
Hero Member
*
Offline Offline

Posts: 1714003816

View Profile Personal Message (Offline)

Ignore
1714003816
Reply with quote  #2

1714003816
Report to moderator
FreeMoney
Legendary
*
Offline Offline

Activity: 1246
Merit: 1014


Strength in numbers


View Profile WWW
December 12, 2012, 07:09:11 AM
 #2

Interesting. How will the blockchain tell you who sent first if it is a close call?

Play Bitcoin Poker at sealswithclubs.eu. We're active and open to everyone.
casascius (OP)
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1386
Merit: 1136


The Casascius 1oz 10BTC Silver Round (w/ Gold B)


View Profile WWW
December 12, 2012, 07:20:54 AM
 #3

Blockchain.info records first seen time, and short of that, they go into a block in a certain order, how ever the miner put it there.  That may not be absolutely correct in terms of time, but will work as a last resort for determining a winner.

Realistically I expect blockchain.info's first seen time will be good enough.

Companies claiming they got hacked and lost your coins sounds like fraud so perfect it could be called fashionable.  I never believe them.  If I ever experience the misfortune of a real intrusion, I declare I have been honest about the way I have managed the keys in Casascius Coins.  I maintain no ability to recover or reproduce the keys, not even under limitless duress or total intrusion.  Remember that trusting strangers with your coins without any recourse is, as a matter of principle, not a best practice.  Don't keep coins online. Use paper or hardware wallets instead.
FreeMoney
Legendary
*
Offline Offline

Activity: 1246
Merit: 1014


Strength in numbers


View Profile WWW
December 12, 2012, 07:24:15 AM
 #4

I just glanced at the thread. This makes it all good imo:

4. The first person who pays the above address (as determined by the BlockChain.info first-seen
timestamp) is the person whose Bitcoins I am buying.  If more than one person accepts the offer,
I reserve the right to choose to either give a refund or to perform the same transaction with the
additional parties.

Play Bitcoin Poker at sealswithclubs.eu. We're active and open to everyone.
MPOE-PR
Hero Member
*****
Offline Offline

Activity: 756
Merit: 522



View Profile
December 12, 2012, 09:11:08 AM
 #5

Limiting to first person only should work in the sense that pretty much anyone can check in the blockchain. There's some potential for trouble if transactions haven't propagated tho', but yeah, the "refund or execute" policy covers nicely.

My Credentials  | THE BTC Stock Exchange | I have my very own anthology! | Use bitcointa.lk, it's like this one but better.
Stephen Gornick
Legendary
*
Offline Offline

Activity: 2506
Merit: 1010


View Profile
December 12, 2012, 11:35:12 PM
 #6

I am conducting an experiment that I am hoping will generate some discussion about the way bitcoins are traded.

On the occasions that I put a buy offer on #bitcoin-otc marketplace I use the "{mtgoxlast}" macro substitution so that the exchange rate will fluctuate with the market rate.

Though you had put out a fixed exchange rate, this fluctuating rate could still be offered.  This is because the mtgox trading history is publicly available and has a timestamp (i.e., can be independently verified).

But I hate seeing a third-party data source being relied on in ways it wasn't designed to be.  There's no service agreement from blockchain.info that the timestamp displayed won't change (e.g., if had to re-index the database perhaps).   And the quote data from Mt. Gox has historically not been pure as well (trades getting cancelled).  

But these things occur with other trading systems and agreements so there's ways to deal with them, including acknowledging there is the risk someone will sell to you during a trade spike way above what ends up being the VWAP or similar less-volatile price method.

Unichange.me

            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █


casascius (OP)
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1386
Merit: 1136


The Casascius 1oz 10BTC Silver Round (w/ Gold B)


View Profile WWW
December 12, 2012, 11:47:32 PM
 #7

I am conducting an experiment that I am hoping will generate some discussion about the way bitcoins are traded.

On the occasions that I put a buy offer on #bitcoin-otc marketplace I use the "{mtgoxlast}" macro substitution so that the exchange rate will fluctuate with the market rate.

Though you had put out a fixed exchange rate, this fluctuating rate could still be offered.  This is because the mtgox trading history is publicly available and has a timestamp (i.e., can be independently verified).

But I hate seeing a third-party data source being relied on in ways it wasn't designed to be.  There's no service agreement from blockchain.info that the timestamp displayed won't change (e.g., if had to re-index the database perhaps).   And the quote data from Mt. Gox has historically not been pure as well (trades getting cancelled).  

But these things occur with other trading systems and agreements so there's ways to deal with them, including acknowledging there is the risk someone will sell to you during a trade spike way above what ends up being the VWAP or similar less-volatile price method.

You bring up some excellent points.

Not only could I offer a fluctuating rate as you point out, I could also include terms that make my offer contingent on a stable price.  If I make an offer based on a MtGox price, I could say that my offer is only valid if accepted while 24 hours of substantially reliable MtGox data is available and the MtGox high over the last 24 hours is no greater than 105% of the low over the same time period (and that otherwise, I issue a refund).  The glitches and gotchas are still present if MtGox is having issues of their own, but their impact is severely limited if an acceptance isn't allowed if it isn't clear that none of that is happening.

One of the things that doing orders like this would accomplish is to add major liquidity to the bitcoin-wide order book, especially if people are willing to put out fixed-price orders looking for dips and spikes in the price without having to leave money in exchanges to do so.  Fixed price orders wouldn't have so much need to depend on a stable price, and if escrow changed the trading landscape significantly, it would represent a good way for lots of non-technical people to get into Bitcoin using paper wallets "if the price drops a couple bucks" as I always seem to hear people say.

Companies claiming they got hacked and lost your coins sounds like fraud so perfect it could be called fashionable.  I never believe them.  If I ever experience the misfortune of a real intrusion, I declare I have been honest about the way I have managed the keys in Casascius Coins.  I maintain no ability to recover or reproduce the keys, not even under limitless duress or total intrusion.  Remember that trusting strangers with your coins without any recourse is, as a matter of principle, not a best practice.  Don't keep coins online. Use paper or hardware wallets instead.
TheButterZone
Legendary
*
Offline Offline

Activity: 3052
Merit: 1031


RIP Mommy


View Profile WWW
December 12, 2012, 11:47:38 PM
 #8

https://docs.google.com/spreadsheet/ccc?key=0AmcTCtjBoRWUdHJuUE1mUkFxa3A0eHBDQkxZLVVFZmc#gid=0

Saying that you don't trust someone because of their behavior is completely valid.
MPOE-PR
Hero Member
*****
Offline Offline

Activity: 756
Merit: 522



View Profile
December 13, 2012, 12:25:29 AM
 #9

You bring up some excellent points.

Not only could I offer a fluctuating rate as you point out, I could also include terms that make my offer contingent on a stable price.  If I make an offer based on a MtGox price, I could say that my offer is only valid if accepted while 24 hours of substantially reliable MtGox data is available and the MtGox high over the last 24 hours is no greater than 105% of the low over the same time period (and that otherwise, I issue a refund).  The glitches and gotchas are still present if MtGox is having issues of their own, but their impact is severely limited if an acceptance isn't allowed if it isn't clear that none of that is happening.

One of the things that doing orders like this would accomplish is to add major liquidity to the bitcoin-wide order book, especially if people are willing to put out fixed-price orders looking for dips and spikes in the price without having to leave money in exchanges to do so.  Fixed price orders wouldn't have so much need to depend on a stable price, and if escrow changed the trading landscape significantly, it would represent a good way for lots of non-technical people to get into Bitcoin using paper wallets "if the price drops a couple bucks" as I always seem to hear people say.

Basically you're slowly discovering/moving towards the OTC order book. http://bitcoin-otc.com/vieworderbook.php

My Credentials  | THE BTC Stock Exchange | I have my very own anthology! | Use bitcointa.lk, it's like this one but better.
casascius (OP)
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1386
Merit: 1136


The Casascius 1oz 10BTC Silver Round (w/ Gold B)


View Profile WWW
December 13, 2012, 12:55:52 AM
 #10

Basically you're slowly discovering/moving towards the OTC order book. http://bitcoin-otc.com/vieworderbook.php

Other than:

1. I'm not sure what there is to discover given that I have trading history on the OTC order book almost two years old.
2. I think what I'm proposing has some useful differences:
 a. I'm using the blockchain to make an objective indication as to whether an offer still exists, whether it's been satisfied, by whom, and when.  My method automatically cancels the order when filled, and picks a winner if two people accept it at the same time, automatically and objectively.
 b. My offer is much easier to accept.  By signifying that sending bitcoins accepts my order, one does not need to bother with getting in contact with me and hoping I am able to respond in a timeframe that works for them.  They don't need to do anything other than determining that I'm trustworthy enough to perform as agreed, and then send some bitcoins.
 c. I believe that writing an actual agreement using language with legal meaning and signing it myself has greater enforceability than putting an unsigned line in the OTC order book.

Companies claiming they got hacked and lost your coins sounds like fraud so perfect it could be called fashionable.  I never believe them.  If I ever experience the misfortune of a real intrusion, I declare I have been honest about the way I have managed the keys in Casascius Coins.  I maintain no ability to recover or reproduce the keys, not even under limitless duress or total intrusion.  Remember that trusting strangers with your coins without any recourse is, as a matter of principle, not a best practice.  Don't keep coins online. Use paper or hardware wallets instead.
Elwar
Legendary
*
Offline Offline

Activity: 3598
Merit: 2384


Viva Ut Vivas


View Profile WWW
December 13, 2012, 12:56:35 AM
 #11

So what stops someone from putting out such an offer and then not paying the cash?

It still comes down to the trust factor.

I am interested if you come up with an escrow function.

I do see this as something that would be good to have several Bitcoin escrow companies that compete and provide the trust needed.

First seastead company actually selling sea homes: Ocean Builders https://ocean.builders  Of course we accept bitcoin.
casascius (OP)
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1386
Merit: 1136


The Casascius 1oz 10BTC Silver Round (w/ Gold B)


View Profile WWW
December 13, 2012, 12:58:18 AM
 #12

I am interested if you come up with an escrow function.

I do see this as something that would be good to have several Bitcoin escrow companies that compete and provide the trust needed.

That's precisely where I'm going with this...

Companies claiming they got hacked and lost your coins sounds like fraud so perfect it could be called fashionable.  I never believe them.  If I ever experience the misfortune of a real intrusion, I declare I have been honest about the way I have managed the keys in Casascius Coins.  I maintain no ability to recover or reproduce the keys, not even under limitless duress or total intrusion.  Remember that trusting strangers with your coins without any recourse is, as a matter of principle, not a best practice.  Don't keep coins online. Use paper or hardware wallets instead.
bg002h
Donator
Legendary
*
Offline Offline

Activity: 1463
Merit: 1047


I outlived my lifetime membership:)


View Profile WWW
December 13, 2012, 01:12:55 AM
 #13

Mike -- another excellent idea. I like where you are heading with this. Any way to encode in the block chain the the price and currency of the completed trade? This way reading the blockchain could also tell you the ticker price.

 You could imagine other forms of communication and time stamping using the blockchain (ie, sending binary messages in the Bitcoin amount...spy's could communicate this way, for example)

Hardforks aren't that hard. It’s getting others to use them that's hard.
1GCDzqmX2Cf513E8NeThNHxiYEivU1Chhe
casascius (OP)
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1386
Merit: 1136


The Casascius 1oz 10BTC Silver Round (w/ Gold B)


View Profile WWW
December 13, 2012, 01:57:33 AM
 #14

Mike -- another excellent idea. I like where you are heading with this. Any way to encode in the block chain the the price and currency of the completed trade? This way reading the blockchain could also tell you the ticker price.

 You could imagine other forms of communication and time stamping using the blockchain (ie, sending binary messages in the Bitcoin amount...spy's could communicate this way, for example)

Not really - remember I am not doing any magic with the block chain - I am simply assigning a meaning to the existence of a normal transaction in the block chain using plain English language... a transaction that gets put there by a user using the software of their choice.

If I do something with escrow, this too will not be block chain magic.  Rather, it will simply be math magic, where someone pays an address nobody knows the private key to, and people release the funds by releasing mathematical clues that enable the right person to calculate the private key and take the funds with the software of their choice.

Companies claiming they got hacked and lost your coins sounds like fraud so perfect it could be called fashionable.  I never believe them.  If I ever experience the misfortune of a real intrusion, I declare I have been honest about the way I have managed the keys in Casascius Coins.  I maintain no ability to recover or reproduce the keys, not even under limitless duress or total intrusion.  Remember that trusting strangers with your coins without any recourse is, as a matter of principle, not a best practice.  Don't keep coins online. Use paper or hardware wallets instead.
MPOE-PR
Hero Member
*****
Offline Offline

Activity: 756
Merit: 522



View Profile
December 13, 2012, 08:19:21 AM
 #15

a. I'm using the blockchain to make an objective indication as to whether an offer still exists, whether it's been satisfied, by whom, and when.  My method automatically cancels the order when filled, and picks a winner if two people accept it at the same time, automatically and objectively.

This is true, and I think it has its advantages.

b. My offer is much easier to accept.  By signifying that sending bitcoins accepts my order, one does not need to bother with getting in contact with me and hoping I am able to respond in a timeframe that works for them.  They don't need to do anything other than determining that I'm trustworthy enough to perform as agreed, and then send some bitcoins.

This is true, it does resolve that part of administrative problems, but it creates a whole new set: someone needs to keep track of all the offers from all the parties, eventually this would have to somehow be built into a database, which rather than scouring the web for signed documents would more reasonably be pushed into by the very party offering. Which would make it a sort of OTC-OB.

c. I believe that writing an actual agreement using language with legal meaning and signing it myself has greater enforceability than putting an unsigned line in the OTC order book.

Iirc you can only put lines in the orderbook if you're id'd with gribble, which means everything in there is actually signed.

My Credentials  | THE BTC Stock Exchange | I have my very own anthology! | Use bitcointa.lk, it's like this one but better.
TheButterZone
Legendary
*
Offline Offline

Activity: 3052
Merit: 1031


RIP Mommy


View Profile WWW
December 13, 2012, 09:34:59 AM
 #16

c. I believe that writing an actual agreement using language with legal meaning and signing it myself has greater enforceability than putting an unsigned line in the OTC order book.

Iirc you can only put lines in the orderbook if you're id'd with gribble, which means everything in there is actually signed.

True, and effectively true.

Saying that you don't trust someone because of their behavior is completely valid.
bg002h
Donator
Legendary
*
Offline Offline

Activity: 1463
Merit: 1047


I outlived my lifetime membership:)


View Profile WWW
December 14, 2012, 03:06:52 AM
 #17

Mike -- another excellent idea. I like where you are heading with this. Any way to encode in the block chain the the price and currency of the completed trade? This way reading the blockchain could also tell you the ticker price.

 You could imagine other forms of communication and time stamping using the blockchain (ie, sending binary messages in the Bitcoin amount...spy's could communicate this way, for example)

Not really - remember I am not doing any magic with the block chain - I am simply assigning a meaning to the existence of a normal transaction in the block chain using plain English language... a transaction that gets put there by a user using the software of their choice.

If I do something with escrow, this too will not be block chain magic.  Rather, it will simply be math magic, where someone pays an address nobody knows the private key to, and people release the funds by releasing mathematical clues that enable the right person to calculate the private key and take the funds with the software of their choice.

Well, you could send a series of transactions to the address in binary code describing the proposed transaction...then 100% of your communicating could be done via the blockchain itself (and you wouldn't have to post on forums the details of the transactions).

Escrow could work like this: joe registers with Casascius escrow ltd and tells you his credit card info and a Bitcoin address. Bob registers with as well and tells you his Bitcoin address...when joe wants to make an offer to sell, he uses the Casascius offer encoder to send himself some Bitcoins as a string of 1's and 0's that fully describe the transaction (serving as proof of the terms).  Bob likes those terms and sends the coins.  The "Casascius insta-p2p distributed exchange block chain analyzer / trade detector" notices that bob kept up his half of the bargain and issues a charge (according to the terms) to joes credit card.

I think this is your next business...why not?

Hardforks aren't that hard. It’s getting others to use them that's hard.
1GCDzqmX2Cf513E8NeThNHxiYEivU1Chhe
casascius (OP)
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1386
Merit: 1136


The Casascius 1oz 10BTC Silver Round (w/ Gold B)


View Profile WWW
December 14, 2012, 03:13:48 AM
 #18

I think this is your next business...why not?

Mainly that most courts don't recognize encoded binary numbers in the block chain as a valid form of contract.  My proposal is meant to benefit normal people, so it will have to be that they agree to a normal-looking contract written in plain English.  The blockchain just provides an objective and non-tamperable means for determining that an execution has or has not occurred - something that adds a meaningful benefit.  The PGP software already does a good enough job for establishing that someone signed some text and needs no further improvement.

Companies claiming they got hacked and lost your coins sounds like fraud so perfect it could be called fashionable.  I never believe them.  If I ever experience the misfortune of a real intrusion, I declare I have been honest about the way I have managed the keys in Casascius Coins.  I maintain no ability to recover or reproduce the keys, not even under limitless duress or total intrusion.  Remember that trusting strangers with your coins without any recourse is, as a matter of principle, not a best practice.  Don't keep coins online. Use paper or hardware wallets instead.
bg002h
Donator
Legendary
*
Offline Offline

Activity: 1463
Merit: 1047


I outlived my lifetime membership:)


View Profile WWW
December 14, 2012, 03:17:08 AM
 #19

I think this is your next business...why not?

Mainly that most courts don't recognize encoded binary numbers in the block chain as a valid form of contract.  My proposal is meant to benefit normal people, so it will have to be that they agree to a normal-looking contract written in plain English.  The blockchain just provides an objective and non-tamperable means for determining that an execution has or has not occurred - something that adds a meaningful benefit.  The PGP software already does a good enough job for establishing that someone signed some text and needs no further improvement.

Courts? It's an escrow service...you are the judge Smiley

Hardforks aren't that hard. It’s getting others to use them that's hard.
1GCDzqmX2Cf513E8NeThNHxiYEivU1Chhe
bg002h
Donator
Legendary
*
Offline Offline

Activity: 1463
Merit: 1047


I outlived my lifetime membership:)


View Profile WWW
December 14, 2012, 03:19:14 AM
 #20

And a good web front end will make it all human readable and seamless.

Hardforks aren't that hard. It’s getting others to use them that's hard.
1GCDzqmX2Cf513E8NeThNHxiYEivU1Chhe
Pages: [1] 2 »  All
  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!