專利名稱:一種加密系統(tǒng)、方法及單片機(jī)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種加密系統(tǒng)、方法及單片機(jī)系統(tǒng)。
背景技術(shù):
單片機(jī)一般都有內(nèi)部R0M/EEPR0M/FLASH供用戶存放程序。為了防止未經(jīng)授權(quán)訪問(wèn)或拷貝單片機(jī)的機(jī)內(nèi)程序,大部分單片機(jī)都帶有加密鎖定位或者加密字節(jié),以保護(hù)片內(nèi)程序。如果在編程時(shí)加密鎖定位被鎖定,就無(wú)法用普通編程器直接讀取單片機(jī)內(nèi)的程序,這就是所謂拷貝保護(hù)或者說(shuō)鎖定功能。事實(shí)上,上述保護(hù)措施很脆弱,容易被單片機(jī)攻擊者破解。單片機(jī)攻擊者借助專用設(shè)備或者自制設(shè)備,利用單片機(jī)芯片設(shè)計(jì)上的漏洞或軟件缺陷,通過(guò)多種技術(shù)手段,就可以從芯片中提取關(guān)鍵信息,獲取單片機(jī)內(nèi)程序。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種更有效的防止非法拷貝的加密系統(tǒng)及其方法。上述技術(shù)問(wèn)題是這樣解決的
本發(fā)明首先提供一種加密系統(tǒng),包括具有第一接口和第二接口的單片機(jī)、與所述單片機(jī)連接的存儲(chǔ)器、其兩端分別連接于所述第一接口和第二接口的電阻,和其兩端分別連接于所述第二接口和地的電容;
所述存儲(chǔ)器存儲(chǔ)有預(yù)設(shè)時(shí)間值,所述單片機(jī)通過(guò)所述第一接口和第二接口分別對(duì)所述電容進(jìn)行充放電,并監(jiān)視所述電容的充放電時(shí)間,并與所述預(yù)設(shè)時(shí)間值相比較,以判斷是否為非法讀寫(xiě)。相應(yīng)的,本發(fā)明還提供一種采用所述的加密系統(tǒng)的加密方法,包括如下步驟 當(dāng)單片機(jī)通電時(shí),第一接口輸出為高電平,第一接口通過(guò)電阻,對(duì)電容進(jìn)行充電,由于
第一接口通過(guò)電阻對(duì)電容充電;
單片機(jī)對(duì)串口第二接口的電平進(jìn)行檢測(cè),當(dāng)單片機(jī)檢測(cè)到第二接口的電平為高電平時(shí),第一接口輸出為低電平,此時(shí)第二接口通過(guò)電阻對(duì)電容放電,同時(shí)單片機(jī)內(nèi)部計(jì)時(shí)器開(kāi)始計(jì)時(shí);
當(dāng)單片機(jī)檢測(cè)到第二接口的電平為低電平時(shí),單片機(jī)內(nèi)部計(jì)時(shí)器計(jì)時(shí)結(jié)束; 獲取測(cè)試電阻電容的充放電時(shí)間并與存儲(chǔ)器上的預(yù)設(shè)時(shí)間值比較,如果比較值不在特定范圍內(nèi),程式不工作;如果比較值在特定范圍內(nèi),則程式正常運(yùn)行。另外,本發(fā)明還提供一種單片機(jī)系統(tǒng),包括所述的加密系統(tǒng)。在現(xiàn)有技術(shù)中,單片機(jī)攻擊者借助專用設(shè)備或者自制設(shè)備,利用單片機(jī)芯片設(shè)計(jì)上的漏洞或軟件缺陷,通過(guò)多種技術(shù)手段,就可以從芯片中提取關(guān)鍵信息,獲取單片機(jī)內(nèi)程序。這樣的話,科研人員辛辛苦苦的勞動(dòng)成果就會(huì)付之東流。單片機(jī)程序被盜,科研人員的勞動(dòng)成果得不到保障,不但使編寫(xiě)程序的科研人員的研究積極性受挫,而且大大減少了基于單片機(jī)的新產(chǎn)品的產(chǎn)生。采用本發(fā)明的技術(shù)方案,當(dāng)單片機(jī)通電時(shí),第一接口輸出為高電平,第一接口通過(guò)電阻,對(duì)電容進(jìn)行充電,由于第一接口通過(guò)電阻對(duì)電容充電,電容電壓會(huì)慢慢升高,也就是第二接口的電壓會(huì)慢慢升高,同時(shí)單片機(jī)對(duì)串口第二接口的電平進(jìn)行檢測(cè)。當(dāng)單片機(jī)檢測(cè)到第二接口的電平為高電平時(shí),第一接口輸出為低電平,此時(shí)第二接口通過(guò)電阻對(duì)電容放電,同時(shí)單片機(jī)內(nèi)部計(jì)時(shí)器開(kāi)始計(jì)時(shí)。由于第一接口通過(guò)電阻對(duì)電容放電,電容正極端的電壓會(huì)慢慢下降,也就是第二接口的電壓會(huì)慢慢下降。當(dāng)單片機(jī)檢測(cè)到第二接口的電平為低電平時(shí),單片機(jī)內(nèi)部計(jì)時(shí)器計(jì)時(shí)結(jié)束。單片機(jī)保存計(jì)時(shí)器所記錄的時(shí)間,存儲(chǔ)到單片機(jī)的內(nèi)部存儲(chǔ)器中,相當(dāng)于每一個(gè)單片機(jī)或產(chǎn)品按照自身特點(diǎn),編上了唯一的編碼。單片機(jī)或產(chǎn)品每次上電時(shí),測(cè)試電阻電容的充放電時(shí)間并與存儲(chǔ)器上的數(shù)據(jù)比較。如果比較數(shù)據(jù)不在特定范圍內(nèi),程式不工作;如果電容充放電時(shí)間并與存儲(chǔ)器上的數(shù)據(jù)相同或者在特定范圍內(nèi),則程式正常運(yùn)行。按該加密方案處置之后的單片機(jī)系統(tǒng),如果將單片機(jī)和存儲(chǔ)器數(shù)據(jù)讀出來(lái)寫(xiě)入另外的單片機(jī)和存儲(chǔ)器中,由于解密者缺失進(jìn)入特定模式條件,無(wú)法將帶有自身特點(diǎn)的充放電時(shí)間寫(xiě)入單片機(jī)系統(tǒng)內(nèi)存儲(chǔ)器上,并且由于時(shí)間常數(shù)的不確定性以及和單片機(jī)時(shí)鐘系統(tǒng)的偏差,與特定時(shí)間常數(shù)相一致的概率是很小的,即批量生產(chǎn)時(shí)測(cè)試充放電時(shí)間很難做到和某個(gè)特定數(shù)值一致,導(dǎo)致程式不能正常運(yùn)行,達(dá)到程序加密的目的。所述加密方法,不但提高了保密的程度,很好的保護(hù)研發(fā)人員的勞動(dòng)成果,而且大大增大了盜竊者的盜竊難度,使盜竊者不易盜取單片機(jī)里面的程序。優(yōu)選的,所述電容采用電解電容。優(yōu)選的,所述第一接口和第二接口分別采用串口。
圖1是本發(fā)明加密系統(tǒng)一種實(shí)施例的結(jié)構(gòu)框圖; 圖2是本發(fā)明加密方法一種實(shí)施例的流程圖。
具體實(shí)施例方式下面結(jié)合附圖,對(duì)本發(fā)明的較優(yōu)的實(shí)施例作進(jìn)一步的詳細(xì)說(shuō)明
如圖ι所示,一種加密系統(tǒng),包括具有第一接口 1/01和第二接口 1/02的單片機(jī)101、 與所述單片機(jī)101連接的存儲(chǔ)器102、其兩端分別連接于所述第一接口 1/01和第二接口 I/ 02的電阻103,和其兩端分別連接于所述第二接口 1/02和地的電容104 ;
所述存儲(chǔ)器102存儲(chǔ)有預(yù)設(shè)時(shí)間值,所述單片機(jī)101通過(guò)所述第一接口 1/01和第二接口 1/02分別對(duì)所述電容104進(jìn)行充放電,并監(jiān)視所述電容104的充放電時(shí)間,并與所述預(yù)設(shè)時(shí)間值相比較,以判斷是否為非法讀寫(xiě)。其中,所述電容104采用電解電容。所述第一接口 1/01和第二接口 1/02分別采用串口。如圖2所示,采用所述的加密系統(tǒng)的加密方法,包括如下步驟
當(dāng)單片機(jī)通電時(shí),第一接口輸出為高電平,第一接口通過(guò)電阻,對(duì)電容進(jìn)行充電,由于第一接口通過(guò)電阻對(duì)電容充電;
單片機(jī)對(duì)串口第二接口的電平進(jìn)行檢測(cè),當(dāng)單片機(jī)檢測(cè)到第二接口的電平為高電平時(shí),第一接口輸出為低電平,此時(shí)第二接口通過(guò)電阻對(duì)電容放電,同時(shí)單片機(jī)內(nèi)部計(jì)時(shí)器開(kāi)始計(jì)時(shí);
當(dāng)單片機(jī)檢測(cè)到第二接口的電平為低電平時(shí),單片機(jī)內(nèi)部計(jì)時(shí)器計(jì)時(shí)結(jié)束; 獲取測(cè)試電阻電容的充放電時(shí)間并與存儲(chǔ)器上的預(yù)設(shè)時(shí)間值比較,如果比較值不在特定范圍內(nèi),程式不工作;如果比較值在特定范圍內(nèi),則程式正常運(yùn)行。
以上內(nèi)容是結(jié)合具體的優(yōu)選實(shí)施方式對(duì)本發(fā)明所作的進(jìn)一步詳細(xì)說(shuō)明,不能認(rèn)定本發(fā)明的具體實(shí)施只局限于這些說(shuō)明。對(duì)于本發(fā)明所屬技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干簡(jiǎn)單推演或替換,都應(yīng)當(dāng)視為屬于本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種加密系統(tǒng),其特征在于,包括具有第一接口和第二接口的單片機(jī)、與所述單片機(jī)連接的存儲(chǔ)器、其兩端分別連接于所述第一接口和第二接口的電阻,和其兩端分別連接于所述第二接口和地的電容;所述存儲(chǔ)器存儲(chǔ)有預(yù)設(shè)時(shí)間值,所述單片機(jī)通過(guò)所述第一接口和第二接口分別對(duì)所述電容進(jìn)行充放電,并監(jiān)視所述電容的充放電時(shí)間,并與所述預(yù)設(shè)時(shí)間值相比較,以判斷是否為非法讀寫(xiě)。
2.如權(quán)利要求1所述的加密系統(tǒng),其特征在于,所述電容采用電解電容。
3.如權(quán)利要求1所述的加密系統(tǒng),其特征在于,所述第一接口和第二接口分別采用串
4.一種采用如權(quán)利要求1所述的加密系統(tǒng)的加密方法,其特征在于,包括如下步驟 當(dāng)單片機(jī)通電時(shí),第一接口輸出為高電平,第一接口通過(guò)電阻,對(duì)電容進(jìn)行充電,由于第一接口通過(guò)電阻對(duì)電容充電;單片機(jī)對(duì)串口第二接口的電平進(jìn)行檢測(cè),當(dāng)單片機(jī)檢測(cè)到第二接口的電平為高電平時(shí),第一接口輸出為低電平,此時(shí)第二接口通過(guò)電阻對(duì)電容放電,同時(shí)單片機(jī)內(nèi)部計(jì)時(shí)器開(kāi)始計(jì)時(shí);當(dāng)單片機(jī)檢測(cè)到第二接口的電平為低電平時(shí),單片機(jī)內(nèi)部計(jì)時(shí)器計(jì)時(shí)結(jié)束; 獲取測(cè)試電阻電容的充放電時(shí)間并與存儲(chǔ)器上的預(yù)設(shè)時(shí)間值比較,如果比較值不在特定范圍內(nèi),程式不工作;如果比較值在特定范圍內(nèi),則程式正常運(yùn)行。
5.如權(quán)利要求4所述的加密方法,其特征在于,所述電容采用電解電容。
6.如權(quán)利要求4所述的加密方法,其特征在于,所述第一接口和第二接口分別采用串□。
7.一種單片機(jī)系統(tǒng),其特征在于,包括如權(quán)利要求1所述的加密系統(tǒng)。
8.如權(quán)利要求7所述的單片機(jī)系統(tǒng),其特征在于,所述電容采用電解電容。
9.如權(quán)利要求7所述的單片機(jī)系統(tǒng),其特征在于,所述第一接口和第二接口分別采用串口。
全文摘要
本發(fā)明提供一種加密系統(tǒng)、方法及單片機(jī)系統(tǒng)。一種加密系統(tǒng),包括具有第一接口和第二接口的單片機(jī)、與所述單片機(jī)連接的存儲(chǔ)器、其兩端分別連接于所述第一接口和第二接口的電阻,和其兩端分別連接于所述第二接口和地的電容;所述存儲(chǔ)器存儲(chǔ)有預(yù)設(shè)時(shí)間值,所述單片機(jī)通過(guò)所述第一接口和第二接口分別對(duì)所述電容進(jìn)行充放電,并監(jiān)視所述電容的充放電時(shí)間,并與所述預(yù)設(shè)時(shí)間值相比較,以判斷是否為非法讀寫(xiě)。
文檔編號(hào)G06F21/22GK102289629SQ20111020876
公開(kāi)日2011年12月21日 申請(qǐng)日期2011年7月25日 優(yōu)先權(quán)日2011年7月25日
發(fā)明者姜毅, 鄔明貴 申請(qǐng)人:深圳和而泰智能控制股份有限公司