返回介绍

1.6 反编译的用途

发布于 2025-03-09 23:09:32 字数 537 浏览 0 评论 0 收藏 0

反编译是计算机专业人士的一个工具。反编译主要应用在两个领域:软件维护与安全性。在前一个领域,反编译被用来恢复丢失的或者无法获取的源程序代码,将一个使用过时语言编写的代码翻译成更新的语言,将一个以非结构化方式编写的旧程序(即,层次代码) 变成一个结构化程序,将应用程序移植到一个新的硬件平台,以及调试已知有缺陷但是源代码不可得的二进制程序。在后一领域,反编译在软件关键的系统中被用来验证一个编译器产生的目标代码,因为在这些系统中我们不能绝对信赖编译器,另外,反编译也被用来检查是否存在恶意代码比如病毒。

1.6.1 法律方面

关于反编译的合法性问题去年已经被提出来了。反编译支持者和反对者之间的争论目前正在进行,支持方主张反编译工具的使用有利于公平竞争,反对方主张反编译侵犯了版权。各个不同国家正在修改法律以确定在哪些情况下反编译是法律许可的。目前,商业软件的销售随同软件协议书禁止用户反汇编或反编译其产品。例如,Lotus 软件协议部分这样写道:

你不可以使用任何方式包括反汇编或反编译来改变、合并、修改或者改编这个软件。

探讨反编译的合法性相关问题不是本论文的目的。本论文不对该主题做更进一步讨论。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文