Author

Topic: Paper Wallets? (Read 2060 times)

legendary
Activity: 994
Merit: 1035
May 04, 2015, 11:43:16 AM
#20
I am trying to find out how to make paper wallets for different coins, Anoncoin, Litecoin and Unobtanium.

Is this possible?

If so how?

Might be better to move this to altcoin section because they would be more familiar with it and it has nothing to do with bitcoin.
legendary
Activity: 3542
Merit: 1352
Cashback 15%
May 04, 2015, 10:30:28 AM
#19
There is a lot of paranoia surrounding paper wallets.

Make sure you have a good anti virus, do a full scan before you do a paper wallet.
Make sure everything is ok then go to bitaddress.org, run it offline.
Create a paper wallet, print it on a dumb printer that doesn't use the internet then you're done.

I can probably count on one hand the number of issues I've ever seen reported using the above method.
How safe is to download the code anyway? even if you do that, your computer could still be compromised. I would ideally do that, but under Live OS running from a DVD where it's highly unlikely that your OS is compromised (literally only chance would be a man in the middle attack, in other words a compromised .iso file)

Well I have created several paper wallets and I haven't downloaded any code from any website to produce one, instead, I directly print it once the necessary things are done. You need to run bitaddress.org offline so as to minimize the risk of having a compromised paper wallet in terms of security. Also, once you made the wallet, be sure to keep it safe. You don't want to have a wallet that's useless after all those safety precautions and cautious procedures, do you?
legendary
Activity: 1204
Merit: 1028
May 04, 2015, 09:49:12 AM
#18
There is a lot of paranoia surrounding paper wallets.

Make sure you have a good anti virus, do a full scan before you do a paper wallet.
Make sure everything is ok then go to bitaddress.org, run it offline.
Create a paper wallet, print it on a dumb printer that doesn't use the internet then you're done.

I can probably count on one hand the number of issues I've ever seen reported using the above method.
How safe is to download the code anyway? even if you do that, your computer could still be compromised. I would ideally do that, but under Live OS running from a DVD where it's highly unlikely that your OS is compromised (literally only chance would be a man in the middle attack, in other words a compromised .iso file)
member
Activity: 128
Merit: 10
May 04, 2015, 08:24:40 AM
#17
I was able to figure out the compressedWIFPrefix is basically the Letter that the wallet generated private key starts with, in the case of Bitcoin it starts with either L or K which is why you see [LK] and Litcoin is T

The way that I determine the compressedWIFPrefix was by opening a wallet and typing in the console: dumpprivkey "The wallets address" Press enter and it will give you the compressed private key (52 digits), then you can see what letter the key starts with, Litecoin starts with T T77jSKLkPvX4SBgRN8v11jTdnHwb8ckrn7WLjXcNjLikug2dAhaP

To Determine the WIFPrefix I had to run the rest of the code with
window.networkVersion = 0x30;
      window.privateKeyPrefix = 0xb0;
      window.WIFPrefix = 'Put any Number in here to start';
      window.compressedWIFPrefix = 'T';

And the output automatically shows the Private Key Prefix as the first number of the 51 digit string using
https://github.com/cantonbecker/bitcoinpaperwallet


The Private Key WIF (Wallet Import Format) is a code that needs to be keep secret since it can be used to spend any funds that have been sent to the corresponding public key. Keys can be encoded in a number of different formats. The most popular encoding formats (WIF, WIFC, HEX, B64) are shown below.


Public Litecoin Address
LdZ2AU1oWfmqGopivVGG5fmmR4KyM42kva
Litecoin Address Compressed Format
LMvQWzsUppbdxq39JeMv3KqXantVSH2idr


Public Key (130 characters [0-9A-F]): 04C5CE09ABF9C5E1A0ACE700F7729FA996AB5115B05857D8EF550DB34F96A7E184C1BB8E00A07A0 6F3BF64FB3641A13A1618A8822B9791BEDC33AD40116BF68244
Public Key (compressed, 66 characters [0-9A-F]): 02C5CE09ABF9C5E1A0ACE700F7729FA996AB5115B05857D8EF550DB34F96A7E184

Private Key WIF
51 characters base58, starts with a '6'
6v3S2CrndTdGH8QS1Fw9cWZKJWfee52KytmiB687HPbPBdobUX9
Private Key WIF Compressed
52 characters base58, starts with a 'T'
T77jSKLkPvX4SBgRN8v11jTdnHwb8ckrn7WLjXcNjLikug2dAhaP



Private Key Hexadecimal Format (64 characters [0-9A-F]): 79480E439276C481E13799439A9A0BEC103E2701B17851A236650658F685C272
Private Key Base64 (44 characters): eUgOQ5J2xIHhN5lDmpoL7BA+JwGxeFGiNmUGWPaFwnI=

So, it works perfect now!
newbie
Activity: 35
Merit: 0
May 04, 2015, 07:45:46 AM
#16

https://bitcoinpaperwallet.com also offers generating paperwallets for Litecoin and Dogecoin
legendary
Activity: 3556
Merit: 9709
#1 VIP Crypto Casino
May 04, 2015, 06:58:35 AM
#15
There is a lot of paranoia surrounding paper wallets.

Make sure you have a good anti virus, do a full scan before you do a paper wallet.
Make sure everything is ok then go to bitaddress.org, run it offline.
Create a paper wallet, print it on a dumb printer that doesn't use the internet then you're done.

I can probably count on one hand the number of issues I've ever seen reported using the above method.
member
Activity: 128
Merit: 10
May 03, 2015, 10:00:30 PM
#14
Well each coin will have to have their own paperwallet generator, I know Dash and Litecoin have one and if a coin because popular the devs usually develop one for them, I would check the mainsite of the altcoins to find out.

Once I am able to figure out how to determine the WIFPrefix I will be able to make a wallet for any coin so that Is why I am asking?
member
Activity: 128
Merit: 10
May 03, 2015, 08:12:56 PM
#13
Ok, im still trying to figure out how exactly to determine the window.WIFPrefix and the window.compressedWIFPrefix??


case 'Bitcoin':   
     window.networkVersion = 0x00;
     window.privateKeyPrefix = 0x80;
     window.WIFPrefix = '5';
     window.compressedWIFPrefix = '[LK]';

     break;
   case 'Litecoin':
      window.networkVersion = 0x30;
      window.privateKeyPrefix = 0xb0;
      window.WIFPrefix = '6';
      window.compressedWIFPrefix = 'T';

      break;
   case 'Testnet':
      window.networkVersion = 0x6F;
      window.privateKeyPrefix = 0xEF;
      window.WIFPrefix = '9';
      window.compressedWIFPrefix = 'c';

      document.title = 'Bitcoin TESTNET paper wallet generator';
      break;

I am trying to set up an alt coin paper wallet generator and I havent been able to figure out how exactly to determine or find the value that needs to be place for the WIFPrefix and the compressedWIFPrefix?

Thanks,

Im Just forking this https://github.com/cantonbecker/bitcoinpaperwallet  and going to make wallets for my favorite Alts
member
Activity: 112
Merit: 10
January 23, 2015, 08:43:27 PM
#12
[disclaimer]
If you try this, be sure to try generating a couple paper wallets and actually importing the private keys into your altcoin wallet to verify that the private keys match the addresses. If you do the math right they should, but it's always best to be safe before sending money to one of these.
[/disclaimer]

Well, when I say easy, I mean easy for someone who knows a little Javascript (and I don't know a whole lot of Javascript) and don't mind looking at the source code for whatever coins you want.

The main things you'll need to edit are the network version byte and the private key prefix byte. To get the network version byte, look at the source code for whatever altcoin you're trying to make a paper wallet generator for (either a local downloaded copy of the source code, or just look on GitHub). You're looking for "src/base58.h" somewhere around like 280, you should see something like this:
PUBKEY_ADDRESS = 50

The number will be different for every coin, the example above is from the coin I made a paper wallet generator for since I'm looking right now at the changes I had to make.


The value you see for PUBKEY_ADDRESS is the network byte. Add 128 to that number to get the private key prefix, then (using Windows calculator or whatever method you prefer) convert both numbers to hexadecimal numbers. Again, for the coin I made a paper wallet generator for, the values would be:

Network version byte = 50 decimal = 32 hex (or 0x32)
Private key prefix = 178 decimal = b2 hex (or 0xb2)

Now, open bitaddress.org.html and search for the following two lines:
Bitcoin.Address.networkVersion = 0x00; // mainnet

and a little further down:
ECKey.privateKeyPrefix = 0x80; // mainnet 0x80    testnet 0xEF


Change both of these values to the version byte and private key prefix of your altcoin of choice.. again in my example, they would be:
Bitcoin.Address.networkVersion = 0x32; // mainnet

and
ECKey.privateKeyPrefix = 0xb2; // mainnet 0x80    testnet 0xEF


The last thing you need to do to make the code work (without editing the graphics) is to search for every occurrence of:
return (ECKey.privateKeyPrefix == 0x80)

and replace the 0x80 with the value you set for ECKey.privateKeyPrefix above. There should only be 2 or 3 places where you have to make this edit.

As far as making it work, that's really all there is to it, just do some simple math and change a couple numbers in the bitaddress code.

Editing the graphics is a bit more tricky since they're base64 encoded inline with the HTML. You'll need to create a graphic the right size for the paper wallet (or just find the SVG or PSD of the graphic bitaddress uses and edit that.. but I don't remember where I downloaded that), save it as a PNG file and find a way to base58 encode it. Then search for
 in the HTML source code and replace the long and seemingly random string of text after 
data:image/png;base64,
with the equally long and seemingly random string of text you got as a result of base64 encoding your PNG.

Oh!! well..I get it!! I read the whole thing for sure! Tongue
legendary
Activity: 1148
Merit: 1014
In Satoshi I Trust
hero member
Activity: 644
Merit: 500
My goal is becaming a billionaire.
January 23, 2015, 12:56:59 PM
#10
I am trying to find out how to make paper wallets for different coins, Anoncoin, Litecoin and Unobtanium.

Is this possible?

If so how?


You can simply print Private key & public key and that's it , couldn't be more simple Grin
Otherwise there is this website I found & there is about 78 supported Digital Currencies including Litecoin,Anoncoin & Unobtanium .
Here you go => https://walletgenerator.net/
One you finish moving your mouse and get the adresses , you will see a ComboBox on the right up side , choose your currency there .
hero member
Activity: 748
Merit: 500
January 23, 2015, 12:46:37 PM
#9
Could you please describe the change of graphics little bit more? I changed the prefix successfully, but i don't know with the base encoding...

Nevermind, i figured it out  Wink
hero member
Activity: 748
Merit: 500
January 20, 2015, 10:16:15 AM
#8
Could you please describe the change of graphics little bit more? I changed the prefix successfully, but i don't know with the base encoding...
full member
Activity: 137
Merit: 100
December 25, 2013, 09:01:19 AM
#7
You could just write/print out the public and private keys.

That works too, but if you want an actual offline "cold storage" paper wallet you still need a way to generate those keys without adding them to your actual online wallet.. so you'd have to make a new wallet.dat (preferably on an offline machine) or use vanitygen (again, preferably on an offline machine).

BTW once you know the network version byte and the first letter/number of an address for your coin, it's simple to generate them with vanitygen without having to edit any code.. using my example above (network version byte = 50 and first letter = M) you can generate a random address with:
vanitygen -X 50 M

This should work for any coin.
global moderator
Activity: 3990
Merit: 2717
Join the world-leading crypto sportsbook NOW!
December 25, 2013, 06:00:15 AM
#6
You could just write/print out the public and private keys.
full member
Activity: 154
Merit: 100
December 25, 2013, 05:52:24 AM
#5
Thanks very much!

I'll look in to this and see what I can fathom!

 Grin
full member
Activity: 137
Merit: 100
December 25, 2013, 05:20:31 AM
#4
[disclaimer]
If you try this, be sure to try generating a couple paper wallets and actually importing the private keys into your altcoin wallet to verify that the private keys match the addresses. If you do the math right they should, but it's always best to be safe before sending money to one of these.
[/disclaimer]

Well, when I say easy, I mean easy for someone who knows a little Javascript (and I don't know a whole lot of Javascript) and don't mind looking at the source code for whatever coins you want.

The main things you'll need to edit are the network version byte and the private key prefix byte. To get the network version byte, look at the source code for whatever altcoin you're trying to make a paper wallet generator for (either a local downloaded copy of the source code, or just look on GitHub). You're looking for "src/base58.h" somewhere around like 280, you should see something like this:
PUBKEY_ADDRESS = 50

The number will be different for every coin, the example above is from the coin I made a paper wallet generator for since I'm looking right now at the changes I had to make.


The value you see for PUBKEY_ADDRESS is the network byte. Add 128 to that number to get the private key prefix, then (using Windows calculator or whatever method you prefer) convert both numbers to hexadecimal numbers. Again, for the coin I made a paper wallet generator for, the values would be:

Network version byte = 50 decimal = 32 hex (or 0x32)
Private key prefix = 178 decimal = b2 hex (or 0xb2)

Now, open bitaddress.org.html and search for the following two lines:
Bitcoin.Address.networkVersion = 0x00; // mainnet

and a little further down:
ECKey.privateKeyPrefix = 0x80; // mainnet 0x80    testnet 0xEF


Change both of these values to the version byte and private key prefix of your altcoin of choice.. again in my example, they would be:
Bitcoin.Address.networkVersion = 0x32; // mainnet

and
ECKey.privateKeyPrefix = 0xb2; // mainnet 0x80    testnet 0xEF


The last thing you need to do to make the code work (without editing the graphics) is to search for every occurrence of:
return (ECKey.privateKeyPrefix == 0x80)

and replace the 0x80 with the value you set for ECKey.privateKeyPrefix above. There should only be 2 or 3 places where you have to make this edit.

As far as making it work, that's really all there is to it, just do some simple math and change a couple numbers in the bitaddress code.

Editing the graphics is a bit more tricky since they're base64 encoded inline with the HTML. You'll need to create a graphic the right size for the paper wallet (or just find the SVG or PSD of the graphic bitaddress uses and edit that.. but I don't remember where I downloaded that), save it as a PNG file and find a way to base58 encode it. Then search for
 in the HTML source code and replace the long and seemingly random string of text after 
data:image/png;base64,
with the equally long and seemingly random string of text you got as a result of base64 encoding your PNG.
full member
Activity: 154
Merit: 100
December 25, 2013, 03:39:32 AM
#3
Since you know about paper wallets, I'm sure you probably know about bitaddress.org for BTC. There's a similar site, liteaddress.org for LTC. It's based on the same code as bitaddress, so you can save the page and run it offline for added security. Off the top of my head, I can't think of any paper wallet generators for the other coins you mentioned, but I wouldn't be too surprised if they're out there somewhere, it's extremely easy to edit the bitaddress code for other coins. I actually made one for an altcoin back in May (MinCoin.. which I was trading and making quite a bit of profit with at the time.. but it isn't worth much anymore), hardest part was editing the graphics.

Cool thanks. I know basically how paper wallets work but what may be easy for you 'editing the bitaddress code for other coins' sounds rather complicated for me  Wink How do I do this (without there being a chance of doing it wrong and loosing the coins)!

Thanks for you help!
full member
Activity: 137
Merit: 100
December 25, 2013, 02:44:20 AM
#2
Since you know about paper wallets, I'm sure you probably know about bitaddress.org for BTC. There's a similar site, liteaddress.org for LTC. It's based on the same code as bitaddress, so you can save the page and run it offline for added security. Off the top of my head, I can't think of any paper wallet generators for the other coins you mentioned, but I wouldn't be too surprised if they're out there somewhere, it's extremely easy to edit the bitaddress code for other coins. I actually made one for an altcoin back in May (MinCoin.. which I was trading and making quite a bit of profit with at the time.. but it isn't worth much anymore), hardest part was editing the graphics.
full member
Activity: 154
Merit: 100
December 24, 2013, 11:34:05 PM
#1
I am trying to find out how to make paper wallets for different coins, Anoncoin, Litecoin and Unobtanium.

Is this possible?

If so how?
Jump to: