基于ESPU軟件保護(hù)模塊的版權(quán)保護(hù)方案
ESPU的硬件結(jié)構(gòu)非常簡單,時(shí)鐘頻率1~5MHz,工作電壓2.7V~5V,其簡單的結(jié)構(gòu),良好的兼容性使其同主要硬件設(shè)備的接口容易,編程也非常簡單.用戶可以輕松地將處理器芯片集成到應(yīng)用中.
四. 軟件應(yīng)用流程介紹
1.系統(tǒng)要求:
·應(yīng)用軟件需要支持DES算法,支持產(chǎn)生偽隨機(jī)數(shù)的算法。
·應(yīng)用軟件安裝系統(tǒng)主密鑰MK,可以通過ESPU安全模塊硬件唯一序列號(hào)S/N分散生成認(rèn)證主密鑰。
·ESPU安全模塊安裝有主密鑰SK=DES(MK,S/N)。
2.軟件安全認(rèn)證過程
·ESPU安全模塊中存儲(chǔ)與自身硬件序列號(hào)相關(guān)的主密鑰,通過主密鑰和軟件ID號(hào)加密可生成過程密鑰,過程密鑰存儲(chǔ)在ESPU安全模塊的RAM區(qū)中,掉電后消失。
·應(yīng)用軟件在不同批次ID的情況下,可以更改系統(tǒng)主密鑰。
·在應(yīng)用軟件密鑰存儲(chǔ)系統(tǒng)主密鑰,認(rèn)證主密鑰通過讀取ESPU安全模塊硬件序列號(hào)臨時(shí)分散產(chǎn)生,認(rèn)證密鑰通過應(yīng)用軟件批次ID號(hào)二次分散臨時(shí)產(chǎn)生。
·分散過的ESPU安全模塊認(rèn)證主密鑰,經(jīng)應(yīng)用軟件批次ID號(hào)分散密鑰產(chǎn)生臨時(shí)認(rèn)證密鑰與應(yīng)用軟件的臨時(shí)認(rèn)證密鑰完成最終的認(rèn)證過程。
五. 一種防止程序被反編譯的方法
根據(jù)設(shè)備采用的主CPU的特點(diǎn),還可以采用程序分割的方法將部分系統(tǒng)源程序用密鑰加密后存儲(chǔ),防止存儲(chǔ)在ROM或EEPROM中的程序被讀出后反編譯。
首先將源程序中的部分子程序或重要參數(shù)用ESPU中的密鑰加密后安裝,在調(diào)用該部分程序或參數(shù)時(shí)需先將數(shù)據(jù)送ESPU解密后再放到FLASH或RAM中執(zhí)行,掉電后解密后的數(shù)據(jù)將消失。這樣可以更有效地防止源程序被反編譯后被破解。
結(jié)語
ESPU軟件保護(hù)模塊的核心實(shí)際上是專用的智能卡芯片,隨著智能卡技術(shù)的成熟和應(yīng)用的普及,國外大廠商的智能卡芯片制造和銷售成本也在不斷的降低,使得應(yīng)用這種先進(jìn)的微處理器來進(jìn)行版權(quán)保護(hù)在成本上成為可行。
目前已經(jīng)有一些電子設(shè)備廠商運(yùn)用此方案,保護(hù)自己的電路設(shè)計(jì)及應(yīng)用軟件,同時(shí)還用ESPU安全模塊存儲(chǔ)設(shè)備的各種參數(shù)和信息,作為產(chǎn)品在線更新和售后服務(wù)的唯一安全標(biāo)識(shí)。作為嵌入式版權(quán)保護(hù)的一種解決方案,北京寶興達(dá)信息技術(shù)有限公司希望本方案能夠給眾多設(shè)計(jì)者提供一個(gè)新的思路和借鑒。
評(píng)論