Voucher & Paper Wallet Generator

Great work! Can you use this to create a paper wallet for an existing private key?

Hi! This is not yet available in the Gui, although it would be a good enhancement.

In the meantime, you can tweak the code a bit to get that, it’s quite easy if you have Visual Studio or Mono develop installed. If its an option for you i can point you to the lines of code you have to change, nevertheless i will take it as a feature request but it may take while to find a free slot of my time to add it in.

1 Like

I do have VS installed but have never developed in Mono. If you can point me to the lines I’m sure I can figure it out. Thanks in advance!

VS is fine, you can use either this or Mono develop what ever you prefer.
You can do the following:
Step1:

    • Download the sources as .zip file from my GitHub (like see above)
    • Extract the .zip to a new folder
    • Open the project “Voucher+Paper_Wallet.sln” in VS (double click the file should open it)
    • Once it is open start it (green arrow on top) to see if all dependencies are available

If Step 1 was successful you can compile and run the tool on your computer and we can go on with the next steps.

Step2:

    • On the right open the file “MainForm.cs” for editing
    • Navigate to line 243, you should see this:

      // Testdata
      //string privateKey = “abf4cf55a2b3f742d7543d9cc17f50447b969e6e06f5ea9195d428ab12b7318d”;

  • Remove //string and change the rest of the line to privateKey = "<your key>", it should look like this:

privateKey = "abf4cf55a2b3f742d7543d9cc17f50447b969e6e06f5ea9195d428ab12b7318d";
Please make sure that the private key is a string in hex format, low case and contains 64 chars. Don’t forget the “;” at the end of the line.

  • Hit the green arrow again and run the project.
  • Once started click “generate” and this should create you a paper wallet with your key set in the sources.
  • After saving the paper wallet make sure that you remove your private key again (delete the line and save the file) out of the sources!

Hope this helps you.

EDIT: Safety note: Always test the paper wallet and make sure you can import before sending funds to it! Keep you private keys safe!

1 Like

Great, will be piece of cake. I hope to make time this weekend to play with it and will send you a tip when I get it working.

1st - thanks for making such a beautiful paper wallet program. NICE.
I have looked it over and am wondering if there is a “BULK” create feature that I have overlooked?
It would be really handy to be able to create bulk paper wallets offline.
If this isn’t a feature yet – are there plans for it?
Thanks!

Hi! No, unfortunately there is no such feature yet.

It’s not concretely planned but i will add it as well to the list of features requested - although i can’t promise a release date yet.

Updated the .exe version of the voucher and paper wallet generator which now has the option to create wallets from a custom private key as well as bulk voucher support.

3 Likes

When I attempt to launch the Voucher+Paper_wallet.exe, it gets picked up by my anti-virus (Panda) and gets deleted immediately.

I logged onto the NanoWallet, however could not see a “Services” section in order to validate the .Zip file using the NEM Apostille service.

Any kind soul out there who is able to assist?

Many thanks.

Hi Arimor,
sadly some people do harmful things with executables, this is probably the reason why most AV software warns or removes .exe files - which, in general, is understandable.

First of all you should verify the .zip file you have. Open Nano Wallet - Navigate to the Services section (top navigation bar) and find “Apostille”. Below Apostille you have the chance to “Audit” a file. Click on “Audit”, Drop the .zip file in (keep the long name) and verify that you get a “File sucessfully audited” message. Also check that it is published by NANEMA-TZVL26-LNYIBB-GOZ7X2-IQ57UR-ZLEWFT-63YZ. The red x in the “private” section just indicates that the Apostille is done with the public address - this is okay.

Once you have verified the .zip file you should consider if you can trust me as a publisher and you may check if you can add an exception to the AV software. I don’t know Panda but most AV software allow white listing for individual files. I wouldn’t recommend to disable the anti virus software at all!

If it’s not possible to add exceptions you may run the generator in a virtual machine, there are f.ex. vmware player, hyper v, virtual box etc. which give you an isolated operating system.

It’s also possible to use some sandbox software to isolate the generator from your environment, although i personally have no experience with that.

Last option, this also applies if you don’t trust me, you can compile and run the generator form the sources. Install Visual Studio Community Edition, download the sources from github to a new folder, open the project and run it.

Hope this helps
Owon

Thank you for getting back to me on this Owon, all sorted. I just added the .exe to the AV exceptions list.

Many thanks once again.

Arimor

I made a tutorial on how to use this paper wallet generator :slight_smile: I am always using it to make some paper wallets for meetups :smile:

4 Likes

Hi owon do you have this version on github?

Hello Joris. True, seems as if the version on github is not the latest one. Thought I updated it… It’s not on my computer anymore, but I will search for it in my backups an push it. Please give me some days to check.
Thanks
Owon

Hi! I found the current sources and pushed them to github. I also added two new paper wallet designs, the two old ones looked boring.

Link to the new executable: https://github.com/owon/voucher-paper_wallet/blob/master/voucher-ppwlt06%20--%20Apostille%20TX%20e758682b002abd85713c5dc4a5f06f4470cccdd4fc81eda167989e968fbbb464%20--%20Date%202018-05-05.zip

As usual: Always take care of your private keys and verify the publisher with NEM Apostille!

Have fun!

Cheers
Owon

7 Likes

Thanks a lot!!

I like the new designs

Good morning dear friend.
What does it mean in your: paperwallet &voucher generator
This is your new Nem address
To unlock this wallet, please install the Android/iOS NEM Wallet and scan the QR printed on this voucher ?

Does it mean that it is blocked and the blockchain is not yet?

The same goes for other portfolio generators such as bitaddres.org https://bitcoinwalletpaper.com/en/ https://bitcoinwalletpaper.com/litecoin/ etc …?

Do the portfolios of all the portfolio generators expire?

You could say that these generated portfolios are not yet in the Blockchain?

Or because they are generated under the parameters of the Blockchain are they enabled to receive funds and can they operate forever?

My question is for that text that is in your

Voucher & Paper Wallet and also because a programmer with 40 years of experience told me that the Wallets like these and others generated by other generators of multiple portfolios like these break Blockchain protocols and still do not belong to the Blockchain.

That only those registered with emails and under the parameters such as those used by the EXCHANGES and as those generated by each user are those valid in the blockchain?

Hi Fredy,

I don’t know how other paper wallet generators on other blockchains work, but I can explain how my tool is working.

Blockchains use public / private key cryptography to secure funds and sign transactions. And this is exactly how my generator works as well. When you create a new paper wallet, the generator first creates a private key and then the public address/receiving address for that particular private key.
This is what you see on my paper wallets. The address on the left is your public address, used to receive funds. The one in the middle is your private key.

If someone sends funds to the address shown on the left, the transaction will be stored on the blockchain. You can always check the balance of an address with a block explorer. Everything is on chain.

To spend the funds, you need the private key. As soon as you import the private key to a wallet, you are able to sign transactions for the corresponding address and you can spend the funds.
This is how my paper wallet generator works.
“…to unlock this wallet, please install the Android…” --> This is just the easiest way to import the private key into a wallet, you can just scan the QR code. But you can also use any other NEM wallet and import the RAW private key. RAW private key and mobile import format private key are the same, just represented in a different way - and the mobile import format key contains some more information as well. But both are the same, just written in a different format.

Paper wallets from my generator have no expiry date. At least as long as NEM does not change the address creation algorithm. (this is highly unlikely)

Imo paper wallets are the safest way to store funds - IF you do it right:

  1. Keep your private key safe!!! A person having access to your private key can spend the funds!
    Your keys - your money - it’s that simple.
  2. Only use paper wallet generators you trust, or better: Check the source code!
  3. Never use a generator that is not open source
  4. Never use a generator that creates lazy private keys (it is very important to have a secure random key)
  5. Never use online generators on the internet! Only use offline generators running on YOUR computer while the computer is disconnected from the network!

I hope I was able to clarify some things for you.

Have a good day!

2 Likes

Good day. Friend.
Could you tell me if the Wallets can be produced without the image in the background?
Let alone the alphanumeric keys to save disk space?

Hello Fredy,

yes, it should be possible to use your own (blank or other solid color) images, unfortunately it’s not possible in the normal GUI yet. You would have to modify the sources. As an IDE, you may use Visual Studio in the community edition (for Windows- free) or MonoDevelop (Linux). Your (blank) image must be 1200x480 px in size. You can replace one of the existing pictures, that are currently added as a resource to the project, with yours. Then recompile and run the project.

Regarding the keys: You may want to include at least the RAW private key to be able to recover funds. You may un-tick the “Include mobile wallet import format”, this is somehow optional. However, it is the easiest way to import the paper wallet into the client.

I don’t know about your actual plans. The storage requirement is about ~70KB-80KB per paper wallet. You may save some bytes with a solid/blank background.

If storage is still an issue, you may consider to create and store public/private key pairs instead of paper wallet images.

And please make sure to select a safe storage for the private keys, this is ESSENTIAL!