Live data from Hacker News

Skype protocol reverse engineered, source available

skype-open-source.blogspot.com

41–50 of 145 posts

Re: Skype protocol reverse engineered, source available

#41

Earlier quoted context omitted.

I think that claim would be better off if rephrased as "my aim is to make a skype compatible open source software"

That still doesn't mitigate the need for lawyers. The protocol is still intellectual property, and reverse engineering it may not be without consequences.

IANAL, but might the DMCA exemption on reverse engineering for program-to-program interoperability possibly apply in the US?[1]

Of course I have NFI what country the skype-open-source poster is in. FWIW the blog host (blogspot) is obviously in the US, the depositfiles.com file host has DNS registered in Seychelles but seemingly resolves to a US server...

[1] http://www.chillingeffects.org/reverse/faq.cgi#QID210

Re: Skype protocol reverse engineered, source available

#43
aside from the awesome technical exersize in hacking, i don't see this as any net benefit for VOIP.

the time would have been much better spent working on the GNU VOIP client, not only would improvements have been usable without legal issues, they would be there in an (ostensibly, perhaps) understandable format - working code.

Re: Skype protocol reverse engineered, source available

#44
I wouldn't venture to say this doesn't belong on HN since it really is interesting (if it was actually done correctly), but the files available for download are most likely illegal, were most likely created with pirated tools (IDA Pro/Hex-Rays, and yes, as a customer of theirs for over a dozen years I've reported it), and of course, the usual vilification of reverse engineering.

If you're reading this on a desktop or laptop system (rather than a phone), then you are most likely using an "IBM PC Compatible" even if you're using an Intel based Apple, and hence, you're using the fruits of completely legal reverse engineering.

The way to do reverse engineering legally is to have one team reverse engineer the target and completely document how it works. Once it's documented, another disconnected team writes a new implementation from the documentation. This process is how you're using an IBM PC Compatible today, so yes, reverse engineering for compatibility is perfectly legal.

If there is a patented algorithm required, it's not a sure thing. There are most likely compatible ways around the patent, but there's also the fact that the patent is only valid in the US. With open source hosted in some other country, who are you going to sue? The users in the US? --Nope, users are the ones paying for skype.

You might say, "But we forbid reverse engineering in our license!!!"

Contract clauses forbidding reverse engineering are invalid in many countries and jurisdictions, and of course, you also have to prove the other party agreed to the contract/license. With this said, it's very easy to create a international jurisdictional nightmare to render any such contract clause tactically impossible to enforce.

The easiest way to think about this is security research. The folks finding and reporting exploitable flaws in software are obviously reverse engineering it. Occasionally companies have tried to legally go after people who have published security research on their products, but usually this ends very badly for the company. Additionally, doing security research is protected use in some countries and jurisdictions.

In short, competition is good for markets, and competing by studying and mimicking the competition is both normal and legal.

For the "rights" advocates out there, there are legal problems with the three file downloads available:

1.) According to the first file name, the original binaries are being redistributed which may be (and usually is) against the license terms and default rights granted by copyrights.

2.) The IDA Pro database (most likely) contains the entire target binary, so you do have (illegal) redistribution of a copyrighted work. You can load only parts of a target binary into IDA, but that doesn't matter since it is still a portion of the original work. As for whether or not said portion could fall under fair use is debatable (i.e. lawsuit). In general usage, the entire binary is loaded, since without it, you're limited to static analysis (i.e. no debugging).

3.) Decompilation, and to a lesser degree disassembly, are equivalent to "machine translation" in the sense of copyright. Creating a translation is considered creating a "derivative work" and unless you have been given rights to create derivative works, then you're in trouble. One of the comments here on HN claims the "source code" file is the output of the Hex-Rays Decompiler.

I've never used skype and I've never read their license so I don't know if they specifically allow redistribution.

I have no love for skype or microsoft, but if this had been done CORRECTLY by releasing written documentation so an entirely new implementation could be written, then I'd have no problem with it. There are right ways and wrong ways to legally create compatible (open source) software through reverse engineering, and this is a perfect example of the wrong way.

Re: Skype protocol reverse engineered, source available

#45
post #44

I wouldn't venture to say this doesn't belong on HN since it really is interesting (if it was actually done correctly), but the files available for download are most likely illegal, were most likely created with pirated tools (IDA Pro/Hex-Rays, and yes, as a customer of theirs for over a dozen years I've reported it), and of course, the usual vilification of reverse engineering. If you're reading this on a desktop or…

HN is an internationally read site. Things that are illegal in some countries are not illegal in others. As responsible citizens, it is up to the individual to not engage in illegal activities in the region said individual is in.

Re: Skype protocol reverse engineered, source available

#46
post #44

I wouldn't venture to say this doesn't belong on HN since it really is interesting (if it was actually done correctly), but the files available for download are most likely illegal, were most likely created with pirated tools (IDA Pro/Hex-Rays, and yes, as a customer of theirs for over a dozen years I've reported it), and of course, the usual vilification of reverse engineering. If you're reading this on a desktop or…

HN is an internationally read site. Things that are illegal in some countries are not illegal in others. As responsible citizens, it is up to the individual to not engage in illegal activities in the region said individual is in.

I think you misread my statement. I should have been more clear, but if you read it again, you'll see I agree with you. It is interesting and belongs here.

Re: Skype protocol reverse engineered, source available

#48
post #39
post #34

Earlier quoted context omitted.

What about if a developer were to now download the source code available here? Could they, in theory, develop with it as they've never attempted to reverse engineer it themselves? By using ToS, you're limiting enforcement to the people who do the RE, rather than an implementation, surely?

Actually, no. If you look at those files, you're "tainted" and can't be the one who writes a new implementation. The correct way to do reverse engineering for compatibility is to have to completely separate teams. The first does the reverse engineering and writes the specification/documentation. The second completely separate teams takes the specs/docs and writes an entirely new implementation. This is the process us…

Of course that was not the way the "IBM PC Compatible" market arose. IBM published a rather complete set of documentation of the system, including all interface signals and the BIOS source code. I still have several of those documents on my shelf. It is completely different from the complete lack of Skype technical documents.

Re: Skype protocol reverse engineered, source available

#49
post #41

Earlier quoted context omitted.

That still doesn't mitigate the need for lawyers. The protocol is still intellectual property, and reverse engineering it may not be without consequences.

IANAL, but might the DMCA exemption on reverse engineering for program-to-program interoperability possibly apply in the US?[1] Of course I have NFI what country the skype-open-source poster is in. FWIW the blog host (blogspot) is obviously in the US, the depositfiles.com file host has DNS registered in Seychelles but seemingly resolves to a US server... [1] http://www.chillingeffects.org/reverse/faq.cgi#QID210

(Follow up: JCR's comment seems to make it clear that's what is being distributed here doesn't constitute reverse engineering in the legal sense. I hadn't actually looked at the files. Ah well.)

Re: Skype protocol reverse engineered, source available

#50
post #44

I wouldn't venture to say this doesn't belong on HN since it really is interesting (if it was actually done correctly), but the files available for download are most likely illegal, were most likely created with pirated tools (IDA Pro/Hex-Rays, and yes, as a customer of theirs for over a dozen years I've reported it), and of course, the usual vilification of reverse engineering. If you're reading this on a desktop or…

You are mentioning Compaq BIOS. Think Samba though.

Even OOo/LO .doc support is based on 1-2 FTE revEngs (which btw is dumped mfc/w32 memory on a FAT, but read Sun/IBM anyway).

The team will write a public spec, print it out on paper, and another team Down and Under will scan it and create new code (think RSA patent export). The skype protocol has long been reverse engineered and is available to several parties.

Post reply on HN