

Ask HN: Is it OK to reverse engineer a file format for interoperability? - chwind

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&#x27;d love to be able to open and save to from my app. Is that legal? I&#x27;ve seen examples like Google Docs &amp; OpenOffice opening Microsoft Office files, but I&#x27;m not sure if that&#x27;s generally the case. I&#x27;ve heard it&#x27;s prohibited in the EU; I&#x27;m in the US. Anybody know for sure?
======
AlyssaRowan
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...](https://en.wikipedia.org/wiki/United_States_v._ElcomSoft_and_Sklyarov)

------
MichaelCrawford
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](http://www.advogato.org/article/302.html)

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

------
angersock
[http://en.wikipedia.org/wiki/Clean_room_design](http://en.wikipedia.org/wiki/Clean_room_design)

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

