族谱网 头条 人物百科

逆向工程

2020-10-16
出处:族谱网
作者:阿族小谱
浏览:498
转发:0
评论:0
动机需要逆向工程的原因如下:接口设计。由于互操作性,逆向工程被用来找出系统之间的协作协议。军事或商业机密。窃取敌人或竞争对手的最新研究或产品原型。改善文档。当原有的文档有不充分处,又当系统被更新而原设计人员不在时,逆向工程被用来获取所需数据,以补充说明或了解系统的最新状态。软件升级或更新。出于功能、合规、安全等需求更改,逆向工程被用来了解现有或遗留软件系统,以评估更新或移植系统所需的工作。制造没有许可/未授权的副本。学术/学习目的。去除复制保护和伪装的登录权限。文件丢失:采取逆向工程的情况往往是在某一个特殊设备的文件已经丢失了(或者根本就没有),同时又找不到工程的负责人。完整的系统时常需要基于陈旧的系统上进行再设计,这就意味着想要集成原有的功能进行项目的唯一方法便是采用逆向工程的方法分析已有的碎片进行再设计。产品分析:用于调查产品的运作方式,部件构成,估计预算,识别潜在的侵权行为。应用机械...

动机

需要逆向工程的原因如下:

接口设计。由于互操作性,逆向工程被用来找出系统之间的协作协议。

军事或商业机密。窃取敌人或竞争对手的最新研究或产品原型。

改善文档。当原有的文档有不充分处,又当系统被更新而原设计人员不在时,逆向工程被用来获取所需数据,以补充说明或了解系统的最新状态。

软件升级或更新。出于功能、合规、安全等需求更改,逆向工程被用来了解现有或遗留软件系统,以评估更新或移植系统所需的工作。

制造没有许可/未授权的副本。

学术/学习目的。

去除复制保护和伪装的登录权限。

文件丢失:采取逆向工程的情况往往是在某一个特殊设备的文件已经丢失了(或者根本就没有),同时又找不到工程的负责人。完整的系统时常需要基于陈旧的系统上进行再设计,这就意味着想要集成原有的功能进行项目的唯一方法便是采用逆向工程的方法分析已有的碎片进行再设计。

产品分析:用于调查产品的运作方式,部件构成,估计预算,识别潜在的侵权行为。

应用

机械设备

随着计算机辅助设计的流行,逆向工程变成了一种能根据现有的物理部件通过CAD、CAM、CAE或其他软件构筑3D虚拟模型的方法。.逆向工程的过程采用了通过测量实际物体的尺寸并将其制作成3D模型的方法,真实的对象可以通过如CMMs,激光扫描仪,结构光源转换仪或者X射线断层成像这些3D扫描技术进行尺寸测量。这些测量数据通常被认作是点集,缺乏拓扑信息并且同时通常会被制作成更有用格式例如多边形网格,NURBS曲线或者CAD模型。由于顶点云本身并不像3D软件里的模型那样直观,所以如同3-matic、Imageware、PolyWorks、Rapidform或者Geomagic等这些软件都提供了将顶点云变成能可视图像,或者被其他应用软件如3D CAD、CAM、CAE识别的格式的功能。

反向工程同时会被需要将真实的几何体应用在虚拟的数字开发环境中的商业活动中应用,比如将自己产品或者竞争者的三维数据数字化。通过这种手段可以分析出产品的运作方式,部件构成,估计预算和识别潜在的侵权行为等。

价值工程也是商业中应用的类似手段。不过价值工程的目的是通过反构造和分析产品来找到节省开销的办法。

软件

由于“逆向工程”一词用在软件工程(简称“软工”)领域中的具体含义模糊不清,Chikofsky和Cross为此写了篇文章,以阐清及区分“逆向工程”与各种相近的概念。据文章所述,逆向工程是一种分析目标系统的过程,其目的是识别出系统的各个组件以及它们之间的关系,并以其它的形式或在较高的抽象层次上,重建系统的表征(Representations)。 软件逆向工程也可被视作“开发周期的逆行”。 在此定义下,对一项软件程序进行逆向工程,类似于逆行传统瀑布模型中的开发步骤,即把实现阶段的输出(即软件程序)还原回在设计阶段所做的构思。软件逆向工程仅仅是一种检测或分析的过程,它并不会更改目标系统(否则就成了软件再工程)。

软件防篡改技术被用于遏制对专有软件进行逆向工程及再工程。实际应用现了两类逆向工程。第一种,软件的源代码可用,但是更高层次的部分几乎没有描述文档或者描述文档不再适用或者丢失。第二种,软件没有可用的源代码,任何能找到它的源代码的努力都被称为逆向工程。大部分人都熟悉这个词的第二种用法。软件的逆向工程可以使用净室技术(Clean Room Design)来避免侵犯版权。

软工中的黑盒测试与逆向工程有很多共同点,但黑箱测试人员常供以API以作测试,并且测试的目的就是通过外部攻击,找出程序漏洞和未归档的特性。

逆向工程的其他目的包括:安全审查、 解除复制保护(又称破解)、绕过消费类电子产品中常设有的访问限制、定制嵌入式系统(例如引擎管理系统)、产品内部修补或更新、给功能不全的廉价硬件(例如某些显卡芯片组)添加额外功能,或仅为满足好奇心。

二进制软件

对最终程序的二进制代码所进行的逆向工程被称为“代码反向工程”,或简称RCE(Reverse Code Engineering)。例如,我们可以用Jad对Java平台的二进制码进行反编译。一个著名的逆向工程案例是,首个由非IBM公司所实现的IBM个人电脑(PC)中的BIOS,这开创了IBM PC兼容机产业,使得IBM PC兼容机成为多年来的主流计算机硬件平台。一个以软件逆向工程为乐的团体例子是CORE(Challenge Of Reverse Engineering,意为“挑战逆向工程”)。在美国,软件逆向工程只要遵守版权法的合理使用规定,都是受保护的。成功的软件逆向工程项目有:

Samba:一个允许非Windows系统与Windows系统共享文件的开源项目。由于微软没有公开Windows文件共享机制的信息,Samba必须作逆向工程,以便在非Windows系统上,仿真出同样的行为。

Wine:对Windows API做了同样的工作,

OpenOffice.org:对Microsoft Office文件格式作逆向工程。

ReactOS:竭力在ABI及API上,兼容NT系Windows系统,以便让为Windows所编写的软件和驱动程序可以在其上运行。

WindowsSCOPE:用来监测及分析Windows系统内存的实况内容。

二进制软件技术

软件逆向工程有多种实现方法,主要有三:

分析通过信息交换所得的观察。最常用于协议逆向工程,涉及使用总线分析器(英语:Bus analyzer)和数据包嗅探器。在接入计算机总线或网络的连接,并成功截取通信数据后,可以对总线或网络行为进行分析,以制造出拥有相同行为的通信实现。此法特别适用于设备驱动程序的逆向工程。有时,由硬件制造商特意所做的工具,如JTAG端口或各种调试工具,也有助于嵌入式系统的逆向工程。对于微软的Windows系统,受欢迎的底层调试器有SoftICE。

反汇编,即藉用反汇编器,把程序的原始机器码,翻译成较便于阅读理解的汇编代码。这适用于任何的计算机程序,对不熟悉机器码的人特别有用。流行的相关工具有Interactive Disassembler。

反编译,即藉用反编译器,尝试从程序的机器码或字节码,重现高级语言形式的源代码。

源代码

许多UML工具涉及到导入源代码生成UML图,即“逆向工程”。

集成电路和智能卡

分析智能卡的逆向工程具有侵入性和破坏性,智能卡被层层刮掉用电子显微镜拍照。这种技术可以完整地揭示出智能卡的硬件和软件部分。主要的问题就是,把所有的东西按正确的顺序放好以找出每一个部件是如何工作的。工程师们用打乱内存位置的方法隐藏密码和操作,例如busscrambling。有时甚至可以在智能卡运行的时候用探针直接测量电压,设计师则用感应器来检测和防止。破坏支付业务中使用的智能卡很困难,只有大芯片制造商使用那些专业的设备。况且,和其他安全机制例如阴影帐户相比,这种方法回报太低。

军事

逆向工程经常被用在军事上,用来复制从战场上由常规部队或情报活动获得的别国之技术、设备、信息或其零件。二战和冷战中经常被用到。二战以来的著名例子有:

便携油桶(英语:Jerrycan):英美军注意到德军有一种设计绝妙的油桶,于是就用逆向工程复制了这些桶。这些被泛称为“便携油桶”。

四式7.5公分高射炮: 日本从中国战场掳获的波佛斯75毫米口径M1929高射炮上的逆向工程,产生四式7.5公分高射炮并搭配日本的九八式六吨牵引车使用,拖弋速度可达时速45公里,并拥有快速放列的作战的能力。

图波列夫Tu-4: 三架飞往日本的B-29轰炸机迫降到了苏联。苏联没有类似的战略轰炸机,就决定复制B-29。几年后他们开发出了Tu-4,几近完美的复制品。

V2火箭:战争结束时V2的技术文档和相关技术被西方联盟俘获。苏联和被俘的德工程师要用俘获的构件重建技术文档和图纸,用于生产这种导弹的代件。R-1引导了战后苏联导弹画,一直到R-7,并导致了太空竞赛。

K-13/R-3S导弹(北约代号为AA-2 "Atoll)是苏联对AIM-9响尾蛇的逆向工程复制品。根据苏联公开的数据则是由坠毁在中国境内的美国海军战斗机残骸上获取。

BGM-71 TOW导弹:1975年三月,伊朗与休斯导弹系统公司的关于TOW和Maverick导弹合作的谈判因价格体系的分歧停止了,接下来的1979年革命结束了这种合作的所有计划。伊朗成功地对这种导弹进行逆向工程,目前正在生产他们自己的复制品:图芬(英语:Toophan)(Toophan)。

相关法律

在美国及其他许多国家,制品或制法都受商业秘密保护,只要合理地获取制品或制法就可以对其进行逆向工程。专利需要把你的发明公开发表,因此专利不需要逆向工程就可进行研究。逆向工程的一种动力就是确认竞争者的产品是否侵权专利或侵犯版权。

为了互用性(例如,支持未公开的文件格式或硬件外围),而对软件或硬件系统进行的逆向工程被认为是合法的,虽然专利持有者经常反对并试图以任何目的对他们产品进行的逆向工程。

为了获取一个有版权的计算机程序中隐含的思想和功能元素且有合法的理由要获取,当只有拆解这一种方法时,根据法律判定,拆解是对有版权作品的合理使用。


免责声明:以上内容版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。感谢每一位辛勤著写的作者,感谢每一位的分享。

——— 没有了 ———
编辑:阿族小谱
发表评论
写好了,提交
{{item.label}}
{{commentTotal}}条评论
{{item.userName}}
发布时间:{{item.time}}
{{item.content}}
回复
举报
点击加载更多
打赏作者
“感谢您的打赏,我会更努力的创作”
— 请选择您要打赏的金额 —
{{item.label}}
{{item.label}}
打赏成功!
“感谢您的打赏,我会更努力的创作”
返回

更多文章

更多精彩文章
打赏
私信

推荐阅读

· 逆向歧视
事例美国逆向歧视一词已在美国使用了数十年。多数涉及到自民主党政府在1960年代推动并通过的民权法案和平权法案,例如在公共教育及政府职位上,少数民族有一定的配额,而不是完全按照能力录取,籍此减少歧视及避免少数族群在就业和教育上受到不公平对待。但这造成部分白人及东亚裔感到受歧视,因为他们在很多大学需要取得比少数族裔较高成绩才能入读。1978年如加州大学对Bakke一案,白人学生AllanBakke于1973与1974年两度申请加州大学医学院被拒,遂而控告该校对少数族群特定配额的政策违反加州宪法,依此政策黑人及少数民族可以比白人较低的分数被取录。在此案中,审判庭指此一指定数量少数民族配额措施是违反美国宪法,但高等法院1978年最后判决,招生时不应考量种族因素而设数量配额,但种族列为加分标准则不判为违宪。哈佛教授RolandFryer指出以数量或者目的论来达到对少数族群之保障,两者其实并无分别。A
· 211工程
院校名单以下是国家级“211工程”建设的高校列表,名单按照省区排列。截至2009年1月5日,国家级211工程名单共有各类高校112所,其中普通院校109所、军事院校3所。211工程高校的设立、合并、升降、更名公示三所211学校的合并:武汉测绘科技大学、武汉水利电力大学并入武汉大学(2000年)。两所211学校的合并:北京医科大学并入北京大学(2000年);吉林工业大学并入吉林大学(2000年);华西医科大学并入四川大学(2000年);上海医科大学并入复旦大学(2000年);山东工业大学并入山东大学(2000年)。到目前为止尚未有两所985高校之间的合并。2005年9月,211工程部协发布《关于做好2005年“211工程”项目建设方案编制和论证审批工作的通知》(211部协办[2005]6号),并要求决定增补的院校编制建设方案及立项审核,同时有新闻称211工程增补12所大学。随即有新闻辟谣称增...
· 985工程
列表“985工程”重点建设的高校,共有39所(同时也都属于“211工程”院校):参见九校联盟(C9)-一流大学建设系列研讨会211工程高等学校创新能力提升计划(2011计划)迈向顶尖大学计划:台湾与985工程类似的计划德国大学卓越计划
· 老子的逆向思维法:反者道之动,弱者道之用
作者:张其成|来源:一元一国学网摘要:老子[注:老子,姓李名耳,字伯阳,有人说又称老聃。中国古代伟大哲学家和思想家、道家学派创始人,其被唐皇武后封为太上老君。世界文化名人,]的思维方式是一种反向、对待的思维方式:你居上,我就居下;你呈强,我就示弱;你华美,我就素朴。反者道之动,弱者道之用。天下万物生于有,有生于无。“反者道之动,弱者道之用。”这两句话是至理名言,是老子参透了宇宙人生之后的总结,是为人谋事的最高法则!“反者道之动”是说“道”的一种运动变化形式就是一个字——“反”。“反者道之动”就是“反动”啊,万事万物的规律都是“反动”的,反向运动、反复运动。“反”字有两个意思,第一个意思是返回、反复,同“返”;第二个意思是反对、相反。这两个意思,是同时具备的。先看第一个意思,大家想一想我们所看到的宇宙万物,它运动变化的规律是不是都是反复、回归--循环往复、周而复始的?比如说太阳今天早晨从东方...
· 品质工程
应用田口氏的品质工程在统计学及工程学上都有很大的贡献。田口氏强调社会损失、观测实验中变异的技术,及对于系统、参数及公差设计的策略都在各地的制造品质提升上有帮助。虽然品质工程中的一些统计方法是有争议的,但品质工程广为应用在各种制程则是没有争议的。找一下相关的期刊和网页,可以看出品质工程已成功的应用在许多的领域,包括VLSI设计、通讯及信息网络的最佳化设计、电子电路的设计、光罩的激光雕刻、银行的金流最佳化、政府的政策订定、机场跑道的利用率、甚至是稳健的环保设计。相关条目试验设计最佳设计(英语:Optimaldesign)正交阵列(英语:Orthogonalarray)品质管理反应曲面法六标准差几何尺寸和公差概率设计(英语:Probabilisticdesign)参考文献Atkinson,A.C.andDonev,A.N.andTobias,R.D..OptimumExperimentalDes...

关于我们

关注族谱网 微信公众号,每日及时查看相关推荐,订阅互动等。

APP下载

下载族谱APP 微信公众号,每日及时查看
扫一扫添加客服微信