Bitcoin Forum
December 03, 2016, 05:58:14 PM *
News: Latest stable version of Bitcoin Core: 0.13.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: [1] 2 3 »  All
  Print  
Author Topic: PaperCoins  (Read 3615 times)
ovidiusoft
Sr. Member
****
Offline Offline

Activity: 252


View Profile
January 29, 2012, 11:15:39 PM
 #1

Warning, long post. Skip to last like for LT;DR version.

I though a little about in-store usage of bitcoins and physical bitcoins over the last few days. I actually convinced myself that using physical bitcoins in stores is better than using a smartphone Smiley

* it's definitely faster to take a piece of paper out of your pocket, just like you would a bill, than to take out the phone, unlock it, start the Bitcoin app, enter password, scan a QR code, enter amount, press Send, wait, then wait for the tx confirmation from the store "register". Using physical bitcoins means give a paper to the clerk, who will scan the QR code and sweep the funds and (optionally) send you the remainder (change). 15 seconds versus 2 minutes (2 minutes if the store is kind enough to accept 0-confirmation transactions).

* it's safer for you (the buyer). You only carry with you some bills, no need to store a wallet on your phone. So you can now "safely" install that naked pics app you wanted, without fear of losing your coins.

* it's safer for the seller, too. They don't need to wait for confirmation and a double spend is a lot more difficult to time right. This will allow buying valuable stuff without waiting 1 hour for 6 confirmations.

Having said that, I looked at the physical coins that exist now. They are all very nice (I want to get my hands on a Casascius coin, nao!), but I don't think they will work in real life, because I believe they were created with a few wrong ideas in mind:

* it's assumed they will be passed along untouched. For that reason, the private key is protected with a hologram, so the person receiving can check if it's still untouched. This means the person receiving them knows how to detect a forged/openend hologram.

* as I believe that's not the case (clerk in store, remember? not security/hologram/forgery specialist), then the receiver must check the balance by scanning the QR code. So then, all those holograms are useless...

* they are mighty expensive. One of the reasons stores might accept BTC is because they can dodge card/bank fees - so they can lower their prices. Then why would the buyer pay even more for using a physical Bitcoin? He will probably prefer to pay cash...

* you need to trust the issuer. That's simply too unbitcoiny. Sorry guys, I do believe you're trustworthy, but this is a bad idea.

So here's another idea (it's not new, I'm sure you already know about "cold storage" and I know 1-2 products who have related - paper backup - functions).

Let's use a very simple bill that basically just has on it a QR code of the private key, plus the amount on it (5 BTC, for example). No protection, no fancy logos and colors. Something that you can print on your own cheap inkjet, cut and use in store. Remember they will be used only once, after sweeping the funds, the clerk will throw them away (recycle). Something like this:

http://blog.mybox.ro/wp-content/files/PaperCoins-1327877209.pdf

I'm sure the design can be improved a lot. I created some glabels templates and a bash script to generate PDF files of PaperCoins from a simple CSV file. You can find them here:

https://github.com/ovidiusoft/bitcoin-scripts/tree/master/PaperCoins

I would love to hear you oppinions on this (and maybe get a better design? is 10x5 cm too small?), and also I would like to ask developers what they think about adding such a feature to their clients:

* Option "Create PaperCoins", where the user selects the number of bills to create and amounts on each. The software creates N new addresses, sends the amounts and produces a PDF or prints the bills. Also, mark those addresses as "don't use" except sweep the funds back (if you didn't use the bills for some reason).

I will write another bash script that does exactly this for Electrum. I also have some other random ideas, like:

* encode the "remainder" (change) address into the QR code. For example, the QR code might be a string "FUNDSKEY=<private-key>,VALIDAMOUNT=<expected-amount>,REMAINDERADDRESS=<address>". This needs discussion, as the software used in stores needs to know about it.

* it would be nice if developers will consider using some design standards, like: bill should be rectangle, amount is in the left/center of the bill, QR code on the right, (if printed) remainder address on the back of the bill. I am thinking it would be easier for the sellers - they will easily recognize a bitcoin bill, no matter who/what printed it.

That's all. What do you think?

Update: See this post https://bitcointalk.org/index.php?topic=61818.msg723880#msg723880 for a script for Electrum users, that automatically creates new PaperCoins addresses and funds them. Also see README file at the URL above.

Update 2: Some ideas about the QR code format: https://github.com/ovidiusoft/bitcoin-scripts/blob/master/PaperCoins/QR-code-format.txt

TL;DR ? Download PDF in 1st link, print, cut. PaperCoins!
1480787894
Hero Member
*
Offline Offline

Posts: 1480787894

View Profile Personal Message (Offline)

Ignore
1480787894
Reply with quote  #2

1480787894
Report to moderator
1480787894
Hero Member
*
Offline Offline

Posts: 1480787894

View Profile Personal Message (Offline)

Ignore
1480787894
Reply with quote  #2

1480787894
Report to moderator
1480787894
Hero Member
*
Offline Offline

Posts: 1480787894

View Profile Personal Message (Offline)

Ignore
1480787894
Reply with quote  #2

1480787894
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
ZodiacDragon84
Sr. Member
****
Offline Offline

Activity: 266


The king and the pawn go in the same box @ endgame


View Profile
January 29, 2012, 11:20:44 PM
 #2

intrigued. Watching

Looking for a quick easy mining solution? Check out
www.bitminter.com

See my trader rep at Bitcoinfeedback.com
!
paraipan
Legendary
*
Offline Offline

Activity: 924


Firstbits: 1pirata


View Profile WWW
January 29, 2012, 11:28:07 PM
 #3

I use https://www.bitaddress.org to print me some bills. Then i cut them and fund with whatever small amounts i need. I write the value they carry by hand after funding with an android phone. The page script is clients side so the priv keys are in your possession at all times so you can even save the page as html and it will work. I'm not affiliated in any way just using the service.

BTCitcoin: An Idea Worth Saving - Q&A with bitcoins on rugatu.com - Check my rep
ovidiusoft
Sr. Member
****
Offline Offline

Activity: 252


View Profile
January 29, 2012, 11:30:45 PM
 #4

I use https://www.bitaddress.org to print me some bills. Then i cut them and fund with whatever small amounts i need. I write the value they carry by hand after funding with an android phone.

Yep, I know about them. I ignored online services on purpose (trust issues).
casascius
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1344


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


View Profile WWW
January 29, 2012, 11:40:45 PM
 #5

I think people printing their own "bitcoin bills" would be a very sustainable idea.  No security would be needed

Merchants would sweep the bills immediately via QR code.  Merchants could give back change by sending it back to one of the bills, or by printing a new bill.

It would be as simple and as fast as paying with cash or gift cards.

Small risks on both sides:  Merchants are vulnerable to double spending attacks, but for most normal-sized transactions, even just 15 seconds of vigilance on the block chain will rule just about all of it out.  Customers are vulnerable to merchants helping themselves out to any change they return, a risk that can be minimized just by printing small bills so the incentive to steal change would be minimized.

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 wallets instead.
casascius
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1344


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


View Profile WWW
January 29, 2012, 11:42:05 PM
 #6

I use https://www.bitaddress.org to print me some bills. Then i cut them and fund with whatever small amounts i need. I write the value they carry by hand after funding with an android phone.

Yep, I know about them. I ignored online services on purpose (trust issues).

Bitaddress.org was meant for you to save and run offline.  It is a single self-contained html file with inline javascript and no external references or links.  Save to your hard disk, notice it still is completely functional when run without an internet connection.

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 wallets instead.
paraipan
Legendary
*
Offline Offline

Activity: 924


Firstbits: 1pirata


View Profile WWW
January 29, 2012, 11:44:10 PM
 #7

I use https://www.bitaddress.org to print me some bills. Then i cut them and fund with whatever small amounts i need. I write the value they carry by hand after funding with an android phone.

Yep, I know about them. I ignored online services on purpose (trust issues).

Bitaddress.org was meant for you to save and run offline.  It is a single self-contained html file with inline javascript and no external references or links.  Save to your hard disk, notice it still is completely functional when run without an internet connection.

+1 i obviously edited my post to late saying the same thing

BTCitcoin: An Idea Worth Saving - Q&A with bitcoins on rugatu.com - Check my rep
ovidiusoft
Sr. Member
****
Offline Offline

Activity: 252


View Profile
January 29, 2012, 11:58:13 PM
 #8

Bitaddress.org was meant for you to save and run offline.  It is a single self-contained html file with inline javascript and no external references or links.  Save to your hard disk, notice it still is completely functional when run without an internet connection.

+1 i obviously edited my post to late saying the same thing

Indeed Smiley. So my script duplicates that functionality - but it allow some customization (I hope someone with more talent than me can contribut a getter design). The next script I'll release will make it easier for Electrum users to generate PaperCoins. You will run it like this: "script <amount> <amount> <amount> ...." and it will create a new wallet (so you'll have it later if you want to, but separate from your main one), transfer funds, generate PDF, all automagically. Later, I want to integrate it into the Electrum client GUI and I'm hoping this topic will attract other client developers who will want to add the same functionality to their software. Then, we can work with POS software developers to add the sweep (+send remainder) functionality. That's my secret plan! Oh wait...
molecular
Donator
Legendary
*
Offline Offline

Activity: 2128



View Profile
January 30, 2012, 12:09:39 AM
 #9

I think people printing their own "bitcoin bills" would be a very sustainable idea.  No security would be needed

Merchants would sweep the bills immediately via QR code.  Merchants could give back change by sending it back to one of the bills, or by printing a new bill.

Interesting.

You'd have to sweep the change-bill yourself immediately or trust the merchant. Neither is out of the question, of course.

PGP key molecular F9B70769 fingerprint 9CDD C0D3 20F8 279F 6BE0  3F39 FC49 2362 F9B7 0769
Revalin
Hero Member
*****
Offline Offline

Activity: 728


165YUuQUWhBz3d27iXKxRiazQnjEtJNG9g


View Profile
January 30, 2012, 12:11:44 AM
 #10

This is elegant and easy.  I like it.

The general process can also be done electronically - you can have your phone put up a QR code that provides keys for a few addresses that total the correct amount.  It recreates all the phone security problems, but adds some convenience.

I'd love to see this process become the default.  It would work well regardless of if the buyer wants to use phones or paper.

      War is God's way of teaching Americans geography.  --Ambrose Bierce
Bitcoin is the Devil's way of teaching geeks economics.  --Revalin 165YUuQUWhBz3d27iXKxRiazQnjEtJNG9g
cbeast
Donator
Legendary
*
Offline Offline

Activity: 1722

Let's talk governance, lipstick, and pigs.


View Profile
January 30, 2012, 12:24:54 AM
 #11

A paper bill is fine, but has one small problem. Unless you know exactly how much your purchase will be, there will be a balance left over on your paper bill. You can't just throw it away after an amount is swept off. You will need to move the balance to a secure address somehow. It would be great to have an automated way to make your bill expire after a predetermined set period of time and the balance is then moved to the next address in a series.

Any significantly advanced cryptocurrency is indistinguishable from Ponzi Tulips.
paraipan
Legendary
*
Offline Offline

Activity: 924


Firstbits: 1pirata


View Profile WWW
January 30, 2012, 12:29:54 AM
 #12

A paper bill is fine, but has one small problem. Unless you know exactly how much your purchase will be, there will be a balance left over on your paper bill. You can't just throw it away after an amount is swept off. You will need to move the balance to a secure address somehow. It would be great to have an automated way to make your bill expire after a predetermined set period of time and the balance is then moved to the next address in a series.

or just have a keyring or card with a qr where the merchant could return the change

https://bitcointalk.org/index.php?topic=57303.0

BTCitcoin: An Idea Worth Saving - Q&A with bitcoins on rugatu.com - Check my rep
ovidiusoft
Sr. Member
****
Offline Offline

Activity: 252


View Profile
January 30, 2012, 12:32:45 AM
 #13

A paper bill is fine, but has one small problem. Unless you know exactly how much your purchase will be, there will be a balance left over on your paper bill. You can't just throw it away after an amount is swept off. You will need to move the balance to a secure address somehow. It would be great to have an automated way to make your bill expire after a predetermined set period of time and the balance is then moved to the next address in a series.

My initial thought was that the remainder will be sent by the seller to another address you provide (I even thought we might include it in the QR code), basically emulating how you pay with cash right now. I also assumed the buyer trusts the seller.

But your idea of expiration is much better, if it's doable. At a minimum, one could run another sweep after returning from the store ("gather all remainders from my used PaperCoins"), but doing it automatically would be cool.
cbeast
Donator
Legendary
*
Offline Offline

Activity: 1722

Let's talk governance, lipstick, and pigs.


View Profile
January 30, 2012, 12:33:45 AM
 #14

A paper bill is fine, but has one small problem. Unless you know exactly how much your purchase will be, there will be a balance left over on your paper bill. You can't just throw it away after an amount is swept off. You will need to move the balance to a secure address somehow. It would be great to have an automated way to make your bill expire after a predetermined set period of time and the balance is then moved to the next address in a series.

or just have a keyring or card with a qr where the merchant could return the change

https://bitcointalk.org/index.php?topic=57303.0
I'm not sure I understand the difference between sweeping and importing a private key.

Any significantly advanced cryptocurrency is indistinguishable from Ponzi Tulips.
paraipan
Legendary
*
Offline Offline

Activity: 924


Firstbits: 1pirata


View Profile WWW
January 30, 2012, 12:35:37 AM
 #15

A paper bill is fine, but has one small problem. Unless you know exactly how much your purchase will be, there will be a balance left over on your paper bill. You can't just throw it away after an amount is swept off. You will need to move the balance to a secure address somehow. It would be great to have an automated way to make your bill expire after a predetermined set period of time and the balance is then moved to the next address in a series.

or just have a keyring or card with a qr where the merchant could return the change

https://bitcointalk.org/index.php?topic=57303.0
I'm not sure I understand the difference between sweeping and importing a private key.

sweep = import + send amount to really private and secure key

BTCitcoin: An Idea Worth Saving - Q&A with bitcoins on rugatu.com - Check my rep
ovidiusoft
Sr. Member
****
Offline Offline

Activity: 252


View Profile
January 30, 2012, 12:36:16 AM
 #16

I'm not sure I understand the difference between sweeping and importing a private key.

Sweeping is importing a private key and immediately transfering all funds to another address. It's good practice when someone else knows that private key.
casascius
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1344


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


View Profile WWW
January 30, 2012, 03:38:28 AM
 #17

or just have a keyring or card with a qr where the merchant could return the change

https://bitcointalk.org/index.php?topic=57303.0

Or to any other bill the customer holds.

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 wallets instead.
cbeast
Donator
Legendary
*
Offline Offline

Activity: 1722

Let's talk governance, lipstick, and pigs.


View Profile
January 30, 2012, 03:48:51 AM
 #18

or just have a keyring or card with a qr where the merchant could return the change

https://bitcointalk.org/index.php?topic=57303.0

Or to any other bill the customer holds.
Ok, so you could put the next public address in a series on the bill given for purchase.

Any significantly advanced cryptocurrency is indistinguishable from Ponzi Tulips.
Revalin
Hero Member
*****
Offline Offline

Activity: 728


165YUuQUWhBz3d27iXKxRiazQnjEtJNG9g


View Profile
January 30, 2012, 03:54:13 AM
 #19

That's perfect.  You can embed the payment key and the change address into a single QR code.

"3.95 BTC please."  Hand them a 5 BTC note.  They scan it.  10 seconds later your phone chirps to let you know the 1.05 BTC change was just sent with no obvious double-spends.

That's faster and easier than waiting for them to count out fiat change.

      War is God's way of teaching Americans geography.  --Ambrose Bierce
Bitcoin is the Devil's way of teaching geeks economics.  --Revalin 165YUuQUWhBz3d27iXKxRiazQnjEtJNG9g
jtimon
Legendary
*
Offline Offline

Activity: 1246


View Profile WWW
January 30, 2012, 08:43:58 AM
 #20

I remember a couple of old threads about this same thing.

2 different forms of free-money: Freicoin (free of basic interest because it's perishable), Mutual credit (no interest because it's abundant)
Pages: [1] 2 3 »  All
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!