Step 1) Find someone with a Kindle.
Step 2) On their Kindle, go to the Settings menu, and type ‘411’ on the keypad. This will bring up a little information dialog with a bunch of things in it, of which you only need the Serial. It is a 16-character string of letters and numbers. Write it down.
Step 3) Ask the Kindle’s owner to buy a book for you. Give them some money so you don’t look like a mooch. Once you’ve given them the money, ask them to log in to their Amazon account and navigate to their ‘Kindle Downloads‘ page from your computer. When they complain, mention that you’ve already given them money. The Kindle Downloads page will list all the books they’ve purchased, and yours should be right at the top. Click ‘Download to computer’ and you’ll get a file named ‘Title-of-Book.azw’
Step 4) Download MobiDeDRM.zip, which is a small suite of Python scripts that some kind soul wrote and then distributed through links that expire all the time and can be kind of a pain to track down. I’ve hosted them from my site so that they won’t expire. This .zip file contains mobidedrm.py, mobidedrm2.py, kindlepid.py and mobihuff.py.
(These scripts require that you install Python on your system, which is something outsite the scope of this howto. I’m on linux, but there’s a Python for Windows called “ActiveState Python.” Google will help.)
After unzipping the archive, open up a terminal window and pass the Kindle’s serial # (which you previously wrote down) to kindlepid.py. Something like this:
python kindlepid.py XXXXXXXXXXXXXXXX
Where all those Xs are replaced with the Kindle serial number. It will return something that looks like this:
Mobipocked PID for Kindle serial# XXXXXXXXXXXXXXXX is Z1QFCDQ*74
Make note of that last 10-character gibberish. That’s the secret code (or PID) we’ll need to remove the DRM from any books purchased for that Kindle.
Step 5) Now it’s time to remove the DRM. Do this:
python mobidedrm.py Title-of-Book.azw Title-of-Book.mobi Z1QFCDQ*74
where my 10-character gibberish string is replaced with the one you made note of in the last step. This will take about a minute, and when it finishes you’ll see:
Decrypting. Please wait... done
Now you will have a decrypted MobiPocket-formatted ebook that you can read in any MobiPocket reader.
If, however, you want to convert it to HTML to read on any device you wish, you’ll want to install MobiPerl. (This, of course, will require you to install Perl. MobiPerl’s website will walk you through that.)
6) With MobiPerl installed, do this:
This will create a directory named ‘unpacked’ that will contain Title-of-Book.html