Bitcoin Forum

Bitcoin => Bitcoin Discussion => Topic started by: FreeTrade on October 28, 2011, 11:18:26 AM



Title: What's the best technology to use for a face-to-face BTC transaction.
Post by: FreeTrade on October 28, 2011, 11:18:26 AM
Let's say I've sold you my old collection of VHS Ally McBeal boxsets on eBay.

We've agreed you're coming over to my home to collect the goods and to pay the Bitcoin in person.

What's a good technology set-up for us both to minimize hassle?

Let's assume there is a Wifi and PC at my home. Interested in practical solutions where a) buyer does have a Smartphone b) buyer doesn't.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: kokjo on October 28, 2011, 11:22:39 AM
make the buyer get his laptop or smart phone over to you. give him the address, and ask him to send the bitcoins.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: genjix on October 28, 2011, 11:23:25 AM
bit-pay


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: FreeTrade on October 28, 2011, 11:32:14 AM
make the buyer get his laptop or smart phone over to you. give him the address, and ask him to send the bitcoins.

So the buyer must have laptop/smart phone. And how to give him the address? SMS, Email or is he going to key it in? How am I to confirm, how long to wait?

Think about the practicalities. Maybe I have 20 or 30 people picking up items that day - I want something streamlined that I'm not fiddling over each time.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: FreeTrade on October 28, 2011, 11:41:37 AM
bit-pay

That looks promising, but appears to require a third-party intermediary (and two smartphones with internet connectivity).

Am looking for the best way to send bitcoins rather than a promise from a third party to send bitcoins at a later point.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: foo on October 28, 2011, 11:46:23 AM
Casascius or Bitbills?


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: giszmo on October 28, 2011, 11:49:42 AM
First things that come to my mind:
* your trading partner might not trust your internet
* he might not have a smart phone
* he might even not have a printer

What he can do though is charge an instawallet with an easy to remember secure link.
MyPaymentForThatAwsomeVHSCollection (https://www.instawallet.org/w/MyPaymentForThatAwsomeVHSCollection)

He wouldn't even need paper on him and you may transfer that money to your wallet while he is at your house.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: giszmo on October 28, 2011, 11:54:15 AM
Casascius or Bitbills?

Good idea! Ask your buyer to get those stone age physical money tokens! ;)


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: Elwar on October 28, 2011, 12:00:23 PM
Buyer really should bring a smartphone. Then you just use the Bitcoin app.

Bit-pay is very handy if both have cell phones.

The third party thing is no big deal since they send you either cash or Bitcoins at the end of the day.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: FreeTrade on October 28, 2011, 12:11:58 PM
Casascius or Bitbills?

Awkward to acquire in advance and difficulty with change. Also counterparty risk (third party again).


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: FreeTrade on October 28, 2011, 12:14:38 PM

What he can do though is charge an instawallet with an easy to remember secure link.
MyPaymentForThatAwsomeVHSCollection (https://www.instawallet.org/w/MyPaymentForThatAwsomeVHSCollection)

He wouldn't even need paper on him and you may transfer that money to your wallet while he is at your house.


Interesting - so he'd preload a wallet with the agreed amount, and then he'd give me the keyphrase, which I'd enter into my browser and transfer the funds.

Think this is the winner so far!


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: Gabi on October 28, 2011, 12:17:07 PM
Smartphone or laptop, that's all. You give him your address and done. I suppose he has enough brain to be able to type your address in the phone... If he is so idiot, print it in a qrcode.

The wallet idea is nice but less safer. He give you the wallet with the btc inside it but unless you move that btc in another wallet, he can still move them in another wallet...


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: kokjo on October 28, 2011, 12:17:37 PM
* your trading partner might not trust your internet
no big deal.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: paraipan on October 28, 2011, 12:22:14 PM
Buyer really should bring a smartphone. Then you just use the Bitcoin app.

...

android smart phones are the most reliable for making this kind of transactions, you let him scan you address qr and send payment over his 3G or your wifi internet, doesn't matter actually because bitcoin is designed to work in a non-trusted environment.
You should chat or invite the buyer a coffee while you wait for confirmation (10-20 minutes). It makes you be more social in the end cause you have to be in contact while you wait for that confirm

edit: option 2 would for the buyer to handle you an usb stick with a wallet.dat file that has the wanted amount. You could close your client, swap the wallet with a symbolic link, start the client again with a -rescan param, transfer the funds to an address you own.

edit2: i proposed the only options i would trust in a face-to-face transaction  :)


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: FreeTrade on October 28, 2011, 12:37:14 PM
Buyer really should bring a smartphone. Then you just use the Bitcoin app.

...

android smart phones are the most reliable for making this kind of transactions, you let him scan you address qr and send payment over his 3G or your wifi internet, doesn't matter actually because bitcoin is designed to work in a non-trusted environment.
You should chat or invite the buyer a coffee while you wait for confirmation (10-20 minutes). It makes you be more social in the end cause you have to be in contact while you wait for that confirm  :D

Okay, so I'd have a print-out of my bitcoin address qr handy (maybe made with Wolfram Alpha) and the buyer scans it and enters the amount - what app is the buyer using on his Android smart phone?
I'm confirming, say on my PC - but need to wait 10 or 20 minutes.

This sounds workable and has the advantage of no counterparty and we can change the amount easily if we're haggling. Only disadvantage is that it requires a smartphone.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: pc on October 28, 2011, 01:03:13 PM
This is harder to do right now because it involves tools outside of the normal client right now, but I think eventually it might be common for these kinds of things. Similar to the Instawallet idea, the payer could create a "Paper Wallet" with an address and private key (The easiest way I know of to make a private key & address pair right now is an external program like vanitygen or https://www.bitaddress.org/ though you need to either trust their code or verify yourself that it's correct). He sends to the address the amount that he wants to spend, and then just gives you the private key when he gets there. You redeem it by entering it into an online wallet like Mt. Gox or, if you have the key import patch applied, importing it into a new wallet and transferring the money to your normal wallet.

You in theory should wait for confirmations if the payer is trying to scam you, but they'd have to be trying to pull off a double-spend attack. I think for most person-to-person secondhand sales, you've got about the same risk as the chance of them paying you in counterfeit Federal Reserve Notes. It could happen, and you could wait for a confirmation to make it much less likely, but I doubt that it's worth waiting for more than 1 confirmation, and for most items you probably don't even need to wait for that.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: Steve on October 28, 2011, 01:14:06 PM
Edit: the solution applies to scenario "b" in the OP

I don't know what tools can currently do this (if any), but the following would seem the best way: 1) have the person send the bitcoins to a new address, 2) have them print a QR code that encode the private key, 3) meet up and provide you with the printed QR code, 4) scan and sweep the funds into your wallet.  A tool that makes this easy would be nice...it would make use of the casascius shortened key format if the size of the QR code is a problem.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: the founder on October 28, 2011, 01:17:13 PM
Quote
I don't know what tools can currently do this (if any), but the following would seem the best way: 1) have the person send the bitcoins to a new address, 2) have them print a QR code that encode the private key, 3) meet up and provide you with the printed QR code, 4) scan and sweep the funds into your wallet.  A tool that makes this easy would be nice...it would make use of the casascius shortened key format if the size of the QR code is a problem.

Or you could just tell the guy to send it to flexcoin id : president or whatever...

It's the whole reason we built flexcoin is for mobile payments.    QR code support,  etc..   or you could lug around a laptop .... 




Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: DeathAndTaxes on October 28, 2011, 01:18:08 PM
Buyer really should bring a smartphone. Then you just use the Bitcoin app.

This.

Buyer needs to be sending coins from equipment he owns/controls.  Not doing so is dangerous.  If Buyer uses seller's computer (hey just log in to this computer here) to pay via a waller he needs to trust seller not to perform MITM attack.   For extra security buyer shouldn't connect to seller wifi (instead use smart phone 3G connection).  

To make getting correct BTC address to pay to most smartphone bitcoin wallets support scanning a QR code.  You simply give the buyer a QR code to scan and he sends coins to that address.

This way both parties use trusted equipment and independent network streams.  Neither system connects to each other (air gapped).  The "trust" only happens in the blockchain.  Both parties trust the block chain thus don't need to trust each other.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: the founder on October 28, 2011, 01:21:15 PM
Buyer really should bring a smartphone. Then you just use the Bitcoin app.

This.

Buyer needs to be sending coins from equipment he owns/controls.  Not doing so is dangerous.  If Buyer uses seller's computer (hey just log in to this computer here) to pay via a waller he needs to trust seller not to perform MITM attack.   For extra security buyer shouldn't connect to seller wifi (instead use smart phone 3G connection).  

To make getting correct BTC address to pay to most smartphone bitcoin wallets support scanning a QR code.  You simply give the buyer a QR code to scan and he sends coins to that address.

This way both parties use trusted equipment and independent network streams.  Neither system connects to each other (air gapped).  The "trust" only happens in the blockchain.  Both parties trust the block chain thus don't need to trust each other.


Look at the conference I sent my bitcoins from my iphone using the flexcoin system to the bit-pay system ... funds got there in seconds....   We have several thousand users that use it specifically for person to person (IE: in a bar) bitcoin transfers.   as noted it has QR support even if you didn't want to type in the guys username.

Lug around a laptop or try to make some huge system work... or just flexcoin it...  but do whatever you guys want..  I can only tell you what I do and a few thousand people do.    It supports QR codes,  it even supports the iphone "bookmark icon"  it's specifically designed for mobile.   You can even send bitcoins to an e-mail address...








Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: DeathAndTaxes on October 28, 2011, 01:47:25 PM
Look at the conference I sent my bitcoins from my iphone using the flexcoin system to the bit-pay system ... funds got there in seconds....   We have several thousand users that use it specifically for person to person (IE: in a bar) bitcoin transfers.   as noted it has QR support even if you didn't want to type in the guys username.

Lug around a laptop or try to make some huge system work... or just flexcoin it...  but do whatever you guys want..  I can only tell you what I do and a few thousand people do.    It supports QR codes,  it even supports the iphone "bookmark icon"  it's specifically designed for mobile.   You can even send bitcoins to an e-mail address...

Some of us prefer not to centralize a perfectly good decentralized network.  My fear is that replacing USD banks with BTC banks is a dubious solution.  Eventually Bitcoin banks will get large, get shareholders, and have a never ending need to extract more and more and more value from users.  If I want to use a bank I will use a bank or Paypal.  I can send Paypal to anyone with an email address in seconds.

I don't see what solution Flexcoin solves?
Bitcoin is decentralized.  Paypal is not.  Flexcoin is not.
Bitcoin requires no trusted third party.  Paypal does.  Flexcoin does.
Bitcoin allows peer to peer transactions.  Paypal does not.  Flexcoin does not.

If I want ease of use, centralized, and requiring a trusted third party I will use Paypal.




Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: Steve on October 28, 2011, 01:53:31 PM
Earlier I was proposing a solution for scenario "b" ...if the buyer does have a smartphone, I would say right now the best option is to use one of the wallet services (most of the exchanges or flexcoin or instawallet)...make sure whichever one you choose, it supports HTTPS to protect the buyer from an untrusted internet connection.  Just have the buyer move the needed coins into the wallet, then when you get together, send them to the seller's wallet (you can email the bitcoin address to the buyer...or turn it into a QR code for scanning/copying).  Genjix mentioned bit-pay...on the seller side, you could use bit-pay, but we target merchants that offer a range of products to many buyers (either online or physical).  It sounds like this is just a one off transaction, in which case there's not really a need for bit-pay (on the other hand, if you'll be doing this a lot, bit-pay would be helpful for managing it).


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: Gabi on October 28, 2011, 01:58:54 PM
Quote
I don't know what tools can currently do this (if any), but the following would seem the best way: 1) have the person send the bitcoins to a new address, 2) have them print a QR code that encode the private key, 3) meet up and provide you with the printed QR code, 4) scan and sweep the funds into your wallet.  A tool that makes this easy would be nice...it would make use of the casascius shortened key format if the size of the QR code is a problem.

Or you could just tell the guy to send it to flexcoin id : president or whatever...

It's the whole reason we built flexcoin is for mobile payments.    QR code support,  etc..   or you could lug around a laptop .... 



Or maybe not.

Remember guys, do not trust anyone.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: the founder on October 28, 2011, 02:18:42 PM
DeathAndTaxes and Gabi :  It literally solves every problem with the solution currently running. If you can't see what the problem is then why are you posting in this thread?

Because this thread is screaming:

"the bitcoin client sucks for what I am trying to do,  I can't send it from anywhere and I need to run back home each time to send bitcoins to people in a bar"?


Flexcoin is one of the only solutions that would enable you to access your coins easily from anywhere.  If bitcoin was perfect in it's beta implication this thread wouldn't exist.  The reason it was opensourced is so I (and other people)  could build on it.  

bitcoin client requires a 300+ meg download of the blockchain,  flexcoin doesn't.
bitcoin client cannot easily allow your coins to be accessed from any device
bitcoin client doesn't allow you to run it on your phone
bitcoin client doesn't give you an easy "cold storage option"
bitcoin client forces me to use long huge hash strings to send payments, flexcoin doesn't.
bitcoin client makes me pay fees for small transactions, flexcoin doesn't for flexcoin to flexcoin transfers, or flexcoin to e-mail transfers.
bitcoin client doesn't allow me to send people bitcoins via e-mail,  flexcoin does.

This list goes on forever....   perhaps the best way to say it is that thousands of people wouldn't use it if there was no benefit.  

Now look I am not saying "everyone should use it" because bitcoin was spawned by technically savvy people,  this was designed for ease of use for less technical people... and specifically for people that wanted to use their smartphone as a debit card..    

You're technical enough to build some huge complex system to pay a guy in a bar.... so you're type you'll most likely do that... which is 100000% fine because you might develop an even easier way than sending it to a qr code or ID... which would benefit everyone.

but as it stands now,  flexcoin is the easiest way to solve the problem that was posted in this thread...  











Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: DeathAndTaxes on October 28, 2011, 02:21:30 PM
"Flexcoin is one of the only solutions that would enable you to access your coins easily from anywhere. "

So does Paypal except those are USD "coins".  Making centralized systems is easy, trivially easy.   If Bitcoin ends up as a proxy for a bunch of Paypal 2.0s I have no interest in the project.

Making real decentralized solutions is hard but that is where the value comes from.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: the founder on October 28, 2011, 02:24:35 PM
If Bitcoin ends up as a proxy for a bunch of Paypal 2.0s I have no interest in the project.

You probably should drop the project then.. because that's the direction it will and has been going.   Look how many paypal 2.0's are out there now?

How many people have coins in mt.gox,  tradehill, campbx, flexcoin or use a solution where at least a small part of the time the coins go though a centralized solutions like bit-pay ?  all these are paypal 2.0 ... 





Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: wareen on October 28, 2011, 02:33:22 PM
If Bitcoin ends up as a proxy for a bunch of Paypal 2.0s I have no interest in the project.

You probably should drop the project then.. because that's the direction it will and has been going.  
I beg to differ - the Bitcoin client will become more lightweight, more secure and more feature rich - soon there won't be much need for a central service just to provide access to your coins "easily from anywhere".

Also the other services you listed which are arguably in heavy use today, are only interfaces to "legacy" currencies like USD or EUR - within Bitcoin itself you don't need any of them.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: the founder on October 28, 2011, 02:54:38 PM
If Bitcoin ends up as a proxy for a bunch of Paypal 2.0s I have no interest in the project.

You probably should drop the project then.. because that's the direction it will and has been going.  
I beg to differ - the Bitcoin client will become more lightweight, more secure and more feature rich - soon there won't be much need for a central service just to provide access to your coins "easily from anywhere".

Also the other services you listed which are arguably in heavy use today, are only interfaces to "legacy" currencies like USD or EUR - within Bitcoin itself you don't need any of them.

then we'll agree to disagree,   I don't think the USD, Euro or Yen or any other national currency is going to be replaced by BTC...  at least not tonight.. or in the forseeable future. 

I personally believe that BTC is not a currency but more like a commodity...    again we can agree to disagree...



Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: Steve on October 28, 2011, 03:03:31 PM
"Flexcoin is one of the only solutions that would enable you to access your coins easily from anywhere. "

So does Paypal except those are USD "coins".  Making centralized systems is easy, trivially easy.   If Bitcoin ends up as a proxy for a bunch of Paypal 2.0s I have no interest in the project.

Making real decentralized solutions is hard but that is where the value comes from.
I completely agree.  I eventually want to make use of multi-sigs for bit-pay such that bit-pay never has the ability to move the coins we collect without collaboration from our merchants.  Also, we don't seek to be a point of centralization (if we ever had enough merchants such that you could claim we were a dangerous point of centralization, it would be more merchants than we could possibly provide good service too)...we view ourselves as providing a service (think of it as bitcoin IT outsourcing for merchants that can't or don't want to hire someone specifically for that task).  Online wallets need to evolve to a point where they aren't requiring their customers to entrust them with the ability to spend their coins.  This can be done and made easy for the novice.  It's safer for the customer and it's safer for the wallet service (if you can't move your customers' coins, you won't be a target for theft).  I know people are working on it, it's just a matter of time before we have an online wallet that is easy to use and preserves user control over the coins.  I appreciate the convenience of existing wallet solutions, but they need to evolve.  An account balance in an online wallet is not a bitcoin.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: paraipan on October 28, 2011, 03:16:00 PM
..............................

I personally believe that BTC is not a currency but more like a commodity...    again we can agree to disagree...



can you please keep posting on topic here ppl ?

@FreeTrade the android wallet would be "Bitcoin Wallet (https://market.android.com/details?id=de.schildbach.wallet)" by Andreas Schildbach, we're handling an digital currency here so an electronic device would be involved in all transactions
If he doesn't have a smartphone, tablet or eeepc he could bring a wallet.dat on an usb stick or if he trusts you will meet him for sure he can transfer the funds before showing up at your place. I don't use online wallets and recommend all my friends avoid them at all cost. They learn new things in the process too. Any person letting another person take care of his/her security should not handle bitcoins or money at all.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: the founder on October 28, 2011, 03:23:13 PM
"Flexcoin is one of the only solutions that would enable you to access your coins easily from anywhere. "

So does Paypal except those are USD "coins".  Making centralized systems is easy, trivially easy.   If Bitcoin ends up as a proxy for a bunch of Paypal 2.0s I have no interest in the project.

Making real decentralized solutions is hard but that is where the value comes from.
I completely agree.  I eventually want to make use of multi-sigs for bit-pay such that bit-pay never has the ability to move the coins we collect without collaboration from our merchants.  Also, we don't seek to be a point of centralization (if we ever had enough merchants such that you could claim we were a dangerous point of centralization, it would be more merchants than we could possibly provide good service too)...we view ourselves as providing a service (think of it as bitcoin IT outsourcing for merchants that can't or don't want to hire someone specifically for that task).  Online wallets need to evolve to a point where they aren't requiring their customers to entrust them with the ability to spend their coins.  This can be done and made easy for the novice.  It's safer for the customer and it's safer for the wallet service (if you can't move your customers' coins, you won't be a target for theft).  I know people are working on it, it's just a matter of time before we have an online wallet that is easy to use and preserves user control over the coins.  I appreciate the convenience of existing wallet solutions, but they need to evolve.  An account balance in an online wallet is not a bitcoin.


Common man,  your system is centralized for a period of time as well.    It's like saying "transfers from bit-pay aren't a bitcoin until they leave your system" implying that you do control their money for a period of time.   

I know you,  I can vouch for your system being 100% honest...  but as a whole there must be some centralization...  and there will be... as there is now...   as much as we want to avoid it it will happen (and already has) because everyone that uses bit-pay or flexcoin uses a centralized service, period.








Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: DeathAndTaxes on October 28, 2011, 03:23:30 PM
Steve I am glad you wrote that.  I had very little interest in Bitpay because of the trust issue.  Satoshi paper was devoted to the concept of secure commerce without the need for trusted third parties.  

Quote
A purely peer-to-peer version of electronic cash would allow online
payments to be sent directly from one party to another without going through a
financial institution. Digital signatures provide part of the solution, but the main
benefits are lost if a trusted third party is still required
to prevent double-spending.
We propose a solution to the double-spending problem using a peer-to-peer network.
The network timestamps transactions by hashing them into an ongoing chain of
hash-based proof-of-work, forming a record that cannot be changed without redoing
the proof-of-work. The longest chain not only serves as proof of the sequence of
events witnessed, but proof that it came from the largest pool of CPU power. As
long as a majority of CPU power is controlled by nodes that are not cooperating to
attack the network, they'll generate the longest chain and outpace attackers. The
network itself requires minimal structure. Messages are broadcast on a best effort
basis, and nodes can leave and rejoin the network at will, accepting the longest
proof-of-work chain as proof of what happened while they were gone.

I am glad to see you seem to share that belief. I will pay more attention to Bitpay's development.  There is a genuine need for services like Bitpay (or Flexcoin) especialy if Bitcoin ever becomes more mainstream.  Look at fiat based e-commerce.  Plenty of "shopping cart" systems because most people trying to sell something aren't IT pros.  However IMHO the long term goal should be to develop systems that are both user friendly but AND eliminate or minimize the need for third party trust.  

I think multi-sigs are an important missing component to that vision. I look forward to the day when exchanges, wallets, and shopping cart services all lack the ability to move funds without consent of the owner.  It's not that I don't trust you, I want to be able to not NEED to trust you.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: FreeTrade on October 28, 2011, 03:23:55 PM
1) have the person send the bitcoins to a new address, 2) have them print a QR code that encode the private key, 3) meet up and provide you with the printed QR code, 4) scan and sweep the funds into your wallet.  A tool that makes this easy would be nice...it would make use of the casascius shortened key format if the size of the QR code is a problem.

Thanks Steve, I like this idea - also I'm thinking a Bitcoin address could be stored in the QR too, to allow a trusted merchant to send change from a transaction if it were being spent in a retail store.

Also I like the idea of the only copy of a wallet being stored on a piece of paper - it would be sort of like a bearer bond from those thriller movies! Only even better with no counterparty.



Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: HorseRider on October 28, 2011, 03:26:50 PM
Casascius can print some paper money backed up by bitcoins.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: the founder on October 28, 2011, 03:28:21 PM
Weird for some reason his centralized system is kosher,  but everyone else's isn't...   I am NOT bashing bit-pay.. I think his service rocks...  I'm just pointing out that for some reason you endorse that centralized system while saying you don't endorse centralized systems.

Hence the problem I have with the below post...  it appears it's not actually a centralized system that bugs you...  it's something else that I quite don't get... hopefully you can clarify how running bitcoins though a centralized server is different than running bitcoins though a centralized server.

All I am stating is that honestly it's gotta be centralized to get some things done... such as secure payments from one to another instantly without 6 confirms... etc etc... 


Steve I am glad you wrote that.  I had very little interest in Bitpay because of the trust issue.  Satoshi paper was devoted to the concept of secure commerce without the need for trusted third party.  

Quote
A purely peer-to-peer version of electronic cash would allow online
payments to be sent directly from one party to another without going through a
financial institution. Digital signatures provide part of the solution, but the main
benefits are lost if a trusted third party is still required
to prevent double-spending.
We propose a solution to the double-spending problem using a peer-to-peer network.
The network timestamps transactions by hashing them into an ongoing chain of
hash-based proof-of-work, forming a record that cannot be changed without redoing
the proof-of-work. The longest chain not only serves as proof of the sequence of
events witnessed, but proof that it came from the largest pool of CPU power. As
long as a majority of CPU power is controlled by nodes that are not cooperating to
attack the network, they'll generate the longest chain and outpace attackers. The
network itself requires minimal structure. Messages are broadcast on a best effort
basis, and nodes can leave and rejoin the network at will, accepting the longest
proof-of-work chain as proof of what happened while they were gone.

I am glad to see you seem to share that belief. I will pay more attention to Bitpay's development.  There is a genuine need for services like Bitpay especialy if Bitcoin ever becomes more mainstream.  Look at fiat based e-commerce.  Plenty of "shopping cart" systems because most people trying to sell something aren't IT pros.  However IMHO the long term goal should be to develop systems that both are user friendly but ALSO eliminate or minimize the need for third party trust.  I think multi-sigs are an important missing component to that vision.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: DeathAndTaxes on October 28, 2011, 03:29:36 PM
Casascius can print some paper money backed up by bitcoins.

Which IMHO would be more conveinent to use than coins.  The only problem I see is that it currently is impossible to produce a coin/bill without implicit trust in the creator.  That risk limits their utility.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: the founder on October 28, 2011, 03:30:19 PM
Casascius can print some paper money backed up by bitcoins.

Which IMHO would be more conveinent to use than coins.  The only problem I see is that it currently is impossible to produce a coin/bill without implicit trust in the creator.  That risk limits their utility.

Again,  another centralized bitcoin service.   Trust me man.. it's going to continue to keep going in that direction... some will fail.. some will do well.. some will be run by crooks.. others by saints....  it's the free market and that's how it evolves.



Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: DeathAndTaxes on October 28, 2011, 03:36:57 PM
Weird for some reason his centralized system is kosher,  but everyone else's isn't...   I am NOT bashing bit-pay.. I think his service rocks...  I'm just pointing out that for some reason you endorse that centralized system while saying you don't endorse centralized systems.

Maybe you should read more and attack less given your company rep it attached to your posts.

I 100% DO NOT ENDORSE BITPAY.  I WON'T USE IT.  I WON'T RECOMMEND OTHER USE IT.  Not in its current form.  I am glad to hear the Steve has indicated he lacks control over users funds.  Now granted he may be blowing smoke up my ass but that doesn't really matter because I won't be interested in BitPay UNTIL it has some mechanism where implicit trust isn't required.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: the founder on October 28, 2011, 03:44:16 PM
Death and taxes,  Understood


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: wareen on October 28, 2011, 03:48:07 PM
I don't think the USD, Euro or Yen or any other national currency is going to be replaced by BTC...  at least not tonight.. or in the forseeable future. 
I totally agree with you on that - I did not mean to imply that Bitcoin is going to replace any fiat currency.

But if somebody sells some of his stuff on e-Bay (or equivalent) for BTC, gets donations for his blog in BTC, etc. and uses these Bitcoins to pay for hosting or to hire some graphics designer, then there is no need for any centralized service. With more opportunities to earn and spend Bitcoins (ie. the Bitcoin economy growing) I see no alternative to that development.

So as long as you don't see the Bitcoin economy itself shrinking, the need to go to/from fiat before/after each trade is going to become less over time. Therefore the need for centralized services is going to decline.

My point is that Bitcoin has no need for any centralized services unless for interfacing with the traditionally centralized fiat world.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: Steve on October 28, 2011, 03:52:10 PM
Weird for some reason his centralized system is kosher,  but everyone else's isn't...   I am NOT bashing bit-pay.. I think his service rocks...  I'm just pointing out that for some reason you endorse that centralized system while saying you don't endorse centralized systems.

Hence the problem I have with the below post...  it appears it's not actually a centralized system that bugs you...  it's something else that I quite don't get... hopefully you can clarify how running bitcoins though a centralized server is different than running bitcoins though a centralized server.
We don't store people's bitcoins at bit-pay, but we do move them...so, yes, while you do need to trust us, you don't need to trust us with very much at any given time (about 1 day worth of revenues is all we'll have in our system at any given time).  With an account based wallet service, you're asking people to trust you for longer periods of time and with potentially a lot more value.  I think rather than argue with DeathAndTaxes, we should listen.

In order to be completely decentralized, people will need to install and run their own nodes and such...the software will continue to get easier and make this more feasible for more people...at the same time, no matter how easy it gets, there will always be something you want or need that isn't easy and that takes time.  In the case of merchants, there will be those that will want to manage everything themselves...I think they'll mostly be smaller merchants with technical skills, or very large merchants that can afford to hire someone manage the bitcoin aspect of their business.  But I think there will also be many small or mid sized merchants that will want the cost efficiency of outsourcing the bitcoin aspects to bit-pay (or btcinch or others that have merchant services in the works).  At some point, you have to trust either yourself to manage the bitcoin stuff, or you have to hire someone to do it for you and trust them.  You can hire someone directly on your payroll, or utilize a service like bit-pay.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: BitPay Business Solutions on October 28, 2011, 03:55:24 PM
I won't be interested in BitPay UNTIL it has some mechanism where implicit trust isn't required.

Steve is right that we want to eliminate that issue.  For bitcoin "purists" like yourself (for lack of a better word, sorry) the multi-sig is a great solution.

In the meantime, merchants have a contract with us just like they have a contract with Visa or Mastercard.  Any business that accepts payments from Visa or MC has those funds held by Visa or MC for a period of 24 hours, perhaps up to 72 hours in case of a 3-day weekend.  

Businesses just want to take peoples money in a convenient and reliable manner, and trust that the funds will be delivered.  That's what we do.  We automate bitcoin payments for the business so that, from their perspective, it works just like Visa, Mastercard, or PayPal.  But of course Bit-Pay is better with the whole no-chargeback benefit.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: paraipan on October 28, 2011, 04:18:10 PM
I won't be interested in BitPay UNTIL it has some mechanism where implicit trust isn't required.

Steve is right that we want to eliminate that issue.  For bitcoin "purists" like yourself (for lack of a better word, sorry) the multi-sig is a great solution.

In the meantime, merchants have a contract with us just like they have a contract with Visa or Mastercard.  Any business that accepts payments from Visa or MC has those funds held by Visa or MC for a period of 24 hours, perhaps up to 72 hours in case of a 3-day weekend.  

Businesses just want to take peoples money in a convenient and reliable manner, and trust that the funds will be delivered.  That's what we do.  We automate bitcoin payments for the business so that, from their perspective, it works just like Visa, Mastercard, or PayPal.  But of course Bit-Pay is better with the whole no-chargeback benefit.

awesome features for new coming businesses but we were talking a different issue here as the thread title states...


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: FreeMoney on October 28, 2011, 06:46:25 PM
make the buyer get his laptop or smart phone over to you. give him the address, and ask him to send the bitcoins.

So the buyer must have laptop/smart phone. And how to give him the address? SMS, Email or is he going to key it in? How am I to confirm, how long to wait?

Think about the practicalities. Maybe I have 20 or 30 people picking up items that day - I want something streamlined that I'm not fiddling over each time.

Learn the firstbits of one of your addresses, give it to the payer. They are often 6 chars or shorter. Firstbits.com.

For verification, just watching them pay is pretty good unless it is a huge amount. If huge wait to see it in blockexplorer.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: adamstgBit on October 28, 2011, 09:48:26 PM
maybe have the buyer prepare a wallet.dat with the agreed amount, which he will save on a usb

when he gets to your place, take his wallet.dat from the usb he brought and transfer the funds.

end of story?

EDIT: the user could also e-mail his wallet.dat to him self, if he doesn't have a usb

another idea! Dead simple

the buyer e-mails you his wallet.dat (which has a password on it *now avaible with the new client 0.4.0)

when the buyer get's to your place all he has to do is tell you his password, and you can transfer the funds.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: tvbcof on October 28, 2011, 10:36:28 PM

The best technology to bring to a face-to-face BTC transaction is enough muscle to make it not worth the risk to attempt a robbery, and a location where one would be cumbersome.

Beyond that, I should think that a simple transfer using something like instawallet would be fine, but have not really researched the service for larger BTC transactions.  If Instawallet pulled a MyBitCoin in the 20 minutes or so that I would need them to be working, that would suck, but a risk one takes I suppose.



Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: adamstgBit on October 28, 2011, 11:15:29 PM

The best technology to bring to a face-to-face BTC transaction is enough muscle to make it not worth the risk to attempt a robbery, and a location where one would be cumbersome.

Beyond that, I should think that a simple transfer using something like instawallet would be fine, but have not really researched the service for larger BTC transactions.  If Instawallet pulled a MyBitCoin in the 20 minutes or so that I would need them to be working, that would suck, but a risk one takes I suppose.



but why take a risk?

the buyer e-mails you his wallet.dat (which has a password on it *now avaible with the new client 0.4.0)
when the buyer get's to your place all he has to do is tell you his password, and you can transfer the funds.

anyone see a problem with this dead simple method?


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: tvbcof on October 28, 2011, 11:34:56 PM

The best technology to bring to a face-to-face BTC transaction is enough muscle to make it not worth the risk to attempt a robbery, and a location where one would be cumbersome.

Beyond that, I should think that a simple transfer using something like instawallet would be fine, but have not really researched the service for larger BTC transactions.  If Instawallet pulled a MyBitCoin in the 20 minutes or so that I would need them to be working, that would suck, but a risk one takes I suppose.



but why take a risk?

the buyer e-mails you his wallet.dat (which has a password on it *now avaible with the new client 0.4.0)
when the buyer get's to your place all he has to do is tell you his password, and you can transfer the funds.

anyone see a problem with this dead simple method?

I am envisioning a situation where I have, say, several thousand cash, or some PM's, or whatever.

When the other party and I meet, I give him some cash, he gives me some BTC, then I give him some more cash, he gives me some more BTC, etc.

At the end, he is in the same position I used to be.  That is, he's sitting there with a wad of cash and is vulnerable.  So, meeting in a public location is desirable, as is having the ability to incrementally deliver both BTC and the goods in a fairly rapid-fire and secure method is what I would be looking for.

I believe it to be the case that transferring BTC from one instalwallet to another is rapid and reliable.  I would probably be immediately transferring value out of my Instawallet even as the transaction was underway.  This would be at best cumbersome to accomplish by handing over pre-generated wallet.dat files.



Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: the founder on October 29, 2011, 01:41:42 AM

The best technology to bring to a face-to-face BTC transaction is enough muscle to make it not worth the risk to attempt a robbery, and a location where one would be cumbersome.

Beyond that, I should think that a simple transfer using something like instawallet would be fine, but have not really researched the service for larger BTC transactions.  If Instawallet pulled a MyBitCoin in the 20 minutes or so that I would need them to be working, that would suck, but a risk one takes I suppose.



but why take a risk?

the buyer e-mails you his wallet.dat (which has a password on it *now avaible with the new client 0.4.0)
when the buyer get's to your place all he has to do is tell you his password, and you can transfer the funds.

anyone see a problem with this dead simple method?


Spam filter :)


Actually I like that idea ...  You just need to triple check that the copy you got wasn't already spent....


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: nmat on October 29, 2011, 01:56:46 AM
the buyer e-mails you his wallet.dat (which has a password on it *now avaible with the new client 0.4.0)
when the buyer get's to your place all he has to do is tell you his password, and you can transfer the funds.

anyone see a problem with this dead simple method?

That's just like accepting 0 confirmations. It may be more simple though because it doesn't require smartphones and Internet during the trade.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: FreeTrade on October 29, 2011, 04:57:27 AM
but why take a risk?

the buyer e-mails you his wallet.dat (which has a password on it *now avaible with the new client 0.4.0)
when the buyer get's to your place all he has to do is tell you his password, and you can transfer the funds.

anyone see a problem with this dead simple method?

I think the different methods suggested have different strengths and weaknesses. The strength in this one is no third party required. It probably takes a little more setup than the instawallet method suggested, and you might want to wait for a confirmation. With the instawallet method you don't need to wait for confirmation (as long as you have come to trust instawallet).
So it's swings and roundabouts - it seems to me that no one method is better than all others in all respects.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: paraipan on October 29, 2011, 02:54:25 PM
I think the easiest way is for you to let him use your computer to access a webwallet.

- Get an address from your wallet, copy it into notepad or something, leave that open.
- Enable hidden keylogger
- Buyer comes over, you agree on price.
- Buyer logs into webwallet (BTCinch, MtGox, Tradehill, whatever)
- Buyer copy/pastes address into webclient, sends btc.
- Buyer logs out.
- Transaction should show up in your bitcoin client.

fixed that for you ;)


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: paraipan on October 29, 2011, 03:18:20 PM
I think the easiest way is for you to let him use your computer to access a webwallet.

- Get an address from your wallet, copy it into notepad or something, leave that open.
- Enable hidden keylogger
- Buyer comes over, you agree on price.
- Buyer logs into webwallet (BTCinch, MtGox, Tradehill, whatever)
- Buyer copy/pastes address into webclient, sends btc.
- Buyer logs out.
- Transaction should show up in your bitcoin client.

fixed that for you ;)

heh, yeah, I guess that does throw a kink in things. Perhaps let them bring their computer, then send an email with the bitcoin address? Is there a way for a computer to read a QR code like a smartphone?




it's hard to find a solution, i know, cause bitcoin it's in our computers and heads. Until we can easily import private keys into pc client, android or any other type we will have to deal with it a little awkward.
Would be nice to have an export sum of bitcoins to file. For example hit export, enter amount and client would be writing a  .btc onto your usb stick containing public address and private key. Hand the usb to a seller, he hits import from usb, rescan the blockchain on the fly and spend the amount in his wallet. Hands over the usb stick without that file on it.

I'm sure a bitcoin light client for RIM would go out in no time and all teenager girls will have the ability to go shopping only with that piece of expensive hardware on them.
I trust my smartphone, until we find a real easy solution, and i recommend everyone have one, even my 50 year old parents have one and at first used them only to make calls, now do everything you can do with them and don't complain that much :P


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: DeathAndTaxes on October 29, 2011, 03:30:33 PM
While alternate methods involving exporting keys, and one time wallets might develop....

smartphone adoption will continue to rise.  Hell TMobile has $99 android phones without contract.  That will continue to fall.  In 2-3 years I expect to see $59 smartphones without contract.

At some point there will be little reason to get a "dumbphone".  The type of people who would be attracted to Bitcoin are attracted to smartphones and other gadgets so my guess is smartphone adoption among "bitcoin population" is higher than general population.

I think in 2-3 years most face to face transactions will be like this

a) buyer generates QR code from his Android wallet for onetime public addresss.  This will be as simple as pushing a button/icon for "accept onetime payment"

b) seller uses scan QT code option in his Android wallet which auto opens a payment field with address, payment amount, and possibly a plain text note "used 5970 graphic card" embedded in QR code by buyer.

c) seller reviews transaction and inputs pincode/passphrase.

d) in <5 minutes 0 confirmation transaction appears in sellers wallet.  If necessary parties wait for x confirmations but most small transactions will likely be handled with no confirmations.

Other than waiting on confirms both parties accomplish the goal safely, securely, and in a matter of minutes.




Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: paraipan on October 29, 2011, 03:33:52 PM
agree with you DeathAndTaxes, you mixed seller with buyer though :P


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: adamstgBit on October 29, 2011, 05:43:28 PM
While alternate methods involving exporting keys, and one time wallets might develop....




one time wallets should be developed, as part of the client... maybe even throw in a button |email| 1BTC - To: adam.stg@hotmail.com - encrypt wallet OFF!

easy payment, fun payment


addendum:

E-mail was revolutionary when it went main stream,
Bitcoin just makes Everything a little Bit:better

 


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: nmat on October 29, 2011, 05:53:06 PM
The problem with all that export/import stuff is the double spend. If you import my key into your wallet I can still spend the coins. If you transfer the coins, I can use an attack with a pre-mined block that invalidates the transaction.

Since you need to wait for confirmations anyway, I also prefer DeathandTaxes' method. And you can use green addresses if you don't mind the "centralization".


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: adamstgBit on October 29, 2011, 06:09:51 PM
The problem with all that export/import stuff is the double spend. If you import my key into your wallet I can still spend the coins. If you transfer the coins, I can use an attack with a pre-mined block that invalidates the transaction.

Since you need to wait for confirmations anyway, I also prefer DeathandTaxes' method. And you can use green addresses if you don't mind the "centralization".

i still think e-mail method should be put in the client. it sound relatively easy to implement, and it adds user friendliness,

poeple lost a lot of coins because of user error while backing up a wallet...

the bitcoin client should implement solutions for all the reasons we play with the wallet.dat, as to prevent Human error  .. and Third Party Error!


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: paraipan on October 29, 2011, 06:52:14 PM
The problem with all that export/import stuff is the double spend. If you import my key into your wallet I can still spend the coins. If you transfer the coins, I can use an attack with a pre-mined block that invalidates the transaction.

Since you need to wait for confirmations anyway, I also prefer DeathandTaxes' method. And you can use green addresses if you don't mind the "centralization".

i still think e-mail method should be put in the client. it sound relatively easy to implement, and it adds user friendliness,

.....................


@nmat, if i import the key pair you generated and charged with funds into my wallet and set it on auto, make a transaction to transfer funds on one of my personal accounts, how would you double spend the coins without having some superhero abilities of some kind ?

@adamstgBit has been talked a few times, we already have covered the communications channel named Internet no need to reinvent things again, we need ways to transfer our bitcoins over other channels like air for example. Internet technology already thinked of that too and resolved it by "encapsulating" the message in a good transporting package, a bitcoin wallet stored on a usb flash memory or CD would do.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: nmat on October 29, 2011, 07:18:55 PM
@nmat, if i import the key pair you generated and charged with funds into my wallet and set it on auto, make a transaction to transfer funds on one of my personal accounts, how would you double spend the coins without having some superhero abilities of some kind ?

Finney attack (https://bitcointalk.org/index.php?topic=3441.msg48384#msg48384)

I don't need superhero abilities, just a decent amount of computational power 8) It is obviously not simple and may not be practical to do (http://bitcoin.stackexchange.com/questions/1184/what-can-be-done-to-mitigate-the-risk-of-a-finney-attack/1189#1189), but if you are relying on this "instant transaction" to make large deals (several thousands of dollars) you may be defrauded. You need to wait for confirmations on the transaction to your personal account.

EDIT: The general idea of the attack is that I am pre-mining blocks which include the transaction from my address A to my address B, but I don't release them. Then I give you the private key/wallet to my address A. You give me the money and send a transaction from the address A (which you now control) to your address C. As soon as I "hear" your transaction spending the coins in A, I release the block with a transaction from A to B, which invalidates your transaction.


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: paraipan on October 29, 2011, 07:33:14 PM
@nmat, if i import the key pair you generated and charged with funds into my wallet and set it on auto, make a transaction to transfer funds on one of my personal accounts, how would you double spend the coins without having some superhero abilities of some kind ?

Finney attack (https://bitcointalk.org/index.php?topic=3441.msg48384#msg48384)

I don't need superhero abilities, just a decent amount of computational power 8) It is obviously not simple and may not be practical to do (http://bitcoin.stackexchange.com/questions/1184/what-can-be-done-to-mitigate-the-risk-of-a-finney-attack/1189#1189), but if you are relying on this "instant transaction" to make large deals (several thousands of dollars) you may be defrauded. You need to wait for confirmations on the transaction to your personal account.

EDIT: The general idea of the attack is that I am pre-mining blocks which include the transaction from my address A to my address B, but I don't release them. Then I give you the private key/wallet to my address A. You give me the money and send a transaction from the address A (which you now control) to your address C. As soon as I "hear" your transaction spending the coins in A, I release the block with a transaction from A to B, which invalidates your transaction.

i would happily wait an hour if it's a really large sum, invite the other person a coffee, take a walk or something else. we could turn more social using this system, you never know :P


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: nmat on October 29, 2011, 07:44:14 PM
i would happily wait an hour if it's a really large sum, invite the other person a coffee, take a walk or something else. we could turn more social using this system, you never know :P

Yes, I also like that option. It promotes human contact and social interaction. Everybody is in such a rush these days...


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: paraipan on October 29, 2011, 07:46:41 PM
i would happily wait an hour if it's a really large sum, invite the other person a coffee, take a walk or something else. we could turn more social using this system, you never know :P

Yes, I also like that option. It promotes human contact and social interaction. Everybody is in such a rush these days...


Exactly, you said it  :D


Title: Re: What's the best technology to use for a face-to-face BTC transaction.
Post by: tvbcof on October 29, 2011, 08:14:29 PM
i would happily wait an hour if it's a really large sum, invite the other person a coffee, take a walk or something else. we could turn more social using this system, you never know :P

Yes, I also like that option. It promotes human contact and social interaction. Everybody is in such a rush these days...


I think that at this time, a good percent of the people who have the number of BTC that I would want are perhaps not the kind of people I would wish to spend a lot of time hanging out with.  I'd just as soon pass on being the target of a 'three-pronged attack', for instance.