Live data from Hacker News

Skypeopensource2 – Skype client based on reversing Skype 5.5

github.com

91–100 of 125 posts

Re: Skypeopensource2 – Skype client based on reversing Skype 5.5

#91
post #82

Earlier quoted context omitted.

The issue here is this appears likely to have been created by disassembly rather than pure study of behavior. Is that legal in Europe?

Disassembly by a team that results in new code written by the same team is not legal in any country that enforces copyrights. That includes the EU. Possibly excludes Russia and probably excludes China unless the owner is a large Chinese company. In fact I'd be surprised if this code isn't taken off GitHub by a DCMA from Microsoft, as soon as it hits their lawyers' radars.

> Disassembly by a team that results in new code written by the same team is not legal in any country that enforces copyrights.

It's not illegal in itself. But you are easily opening yourself up to claims that the code you have written has been "tainted" by the disassembled code you have read and has therefore become a derivative work, which is going to be very to defend hard against.

Also note that even if it is decided that you have made a derivative work you might still successfully launch a fair use defense on the grounds on interoperability, see e.g. Sega v. Accolade[1].

That said, doing a proper clean-room reverse engineering with two teams kept separate is a much safer approach.

[1]: https://en.wikipedia.org/wiki/Sega_v._Accolade

Re: Skypeopensource2 – Skype client based on reversing Skype 5.5

#92
post #29

Earlier quoted context omitted.

Reversing in the first place is almost certainly illegal if you were to check the Skype ToS. Making a profit off it is just asking for trouble. I could be wrong though.

I suppose it depends on where you are. IIRC some countries explicitly allow reverse engineering for interoperability. Which is arguably the case here. (Side note: That any kind of reversing is illegal anywhere at all is by itself a testament of the sad state most legislatures are in.)

Reverse engineering yes, straight reusing of the reversed code (as the code author did in some cases, by his own admission) no.

You can't take a piece of someone's code, decompile it, use it in your own project and then claim you own a copyright on it.

Re: Skypeopensource2 – Skype client based on reversing Skype 5.5

#93
post #61

Earlier quoted context omitted.

If I used this in a commercial product, it would be trivial (absolutely trivial) for the owner of the original product to take me to court for illegal distribution of their copyrighted works, based on the argument that the code I was distributing (for profit!) was written by someone who (by own admission in public) had reverse-engineered the original product. IANAL but I'd be willing to bet money on this. The only qu…

As long as you didn't use any of the original Skype code, you have nothing to fear (if you're based in Europe)

> As long as you didn't use any of the original Skype code, you have nothing to fear (if you're based in Europe)

The original Skype code is clearly not available to anyone outside the original Skype team or some team inside Microsoft. What is publicly available is a binary that is produced from this code.

Re: Skypeopensource2 – Skype client based on reversing Skype 5.5

#94

Earlier quoted context omitted.

The issue here is this appears likely to have been created by disassembly rather than pure study of behavior. Is that legal in Europe?

Probably. No DMCA here.

Directive 2009/24/EC has very similar implications, however.

Re: Skypeopensource2 – Skype client based on reversing Skype 5.5

#95
post #88
post #86

Earlier quoted context omitted.

What are you saying here, that you are good at skirting the law without breaking it, that all takedown claims are bogus, or that your lawyer is so good one letter can chase away even determined legal action by deep pocketed firms? Only the first one makes sense, and it has no relevance to the project we're discussing, so it's unclear why you say it. No disrespect, just trying to understand your point here.

> No disrespect, just trying to understand your point here. To me the point is pretty clear: Copyright law is also used for chilling effects on recalcitrant projects.

Indeed. Copyright law is more often than not abused (instead of used) by large companies. If you are careful + understand the law and what you're doing, 99% of claims turn out to be bullshit.

Re: Skypeopensource2 – Skype client based on reversing Skype 5.5

#97
post #89
post #57

Earlier quoted context omitted.

As I said, people use copyright law to take other people to court, and then get money from them. Your "fuck copyright" statement is bold, and one I'd generally agree with, unfortunately it has zero relevance to the legal risks a business would take, using this code in a commercial product, in such a country.

As the author said, the files violating copyright are easy to replace. Let Skype ask for it, it will be 2 more days of work. The reason why people want to see a clean room implementation is because they are afraid of patent and anticipate US-like silliness like Oracle claiming copyright on an API. Now that this is a very US-specific issue. If you don't plan to market to US, you can just ignore the issue. I used to wo…

Patents are another issue. Doesn't specifically affect this project.

And clean-room implementations have no effect on patent violations or claims. None at all. It is entirely a copyright issue. And the issue here is that the same person who disassembled one codebase then wrote a new, equivalent codebase. Thus the new work is a derived work, or at least a lawyer can argue that easily, and thus distributing it for profit is a serious crime. Not even a civil offense, in any EU country. Criminal.

Re: Skypeopensource2 – Skype client based on reversing Skype 5.5

#98
post #59

Earlier quoted context omitted.

One team documents the protocol as a spec. A second team takes the spec and writes implementations. The advantage of this for open source is that when the protocol changes, it's relatively simple for that first team to update the spec, and safe for the second team to update their code. This is legal and safe. It is how the first clone PCs survived even IBM's lawyers.

> One team documents the protocol as a spec. A second team takes the spec and writes implementations. How is the first team compensated? or am I missing something? >This is legal and safe. It is how the first clone PCs survived even IBM's lawyers. Very interesting. Does anyone have a link to a write up on this? or at least have a place to start looking for info on it?

> Does anyone have a link to a write up on this?

Here was a little insight:

https://nakedsecurity.sophos.com/2011/06/03/skype-protocol-c...

Re: Skypeopensource2 – Skype client based on reversing Skype 5.5

#99
post #65
post #8

I haven't spent much time browsing through the source but the code quality and security is pretty dismal so far. Not to mention the confusing project structure. Magic numbers, ... and strings, all over the place [0]. Memory leak galore (debug code?) [1]. Probably buffer overflows all over the place, here's one I noticed [2]. I suspect others given the proliferation of opaque pointers and memcpy usage. [0] https://git…

To me this project looks like really a just reversed and mostly functional one and this is the quality of said projects, I've been there. He has disassembled, transcribed to a C project almost as-is and made it compile. The developer may not have enough development experience to organize it decently or just rushed it online because of anxiety. Anyway, very good resource for others if there still any interest at all a…

Old patched binaries and .idb are on his onion: http://gzscxpillagce2gf.onion/

Re: Skypeopensource2 – Skype client based on reversing Skype 5.5

#100
As a reminder: https://github.com/mumble-voip/mumble

https://en.wikipedia.org/wiki/Mumble_(software)

I'm surprised the gaming chat programs don't get more crossover use. Well, I'm not surprised that a commercial project has a larger userbase than something that requires you to find a server.

But I am surprised when, say, podcast hosts make jokes about lag or call quality on their Skype connections with guests. There are other applications that solve some of these problems, and I'd think if your main creative product relies on call quality for guests, you might look a few steps beneath the most ubiquitous option. (ie, If you're at the level where you're buying an uncommon specialist's mic, you could probably benefit from comparison shopping for voip implementations.)

Post reply on HN