嵌入式安全保密模塊的設(shè)計(jì)及在軟件版權(quán)保護(hù)中的應(yīng)用
摘要:
隨著科學(xué)技術(shù)日新月異,計(jì)算機(jī)應(yīng)用的普及,帶來了軟件開發(fā)領(lǐng)域的蓬勃發(fā)展,軟件開發(fā)的艱辛與軟件盜用的輕而易舉,讓許多不法盜版商享受到了世間難有的免費(fèi)午餐,而軟件開發(fā)者和版權(quán)所有者看著自己艱苦奮斗得到的勞動成果卻只能感嘆萬分。所以,如何保護(hù)開發(fā)軟件的版權(quán),變得越來越重要了,我們不可能把版權(quán)的保護(hù)僅僅寄托在有關(guān)的法律上,而且實(shí)施版權(quán)的自我保護(hù)也成為必要的手段。
隨著嵌入式系統(tǒng)逐漸走進(jìn)我們的日常生活,它也漸漸地和Windows一樣為人熟知,作為應(yīng)用軟件,嵌入式軟件雖然面對的不是最終的消費(fèi)者,而是硬件生產(chǎn)廠商,盡管不會輕易發(fā)生盜版軟件的現(xiàn)象,但如何量化軟件的使用量,如何保護(hù)軟件廠商的利益,這也是我們作為軟件開發(fā)者和版權(quán)所有者值得重視的問題。
本項(xiàng)目設(shè)計(jì)方案是基于FPGA的嵌入式安全保密模塊ESMF (Embedded Security Module based on FPGA),并通過高密計(jì)算返回安全認(rèn)證碼,通過安全認(rèn)證碼與密匙校驗(yàn),為用戶解決高密數(shù)據(jù)存儲、身份認(rèn)證等很多安全問題,這將為軟件版權(quán)的保護(hù)提供有效的途徑。
1、項(xiàng)目背景
1.1 研究背景
如今計(jì)算機(jī)應(yīng)用的飛速發(fā)展,使得軟件的應(yīng)用也突飛猛進(jìn),促進(jìn)了軟件開發(fā)領(lǐng)域高速的發(fā)展,使得人們的學(xué)習(xí)、工作、生活更為便捷、簡單、高效!可當(dāng)我們感受軟件給我們帶來利益的同時(shí),又有誰會去憐憫那些辛勤為軟件開發(fā)做出犧牲的開發(fā)者和版權(quán)所者的勞動成果呢?因此,軟件開發(fā)者和版權(quán)所者就如何解決保護(hù)軟件的版權(quán)問題,就顯得尤為急迫。
本設(shè)計(jì)項(xiàng)目通過ESMF設(shè)計(jì),有效地解決了保護(hù)軟件版權(quán)的問題,實(shí)現(xiàn)一套軟件對應(yīng)一個密匙的模式,從而達(dá)到對軟件版權(quán)實(shí)施強(qiáng)有力的保護(hù)。
1.2 本項(xiàng)目的優(yōu)點(diǎn)
本項(xiàng)目采用硬件描述語言Verilog HDL進(jìn)行編程設(shè)計(jì),主要完成基于FPGA的嵌入式安全保密模塊ESMF的設(shè)計(jì),通過安全保密保密模塊ESMF成功的身份認(rèn)證,應(yīng)用軟件才會繼續(xù)運(yùn)行,否則,軟件終止執(zhí)行,從而起到軟件版權(quán)的保護(hù)作用。
本設(shè)計(jì)項(xiàng)目具有如下優(yōu)點(diǎn):
(1)具有高性價(jià)比、高安全性、高可靠性。
(2)嵌入式安全保密模塊ESMF具有唯一的序列號S/N。
(3)電路設(shè)計(jì)簡單,易編程,高效率。
1.3應(yīng)用拓展
本設(shè)計(jì)項(xiàng)目可應(yīng)用其他保密領(lǐng)域,譬如保險(xiǎn)柜行業(yè),保險(xiǎn)密匙,安全保險(xiǎn)門等。
2、項(xiàng)目方案
2.1 實(shí)現(xiàn)功能
采用硬件描述語言Verilog HDL進(jìn)行設(shè)計(jì),內(nèi)部實(shí)現(xiàn)Chaos加密算法,過串行接口與外部芯片進(jìn)行數(shù)據(jù)交換。最終封裝為IP核,方便在FPGA器件中調(diào)用與實(shí)現(xiàn)。具有高性價(jià)比、高安全性、高可靠性的特點(diǎn),應(yīng)用于各種嵌入式終端實(shí)現(xiàn)數(shù)據(jù)的安全存儲,實(shí)現(xiàn)終端的身份識別與認(rèn)證等功能。
2.2 方案設(shè)計(jì)原理
本項(xiàng)目是基于FPGA的嵌入式安全保密模塊ESMF,完成軟件運(yùn)行前需要身份認(rèn)證,以下為本設(shè)計(jì)項(xiàng)目實(shí)施方案的硬件系統(tǒng)框架圖:
圖1 基于FPGA的嵌入式安全保密模塊ESMF
2.3 認(rèn)證流程
外接處理器主要分為數(shù)據(jù)發(fā)送、數(shù)據(jù)接收和數(shù)據(jù)處理部分。
身份認(rèn)證過程如下:
- ESMF復(fù)位,從S/N存儲器中調(diào)出序列號S/N,向處理器發(fā)送序列號S/N。
- 處理器提取預(yù)設(shè)的編碼MK,經(jīng)過Chaos加密算法CSK=Chaos(MK,S/N),計(jì)算得出密鑰CSK。
- 處理器發(fā)送CSK,把CSK保存到CSK存儲器中。
- 處理器隨機(jī)產(chǎn)生一個隨機(jī)數(shù)RND,經(jīng)過Chaos加密算法Y=Chaos(CSK,RND),計(jì)算得出Y值。
- 處理器把隨機(jī)數(shù)RND發(fā)送給ESMF。
- ESMF接收到RND后,調(diào)用密鑰SCK,通過Chaos加密算法X=Chaos(CSK,RND),計(jì)算得出X值。
- 將X值返回到處理器,將X與Y進(jìn)行校驗(yàn),判斷是否相等。若X與Y相等,那么身份認(rèn)證成功,軟件繼續(xù)運(yùn)行,否則,軟件終止執(zhí)行。
以下是系統(tǒng)運(yùn)行的流程圖:
圖2 身份認(rèn)證流程圖
評論