How To Remove DRM from MOBI and PRC eBooks

Ads by Google

kindleMobi and PRC are the default ebook formats used by the popular MobiPocket. In 2005, the company was aquired by Amazon, so yes, even the celebrated Amazon Kindle now works with these files. When you buy an ebook online from one of the major retailers, you can be pretty sure you’re getting a Mobi book.

Now, don’t get me wrong. It’s a great format and I’ve enjoyed many wonderful books on my Windows Mobile device using the MobiPocket reader. However, most of these encrypted files are a real pain if you want to throw them on different devices or use other software.

Today, we’ll show you how to crack the encryption of these files, so you can enjoy them however you want. In other words, we’ll show you how to remove drm from MOBI and PRC files. When you’re done, you’ll be able to read them on any system or device, convert those MOBI or PRC ebooks to PDF or any other format you’d like and you’ll – once again – own those books that you’ve payed for.

DISCLAIMER – Stripping the encryption of your ebooks might be illegal in your country of residence. Distribution of decrypted ebooks almost certainly is illegal. MakeUseOf is not responsible for any legal problems you might face. Act wisely, or face the consequences personally if you don’t.

With that said, let’s get going.

Ads by Google


A tool that has been able to break nearly every mobi/prc encryption is MobiDeDrm, courtesy of pdurrant. This download contains four simple python scripts; versions 0.01, 0.02 and 0.05.

Downloading Python

These scripts should run on any OS, given you’ve got the right files installed. So, before we can get started, you’ll have to download Python and a Python extension module like wxPython. What you need to do is to visit this site and you will be greeted by a webpage as seen below:

In both steps 1 and 2, choose the Python and wxPython module according to your operating system.

After these applications are installed, Python scripts should run flawlessly on Windows, Mac and Linux.

Finding Your PID

Your PID is the personal key that your reader uses to encrypt and read the file. We’re going to need this key if we’re to permanently strip the DRM from the ebook.

Because MobiPocket is designed to be used with different devices, the PIDs are out in the open for the user to grab. If your ebook is hosted on another device (i.e. Kindle), simply sync it up with the software before you proceed.


In MobiPocket on your desktop, go to Devices, and you’ll see the PID of said reader in Details. Note that a PID is both device and ebook-specific. Upon transfering your ebook, the PID is also altered, so you’ll need the PID of the right device or the decryption will fail.

When buying a Mobi ebook online, you’re most often asked for your PID before downloading. Obviously, this is the PID you’ll need to use. However, sometimes the process is turned around.

If you’re asked for the store username and password upon adding the book, it hasn’t and won’t be matched with your PID. Instead, you’ll first need to transfer the ebook to another device (e.g. Kindle or Windows Mobile) and use that PID. With me so far?

Removing Encryption

Once we have the right PID, most of the work is already behind us. We’ll now deploy the scripts to permanently remove the encryption. For accessibility, it’s advised to put your eBook and the python scripts in the same folder.


First, open the Terminal or command screen.

In Windows XP, go to Start – Run, type cmd and hit enter. In Vista, go to Start, type cmd in the search box and hit enter.

The Terminal application is located in /Applications/Utilities for Mac OS X.

And if you’re using Linux, you’ll probably know the location. In most distributions, this will also be located at Applications/Utilities.


Next, you navigate to the folder containing your files. To do this, type cd, followed by the full file path to your folder, and hit enter. In my case, that’ll make for cd /home/simon/ebook. If your filepath contains spaces, put single quotes ( ‘ ) around it.


Now, all you need to do is run the script. Type python PID and hit enter. Substitute “”, “” and “PID” with the appropriate filenames, file extensions and the PID respectively. In my case, that’ll make for python ebook.prc outfile.prc 1234567$ab

If you’re experiencing trouble, try putting your PID between single quotes ( ‘ ) or using one of the previous script versions (e.g. Some ebooks refuse to work with the later versions (strangely) but work perfectly well with the first one.


If all went well, you’ll now be the proud owner of another, unencrypted version of your ebook.

You can sync this with any device you want without too much of a hassle, or convert it to an easier to use format like pdf, rtf or html. Calibre and ABC Palm are great free resources to help you achieve the conversion, and a simple Google search will show even more.

How did that work out for you? Do you like reading your ebooks on one device or prefer the liberty to choose your own? Let us know in the comments.

Join live MakeUseOf Groups on Grouvi App Join live Groups on Grouvi
Awesome Websites
Awesome Websites
414 Members
Best Anonymity Tools
Best Anonymity Tools
286 Members
Deep Web Communities
Deep Web Communities
252 Members
Tips for Privacy Obsessed
Tips for Privacy Obsessed
151 Members
Online Security Tips
Online Security Tips
145 Members
Best Music Services
Best Music Services
110 Members
Parental Control Tools
Parental Control Tools
49 Members
Ads by Google
Comments (144)
  • james

    Yes plus one for opening PDC. Is there a similar method?

  • Karim

    Thanks for the instructions. However on a side note, I would like some help opening a PDC file.


  • matt

    I got Python 2.6.4 and wxPython installed and go to the command prompt get in to the script folder but i cant find the file, the only .py files are and
    What am i doing wrong?

  • RR

    I just posted full instructions here.

    Stripping DRM protection from Amazon Kindle and Mobipocket ebooks:

  • RR

    Stripping DRM from Amazon Kindle ebooks:

    Use a program called “unswindle.pyw”

    Read this for instructions and to get the program. It’s even easier than stripping DRM for Mobipocket books.

    1. Put “unswindle.pyw” on your PC.
    2. Install free “Kindle for PC” (get it from Amazon’s site), if you don’t already have it.
    3. Put your Kindle ebook in the same directory as “unswindle.pyw.”
    4. Double-click “unswindle.pyw.” It opens “Kindle for PC.”
    5. Within “Kindle for PC,” open the Kindle book whose DRM you want to strip.
    6. Close “Kindle for PC.” A window pops up, saying “Select unencrypted file you want to produce.”
    7. Type the filename you want for your no-DRM Kindle book. Click OK.

    That’s it! Note: this does NOT unencrypt Topaz ebooks, which are a significant fraction of Kindle books. I have still not found a program on the Internet to do it. This forum talks about Topaz ebooks:

Load 10 more
Affiliate Disclamer

This review may contain affiliate links, which pays us a small compensation if you do decide to make a purchase based on our recommendation. Our judgement is in no way biased, and our recommendations are always based on the merits of the items.

For more details, please read our disclosure.
Affiliate Disclamer

This review may contain affiliate links, which pays us a small compensation if you do decide to make a purchase based on our recommendation. Our judgement is in no way biased, and our recommendations are always based on the merits of the items.

For more details, please read our disclosure.
New comment

Please login to avoid entering captcha

Log In