A Plausible Solution to the Problems With Using Digital Rights Management on E-Books
If you have ever bought an ebook from Amazon, don’t get too attached to it. According to Amazon’s terms of service, they have the right to shut down your Amazon account for just about any reason. If they were to do that, you would lose access to all of the books that you bought. This is because of a system called Digital Rights Management (DRM). DRM is a way to secure digital goods and tie them to a specific user in order to reduce piracy. It also means that, unlike a physical book that you bought from Amazon, you cannot loan that book to a friend or resell that book. Ebooks shouldn’t have different restrictions than physical books. I have created a system that will make an ebook as close to a physical book as it can get without being any less secure than the current DRM system.
The system relies on two cryptographic technologies: blockchain and asymmetric encryption. When Amazon user Alice wants to buy an ebook, she would go through roughly the same process as she would currently. She would go to Amazon.com and give Amazon her credit card information. After she presses the order button though, Amazon will add the transaction the ebook blockchain. This will be a record of the transaction between Alice and Amazon. Amazon will not be able to change it after they add it and the record of that transaction is permanent. Amazon should then send Alice an executable file via a download link. This app will have the book embedded in an encrypted form. The ebook’s data will be encrypted using two keys: a key supplied by the app that is unique to each copy of the book, and Alice’s public key. When Alice receives the ebook, she will open the app, which will check the blockchain to see who is supposed to have the book. The app will ask Alice for her private key; if the key is able to decrypt the data, the book will use its secret key to decrypt the data the rest of the way. The app will decrypt the book into the computer’s memory so it will be as safe from piracy as a DRMed file would be. If Alice wanted to give the ebook to Bob, then she would tell the app that she wanted to give the book to Bob, more specifically, his public key. The app will then decrypt and re-encrypt the data to be decrypted with Bob’s private key. Alice no longer has access to the ebook.
Blockchain is a technology that is typically used to keep records of the transaction of digital currency such as Bitcoin. In this case, it is used to keep a record of who is supposed to have what books. The system should use it because it is secure and it is distributed so no one, including the issuer of the book, can change the data once a transaction has been added. Blockchain will also be useful because anyone can add a transaction to it, so that it won’t be limited to just retail use.
The book’s data within the app will be encrypted to ensure that only the people that are supposed to have access to the book can read it. This way, even if there is a flaw in the app that allows the user to export the book’s data, the data will still be illegible without the correct encryption keys. These keys include one symmetric key that is included in the app that the app will keep secret. The other is an asymmetric key; the user’s private key. When the app gets ready for a transfer, it encrypts the book’s data first with the secret app key and then with the user’s public key. At this point, not even the retailer of the book can decrypt the book data. This will ensure that no one can decrypt the data without both using the app and having the user’s private key. The app should be required for decryption so that it can verify that the blockchain says that this user should have the book.
If the new owner of the book wants to send the book to someone else, they will be able to do so by first decrypting the book data into the memory of their computer, and then telling the app to re-encrypt the data using the public key of the person they are sending it to rather than their own. Once the app has done this, it will add the transaction to the blockchain. Now, the original owner of the book no longer has access to the book and they should send the book to the new owner in whatever fashion is most convenient for them. Even if the original owner made a copy of the book before they re-encrypted it, they will not be able to access it because the app will check the blockchain for verification upon every start.
This system is better than the current digital rights management system because it makes ebook transactions more secure, it does a better job at preventing piracy, it allows consumers of ebooks to exchange books as if they were physical books, and it stops ebook retailers from being able to take away books that we have purchased legally. This system opens up more opportunities for ebook libraries, ebook charities, and all sorts of exciting new frontiers because there can only be one copy of the book for every book that is sold.