Bitcoin Forum
March 23, 2017, 02:41:06 AM *
News: Latest stable version of Bitcoin Core: 0.14.0  [Torrent]. (New!)
 
   Home   Help Search Donate Login Register  
Pages: [1]
  Print  
Author Topic: Self-Made Offline Paper Wallets Using LaTeX  (Read 6029 times)
xeroc
Sr. Member
****
Offline Offline

Activity: 345



View Profile
May 23, 2013, 07:57:47 AM
 #1

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)
  • Generate the PDF
       
Code:
$ ./2_generatePDF.sh
  • Print
  • Cleanup:
Code:
$./3_shredAndCleanup.sh
  • Donate to xeroc, vanitygen, charity ...

Donations are welcome
Thank you for every donation.

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


Example python-config for Protoshares
Code:
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:
Coin;Unit;Address;PrivKey;Balance;
Protoshares;PTS;PkXeRocDnRSkHzuTbQdqYWRQ8QqmjwrdyY;52dh54uzsdg4zfhsasdg5use4fhdfhsdsdgsdgh446HDFhfdRveL2KnCiYtNkF;1.000000

1490236866
Hero Member
*
Offline Offline

Posts: 1490236866

View Profile Personal Message (Offline)

Ignore
1490236866
Reply with quote  #2

1490236866
Report to moderator
1490236866
Hero Member
*
Offline Offline

Posts: 1490236866

View Profile Personal Message (Offline)

Ignore
1490236866
Reply with quote  #2

1490236866
Report to moderator
1490236866
Hero Member
*
Offline Offline

Posts: 1490236866

View Profile Personal Message (Offline)

Ignore
1490236866
Reply with quote  #2

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

Posts: 1490236866

View Profile Personal Message (Offline)

Ignore
1490236866
Reply with quote  #2

1490236866
Report to moderator
1490236866
Hero Member
*
Offline Offline

Posts: 1490236866

View Profile Personal Message (Offline)

Ignore
1490236866
Reply with quote  #2

1490236866
Report to moderator
marcus_of_augustus
Legendary
*
Offline Offline

Activity: 2198



View Profile
May 23, 2013, 09:51:09 AM
 #2

Kind of niche but I like the ethos and simplicity ... very small dependency basis to get done what needs doing ... and all Open Source if I'm not mistaken?

xeroc
Sr. Member
****
Offline Offline

Activity: 345



View Profile
May 23, 2013, 11:42:50 AM
 #3

Kind of niche but I like the ethos and simplicity ... very small dependency basis to get done what needs doing ... and all Open Source if I'm not mistaken?
yep .. all open source.
I may be able to enhance some steps to further reduce dependencies.

python libs requests and json are need to fetch the current balance from blockchain.info .. I could do that using bitcoin-rpc aswell.
Sukrim
Legendary
*
Offline Offline

Activity: 1960


View Profile
May 23, 2013, 01:30:54 PM
 #4

Actually extracting existing keys from bitcoind is an interesting idea, I'd recommend to rather go the vanity trail though.

There are some open templates for paper wallets (with single keys), maybe you can use some of these as well?

https://bitfinex.com <-- leveraged trading of BTCUSD, LTCUSD and LTCBTC (long and short) - 10% discount on fees for the first 30 days with this refcode: x5K9YtL3Zb
Mail me at Bitmessage: BM-BbiHiVv5qh858ULsyRDtpRrG9WjXN3xf
xeroc
Sr. Member
****
Offline Offline

Activity: 345



View Profile
May 23, 2013, 02:07:23 PM
 #5

Actually extracting existing keys from bitcoind is an interesting idea, I'd recommend to rather go the vanity trail though.
Yep .. Think so too.

But, i have a script to load generate new addresses .. fill them with 1btc each and then extract them to print on a paperwallet. That was my intention.

There are some open templates for paper wallets (with single keys), maybe you can use some of these as well?
You have a link?
It'l be very easy to install multiple different layouts and let the user select
Sukrim
Legendary
*
Offline Offline

Activity: 1960


View Profile
May 23, 2013, 02:24:09 PM
 #6

2 threads below this one:
https://bitcointalk.org/index.php?topic=155847.0

https://github.com/openpaperwallet/openpaperwallet

You might get in contact with them, they have nice designs but I have yet to see an easy to use application that generates their printing layouts. Vanitymining might be the cherry on top!

https://bitfinex.com <-- leveraged trading of BTCUSD, LTCUSD and LTCBTC (long and short) - 10% discount on fees for the first 30 days with this refcode: x5K9YtL3Zb
Mail me at Bitmessage: BM-BbiHiVv5qh858ULsyRDtpRrG9WjXN3xf
Shevek
Sr. Member
****
Offline Offline

Activity: 252



View Profile
May 23, 2013, 03:18:29 PM
 #7

It looks interesting. Following.


The file is gone...

Proposals for improving bitcoin are like asses: everybody has one
1SheveKuPHpzpLqSvPSavik9wnC51voBa
xeroc
Sr. Member
****
Offline Offline

Activity: 345



View Profile
May 24, 2013, 06:40:21 AM
 #8

The file is gone...

That was because pdf file should be deleted after printing (of course)
The old example is still there:
https://github.com/xeroc/LaTeX-PaperWallet/raw/e0728cb5cd314c2c1051bf0d26bb50a1bdfa5c2c/paperWallet.pdf
xeroc
Sr. Member
****
Offline Offline

Activity: 345



View Profile
June 17, 2013, 02:54:29 PM
 #9

2 threads below this one:
https://bitcointalk.org/index.php?topic=155847.0

https://github.com/openpaperwallet/openpaperwallet

You might get in contact with them, they have nice designs but I have yet to see an easy to use application that generates their printing layouts. Vanitymining might be the cherry on top!
did it. Any more good ideas are very welcome :-)
xeroc
Sr. Member
****
Offline Offline

Activity: 345



View Profile
July 06, 2013, 10:45:26 AM
 #10

Hey there ... I'd like to include some LTC paper-wallets ... anyone with some sources to (CC) paper wallet layouts ic can include?
AliceWonder
Full Member
***
Offline Offline

Activity: 168



View Profile
July 18, 2013, 11:37:21 AM
 #11

Oh this is cool! I will definitely check this out!

QuarkCoin - what I believe bitcoin was intended to be. On reddit: http://www.reddit.com/r/QuarkCoin/
xeroc
Sr. Member
****
Offline Offline

Activity: 345



View Profile
July 31, 2013, 09:20:13 AM
 #12

Added a rudimentary version for XPM.

Note so many bill styles are available as of yet. If you have some idea or layout I would be glad to add it.

BTC:   git clone https://github.com/xeroc/LaTeX-PaperWallet.git -b btc
XPM:  git clone https://github.com/xeroc/LaTeX-PaperWallet.git -b xpm
xeroc
Sr. Member
****
Offline Offline

Activity: 345



View Profile
December 29, 2013, 12:46:12 PM
 #13

***UPDATE***
Now with BIP 38 support for BTC addresses
Pages: [1]
  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!