chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

單片機4大硬件加密方法解析

5RJg_mcuworld ? 來源:YXQ ? 2019-08-06 15:16 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

我們知道,研究一套可行實用的單片機系統(tǒng)肯定要花大量的人力和物力。為了使所研制的系統(tǒng)不被別人所剽竊,保護知識產(chǎn)權(quán),通常在單片機系統(tǒng)設(shè)計時,都要進行加密設(shè)計。加密設(shè)計一般有硬件加密和軟件加密。而硬件加密的方法很多,可以采用PAL、GAL等芯片將CPUROM之間的地址線或數(shù)據(jù)線按一定密鑰規(guī)律進行交換,這樣就把原程序頁號打亂,起到加密作用。但這里探討的是幾種簡單的硬件加密技術(shù)。

1.硬件加密設(shè)計步驟

1.1 根據(jù)具體項目和任務,設(shè)計目標程序并在未加密情況下調(diào)試成功。

1.2 設(shè)計硬件加密電路。

1.3 對調(diào)試好的軟件按硬件電路進行加密翻譯,不同的硬件加密電路翻譯出來的軟件不同。

1.4 將加密翻譯后的軟件寫進EPROM。

這樣,剽竊者將得到的EPROM里的程序進行反匯編后,不在是原來的程序,甚至是邏輯關(guān)系混亂毫無價值的代碼。從而保護了原設(shè)計者的利益。

2. 硬件加密電路的設(shè)計

為方便說明硬件加密原理和軟件加密翻譯方法,先列舉一例題,以下論述均以該例子為研究對象。

例1 比較兩個無符號數(shù)的大小,設(shè)兩個無符號數(shù)事先分別存在RAM里的30H和31H單元,若(30H)里的數(shù)大,則累加器的A.0~A.3為高電平;若(31H)里的數(shù)大,則累加器的A.4~A.7為高電平;若兩數(shù)相等,則累加器的A.2~A.5為高電平。試設(shè)計匯編程序?qū)崿F(xiàn)。

該例題所設(shè)計的原程序、機器代碼和存儲單元如下:

2.1 硬件加密方法一

將數(shù)據(jù)線中某幾根線換位,如圖1所示。將圖中數(shù)據(jù)線D1、D2交叉,這樣單片機系統(tǒng)執(zhí)行的實際代碼就與EPROM中存儲的代碼完全不同了。若將例1的程序存入EPROM ,那么存入的實際代碼就要做相應的加密翻譯,以使單片機從EPROM中所取的代碼正確。

加密翻譯后在EPROM中實際存的代碼和反匯編的結(jié)果如下:

P2.0~P2.4P0.3~P0.7P0.2P0.1P0.0ALEPSENCPU8031

74LS373

A8~A12A3~A7A2A1A0 2764OE CED3~D7D2D1

2.2 硬件加密方法二:

將CPU和EPROM間的地址換位,如圖2所示,將地址線A0、A1換位交叉,這樣單片機系統(tǒng)程序存在EPROM中的代碼不變,但存儲順序完全打亂。若將例1的程序存入EPROM時,為保證單片機的正常工作,要將存儲代碼的順序按硬件電路要求做相應的改變,即進行加密翻譯,加密翻譯后EPROM中存儲的實際代碼和反匯編的結(jié)果如下:

從反匯編的結(jié)果看,既是剽竊者取出EPROM里的程序代碼,反匯編后也得不到原來的程序了。

2.3 硬件加密方法三

將CPU和EPROM間的數(shù)據(jù)線某些位經(jīng)過三態(tài)反相器求反。如圖3所示,將數(shù)據(jù)線D0、D1分別求反后送CPU,這樣存在EPROM里的程序和原來的程序就不同了。若將例1的程序按硬件加密電路進行軟件加密翻譯后,存在EPROM里的實際代碼和反匯編后結(jié)果如下:

P2.0~P2.4P0.2~P0.7P0.1P0.0 ALEPSENCPU8031

74LS373

A8~A12A2~A7A1A0 2764OE CE D2~D7D1D0

可見經(jīng)硬件加密后,存在EPROM里的代碼與原來代碼完全不同。

2.4 硬件加密方法四

將CPU和EPROM間的地址線的某些位求反。如圖4所示,將地址線A0、A1求反,這樣存在EPROM里的代碼內(nèi)容不變,但代碼的存儲順序要按硬件電路相應改變。若仍以例1為例,將該程序代碼加密后,存在EPROM里的代碼和反匯編后的結(jié)果如下:

A8~A12A2~A7A1A0OE CE2764D2~D7D1D0

P2.0~P2.4P0.2~P0.7P0.1P0.0 ALEPSENCPU8031

74LS373

可見將EPROM里的代碼反匯編后,仍得不到原程序。

總結(jié)

堅持不懈的嘗試突破保護機制的破解團體和不斷引入新的安全防范方案的制造商之間的斗爭是沒有盡頭的。 “道高一尺,魔高一丈”,又或是“邪不壓正”,將不停的在兩派之間上演。其實軟件加密原理很簡單,就是利用單片機IC廠商,為每片出廠芯片的某一特殊全球唯一識別參數(shù),即ID號做為密鑰,對程序進行加密。如果以本ID號的程序燒到另一ID號的芯片中,程序中經(jīng)軟件加密過的部分的功能將完全失效。

要解密上述經(jīng)軟件加密過的程序,唯一的途徑,就是反匯編程序,分析單片機反匯編后的匯編程序,將程序中軟件加密相關(guān)的密鑰去掉,然后編譯得到新的程序。這項工作需要的不只是耐心,更多的是專業(yè)知識與經(jīng)驗。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關(guān)注

    關(guān)注

    6074

    文章

    45320

    瀏覽量

    662861
  • 硬件加密
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    9307

原文標題:這4大硬件加密方法,在單片機中你會用了嗎?

文章出處:【微信號:mcuworld,微信公眾號:嵌入式資訊精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    一文解析單片機晶振腳的原理

    晶振是重要元器件之一,對于晶振,小編于往期晶振相關(guān)文章中有過諸多闡述。本文中,小編將對單片機晶振腳的原理加以解析,以幫助大家更好理解晶振。晶振電路需要2個10-30pF級別的電容作為起振用途
    的頭像 發(fā)表于 11-21 15:37 ?3243次閱讀
    一文<b class='flag-5'>解析</b><b class='flag-5'>單片機</b>晶振腳的原理

    第1章 如何學習單片機

    ? 在錯誤的道路上日夜兼程,最終也無法成功,方法和思路絕對是最重要的。本章節(jié)講到的學習單片機方法,都是作者學習單片機的無數(shù)經(jīng)驗和教訓總結(jié)出來的瑰寶。通過作者前面的披荊斬棘,開辟了道路
    的頭像 發(fā)表于 10-10 10:32 ?225次閱讀

    浮思特 | ABOV 32位單片機的技術(shù)演進與行業(yè)應用解析

    隨著科技的不斷進步,單片機(MCU)已經(jīng)從最初的8位和16位時代,逐步邁向了32位的時代。32位單片機的高性能和廣泛適應性,使其成為未來嵌入式系統(tǒng)和智能硬件的核心驅(qū)動力量。特別是在家電、工業(yè)控制和物
    的頭像 發(fā)表于 09-01 09:56 ?645次閱讀
    浮思特 | ABOV 32位<b class='flag-5'>單片機</b>的技術(shù)演進與行業(yè)應用<b class='flag-5'>解析</b>

    如何使用單片機直接輸出4-20mA?GP210高集成方案。

    如何使用單片機直接輸出4-20mA?GP210高集成方案。
    的頭像 發(fā)表于 08-15 17:30 ?900次閱讀
    如何使用<b class='flag-5'>單片機</b>直接輸出<b class='flag-5'>4</b>-20mA?GP210高集成方案。

    什么單片機比較耐用

    ? ? ? ? 在工業(yè)控制、戶外設(shè)備、醫(yī)療儀器等場景中,單片機的耐用性直接決定了設(shè)備的穩(wěn)定運行與維護成本。耐用的單片機通常具備寬溫工作范圍、強抗干擾能力、穩(wěn)定的電源適應性和長壽命的硬件設(shè)計。深圳市安
    的頭像 發(fā)表于 07-31 13:48 ?533次閱讀

    單片機的儲存優(yōu)點是什么

    場景。深圳市安凱星科技有限公司在單片機應用開發(fā)中,充分利用這些儲存優(yōu)點,為拓邦、朗科、安徽龍多等客戶打造了高效穩(wěn)定的解決方案。 1.集成度高,節(jié)省硬件空間 單片機將程序存儲器(ROM)、數(shù)據(jù)存儲器(RAM)與 CPU、I/O 接
    的頭像 發(fā)表于 07-31 10:09 ?478次閱讀

    單片機怎么控制轉(zhuǎn)速

    ? ? ? ?在工業(yè)自動化、智能家居、機器人等領(lǐng)域,單片機控制電機轉(zhuǎn)速是實現(xiàn)精準運動控制的核心技術(shù)。通過結(jié)合硬件電路設(shè)計與軟件算法優(yōu)化,單片機可根據(jù)不同應用場景靈活調(diào)整電機轉(zhuǎn)速。以下從控制方法
    的頭像 發(fā)表于 07-25 13:58 ?638次閱讀

    怎么測單片機系統(tǒng)頻率

    單片機系統(tǒng)頻率是指單片機工作時的時鐘頻率,它直接影響單片機的運行速度和處理能力,準確測量系統(tǒng)頻率對單片機應用開發(fā)、程序調(diào)試和性能優(yōu)化具有重要意義。測量
    的頭像 發(fā)表于 07-25 11:39 ?440次閱讀

    單片機怎么驅(qū)動電機?

    在各類自動化設(shè)備和智能裝置中,電機是重要的執(zhí)行部件,而單片機作為控制核心,需要通過特定的方式驅(qū)動電機運轉(zhuǎn)。單片機驅(qū)動電機并非直接連接即可,而是要根據(jù)電機類型和功率,搭配合適的驅(qū)動電路,才能實現(xiàn)穩(wěn)定
    的頭像 發(fā)表于 07-25 09:31 ?429次閱讀

    單片機怎么燒程序

    驟,才能讓單片機發(fā)揮作用。 燒程序前的準備工作 單片機燒程序前,需要做好硬件和軟件兩方面的準備。硬件方面,核心設(shè)備包括目標單片機、編程器(或
    的頭像 發(fā)表于 07-23 11:47 ?627次閱讀

    單片機和伺服有什么區(qū)別

    單片機和伺服的區(qū)別 單片機(Microcontroller)和伺服(Servo System)是兩種完全不同的技術(shù)概念,分別屬于 控制系統(tǒng)硬件 和 運動控制執(zhí)行系統(tǒng) 。以下是它們的詳細對比和區(qū)別
    的頭像 發(fā)表于 05-26 09:18 ?564次閱讀

    STC15W4K32S4單片機原理圖

    STC15W4K32S4 單片機原理圖
    發(fā)表于 04-10 17:51 ?8次下載

    單片機科普總結(jié),建議收藏!

    來說,單片機可能是一個既熟悉又陌生的概念。熟悉,是因為我們在日常生活中經(jīng)常接觸到單片機控制的設(shè)備,比如微波爐、空調(diào)、智能手表;陌生,則是因為單片機涉及硬件、軟件、通
    的頭像 發(fā)表于 04-07 11:58 ?4358次閱讀
    <b class='flag-5'>單片機</b>科普總結(jié),建議收藏!

    單片機Debug工具性能對比 單片機調(diào)試常用命令

    單片機(Microcontroller Unit, MCU)調(diào)試是嵌入式開發(fā)中的一個重要環(huán)節(jié),它幫助開發(fā)者發(fā)現(xiàn)和修復代碼中的錯誤,優(yōu)化程序性能。不同的單片機和開發(fā)環(huán)境可能使用不同的調(diào)試工具和命令
    的頭像 發(fā)表于 12-19 09:56 ?2139次閱讀

    單片機Debug與仿真區(qū)別

    單片機的開發(fā)是一個復雜的過程,涉及到硬件設(shè)計、軟件開發(fā)和測試等多個環(huán)節(jié)。為了確保單片機能夠按照預期工作,開發(fā)者需要使用Debug和仿真技術(shù)來檢測和修正代碼中的錯誤。 Debug(調(diào)試) Debug
    的頭像 發(fā)表于 12-19 09:47 ?1377次閱讀