Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

Reverse engineering isn't copyright infringement. Distributing the reverse engineered source code is probably infringement however.


view as:

> Distributing the reverse engineered source code is probably infringement however.

Probably not if it actually reverse engineered (with a firewall) but that's not what they are doing (i.e. decompilation isn't' reverse engineering)


Decompilation is an essential (although not mandatory for some cases) part of reverse-engineering.

As for decompilation projects that have only reconstructed source code and no game media assets, it's probably fair use.


It’s an often used tool, sure , but for legal protection of reverse engg, your implementation side is firewalled from all of that.

It's not likely to be fair use to distribute, fwiw.


It is not fair use in itself: https://courses.cs.duke.edu/cps182s/fall02/cscopyright/Copyr...

  Decompiling object code produces an approximation of the original source code. Merely making this rough copy would usually violate the copyright holder's exclusive rights, even if the person who decompiled the code only used it as a preliminary step in making another work.
The only reason anyone believes this is fair use is because the copyright holders have chosen not to enforce it.

It is more likely to be fair use in this specific instance, as the copyrighted work to which the analysis is applied to is the whole game, not the code itself.

A big part of fair use analysis is in the effect on the market for the original work. If people have to obtain a copy to even use the project in any interactable way, the effect is either none (if we suppose every user of the project gets their original copy illegaly) or positive/benefitial to the copyright holder (if it makes those users actually buy legit copies)


The game is a copyrighted work, but so is the source code. The compiled code is a derivative work, and so is the decompiled code. Nintendo is not selling the source code, so arguing about sales in the market does not makes sense.

The fair use analysis is done on the work as a whole, the Zelda game that's registered on the Copyright Office. Not the code only.

Decompilation might be fine, but distributing the results isn't a part of reverse-engineering.

Fair use is limited scope. One of the first criteria is use. Fair use is generally reserved for education, criticism, comment, and news. At best you could say this is education, but even then one of the other criteria for fair use is the amount of the work published. If you're teaching or criticizing this code, the whole codebase is probably too much. Some snippets would be fine like you would see in code reviews or reviews of books and such.


https://www.legislation.gov.uk/ukpga/1988/48/section/50B

Says that its totally not legal to distribute decompiled code, or indeed:

> uses the information to create a program which is substantially similar in its expression to the program decompiled or to do any act restricted by copyright.

If it was legal, there would be loads of decompiled binaries floating around for windows, Adobe, autodesk and any number of other expensive bits of software.


Reverse engineering without consent _is_ copyright infringement. As in order to obtain a copy of the software you likely signed an EULA which will likely have the standard anti-reverse engineering verbiage which you'll be violating, therefore you are copying (whether for your personal enjoyment or not) the works of the author without permission.

There are a series of well documented exceptions... normally found in copyright law. (And this most definitely does not fall into one of them).


There is no limitation in copying the work of an author for personal enjoyment without permission. If I use my neurons to read and create an exact copy I can retell to myself, or I write it on pen and paper, or I type it on a personal computer, or I read it out loud, or read it out loud and record it for myself I don’t violate anything. Otherwise one would never be able to play copyrighted sheet music on a digital piano say. Reverse engineering might violate other agreements but not copyright law.

> There is no limitation in copying the work of an author for personal enjoyment without permission.

Actually there is in many jurisdictions of the world, including mine (France). There are some exceptions enshrined in copyright law, for which we actually pay a tax.

But this is besides the point. It's not even about the personal copies you make from your legally-obtained original copy on the first place. It's about where you obtained that initial copy from. Most definitely not legally from the author, if he is not authorizing RE.

> Reverse engineering might violate other agreements but not copyright law.

What other agreements does it violate? It is copyright law the only thing that puts a restriction between you and doing whatever the fsck you want with that code. There is a reason the RE exceptions are enshrined in copyright law...


You probably haven't signed anything if you bought the game on a physical medium.

> Reverse engineering without consent _is_ copyright infringement. As in order to obtain a copy of the software you likely signed an EULA which will likely have the standard anti-reverse engineering verbiage which you'll be violating

This reasoning is only valid in the US, this kind of anti reverse engineering clause has no value in the EU, reverse engineering is a predefined exception granted to copyright which cannot be voided.


I mention in the original comment that there are several exceptions (in copyright law), but these are for specific purposes. However this is not one of them. If it was, you could literally apply the same reasoning to any piece of software in the planet.

The specific purpose usually being interopability, yes it does apply to almost any piece of software on the planet.

More specifically, it's always allowed for DRM code (because by definition their whole goal is to block interoperability), any kind of proprietary file reading and any kind of porting.

Here in the case of these games, the interoperability argument is very easy to make since they can only run on legacy hardware not even produced anymore.


Ok, do you realize that from you what you claim you can conclude that (software) copyright is useless? Go to https://news.ycombinator.com/item?id=38410176

_Anyone_ could get any piece of software, claim that they want to run it on their new-fangled "x85" instruction set, and, according to your rationale, you'd be able to just decompile it to a different programming language and distribute your translation as much as you want!

> More specifically, it's always allowed for DRM code (because by definition their whole goal is to block interoperability), any kind of proprietary file reading and any kind of porting.

For the record, you are completely misunderstanding the point. These exception allows you to perform RE to _understand_ the code in question for interoperability, not to strip it from copyright and start distributing it as if it was your own code. And in most jurisdictions such exception only becomes possible when it's the _only option available_ to interoperate. As this is _hardly_ the only option available to run this game on your platform (emulation, for example, is completely legal, AND you could RE this title to fix your emulator), this exception hardly applies here.


> _Anyone_ could get any piece of software, claim that they want to run it on their new-fangled "x85" instruction set, and, according to your rationale, you'd be able to just decompile it to a different programming language and distribute your translation as much as you want!

Yeah, why not? If you have to run through all of this complexity to run the software you have to run, I don't see what it would not fit as an exception.

You realize that those protections against copyright aren't granted for free right? Everybody pays absurdly high rate of copy rights on every medium they buy in the EU and that's why those exceptions are there. If there is no means to copy what you own to use it in a different configuration, those would be meaningless.


> Yeah, why not? If you have to run through all of this complexity to run the software you have to run, I don't see what it would not fit as an exception.

What complexity? Emulators are almost everywhere, and they don't require you to violate any copyright (or a significantly smaller amount), and therefore much likely to fit under one of these exceptions (they do). "But the illegal way is easier, your honor!" doesn't really get you anywhere...

This world where software copyright does not exist is not an utopia of free source code, it's a wild wild west of obfuscated and/or inaccessible software and the company with largest pockets has the monopoly since it can do whatever it wants.

> You realize that those protections against copyright aren't granted for free right?

"Protections against copyright?" You mean exceptions, right? Copyright is ironically free.

> Everybody pays absurdly high rate of copy rights on every medium they buy in the EU and that's why those exceptions are ther

Not everybody in the EU, even though in my country (France) we do. However, how is this related at all to the discussion at hand? They are not even related to software copyrights at all! (For which there is already an exception for personal copies, and for which official we pay nothing).


> Not everybody in the EU, even though in my country (France) we do. However, how is this related at all to the discussion at hand? They are not even related to software copyrights at all! (For which there is already an exception for personal copies, and for which official we pay nothing).

That's exactly where this exception is coming from. You can't make personal copies nowaydays without breaking some kind of DRM and that's why there's an interoperability exception.

France is indeed one of the worst in this racket but most of the EU has similar implementations.

> This world where software copyright does not exist is not an utopia of free source code, it's a wild wild west of obfuscated and/or inaccessible software and the company with largest pockets has the monopoly since it can do whatever it wants.

Well that's exactly where we at now, I'm writing this comment from a phone which has thousands of piles of obfuscated inaccessible and non modifiable software. Copyright is what led us there.


> That's exactly where this exception is coming from. You can't make personal copies nowaydays without breaking some kind of DRM and that's why there's an interoperability exception.

I have already addressed the interoperability exception a couple messages before. In no way it just basically makes all copyright protections pointless by allowing you to claim "OK, now I can decompile this software and distribute it as I please!".

> Well that's exactly where we at now, I'm writing this comment from a phone which has thousands of piles of obfuscated inaccessible and non modifiable software. Copyright is what led us there.

Hardly. Copyright doesn't necessarily prevent nor make tivoization easier. The GPLv3 (or some new, specific legislation to this end) are the only things that would successfully prevent tivoitzation.


> In no way it just basically makes all copyright protections pointless by allowing you to claim "OK, now I can decompile this software and distribute it as I please!".

I've never claimed that but it also goes further than the conglomerates would make you believe.

> Hardly. Copyright doesn't necessarily prevent nor make tivoization easier. The GPLv3 (or some new, specific legislation to this end) are the only things that would successfully prevent tivoitzation.

While its true that open devices and software are possible under copyright laws, it's more of a hack and clearly not the default.

I don't know how you would call a law to force opening up the sources of software but it's incompatible with the copyright concept, that's for sure.


Legal | privacy