Hacker News new | ask | show | jobs
by rmc 5378 days ago
Because in DRM is security through obscurity. The data/programme/file is encrypted to hide from the user, but must also decrypt it from the user, and the user has full technically and legal rights to that code.

If you have a DRMed music file, and (say) an open source music player can play it, then the file is encrypted and the encyrption key is kept with/in the file. You can just look at the source code of the music player and see it extracts the key from the file (or from your master key file), and see how it decrypts the file. You can then decrypt the file yourself. ergo drm breaking.

DRM can also force restrictions like "Only allow person with account id X from opening this programme", that could be implemented in the code as a function that says "doesUserHavePermission()". If the code is open source, then you just change that function to always return true, and to always allow everyone to use it. (Since it's an open source programme, you can then distribute your code with your 'fix' applied)

1 comments

You can just look at the source code of the music player and see it extracts the key from the file

To be fair, we can also do that without source code. It only (yet again) proves DRM is pointless against technical people that are determined to break it.

Non-technical people or people that do want to play "by the rules" won't do that. Also, the vendor could do things such as embed the name of the buyer inside the downloaded executable/data, to discourage sharing...

To be fair, we can also do that without source code

You can, but it's not the same.

With an open source programme:

* it's much easier to find & disable the DRM checks

* I can (legally) distribute a version with DRM disabled

* I can legally distribute a (probably small) patch that disabled the DRM, it's much easier for someone else to verify that my patch disabled the DRM, and doesn't have a trojan than if I give a binary diff.

* With open source programmes, I could submit my patched version (that disables the DRM) to a very freedom loving distro (like debian), and campaign for it's acceptance into the package index (making all Debian users not have DRM, etc.)

These things are technically possible with propriaty software, but you don't have the advantages above.