Author Topic: Self-Made Offline Paper Wallets Using LaTeX  (Read 5299 times)

0 Members and 1 Guest are viewing this topic.

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
Re: Self-Made Offline Paper Wallets Using LaTeX
« Reply #4 on: February 10, 2014, 10:06:19 am »
Any chance to get a donation from the pts/btc bounty funds?

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
Re: Self-Made Offline Paper Wallets Using LaTeX
« Reply #3 on: December 29, 2013, 12:46:36 pm »
***UPDATE***
Now with BIP 38 support for BTC addresses

Offline r05

  • Full Member
  • ***
  • Posts: 95
    • View Profile
Re: Self-Made Offline Paper Wallets Using LaTeX
« Reply #2 on: December 11, 2013, 09:48:10 pm »
A nice guide :) Good work!

Personally, redundant-redundant backups of my wallets is enough security for me but there's no excuse for not having an old fashioned, paper copy.
If I have helped you, please consider buying me a beer:
PTS: PZ6ZED8q1i7nQqnZiwFHdgLMELi3sgpnzL
BTC: 1CPF64k1AraWAUiDSh2QthRhbtJJznzRtw

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
Self-Made Offline Paper Wallets Using LaTeX
« Reply #1 on: December 11, 2013, 03:16:32 pm »
Hey there,

i recently started a small project to secure some of my coins in offline paper wallets.
I'd appreciate any comments.
Requirements:
  • LaTeX distribution such as TexLive or MikTex
  • LaTeX Packages
    • tikz
    • pst-barcode
    • auto-pst-pdf
    • csvtools
    • coolstr
  • 1_createEmptyPaperWallets:
    • vanitygen
  • 1_createNewWalletsAndMoveCoins **and** 1_importExistingWallets:
    • Python libraries:
      • bitcoinrpc
      • json
      • subprocess
      • pprint

Code:
https://github.com/xeroc/LaTeX-PaperWallet

Resulting PDFs:
https://github.com/xeroc/LaTeX-PaperWallet/tree/master/examples


Thanks
to the great guys from openpaperwallet (https://github.com/openpaperwallet/openpaperwallet) who designed the notes under CC


This tool lets your generate PDF paperwallet for arbitrary altcoins
using QR-Codes for fast access to the address and the private key.




Howto Create PaperWallet
  • Store address and privkey in csv file
       You may select one of three options to generate you wallet.csv file with
       private keys in it. Read the header of the files to adjust the settings to
       your needs.
    • 1_createEmptyPaperWallets**:
              to create new empty wallets using vanitygen
              press ***Ctrl+C*** when You have enough
    • 1_createNewWalletsAndMoveCoins**:
              to create new wallets using the bitcoin daemons and move coins accoring to the settings in that file
         
    • 1_importExistingWallets**:
              load existing wallets from deamons using 'listaddressgroupings'
         
  • Uncomment _ONE_ note layout input line in 'paperWallet.tex' (line 41-48)
[li]Generate the PDF
   [/li][/list]
Code: [Select]
$ ./2_generatePDF.sh
  • Print
  • Cleanup:
Code: [Select]
$./3_shredAndCleanup.sh
  • Donate to xeroc, vanitygen, charity ...

Donations are welcome
Thank you for every donation.

Code: [Select]
BTC: 1XeRocJ6PRUX419QQo9crW5nbsjetJLUn
XPM: AXeRocF9m3VX3P5TAfGiDq6hSSqWG5r6nd
LTC: LXeRoc6FVG3eswpuA4CJxjqMWc7Aq5sNnp
PPC: PXeRocjAG8W2bBPxZPRPBn5yErg3mRx8Gx 
PTS: PkXeRocDnRSkHzuTbQdqYWRQ8QqmjwrdyY
NMC: MxerocLbhWEKELr2DAjXzUwAWRop2nsSZJ


Example python-config for Protoshares
Code: [Select]
altcoins = [
          {
           'name'            : 'Protoshares',    # Name of the coin
           'unit'            : 'PTS'             # Unit name of that coin
           'rpcuser'         : 'protosharesrpc', # connections settings -- daemon must be running
           'rpcpassword'     : 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxg',
           'rpchost'         : 'localhost',      # local daemon running
           'rpcport'         : 3838,             # local port                                                                           
           'daemonName'      : 'protoshared',    # daemon name to dump privkeys
           'passphrase'      : '',               # optional passphrase
           'numberAddresses' : 1,                # number of adresses to generate (are stored in deamon)
           'coinsPerAddress' : 1,                # coins to transfer to each new address
           'fromWallet'      : '',               # send from wallet X
           'walletName'      : 'PaperWallet',    # create new addreses in a new wallet
          },
]

Example wallet.dat for Protoshares
Code: [Select]
Coin;Unit;Address;PrivKey;Balance;
Protoshares;PTS;PkXeRocDnRSkHzuTbQdqYWRQ8QqmjwrdyY;52dh54uzsdg4zfhsasdg5use4fhdfhsdsdgsdgh446HDFhfdRveL2KnCiYtNkF;1.000000