Bitcoin Forum
May 21, 2024, 12:34:35 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Seeking beta testers for BIP 38 iPhone app (paper wallet scanner/decrypter)  (Read 1455 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
January 08, 2013, 06:17:18 AM
Last edit: January 08, 2013, 04:24:03 PM by casascius
 #1

I'm pleased to announce that I've got a working BIP 38 implementation for the iPhone.  This allows sterile creation of two-factor paper wallets.  One factor is generated on the phone, and the other factor can be generated by you on your desktop, or somebody else.

It works exactly like it's supposed to - anything left I have to do is mostly sprucing it up art-wise for the App Store.

It takes the passphrase of your choice, and then has two main functions:

1 - It will prepare an e-mail containing "intermediate codes" - these are the public keys of EC factors derived from your passphrase.  They are the "first" factor in each two-factor paper wallet.  You can either send the e-mail to yourself, or to somebody else, if you want paper wallets done for you.

2 - It will scan QR codes with the camera, decrypt the paper wallets, and show the unencrypted private key on-screen.  (It will also show an unencrypted QR code on-screen when you press Details, just in case you have a way to scan it.)

My understanding is I can add beta users given the iPhone's UDID and then provide a private download link.  (Bear with me if I take a couple days - this is my first iPhone app and I'm getting good qualified help building it, but sometimes learning is slow!).  The App Store has programs for grabbing and e-mailing/clipping the phone's UDID, or it can be grabbed thru iTunes.



...Then on my desktop I use the e-mail to print some encrypted paper wallets...


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.
casascius (OP)
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1386
Merit: 1136


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


View Profile WWW
January 08, 2013, 06:19:54 AM
Last edit: January 08, 2013, 06:34:22 AM by casascius
 #2

An example use case is...

Someone could sit at a trade show with a card printer, and tell passers-by that they can get their very own Bitcoin address right now...

A passer-by simply downloads the iPhone app, picks a passphrase, and then the person at the show can print a paper wallet on a plastic card, which the person can shove in their fiat wallet.  They have everything they need to start accepting Bitcoins securely today, entirely in their possession.  The app itself can scan the card and prove that it's legit and based on their passphrase.

Meanwhile, someone could print stacks of pretty paper wallets - or engraved QR cards - at the next bitcoin conference or meetup, and the users could have full confidence that they were secure.

That last image - the "confirmation" - is a separate QR code that my Windows app prints, which allows the person to prove that a Bitcoin address cannot be spent from without knowledge of their passphrase, but also without divulging enough data to get the private key (maintaining sterility).  The iPhone app, as you can see, can verify it.  (I added this feature so I could provide two-factor physical bitcoin bars, while being able to assure the buyer that they were really funding an address they control).

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.
Mike Hearn
Legendary
*
expert
Offline Offline

Activity: 1526
Merit: 1129


View Profile
January 08, 2013, 02:19:55 PM
 #3

That's really cool. I question the choice of an iPhone app though. Isn't this likely to get rejected by Apple? I guess it's done that way you personally own an iPhone?

Good luck with app store acceptance (and keeping it accepted).
casascius (OP)
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1386
Merit: 1136


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


View Profile WWW
January 08, 2013, 02:37:53 PM
 #4

That's really cool. I question the choice of an iPhone app though. Isn't this likely to get rejected by Apple? I guess it's done that way you personally own an iPhone?

Good luck with app store acceptance (and keeping it accepted).

I wrote it with Monotouch and it uses all my C# classes from Casascius Bitcoin Address Utility for Windows, so by no means is it restricted to Apple.  All of the data model classes compiled with next to zero modification and so it is literally the same code from my Windows app, just with an iPhone UI.  Once perfected, I will probably go get the Xamarin dev tool for Android and Mac OS, rinse, and repeat.

That said, I'm avoiding any spending functionality, so I'm hoping I'm OK, especially given there are other Bitcoin-related apps that just do things other than let you spend bitcoins.

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.
Mike Hearn
Legendary
*
expert
Offline Offline

Activity: 1526
Merit: 1129


View Profile
January 08, 2013, 04:21:11 PM
 #5

Sounds smart. I should have guessed Smiley
casascius (OP)
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1386
Merit: 1136


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


View Profile WWW
January 08, 2013, 04:21:50 PM
 #6

Source code is now on github!

https://github.com/casascius/PaperTool

I'm a newbie developer when it comes to iOS so any feedback, input, or constructive criticism is welcome

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.
Innomen
Newbie
*
Offline Offline

Activity: 19
Merit: 0


View Profile WWW
April 13, 2013, 05:06:33 PM
 #7

Do you still want help?

Happy to do what I can Smiley
casascius (OP)
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1386
Merit: 1136


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


View Profile WWW
April 13, 2013, 06:13:45 PM
 #8

I have sort of dropped the ball on this, been busy with other stuff.  This app will make a serious splash in the Bitcoin ecosystem, though, I realize that the number of people who can contribute to it is limited because I've based it on MonoTouch, and that's payware if you're deploying to iOS devices, and there's a lot of non-fans of payware dev tools here.

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.
Pages: [1]
  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!