Extract private key from multibit-hd

I used this wallet for a long time. Since they dropped the development and didn’t really provide a good way to extract the private keys from the wallet, I had to find a hacky way to do it. Fortunately for me, someone else had already done this. However, I realise that this method might not be very easy for everyone, so I decided to fork the wallet and provide a patched compiled version that anyone can use to extract their keys. The instructions are the same as in the source link below.

Source for patch and instructions: https://bitcoin.stackexchange.com/questions/40507/how-can-you-extract-private-keys-from-multibit-hd/51297#51297

My patched fork: https://github.com/jra89/multibit-hd

Compiled jar: https://www.alcor.se/files/multibit-hd.jar

If you downloaded and used the compiled jar above, you can skip to step 4.

  1. Clone the MultiBit HD Git repository
  2. Apply the patch above
  3. Build the project: mvn clean dependency:sources install
  4. Start the application: java -jar mbhd-swing/target/multibit-hd.jar
  5. Go to Tools -> Sign message and enter a Bitcoin address from your wallet for which you want to recover the private key.
  6. Press finish.
  7. Read the Bitcoin address and corresponding private key from the console output

When you have the key you can import it in whatever client you have. Remember that different addresses in the wallet equals different private keys, so you will need to extract all of them via the “Sign” method in multibit-hd. If you can’t figure it out, leave a comment and I might be able to help.

Butterflylabs Single SC 60GH/s miner arrived

So, finally I got my bitcoin miner that I ordered on the 1st of February 2013.
I’m hoping that I will be able to make some profit out of it, but it’s mostly for fun, so even if I don’t, I’m still happy to just play around.

Anyway, so the first thing I did was to unpack the miner and just generally check it out before I plug it in, just to make sure that I don’t miss anything, like an important manual or such.
I could only find one thing, which was a switch between 110V and 220V, which felt pretty important since I live in Europe, so I made sure it was set to 220V.

Not much more than that, so I plugged it into the computer for a test run, and then plugged in the power to the miner, suddenly the power unit for the miner literally exploded into fire and smoke. Shocked and angry at the sight of what is currently happening before my eyes, I quickly unplugged everything and carried the PSU in the cables (carried it at the end of the cable as to not get burned from the fire, although rather small fire, it was mostly smoke) to the bathroom, where I threw it in the bathtub and showered it with water.

So, at that moment a lot of thoughts where running through my mind, one being “fuck” and another one being “maybe the miner is still intact!”.
The apartment smelled like shit from all the smoke, so I opened a window and went back to the miner to see what I could do.

A thing I noticed about the PSU that was comfortably placed in the bathtub, was that the little switched I flipped before, had fallen into the unit, and was no longer visible.
So I’m thinking that the switch being broken might have been the reason for the incident, but meh, I prefer to use my own PSU anyway, so it doesn’t matter much, except for the fact that my apartment almost got threatened there for a second.

Now, I’ve read about the miner a lot on the Butterflylabs forum before I got it, to see what other people where experiencing when they got it, and a lot of them did not get a power unit with the package, and thus had to get their own. So a normal PSU for any computer works, as long as it’s around 550W (actually I tried a 550W but it didn’t work, so not sure about that one, but it’s what I have read) and has two PCIe cables that can be used for the miner.

The PSU in my server is modular, so I went and fetched two PCIe cables from the “dungeon” and plugged it in.
And voila, it started!

So, this doesn’t say much actually, since there still might be damaged parts in it from the little explosion before, so I needed to check that first.
And a quick check at least showed me that the machine detected the miner.

cats@Teresa:~$ lsusb | grep -i ft
Bus 001 Device 002: ID 0403:6014 Future Technology Devices International, Ltd FT232H Single HS USB-UART/FIFO IC

cats@Teresa:~$ dmesg | tail
[ 1317.675589] ftdi_sio 1-6:1.0: device disconnected
[ 1317.677817] ftdi_sio 1-6:1.0: FTDI USB Serial Device converter detected
[ 1317.677859] usb 1-6: Detected FT232H
[ 1317.677863] usb 1-6: Number of endpoints 2
[ 1317.677867] usb 1-6: Endpoint 1 MaxPacketSize 512
[ 1317.677870] usb 1-6: Endpoint 2 MaxPacketSize 512
[ 1317.677873] usb 1-6: Setting MaxPacketSize 512
[ 1317.678303] usb 1-6: FTDI USB Serial Device converter now attached to ttyUSB0
[ 1318.061040] ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0
[ 1318.061062] ftdi_sio 1-6:1.0: device disconnected

So from here I had some other trouble with the server, which eventually forced me to reinstall the whole damn machine, but that’s another story.
Now I could try to run cgminer and see if it worked with the bitcoin.cz pool.

./cgminer -o http://stratum.bitcoin.cz:port -u worked.worker -p password

And the output was rather promising 🙂

cgminer version 3.5.0 – Started: [2013-10-05 16:21:03]
(5s):59.06G (avg):58.55Gh/s | A:509454 R:3336 HW:13534 WU:798.0/m
ST: 2 SS: 0 NB: 108 LW: 533339 GF: 0 RF: 0
Connected to stratum.bitcoin.cz diff 51 with stratum as user xxx.xxxx
Block: 000cfd2757615868… Diff:149M Started: [03:06:39] Best share: 347K
[P]ool management [G]PU management [S]ettings [D]isplay options [Q]uit
GPU 0: | OFF /5.592Mh/s | A: 3 R: 0 HW: 0 WU: 0.1/m I: 6
BAS 0: max 69C 3.26V | 58.61G/58.55Gh/s | A:509604 R:3336 HW:13535 WU:798.0/m

So now the miner is nicely placed on the balcony (Not an open balcony, so I’m not worried about placing it there).
And since it’s fall now and winter will come soon, the temperature out there will be just right.