Annals of Software Engineering

, Volume 9, Issue 1–4, pp 337–351 | Cite as

The legal status of reverse engineering of computer software

  • Cristina Cifuentes
  • Anne Fitzgerald


Reverse engineering of computer software has assumed greater importance in recent years because of the need to examine legacy code to remove the year 2000 bug. There are different types of reverse engineering based on the level of abstraction of the code to be reengineered; machine code, assembly code, source code or even CASE code. We describe the different types of reverse engineering and the extent of copyright protection for software. The most common uses of reverse engineering are described. This provides for a comparative overview of the legal standing on reverse engineering at the international level. We propose challenges to the global electronic community in relation to existing and future legislation in the area of reverse engineering and protection of digital works.


Legal Status Reverse Engineering Copyright Protection World Intellectual Property Organ Assembly Code 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. A. Schulman, D.M., R. Brown, and R. Michels (1993), Undocumented DOS: A Programmer's Guide to Reserved MS-DOS Functions and Data Structures.Google Scholar
  2. Arnold, R. (1993), Software Reengineering, IEEE Computer Society Press, Los Alamitos, CA.Google Scholar
  3. Behrens, B. and R. Levary (1998), "Practical Legal Aspects of Software Reverse Engineering," Communications of the ACM 41, 2, 27-29.CrossRefGoogle Scholar
  4. Blaha, M. (1998), "On Reverse Engineering of Vendor Databases," In Proceedings of the 5th Working Conference on Reverse Engineering, IEEE Computer Society, Honolulu, USA, pp. 183-190.Google Scholar
  5. Cert (1999), "CERT Advisory CA-99-04-Melissa-Macro-Virus," advisories/CA-99-04-Melissa-Macro-Virus.htm.Google Scholar
  6. Chikofsky, E. and J. Cross (1990), "Reverse Engineering and Design Recovery: A Taxonomy," IEEE Software 7, 13-17.Google Scholar
  7. Cifuentes, C. and A. Fitzgerald (1997), "Copyright in Shareware Software Distributed on the Internet-The TrumpetWinsock Case," In Proceedings of the International Conference on Software Engineering, ACM Press, Boston, USA, pp. 456-464.Google Scholar
  8. Copyright Law Review Committee (1995), Computer Software Protection: Final Report, Office of Legal Information and Publishing, Canberra.Google Scholar
  9. European Council Directive (1991), "European Council, Directive on the Legal Protection of Computer Programs (14 May 1991)," 01/250/EEC, 1991, O.J. L122, May 17, 1992.Google Scholar
  10. Freeman, L. (1997), Don't Let Missing Source Code Stall Your Year 2000 Project, Year 2000 Survival Guide.Google Scholar
  11. Harrison, J., P. Bailes, A. Berglas, and I. Peake (1995), "Re-engineering 4GL-based Information System Applications," In Proceedings of the Asia Pacific Software Engineering Conference, IEEE-CS Press, Brisbane, Australia, pp. 448-457.Google Scholar
  12. Harrison, J. and W. Lim (1998), "Automated Reverse Engineering of Legacy 4GL Information Systems Applications using the ITOC Workbench," In Proceedings of the 10th International Conference on Advanced Information System Engineering, Springer Verlag, Pisa, Italy, pp. 41-58.Google Scholar
  13. Hoffman, T. (1997), "Recovery Firm Hot on Heels of Missing Source Code," Computer World.Google Scholar
  14. Hookway, R. and M. Herdeg (1997), "Digital FX!32: Combining Emulation and Binary Translation," Digital Technical Journal 9, 1, 3-12.Google Scholar
  15. Hotmail (1998), "Hotmail Corporation v Van Money Pie Inc," C98-20064 (N.D. Cal., April 20 1998).Google Scholar
  16. Livingston, B. and D. Straub (1997), Windows 95 Secrets, 4th Edition, IDG Books Worldwide.Google Scholar
  17. Livingston, B. and D. Straub (1998), Windows 98 Secrets, IDG Books Worldwide.Google Scholar
  18. May, C. (1987), "MIMIC: A Fast System/370 Simulator," In Proceedings SIGPLAN'87 Symposium on Interpreters and Interpretive Techniques, pp. 1-13.Google Scholar
  19. Nichols, K. (1998), Inventing Software-The Rise of "Computer-Related" Patents, Quorum Books, Westport, CT.Google Scholar
  20. ProCD (1997), "ProCD Inc v Zeidenberg and Silken Mountain Web Services Inc," 86 F.3d 1447 (7th Cir.).Google Scholar
  21. Reasoning Systems (1992), Refine User's Guide, Palo Alto, CA.Google Scholar
  22. Sega (1992), "Sega Enterprises Ltd v Acccolade Inc," 977 F.2d 1510 (9th Circ.1992).Google Scholar
  23. Sites, R., A. Chernoff, M. Kirk, M. Marks, and S. Robinson (1992), "Binary Translation," Digital Technical Journal 4, 4, 1-16.Google Scholar
  24. Sommerville, I. (1996), Software Engineering, 5th Edition, Addison-Wesley, Reading, MA.Google Scholar
  25. Swartz, H. (1984), "The Case for Reverse Engineering," Business Computer Systems 3, 12, 22-25.Google Scholar
  26. Thompson, T. (1996), "An Alpha in PC Clothing," Byte, 195-196.Google Scholar
  27. TRIPS (1993), "Agreement on Trade-Related Aspects of Intellectual Property Rights." Trumpet (1996), "Trumpet Software Pty Ltd v OzEmail Pty Ltd," 34 IRP 481.Google Scholar
  28. World Intellectual Property Organization (1996), "WIPO Copyright Treaty," eng/diplconf/distrib/94dc.htm.Google Scholar

Copyright information

© Kluwer Academic Publishers 2000

Authors and Affiliations

  • Cristina Cifuentes
    • 1
  • Anne Fitzgerald
    • 2
  1. 1.Department of Computer Science and Electrical EngineeringThe University of QueenslandBrisbane QldAustralia E-mail:
  2. 2.Software Engineering AustraliaBrisbane QldAustralia E-mail:

Personalised recommendations