Legality and license choice for reverse-engineered project I reverse engineered (by sniffing+x32dbg) part of the protocol for a board game client in order to build an alternative client on top of it while still using the official servers. I open-sourced the work so that others can contribute to it as well. I'm based in the EU and the product owners are based in China. Is this legal? And if so, what license is appropriate for it? Note: I'm not benefiting commercially from this work.
Check your license! By operating the original client, you might have agreed to a license, the EULA. Check that license for what it says about you being allowed to do with the product. In a recent case of Bungie vs. Elite Boss Tech, a US court found in a default judgment that a certain cheat software that would interact with both the game's client and the company's servers among other things did... constitute copyright infringement [as a derivative work] was a breach of contract [formed by the EULA and agreeing to the Terms of Service for the game] was interference with Contractual allegations [of other users that obtained the software] However, not all internet games or experiences are locked down like that. Other companies do offer an open API set or terms under which a client's software may be modified. As a very generous example, LindenLabs does for its SecondLife Virtual World, for which they provide not just the framework, but also the terms under which you are allowed to make a third party Viewer Sometimes, the Terms of service are rather hidden. For example, the Chinese Go platform Fox Weiqi operates in china. To get to the terms of service, you need to download the free client, go to Settings (via the cog), then choose 野狐围棋用户协议, which is Chinese for Wild Fox Go User Agreement. This links to https://edu.foxwq.com/complex/useragreement.html. The user agreement is of course in Chinese, but Google Translate manages to get that to English. It contains the following clause: 7.2 Unless permitted by law or with the written permission of Yehu, you shall not engage in the following acts during the use of this software: ( 1 ) Delete the copyright information on the software and its copies; ( 2 ) Reverse engineer, reverse assemble, reverse compile the software, or try to find the source code of the software in other ways; ( 6 ) Log in or use Yehu Go and its services through third-party software, plug-ins, plug-ins, systems not authorized by Yehu, or make, publish, and disseminate the above tools; ( 7 ) Interfering with the software and its components, modules, and data by itself or authorizing others or third-party software While it takes a court to see if the terms hold water and are actually enforceable because of how the EULA is offered, the face value of those clauses is, that it is forbidden unless you have a specific law that allows such or you obtain written permission. With that kind of possible liability that might cost millions, there might be serious legal problems. Read your license agreement and terms of service and consult a lawyer.
The legal issues are too black and white to have any meaningful impact on an ethics discussion. The IP belongs to A and B can't use it. A's not planning to build a product around the patent is irrelevant to the law and I do not see it bring up any ethical issue, but some people who do not understand patent law might. There might be ethics issues if A hired Josh with the specific plan to fire him as soon as the application was filed and intentionally misled him about these plans. Another issue might be Josh's duty to not disclose A's confidential information (the application does not become public right away), and Josh's duty to not draw B into developing an infringing product.
Your GPL example detracts from the question: see this recent answer. Setting aside GPL-specific conditions, the legal underpinning of software licensing is copyright law, whereby copying source code or an executable is only allowed with the permission of the copyright holder. There are two partial exceptions: "fair use" (generally not relevant to software), and a specific statutory permission to copy software in particular ways (making a backup, plus the act of executing software which requires copying from disk to memory). The latter permission only applies if you have legally acquired a copy of the software. Which explains why nobody sells copies of software, they sell a license to use software (a subtle, legalistic distinction, which is essential to modern software qua business). The terms of the license say what you may and may not do: if you violate the terms, you do not have permission to copy the software, and are liable for copyright infringement. One limit on the terms is that they cannot take away a right that you already have by copyright law (e.g. "fair use" cannot be negated by a license term). Another limit is that the terms have to be consistent with contract law, hence the license cannot include a human centipede obligation – or, "all your stuff belong to us". When a contract is ambiguous, the ambiguity is construed against the writer, and that is also so with software licenses. Also like the situation with contracts, the terms have to be legal, that is, cannot deny some right or requirement encoded in law. There is a legal requirement that disclaimers have to be "prominent", and that holds of license terms. As for "tricking" a person, that's not supposed to happen, with a proper license. If you put stuff out there and say nothing, nobody has been given permission to copy the item. You can make it available to a specific named person, but that is limited to one person, thus a license includes language allowing anyone to copy, but also requiring that the license be retained with any subsequent copies. Hence B copies from A, and sees the license; B may share with C (assuming a decent license) but must include that or substantially equivalent license; and so on. A problem arises if B redistributes without original license, substituting a bogus license. When C copies, that copying is not done with the permission (implied or express) of A, and C could be open to legal consequences. B is also clearly open to consequences, since re-distribution with the self-perpetuating license is a violation of the terms of A's condition grant of permission. Ignorance of the true ownership of copyright is no excuse, and there is no general innocent-infringement exception to copyright law in the US. However, the part of copyright law that talks about remedies for infringement, 17 USC 504(b)(2) lessens the burden on the innocent infringer: In a case where the infringer sustains the burden of proving, and the court finds, that such infringer was not aware and had no reason to believe that his or her acts constituted an infringement of copyright, the court in its discretion may reduce the award of statutory damages to a sum of not less than $200. Still, not zero. I don't see how adding some NOPs would make it impossible to prove that you have a copy of someone else's IP. Perhaps it's not a trivial, but still quite possible.
Yes and no. [note, the following is all written about US law. In other jurisdictions laws are, of course, different (though usually not drastically so.)] In the US there are (at least) three different bodies of law that might apply to code: copyright, patents, trade secrets. Copyright covers original expression. Anything you write is automatically, immediately protected under copyright. The copyright applies to the code itself, and anything "derived" from that code. It's up to the courts to decide exactly what "derived" means. One case that's long been viewed as a landmark in this area is Gates Rubber v. Bando Chemicals. The Court of Appeals for the tenth Circuit decision includes a section titled: "The Test for Determining Whether the Copyright of a Computer Program Has Been Infringed." Note that you can register a copyright, and that can be worthwhile, such as helping recover some damages you can't otherwise. Patents are quite different from copyrights. Where a copyright covers expression of an idea, a patent covers a specific invention. Rather than being awarded automatically, a patent has to be applied for, and awarded only after the patent office has determined that there's no relevant prior art to prevent it from being awarded. A patent, however, covers things like somebody else independently discovering/inventing what's covered by the patent. A trade secret could (at least theoretically) apply to some process or procedure embodied in the code. A trade secret mostly applies to a situation where (for example) you're trying to form an alliance with some other company, and in the process tell them things you don't tell the general public. If you've identified the fact that what you're telling them is a trade secret, and they then tell a competitor (or the general public, etc.) or more generally use that information in any way other than the originally intended purpose, it could constitute a trade secret violation. As a side-note: patents and copyright fall under federal law, so they're basically uniform nation-wide. Trade secrets mostly fall under state law, so the exact details vary by state. Absent a reason to believe otherwise, I'd guess your interest here is primarily in copyright infringement. The key here would be showing that one piece of code was derived from the other. That is, it specifically would not apply in a case where there were only a limited number of ways of doing something, so anybody who wanted to do that had to use one of those ways. Since this would not indicate actual derivation, it would not indicate copyright violation.
Legally, yes, if you get a license from Blizzard (unlikely, and if so, they'll probably want either money or a portion of your profits). Otherwise, not legally. This is exactly the situation that IP law (e.g. copyright and trademark) was created to address. Blizzard created the game and so they have rights to control and benefit from derivatives there of. There are some exceptions, but prints, buttons, and keychains are not likely to meet the requirements for those.
Yes So far so good. This is a copyright violation but it is probably fair use - certainly there is case law permitting a copy of a backup digital asset to be made so I don’t see why a similar argument wouldn’t work with backing up a physical book. Clear copyright violation. Alice can rent out the original under the first sale doctrine but the ‘backup’ is not so protected. It’s not fair use because it’s use is commercial, the work is a type of work the author expects to profit from, the entire work has been copied and the use is deleterious to the market i.e. the renters are less likely to buy an original - it falls foul of all four factors of the fair use test.
This is going to depend on several things. First of all, do you have a lawful, licensed copy of the SDK? My understanding is that Nintendo only licensed the SDK to selected game companies. If what you have is an unauthorized copy, you do not have the legal right even to use it. If what you have is properly licensed, then you do. Or is what you have an unofficial SDK created by someone other than Nintendo? Secondly, what does the license agreement that comes with the SDK provide? Does it require developers to register with Nintendo? If it does, you will need to comply. Nintendo cannot prevent others from writing programs designed to run on their hardware. But they can control who uses their development software, if they choose to. You cannot reproduce in your game any of Nintendo's copyrighted software (or anyone else's) without permission. That applies even more strongly if you intend to sell the software. But you can use any development software for which you have a valid license in whatever ways its license permits. I would expect this includes creating games. It would include selling games that you create that do not use any of Nintendo's code, unless there is a specific provision forbidding that in the license agreement.
I'm wondering whos responsible for this code if people start using it? The user. Can the people using it that think its under GPL in any way get in trouble for it or be made to remove it from their projects? Yes, they can be sued (successfully) for copyright violation. It’s not enough that you think you have permission from the copyright holder - you actually have to have permission. The law places the onus on the copier to seek out and get permission from the copyright holder. In theory, someone deceived in this way could sue the repo poster(s) for misrepresentation, however, there are practical issues about finding them, having them in an accessible jurisdiction and if they are judgement proof. Copyright law was created to protect physical books and paintings - it doesn’t really fit with digital methods of reproduction but it is the law. It doesn’t matter that complying with it can be hard bordering on impossible - comply with it you must.