導航:首頁 > 源碼編譯 > 反編譯逆向工程

反編譯逆向工程

發布時間:2022-06-18 02:18:54

① 我想報考軟體逆向工程和反編譯方向的研究生,但不知道哪個專業比較合適,請問有推薦的學校和專業嗎

據我所知,上海大學的軟體工程研究生招生共分7個方向,其中包括軟體逆向工程方向。

② .NET反編譯,逆向工程 反編譯 求助、、、

以前反編譯過C++,C#你說的這個軟體只能看到代碼,不能還原項目,找到好的告訴我一聲呀

③ 我想知道逆向編程與反匯編的區別

反匯編就是把機器語言轉為匯編語言代碼,正常來講是用來做DEBUG的,不過現在基本上都是指破解、漢化、和某種目的的「學習」源代碼……

至於你說的逆向編程嘛,其實就是程序的逆向工程,一般程序設計時是由模型先分析再設計然後編碼,而逆向設計就是從代碼入手,以還原數據模型等內容,通俗來講,這個過程就是仿造,個人認為最好理解的例子就是山寨產品就是逆向工程的代表作……

你看到別人寫的某個程序能夠做出某種漂亮的動畫效果,你通過反匯編、反編譯和動態跟蹤等方法,分析出其動畫效果的實現過程,這種行為就是逆向工程

而且不光軟體,很多硬體設計也是通過逆向工程來做產品設計的,比如某公司生產的滑鼠為例,就其功能而言,只需要有三個按鍵就可以滿足使用需要,但是,怎樣才能讓滑鼠的手感最好,而且經過長時間使用也不易產生疲勞感?

因此該公司首先根據人體工程學製作了幾個模型並交給使用者評估,然後根據評估意見對模型直接進行修改,直至修改到大家都滿意為止,最後再將模型數據利用逆向工程軟體生成 CAD 數據,然後就是市面上的人體工程學滑鼠了

④ 反編譯和反匯編有什麼區別

有一定區別~
一般編譯型語言的程序叫反編譯~
解釋型語言的程序叫反匯編~
用IDA的一個插件可以做到反匯編一些程序的到源代碼的~

⑤ 什麼叫做反編譯啊

反編譯
計算機軟體反向工程(Reversepengineering)也稱為計算機軟體還原工程,是指通過對他人軟體的目標程序(可執行程序)進行「逆向分析、研究」工作,以推導出他人的軟體產品所使用的思路、原理、結構、演算法、處理過程、運行方法等設計要素,作為自己開發軟體時的參考,或者直接用於自己的軟體產品中。

⑥ 什麼是逆向工程什麼是反編譯可以根據已經封裝好的程序軟體進行破解分析出源代碼嗎

逆向工程就是根據已有的程序來反推出源代碼以及原來的工程設置,反編譯就是具體的將已經編譯好的程序進行反向工程,從而獲取部分源代碼。一般來說,逆向工程或者反編譯是無法百分之百獲得源代碼的,只能從一定程度上來自源代碼進行猜測,因此根據已經封裝好的程序軟體來進行破解分析出源代碼的可能性並不大,逆向工程的意義並不在於破解源代碼,而是在於了解軟體本身的設計,對於復雜的程序軟體而言破解源代碼的可能性幾乎為零。

⑦ 逆向工程是怎麼實現的能舉例嗎

逆向工程(又名反向工程,Reverse Engineering-RE)是對產品設計過程的一種描述。在2007年初,我國相關的法律為逆向工程正名,承認了逆向技術用於學習研究的合法性。
在工程技術人員的一般概念中,產品設計過程是一個從設計到產品的過程,即設計人員首先在大腦中構思產品的外形、性能和大致的技術參數等,然後在詳細設計階段完成各類數據模型,最終將這個模型轉入到研發流程中,完成產品的整個設計研發周期。這樣的產品設計過程我們稱為「正向設計」過程。逆向工程產品設計可以認為是一個從產品到設計的過程。簡單地說,逆向工程產品設計就是根據已經存在的產品,反向推出產品設計數據(包括各類設計圖或數據模型)的過程。從這個意義上說,逆向工程在工業設計中的應用已經很久了。比如早期的船舶工業中常用的船體放樣設計就是逆向工程的很好實例。
隨著計算機技術在各個領域的廣泛應用,特別是軟體開發技術的迅猛發展,基於某個軟體,以反匯編閱讀源碼的方式去推斷其數據結構、體系結構和程序設計信息成為軟體逆向工程技術關注的主要對象。軟體逆向技術的目的是用來研究和學習先進的技術,特別是當手裡沒有合適的文檔資料,而你又很需要實現某個軟體的功能的時候。也正因為這樣,很多軟體為了壟斷技術,在軟體安裝之前,要求用戶同意不去逆向研究。
逆向工程的實施過程是多領域、多學科的協同過程。

⑧ 反匯編與逆向編程的區別

反匯編只是按將010二進制碼這樣的目標碼分析解釋成Assembler ,所以我們叫DisAssembler,當然這與教科書上的匯編語言是不同的,這是由編譯器優化生成的目標代碼,而反匯編只是將通過如intel 指令手冊就可以將之轉換出來,而逆向編程是在反匯編的基礎上,然後分析他的邏輯,從而用高級語言或是流式語言進行二次編程,比較常見的,就是使用嵌入asm(c語言),再則因為匯編的條件啥的其實基本都在goto,所以你用老一套的跟,只到你跟出自己的思路來了,那就真的就是逆向編程了,不過現在多是以上兩種,當然高手我就沒資格評論了.

⑨ 什麼是逆向工程

逆向工程,有的人也叫反求工程,英文是reverse engineering。
逆向工程(reverse engineering)大意是根據已有的東西和結果,通過分析來推導出具體的實現方法。比如你看到別人寫的某個exe程序能夠做出某種漂亮的動畫效果,你通過反匯編、反編譯和動態跟蹤等方法,分析出其動畫效果的實現過程,這種行為就是逆向工程;不僅僅是反編譯,而且還要推倒出設計,並且文檔化,逆向軟體工程的目的是使軟體得以維護。
1980年始歐美國家許多學校及工業界開始注意逆向工程這塊領域。1990年初期包括台灣在內,各國學術界團隊大量投入逆向工程的研究並發表成果。
逆向工程的硬體最早是運用仿製加工設備,製作出來的成品品質粗糙。後來有接觸式掃瞄設備,運用探針接觸工件取得產品外型。再來進一步開發非接觸式設備,運用照相或激光技術,計算光線反射回來的時間取得距離。
逆向工程軟體部分品牌包括Surfacer(Imageware)、ICEM、CopyCAD、Rapid Form等。逆向軟體的演進約略可區分為三個階段。十一年前在逆向工程上,只能運用CATIA等CAD/CAM高階曲面系統。市場後來發展出兩套主流產品約在七、八年前技術成熟,廣為業界引用。到最近四年來,發展出不同以往的逆向工程數學邏輯運算,速度快。
逆向工程在台灣的發展軌跡持續在進行,工研院曾寫過一套逆向工程軟體,學術界不少研究團隊也將逆向工程領域作為研究主題,開發出具不同功能的系統軟體,但是最後這些軟體都沒有真正落實到產業界應用。工研院的團隊後來也結束逆向工程研究,轉而開發其它主題。原有的研發成果後繼無人,殊為可惜。
1998年,NEWPOWER啟動了逆向工程的一些項目,要求是把客戶的現有源代碼轉變成設計, 如果需要的話,進一步轉化成產品需求規約。這恰恰與類似於V模型的標准開發過程模型相逆。這樣一來,客戶就可以容易地維護他們的產品(需求,設計,源代碼等等),而不需要想以前那樣,每次改動產品都需要直接修改源代碼。
是指從實物上採集大量的三維坐標點,並由此建立該物體的幾何模型,進而開發出同類產品的先進技術。逆向工程與一般的設計製造過程相反,是先有實物後有模型。仿形加工就是一種典型的逆向工程應用。目前,逆向工程,逆向工程的應用已從單純的技巧性手工操作,發展到採用先進的計算機及測量設備,進行設計、分析、製造等活動,如獲取修模後的模具形狀、分析實物模型、基於現有產品的創新設計、快速仿形製造等。
通俗說,從某種意義上說,逆向工程就是仿造。這里的前提是默認我們傳統的設計製造為「正向工程(當然,沒有這種說法)」。
軟體的逆向工程是分析程序,力圖在比源代碼更高抽象層次上建立程序的表示過程,逆向工程是設計的恢復過程。逆向工程工具可以從已存在的程序中抽取數據結構、體系結構和程序設計信息。
四大逆向工程軟體簡介
Imageware
Imageware 由美國 EDS 公司出品,是最著名的逆向工程軟體,正被廣泛應用於汽車、航空、航天、消費家電、模具、計算機零部件等設計與製造領域。該軟體擁有廣大的用戶群,國外有 BMW、Boeing、GM、Chrysler、Ford、raytheon、Toyota 等著名國際大公司,國內則有上海大眾、上海交大、上海 DELPHI、成都飛機製造公司等大企業。
以前該軟體主要被應用於航空航天和汽車工業,因為這兩個領域對空氣動力學性能要求很高,在產品開發的開始階段就要認真考慮空氣動力性。常規的設計流程首先根據工業造型需要設計出結構,製作出油泥模型之後將其送到風洞實驗室去測量空氣動力學性能,然後再根據實驗結果對模型進行反復修改直到獲得滿意結果為止,如此所得到的最終油泥模型才是符合需要的模型。如何將油泥模型的外形精確地輸入計算機成為電子模型,這就需要採用逆向工程軟體。首先利用三坐標測量儀器測出模型表面點陣數據,然後利用逆向工程軟體(例如:Imageware surfacer)進行處理即可獲得 class 1 曲面。
隨著科學技術的進步和消費水平的不斷提高,其它許多行業也開始紛紛採用逆向工程軟體進行產品設計。以微軟公司生產的滑鼠器為例,就其功能而言,只需要有三個按鍵就可以滿足使用需要,但是,怎樣才能讓滑鼠器的手感最好,而且經過長時間使用也不易產生疲勞感卻是生產廠商需要認真考慮的問題。因此微軟公司首先根據人體工程學製作了幾個模型並交給使用者評估,然後根據評估意見對模型直接進行修改,直至修改到大家都滿意為止,最後再將模型數據利用逆向工程軟體 Imageware 生成 CAD 數據。當產品推向市場後,由於外觀新穎、曲線流暢,再加上手感也很好,符合人體工程學原理,因而迅速獲得用戶的廣泛認可,產品的市場佔有率大幅度上升。
Imageware 逆向工程軟體的主要產品有:
Surfacer——逆向工程工具和 class 1 曲面生成工具
Verdict——對測量數據和CAD數據進行對比評估
Build it——提供實時測量能力,驗證產品的製造性
RPM——生成快速成型數據
View——功能與 Verdict 相似,主要用於提供三維報告
Imageware 採用 NURB 技術,軟體功能強大,易於應用。Imageware 對硬體要求不高,可運行於各種平台:UNIX 工作站、PC 機均可,操作系統可以是 UNIX、NT、Windows95 及其它平台。
Imageware 由於在逆向工程方面具有技術先進性,產品一經推出就佔領了很大市場分額,軟體收益正以 47% 的年速率快速增長。
Surfacer 是 Imageware 的主要產品,主要用來做逆向工程,它處理數據的流程遵循點——曲線——曲面原則,流程簡單清晰,軟體易於使用。其流程如下:
一、點過程
讀入點陣數據。
Surfacer 可以接收幾乎所有的三坐標測量數據,此外還可以接收其它格式,例如:STL、VDA 等。
將分離的點陣對齊在一起(如果需要)。
有時候由於零件形狀復雜,一次掃描無法獲得全部的數據,或是零件較大無法一次掃描完成,這就需要移動或旋轉零件,這樣會得到很多單獨的點陣。Surfacer 可以利用諸如圓柱面、球面、平面等特殊的點信息將點陣准確對齊。
對點陣進行判斷,去除噪音點(即測量誤差點)。
由於受到測量工具及測量方式的限制,有時會出現一些噪音點,Surfacer 有很多工具來對點陣進行判斷並去掉噪音點,以保證結果的准確性。
通過可視化點陣觀察和判斷,規劃如何創建曲面。
一個零件,是由很多單獨的曲面構成,對於每一個曲面,可根據特性判斷用用什麼方式來構成。例如,如果曲面可以直接由點的網格生成,就可以考慮直接採用這一片點陣;如果曲面需要採用多段曲線蒙皮,就可以考慮截取點的分段。提前作出規劃可以避免以後走彎路。
根據需要創建點的網格或點的分段。
Surfacer 能提供很多種生成點的網格和點的分段工具,這些工具使用起來靈活方便,還可以一次生成多個點的分段。
二、曲線創建過程
判斷和決定生成哪種類型的曲線。
曲線可以是精確通過點陣的、也可以是很光順的(捕捉點陣代表的曲線主要形狀),或介於兩者之間。
創建曲線。
根據需要創建曲線,可以改變控制點的數目來調整曲線。控制點增多則形狀吻合度好,控制點減少則曲線較為光順。
診斷和修改曲線。
可以通過曲線的曲率來判斷曲線的光順性,可以檢查曲線與點陣的吻合性,還可以改變曲線與其它曲線的連續性(連接、相切、曲率連續)。Surfacer 提供很多工具來調整和修改曲線。
三、曲面創建過程
決定生成那種曲面。
同曲線一樣,可以考慮生成更准確的曲面、更光順的曲面(例如 class 1 曲面),或兩者兼顧,可根據產品設計需要來決定。
創建曲面。
創建曲面的方法很多,可以用點陣直接生成曲面(Fit free form),可以用曲線通過蒙皮、掃掠、四個邊界線等方法生成曲面,也可以結合點陣和曲線的信息來創建曲面。還可以通過其它例如園角、過橋面等生成曲面。
診斷和修改曲面。
比較曲面與點陣的吻合程度,檢查曲面的光順性及與其它曲面的連續性,同時可以進行修改,例如可以讓曲面與點陣對齊,可以調整曲面的控制點讓曲面更光順,或對曲面進行重構等處理。
英國 Triumph Motorcycles 有限公司的設計工程師 Chris Chatburn 說:「利用 Surfacer 我們可以在更短的時間內完成更多的設計循環次數,這樣可以讓我們減少 50% 的設計時間。」
最新發布的 Surfacer 10.6 軟體將以下工作流程的高性能工具完整的集成到一起:
[彈性的曲面創建工具]:可以在一個彈性的設計環境里非常方便的直接從曲線、曲面、或測量數據創建曲面,支持貝茨爾(Bezier)和非均勻有理 B 樣條(NURBS)曲面兩種方法。用戶可以選擇適合的曲面方法,通過結合兩種方法的優點來獲益。
[動態的曲面修改工具]:允許用戶在交互的方式下試探設計主題,立刻就可以看到是否美觀和思路是否符合工程觀念。設計、工程分析、製造的標准都通過精心的構造過程考慮進去,所以當每次修改曲面時不需要再重新校核標准。
[實時的曲面診斷工具]:可以提供諸如任意截面的連續性、曲面反射線情況、高亮度線、光譜圖、曲率雲圖和園柱型光源照射下的反光圖等多種方法,在設計的任何時候都可以查出曲面缺陷。
[有效的曲面連續性管理工具]:在復雜的曲面縫補等情況下,即使曲面進行了移動修改等操作,也能保證曲面同與之相連的曲面間的曲率連續,避免了乏味的手工再調整過程。
[強大的處理掃描數據能力]:根據 Rainbow 圖法(相當於假設雨水從上面落下,由於形狀差異導致雨水流速差異)、曲率大小變化雲圖法(對於一個完全光順的 class 1 曲面,相當於曲率大小變化為零,對於兩個不同曲面,此值會不同)將掃描數據分開,這樣可以很快地捕捉產品的主要特徵,並迅速建立各個相應曲面,避免了費事的分析和處理。
正是由於 Imageware 在計算機輔助曲面檢查、曲面造型及快速樣件等方面具有其它軟體無可匹敵的強大功能,使它當之無愧的成為逆向工程領域的領導者。
Geomagic Studio
由美國 Raindrop (雨滴)公司出品的逆向工程和三維檢測軟體 Geomagic Studio 可輕易地從掃描所得的點雲數據創建出完美的多邊形模型和網格,並可自動轉換為 NURBS 曲面。該軟體也是除了 Imageware 以外應用最為廣泛的逆向工程軟體。
Geomagic Studio 主要包括 Qualify、Shape、Wrap、Decimate、Capture 五個模塊。主要功能包括:
自動將點雲數據轉換為多邊形(Polygons)
快速減少多邊形數目(Decimate)
把多邊形轉換為 NURBS 曲面
曲面分析(公差分析等)
輸出與 CAD/CAM/CAE 匹配的文件格式(IGS、STL、DXF等)
1.從CAD數模得到的產品模型
2.將CAD模型讀入 Geomagic Studio
3.CAD 設計模型與從實際模型掃描所得的點雲數據(不同坐標系)
4.掃描數據與CAD模型的自動對合
5.掃描數據與CAD模型的自動對齊
6.誤差以彩色圖形直觀顯示
7.用戶可標出任意點誤差
8. Qualify 的結果可以輸出為 HTML 格式
CopyCAD
CopyCAD 是由英國 DELCAM 公司出品的功能強大的逆向工程系統軟體,它能允許從已存在的零件或實體模型中產生三維CAD模型。該軟體為來自數字化數據的 CAD 曲面的產生提供了復雜的工具。CopyCAD 能夠接受來自坐標測量機床的數據,同時跟蹤機床和激光掃描器。
CopyCAD 簡單的用戶界面允許用戶在盡可能短的時間內進行生產,並且能夠快速掌握其功能,即使對於初次使用者也能做到這點。使用 CopyCAD 的用戶將能夠快速編輯數字化數據,產生具有高質量的復雜曲面。該軟體系統可以完全控制曲面邊界的選取,然後根據設定的公差能夠自動產生光滑的多塊曲面,同時,CopyCAD 還能夠確保在連接曲面之間的正切的連續性。
該軟體的主要功能如下:
數字化點數據輸入
DUCT 圖形和三角模型文件
CNC 坐標測量機床
分隔的 ASCII 碼和 NC 文件
激光掃描器、三維掃描器和 SCANTRON
PC ArtCAM
Renishaw MOD 文件
點操作
能夠進行相加、相減、刪除、移動以及點的隱藏和標記等點編輯
能夠為測量探針大小對模型的三維偏置進行補償
能夠進行模型的轉換、縮放、旋轉和鏡像等模型轉換
能夠對平面、多邊形或其它模型進行模型裁剪
三角測量
在用戶定義的公差和選項內的數字化模型的三角測量,包括:
① 原始的——法線設置
② 尖銳——尖銳特徵強化
③ 特徵匹配——來自點法線數據的特徵
④ 關閉三角測量——為了快速繪圖可以關閉模型
特徵線的產生
邊界——轉換模型外邊緣為特徵線
間斷——為找到簡單的特徵(如凸出和凹下)而探測數據里的尖銳邊緣
能夠轉換數字化掃描線為特徵線
輸入的數據——能夠從點文件中摘錄多線條和樣條曲線
曲面構造
通過在三角測量模型上跟蹤直線產生多樣化曲面
在連接的曲面之間,用已存在的曲面定義帶有選項的正切連續性的邊界
使用特徵線指導和加快曲面定義
曲面錯誤檢查
比較曲面與數字化點數據
報告最大限、中間值和標准值的錯誤背離
錯誤圖形形象地顯示變化
輸出
IGES、CADDS4X
STL ASCII 碼和二進制
DUCT 圖形、三角模型和曲面
分隔的 ASCII 碼
RapidForm
RapidForm 是韓國 INUS 公司出品的全球四大逆向工程軟體之一,RapidForm 提供了新一代運算模式,可實時將點雲數據運算出無接縫的多邊形曲面,使它成為 3D Scan 後處理之最佳化的介面。RapidForm 也將使您的工作效率提升,使 3D 掃描設備的運用范圍擴大,改善掃描品質。
多點雲數據管理介面
高級光學 3D 掃描儀會產生大量的數據(可達 100,000 ~ 200,000點),由於數據非常龐大,因此需要昂貴的電腦硬體才可以運算,現在 RapidForm 提供記憶管理技術(使用更少的系統資源)可縮短您處理數據的時間。
多點雲處理技術
可以迅速處理龐大的點雲數據,不論是稀疏的點雲還是跳點都可以輕易地轉換成非常好的點雲, RapidForm 提供過濾點雲工具以及分析表面偏差的技術來消除 3D 掃描儀所產生的不良點雲。
快速點雲轉換成多邊形曲面的計演算法
在所有逆向工程軟體中,RapidForm 提供一個特別的計算技術,針對 3D 及 2D 處理是同類型計算,軟體提供了一個最快最可靠的計算方法,可以將點雲快速計算出多邊形曲面。RapidForm 能處理無順序排列的點數據以及有順序排列的點數據。
彩色點雲數據處理
RapidForm 支持彩色 3D 掃描儀,可以生成最佳化的多邊形,並將顏色信息映像在多邊形模型中。在曲面設計過程中,顏色信息將完整保存,也可以運用 RP 成型機製作出有顏色信息的模型。RapidForm 也提供上色功能,通過實時上色編輯工具,使用者可以直接對模型編輯自己喜歡的顏色。
點雲合並功能
多個點掃描數據有可能經手動方式將特殊的點雲加以合並,當然,RapidForm 也提供一技術,使用者可以方便地對點雲數據進行各種各樣的合並。

⑩ 什麼是逆向工程

逆向工程,有的人也叫反求工程,英文是reverse engineering。
逆向工程(reverse engineering)大意是根據已有的東西和結果,通過分析來推導出具體的實現方法。比如你看到別人寫的某個exe程序能夠做出某種漂亮的動畫效果,你通過反匯編、反編譯和動態跟蹤等方法,分析出其動畫效果的實現過程,這種行為就是逆向工程;不僅僅是反編譯,而且還要推倒出設計,並且文檔化,逆向軟體工程的目的是使軟體得以維護。 反求技術包括影像反求、軟體反求及實物反求等三方面。目前相對最多人研究的是實物反求技術。它是研究實物CAD模型的重建和最終產品的製造。狹義來說,三維反求技術是將實物模型數據化成設計、概念模型,並在此基礎上對產品進行分析、修改及優化等技術。 逆向工程軟體功能通常都是集中於處理和優化密集的掃描點雲以生成更規則的結果點雲,通過規則的點雲可以應用於快速成型,也可以根據這些規則的點雲構建出最終的NURBS曲面以輸入到CAD軟體進行後續的結構和功能設計工作。 目前主流應用的四大逆向工程軟體:Imageware、Geomagic Studio、CopyCAD、RapidForm

閱讀全文

與反編譯逆向工程相關的資料

熱點內容
我的世界無盡貪婪奇點壓縮器 瀏覽:391
源碼資源免費分享網 瀏覽:683
批量qq號有效驗證源碼 瀏覽:511
本科程序員五年工資 瀏覽:899
創維電視櫃怎麼安裝app 瀏覽:850
可愛的程序員陸漓劇照 瀏覽:850
怎樣把截屏壓縮成300kb 瀏覽:224
dart文件加密 瀏覽:39
java對接攝像頭源碼 瀏覽:885
安卓項目開發實例附源碼 瀏覽:728
程序員蘋果全家桶 瀏覽:197
遠程命令阻塞 瀏覽:730
有網頁源碼怎麼查數據 瀏覽:100
win10下make編譯速度過慢 瀏覽:866
微機原理編譯環境 瀏覽:18
怎麼把圖紙轉換成pdf 瀏覽:541
安卓libcurl編譯64 瀏覽:905
手機app怎麼測速 瀏覽:275
中興gpon命令 瀏覽:885
python中取出字典key值 瀏覽:682