Hacker News new | ask | show | jobs
Ask HN: Is it OK to reverse engineer a file format for interoperability?
11 points by chwind 4213 days ago
Thinking about writing an app that will share a market with a widely used but very expensive piece of software. That software has a proprietary XML-based file format that I'd love to be able to open and save to from my app. Is that legal? I've seen examples like Google Docs & OpenOffice opening Microsoft Office files, but I'm not sure if that's generally the case. I've heard it's prohibited in the EU; I'm in the US. Anybody know for sure?
4 comments

A legal professional qualified in your state with a specialism in copyright/patent/trademark/trade secret law will be able to advise you on that.

In practice, perhaps the question you ought to be asking is more like: "How pissed off are they going to be, and what are they going to do about it?". That will depend on what you're doing, to whom, and why. Aggravating factors may include, for example, if the files tend to contain copyrighted works you don't hold the copyrights to, or if the files are scrambled or crypted; sure they might use a ROT13 transform as their "encryption", but that doesn't mean they're not going to get the FBI to arrest you for getting up at a security convention and telling everyone that¹.

___

1. The Dmitry Sklyarov case, aka "one of the reasons reverse-engineers don't visit the United States". https://en.wikipedia.org/wiki/United_States_v._ElcomSoft_and...

Reverse engineering for interoperability is really quite common. I myself reverse engineered the Movie Magic Scheduling database format under contract to Graphical Planet in 1998. I had that on my resume until quite recently; no one ever gave me any grief over it.

However there are some specific legal requirements, as were detailed by the primary author of Samba, which enables one to mount and to serve Windows SMB/CIFS shares from *NIX systems. He covered those requirements at Advogato:

http://www.advogato.org/article/302.html

Note that the author advises that you buy a lices for that very expensive piece of software.

Just do it. If your app gets big enough, you've got their attention. Which means, you probably are on to something.