欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

防止固件剽竊的方法

文檔序號(hào):6548286閱讀:226來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):防止固件剽竊的方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種用于電子設(shè)備的固件(Firmware),特別是涉及一種用加密固件以防止固件被剽竊的方法。
背景技術(shù)
隨著軟件科技的快速發(fā)展,未經(jīng)軟件或信息的創(chuàng)作者或合法擁有者授權(quán)而使用或制造復(fù)制的軟件或信息剽竊行為也日趨泛濫,剽竊行為尤其常見(jiàn)于計(jì)算機(jī)應(yīng)用軟件業(yè)。基于個(gè)人使用目的或是為了獲取不法的商業(yè)利益,許多人經(jīng)常進(jìn)行未經(jīng)授權(quán)的應(yīng)用軟件非法復(fù)制的行為。
另一個(gè)受到剽竊行為影響的領(lǐng)域?yàn)橛糜谶\(yùn)作電子設(shè)備的固件,如光驅(qū)或硬盤(pán)機(jī)的固件。這些電子設(shè)備的固件通常儲(chǔ)存于該電子設(shè)備的非易失性存儲(chǔ)器中,如閃存(Flash Memory)、只讀存儲(chǔ)器(ROM)或電子擦除可編程只讀存儲(chǔ)器(EEPROM)。任何人只要讀取非易失性存儲(chǔ)器(Nonvolatile Memory)中的內(nèi)容即可輕易地復(fù)制該固件。舉例來(lái)說(shuō),假設(shè)某公司欲了解其它競(jìng)爭(zhēng)者所制作的DVD(Digital Versatile Disc,DVD)燒錄器的固件。剽竊者可輕易地復(fù)制該燒錄器的固件,并可觀察與分析該固件可執(zhí)行的程序代碼。由于大部份固件創(chuàng)作者皆希望能保密該固件的內(nèi)容,因此需要一方法來(lái)加密固件以防止競(jìng)爭(zhēng)者獲得該固件的可執(zhí)行的程序代碼。

發(fā)明內(nèi)容
因此本發(fā)明的主要目的是提供一種防止固件被復(fù)制的方法,用以解決上述的問(wèn)題。
本發(fā)明的實(shí)施例提供一種用以防止固件剽竊的方法,該固件包含可于一電子設(shè)備執(zhí)行的固件碼,該方法包含將該可執(zhí)行的固件碼加密為加密固件碼;儲(chǔ)存該加密固件碼于該電子設(shè)備的一非易失性存儲(chǔ)器中;儲(chǔ)存一譯碼密鑰于該電子設(shè)備的一譯碼電路;利用該電子設(shè)備的譯碼電路對(duì)該加密固件碼進(jìn)行譯碼,以解出該可執(zhí)行的固件碼;儲(chǔ)存該可執(zhí)行的固件碼于該電子設(shè)備的一易失性存儲(chǔ)器中;以及執(zhí)行儲(chǔ)存于該易失性存儲(chǔ)器中的固件碼,以運(yùn)作該電子設(shè)備。
本發(fā)明的優(yōu)點(diǎn)為儲(chǔ)存于非易失性存儲(chǔ)器中的固件是經(jīng)過(guò)加密的固件碼。由于該固件碼已加密,因此復(fù)制該非易失性存儲(chǔ)器中的內(nèi)容將無(wú)法讀取可執(zhí)行的固件碼。此外,該可執(zhí)行的固件碼是由易失性存儲(chǔ)器來(lái)執(zhí)行,該易失性存儲(chǔ)器提供比非易失性存儲(chǔ)器更快的存取時(shí)間。


圖1為運(yùn)用本發(fā)明方法的電子設(shè)備的示意圖。
圖2為為本發(fā)明的第一實(shí)施例中的固件更新系統(tǒng)的功能框圖。
圖3為更新電子設(shè)備的固件的流程圖。
圖4為譯碼與執(zhí)行閃存中的加密固件碼的流程圖。
圖5為本發(fā)明的第二實(shí)施例中的固件更新系統(tǒng)的功能框圖。
圖6為更新電子設(shè)備的固件的流程圖。
附圖符號(hào)說(shuō)明10 固件更新系統(tǒng)20 主機(jī)計(jì)算機(jī)22 軟件程序24 接口30 電子設(shè)備32 閃存40 主要芯片42 譯碼函數(shù)44 解密密鑰50 動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器52 中央處理單元54 固件更新電路200固件更新系統(tǒng)220主機(jī)計(jì)算機(jī)222軟件程序
225 固件燒錄器230 電子設(shè)備232 閃存240 主要芯片242 譯碼函數(shù)244 解碼密鑰250 動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器252 中央處理單元具體實(shí)施方式
請(qǐng)參閱圖1。圖1為運(yùn)用本發(fā)明方法的一電子設(shè)備30。電子設(shè)備30包含一閃存32或其它非易失性存儲(chǔ)器用以?xún)?chǔ)存加密的固件碼。電子設(shè)備30可為使用固件碼的任何種類(lèi)的設(shè)備。例如,電子設(shè)備30可為一臺(tái)光驅(qū)、一硬盤(pán)或一部計(jì)算機(jī)。若電子設(shè)備30為一部計(jì)算機(jī),則該計(jì)算機(jī)的基本輸入輸出系統(tǒng)(Basic Input Output System,BIOS)可儲(chǔ)存于閃存32中。
當(dāng)電子設(shè)備30運(yùn)作時(shí),一主要芯片40從閃存32中讀取加密固件碼,并將該加密固件碼譯碼為可執(zhí)行的固件碼。主要芯片40接著將可執(zhí)行的固件碼儲(chǔ)存到一動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(Dynamic Random Access Memory,DRAM)50或其它易失性存儲(chǔ)器中。因此,電子設(shè)備30在運(yùn)作時(shí)僅將可執(zhí)行的固件碼暫時(shí)性地儲(chǔ)存到動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器50中。當(dāng)電子設(shè)備30電源被關(guān)閉時(shí),動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器50中的存放內(nèi)容會(huì)被消除,而可執(zhí)行的固件碼即不存在于動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器50中。雖然加密固件碼仍可從閃存32中讀取,但在無(wú)法得知解密密鑰(Decipher Key)的情況下即無(wú)法將加密固件碼譯碼。
請(qǐng)參閱圖2。圖2為本發(fā)明的第一實(shí)施例中的一固件更新系統(tǒng)10的功能框圖。一主機(jī)計(jì)算機(jī)20連接至電子設(shè)備30用以更新電子設(shè)備30的固件。一軟件程序22安裝于主機(jī)計(jì)算機(jī)20上用以將可執(zhí)行的固件碼加密為加密固件碼。主機(jī)計(jì)算機(jī)20隨后經(jīng)由主機(jī)計(jì)算機(jī)20的一接口24將該加密固件碼傳送到電子設(shè)備30。接口24可為諸如IDE、SCSI、USB或IEEE1394接口中的任一接口。
在固件更新系統(tǒng)10的第一實(shí)施例中,加密固件碼經(jīng)由主機(jī)計(jì)算機(jī)20的接口24傳送到一固件更新電路54。固件更新電路54以從主機(jī)計(jì)算機(jī)20所接收到的新加密固件碼取代先前閃存32中所存放的內(nèi)容。另外,一解密密鑰44儲(chǔ)存于電子設(shè)備30的主要芯片40上,使主要芯片40可利用其譯碼函數(shù)42將該加密固件碼加以解碼。
主要芯片40的譯碼函數(shù)42將儲(chǔ)存于閃存32上的加密固件碼加以譯碼后輸出可執(zhí)行的固件碼??蓤?zhí)行的固件碼接著被儲(chǔ)存于動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器50上。電子設(shè)備30的一中央處理單元(Central Processing Unit,CPU)52執(zhí)行該儲(chǔ)存于動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器50的可執(zhí)行的固件碼,藉此控制電子設(shè)備30的運(yùn)作。
請(qǐng)參閱圖3并參照?qǐng)D2。圖3為一流程圖顯示本發(fā)明的第一實(shí)施例如何更新電子設(shè)備30上的固件。以下將詳述流程中的各步驟。
步驟100開(kāi)始;步驟102主機(jī)計(jì)算機(jī)20加載被傳送到電子設(shè)備30的可執(zhí)行的固件碼;步驟104軟件程序22利用一加密密鑰將該可執(zhí)行的固件碼加密為加密固件碼;步驟106主機(jī)計(jì)算機(jī)20的軟件程序22傳送該加密固件碼至電子設(shè)備30的固件更新電路54;步驟108固件更新電路54將該加密固件碼載入至閃存32;步驟110譯碼密鑰44被儲(chǔ)存到電子設(shè)備30的主要芯片40上;以及步驟112結(jié)束。
用以將該可執(zhí)行的固件碼加密為加密固件碼的加密密鑰與解碼密鑰44為相同的密鑰。如業(yè)界所已知的技術(shù),解碼與加密的運(yùn)作是互為相反的。
請(qǐng)參閱圖4并參照?qǐng)D2。圖4為一流程圖顯示電子設(shè)備30如何譯碼與執(zhí)行儲(chǔ)存于閃存32的加密固件碼。以下將詳述流程中的各步驟。
步驟120電子設(shè)備30開(kāi)機(jī);步驟122主要芯片40上的譯碼函數(shù)42從閃存32讀取加密固件碼;步驟124譯碼函數(shù)42利用譯碼密鑰44將該加密固件碼加以譯碼并儲(chǔ)存可執(zhí)行的固件碼于動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器50中;步驟126中央處理單元52執(zhí)行該儲(chǔ)存于動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器50的可執(zhí)行的固件碼,藉此運(yùn)作電子設(shè)備30;以及步驟128結(jié)束。
除了利用固件更新電路54來(lái)更新閃存32的內(nèi)容外,仍有其它方法可用以更新電子設(shè)備30的固件。
請(qǐng)參閱圖5。圖5為本發(fā)明的第二實(shí)施例中的一固件更新系統(tǒng)200的功能框圖。一主機(jī)計(jì)算機(jī)220連接至一電子設(shè)備230用以更新電子設(shè)備230的固件。一軟件程序222安裝于主機(jī)計(jì)算機(jī)220上用以將可執(zhí)行的固件碼加密為加密固件碼。主機(jī)計(jì)算機(jī)220隨后將該加密固件碼傳送到一固件燒錄器(Firmware Burner)225,固件燒錄器225可將電子設(shè)備230上閃存232的內(nèi)容更新為該加密固件碼。固件燒錄器225是一特殊工具用以更新閃存232的內(nèi)容。另外,一譯碼密鑰244儲(chǔ)存于一主要芯片240中,使主要芯片240可利用一譯碼函數(shù)242將加密固件碼加以解碼。
主要芯片240的譯碼函數(shù)242將儲(chǔ)存于閃存232的加密固件碼加以譯碼并輸出可執(zhí)行的固件碼。該可執(zhí)行的固件碼隨后被儲(chǔ)存于一動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器250上。電子設(shè)備230的一中央處理單元252執(zhí)行該儲(chǔ)存于動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器250的可執(zhí)行的固件碼,藉此控制電子設(shè)備230的運(yùn)作。
第二實(shí)施例的固件更新系統(tǒng)200與第一實(shí)施例的固件更新系統(tǒng)10的不同處在于其更新閃存232所存內(nèi)容的方法。為了詳細(xì)說(shuō)明本發(fā)明的第二實(shí)施例如何更新電子設(shè)備230的固件,請(qǐng)參閱圖6的流程圖并參照?qǐng)D5。以下將詳述流程中的各步驟。
步驟300開(kāi)始;步驟302主機(jī)計(jì)算機(jī)220加載被傳送到電子設(shè)備230的可執(zhí)行的固件碼;步驟304軟件程序222利用一加密密鑰將該可執(zhí)行的固件碼加密為加密固件碼;步驟306主機(jī)計(jì)算機(jī)220的軟件程序222傳送該加密固件碼至固件燒錄器225;步驟308固件燒錄器225將該加密固件碼儲(chǔ)存至閃存232;步驟310將譯碼密鑰244儲(chǔ)存到電子設(shè)備230的主要芯片240中;以及步驟312結(jié)束。
與已知技術(shù)相比,利用本發(fā)明方法的電子設(shè)備僅將加密固件碼儲(chǔ)存于一非易失性存儲(chǔ)器中。該加密固件碼僅在電子設(shè)備運(yùn)作時(shí)被譯碼并暫時(shí)儲(chǔ)存在一易失性存儲(chǔ)器。因此,可執(zhí)行的固件碼在該電子設(shè)備電源關(guān)閉時(shí)無(wú)法被讀取,而只有該加密固件碼可被讀取。由于該譯碼密鑰不易被得知,所以任何人皆不易讀取該電子設(shè)備所使用的可執(zhí)行的固件碼。由于固件碼已被加密,因此僅復(fù)制非易失性存儲(chǔ)器中所存放的內(nèi)容并不能讀取到可執(zhí)行的固件碼。而且該可執(zhí)行的固件碼是由易失性存儲(chǔ)器所執(zhí)行,易失性存儲(chǔ)器具有比非易失性存儲(chǔ)器更快的存取速度。
以上所述僅為本發(fā)明的較佳實(shí)施例,凡依本發(fā)明的權(quán)利要求所做的均等變化與修飾,皆應(yīng)屬本發(fā)明專(zhuān)利的涵蓋范圍。
權(quán)利要求
1.一種用以防止固件剽竊的方法,該固件包含可于一電子設(shè)備執(zhí)行的固件碼,該方法包含將該可執(zhí)行的固件碼加密為加密固件碼;儲(chǔ)存該加密固件碼于該電子設(shè)備的一非易失性存儲(chǔ)器中;儲(chǔ)存一譯碼密鑰于該電子設(shè)備的一譯碼電路;利用該電子設(shè)備的譯碼電路對(duì)該加密固件碼進(jìn)行譯碼,以解出該可執(zhí)行的固件碼;儲(chǔ)存該可執(zhí)行的固件碼于該電子設(shè)備的一易失性存儲(chǔ)器中;以及執(zhí)行儲(chǔ)存于該易失性存儲(chǔ)器中的固件碼,以運(yùn)作該電子設(shè)備。
2.如權(quán)利要求1所述的方法,其中安裝于一主機(jī)計(jì)算機(jī)中的軟件程序用以將該可執(zhí)行的固件碼加密為該加密固件碼。
3.如權(quán)利要求2所述的方法,其中安裝于該主機(jī)計(jì)算機(jī)中的軟件程序傳送該加密固件碼至該電子設(shè)備的一固件更新電路,且該固件更新電路儲(chǔ)存該加密固件碼于該電子設(shè)備的非易失性存儲(chǔ)器中。
4.如權(quán)利要求2所述的方法,其中安裝于該主機(jī)計(jì)算機(jī)中的軟件程序傳送該加密固件碼至一固件燒錄器,該固件燒錄器連接至該電子設(shè)備,且該固件燒錄器儲(chǔ)存該加密固件碼于該電子設(shè)備的非易失性存儲(chǔ)器中。
5.如權(quán)利要求1所述的方法,其中該非易失性存儲(chǔ)器為閃存。
6.如權(quán)利要求1所述的方法,其中該易失性存儲(chǔ)器為動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器。
7.如權(quán)利要求1所述的方法,其中該電子設(shè)備為一光驅(qū)。
8.如權(quán)利要求1所述的方法,其中該電子設(shè)備為一硬盤(pán)。
9.如權(quán)利要求1所述的方法,其中該電子設(shè)備為一計(jì)算機(jī),且該可執(zhí)行的固件碼為該計(jì)算機(jī)的一基本輸入輸出系統(tǒng)的程序代碼。
全文摘要
一種用以防止固件剽竊的方法,該固件包含可于一電子設(shè)備執(zhí)行的固件碼,該方法包含將該可執(zhí)行的固件碼加密為加密固件碼;儲(chǔ)存該加密固件碼于該電子設(shè)備的一非易失性存儲(chǔ)器中;儲(chǔ)存一譯碼密鑰于該電子設(shè)備的一譯碼電路;利用該電子設(shè)備的譯碼電路對(duì)該加密固件碼進(jìn)行譯碼,以解出該可執(zhí)行的固件碼;儲(chǔ)存該可執(zhí)行的固件碼于該電子設(shè)備的一易失性存儲(chǔ)器中;以及執(zhí)行儲(chǔ)存于該易失性存儲(chǔ)器中的固件碼,以運(yùn)作該電子設(shè)備。
文檔編號(hào)G06F9/00GK1696864SQ20051006699
公開(kāi)日2005年11月16日 申請(qǐng)日期2005年4月26日 優(yōu)先權(quán)日2004年5月13日
發(fā)明者潘天惠 申請(qǐng)人:明基電通股份有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
云龙县| 营山县| 清远市| 阿城市| 泰和县| 正蓝旗| 高要市| 始兴县| 丰城市| 宝清县| 华安县| 阳谷县| 师宗县| 射洪县| 新野县| 安吉县| 秦皇岛市| 乐山市| 海兴县| 安顺市| 伊金霍洛旗| 德州市| 新源县| 南昌县| 富阳市| 双柏县| 宜君县| 天镇县| 犍为县| 寿阳县| 兴海县| 武隆县| 习水县| 乐陵市| 壶关县| 邵东县| 绵阳市| 永丰县| 托克逊县| 东乌珠穆沁旗| 英德市|