Forgot your password?
typodupeerror

Comment Re:Bots vs. anti-virus (Score 1) 639

Exactly. Another case study of this would be the NTFS filesystem drivers for Linux. Unlike the Windows API, both the NTFS binary specification and the NTFS filesystem algorithms do not have official public documentation. Yet there are multiple NTFS drivers for Linux. The developers of these drivers had to observe an NTFS partition, and even profile and trace the actions of programs on the binary state of the filesystem, and developed their own specs of what they thought NTFS did. This is a rather remarkable feat of reverse engineering that Microsoft cannot legally do anything about.


The PC BIOS case is probably the textbook example of reverse engineering done correctly. The main place where reverse engineering can fail is in copyright violations of the implementations. Developing and publishing the specification - which is the hardest part! - is completely legal. However, if you take anything from the original implementation and use it in the new implementation, the new implementation is considered a derived work and cannot legally be distributed without violating copyright. There are some gray areas where things can be problematic, particularly if source code was visible to anyone doing the reverse engineering, so the safest route is to follow "clean room" procedures as described by the parent. Strictly speaking, that shouldn't be necessary, but it is used to ensure that there can be no question that your implementation is legal.


As I mentioned in my previous post, patents can throw a monkey wrench into things though. Patented algorithms are still patented even if you develop your own completely independent implementation. This is why the GIF image format, despite having a well-known specification, could not legally be reverse engineered until recently because it depended on a patented algorithm.

Slashdot Top Deals

If it has syntax, it isn't user friendly.

Working...