一種通過遠(yuǎn)程服務(wù)器的硬件授權(quán)系統(tǒng)和方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種硬件授權(quán)系統(tǒng)和方法,它通過遠(yuǎn)程服務(wù)器對硬件進(jìn)行授權(quán),屬于計(jì)算機(jī)技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002]硬件加密技術(shù)是一種將加密信息與硬件處理器綁定的信息加密技術(shù),一般采用AES 128位或256位硬件數(shù)據(jù)加密技術(shù)對產(chǎn)品硬件處理器進(jìn)行加密,具備防止暴力破解、密碼猜測、數(shù)據(jù)恢復(fù)等功能。
[0003]目前,已知的硬件加密技術(shù)都是利用存儲在硬件處理器內(nèi)部的存儲器上的加密程序進(jìn)行硬件授權(quán)加密的。由于加密程序本身存儲在硬件處理器上,一旦有人破解了存儲器,則加密程序就喪失了保護(hù)作用。這種授權(quán)加密方法破解難度較低,不能有效的保護(hù)硬件和軟件的知識產(chǎn)權(quán)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明旨在克服目前硬件加密技術(shù)容易破解的缺陷,提供了一種通過遠(yuǎn)程服務(wù)器采取加密算法與硬件處理器分離的方法對硬件處理器進(jìn)行加密授權(quán)的硬件授權(quán)系統(tǒng)和方法。
[0005]本發(fā)明的技術(shù)方案是:一種遠(yuǎn)程加密的硬件授權(quán)系統(tǒng),包括:
網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器,用于存儲加密算法和硬件啟動代碼二進(jìn)制文件,并根據(jù)由本地計(jì)算機(jī)上傳的待授權(quán)硬件處理器的MAC地址,為該硬件處理器算出一個密鑰,再回傳所述密鑰和硬件啟動代碼二進(jìn)制文件給本地計(jì)算機(jī);
本地計(jì)算機(jī),通過網(wǎng)絡(luò)鏈路與所述網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器連接,用于讀取所述硬件處理器CPU的唯一 MAC地址,并上傳至所述網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器,再將網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器傳回的所述密鑰和硬件啟動代碼二進(jìn)制文件燒錄到待授權(quán)硬件處理器的存儲器中,同時將反向解密算法燒錄到所述存儲器中;
待授權(quán)的硬件處理器,通過USB線與所述本地計(jì)算機(jī)連接,用于存儲所述反向解密算法、所述密鑰和啟動代碼二進(jìn)制文件;在所述硬件處理器重啟時,會對存儲的所述密鑰和硬件啟動代碼二進(jìn)制文件進(jìn)行反向解密運(yùn)算,并根據(jù)運(yùn)算結(jié)果判斷所述硬件處理器是否有效。
[0006]所述硬件處理器是人機(jī)界面HMI硬件、PLC、小型PC或者微處理器。
[0007]應(yīng)用于上述硬件授權(quán)系統(tǒng)的硬件授權(quán)方法,它采用將加密和解密程序分別存儲在網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器和硬件處理器中,使加密和解密過程分置兩地,且需要唯一的MAC地址、密鑰和唯一的硬件啟動代碼一一對應(yīng),才能通過校驗(yàn);其工作步驟如下:
步驟1.系統(tǒng)上電,所述本地計(jì)算機(jī)通過USB線讀取待授權(quán)所述硬件處理器CPU的唯一MAC地址;
步驟2.本地計(jì)算機(jī)將讀取的MAC地址上傳到所述網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器; 步驟3.網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器將上傳的MAC地址和內(nèi)存的硬件啟動代碼二進(jìn)制文件輸入到加密算法中算出一個密鑰;
步驟4.網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器將密鑰和硬件啟動代碼二進(jìn)制文件回傳至本地計(jì)算機(jī);
步驟5.本地計(jì)算機(jī)將密鑰和硬件啟動代碼二進(jìn)制文件連同反向解密算法燒錄到待授權(quán)硬件處理器的存儲器中;
步驟6.所述硬件處理器重啟,其內(nèi)存的硬件啟動代碼讀取存儲器中的密鑰;
步驟7.所述硬件啟動代碼調(diào)用反向解密算法,輸入密鑰和本身的硬件啟動代碼二進(jìn)制文件,計(jì)算出所述硬件處理器的校驗(yàn)結(jié)果;
步驟8.判斷校驗(yàn)結(jié)果是否與硬件處理器唯一 MAC地址一致:若一致,所述硬件處理器將繼續(xù)啟動并正常工作;若不一致,所述硬件處理器將停止啟動、無法工作。
[0008]本發(fā)明硬件授權(quán)系統(tǒng)和方法的優(yōu)點(diǎn)是:將加密和解密程序分別放在網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器和待授權(quán)的硬件處理器中,使加密和解密過程分置兩地,且需要唯一的MAC地址、密鑰和唯一的硬件啟動代碼一一對應(yīng),才能通過校驗(yàn)。除非能夠同時破解加密、解密算法,同時獲取唯一的密鑰和硬件啟動代碼,否則無法破解硬件處理器。
【附圖說明】
[0009]圖1是本發(fā)明硬件授權(quán)系統(tǒng)的連接拓?fù)鋱D;
圖2是本發(fā)明硬件授權(quán)方法的硬件處理器加密授權(quán)流程圖;
圖3是本發(fā)明硬件授權(quán)方法的硬件處理器啟動校驗(yàn)流程圖。
【具體實(shí)施方式】
[0010]下面結(jié)合附圖和對本發(fā)明硬件授權(quán)系統(tǒng)和方法的實(shí)施例進(jìn)一步說明。
[0011]本發(fā)明硬件授權(quán)系統(tǒng)裝置如圖1所示,包括網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器(1)、本地計(jì)算機(jī)(2)和硬件處理器HMI (3),網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器(I)和本地計(jì)算機(jī)(2)通過網(wǎng)絡(luò)鏈路連接,本地計(jì)算機(jī)(2)和硬件處理器HMI (3)通過USB線相連。
[0012]網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器(I)存儲加密算法和硬件啟動代碼二進(jìn)制文件,可根據(jù)本地計(jì)算機(jī)(2)上傳的待授權(quán)硬件處理器HMI (3)的MAC地址,為硬件處理器HMI (3)算出一個密鑰,再將密鑰和啟動代碼二進(jìn)制文件回傳給本地計(jì)算機(jī)(2)。
[0013]本地計(jì)算機(jī)(2)可讀取待授權(quán)硬件處理器HMI (3)CPU的唯一 MAC地址,并上傳至網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器(I ),再將網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器(I)傳回的密鑰和啟動代碼二進(jìn)制文件燒錄到待授權(quán)硬件處理器HMI (3)的存儲器EEPROM中,同時將反向解密算法燒錄到EEPROM中。
[0014]硬件處理器HMI (3)的存儲器EEPROM中,存儲了反向解密算法、密鑰和啟動代碼二進(jìn)制文件,當(dāng)硬件處理器HMI (3)被授權(quán)后重啟時,內(nèi)置的啟動代碼會自動讀取密鑰,并對存儲的密鑰和啟動代碼二進(jìn)制文件進(jìn)行反向解密運(yùn)算,并根據(jù)運(yùn)算結(jié)果判斷所述硬件處理器HMI (3)是否有效。
[0015]如圖2所示,系統(tǒng)授權(quán)加密時,本地計(jì)算機(jī)(2)首先讀取硬件處理器HMI (3) CPU的唯一 MAC地址,并上傳到遠(yuǎn)程服務(wù)器(I)上;遠(yuǎn)程服務(wù)器(I)將MAC地址和存儲在遠(yuǎn)程服務(wù)器(I)上的硬件啟動代碼的二進(jìn)制文件輸入到加密算法中,算出一個密鑰,并將此密鑰和硬件啟動代碼的二進(jìn)制文件下發(fā)到本地計(jì)算機(jī)(2);本地計(jì)算機(jī)(2)將此密鑰和硬件啟動代碼二進(jìn)制文件以及反向解密算法燒錄到硬件處理器HMI (3)的存儲器EEPROM中;硬件授權(quán)加密程序結(jié)束。
[0016]如圖3所示,硬件處理器HMI (3)被授權(quán)加密后,以后每次啟動,其內(nèi)存啟動代碼會調(diào)用反向解密算法,根據(jù)密鑰和啟動代碼本身的二進(jìn)制文件計(jì)算出結(jié)果,判斷硬件處理器HMI (3)是否有效:若結(jié)果無效,則啟動代碼停止啟動,硬件處理器HMI (3)將退出工作;若結(jié)果有效,則繼續(xù)啟動,硬件處理器HMI (3)將投入正常工作。
[0017]從上述分析可見:本發(fā)明硬件授權(quán)系統(tǒng)裝置的加密和解密程序分別放在遠(yuǎn)程服務(wù)器(I)和硬件處理器HMI (3)中,密鑰和硬件處理器HMI (3)必須——對應(yīng),硬件處理器HMI(3 )方可工作,破解難度非常大。
[0018]以上僅為本發(fā)明的一個實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的范圍之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種遠(yuǎn)程加密的硬件授權(quán)系統(tǒng),包括:網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器、本地計(jì)算機(jī)和待授權(quán)的硬件處理器,其特征在于: 所述網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器,用于存儲加密算法和硬件啟動代碼二進(jìn)制文件,并根據(jù)由所述本地計(jì)算機(jī)上傳的所述硬件處理器的MAC地址,為該硬件處理器算出一個密鑰,再回傳所述密鑰和硬件啟動代碼二進(jìn)制文件給本地計(jì)算機(jī); 所述本地計(jì)算機(jī),通過網(wǎng)絡(luò)鏈路與所述網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器連接,用于讀取所述硬件處理器CPU的唯一 MAC地址,并上傳至所述網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器,再將網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器傳回的所述密鑰和硬件啟動代碼二進(jìn)制文件燒錄到待授權(quán)硬件處理器的存儲器中,同時將反向解密算法燒錄到所述存儲器中; 所述硬件處理器,通過USB線與所述本地計(jì)算機(jī)連接,用于存儲所述反向解密算法、所述密鑰和啟動代碼二進(jìn)制文件;在所述硬件處理器重啟時,會對存儲的所述密鑰和硬件啟動代碼二進(jìn)制文件進(jìn)行反向解密運(yùn)算,并根據(jù)運(yùn)算結(jié)果判斷所述硬件處理器是否有效。2.如權(quán)利要求1所述的硬件授權(quán)系統(tǒng),其特征在于:所述硬件處理器是人機(jī)界面HMI硬件、PLC、小型PC或者微處理器。3.應(yīng)用于權(quán)利要求1和2所述硬件授權(quán)系統(tǒng)的硬件授權(quán)方法,其特征在于:它采用將加密和解密程序分別存儲在網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器和硬件處理器中,使加密和解密過程分置兩地,且需要唯一的MAC地址、密鑰和唯一的硬件啟動代碼一一對應(yīng),才能通過校驗(yàn);其工作步驟如下: 步驟1.系統(tǒng)上電,所述本地計(jì)算機(jī)通過USB線讀取所述硬件處理器唯一 MAC地址; 步驟2.本地計(jì)算機(jī)將讀取的MAC地址上傳到所述網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器; 步驟3.網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器將上傳的MAC地址和內(nèi)存的硬件啟動代碼二進(jìn)制文件輸入到加密算法中算出一個密鑰; 步驟4.網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器將密鑰和硬件啟動代碼二進(jìn)制文件回傳至本地計(jì)算機(jī); 步驟5.本地計(jì)算機(jī)將密鑰和硬件啟動代碼二進(jìn)制文件連同反向解密算法燒錄到待授權(quán)硬件處理器的存儲器中; 步驟6.所述硬件處理器重啟,其內(nèi)存的硬件啟動代碼讀取存儲器中的密鑰; 步驟7.所述硬件啟動代碼調(diào)用反向解密算法,輸入密鑰和本身的硬件啟動代碼二進(jìn)制文件,計(jì)算出所述硬件處理器的校驗(yàn)結(jié)果; 步驟8.判斷校驗(yàn)結(jié)果是否與硬件處理器唯一 MAC地址一致:若一致,所述硬件處理器將繼續(xù)啟動并正常工作;若不一致,所述硬件處理器將停止啟動、無法工作。
【專利摘要】本發(fā)明提供了一種通過遠(yuǎn)程服務(wù)器采取加密算法與硬件處理器分離的方法對硬件處理器進(jìn)行加密授權(quán)的硬件授權(quán)系統(tǒng)和方法。系統(tǒng)包括網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器、本地計(jì)算機(jī)和硬件處理器;系統(tǒng)將加密和解密程序分別存放在網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器和待授權(quán)的硬件處理器中,使加密和解密過程分置兩地,由網(wǎng)絡(luò)遠(yuǎn)程服務(wù)器通過本地計(jì)算機(jī)為硬件處理器加密授權(quán),硬件處理器啟動時,需要唯一的MAC地址、密鑰和唯一的硬件啟動代碼一一對應(yīng),才能通過校驗(yàn)。除非能夠同時破解加密、解密算法,同時獲取唯一的密鑰和硬件啟動代碼,否則無法破解被本系統(tǒng)加密授權(quán)的硬件處理器。
【IPC分類】G06F21/30
【公開號】CN105184121
【申請?zhí)枴緾N201510553755
【發(fā)明人】劉君, 孫旦均, 馬學(xué)童
【申請人】上海繁易電子科技有限公司
【公開日】2015年12月23日
【申請日】2015年9月2日