This is my handout for paranoid people who want a way to store bitcoin safely. It requires a little work, but this is the method I use because it should be resistant to risks associated with:
Bad random number generators
Malicious or flawed software
If you want a method that is less secure but easier, skip to the bottom of this post. The Secure Method
Download bitaddress.org. (Try going to the website and pressing "ctrl+s")
Put the bitaddress.org file on a computer with an operating system that has not interacted with the internet much or at all. The computer should not be hooked up to the internet when you do this. You could put the bitaddress file on a USB stick, and then turn off your computer, unplug the internet, and boot it up using a boot-from-CD copy of linux (Ubuntu or Mint for example). This prevents any mal-ware you may have accumulated from running and capturing your keystrokes. I use an old android smart phone that I have done a factory reset on. It has no sim-card and does not have the password to my home wifi. Also the phone wifi is turned off. If you are using a fresh operating system, and do not have a connection to the internet, then your private key will probably not escape the computer.
Roll a die 62 times and write down the sequence of numbers. This gives you 2160 possible outcomes, which is the maximum that Bitcoin supports.
Run bitaddress.org from your offline computer. Input the sequence of numbers from the die rolls into the "Brain Wallet" tab. By providing your own source of randomness, you do not have to worry that the random number generator used by your computer is too weak. I'm looking at you, NSA ಠ_ಠ
Brain Wallet tab creates a private key and address.
Write down the address and private key by hand or print them on a dumb printer. (Dumb printer means not the one at your office with the hard drive. Maybe not the 4 in 1 printer that scans and faxes and makes waffles.) If you hand copy them you may want to hand copy more than one format. (WIF and HEX). If you are crazy and are storing your life savings in Bitcoin, and you hand copy the private key, do a double-check by typing the private key back into the tool on the "Wallet Details" tab and confirm that it recreates the same public address.
Load your paper wallet by sending your bitcoin to the public address. You can do this as many times as you like.
You can view the current balance of your paper wallet by typing the public address into the search box at blockchain.info
If you are using an old cell phone or tablet do a factory reset when you are finished so that the memory of the private keys is destroyed. If you are using a computer with a boot-from-CD copy of linux, I think you can just power down the computer and the private keys will be gone. (Maybe someone can confirm for me that the private keys would not be able to be cached by bitaddress?)
To spend your paper wallet, you will need to either create an offline transaction, or import the private key into a hot wallet. Creating an offline transaction is dangerous if you don't know what you are doing. Importing to a client side wallet like Bitcoin-Qt, Electrum, MultiBit or Armory is a good idea. You can also import to an online wallet such as Blockchain.info or Coinbase.
Trusting bitaddress.org The only thing you need bitaddress.org to do is to honestly convert the brainwallet passphrase into the corresponding private key and address. You can verify that it is doing this honestly by running several test passphrases through the copy of bitaddress that you plan on using, and several other brainwallet generators. For example, you could use the online version of bitaddress, and brainwallet and safepaperwallet and bitcoinpaperwallet. If you are fancy with the linux command line, you can also try "echo -n my_die_rolls | sha256sum". The linux operating system should reply with the same private key that bitaddress makes. This protects you from a malicious paper wallet generator. Trusting your copy of bitaddress.org Bitaddress publishes the sha1 hash of the bitaddress.org website at this location: https://www.bitaddress.org/pgpsignedmsg.txt The message is signed by the creator, pointbiz. I found his PGP fingerprint here: https://github.com/pointbiz/bitaddress.org/issues/18 "527B 5C82 B1F6 B2DB 72A0 ECBF 8749 7B91 6397 4F5A" With this fingerprint, you can authenticate the signed message, which gives you the hash of the current bitaddress.org file. Then you can hash your copy of the file and authenticate the file. I do not have a way to authenticate the fingerprint itself, sorry. According to the website I linked to, git has cryptographic traceability that would enable a person to do some research and authenticate the fingerprint. If you want to go that far, knock yourself out. I think that the techniques described in this document do not really rely on bitaddress being un-corrupt. Anyway, how do we know pointbiz is a good guy? ;-) There are a lot of skilled eyes watching bitaddress.org and the signed sha1 hash. To gain the most benefit from all of those eyes, it's probably worthwhile to check your copy by hashing it and comparing to the published hash. "But we aren't supposed to use brainwallets" You are not supposed to use brainwallets that have predictable passphrases. People think they are pretty clever about how they pick their passphrases, but a lot of bitcoins have been stolen because people tend to come up with similar ideas. If you let dice generate the passphrase, then it is totally random, and you just need to make sure to roll enough times. How to avoid spending your life rolling dice When I first started doing this, I rolled a die 62 times for each private key. This is not necessary. You can simply roll the die 62 times and keep the sequence of 62 numbers as a "seed". The first paper address you create would use "my die rolls-1" as the passphrase, the second would be "my die rolls-2" and so on. This is safe because SHA256 prevents any computable relationship between the resulting private key family. Of course this has a certain bad security scenario -- if anyone obtains the seed they can reconstruct all of your paper wallets. So this is not for everyone! On the other hand, it also means that if you happen to lose one of your paper wallets, you could reconstruct it so long as you still had the seed. One way to reduce this risk is to add an easy to remember password like this: "my die rolls-password-1". If you prefer, you can use a technique called diceware to convert your die rolls to words that still contain the same quantity of entropy, but which could be easier to work with. I don't use diceware because it's another piece of software that I have to trust, and I'm just copy/pasting my high entropy seed, so I don't care about how ugly it is. Why not input the dice as a Base 6 private key on the Wallet Details tab? Two reasons. First of all, this option requires that you roll the die 99 times, but you do not get meaningful additional protection by rolling more than 62 times. Why roll more times if you don't have to? Second, I use the "high entropy seed" method to generate multiple private keys from the same die rolls. Using the Base 6 option would require rolling 99 times for every private key. I'm a big nerd with exotic dice. How many times to roll? Put this formula in Excel to get the number of times to roll: "=160*LOG(2,f)" where f = number of faces on the die. For example, you would roll a d16 40 times. By the way, somewhat unbelievably casino dice are more fair than ordinary dice The "Change address" problem: You should understand change addresses because some people have accidentally lost money by not understanding it. Imagine your paper wallet is a 10 dollar bill. You use it to buy a candy bar. To do this you give the cashier the entire 10 dollar bill. They keep 1 dollar and give you 9 dollars back as change. With Bitcoin, you have to explicitly say that you want 9 dollars back, and you have to provide an address where it should go to. If you just hand over the 10 dollar bill, and don't say you want 9 dollars back, then the miner who processes the transaction gives 1 dollar to the store and keeps the remainder themselves. Wallet software like Bitcoin-Qt handles this automatically for you. They automatically make "change addresses" and they automatically construct transactions that make the change go to the change address. There are three ways I know of that the change problem can bite you:
You generate a raw transaction by hand, and screw up. If you are generating a transaction "by hand" with a raw transaction editor, you need to be extra careful that your outputs add up to the same number as your inputs. Otherwise, the very lucky miner who puts your transaction in a block will keep the difference.
You import a paper wallet into a wallet software and spend part of it, and then think that the change is in the paper wallet. The change is not in the paper wallet. It is in a change address that the wallet software generated. That means that if you lose your wallet.dat file you will lose all the change. The paper wallet is empty.
You import a paper wallet into a wallet software and spend part of it, and then think that the change is in the change address that the wallet software generated. If the transaction did not need to consume all of the "outputs" used to fund the paper wallet, then there could be some unspent outputs still located at the address of the paper wallet. If you destroyed the paper wallet, and destroyed the copy of the private key imported to the wallet software, then you could not access this money. (E.g. if you restored the software wallet from its seed, thinking all of the money was moved to the wallet-generated change addresses.)
For more on this, see here The hot paper wallet problem Your bitcoin in your paper wallet are secure, so long as the piece of paper is secure, until you go to spend it. When you spend it, you put the private key onto a computer that is connected to the internet. At this point you must regard your paper wallet address as hot because the computer you used may have been compromised. It now provides much less protection against theft of your coins. If you need the level of protection that a cold paper wallet provides, you need to create a new one and send your coins to it. Destroying your paper wallet address Do not destroy the only copy of a private key without verifying that there is no money at that address. Your client may have sent change to your paper wallet address without you realizing it. Your client may have not consumed all of the unspent outputs available at the paper wallet address. You can go to blockchain.info and type the public address into the search window to see the current balance. I don't bother destroying my used/empty paper wallet addresses. I just file them away. Encrypting your private key BIP 0038 describes a standardized way to encrypt your paper wallet private key. A normal paper wallet is vulnerable because if anyone sees the private key they can take the coins. The BIP38 protocol is even resistant to brute force attacks because it uses a memory intensive encryption algorithm called scrypt. If you want to encrypt your wallets using BIP38, I recommend that you use bitcoinpaperwallet because they will let you type in your own private key and will encrypt it for you. As with bitaddress, for high security you should only use a local copy of this website on a computer that will never get connected to the internet. Splitting your private key Another option for protecting the private key is to convert it into multiple fragments that must be brought together. This method allows you to store pieces of your key with separate people in separate locations. It can be set up so that you can reconstitute the private key when you have any 2 out of the 3 fragments. This technique is called Shamir's Secret Sharing. I have not tried this technique, but you may find it valuable. You could try using this website http://passguardian.com/ which will help you split up a key. As before, you should do this on an offline computer. Keep in mind if you use this service that you are trusting it to work properly. It would be good to find other independently created tools that could be used to validate the operation of passguardian. Personally, I would be nervous destroying the only copy of a private key and relying entirely on the fragments generated by the website. Looks like Bitaddress has an implementation of Shamir's Secret Sharing now under the "Split Wallet" tab. However it would appear that you cannot provide your own key for this, so you would have to trust bitaddress. Durable Media Pay attention to the media you use to record your paper wallet. Some kinds of ink fade, some kinds of paper disintegrate. Moisture and heat are your enemies. In addition to keeping copies of my paper wallet addresses I did the following:
Order a set of numeric metal stamps. ($10)
Buy a square galvanized steel outlet cover from the hardware store ($1)
Buy a sledgehammer from the hardware store
Write the die rolls on the steel plate using a sharpie
Use the hammer to stamp the metal. Do all the 1's, then all the 2's etc. Please use eye protection, as metal stamp may emit sparks or fly unexpectedly across the garage. :-)
Use nail polish remover to erase the sharpie
Electrum If you trust electrum you might try running it on an offline computer, and having it generate a series of private keys from a seed. I don't have experience with this software, but it sounds like there are some slick possibilities there that could save you time if you are working with a lot of addresses. Message to the downvoters I would appreciate it if you would comment, so that I can learn from your opinion. Thanks! The Easy Method This method is probably suitable for small quantities of bitcoin. I would not trust it for life-altering sums of money.
Download the bitaddress.org website to your hard drive.
Close your browser
Disconnect from the internet
Open the bitaddress.org website from your hard drive.
WARNING: A fake electrum website with malware is advertising on duckduckgo and yahoo.
If you perform a search for electrum on duckduckgo or yahoo, an ad claiming to be electrum.org will be at the top. In reality the ad links to: electrum-bitcoin org The domain was created December 21. This site is nearly identical to electrum.org except the download links give different files. All three of the files that can be download are much smaller than the real electrum and are most likely malware. The three files are: electrum.exe - 91136 bytes electrum.out - 60316 bytes electrum.zip - 32478 bytes EDIT: Some Advice: When installing software, especially something as import as wallet software, it is a good idea to verify the integrity of the download with a signature using a key that was obtained from one or more seperate sources. I made a list of the keys used to sign popular bitcoin wallets below to act as another source to verify the integrity of those keys. Bitcoin-Qt: Signer: Gavin Andresen [email protected] Fingerprint: 2664 6D99 CBAE C9B8 1982 EF60 29D9 EE6B 1FC7 30C1 Key ID: 1FC730C1 Key Link: bitcoin.org/gavinandresen.asc Electrum: Signer: ThomasV [email protected] Fingerprint: 6694 D8DE 7BE8 EE56 31BE D950 2BD5 824B 7F94 70E6 Key ID: 7F9470E6 Keyserver: pool.sks-keyservers.net Multibit: Signer: Jim Burton (multibit.org developer) [email protected] Fingerprint: 299C 423C 672F 47F4 756A 6BA4 C197 2AED 79F7 C572 Key ID: 79F7C572 Keyserver: pgp.mit.edu Armory: Signer: Alan C. Reiner (Offline Signing Key) [email protected] Fingerprint: 821F 1229 36BD D565 366A C36A 4AB1 6AEA 9883 2223 Key ID: 98832223 Keyserver: pgp.mit.edu The signatures provided for some of the wallets are signatures of the hash values, so be sure to verify that the hash of the downloaded file matches the hash that was signed. EDIT: GPG Examples: Verifying Bitcoin-Qt: First download, import and check Gavin's key: Download his key at bitcoin.org/gavinandresen.asc In terminal or command line run:
gpg --import gavinandresen.asc gpg --fingerprint
Check that the fingerprint for Gavin's key matches 01CD F462 7A3B 88AA E4A5 71C8 7588 242F BE38 D3A8. Then download the wallet software and signature. Verify the signature:
gpg --verify SHA256SUMS.asc
You should see:
gpg: Good signature from "Gavin Andresen (CODE SIGNING KEY) "
The signature for Bitcoin-Qt signs the hash values. So we must compute the hash of the downloaded software. This example is using the linux version.
gpg --print-md SHA256 bitcoin-0.8.6-linux.tar.gz
Check that the output matches the associated hash value in SHA256SUMS.asc Verifying Electrum: First download, import and check ThomasV's key: This key can be found at a keyserver.
In early 2013, it became a common belief that new Bitcoin users should not be recommended Bitcoin-QT, the full node client. Bitcoin.org was changed to no longer exclusively recommend it. Two years later, the block size conservatives are saying the drop in full node count was due to block size
I distinctly remember that the recommending of Bitcoin-QT to new Bitcoin users became a faux pas in early 2013. It was claimed that regular people should download and install an SPV client like Multibit. Predictably, there was a large drop in the full node count, as the wallet market became dominated by a large number of new, light clients, and the most trafficked Bitcoin website, bitcoin.org, stopped exclusively recommending people to install Bitcoin-QT. Now, we have important developers like Luke-Jr claiming that this 95% drop in full node count can be mainly attributed to the growing size of the block chain, despite the fact that the drop began right when light clients began being recommended.. EDIT to add some data: This is the image that GMaxwell and Peter Todd, two individuals who are conservative about the block size (in particular Peter Todd, who's been warning about increasing the 1 MB size limit since 2013), have linked to to make their point about the full node count: http://i.imgur.com/EL0zHRe.jpg Up until at least March 18, 2013, the only client recommended to visitors of bitcoin.org was Bitcoin-QT, and an installation link for it was provided right on the landing page: https://web.archive.org/web/20130318211940/http://bitcoin.org/ The WayBack Machine shows that by March 25th, 2013, this had changed, and a 'Choose Your Wallet' button appeared on Bitcoin.org/: https://web.archive.org/web/20130513214959/http://bitcoin.org/en/ From March 25th 2013 onward, the number of non-full-node wallets recommended by bitcoin.org increased, in response to a general increase in the number of high quality and/or well marketed light and mobile wallets on the market. Now a days, Bitcoin-QT is one of twelve clients displayed on bitcoin.org's Choose Your Wallet page: https://bitcoin.org/en/choose-your-wallet Other than Bitcoin-QT and Bitcoin Armory, all of them are non-full-node clients. This shift, from a wallet market where only Bitcoin-QT was available and recommended to one that is increasingly diverse and dominated by light clients, coincides with the point (Spring 2013) where we start seeing a rapid decline in the full node count.
My first experience with bitcoin was NOT positive :( + Questions
After seeing an interesting comment on /funny in which bitcoin currency is used to make tips across reddit I started to investigate and learn about the Bitcoin. I had heard about it before but I didn't know how it worked or what I had to do in order to use it. A dozen Bitcoin Wiki entries later I download bitcoin-qt and create my first wallet. The system seemed very easy and straightforward and I had already started to apply for "free starter bitcoins" when I met "synchronization". Now synchronization is not necessarily a deal breaker but it was annoying as hell. I'm using an old computer and it seemed as if it would take at least a day if not more to complete the whole process... and during that time my computer was getting slow as hell. Now I'm quite a tech savy person and I know why in this P2P based system this is important, but for anyone else this would be unacceptable. Imagine elder people or not so tech savy persons trying out the system for the first time and noticing that they can't use it without occupying 2+ GiB of their HardDrive and having to wait a lot. I did not complete the sync and tried to use the multibit instead. But since I had already applied to the Free starter bitcoins on some websites I wanted to keep my old wallet. I try to look for an import/export button but it seems that Bitcoin-qt doesn't support exportation and I needed to use a third party application called pywallet (command line!) to export my wallet and convert it into another plaintext format since the format used by bitcoin-qt was not supported by multibit. And one would assume that the first thing you do when creating such a currency is to define a standard for the wallet and the applications. Again, I know how to use the command line but anyone who doesn't and who just wants to try out the system for the first time would be inmediately turned off by this limitation. These are all issues that need to be fixed and addressed. Also, at the current situation it is much more comfortable and easier to set up an e-wallet than using standalone software on my computer. And if you ask me, it beats the purpose of creating a decentralized currency when in the end the most popular e-wallet services are going to hold most bitcoins and suppose a great security risk. So I ask you: do you know any solutions to the above mentioned problems? Is there any way to reduce the impact by those hindrances? And now to the questions: Since I'm a very inquisitive mind and I'm still very much interested in bitcoins I would like to ask some questions I couldn't find properly answered in the wiki about the nature of the bitcoin system and how exactly it works. I'd be very grateful if you could answer any of the following questions: 1. What exactly is a bitcoin? A string of text? A hash? A file with a string of text? 2. If I'm not mistaken, a bitcoin wallet is made of a public key and a private key. If I want to transfer my wallet from one program to another or a piece of paper... would I need to export or print out the strings of text that form the bitcoins itself or do I just need those two keys? 3. How does the bitcoin system know how much balance is inside an wallet/account. Does it typically ONLY check it against the chainblock or does it also make use of any bitcoin strings stored inside the wallet? 4. Cryptographically speaking... what happens when I transfer bitcoins? Thank you! *Please don't downvote me just because my first experience was negative. I'm still very interested and would like to learn a lot more. * Edit: Thank you very much for all your answers! I can't reply to all of you (mainly because it's very late over here) but I feel that I understand the concept much better and also feel much more comfortable knowing that the only thing I ever need is my private and public key. It makes me care much less about software and wallet.data files, knowing that I can have everything I need written on piece of paper or saved in an encrypted file of my own. Then, when I need to spend bitcoins or check my balance I can use whatever software I deem best at the moment. Thank you!
Alright here's where I'm at. I have the wallet.dat file, and I have a file labeled multibit.key (which I'm assuming has to do with bitcoin, not doge). I didn't have the Dogecoin-QT app on my computer anymore but I did have a backup of my computer so I restored the app and now have it open but it is not syncing. According to the ELI5 that doesn't matter though. It says in recent transactions I tried to send out all of my doge to my reddit account but since it wasn't synced I don't know if that went through (although balance says 0). I tried using the help-debug-console where you do dumpprivkey "address" and it says that "Private key for address 'address' is not known (code -4)". I forgot to unlock before trying to get the private key. I now have my private key, but when I try to import to MultiDoge it wants a file instead of pasting the private key in. Would anyone know where to go from here? I used dogechain to import private key and it now shows full balance. I think I did it? Yep, I did it. Keeping the post up for future searches, hopefully it helps someone else. Side question: Since the old dogetipbot is gone I can no longer access history or balance, what happened to the doge I had in that account? Is there a way I can access it?
PSA: Clearing up some misconceptions about full nodes
I am having a problem with my first transaction with Msigna and am looking for help. I have been unable to find an answer by searching the internet so I am writing this post. I sent a transaction to an address I wish to send funds to but the confirmation status is “unsent” after several hours of waiting. I am running Bitcoin-Qt and the blockchain is completely downloaded and synced. The icon in Msigna is a green circle with a check in it and it is connected. However the funds seem to be stuck locally and have not appeared in blockchain.info. I have installed the latest version and imported my vault (and updated schema) but the status remains the same. Am I doing something wrong? How do I recover my un-sent funds? How do I export the private keys so that I can import into another wallet like Multibit or Armory? Any help would be greatly appreciated… Thanks!!
Let's Decentralise the World and Make World Crypto Network a Distributed Autonomous Organisation
Decentralise the World
EDIT 2014-08-01 See also pierebel0Seed the Chain Please read this carefully and be forthcoming with your views. It’s important to the future of World Crypto Network. As many of you may know pierebel0 (Nick) and I have been working on an idea and since then we have been putting together diagrams and a plan. Basically we want to get open source software to regions of the world that have poor internet connectivity and are in need of most financial innovation. This would be like an airdrop of items including:
full copy of the latest Bitcoin blockchain
bootstrapped QT Wallet with Bitcoin Armory
a range of thin wallets like Multibit on USB Sticks
Skyhook ATM optional
and some revamped laptops with Linux distros installed
Nick's initial idea was to produce a list of villages and towns ranked by bandwidth and we would then give each place a Bitcoin donation address. We could use a map of the world using the open source CoinMap. A page on the World Crypto Net website called Join the Revolution. Members of the audience, hosts of the show and any willing participants in the global campaign can sign up and put themselves on the map. We could then setup a Bitcoin Wallet in Armory and assign a Bitcoin address for every viable village and town in the world. Our audience will be invited to vote on which town or village they wanted as to do an Open Source Airdrop on by sending bitcoins to that address. Each donation would be like a vote. We would set targets on each location based on the most cost effective way of delivering it and then let the market decide what order we should go in. We would probably want to weight it to regions that had the most potential to benefit from the project.
World Crypto Network as a DAO (Distributed Autonomous Organisation)
Now the next question that came up is how to handle the funds responsibly? Up until now people have just trusted Thom and I and sent us money. But if we are going to practice what we preach in this brave new community then what better opportunity to try out a DAO. Recently I reinstalled Bitcoin Armory to try out the new Multisig and multipart paper backup features and I suggest the following process for discussion:
Live Town Hall meeting on Youtube with plenty of advance warning with members of our audience who have followed us up until now to discuss the election process of 7 people who will be custodians of Bitcoin Armory Wallet.
Key decisions will be things like: * How the election should take place? * Using the block chain as a clock on which Bitcoin Block should it commence? e.g. the election takes place at block height #312,020 Once elected each person is given a number at random.
A custodian of the funds is selected at random using the first number in the Bitcoin nonce at block #312,017 between 1 and 7. This way none of the elected 7 will know if they are going to be in charge. This should filter out any power hungry psychopaths as mostly they want control right now and not leave it to chance. We want any would be dictator to self-deselect themselves from this process.
That custodian then produces an Armory wallet consisting of a 5 of 7 paper backup. Each elected member is given one each and the custodian keeps the master copy. In order for the wallet to be restored and funds to be spendable you would need 5 people out of the seven to collude or join together in protest against the custodian.
Everyone, the audience and elected 7 included are encouraged to publish their raw public keys (in hex, not the normal address) so that we can create ad hoc multi-sig wallets with one another on a project by project basis. I would also like to include the ability for the audience to become hosts and participants and even allow them to seize the funds by co-operating with members of the elected 7. This would mean dividing up 1 of the 7 root keys in to smaller junks like with a multiple encrypted zip file or something.
Thoughts and things to consider:
What I particularly like about splitting up the keys is that we could even engineer it to make sure that no more than 2 members of staff are elected per country. That way no single authority could shut down the World Crypto Network. It’s also important to note that the elected staff and random custodian are just admin staff. Everyone’s a leader at WCN and the role of the people at the top is to give the people at the bottom everything they need to get their job done. All the custodian is doing it making sure the web hosting is paid for and that the donations get sent to the right people. Individuals within the organisation are still responsible for their own projects and fundraising. None of the elected 7 can stop you from soliciting money for your hard work. But they might come in handy if you want to set up a project for a 3rd party like Let’s get Nepal on a Meshnet and you would like to setup a 2 of 3 multisig wallet of which one of them could be the custodian. This would lend you credibility when you market your project and make people more likely to donate. We could also not bother with the initial election and just self appoint the first 7 people and just rotate the duties every 15,000 blocks. Also Thornbreaker (Jamie Nelson) mentioned that we should come up with a manifesto. I think this is a good idea and we could do it on Github or a Wiki. Thank-you for your time, I look forward to your reading thoughts.
Importing Private keys into a QT based wallet, how is it done?
Before the fork I had been storing my tokens in MultiBit. I saw no need to incur a transaction fee to transfer those tokens into a QT compatible wallet format prior to the fork. So now I am here with multiple files that contain the private key(s) from those wallets. I now need to import these keys into both my Bitcoin (Cash) and Bitcoin (Settlement) QT clients. What are the steps necessary to accomplish this? I did find https://bitcointalk.org/index.php?topic=336404.0 Is this a safe method in which to perform the activity? I will be importing to Bitcoin ABC v0.14.6 & Bitcoin Unlimited v220.127.116.11
Export private key from MultiBit without password (Done)
edit file with some editor like Notepad++ (I'll probably just use Notepad, unless that is a bad idea?)
copy only key - this is row without # ,and you must copy only key - no date and another symbols , (row indicates that it might be better to import to a spreadsheet?)
then in BitCoin-Qt open from Help->Debug window ->Console (I am able to navigate to where the Console is not located)
importprivkey [label] [rescan=true]
(Where is the information I copied from step 3? and also without the '<>') (where label is name of owner - your name.; is this necessary? Do I need to provide a label? Can I leave it blank? And if I can leave it blank would I simply omit that the '[label]' argument?)
And when press enter the your address with coins will appear in your addresses and in your balance.
Additionally, can this activity take place on a computer that is not connected to the applicable network? I am still waiting (1 year 40 weeks behind) for the Bitcoin (Settlement) wallet to download the chain (for some reason copying over of the pre-fork blocks did not take and now that the fork has occurred I do not want to try to start over or run the risk of re-installing). Thank you for your assistance.
GPG instructions and public key list for verifying Bitcoin clients.
I have noticed their is a growing problem of fake bitcoin clients, and I expect the frequency and elaboratness of these fake clients to increase. Verifying the signatures for these clients will detect if you are receiving anything other than what the signer the of the software signed. The exception to this is if the attacker acquires the signer's private key, which should be a lot more difficult than tricking users to visit the wrong site or hacking servers. This can also be addressed by using multiple signatures per client. An important part of this process is acquiring the public keys for the sofware signers in a secure manner. To help with this I have included a signed list of fingerprints and where to acquire the public keys to act as another source to verify the keys used to sign bitcoin clients. I have also included instructions for verifying the fingerprint list and bitcoin clients. To deal with the issue that posts and comments on Reddit can be easily modified I suggest other users (especially well known ones) post a signature of the fingerprint list in a comment in this thread, or at least a hash of the fingerprint list (not as secure but still better than nothing). List of Fingerprints: +++ Bitcoin-Qt: Signer: Gavin Andresen (CODE SIGNING KEY) [email protected] Fingerprint: 2664 6D99 CBAE C9B8 1982 EF60 29D9 EE6B 1FC7 30C1 Key ID: 1FC730C1 Key Link: bitcoin.org/gavinandresen.asc Electrum: Signer: ThomasV [email protected] Fingerprint: 6694 D8DE 7BE8 EE56 31BE D950 2BD5 824B 7F94 70E6 Key ID: 7F9470E6 Keyserver: pool.sks-keyservers.net Signer: Animazing [email protected] Fingerprint: 9914 864D FC33 499C 6CA2 BEEA 2245 3004 6955 06FD Key ID: 695506FD Keyserver: pool.sks-keyservers.net Multibit: Signer: Jim Burton (multibit.org developer) [email protected] Fingerprint: 299C 423C 672F 47F4 756A 6BA4 C197 2AED 79F7 C572 Key ID: 79F7C572 Keyserver: pgp.mit.edu Armory: Signer: Alan C. Reiner (Offline Signing Key) [email protected] Fingerprint: 821F 1229 36BD D565 366A C36A 4AB1 6AEA 9883 2223 Key ID: 98832223 Keyserver: pgp.mit.edu +++ My Key:
Hashes for fingerprint list: SHA-256: 7A6B9841 355B1127 E5639A9D 7040D81C F395D382 884376C2 31829C63 6FCF1B80 SHA-512: 04A49A60 A1645479 ED0B3CE9 AE32E156 E9768CC2 0D4EF393 814162BE BFA6FAF5 6C520769 C654467F 6B61EBD4 4A5A5C93 9DF81B7D AA468A50 2DD7FFF3 F637A49C Verifying the fingerprint list: Save fingerprint list, from the first plus to the last plus, to a text file called fingerprints.txt Next save my key to a file called dcc4e.asc and my signature to a file called fingerprints.txt.asc In terminal or command line run:
I want to store bitcoins for a long time, is this how I do it.
I download bitcoin qt. Have bitcoins it. Encrypt the wallet. Write down the pass on a paper. Copy the wallet.dat and paste it on a USB stick. 20 years later I import the wallet.dat file from the usb stick with Multibit, fill in the encryption pass and voila?
[Guide] How to transfer your wallet from your computer to android.
I got tired of waiting and waiting for the whole blockchain to sync so I decided to move my dogecoins to my phone since the app does not need to download the whole chain. (Luckily there is a bounty for a electrum equivalent that will hopefully arrive soon.) It is much much easier if you just transfer some funds to a new address on your android phone, but this tutorial is for those people like me who can't even get the dogecoin app to sync. Surprisingly the whole process was very simple. Don't be put off by all the text or all the talk about security. I just want things to be accessible to beginners and to practice good habits. Root is not required. Note: I am assuming you are using the official dogecoin-qt app and the Dogecoin Wallet app by langerhans. Disclaimer: This will involve having your private key stored in plaintext. Proceed with caution and treat that file like you would a password. Do not share your private key with anyone.
Getting your private keys
A wallet comprises of public keys and private keys. Public keys are the addresses that you share, you can only use them for viewing. Private keys let you actually make transfers and are what makes you the owner of the wallet. Today we will be transferring those private keys to your phone. They will still be present on your computer unless you delete them, so keep that in mind security-wise. You will have to replace everything in '<>' with your own values.
Open the desktop app
Open the wallet console by going to: Help -> Debug Window -> Console
If your wallet is locked with a password, you'll need to unlock it by typing: "walletpassphrase 120".
Get the private key for an address by typing: "dumpprivkey "
Save the private key to a file.
Repeat this for each address that you want to transfer over.
Please think about how much dogecoins you want to transfer over. Brarsh:
Do you need that much? What if you lose your device? Just like only keeping a small amount of cash in your wallet and most safe in the bank, only carry what you could conceivably use for that time without access to your main wallet.
Creating a backup file
Next we need to create a backup file so that we can import our addresses into the android app. The android app uses the same format for its backup files as MultiBit (A popular bitcoin app). A typical file looks like the following:
# KEEP YOUR PRIVATE KEYS SAFE! Anyone who can read this can spend your Bitcoins. Kwmxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 2013-06-22T18:36:35Z L1Sxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 2013-05-04T22:47:32Z Kxwxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 2013-05-08T00:58:28Z
What we want to do is put our private keys in the following format: key date-of-address-creation, where the date is in the format YYYY-MM-DDTHH:MM:SSZ. Note the T and the Z. The android app needs the date so it knows how far back into the blockchain it needs to sync. If you can't remember when you created the address, visit http://dogechain.info/address/YOURADDRESS and get the date of the earliest transaction. It says that the dates are approximate, so I'd just put 00:00:00 for the time. You should now have a valid unencrypted backup of your wallet.
Importing the backup
Transfer the backup to your android phone, placing it in your Download folder. It has to be put in the Download folder or else the dogecoin app won't find the backup. Make sure it has a name you'll remember later.
Open the dogecoin app and click on: Back Up Keys -> Restore private keys. Click on the name of the backup and from the list that shows up, look for your backup, which should be unencrypted. Click Restore.
Delete the backup in your Downloads folder. Remember, your private key is stored in plaintext in there, so it is important that you delete it. Delete the backup on your computer if it is there also.
Wait for the app to sync completely. Your addresses will be added to the addresses that were already in the app, and your transactions should show up. If they do not, make sure that the date you put was correct and early enough.
Go to Back up Keys > Back up private keys and create a backup. This time it will be encrypted with a password :). If you do not have a backup, you could lose all your coins if you lose your phone or the data on it.
To the moon!
I just got into dogecoin two days ago so correct me if any of this is wrong. Same thing with anything in the post :). Blockchain/Dogechain: The blockchain is a ledger (record) of all the dogecoin transactions that have ever taken place. As of writing it is larger than 1GB in size. The blockchain is needed to find out how many funds you have in your wallet. Wallet: A wallet is the digital equivalent of a real life wallet. It is where your money is tied to (It doesn't contain actual dogecoins, but someone else could explain that better than me). The wallet contains your addresses and your private keys, both which are needed to receive and send dogecoins respectively.
How do I move private keys from Bitcoin-QT to another wallet without having the blockchain downloaded?
I currently access my bitcoins on Bitcoin-QT and have used a pretty good passphrase to encrypt the wallet.dat file. I would like to eventually move my coins to a paper wallet for offline storage, but currently want to get my coins over to blockchain.info (I set it up the account on a thumb-drive linux system with 2FA and a great password). I've read instances of people decrypting their wallet, then finding some unknown malware on their computer immediately emptying their wallets. I don't want to rely on the computer I currently have my wallet.dat file on just in case this happens to me. I'm trying to get my private keys into something like electrum or multibit using pywallet to decrypt my wallet.dat on a fresh linux system (thumb-drive again). However, the format from pywallet doesn't seem to be right to get it on electrum nor multibit. Is there a special way to extract the private keys from wallet.dat to import them into multibit or electrum? I don't think using Bitcoin-QT on my thumb drive is an option since the blockchain is so huge and I think the blockchain is needed to do anything with Bitcoin-QT. I didn't find too much help via google or the security guide on the right side of this page.
I uninstalled Java on my computer because of the vulnerabilities stories that have been circulating around it, and because of an annoying pop-up to update it every time I ran my computer. Anyways, now my Multibit wallet client wont open, and it asks me every time to update to Java [OK] or [Cancel] Why does Multibit need Java to run? I'm waiting for the blockchain on my Bitcoin.qt wallet to update now so I can import my wallets.dat files. I used Multibit because I preferred their interface over the BTC.qt, but is it safe to use knowing it needs Java?
I had some bitcoins around from a year ago and I haven't touched the client since. I first tried to sync the qt client ver 0.5x and it got stuck on a block 67 days ago. I then uploaded the wallet to blockchain.info that says I have 0 bitcoins even though it only lists two transactions. One where I got my money and one where I sent half of it so there should be a positive balance. Last I tried to import keys from blockchain into multibits. Multibits says that dates are missing and it has to sync. During the sync it gets stuck on 71%. What is happening and what do I do?
I'm hoping someone will be able to assist a novice with some basic questions regarding sending and receiving Mastercoins. My questions: 1) To send MSC I want to use JR's Mastercoin Advisor. What is the "data address"? (i) Is the "data address" a new, unique address generated by the Advisor for each transaction according to what you input? (ii) Does the unique address include the information on what is sent (TMSC or MSC) and the amount sent so that this does not have to be specified when sending the transaction from the Bitcoin-QT client -- i.e., that information - amount and type -- is included in the data address? 2) Once you have the data address, is that all you need from the Advisor? I.E., you set up a transaction manually on Bitcoin-QT, sending 3x 0.00006 BTC to each address - Exodus, MSC recipient and Data addresses? 3) Is a miner's fee required? If so, is it 0.0001 BTC? To which address do you add the miner's fee? 4) Are MSCs sent the same way as BTCs? Bitcoin-QT send the entire amount of your MSCs from the address holding the MSCs and then sends back the change to a different address in your wallet? So if I have 1000 MSC on the address and send 100 to the recipient, I receive 900 back at a different address in my wallet with a different private key? Or are they sent back to the same address? How will I know which address the change is received at? 5) When sending Mastercoins from the address holding the MSC, do I need to have sufficient Bitcoins at the same address? In other words, I need to co-mingle BTCs and MSCs in the same address? How does the wallet tell them apart? 6) Finally, if I received the MSCs from the Exodus Address in a Bitcoin client that does not support sending to multiple addresses (in this case Multibit) can I simply import the compressed private key to the Bitcoin-QT client to perform the transaction? Are there any concerns about having the same data in two clients? That's a lot of questions. If anyone can answer any of them (you don't have to tackle them all :) if that too much trouble, I'd really appreciate it. Many thanks.
So I've been using Multibit, and I enjoy its GUI and ease of use. Problem is, from what I understand there's no way to remove the transaction fees. Thing is, I'd like to be able to transfer BTC between my own wallets without being dinged every time with transaction fees. I downloaded Bitcoin-QT on the suggestion of a professional associate, but I can't figure out how to import wallets from Multibit. Are the wallets I opened in Multibit tied specifically to Multibit or can I open them using other software? If they are, is there any way to get my BTC out of Multibit without suffering the transaction fees? For bonus marks, are there any other wallet programs you recommend other than Bitcoin-QT or Multibit which allows you to manage multiple wallets easily and without any mandatory transaction fees?
Frustrated with wallets - could THIS be the stake through the heart of Bitcoin?
Actually, that should be "with wallets and fees." Both are causing some grief right now. While in the process of building a new computer, I'm getting increasingly frustrated with Bitcoin's complexity, especially around the notion of wallets. The Bitcoin-QT wallet becomes part of the network. Lovely, if you have a huge chunk of disk space to devote. I happen to be running a very lightweight pure SSD system, so onwards I look. Hmm. Armory? Well, it sits on top of the QT client, so no. How about Electrum? Not bad, but I'd rather NOT have my wallet stored elsewhere, encrypted or not. If I'm going to do that, I might as well just use a web wallet. Multibit? Ah, here we go! Local storage, no downloading of the entire block chain, and...you can't alter the transaction fee! I wasn't going to stress out over that because as many people have said, "what's $0.25" (or .40 or .06, or whatever people claim the trivial fee is)? But when I went to transfer my bitcoins from the old computer to the new one (because of course the wallet formats are incompatible between wallets), it came up with a fee of just under 0.05 BTC! I understand why fees are going to become important, but really - twenty bucks to transfer my own bitcoins from one computer to another, with the promise of more fees down the line. This is not a good system; and the fact that everyone who wants to use bitcoin has to go through pages of documentation to get some vague understanding of why they have to pay nondeterministic fees sometimes and not other times. Just venting here. This won't be the future of currency until it works as easily as currency.
Accepting bitcoin for my online business, do I need full validation for pre-generated addresses?
So, I've had the multibit client for a while, and I used to use bitpay as a payment gateway that funneled funds to one address. Now I'm revisiting accepting bitcoin through some websites. As far as I can tell it's a bad idea to receive funds on one address, is this negated by the way bitpay works? If I was to go down the route of pre-generating addresses do I need a different wallet as I can't see a way of importing pre-generated addresses into my wallet, or am I wrong? Do I need a wallet with full validation to do this? I originally had the QT wallet but downloading the blockchain was a pain, and unless I kept the wallet online updating took a while also. Any wallets that anyone could recommend would be appreciated.
GUIDE: Exporting Encrypted bitcoin-qt wallet from bitcoin-qt into MultiBit Save your data file as filename.key and import it in MultiBit through Tools/Import I would like to make some tests with bitcoind – the bitcoin command line client. I already have a wallet in the multibit format that I would like to import in bitcoind. How do I import private keys from Bitcoin-qt to If you have a ... Drag the Bitcoin-Qt wallet.dat file into the dotted area. Follow the instructions. Login to the new wallet. Under the Backup heading click download. Open multibit choose Tools -> Import Private Keys. Now import the wallet.aes.json file just downloaded. Delete the keys from the blockchain.info wallet. If you don't trust blockchain.info (despite their claims), you could extract the data entirely ... If you want to keep the addresses (not recommended!) then just export the keys, open the export file with a text editor and manually import each and every key into the bitcoin-qt wallet, rescan the wallet and then make sure the entire balance shows up correctly in qt before you finally delete the MultiBit wallet. Close Bitcoin-qt and start the Multibit client and create a new wallet if you have none. Click Tools/Export Private Key after selecting the Do not password protect export file option. Open the exported file in a text editor. Below the private key generated by MultiBit, paste the private keys you have copied above. Remember to paste them before ... Manual Steps. Copy your public receiving addresses from Bitcoin-Qt. Go to the Bitcoin-Qt console: click Help/Debug Window and then select the Console tab.; Run walletpassphrase [your password] [timeout in seconds] to unlock your password protected wallet.; Run dumpprivkey [Receiving Bitcoin Address] for each receiving address to be migrated to MultiBit. There may be hidden private change ...
bitcoin wallet private key import bitcoin core private key import bitcoin cash private key import bitcoin address is public key bitcoin wallet import key private key bitcoin id how bitcoin private ... In this video, I talk about a much asked question, which wallet should I get the bitcoin.org multibit or the bitcoin core version? Well my friend in this video I will explain just that and cover ... This video is unavailable. Watch Queue Queue. Watch Queue Queue made with ezvid, free download at http://ezvid.com Dash is built from Bitcoin's core code, meaning that it remains compatible with systems that are already designed to work with Bitcoin. The creator of Dash, Evan Duffield, works with a "core team ...