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

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

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

單片機加密的三種方法詳細說明

Wildesbeast ? 來源:未知 ? 作者:佚名 ? 2019-11-09 11:00 ? 次閱讀

單片機在現(xiàn)在工業(yè)控制中起著巨大的作用,在各個地方都可以看到它的身影。其中的程序更可以說是單位的商業(yè)秘密。所以,就關于單片機的加密我來說幾點體會。

單片機加密方法 (1)

科研成果保護是每一個科研人員最關心的事情 , 目的不使自己的辛苦勞動付注東流。加密方法有軟件加密 , 硬件加密 , 軟硬件綜合加密 , 時間加密 , 錯誤引導加密 , 專利保護等措施。

現(xiàn)先講一個軟件加密 : 利用 MCS-51 中 A5 指令加密 , 其實世界上所有資料 , 包括英文資料都沒有講這條指令 , 其實這是很好的加密指令。 A5 功能是二字節(jié)空操作指令。加密方法在 A5 后加一個二字節(jié)或三字節(jié)操作碼 , 因為所有反匯編軟件都不會反匯編 A5 指令 , 造成正常程序反匯編亂套 , 執(zhí)行程序無問題。仿制者就不能改變你的源程序 , 你應在程序區(qū)寫上你的大名、單位、開發(fā)時間及仿制必究的說法 ,以備獲得法律保護。

硬件加密 :8031/8052 單片機就是 8031/8052 掩模產(chǎn)品中的不合格產(chǎn)品 , 內(nèi)部有 ROM, 可以把 8031/8052 當 8751/8752 來用 , 再擴展外部程序器 , 然后調(diào)用 8031 內(nèi)部子程序。當然你所選的同批 8031 芯片的首地址及所需用的中斷入口均應轉到外部程序區(qū)。

單片機加密方法 (2)

硬件加密 : 使他人不能讀你的程序

① 用高電壓或激光燒斷某條引腳 , 使其讀不到內(nèi)部程序 , 用高電壓會造成一些器件損壞。

② 重要 RAM 數(shù)據(jù)采用電池 ( 大電容 , 街機采用的辦法 ) 保護 , 拔出芯片數(shù)據(jù)失去。機器不能起動 , 或能初始化 , 但不能運行。

用真真假假方法加密 :

擦除芯片標識。

把 8X52 單片機 , 標成 8X51 單片機 , 并用到后 128B 的 RAM 等方法 , 把 AT90S8252 當 AT89C52, 初始化后程序段中并用到EEPROM 內(nèi)容 , 你再去聯(lián)想吧 !

用激光 ( 或絲印 ) 打上其它標識。如有的單片機引腳兼容 , 有的又不是同一種單片機 , 可張冠李戴 , 只能意會了 , 這要求你知識面廣一點。

最新出廠編號的單片機 , 如 2000 年后的 AT89C 就難解密 , 或新的單片機品種 , 如 AVR 單片機。

DIP 封裝改成 PLCC,TQFP,SOIC,BGA 等封裝。

如果量大可以做定制 ASIC, 或軟封裝。

用不需外晶振的單片機工作 ( 如 AVR 單片機中的 AT90S1200) 。

使用更復雜的單片機 FPGA+AVR+SRAM=AT40K 系列。

單片機加密方法 (3)

硬件加密與軟件加密只是為敘說方便而分開來講 , 其實它們是分不開的 , 互相支撐 , 互相依存的。

軟件加密 : 其目的是不讓人讀懂你的程序 , 不能修改程序 , 你可以 。..。..。

利用單片機未公開 , 未被利用的標志位或單元 , 作為軟件標志位 , 如 8031/8051 有一個用戶標志位 ,PSW.1 位 , 是可以利用的。

程序入口地址不要用整地址 , 如 :XX00H,XXX0H, 可用整地址 -1, 或 -2, 而在整地址處加二字節(jié)或三字節(jié)操作碼。

在無程序的空單元也加上程序機器碼 , 最好要加巧妙一點。

用大容量芯片 , 用市場上仿真器不能仿真的芯片 , 如內(nèi)部程序為 64KB 或大于 64KB 的器件 , 如 :AVR 單片機中 ATmega103 的Flash 程序存儲器為 128KB 。

AT89S8252/AT89S53 中有 EEPROM, 關鍵數(shù)據(jù)存放在 EEPROM 中 , 或程序初始化時把密碼寫到 EEPROM 中 , 程序執(zhí)行時再查密碼正確與否 , 然后 。..。..。 。當然不能告說人家這是什么器件 , 盡量不讓人家讀懂程序 , 在這里說謊 , 騙人是正當防衛(wèi)。

用“真真假假 , 假假真真” , 把幾種不同品種的單片機放在同一設備中 , 如主芯片用 AVR( 說是 MCS51), 鍵盤顯示用 AT89C2051( 說是 GAL),I/O 口擴展驅動用 PIC( 說是 AT90S1200) 等 , 當然要求你知識面廣一點。如果你用高級語言 C 編寫程序就簡單了 , 因為 C 語言程序移植方便。

有些國家的產(chǎn)品能做到三年保修 , 三年保不壞 , 三年后保壞 , 或三年后保有故障 , 可能用什么技術 ? 你去想吧。例 : 每次開機或關機 ,EEPROM 某單元加 1, 也可二個、三個單元連接起來計數(shù) , 達到某值停止工作。

硬件用軟件代替 , 軟件用硬件代替。用大規(guī)模 CPLD編程器件。

關于單片機加密 , 講到這里 , 就算拋磚引玉吧。

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

    關注

    6037

    文章

    44558

    瀏覽量

    635301
  • RAM
    RAM
    +關注

    關注

    8

    文章

    1368

    瀏覽量

    114697
  • 源程序
    +關注

    關注

    63

    文章

    1693

    瀏覽量

    45490
收藏 人收藏

    評論

    相關推薦

    STM32單片機的ISP、IAP、ICP三種燒錄方式

      內(nèi)容包括ISP、IAP、ICP三種燒錄方式的詳細介紹,STM32單片機與宏晶STC單片機燒錄方法,STM32
    發(fā)表于 08-09 15:21 ?3.3w次閱讀
    STM32<b class='flag-5'>單片機</b>的ISP、IAP、ICP<b class='flag-5'>三種</b>燒錄方式

    詳細介紹Flash型單片機加密解密方法

    ?! ?b class='flag-5'>種加密解密方法  在HCS12系列單片機中,加密可以分成兩種方法:完全
    發(fā)表于 10-21 19:59

    51單片機模擬串口的三種方法

    51單片機模擬串口的三種方法隨著單片機的使用日益頻繁,用其作前置進行采集和通信也常見于各種應用,一般是利用前置采集各種終端數(shù)據(jù)后進行處理
    發(fā)表于 05-29 14:14

    MCS-51單片機控制跑馬燈的三種方法

    MCS-51單片機控制跑馬燈的三種方法:窮舉法、移位法、查表法。跑馬燈,是指將八個發(fā)光二極管分別連接到單片機的某一并行端口的八根線上,通過編程控制這八個發(fā)光二極管從低到高或從高到低依次點亮。
    發(fā)表于 12-18 15:44 ?4.6w次閱讀
    MCS-51<b class='flag-5'>單片機</b>控制跑馬燈的<b class='flag-5'>三種方法</b>

    51單片機教程之單片機硬件結構的詳細說明

    本文檔的主要內(nèi)容詳細介紹的是51單片機教程之單片機硬件結構的詳細說明內(nèi)容包括了:一內(nèi)部結構與引腳說明,二
    發(fā)表于 10-23 11:04 ?33次下載
    51<b class='flag-5'>單片機</b>教程之<b class='flag-5'>單片機</b>硬件結構的<b class='flag-5'>詳細說明</b>

    51單片機經(jīng)常會出現(xiàn)的4點錯誤解決方法詳細說明

    本文檔的主要內(nèi)容詳細介紹的是51單片機經(jīng)常會出現(xiàn)的4點錯誤解決方法詳細說明。
    發(fā)表于 09-06 17:26 ?0次下載
    51<b class='flag-5'>單片機</b>經(jīng)常會出現(xiàn)的4點錯誤解決<b class='flag-5'>方法</b><b class='flag-5'>詳細說明</b>

    在Windows系統(tǒng)下使用STC ISP下載51單片機程序的方法詳細說明

    本文檔的主要內(nèi)容詳細介紹的是在Windows系統(tǒng)下使用STC ISP下載51單片機程序的方法詳細說明。
    發(fā)表于 08-30 17:28 ?0次下載
    在Windows系統(tǒng)下使用STC ISP下載51<b class='flag-5'>單片機</b>程序的<b class='flag-5'>方法</b><b class='flag-5'>詳細說明</b>

    進行單片機串口通信的方式詳細說明

    本文檔的主要內(nèi)容詳細介紹的是進行單片機串口通信的方式詳細說明。
    發(fā)表于 08-01 17:35 ?1次下載
    進行<b class='flag-5'>單片機</b>串口通信的方式<b class='flag-5'>詳細說明</b>

    51單片機中斷系統(tǒng)的原理和結構詳細說明

    本文檔的主要內(nèi)容詳細介紹的是51單片機中斷系統(tǒng)的原理和結構詳細說明
    發(fā)表于 11-19 08:00 ?2次下載
    51<b class='flag-5'>單片機</b>中斷系統(tǒng)的原理和結構<b class='flag-5'>詳細說明</b>

    單片機的指令大全詳細說明

    本文檔的主要內(nèi)容詳細介紹的是單片機的指令大全詳細說明。
    發(fā)表于 12-26 11:39 ?24次下載
    <b class='flag-5'>單片機</b>的指令大全<b class='flag-5'>詳細說明</b>

    STM32單片機的輸入捕獲實驗詳細說明

    本文檔的主要內(nèi)容詳細介紹的是STM32單片機的輸入捕獲實驗詳細說明
    發(fā)表于 01-02 08:00 ?3次下載
    STM32<b class='flag-5'>單片機</b>的輸入捕獲實驗<b class='flag-5'>詳細說明</b>

    機器人單片機控制大模塊的方法詳細說明

    本文檔的主要內(nèi)容詳細介紹的是機器人單片機控制大模塊的方法詳細說明。
    發(fā)表于 04-22 08:00 ?1次下載
    機器人<b class='flag-5'>單片機</b>控制<b class='flag-5'>三</b>大模塊的<b class='flag-5'>方法</b>的<b class='flag-5'>詳細說明</b>

    單片機遙控解碼的源代碼詳細說明

    本文檔的主要內(nèi)容詳細介紹的是單片機遙控解碼的源代碼詳細說明。
    的頭像 發(fā)表于 09-26 11:07 ?3202次閱讀

    單片機測量PWM占空比的三種方法

    單片機測量PWM占空比的三種方法PWM(Pulse Width Modulation),一般指脈沖寬度調(diào)節(jié),是利用微處理器的數(shù)字輸出來對模擬電路進行控制的一非常有效的技術,廣泛應用在從測量、通信
    發(fā)表于 11-19 11:21 ?69次下載
    <b class='flag-5'>單片機</b>測量PWM占空比的<b class='flag-5'>三種方法</b>

    單片機三種總線結構

    、控制信號傳遞和地址選擇中發(fā)揮著至關重要的作用。下面將詳細闡述這三種總線結構的特點及其在單片機系統(tǒng)中的應用。
    的頭像 發(fā)表于 09-10 11:32 ?2749次閱讀