導航:首頁 > 文檔加密 > 模擬器讀取加密晶元程序

模擬器讀取加密晶元程序

發布時間:2022-04-22 00:33:33

單片機USBISP下載器與USB模擬器 的作用分別是什麼

1:USBISP,也叫USB轉ISP下載線,是通過電腦的USB介面把文件下載到目標晶元的轉接電纜。
2:USB模擬器,通過USB介面連接目標晶元,完成程序文件的下載和模擬。
3:模擬器又分在線模擬器和實時在線模擬器。
3.1:在線模擬器:通過模擬器與目標晶元的JTAG介面或ICSP介面連接後,將調試執行程序和源程序燒寫入目標晶元,其程序運行與調試均在目標晶元中進行,也可以理解為依靠目標晶元才可以運行和調試。
3.2:實時在線模擬器:是指程序的運行和調試在模擬器與目標晶元中同時進行,也可理解為在模擬器的模擬晶元中進行,即用模擬晶元模擬了目標晶元,所以這種工具才叫模擬器,這才是真正的模擬器!此時要注意兩點:第一,程序並沒有燒寫到目標晶元中;第二,程序的運行和調試不依賴目標晶元,即目標晶元有沒有都無所謂,照樣出結果。
摘自《無線電》2009 《單片機開發工具大揭秘》馬曉晶 。

❷ 怎樣用CodeWarrior讀出晶元的程序

利用向導創建一個新工程項目

•在新項目中加入或刪除文件

•調試

•啟動程序•PRM 文件設置

•如何對IO 及寄存器進行操作

•如何寫中斷程序

•嵌入式編程注意事項•Codewarrior 定購信息

❸ 如何讀出dsp晶元裡面的程序

抄板,^_^

可以使用並口模擬器

❹ 單片機原理的加密方法

科研成果保護是每一個科研人員最關心的事情,加密方法有軟體加密,硬體加密,軟硬體綜合加密,時間加密,錯誤引導加密,專利保護等措施有矛就有盾,有盾就有矛,有矛有盾,才促進矛盾質量水平的提高加密只講盾,也希望網友提供更新的加密思路,現先講一個軟體加密:利用MCS-51 中A5 指令加密,其實世界上所有資料,包括英文資料都沒有講這條指令,其實這是很好的加密指令A5 功能是二位元組空操作指令加密方法在A5 後加一個二位元組或三位元組操作碼,因為所有反匯編軟體都不會反匯編A5 指令,造成正常程序反匯編亂套,執行程序無問題仿製者就不能改變你的源程序。
硬體加密:8031/8052單片機就是8031/8052掩模產品中的不合格產品,內部有ROM,可以把8031/8052 當8751/8752 來用,再擴展外部程序器,然後調用8031 內部子程序當然你所選的同批8031晶元的首地址及所需用的中斷入口均應轉到外部程序區。
硬體加密
用高電壓或激光燒斷某條引腳,使其讀不到內部程序,用高電壓會造成一些器件損壞重要RAM 數據採用電池(大電容,街機採用的辦法)保護,拔出晶元數據失去機器不能起動,或能初始化,但不能運行。
用真假方法加密
擦除晶元標識
把8X52單片機,標成8X51 單片機,並用到後128B的RAM 等方法,把AT90S8252 當AT89C52,初始化後程序段中並用到EEPROM 內容,你再去聯想吧!
用激光(或絲印)打上其它標識如有的單片機引腳兼容,有的又不是同一種單片機,可張冠李戴,只能意會了,這要求你知識面廣一點 。
用最新出廠編號的單片機,如2000 年後的AT89C 就難解密,或新的單片機品種,如AVR 單片機。
DIP 封裝改成PLCC,TQFP,SOIC,BGA等封裝,如果量大可以做定製ASIC,或軟封裝,用不需外晶振的單片機工作(如AVR 單片機中的AT90S1200),使用更復雜的單片機,FPGA+AVR+SRAM=AT40K系列。
硬體加密與軟體加密只是為敘說方便而分開來講,其實它們是分不開的,互相支撐,互相依存的軟體加密:其目的是不讓人讀懂你的程序,不能修改程序,你可以………….....
利用單片機未公開,未被利用的標志位或單元,作為軟體標志位,如8031/8051有一個用戶標志位,PSW.1 位,是可以利用的程序入口地址不要用整地址,如:XX00H,XXX0H,可用整地址-1,或-2,而在整地址處加二位元組或三位元組操作碼,在無程序的空單元也加上程序機器碼,最好要加巧妙一點用大容量晶元,用市場上模擬器不能模擬的晶元,如內部程序為64KB 或大於64KB 的器件,如:AVR 單片機中ATmega103 的Flash 程序存儲器為128KBAT89S8252/AT89S53中有EEPROM,關鍵數據存放在EEPROM 中,或程序初始化時把密碼寫到EEPROM 中,程序執行時再查密碼正確與否,盡量不讓人家讀懂程序。關於單片機加密,講到這里,就算拋磚引玉。

❺ 這樣才能讀取51單片機內程序代碼

第一步:連接編程器,打開編程器電源,在編程器的計算機端軟體環境中,將器件選擇MCU類型,型號列表中如果有STC89C51RC,那最好,如果沒有,只好建議選擇ATMEL 89C51試一試,設置好後,將單片機晶元按照編程器的擺放要求(一般在編程器表面有晶元的擺放示意圖),插入到管腳插中,壓上管腳扣,利用軟體讀出器件內的程序代碼(二進制),保存成HEX格式的文件。第二步:在模擬器的計算機端軟體中,利用反匯編功能,打開剛才保存的HEX格式文件,如果單片機內的程序在編譯時設置了允許注釋,那麼,您可以很快得到原程序代碼(匯編語句),如果沒有注釋,那隻好根據反匯編的出來的語句(匯編代碼),去查詢指令代碼表,人工翻譯出來,對一些跳轉地址,可以自己定義成特定的標號。說明:一般來說,根據對方的硬體電路圖,產品的使用說明書,即可分析出軟體功能,與其去破譯或反譯晶元內的程序,還不與自己再編一個。

❻ 如何讀取沒有加密的DSP晶元程序

對晶元內部數據進行操作, 一般都需要硬體和軟體搭配才能做好,對微芯的晶元,最簡便的當然是採用在線方式來做(省硬體成本),相應軟體則有許多 ,這里推薦 MATLAB8.8

❼ 單片機加密 畢業論文

摘要:單片機系統產品的加密和解密技術永遠是一個矛盾的統一體。然而,為了更好的保護好自己的單片機技術成果和知識產權,加大解密成本,研究新型加密技術仍是保護成果的主要手段之一。文中在討論了傳統的單處系統加密和解密技術的基礎上,提出了一種實用而有效的動態加密技術的實現方案。
關鍵詞:單片機系統 動態加密技術 FPGA

1 概述

隨著單片機技術的發展和廣泛應用,許多使用單片機的高新技術產品諸如智能化儀器、儀表、小型工業控制系統等都面臨著一個令人頭痛的問題,那就是新產品剛一推出就被仿製和剽竊。這種現象會使產品開發商蒙受很大損失,同時也極大地挫傷了開發商的積極性。創新開發是一個公司競爭力的關鍵,如何保護好自己的勞動成果,除用法律手段外,在產品面市前作好加密是一個必不可少的環節。

單片機系統一般都採用MCU+EPROM模式。通常EPROM都是透明的,而採用的MCU一般有Intel公司的MCS51、52系列,Zilog公司的Z80、Z84系列、Motorola公司的MC68HC系列以及Microchip公司的PIC16C系列等。雖然有許多的MCU都帶有加密位,但現在已大多能破解。因此,單靠MCU本身加密位來進行加密已極不可靠的。

2 常用加密技術分析

常用的單片機加密技術無非是硬體加密和軟體加密兩種。軟體加密不能防止別人復制,只能增加別人解剖分析的難度,但對高手而言,這不足為慮。所以,這里討論的加密主要是硬體加密。總結起來,主要是以下三大類。

2.1 匯流排亂置法

匯流排亂置法通常是將MCU和EPROM之間的數據線和地址線的順序亂置。匯流排亂置法通常包括下面幾種:

(1)將數據或地址匯流排的某些線位交換或求反;

(2)將數據或地址匯流排中的某些線進行異或。例如,D5'=D5,D6'=D5+6等;

(3)把(1)(2)結合起來以構成較復雜的電路;

(4)採用EPROM時,把地址匯流排(或數據匯流排)與系統程序的存儲器地址(或數據)的對應關系按密鑰交換。例如,用一片2764晶元存儲密鑰,把地址的高8位重新按密鑰編碼,也就是說,把原程序的頁號順序打亂;

(5)採用GAL器件,利用GAL的加密片來對硬體電路進行加密。

2.2 RAM替代法

用電池對RAM進行掉電數據保護。即先將一系列數據寫入RAM並接上電池,然後將其餘的晶元插上。這樣,當單片微機系統運行後,CPU首先從RAM讀出數據,這些數據可以是CPU執行程序的條件判別依據,也可以是CPU將要執行的程序。如果數據正確,整個系統正常運行。反之,系統不能運行。

2.3 利用MCU本身的加密位進行加密

現在很多的MCU都帶有加密位,其中最成功的加密方法是匯流排燒毀法,此法在AT89C51中運行用得最成功。即把單片機數據匯流排的特定I/O永久性地破壞,解密者即使擦除了加密位,也無法讀出片內程序的正確代碼。此外還有破壞EA引腳的方法。

一般來說,上述的加密方法各有優點,但都存在致命的缺點:第一種方法有兩個主要缺點:一是密鑰放在哪裡才能不被破譯;二是用模擬器很容易就能把源程序截取出來。第二種方法同樣可以用模擬器把數據區調出來,另外還可以把RAM接上電池,取下來放在模擬器上讀出來。第三種方法用來加密小程序是成功的,但由於匯流排已被破壞,因而不能再使用匯流排來擴展介面晶元和存儲器。同時,片內存儲器也不再具有重復編程特性。

3 常用解密方法分析

加密和解密長期以來就是一對矛盾。要做好加密,必須先了解現在的解密水平及手段。目前的解密手段大致可分為下面四種。

3.1 恢復加密位法

該方法能破解常規用E2COMS工藝的存儲加密位晶元。它包括兩個系列:

第一是MCU系列,例如MCS51系列(包括89C、97C、W78E/77E系列等)、Z84E系列、PIC16C/12C系列、MC68HC系列等。

第二是PLD,如CPLD的GAL,PALCE的16V8、20V8、22V10,Altera的EPM7032、
EMP7064、EMP7128,Lattice的LSP1016、LSP1024和Atmel的ATV750/2500等。

3.2 邏輯分析法

該方法主要採用示波器、邏輯分析儀和MDU解密儀等分析工具分配一些邏輯較簡單的可編程器件的邏輯功能。

3.3 模擬器軟體跟蹤分析法

此方法適用於破解一些未帶加密功能的單片機系統(如8031,Z80等系統),而對於有加密功能的單片機系統,則可先破解其單片機的源程序,然後進行模擬分析。

3.4 晶元揭蓋分析法

現在市場上十萬門以下的晶元多功能通過揭蓋來進行逆向分析,但此破解法費用甚高。此法適用於破解專門的ASIC晶元。

綜上所述,一般晶元及常規加密手段很難實現有效加密。嚴格來說,要做到絕對的加密是不可能的。選好適當的晶元,採用合適的加密技術,使仿製者面對需付高昂的解密費而卻步,那就意味著加密工作的成功。

4 動態加密技術原理

動態加密技術的主要思路是:在程序看到的是虛地址,而虛地址對應的存儲器的實地址由CPU程序運行時通過FPGA賦予。其原理如圖1所示。

舉例說明,若調用子程序CALL Function時,對應於同一個子程序調用,第一次調用的是真正的Function,絕對地址可能在1000H。而在第二次調用Function時,實地址可能是2000H,功能可能根本與Function不相同,這樣,只要在調用前把實地址通過軟體置進去就可以了。因此可以通過連續表面調用同一個子程序Function,而實際則是分別調用幾個不同的子程序來實現加密。至於虛地址映射到何處的實地址,可由編程者自己安排,故只需在調用前輸出實地址的對應關系即可。這種軟體與硬體相結合、虛地址與實地址相結合的加密方法使破解者即使獲得源程序也極難分析出對應關系。

但這種動態加密技術也有漏動,如很難對付模擬器單步跟蹤分析,因此,須做進一步個性。改進的方法之一是在FPGA內設計一個計數器,並由CPU定時清零,否則一旦超過時限,FPGA將停止一切操作而使CPU無法運行,就更不用說模擬了。改進方法之二是在FPGA內做一密,並由CPU運行足夠長的時間後去訪問FPGA,以讀取密碼並比較,若出錯則由CPU破壞主內存RAM的內容,從而導致所有結果出錯。用這種方法足可以對付邏輯分析儀的跟蹤分析。

對於數據加密,可採用與密鑰邏輯異或的方法。對於這種方法密鑰以及動態加密技術的邏輯函數都必須放在一個較難破譯的晶元上。鑒於對晶元解密技術的了解,筆者推薦使用Actel公司生產的42MX系列的FPGA來進行一次性編程,該晶元不可讀出碼點文件,市場上無法破解。同時,其資源也極為豐富,設計工具完整,且用VHDL語言極易實現各種功能。

5 結束語

隨著單片機系統越來越廣泛的,其安全保密問題也越來越受到重視。密碼學為其提供了正確的理論基礎。同時,性能優良的硬體是實現其安全保密的物質基礎。二者缺一不可。加密解密長期以來就是一對矛盾,解密技術隨著科學技術的發展不斷創新。因此,只有對解密技術有了深刻的了解,才能做好加密工作,從在則確保產品的安全。

❽ 我有款單片機的板子,請問怎麼把單片機代碼直接從板子上讀出來,沒加密,我知道讀出來的是匯編代碼,

讀出來的不是「匯編」,是Bin文件,也就是純二進制文件。

❾ 模擬器如何讀取晶元程序

你說的模擬器讀取晶元程序,一般都是通過在板的形式吧,好比這樣的,如圖示。

❿ MPLAB IDE 模擬器編譯pic的時候怎麼給他加密, 防止程序被回讀使用!有資料或者鏈接也可以!

好像在configuration 中有一位是CP 是code protection 。用來給軟體加密的。。。

閱讀全文

與模擬器讀取加密晶元程序相關的資料

熱點內容
r語言編程基礎第五章課後題答案 瀏覽:167
linuxutf8withbom 瀏覽:440
什麼是伺服器配置與管理 瀏覽:156
如何保證伺服器硬碟數據安全 瀏覽:471
賬號出租用什麼app 瀏覽:222
電腦改伺服器需要什麼主板好 瀏覽:512
使用到的編譯器 瀏覽:351
鄞州百丈公園幼兒編程課 瀏覽:417
java實現介面繼承類 瀏覽:492
程序轉化為控制流圖需要編譯嗎 瀏覽:472
聯想彩信在哪個文件夾 瀏覽:462
編譯原理類c語言文法 瀏覽:988
centos時間同步命令 瀏覽:4
會計真賬實操pdf 瀏覽:342
文件加密重裝系統顯示沒有許可權 瀏覽:348
c編譯器怎麼放大字體 瀏覽:342
復雜方程的簡便演算法 瀏覽:502
清理大師中微信語音加密如何解開 瀏覽:268
雲圖計劃演算法造成傷害詞條 瀏覽:141
元氣部落是什麼app 瀏覽:676