Can I use illegally obtained code? There are some EULA which prohibit disassembly or reverse-engineering of its executables Now Joe in Somalia gets a hold if this software, disassembles it, and publishes the algorithm online. Bob in the United States gets a hold of this algorithm, re-implements it in his own software. Assuming there are no patents, did Bob do something illegal? Is this similar to a "fruit of the poisoned tree?"
Take a look at https://en.m.wikipedia.org/wiki/Clean_room_design From that it appears that you are just following the specifications of the algorithm made by a third party. You're not copying the algorithm, you are re-implementing it based on certain specifications you saw online. I would say unless you agree to some contract like you will not implement this, it should be legal. Furthermore, there is distinction between legality and breaching contracts. It is not illegal to breach a contract. You could just be sued for damages and injunctive relief. Failure to abide by a judicial order, such as an injunction is illegal. DISCLAIMER: I AM NOT A LAWYER. THIS IS NOT LEGAL ADVICE.
I'm not sure this would be a copyright violation. 17 USC 117 says: (a)Making of Additional Copy or Adaptation by Owner of Copy.—Notwithstanding the provisions of section 106, it is not an infringement for the owner of a copy of a computer program to make or authorize the making of another copy or adaptation of that computer program provided: (1) that such a new copy or adaptation is created as an essential step in the utilization of the computer program in conjunction with a machine and that it is used in no other manner... Due to the shutdown of the license server, it is impossible to use the program without an adaptation. It is therefore an "essential step in the utilization of the computer program", and not infringing, in my opinion.
What are exactly the legal consequences of "All rights reserved"? Almost none. You have to explicitly grant copyright rights. You don't even need the Copyright notice for them to apply. My "almost" is because the notice makes it harder for somebody to argue "they didn't realize". Do I still need an additional SW License Agreement or is the Copyright notice above + a Disclaimer of liability sufficient? If this is free software (I know you said it isn't), do yourself (and everyone else) a favour by picking a license you like. Preferably either GPL or MIT (depending on your taste). There are far too many free licenses already. Please don't add another. (It also makes it much easier for any user of your software: "Oh yeah, GPL v2. We understand that. We can use it." as opposed to "What are the implications of using this one??" As this is not free software, I think you need a paid-for lawyer (who understands IPR in your juridiction.) Edit: In principle, I believe you don't need anything. The code is copyright, so the customer can't do anything with it (without explicit permissions that you haven't granted). However if the customer doesn't realize that or thinks you won't mind, you then have to go to court to enforce your rights (and probably end up with a disgruntled customer). A short, clear, license will make it clear to the customer what they are allowed to do, and save all that aggravation.
TLDR: it's illegal to BUY it. It's illegal to USE it. Know your suppliers. That's certainly an interesting question, in light of how the market has changed in recent years, particularly due to Amazon/eBay, but even moreso due to Amazon Fulfillment and competitors. Over on diy.se, this is a constant vexation, because we see people buy crud like this all the time, and they need help installing it. And we find it's illegal to install, not even safe, and needs to be sent back in lieu of listed product. The advanced nations do have a highly effective apparatus for screening and blocking dangerous goods. However, these protections are geared toward bricks-and-mortar retail. Can you count on something bought at Wickes, Redoute or Home Depot? By and large, yes. Is it legal to export it to you? Yes, for all practical purposes. The people selling it are in an unreachable bastion in a foreign country that would not cooperate with their extradition, and would interfere with investigation. The government knows perfectly well that the stuff is complete crud, and doing so aligns with its national policies of raising hard currency and building industrial capacity, while harming the capacity of other nations. Is it legal for the item to be listed on Amazon or eBay? Amazon and eBay say &quot;Yes&quot;. Their position is that they are merely a platform which connects buyers and sellers. They surely have excellent lawyers. Amazon is more like eBay than you might realize. Amazon opened their retail site to third party sellers. Third parties can sign up as additional sellers of a particular SKU, or write their own product listings. Since Amazon's behavior has been unchallenged, the answer seems to be &quot;yes&quot;. Is it legal for Amazon to bring it into their warehousing systems? Amazon also opened their warehousing system to third party use. That can be for companies that don't sell on Amazon... or it can be for companies that do both Amazon and off-Amazon sales; in the latter case you order elsewhere but Amazon fulfills (ships) the item. When a company both sells the item on Amazon and it ships from an Amazon warehouse, it qualifies for &quot;Prime&quot; shipping where Amazon offers that. Amazon also offers &quot;Commingling&quot; for established SKUs. The idea is that if you have widgets in the Madrid warehouse, and I have widgets in a Warsaw warehouse... and a Madrid customer buys mine - why not ship them yours since they are all the same? I get credit for the sale and Amazon &quot;owes you one&quot;. When you get a sale in Madrid, Amazon has one in Barcelona so they ship that one to your customer. Commingling is great, but what happens when I inject a pallet full of those SKUs - and they're counterfeits? Amazon doesn't know the difference, and your Warsaw customer gets my counterfeit. So do Amazon's Berlin and Wroclaw customers. Amazon ships them around the network to balance the warehouses, and now my counterfeit has contaminated the supply. I'm sitting in China. Whatcha gonna do about it? Again, Amazon has top lawyers, who have surely done their diligence. Still, the program is ambitious, and e-commerce giants break the law all the time with their ambitions. In the US, there's the &quot;Express Shipment&quot; rule, which allows small orders ($800 or less) with no duty and an informal entry process. So they ship to Mexican warehouses, and then bring the items over by the truckload. Wait, how can a truckload be less than $800? Because they don't bring it over until there's an end-user customer order, and they argue &quot;these are for individual customers&quot;. This qualifies them to breeze through customs, bypassing the quality and safety controls that prevent Home Depot from doing the exact same thing with a truckload that hasn't found customers yet. Is it legal for you (as the end consumer) to import it? No. The rules for Conformité Européenne are that the importer is responsible. When you as an end customer buy mail-order from China, you are the importer. Under EU law, if you bring a CE-marked item into the EU, you are responsible for meeting the CE design standards, and doing in-house lab testing to affirm the performance of the product. By having the CE mark on the thing you imported, you are attesting to having done that. Further, the various nations may require that a certified independent testing lab verify your testing and claims. This was historically done by national testing labs like BSI, TUV, CSA or UL. However by treaty they are largely cross-recognized: US OSHA keeps a canonical list of &quot;Nationally (by USA) Recognized Testing Labs&quot; (NRTLs) that every other agency and many other countries defer to. Big Clive is probably fine, since Clive's purpose is public ridicule, not usage. Is it legal for you to install it in your house? Oh, heck no. Every nation has rules as to what certifications equipment must meet to legally be installed in a building's electrical system. For instance North America's El NEC, widely adopted or copied, has 110.2: 110.2 Approval. The conductors [wires] and equipment required or permitted by this Code shall be acceptable only if approved. &quot;Approved&quot; means by competent testing labs; i.e. OSHA's list of NRTLs. So no, you can't install non-approved equipment in any jurisdiction with a similar rule (and you pretty much need such a rule for inspections to have any teeth).
Affirmative authority that this particular use (incorporation of the format of another program's textual data files into your own program) is protected is somewhat elusive in the US system; however there's a lot of observable evidence that reverse engineering data file formats without a license is widespread. My sense is that this would be analyzed under the same rubric as other kinds of reverse engineering and/or fair use. I'm sure there are others here who are better able to clearly and concisely explain that law than I am. However there may be limits — it seems Microsoft was able to prevent VirtualDub's use of the ASF format by patenting it. That said, it's hard to see how an unencrypted, unencoded ASCII data file file could be patentable (i.e. where the ASCII strings are the data, generated in response to user input, and the format is just their order and separators, etc). For the European arena, there is recent authority in SAS Institute Inc v World Programming Limited that the format of a program's data files are not protected by copyright when reverse engineered without the source code. The following is from the digest and application of the CJEUs decision by the English court that referred it, in its subsequent judgment: The judgment of the CJEU On 29 November 2011 Advocate General Bot delivered his Opinion on the questions referred... Questions 1-5 The Court dealt with these questions together. It interpreted this court as asking "in essence, whether Article 1(2) of [the Software Directive] must be interpreted as meaning that the functionality of a computer program and the programming language and the format of data files used in a computer program in order to exploit certain of its functions constitute a form of expression of that program and may, as such, be protected by copyright in computer programs for the purposes of that directive": see [29]. Having referred to recital (14), Article 1(1) and 1(2) of the Software Directive, Article 2 of the WIPO Copyright Treaty and Articles 9(2) and 10(1) of TRIPS, the Court went on: ... 39. [...] it must be stated that, with regard to the elements of a computer program which are the subject of Questions 1–5, neither the functionality of a computer program nor the programming language and the format of data files used in a computer program in order to exploit certain of its functions constitute a form of expression of that program for the purposes of Article 1(2) of Directive 91/250. 40. As the Advocate General states in point 57 of his Opinion, to accept that the functionality of a computer program can be protected by copyright would amount to making it possible to monopolise ideas, to the detriment of technological progress and industrial development. 41. Moreover, point 3.7 of the explanatory memorandum to the Proposal for Directive 91/250 [COM(88) 816] states that the main advantage of protecting computer programs by copyright is that such protection covers only the individual expression of the work and thus leaves other authors the desired latitude to create similar or even identical programs provided that they refrain from copying. 42. With respect to the programming language and the format of data files used in a computer program to interpret and execute application programs written by users and to read and write data in a specific format of data files, these are elements of that program by means of which users exploit certain functions of that program. 43. In that context, it should be made clear that, if a third party were to procure the part of the source code or the object code relating to the programming language or to the format of data files used in a computer program, and if that party were to create, with the aid of that code, similar elements in its own computer program, that conduct would be liable to constitute partial reproduction within the meaning of Article 4(a) of Directive 91/250. 44. As is, however, apparent from the order for reference, WPL did not have access to the source code of SAS Institute's program and did not carry out any decompilation of the object code of that program. By means of observing, studying and testing the behaviour of SAS Institute's program, WPL reproduced the functionality of that program by using the same programming language and the same format of data files. 45. The Court also points out that the finding made in paragraph 39 of the present judgment cannot affect the possibility that the SAS language and the format of SAS Institute's data files might be protected, as works, by copyright under Directive 2001/29 if they are their author's own intellectual creation (see Bezpecnostní softwarová asociace, paragraphs 44 to 46). 46. Consequently, the answer to Questions 1–5 is that Article 1(2) of Directive 91/250 must be interpreted as meaning that neither the functionality of a computer program nor the programming language and the format of data files used in a computer program in order to exploit certain of its functions constitute a form of expression of that program and, as such, are not protected by copyright in computer programs for the purposes of that directive." Regarding the idea that the user has rights to access their output of a program held in a proprietary data file format there is some additional discussion in the that might be helpful in paragraphs 48 - 62 (of the CJEU opinion), discussing the right of a licensee to 'study and observe' the 'underlying' 'ideas and principles' of a program to accomplish 'acts of loading and running necessary for the use of the computer program.'
My understanding is that here "derived from the program" means "created by modifying the source code of the program" and not "created by running the program". Certainly that is the way all users that I have heard of treat the matter. Note that a commercial program, such as a word processor, will be fully protected by copyright, but the maker does not claim to have any rights over documents written using it. "Derived" here seems pretty clearly to mean "derivative work" in the sense in which that term is used in copyright law. In copyright law "derived work" is a term of art with a definition specific to that field.
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.
There are a few ways that this could be illegal, but barring those, there is nothing per se illegal in doing what you describe. It could be a TOS/contact/licence violation to sniff the traffic: Use third-party software that intercepts, collects, reads, or "mines" information generated or stored by the Battle.net Client or the Game(s) The protocol could be protected by patent. (U.S. Patent 5,883,893) The use of the reverse engineered protocol could be illegal (fraudulently connecting to a company's server while posing as an authorized client).