Jump to content

[Howto] Paper Wallet: generate, deposit, withdraw, consult


Wietse
 Share

Recommended Posts

Hi everyone,

I see a lot of questions about paper wallets lately. Got some messages regarding paper wallets as well. This is my attempt at combining all my explanations in one howto.

What is a paper wallet
A paper wallet is a XRP wallet you can generate offline and print. When you generate a paper wallet, you generally print it (multiple times) and store the paper wallet in a (very) safe place. Don't store all the copies in one building, since you want to be able to retrieve a copy if something terrible happens.

One of the advantages of a paper wallet is is that it's "unhackable" - if someone hacks your computer, your keys* aren't stored on it. Just keep them safe ;)

A paper wallet contains 2 keys (text) and most of the times 2 QR codes (one for each key).

When your XRP is stored in your own wallet, the XRP's are yours. When your XRP is on an exchange, you might loose access to your XRP's (if the exchange goes offline, freezes your account, etc.) - so if you want to hold on to your XRP's for some time, better send them to your own wallet.

How about the wallet keys?

There are two keys: the public key (wallet address) and the private key (secret key). The wallet address starts with a r and the private key starts with the letter s.

The wallet address is generated from the private key. This means you can loose your wallet address (the one starting with r) since you can just re-generate the same address from your private key.

The private key is for your eyes only (!!!) - If someone has access to your private key they have access to all the funds stored in the Ripple wallet.

Please don't share your private key, please don't store it somewhere in a document on your computer, and never enter it somewhere except if you trust the place you are entering the key.

Your wallet address (starting with r) is kind of your "XRP Wallet bank account number". You can send XRP to this wallet. You can check the transactions from your wallet (more below, 'consult'). 

Your private key (starting with s) is kind of your PIN + Username + Password for online banking: you can access all your funds and send them somewhere. Risky!

How to generate a paper wallet

There are many places offering to generate your paper wallet, however: some of them can't be trusted. Imagine the website generating the wallet stores the generated values, and waits untill you deposit your XRP: since they have the private key they can steal your funds.

I prefer generating a wallet with open source code, so the geeks can audit the source code. Here you can find a wallet generator I trust: https://ihomp.github.io/ripply-paper-wallet/coldwallet-SHA1-cdfbe3260927b6073180a1099f02ef99ce0495e8.html.
 

Security

If you want to be sure the generated values aren't stored, you can download the source-code, store it at your computer, unplug your computer from the internet, reboot, generate, print, reboot and plugin the internet again. If you're a geek yourself, you can generate a wallet offline using the nodejs Ripple-Lib code. Here's a sample.

How to get XRP into your wallet (deposit)

Send XRP to your wallet address (starting with r). Most exchanges offer to withdraw XRP. You can enter your wallet address as the recipient. 

If you are asked for a destination tag and the address you are sending the XRP to is your own paper wallet, you can leave the _destination tag_ empty or enter a zero (0). The destination tag can only contain numbers, and can be used to distinguish funds entering your wallet.

How to check my balance

Since the XRP ledger is open to the world, the whole world can check your balance. However: as long as you keep your wallet address to yourself, no one will know the wallet belongs to you. To check your balance, you can use one of the publicly available tools, and enter your wallet address.

I like these two:

Of course you can install a wallet on your phone or computer and check your balance with the app; the app can be used to transfer/withdraw your XRP as well. For iOS and Android, give Toast Wallet a spin. 

NOTE: If you decide to use one of the available wallets, remember you have to enter your private key. Only enter the private key if you trust the app. Remember: if anyone gains control over your private key, they can steal your funds! However: since Toast Wallet is open source, everyone can audit the source code. 

How to get XRP out of your wallet (transfer/withdraw)

To send XRP from your wallet to another wallet address (like the wallet address of an exchange) you need to generate a transaction and sign the transaction with your private key. You can do this with any XRP wallet you trust. 

If you install wallet software you can enter your private key to allow the wallet software to sign your transaction. 

If you install Toast Wallet on your iOS or Android device, you can set a PIN code, and then go to:

  • Add wallet
  • Existing wallet
  • Enter the private key in the first field, leave the address field empty (it will be generated from the private key). Enter a description and pick a password. You need the password to confirm transactions for this wallet in Toast Wallet.

If you want to use Gatehub, you can access your own wallet:

  • Wallet
  • <+> (Add wallet)
  • Import (enter your Gatehub password)
  • Enter your Secret Key
Edited by xrptipbot
Link to comment
Share on other sites

 

3 minutes ago, ctrl45 said:

Thank you for this post. 

1.  How do you transfer xrp from a paper wallet to an exchange in order to convert to fiat?

Here’s an option;

On 20/12/2017 at 10:32 PM, xrptipbot said:

Of course you can install a wallet on your phone or computer and check your balance with the app; the app can be used to transfer/withdraw your XRP as well. For iOS and Android, give Toast Wallet a spin. 

NOTE: If you decide to use one of the available wallets, remember you have to enter your private key. Only enter the private key if you trust the app. Remember: if anyone gains control over your private key, they can steal your funds! However: since Toast Wallet is open source, everyone can audit the source code. 

How to get XRP out of your wallet (transfer/withdraw)

To send XRP from your wallet to another wallet address (like the wallet address of an exchange) you need to generate a transaction and sign the transaction with your private key. You can do this with any XRP wallet you trust. 

If you install wallet software you can enter your private key to allow the wallet software to sign your transaction. 

If you install Toast Wallet on your iOS or Android device, you can set a PIN code, and then go to:

  • Add wallet
  • Existing wallet
  • Enter the private key in the first field, leave the address field empty (it will be generated from the private key). Enter a description and pick a password. You need the password to confirm transactions for this wallet in Toast Wallet.

If you want to use Gatehub, you can access your own wallet:

  • Wallet
  • <+> (Add wallet)
  • Import (enter your Gatehub password)
  • Enter your Secret Key

 

Link to comment
Share on other sites

On 12/20/2017 at 7:32 AM, xrptipbot said:

Hi everyone,

I see a lot of questions about paper wallets lately. Got some messages regarding paper wallets as well. This is my attempt at combining all my explanations in one howto.

What is a paper wallet
A paper wallet is a XRP wallet you can generate offline and print. When you generate a paper wallet, you generally print it (multiple times) and store the paper wallet in a (very) safe place. Don't store all the copies in one building, since you want to be able to retrieve a copy if something terrible happens.

One of the advantages of a paper wallet is is that it's "unhackable" - if someone hacks your computer, your keys* aren't stored on it. Just keep them safe ;)

A paper wallet contains 2 keys (text) and most of the times 2 QR codes (one for each key).

When your XRP is stored in your own wallet, the XRP's are yours. When your XRP is on an exchange, you might loose access to your XRP's (if the exchange goes offline, freezes your account, etc.) - so if you want to hold on to your XRP's for some time, better send them to your own wallet.

How about the wallet keys?

There are two keys: the public key (wallet address) and the private key (secret key). The wallet address starts with a r and the private key starts with the letter s.

The wallet address is generated from the private key. This means you can loose your wallet address (the one starting with r) since you can just re-generate the same address from your private key.

The private key is for your eyes only (!!!) - If someone has access to your private key they have access to all the funds stored in the Ripple wallet.

Please don't share your private key, please don't store it somewhere in a document on your computer, and never enter it somewhere except if you trust the place you are entering the key.

Your wallet address (starting with r) is kind of your "XRP Wallet bank account number". You can send XRP to this wallet. You can check the transactions from your wallet (more below, 'consult'). 

Your private key (starting with s) is kind of your PIN + Username + Password for online banking: you can access all your funds and send them somewhere. Risky!

How to generate a paper wallet

There are many places offering to generate your paper wallet, however: some of them can't be trusted. Imagine the website generating the wallet stores the generated values, and waits untill you deposit your XRP: since they have the private key they can steal your funds.

I prefer generating a wallet with open source code, so the geeks can audit the source code. Here you can find a wallet generator I trust: https://ihomp.github.io/ripply-paper-wallet/coldwallet-SHA1-cdfbe3260927b6073180a1099f02ef99ce0495e8.html.
 

Security

If you want to be sure the generated values aren't stored, you can download the source-code, store it at your computer, unplug your computer from the internet, reboot, generate, print, reboot and plugin the internet again. If you're a geek yourself, you can generate a wallet offline using the nodejs Ripple-Lib code. Here's a sample.

How to get XRP into your wallet (deposit)

Send XRP to your wallet address (starting with r). Most exchanges offer to withdraw XRP. You can enter your wallet address as the recipient. 

If you are asked for a destination tag and the address you are sending the XRP to is your own paper wallet, you can leave the _destination tag_ empty or enter a zero (0). The destination tag can only contain numbers, and can be used to distinguish funds entering your wallet.

How to check my balance

Since the XRP ledger is open to the world, the whole world can check your balance. However: as long as you keep your wallet address to yourself, no one will know the wallet belongs to you. To check your balance, you can use one of the publicly available tools, and enter your wallet address.

I like these two:

Of course you can install a wallet on your phone or computer and check your balance with the app; the app can be used to transfer/withdraw your XRP as well. For iOS and Android, give Toast Wallet a spin. 

NOTE: If you decide to use one of the available wallets, remember you have to enter your private key. Only enter the private key if you trust the app. Remember: if anyone gains control over your private key, they can steal your funds! However: since Toast Wallet is open source, everyone can audit the source code. 

How to get XRP out of your wallet (transfer/withdraw)

To send XRP from your wallet to another wallet address (like the wallet address of an exchange) you need to generate a transaction and sign the transaction with your private key. You can do this with any XRP wallet you trust. 

If you install wallet software you can enter your private key to allow the wallet software to sign your transaction. 

If you install Toast Wallet on your iOS or Android device, you can set a PIN code, and then go to:

  • Add wallet
  • Existing wallet
  • Enter the private key in the first field, leave the address field empty (it will be generated from the private key). Enter a description and pick a password. You need the password to confirm transactions for this wallet in Toast Wallet.

If you want to use Gatehub, you can access your own wallet:

  • Wallet
  • <+> (Add wallet)
  • Import (enter your Gatehub password)
  • Enter your Secret Key

Hi ,. Thank you.  Can you tell me why so many people like to keep xrps in Nano ledger S instead of free paper wallets. What are the advantages? I know the answers might already been posted somewhere but I appreciate your opinions.

 

Thanks again

Link to comment
Share on other sites

8 minutes ago, Jimmyt said:

Hi ,. Thank you.  Can you tell me why so many people like to keep xrps in Nano ledger S instead of free paper wallets. What are the advantages? I know the answers might already been posted somewhere but I appreciate your opinions.

 

Thanks again

Do a ‘nano s’ topic search....top right of screen

Link to comment
Share on other sites

Hey guys my first post ever. I love how nice/helpful everyone is here:) I am looking for a safe/trusted offline paper wallet generator where I can download the index.html file, go offline, open the index.html and generate my wallet and print it.  The ihomp link posted above gives me a 404 error when i click the link. All advice would be super helpful. Its been immensely difficult to find a XRP paper wallet that fits the criteria given above. Thanks! 

Edited by jou9hfoawf
Link to comment
Share on other sites

  • 2 weeks later...

Another option is the JavaScript page created by @pftq.   theworldexchange.net

You can inspect the JavaScript and once you've got the page in the browser disconnect from the Internet and generate the keys.   Just adding another option...   not a recommendation...  do your own due diligence.

Link to comment
Share on other sites

2 hours ago, xrptipbot said:

Hi @jou9hfoawf, welcome!

When you click the link it appends the dot (end of sentence). You can use the link below (same link, without the dot at the end)

https://ihomp.github.io/ripply-paper-wallet/coldwallet-SHA1-cdfbe3260927b6073180a1099f02ef99ce0495e8.html

You can save this page and use it offline :)

I have created a public key (wallet address) and a private key (secret key) in a raspberry pi that has never been connected to the internet using the cold wallet in the above link after copying the html code to the raspberry pi using a memory stick.

However I wanted to make sure I knew that the secret generated by the wallet corresponded to the public key generated without burning 20 XRP and without exposing my secret to an exchange. So after reading around I found a post from "I_Hustle_Hard" in the below link (page 4 of thread) where he essentially says go to your gatehub account try the import wallet screen, if you enter the right secret the submit button will be enabled, enter the wrong secret (even a character off) and it will not

 

So I did and it worked as the poster described. So far so good.

I then moved to another test, I generated 3 separate test wallets each with their own public key (wallet address) and private key (secret key) and then tried to import a mismatched pair (for example public address of wallet 1 with secret of wallet 2 or 3) to my surprise gatehub allows me to import the wallet even though the pairs don't belong to one another. 

Has someone tested this before and can explain why I am able to import a wallet to gatehub using a mismatched pair? 

Link to comment
Share on other sites

4 minutes ago, gtyj said:

I have created a public key (wallet address) and a private key (secret key) in a raspberry pi that has never been connected to the internet using the cold wallet in the above link after copying the html code to the raspberry pi using a memory stick.

However I wanted to make sure I knew that the secret generated by the wallet corresponded to the public key generated without burning 20 XRP and without exposing my secret to an exchange. So after reading around I found a post from "I_Hustle_Hard" in the below link (page 4 of thread) where he essentially says go to your gatehub account try the import wallet screen, if you enter the right secret the submit button will be enabled, enter the wrong secret (even a character off) and it will not

 

So I did and it worked as the poster described. So far so good.

I then moved to another test, I generated 3 separate test wallets each with their own public key (wallet address) and private key (secret key) and then tried to import a mismatched pair (for example public address of wallet 1 with secret of wallet 2 or 3) to my surprise gatehub allows me to import the wallet even though the pairs don't belong to one another. 

Has someone tested this before and can explain why I am able to import a wallet to gatehub using a mismatched pair? 

My guess is the it does not matter to import the wrong address as it is not imported. Only the secret key gets imported.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share


×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.