Language Selection

English French German Italian Portuguese Spanish

Nook Ebook Reader & DRM

I'm 62 years old, and I've always been a reader. So, a few months ago, I finally coughed up the money to purchase a Barnes and Noble Nook ebook reader. Despite being a Linux user and occasionally enjoying tinkering with the innards of things, I haven't rooted my Nook, or installed any other OS variant—it is completely stock.

Unlike my wife's Amazon Kindle (with its E-Ink display), my Nook's battery doesn't last long. The other day I was reading a good short novel I had just downloaded from Barnes and Noble. I'm about half way through the novel when my Nook's battery level gets very low.

Here's the rub: my charger unit has an intermittent electrical short, and I can't immediately plug it in to continue reading while recharging my nook (a couple of days later, I fix this).

But I want to finish reading my novel now! I've got the time, and I'm really into the story.

So, I'll go to my desktop computer, download a copy to it, and continue reading. Good plan, but after going to the B & N ( site and downloading the .epub file, I can't read it. Gibberish on the screen with a warning about DRM encryption protection. Searching on Barnes and Noble's web site reveals that they don't have a Linux DRM reader, only a client for Macintosh and Microsoft Windows PC's.

OK, among the 3 laptops and 3 desktop computers we have here at home, we do have one installation of Microsoft Windows (on a Linux-MS Win dual-boot machine). I use MS-Win for occasional video editing and transcoding, and I don't want to have to restart the computer and boot into windows, just to finish reading the novel.

I consider running WINE on my main desktop Linux machine, but by now, I'm getting really irritated about this stupid DRM.

Bear in mind, I DO NOT STEAL CONTENT. I don't unlawfully download music, software, videos, and books. And when I purchase content, I don't electronically copy and redistribute it to others.

Feeling frustrated, I start looking on the Internet for a way to decrypt my novel so I can continue reading it on my Linux box.

Turns out that someone has written a couple of Python scripts—one to generate the Barnes and Noble encryption key, and one to decrypt the DRM'd .epub books and content. These Python scripts rely on your having the PyCrypto library installed (the script also uses the PyTKinter library for GUI).

Now, Barnes and Noble use an insecure method to generate the key. It is generated from two pieces of information: your name, and your credit card number.

So, I download the two Python scripts (source), and check them through to see if they contain any nefarious code designed to transmit my credit card number to the bad guys—the code is clean.

I invoke the keygen script, and type-in my name and number. Then I run the decrypt program and tell it to work on my novel, not really expecting this to work. Wow—it works perfectly. And now, I've got decrypted copies I can read on any of my electronic devices.

And DRM still stinks. Not only that, it reeks.

And I finish reading the novel.

More in Tux Machines

FSF News

  • FSF announces change in general counsel
    On Thursday, October 27, 2016, Eben Moglen stepped down as general counsel to the Free Software Foundation (FSF). Moglen, who in addition to being a professor of law and legal history at Columbia University, is the founder, president, and executive director of the Software Freedom Law Center (SFLC), and a former FSF board member, has generously served as the FSF's pro bono general counsel for the last 23 years.
  • Licensing resource series: How to choose a license for your own work
    We provide plenty of resources when it comes to picking a license. From our list of licenses to essays on copyleft, if you are looking to figure out what license is right for you there is plenty of information to rely upon. But this month's resource helps to pull that information together in one place to make selecting a license simple. Our guide, "How to choose a license for your work" is one stop browsing for answering many of the questions you may have when it comes to finding the right license. It provides recommendations based on the state of the work, but also based on the type of work that it is. While the Affero GNU General Public License version 3 works great for server software, documentation would probably be better served with a license directed at such, like the GNU Free Documentation License version 1.3. Smaller works can often get away without a strong copyleft, but still need to address patents, and so Apache License version 2.0 might be appropriate. The guide explains the reasoning behind the different recommendation for these and more. It also links to all those other resources mentioned above in case you need to dive in deeper when picking out a license.
  • Friday 'Frankenstein' Directory IRC meetup: October 28th starting at 1pm EDT/17:00 UTC
  • Free Software Directory meeting recap for October 21st, 2016

Benchmarks From Phoronix

  • Power Consumption & Efficiency Of The Linux Kernel For The Last Three Years
    Earlier this week I published Linux 3.9 through Linux 4.9 kernel benchmarks looking at the raw performance of various subsystems when testing each of the major kernel releases as far back as this Core i7 Haswell system was supported. From that same system, today is a look at testing the kernels going back to Linux 3.11 when Haswell graphics support was first in good shape for this Core i7 4790K box while looking at the raw power consumption and performance-per-Watt for these 19 major kernel releases.
  • The Idle Power Use Of The Past 19 Linux Kernel Releases
    This morning I published the Power Consumption and Efficiency Of The Linux Kernel For The Last Three Years article containing power consumption data for an Intel Haswell system going back to the Linux 3.11 kernel through Linux 4.9 Git. Those were some interesting power consumption numbers under load while here are the idle numbers. The idle tests were still running this morning so I opted to post them later since they're interested in their own right. The same i7-4790K system was used for benchmarking all of these kernels from Linux 3.11 to Linux 4.9 (25 October Git). No other changes were made during the testing process. Each kernel was freshly booted to the Unity desktop and then launched the idle power consumption test for a period of three minutes while monitoring the AC power draw as reported by the WattsUp Power meter. Automating this with the Phoronix Test Suite: MONITOR=sys.power phoronix-test-suite benchmark idle.
  • Phoronix Test Suite 6.8 Milestone 1 Released

Lenovo Issues Yoga Laptop BIOS Update To Fix Linux Woes

Last month was the controversy over some Lenovo Yoga laptops not working with Linux that was first alleged to be due to a Microsoft "Signature PC" requirement that later turned out to be incorrect. Well, the good news now is that Lenovo has issued a BIOS update and should allow for better Linux compatibility. The new BIOS release that's specifically targeting Linux users now creates an AHCI SATA Controller Mode option from the BIOS and once that's enabled, you should have no problems installing Linux on the Yoga Y900. This BIOS update isn't intended for WIndows users. Read more

today's howtos