Double checking paper wallets

As advised in this forum previously, a paper wallet should always have a small test payment before committing the full amount

This, however, only tests the public key as a receiving address - it does not test the private key for withdrawals

The private key is only tried for the first time when coins are withdrawn, in which case, if there was some faulty mismatch between public and private keys as created by the paper wallet generator (http://wallet.peercointalk.org), it would be too late to do anything about it

So, what I want to know is: is there a webpage, which can be used offline (or which can be saved on onto a USB and opened on an offline computer) into which a PCC private key can be safely typed – thereby recreating the public key

The user can then double-check that the public key produced is the same as that created by the offline paper wallet generator

I don’t think I’ve seen anything with that functionality, but it certainly sounds like something that would be very useful to have. I wonder if it could use a localized Peercoin testnet to validate against (though, it would need to likely use a clone of the real PPC network block chain).

This is where the Armory Wallet comes into a world of its own. and why I really wanted to port other crypto’s across to it. This walllet allows you to import keys into your wallet all offline and validate the address.

One day I will get round to this!.. will see if i can add a project to github and project to peercommit tip

Fuzzybear

You can rename your wallet.dat to wallet1.dat and restart the qt wallet off-line, import the private key to the newly generated empty wallet, check the address from qt, quit qt wallet and delete the new wallet, rename wallet1.dat back to wallet.dat.

[quote=“RobertLloyd, post:1, topic:1669”]As advised in this forum previously, a paper wallet should always have a small test payment before committing the full amount

This, however, only tests the public key as a receiving address - it does not test the private key for withdrawals

The private key is only tried for the first time when coins are withdrawn, in which case, if there was some faulty mismatch between public and private keys as created by the paper wallet generator (http://wallet.peercointalk.org), it would be too late to do anything about it

So, what I want to know is: is there a webpage, which can be used offline (or which can be saved on onto a USB and opened on an offline computer) into which a PCC private key can be safely typed – thereby recreating the public key

The user can then double-check that the public key produced is the same as that created by the offline paper wallet generator[/quote]

Hi RobertLloyd,
Hmmmm… maybe I am not understanding your question, because I believe there are at least three programs, including the one that you linked above, that can do just what you want.

[quote=“RobertLloyd, post:1, topic:1669”]So, what I want to know is: is there a webpage, which can be used offline (or which can be saved on onto a USB and opened on an offline computer) into which a PCC private key can be safely typed – thereby recreating the public key

The user can then double-check that the public key produced is the same as that created by the offline paper wallet generator[/quote]

I understand that you want to create a Peercoin private key / public address pair and without having the public address you want to then type or paste the private key into a program that will generate its Peercoin public address from the private key. Thus confirming that your public address is correct for your Private Key. Is that right?

If so, then I believe all three programs: wallet.peercointalk.org, http://tizop.com/peercoin.htm, and brainwallet.org can be saved to usb thumbdrive and run on an offline computer and do just what you want. Note: the wallet.peercointalk.org is still not working on the “hide art” check box and the bulk wallet tab on my computer.

The way you do what you want to do in tizop.com/peercoin.htm is you can generate your private key / public address pair with any of the first tabs: Single Wallet, Paper Wallet or Bulk Wallet then select and copy the private key you have generated. Go to the Wallet Details tab on the end and paste your private key into the Enter Private Key window at the top, then press the View Details button. You should see appear below the Peercoin Public Address generated from your Private Key. Compare your newly generated Public Address to the one you generated in the earlier tab. They should match.

I did this exercise about a month or so ago, repeatedly copying Private Keys generated in each of the three programs listed above and pasting them into the other programs and comparing the resultant generated Public Addresses. All results were identical in all tests that I ran.

Brainwallet.org is a little bit different but it can also generate Public Addresses from Private Keys. Just be sure it is set on PPC as it can generate pairs for 20 different cryptos.

I hope I understood your question correctly - and that this has been helpful.

Best to You, and as Sunny says: “Have Fun!” :slight_smile: :slight_smile: :slight_smile:

1 Like

Also, I never ever use a Private Key more than once. When it is taken online and used it is then discarded and the Public Address / Private Key are never used again.

[quote=“FuzzyBear, post:3, topic:1669”]This is where the Armory Wallet comes into a world of its own. and why I really wanted to port other crypto’s across to it. This walllet allows you to import keys into your wallet all offline and validate the address.

One day I will get round to this!.. will see if i can add a project to github and project to peercommit tip

Fuzzybear[/quote]

It would be GREAT to have Armory working with Peercoin! I can get behind a bounty or any kind or reward system to get Armory.

[quote=“NewMoneyEra, post:7, topic:1669”][quote=“FuzzyBear, post:3, topic:1669”]This is where the Armory Wallet comes into a world of its own. and why I really wanted to port other crypto’s across to it. This walllet allows you to import keys into your wallet all offline and validate the address.

One day I will get round to this!.. will see if i can add a project to github and project to peercommit tip

Fuzzybear[/quote]

It would be GREAT to have Armory working with Peercoin! I can get behind a bounty or any kind or reward system to get Armory.[/quote]

Well to get this moving I have forked the bitcoinArmory project ready to be adapted to Peercoin

I have also added this to
tip4commit - http://tip4commit.com/projects/593
peer4commit - http://peer4commit.com/projects/9

if people would like to donate, also any python developers please feel free to have a look at the code here as well. This is a big project and it will be quite a challange I feel to get it working for Peercoin so any help is appreciated.

Fuzzybear

Thank you everyone for your replies

Yes, NewMoneyEra, you got me right - I tried Brainwallet and it works a treat - I look forward to squirreling a few peercoins into paper wallets this weekend

Can someone explain what is being planned with Armory, as I do not understand - thanks

As to what is “planned” for Armory, I’m not sure there is a plan yet, but it sure would be nice to have a solid version of Armory for Peercoin. I’m not sure what you know about Armory and I am no expert, but I am aware that Armory is wallet software currently for Bitcoin and it is widely viewed as the most secure wallet available. Also, Armory may be the most fully featured Bitcoin wallet with MANY different options. You can run it or test it out for free if you have the full Bitcoin-Qt wallet installed.

One highly touted security feature of Armory is that it has both online and offline program code. Thus, a user can create an unsigned Bitcoin Transaction with the online code, this unsigned Transaction is saved to a removable memory, then the Transaction is input to the offline computer where offline Armory signs the transaction with the offline Private Key. The now-signed Transaction is saved back to the removable memory where it is in turn transferred back to the online computer Armory to be processed in a normal manner by the network. Thus, the Private Key is never online.

My solution to this: create a paper wallet that I don’t intend to use. Send a losable amount to it. Import it. Make an entirely new paper wallet and send the actual money to that.

What I’m testing is the integrity of the paper wallet making program.

does brainwallet.org work that way? maybe you can cross check it against that.

That is like testing matches. What is needed is a secure means of testing the actual wallet that is about to be used.

NewMoneyEra suggests a coupple of sites where private keys can be tested, including brainwallet (although, for some reason, I cannot get brainwallet to work on my offline laptop)

Boot ubuntu live cd. Install peercoin-qt. Unplug internet. Import private key by typing it in.

Hi pillow,

I have not tried your process quoted above. But, it is interesting. When you install peercoin-qt the entire blockchain is in your computer. Then you unplug the Internet. And then, “import private key by typing it in” . I don’t know where you are typing it in? Are you using peercoind? How do you do this on Ubuntu Linux? Please tell me step by step as if I were a 5 year old. :stuck_out_tongue: OK? Thanks.

But, more interesting to me is that this will probably search the resident blockchain and import the funds into the wallet? All offline?

Ha. I have to try this!

Hi pillow,

I have not tried your process quoted above. But, it is interesting. When you install peercoin-qt the entire blockchain is in your computer. Then you unplug the Internet. And then, “import private key by typing it in” . I don’t know where you are typing it in? Are you using peercoind? How do you do this on Ubuntu Linux? Please tell me step by step as if I were a 5 year old. :stuck_out_tongue: OK? Thanks.

But, more interesting to me is that this will probably search the resident blockchain and import the funds into the wallet? All offline?

Ha. I have to try this![/quote]

Hi NewMoneyEra.

What he means is simply to test the clients ability to import the private by using the wallet client. The offline client would import it, and show your address in the list of receiving addresses and how much money is already in there, but, being unable to communicate with the blockchain wouldn’t be able to send money (you’d just be reassured that you will be able to follow these steps again, except online, and claim your funds when the time comes, without compromising the private key being offline still).

To answer your question of “where you are typing it in,” I would like to refer you to this thing I wrote:
http://www.devtome.com/doku.php?id=creating_and_importing_paper_wallets
the section explaining how to do it from a command prompt, instead of from a console applies here.

Until 0.4.0 is officially released, you’ll have to open a terminal, and execute ppcoind with an importpriv key flag, and your private key typed in. That process is explained in my devtome entry above, just skip down to the section on importing.

As if you were five, ive never tried this personally but what he means is to do this:

Step 1: create your paper wallet offline (also explained in the devtome page)

Step 2: go back online, boot your computer, from an ubuntu live-cd-- which key you use to do this varies from computer to computer, ive seen it be esc, f12, f8, f3, delete, etc. It might say when you turn your computer on initially. You point the bios to boot from a cd.

Step 3: Install Peercoin-QT. I wrote a devtome page for this also:
http://www.devtome.com/doku.php?id=making_a_qt_wallet_work_in_ubuntu_12.04

basically, download the tar.gz package, from the website, and run the program.

step 4: go offline after the blockchain catches up. now you have the client running in a fresh instance of ubuntu that is offline.

step 5: follow the steps for importing your private key into the qt client from the command line, per my devtome page:
http://www.devtome.com/doku.php?id=creating_and_importing_paper_wallets

step 6: see that you were able to, because you let the blockchain catch up in step 4 you can see that any money you’ve already sent is sitting on the blockchain.

step 7: turn the computer off, and your paper wallet is still offline…

let me know if anything is unclear, I’m happy to explain this better to the best of my knowledge if necessary.