Transferring coins from Bitcoin-Qt to Electrum
This guide is intended for users of Bitcoin Core who do not want to wait for their wallet to be synchronized with the network, which may take many hours or days depending on the hardware spec.
It's a somewhat common situation that users don't open their wallet for months, after they come back it they find it will take them hours to have be able to use Bitcoin Core. Another example is where the block files on hard disk have become corrupted requiring parts of the blockchain to be downloaded and verified again.
WARNING
Before reading this page, users should note that directly manipulating ECDSA private keys is dangerous and can result in losing bitcoins[1][2]. This guide is for the impatient or time-stressed, it is recommended that users of Bitcoin Core simply wait out the blockchain synchronization.
Obtain new Electrum wallet
Download Electrum, verify the signature to prove it was not modified in transit. Create a new empty wallet. Write down the mnemonic recovery seed on paper.
Obtain private key(s) from Bitcoin-Qt
Click Help -> Debug. Click the Console tab. Use the dumpprivkey command to get the private key. Repeat for as many bitcoin addresses as have money in them.
dumpprivkey <your bitcoin address>
If your wallet is encrypted, use this command to decrypt it for 5 minutes:
walletpassphrase your-wallet-passphrase 300
After that try dumpprivkey again.
Sweep private keys with Electrum
In the Electrum window, click Wallet -> Private Keys -> Sweep. Paste the private keys from Bitcoin-Qt here. Check the resulting transaction is okay and click Broadcast. Your funds will be swept from the addresses in Bitcoin Core and put in an Electrum wallet address.