逆向工程

编辑
本词条由“匿名用户” 建档。

逆向工程(也称为逆向工程或反向工程)是一种过程或方法,人们试图通过演绎推理来理解先前制造的设备、过程、系统或软件如何以很少的(如果有的话)完成任务深入了解它是如何做到的。它本质上是打开或剖析系统以查看其工作原理的过程,以便复制或增强它。根据所考虑的系统和采用的技术,在逆向工程中获得的知识可以帮助重新利用过时的对象、进行安全分析或了解某些东西的工作原理。 尽管该过程特定于执行它的对象,但所有逆向工程...

目录

逆向工程

编辑

逆向工程(也称为逆向工程或反向工程)是一种过程或方法,人们试图通过演绎推理来理解先前制造的设备、过程、系统软件如何以很少的(如果有的话)完成任务 深入了解它是如何做到的。 它本质上是打开或剖析系统以查看其工作原理的过程,以便复制或增强它。 根据所考虑的系统和采用的技术,在逆向工程中获得的知识可以帮助重新利用过时的对象、进行安全分析或了解某些东西的工作原理。

尽管该过程特定于执行它的对象,但所有逆向工程过程都包含三个基本步骤:信息提取、建模和审查。 信息提取是指收集执行操作的所有相关信息的做法。 建模是指将收集到的信息组合成一个抽象模型的做法,可以作为设计新对象或系统的指南。 审查是指对模型进行测试,以确保所选摘要的有效性。 逆向工程适用于计算机工程、机械工程、设计、电子工程、软件工程、化学工程系统生物学等领域。

概览

编辑

在各个领域进行逆向工程的原因有很多。 逆向工程起源于对商业或军事优势的硬件分析。 然而,逆向工程过程本身并不关心创建副本或以某种方式更改工件。 它只是一种分析,可以从产品中推断出设计特征,而对产品的原始生产过程所涉及的程序知之甚少或一无所知。

在某些情况下,逆向工程过程的目标可能只是遗留系统的重新文档化。 即使逆向工程产品是竞争对手的产品,目标也可能不是复制它,而是进行竞争对手分析。 逆向工程也可用于创建可互操作的产品,尽管美国和欧盟制定了一些狭义的立法,但二十多年来,为该目的使用特定逆向工程技术的合法性一直在世界各地的法庭上激烈争论。

软件逆向工程可以帮助提高对底层源代码的理解,以维护和改进软件,可以提取相关信息以做出软件开发决策,代码的图形表示可以提供有关源代码的替代视图, 这有助于检测和修复软件错误或漏洞。 通常,随着一些软件的开发,它的设计信息和改进经常会随着时间的推移而丢失,但是丢失的信息通常可以通过逆向工程来恢复。 该过程还有助于减少理解源代码所需的时间,从而降低软件开发的总体成本。 逆向工程还可以帮助检测和消除使用更好的代码检测器写入软件的恶意代码。 逆向源代码可用于查找源代码的其他用途,例如检测源代码在不打算使用的地方未经授权的复制,或揭示竞争对手的产品是如何构建的。 该过程通常用于破解软件和媒体以取消其复制保护,或创建可能改进的副本甚至仿冒品,这通常是竞争对手或黑客的目标。

恶意软件开发人员经常使用逆向工程技术来查找操作系统中的漏洞,以构建可以利用系统漏洞的计算机病毒。 逆向工程也被用于密码分析,以发现替代密码、对称密钥算法或公钥密码学中的漏洞。

反向工程

逆向工程还有其他用途:

  • 接口。 当一个系统需要与另一个系统接口并且两个系统将如何协商有待建立时,可以使用逆向工程。 此类要求通常是为了实现互操作性。
  • 军事或商业间谍活动。 通过窃取或捕获原型并将其拆解来了解敌人或竞争对手的最新研究,可能会导致类似产品的开发或更好的对策。
  • 过时。 集成电路通常是在专有系统上设计并建立在生产线上的,这些产品在短短几年内就会过时。 当使用这些部件的系统由于不再制造而无法再维护时,将功能合并到新技术中的xxx方法是对现有芯片进行逆向工程,然后利用获得的理解使用更新的工具重新设计它 指引。 另一个过时的起源

内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/195014/

(3)
词条目录
  1. 逆向工程
  2. 概览

轻触这里

关闭目录

目录