HN Simulatornew | past | comments | lists | submitlogin

Do you work for Apple?


Probably not. Clean room RE is serious business, projects like Dolphin have to carefully vet contributors to remain legal.


Everyone says this, and then exactly zero cases are cited in support of or against this creative legal theory known as "clean room RE."

No statute defines "clean room RE" and there's basically no relevant litigation establishing case law.


CA v. Altai (where the abstraction-filteration-comparison principle comes from) and SAS v. World provide pretty strong positive evidence that clean room is a valuable technique in both the US and Europe.

I do agree with you that the term is misused (it’s almost completely irrelevant here, anyway) and over-applied, but “not having ever been in a position to see or access the source code” is proven, especially in SAS v World, to be a pretty strong defense that’s worth pursuing in some re-implementation scenarios.


When you say "case" does that mean you're rejecting the evidence of Phoenix technologies not getting sued along with all the other BIOS clones?

Absence of evidence isn't evidence of absence. "Not getting sued" doesn't validate a legal theory - legal theories are validated in court where they become case law. Until then, they are plainly speculative.

This "clean room RE" fabrication is also not something so obviously compelling that nobody would ever attempt to challenge it - it's just that nobody has cared to put dollars behind it. IP provenance cases are enormously difficult to prove and are almost always settled ahead of trial. This concept is software engineer folklore more than anything.


Saying you won't believe it's effective at all until someone sues and loses isn't the most compelling argument. If nobody sues then yes that is some evidence of effectiveness. It's not an absence of evidence, you're misusing that line.

>No statute defines "clean room RE" and there's basically no relevant litigation establishing case law.

You seem confused here? "Clean Room RE" is simply a descriptive result of copyright law in the US, and is well established. In the US there is no "sweat of the brow doctrine", pure facts simply cannot be copyrighted at all, nor underlying methods/ideas (that's patents). And as a direct result of the latter, again unlike patents, if two people truly independently write the same thing, both get separate copyright.

"Clean room reverse engineering" is just applying that to make any legal fight much cheaper or discourage it from every being bothered with in the first place. You have an RE "dirty" team that goes through copyrighted software and makes a specification that is purely factual, ie, "function 1 takes (int16)X input and does equation ABC on it, function 2 takes (long)X & (long)Y inputs and does LMN" etc. A factual/math spec like that cannot be copyrighted, so it breaks any derivation chain. They then give that, and only that with no other communications, to the clean team. If someone with no other exposure to the software being RE'd uses that spec to write a new piece of software themselves, then by definition the result cannot have any copyright of the original. It's a brand new work based off a list of uncopyrightable facts & math/ideas (though worth noting it could still get tripped up by abomination that is software patents).

There are other ways to argue against copyright infringement successfully, but they're much more subjective, which legally speaking reads "expensive, uncertain". CRRE simply trades that for two clear binary questions: was the spec copyrightable, and did the people writing a new piece of software from that spec have any previous exposure to the original? If the answers to that are no, then all arguments about function names being similar or whatever are no longer relevant.

On the subject of LLMs, one curious twist is that proprietary software might have less effective protection then open source depending on how it all goes. A coding LLM almost certain trained on all open source software available on the web. So there's at least some argument it's tainted. But proprietary software is proprietary. If the LLM has never had any of the source code in its training input, then isn't it clean in terms of producing anything derivative of that? That'll be kinda interesting, and might leave some companies with a bit of a conundrum (or I guess pushing the patent side even harder, but that has a much more sane 20 year expiration date vs copyright).


It's a defense. It's like having a moat around your castle. You don't need a moat to repel invaders since you also have a wall, and you might not get invaded anyway.

There's no law saying you have to do clean room RE. It's legal for me to look at a decompiled driver and write my own driver from scratch. It's not legal for me to just copy the decompilation, and a clean room environment is solid proof that it wasn't copied, but it's not the only way to not copy it, since I could also just not copy it.


> It's a defense.

Who has used it successfully in litigation?


But there are plenty of successful projects which would probably have been taken down if it wasn't for clean room RE. I mean just look at the clean room IBM BIOS clones from "IBM compatibles" in the early days of the personal computer.


This is the same logic that the TSA uses to justify its existence. "We're so good nobody attempts it!"

The background level of software copyright legal actions is significant enough. If plane attacks happened that much then it would give us solid evidence of TSA effectiveness even if they never caught anyone directly.

Who volunteers to be the shmuck that fights Nintendo's lawyers in court? Who's funding the defense against Apple?

It's safest to err on the side of plausible deniability, any proximity to OEM software increases liability if things go wrong.


Nintendo doesn't care. There's been proprietary Nintendo SDK code in libogc (open source library for making GameCube homebrew) for years. And more recently the various decompilation process have made recreations of linked code from the SDK that compile match byte for byte. In practice the legal risk of being sued into oblivion for this is not there. If anything there would be a DMCA takedown / cease and desist.

Right, but they are one of the biggest DMCA abusers. They killed many fan projects. They killed game renting in Japan as a concept. They killed Yuzu (a Switch emulator). And they could change their mind at any time.

>They killed Yuzu (a Switch emulator).

For the record Yuzu included code for circumventing Nintendo's DRM they had on game carts. It violated the DMCA.


> For the record Yuzu included code for circumventing Nintendo's DRM they had on game carts. It violated the DMCA.

It doesn't, this is what Nintendo claimed but it's false. The community learned their lessons from the Wii emulation era and you are supposed to bring your own keys, nothing is included in the emulator.

And yes, they also wrote this lie on their DMCA takedown against Suyu (which also doesn't have any keys), so they officially lied on a DMCA takedown.


>you are supposed to bring your own keys

Just because you have to bring your own keys that doesn't make it not a circumvention measure.


There's no "circumvention mesure" in there, the emulator can only read unencrypted games by default. You won't find anything in the source code, if the game is encrypted, it cannot read it.

>You won't find anything in the source code

Here's the code that breaks the DRM.

https://github.com/Fabi/yuzu-mirror-mirror/blob/master/src/c...


I disagree, this doesn't break anything, even the comments tell you so. This code does nothing by default.

Also I may mention that the support of external keys is there for you to get games for your own switch, pirates can just share decrypted games anyways.


Do you not see the references to decryption and decryption keys? This code is explicitly written to break the DRM of switch carts. If you mean by default you mean they don't provide a key, that doesn't matter in regards to it being considered corcumvention.

No that matters. As is, the emulator cannot be used to circumvent nor break any protection. Feel free to try it yourself, boot up the emulator, give it an encrypted game and see what it does.

Nintendo didn't want to get in court and also had to basically lie in a DMCA, I think that tells it all on their legal standpoint, they were afraid of creating a precedent.

Don't worry that if they were so sure to win, they would be in court already like they did with the R4 cartridge.


yuzu also sold access to more recent builds which allowed people to play unreleased nintendo games early, afair

Which also isn't illegal

charging for it brings a whole lot more heat than not doing so

There's also been Wii games rereleased on PC with all debug symbols that cover the Wii parts that were still compiled in. You'd get mostly type names, enums, object layouts and function signatures that way.

there isn't ?? I sorta thought we figured all this out decades ago when SMB and DeCSS were being reversed? I think dosemu or something as well ?

I seem to recall DeCSS being the 'hot button' as it was RE'd in a 'non clean' way, the code released, and then a 'clean room' RE could be made from the 'public' info ??

edit: actually, at the time I think there was German law allowing RE for 'interoperablity' or some such. But that was a long time ago so my memory might be off.


> No statute defines "clean room RE" and there's basically no relevant litigation establishing case law.

It doesn't really make sense for it to be in a statute or in case law.

When you are a copyright infringement defendant the plaintiff has the burden of proving two things: (1) that they have valid and enforceable copyright rights, and (2) that you infringed those rights.

Direct proof of the later is rare, so they usually prove infringement by showing you had access to the work and that your alleged infringing work is substantially similar.

There are some defenses in the statute, such as fair use. With these defenses you are basically saying "Even if they prove everything that normally would prove they case, there is this exception that says in these circumstances I'm allowed to do that". (That's called an affirmative defense).

There are also affirmative defenses that were developed in case law. First sale doctrine was originally a case law developed affirmative defense, but was later incorporated in the statute. Copyright misuse is another case law affirmative defense. That one has not been incorporated into statute.

There are also non-affirmative defenses, often called negative defenses or failure-of-proof defenses. With these your defense it "They can't prove I did this thing that is necessary for them to win".

Clean room implementations are not technically a defense. They are a development methodology designed to provide rebuttal evidence to support a future failure-of-proof defense if you are accused of infringement.

How would you even put that in a statute? As far as case law goes all the case law you'd expect to see is around the particular evidence offered to show the implementers really did not have access to copyrighted elements of plaintiff's work, like record keeping and proof of authenticity and things like that.

An analogy would be like not having alcohol at an event you are hosting that is open to families because you want to make sure you don't violate laws against serving alcohol to minors. You aren't going to find a statute that says "Not having served alcohol to children is a defense to a charge violating the not serving alcohol to children statute". It is implicit in the not serving alcohol to children statute.

Any case law you find on this will not be about whether not serving alcohol to children is a valid way to avoid violating the not serving alcohol to children law. It will be about whether or not some kid that had alcohol got it from you or snuck it in from outside or about whether you took care to make sure your caterer adhered to you no alcohol policy or things like that.




Guidelines | FAQ | Lists | API | Security | DMCA | Apply to YC | Contact

Search: