逆向工程被廣泛地應(yīng)用到新產(chǎn)品開(kāi)發(fā)和產(chǎn)品改型設(shè)計(jì)、產(chǎn)品仿制、質(zhì)量分析檢測(cè)等領(lǐng)域,它的作用是:
1、縮短產(chǎn)品的設(shè)計(jì)、開(kāi)發(fā)周期,加快產(chǎn)品的更新?lián)Q代速度;
2、降低企業(yè)開(kāi)發(fā)新產(chǎn)品的成本與風(fēng)險(xiǎn);
3、加快產(chǎn)品的造型和系列化的設(shè)計(jì);
4、適合單件、小批量的零件制造,特別是模具的制造,可分為直接制模與間接制模法。直接制模法:基于RP技術(shù)的快速直接制模法是將模具CAD的結(jié)果由RP系統(tǒng)直接制造成型。該法既不需用RP系統(tǒng)制作樣件,也不依賴傳統(tǒng)的模具制造工藝,對(duì)金屬模具制造而言尤為快捷,是一種極具開(kāi)發(fā)前景的制模方法;間接制模法:間接制模法是利用RP技術(shù)制造產(chǎn)品零件原型,以原型作為母模、模芯或制模工具(研磨模),再與傳統(tǒng)的制模工藝相結(jié)合,制造出所需模具。
軟件逆向工程有多種實(shí)現(xiàn)方法,主要有三:
1.分析通過(guò)信息交換所得的觀察。
最常用于協(xié)議逆向工程,涉及使用總線分析器和數(shù)據(jù)包嗅探器。在接入計(jì)算機(jī)總線或網(wǎng)絡(luò)的連接,并成功截取通信數(shù)據(jù)后,可以對(duì)總線或網(wǎng)絡(luò)行為進(jìn)行分析,以制造出擁有相同行為的通信實(shí)現(xiàn)。此法特別適用于設(shè)備驅(qū)動(dòng)程序的逆向工程。有時(shí),由硬件制造商特意所做的工具,如JTAG端口或各種調(diào)試工具,也有助于嵌入式系統(tǒng)的逆向工程。對(duì)于微軟的Windows系統(tǒng),受歡迎的底層調(diào)試器有SoftICE。
2.反匯編,即使用反匯編器,把程序的原始機(jī)器碼,翻譯成較便于閱讀理解的匯編代碼。這適用于任何的計(jì)算機(jī)程序,對(duì)不熟悉機(jī)器碼的人特別有用。流行的相關(guān)工具有OllyDebug和IDA。
3.反編譯,即使用反編譯器,嘗試從程序的機(jī)器碼或字節(jié)碼,重現(xiàn)高級(jí)語(yǔ)言形式的源代碼。