Given my overall interest in cryptography, and my more recent coursework involving crypto, I've been thinking about whether or not it is actually possible to create a truly secure DRM solution. Having recently seen that the DRM for iTunes has been cracked, I've been leaning more and more towards "No" as the answer to my question.
Think about it. Since you have to be able to decrypt the song/movie/whatever in question to actually view or listen to it, you must already have all the information necessary to actually do the decryption. So the entire security of DRM must rely on hiding the process of actually doing the decryption from you.
As I understand all the current systems, your key plus the encrypted file go into a black box and the song or movie plays as it is decrypted. They make the program unable to actually save the output so you have to decrypt it every time, and since you don't know how the decryption process works you can't write a program that decrypts and save the output. This seems fine, in theory.
Except of course that one of the fundamental principals of cryptography is that you cannot create a secure cryptosystem that gets it security from the secrecy of the algorithm. If you have the key, an encrypted input and know what the output should look like, eventually you will find out how the key is used to decrypt the input and then you'll know the algorithm (or at least how to emulate it).
Given all of that, I don't think it's possible to create a secure DRM system. No matter what kind of cryptosystem you use, or how secure it is when you don't know the key, it remains fundamentally true that your copy of the software MUST be able to decrypt the content. So every single secret needed to decrypt the content is already on your computer, you just have to find out how to use it.
I'm not an expert in cryptography, but as far as I know every secure cryptosystem in use today relies on the secrecy of the keys, not the algorithm. A lot of companies try to say their proprietary (and secret) cryptosystem is more secure, and they are generally laughed at by cryptographers. But I'm curious, does anyone else have any thoughts on this? I'd be interested to see if anyone disagrees here, so fire away
Think about it. Since you have to be able to decrypt the song/movie/whatever in question to actually view or listen to it, you must already have all the information necessary to actually do the decryption. So the entire security of DRM must rely on hiding the process of actually doing the decryption from you.
As I understand all the current systems, your key plus the encrypted file go into a black box and the song or movie plays as it is decrypted. They make the program unable to actually save the output so you have to decrypt it every time, and since you don't know how the decryption process works you can't write a program that decrypts and save the output. This seems fine, in theory.
Except of course that one of the fundamental principals of cryptography is that you cannot create a secure cryptosystem that gets it security from the secrecy of the algorithm. If you have the key, an encrypted input and know what the output should look like, eventually you will find out how the key is used to decrypt the input and then you'll know the algorithm (or at least how to emulate it).
Given all of that, I don't think it's possible to create a secure DRM system. No matter what kind of cryptosystem you use, or how secure it is when you don't know the key, it remains fundamentally true that your copy of the software MUST be able to decrypt the content. So every single secret needed to decrypt the content is already on your computer, you just have to find out how to use it.
I'm not an expert in cryptography, but as far as I know every secure cryptosystem in use today relies on the secrecy of the keys, not the algorithm. A lot of companies try to say their proprietary (and secret) cryptosystem is more secure, and they are generally laughed at by cryptographers. But I'm curious, does anyone else have any thoughts on this? I'd be interested to see if anyone disagrees here, so fire away