I've used paper wallets in the past for bitcoins, in order to keep them in cold storage. How can I create a paper wallet for Stellar Lumens?
3 Answers
A paper wallet is simply a public and private key that are written on paper, rather than stored digitally (in a text file or document).
You can create a paper wallet by any of the following methods:
- Generating a new key pair using the official Account Viewer and then writing it down in a safe place.
- Using the official Paper Wallet page to create a key pair and matching QR codes.
- Using StellarPaperWallet.com to create a printable, foldable paper wallet for safe keeping.
-
1Usual warning applies when using sites like stellarpaperwallet.com. Probably best to download it locally, check SHA and disconnect from the internet before running it. Also have a look at the source and see if you can be sure that it's not giving you a pre-seeded wallet or anything shady like that. There's too many stories of sites like this being hacked. So best to be doubly sure.– DaveJJan 17, 2018 at 21:21
-
@DaveJ I agree, in principle, though: StellarPaperWallet.com does warn the user to download it and run it offline. It also is based on the exact same code as the official paper-wallet repository and there's a github commit history available, too (it's hosted on GitHub Pages).– sjstruttJan 17, 2018 at 21:36
-
Yeah, not specific to StellarPaperWallet.com, just a general warning for any website that generates a private key.– DaveJJan 18, 2018 at 22:13
I think that currently the best way to store the keys to Stellar account in the form of a paper wallet is mnemonic code as described in SEP-0005. This Stellar Ecosystem Proposal describes how to derive the Stellar key pair from 12 - 24 words you can write down on a piece of paper or just memorize.
For example these 24 words:
reward result tennis clump buddy bless exercise coral globe large explain there firm inquiry crazy equip punch immune because nasty trick warfare wire group
derive the following primary account:
Public Key:
GA3CIGYEVE3V6T6JF7K5VBB3I6CGOQ46DSSVGYPNNK2OFFLXEWRPCMKH
Secret Key:
SC6SQS3NTCVMSUMTDZEGTU43WPBKWGEKTR5ONSIUFCMO2OIROBVNUVAI
The advantages over the paper wallets in the form of secret key (or QR code encoded secret key):
- It's easier to remember/write down so less prone to errors.
- When it comes to QR codes the only way is to print them what can be insecure.
- You can derive many accounts from a single mnemonic seed.
- It's compatible with the hardware wallet: Ledger.
Unfortunately this solution has not been adopted (yet) in the apps and wallets in Stellar ecosystem. One of the tools you can use today is stellar-hd-wallet released by SDF.
You have only two secure options and the first one is not as secure as the second one.
First, create a public/secret pair on the Stellar.org account viewer. This is the only web site that has our approval since it is the very own foundation's site. It may suffer from man-in-the-middle attacks, like malicious programs fishing for crypto accounts, shady ad blocks, browser extensions, etc.
Second, download the SDK in the language of your choice (being JS the easiest) from the Stellar repos only, and run the StellarSDK.Keypair.random() method while unplugged from the internet. It will provide you with the public/secret keys for your new account which you must fund with 1 XLM in order to make it to the blockchain. This method may suffer from programs infecting your computer but no method is 100% safe when you computer is hijacked.
HTH