一種應(yīng)用驗(yàn)簽方法和裝置的制造方法
【專利摘要】本發(fā)明公開了一種應(yīng)用驗(yàn)簽方法和裝置,所述裝置包括處理單元、存儲單元、加解密單元、啟動(dòng)單元和校驗(yàn)單元;所述存儲單元包括第一存儲區(qū)和第二存儲區(qū)。通過存儲單元的分區(qū)設(shè)置,使得存儲單元中一部分分區(qū)只讀,另一部分分區(qū)可寫可讀,只讀分區(qū)可以用于存儲驗(yàn)簽過程中的重要信息,如公鑰等;可寫可讀的分區(qū)有利于存儲應(yīng)用程序的執(zhí)行代碼,便于對應(yīng)用程序進(jìn)行更新,大大提高了SOC系統(tǒng)的靈活度,降低了硬件成本,因而在計(jì)算機(jī)芯片設(shè)計(jì)領(lǐng)域具有廣闊的市場前景。
【專利說明】
一種應(yīng)用驗(yàn)簽方法和裝置
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及計(jì)算機(jī)芯片設(shè)計(jì)領(lǐng)域,尤其涉及一種應(yīng)用驗(yàn)簽方法和裝置。
【背景技術(shù)】
[0002]在SOC系統(tǒng)架構(gòu)中,安全CPU往往是從第三方廠家處購買,當(dāng)芯片升級或者需要在芯片內(nèi)寫入新的功能時(shí),就需要同時(shí)向第三方廠家購買CI3U的L i cen s e (軟件范圍內(nèi)使用授權(quán)),不僅增加了硬件成本,也給應(yīng)用程序的更新帶來了不便。通常使用ONE PROGRAM(Ha)器件來存儲數(shù)字驗(yàn)簽過程中的關(guān)鍵信息,這些器件不僅增加了系統(tǒng)設(shè)計(jì)的難度和復(fù)雜度,同時(shí)也增加了芯片成本。
[0003]綜上所述,如何解決現(xiàn)有SOC系統(tǒng)架構(gòu)在驗(yàn)簽硬件設(shè)計(jì)上難度大、復(fù)雜度高、成本高等問題,是計(jì)算機(jī)芯片設(shè)計(jì)領(lǐng)域一個(gè)亟需解決的問題。
【發(fā)明內(nèi)容】
[0004]為此,需要提供一種應(yīng)用驗(yàn)簽的技術(shù)方案,用以解決現(xiàn)有SOC系統(tǒng)架構(gòu)在驗(yàn)簽硬件設(shè)計(jì)上難度大、復(fù)雜度高、成本高等問題。
[0005]發(fā)明人提供了一種應(yīng)用驗(yàn)簽裝置,所述裝置包括處理單元、存儲單元、加解密單元、啟動(dòng)單元和校驗(yàn)單元,所述處理單元和加解密單元連接,所述處理單元與存儲單元連接,所述存儲單元與加解密單元連接,所述啟動(dòng)單元與加解密單元連接,所述校驗(yàn)單元與加解密單元連接;所述存儲單元包括第一存儲區(qū)和第二存儲區(qū);
[0006]所述處理單元用于獲取應(yīng)用執(zhí)行代碼,所述加解密單元用于對應(yīng)用執(zhí)行代碼進(jìn)行加密,得到公鑰和私鑰,并生成應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息;
[0007]所述第二存儲區(qū)用于存儲應(yīng)用執(zhí)行代碼以及該應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息,所述第一存儲區(qū)用于存儲該應(yīng)用執(zhí)行代碼對應(yīng)的公鑰;
[0008]所述處理單元還用于設(shè)置存儲單元的配置信息,并將所述配置信息存儲于第一存儲區(qū);
[0009]所述啟動(dòng)單元用于接收第一指令和用戶發(fā)送的私鑰加密信息,并從所述第一存儲區(qū)中讀取公鑰至加解密單元;
[0010]所述加解密單元用于對用戶發(fā)送的私鑰加密信息進(jìn)行解密,得到解密信息;
[0011]所述校驗(yàn)單元用于判斷解密信息與第二存儲區(qū)中的簽名信息是否相同,若是則通過校驗(yàn),否則不通過校驗(yàn)。
[0012]進(jìn)一步地,所述第一指令為應(yīng)用啟動(dòng)指令,則所述啟動(dòng)單元還用于接收第二指令,所述第二指令為應(yīng)用下載指令,所述處理單元用于更新存儲單元中的應(yīng)用執(zhí)行代碼與簽名
?目息O
[0013]進(jìn)一步地,所述配置信息包括下載信息、讀寫信息以及擦除信息;則所述“處理單元還用于設(shè)置存儲單元的配置信息”具體包括:
[0014]所述處理單元用于將下載信息設(shè)置為不可下載,將存儲單元的讀寫信息設(shè)置為只讀并禁止寫入,將存儲單元的擦除信息設(shè)置為不可擦除。
[0015]進(jìn)一步地,所述裝置還包括提示單元,所述提示單元用于在校驗(yàn)單元校驗(yàn)不通過時(shí)發(fā)出提示信息。
[0016]進(jìn)一步地,所述存儲單元為非易失性存儲器。
[0017]發(fā)明人還提供了一種應(yīng)用驗(yàn)簽方法,所述方法應(yīng)用于應(yīng)用驗(yàn)簽裝置,所述裝置包括處理單元、存儲單元、加解密單元、啟動(dòng)單元和校驗(yàn)單元,所述處理單元和加解密單元連接,所述處理單元與存儲單元連接,所述存儲單元與加解密單元連接,所述啟動(dòng)單元與加解密單元連接,所述校驗(yàn)單元與加解密單元連接;所述存儲單元包括第一存儲區(qū)和第二存儲區(qū);所述方法包括:
[0018]處理單元獲取應(yīng)用執(zhí)行代碼,加解密單元對應(yīng)用執(zhí)行代碼進(jìn)行加密,得到公鑰和私鑰,并生成應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息,并將所述應(yīng)用執(zhí)行代碼以及該應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息存儲于第二存儲區(qū)存儲,將該應(yīng)用執(zhí)行代碼對應(yīng)的公鑰存儲于第一存儲區(qū);
[0019]處理單元設(shè)置存儲單元的配置信息,并將所述配置信息存儲于第一存儲區(qū);
[0020]啟動(dòng)單元接收第一指令和用戶發(fā)送的私鑰加密信息,并從所述第一存儲區(qū)中讀取公鑰至加解密單元;
[0021]加解密單元對用戶發(fā)送的私鑰加密信息進(jìn)行解密,得到解密信息;
[0022]校驗(yàn)單元判斷解密信息與第二存儲區(qū)中的簽名信息是否相同,若是則通過校驗(yàn),否則不通過校驗(yàn)。
[0023]進(jìn)一步地,所述第一指令為應(yīng)用啟動(dòng)指令,則所述方法還包括:
[0024]啟動(dòng)單元接收第二指令,處理單元更新存儲單元中的應(yīng)用執(zhí)行代碼與簽名信息,所述第二指令為應(yīng)用下載指令。
[0025]進(jìn)一步地,所述配置信息包括下載信息、讀寫信息以及擦除信息;則所述“處理單元設(shè)置存儲單元的配置信息”具體包括:
[0026]處理單元將存儲單元的下載信息設(shè)置為不可下載,將存儲單元的讀寫信息設(shè)置為只讀并禁止寫入,將存儲單元的擦除信息設(shè)置為不可擦除。
[0027]進(jìn)一步地,所述裝置還包括提示單元,所述方法包括:提示單元在校驗(yàn)單元校驗(yàn)不通過時(shí)發(fā)出提示信息。
[0028]進(jìn)一步地,所述存儲單元為非易失性存儲器。
[0029]上述技術(shù)方案所述的應(yīng)用驗(yàn)簽方法和裝置,所述方法應(yīng)用于應(yīng)用驗(yàn)簽裝置,所述裝置包括處理單元、存儲單元、加解密單元、啟動(dòng)單元和校驗(yàn)單元;所述存儲單元包括第一存儲區(qū)和第二存儲區(qū);所述方法包括:首先處理單元獲取應(yīng)用執(zhí)行代碼,加解密單元對應(yīng)用執(zhí)行代碼進(jìn)行加密,得到公鑰和私鑰,并生成應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息,并將所述應(yīng)用執(zhí)行代碼以及該應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息存儲于第二存儲區(qū)存儲,將該應(yīng)用執(zhí)行代碼對應(yīng)的公鑰存儲于第一存儲區(qū);而后處理單元設(shè)置存儲單元的配置信息,并將所述配置信息存儲于第一存儲區(qū);而后啟動(dòng)單元接收第一指令和用戶發(fā)送的私鑰加密信息,并從所述第一存儲區(qū)中讀取公鑰至加解密單元;而后加解密單元對用戶發(fā)送的私鑰加密信息進(jìn)行解密,得到解密信息;而后校驗(yàn)單元判斷解密信息與第二存儲區(qū)中的簽名信息是否相同,若是則通過校驗(yàn),否則不通過校驗(yàn)。通過存儲單元的分區(qū)設(shè)置,使得存儲單元中一部分分區(qū)只讀,另一部分分區(qū)可寫可讀,只讀分區(qū)可以用于存儲驗(yàn)簽過程中的重要信息,如公鑰等;可寫可讀的分區(qū)有利于存儲應(yīng)用程序的執(zhí)行代碼,便于對應(yīng)用程序進(jìn)行更新,大大提高了 SOC系統(tǒng)的靈活度,降低了硬件成本,因而在計(jì)算機(jī)芯片設(shè)計(jì)領(lǐng)域具有廣闊的市場前景。
【附圖說明】
[0030]圖1為本發(fā)明一實(shí)施方式涉及的應(yīng)用驗(yàn)簽裝置的示意圖;
[0031]圖2為本發(fā)明一實(shí)施方式涉及的SOC芯片的架構(gòu)圖;
[0032]圖3為本發(fā)明一實(shí)施方式涉及的應(yīng)用驗(yàn)簽方法的流程圖;
[0033]附圖標(biāo)記說明:
[0034]101、處理單元;
[0035]102、加解密單元;
[0036]103、存儲單元;113、第一存儲區(qū);123、第二存儲區(qū);
[0037]104、啟動(dòng)單元;
[0038]105、校驗(yàn)單元;
[0039]106、提示單元。
【具體實(shí)施方式】
[0040]為詳細(xì)說明技術(shù)方案的技術(shù)內(nèi)容、構(gòu)造特征、所實(shí)現(xiàn)目的及效果,以下結(jié)合具體實(shí)施例并配合附圖詳予說明。
[0041]請參閱圖1,為本發(fā)明一實(shí)施方式涉及的應(yīng)用驗(yàn)簽裝置的示意圖;所述裝置包括處理單元101、存儲單元103、加解密單元102、啟動(dòng)單元104和校驗(yàn)單元105,所述處理單元101和加解密單元102連接,所述處理單元101與存儲單元103連接,所述存儲單元103與加解密單元102連接,所述啟動(dòng)單元104與加解密單元102連接,所述校驗(yàn)單元105與加解密單元102連接;所述存儲單元103包括第一存儲區(qū)113和第二存儲區(qū)123;
[0042]所述處理單元101用于獲取應(yīng)用執(zhí)行代碼,所述加解密單元102用于對應(yīng)用執(zhí)行代碼進(jìn)行加密,得到公鑰和私鑰,并生成應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息;
[0043]所述第二存儲區(qū)123用于存儲應(yīng)用執(zhí)行代碼以及該應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息,所述第一存儲區(qū)113用于存儲該應(yīng)用執(zhí)行代碼對應(yīng)的公鑰;
[0044]所述處理單元101還用于設(shè)置存儲單元的配置信息,并將所述配置信息存儲于第一存儲區(qū);
[0045]所述啟動(dòng)單元104用于接收第一指令和用戶發(fā)送的私鑰加密信息,并從所述第一存儲區(qū)中讀取公鑰至加解密單元;
[0046]所述加解密單元102用于對用戶發(fā)送的私鑰加密信息進(jìn)行解密,得到解密信息;
[0047]所述校驗(yàn)單元105用于判斷解密信息與第二存儲區(qū)中的簽名信息是否相同,若是則通過校驗(yàn),否則不通過校驗(yàn)。
[0048]在使用應(yīng)用驗(yàn)簽裝置進(jìn)行應(yīng)用簽名驗(yàn)證時(shí),首先處理單元獲取應(yīng)用執(zhí)行代碼,所述處理單元為具有數(shù)據(jù)處理功能的電子元件,如CPU。所述應(yīng)用執(zhí)行代碼為軟件應(yīng)用進(jìn)行數(shù)字簽名驗(yàn)證的執(zhí)行代碼,軟件應(yīng)用不同,其對應(yīng)的執(zhí)行代碼也不同。
[0049]而后加解密單元對應(yīng)用執(zhí)行代碼進(jìn)行加密,得到公鑰和私鑰,并生成應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息。在本實(shí)施方式中,采用非對稱加密算法對應(yīng)用執(zhí)行代碼進(jìn)行加密,例如可以采用哈希加密算法對應(yīng)用執(zhí)行代碼進(jìn)行加密,以提高加密后的簽名信息的安全性。在本實(shí)施方式中,所述存儲單元為非易失性存儲器。所述存儲單元包括第一存儲區(qū)和第二存儲區(qū)。加密得到的公鑰可以存儲于存儲單元的第一存儲區(qū),應(yīng)用執(zhí)行代碼以及該應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息可以存儲于存儲單元的第二存儲區(qū)。
[0050]而后處理單元設(shè)置存儲單元的配置信息,并將所述配置信息存儲于第一存儲區(qū)。在本實(shí)施方式中,所述配置信息包括下載信息、讀寫信息以及擦除信息。所述“處理單元還用于設(shè)置存儲單元的配置信息”具體包括:所述處理單元用于將下載信息設(shè)置為不可下載,將存儲單元的讀寫信息設(shè)置為只讀并禁止寫入,將存儲單元的擦除信息設(shè)置為不可擦除。這樣,存儲公鑰的第一存儲區(qū)屬性被設(shè)置為只讀、不可寫、不可擦除,保證公鑰的安全性,進(jìn)而保證應(yīng)用驗(yàn)簽過程的安全性。至此,驗(yàn)簽前的準(zhǔn)備設(shè)置工作完成,可以開始應(yīng)用驗(yàn)簽操作。
[0051]而后啟動(dòng)單元接收第一指令和用戶發(fā)送的私鑰加密信息,并從所述第一存儲區(qū)中讀取公鑰至加解密單元。在本實(shí)施方式中,所述第一指令為應(yīng)用啟動(dòng)指令,所述啟動(dòng)單元為B00TR0M,B00TR00M存儲著裝置執(zhí)行驗(yàn)簽操作的第一個(gè)代碼,當(dāng)接收到應(yīng)用啟動(dòng)指令后,會(huì)從所述第一存儲區(qū)中讀取公鑰至加解密單元。在其他實(shí)施例中,所述啟動(dòng)單元還用于接收第二指令,所述第二指令為應(yīng)用下載指令,所述處理單元用于更新存儲單元中的應(yīng)用執(zhí)行代碼與簽名信息。當(dāng)用戶下載其他指令時(shí),處理單元會(huì)重新獲取剛下載的應(yīng)用執(zhí)行代碼,加解密單元會(huì)對新的應(yīng)用執(zhí)行代碼進(jìn)行加密得到新的簽名信息,并新的應(yīng)用執(zhí)行代碼和簽名信息存儲于存儲單元的第二存儲區(qū)。
[0052]而后加解密單元對用戶發(fā)送的私鑰加密信息進(jìn)行解密,得到解密信息。非對稱加密算法的原理是用公鑰加密、私鑰解密或者用私鑰加密、公鑰解密。其中,公鑰存儲于存儲單元的第一存儲區(qū)內(nèi),私鑰在用戶發(fā)出驗(yàn)簽請求的電子設(shè)備上。在進(jìn)行驗(yàn)簽認(rèn)證時(shí),加解密單元會(huì)獲取第一存儲區(qū)中的公鑰對用戶發(fā)送的私鑰加密信息進(jìn)行解密,得到解密信息。
[0053]而后校驗(yàn)單元判斷解密信息與第二存儲區(qū)中的簽名信息是否相同,若是則通過校驗(yàn),否則不通過校驗(yàn)。若解密信息與簽名信息一致,說明用戶合法,而后啟動(dòng)單元會(huì)開始執(zhí)行存儲單元的第二存儲區(qū)內(nèi)的應(yīng)用執(zhí)行代碼,完成該應(yīng)用的啟動(dòng)。若解密信息與簽名信息不一致,則說明用戶非法,則啟動(dòng)單元不會(huì)開始執(zhí)行存儲單元的第二存儲區(qū)內(nèi)的應(yīng)用執(zhí)行代碼。在本實(shí)施方式中,所述裝置還包括提示單元,所述提示單元用于在校驗(yàn)單元校驗(yàn)不通過時(shí)發(fā)出提示信息。所述提示信息可以是語音提示信息、窗口提示信息等。
[0054]如圖2所示,為本發(fā)明一實(shí)施方式涉及的SOC芯片的架構(gòu)圖。所述應(yīng)用裝置可以集成于SOC芯片上,安全SOC芯片包括通用CPU模塊(CPU)、直接內(nèi)存讀取模塊(DMA)、高速總線(High Speed Bus)、低速總線(Low Speed Bus),高低速總線轉(zhuǎn)換的橋(Bridge),啟動(dòng)只讀存儲器(B00TR0M),動(dòng)態(tài)存儲器(RAM),非易失存儲器,加解密算法加速模塊(Crypto_ip),通用串行總線模塊(USB),模擬數(shù)字/數(shù)字模擬轉(zhuǎn)換模塊(ADC/DAC),通用輸入輸出接口模塊(GP1),IC卡接口模塊(SAM),通用異步收發(fā)傳輸器UART/串口外設(shè)接口 SPI模塊(USART),定時(shí)器(TMER),兩線串行總線接口(I2C),集成電路內(nèi)部音頻總線(I2S),物理安全檢測與保護(hù)模塊(Defender),系統(tǒng)管理模塊(SMU),保護(hù)單元模塊(PU)等。
[0055]下面對SOC芯片架構(gòu)的各個(gè)模塊功能作具體說明:通用CPU是指應(yīng)用于嵌入式的32位或者64位商業(yè)CPU,例如ARM、MIPS等。即本發(fā)明實(shí)施例中的處理單元。高速總線和低速總線是和CPU配套的系統(tǒng)總線,一般高速為AHB總線或者AXI總線,低速總線一般為APB總線。RAM為系統(tǒng)的高速動(dòng)態(tài)存儲器,用于緩存系統(tǒng)數(shù)據(jù)。USB為系統(tǒng)與外部的高速接口,完成調(diào)試或者快速傳輸數(shù)據(jù)的功能;ADC/DAC為片內(nèi)的模擬數(shù)字/數(shù)字模擬轉(zhuǎn)換接口,同時(shí)完成磁卡的硬件解碼功能,真隨機(jī)數(shù)的產(chǎn)生;GP1模塊除了完成通用的輸入輸出功能外,還支持TIE_LOW功能和ONES功能,TIE_L0W功能為高電平為輸出,低電平為輸入,ONES功能是當(dāng)配置為輸出為高電平時(shí),在經(jīng)過一定的時(shí)間后,硬件自動(dòng)將高電平清零,輸出低電平。
[0056]非易失存儲器是系統(tǒng)的主存儲區(qū),一般為片上的eFlash或者eeprom,即本發(fā)明的存儲單元,包括INFORMAT1N區(qū)間(第一存儲區(qū))和MAINBL0CK區(qū)間(第二存儲區(qū)),INFORMAT1N區(qū)間可以設(shè)置自身的屬性以及系統(tǒng)啟動(dòng)需要的配置信息,自身的屬性包括讀取、寫入以及擦除等控制,配置信息包括JTAG、啟動(dòng)模式以及不可更改的密鑰配置,MAINBL0CK區(qū)間沒有屬性限制,可以讀取、寫入以及擦除。在本實(shí)施方式中,當(dāng)公鑰一經(jīng)寫入INFORMAT1N區(qū)間后,INFORMAT1N區(qū)間的屬性將被設(shè)置為只讀、不可寫入、不可擦除。
[0057]加解密加速模塊(Crypto_ip,即本發(fā)明中的加解密單元)支持多種對稱和非對稱的加解密硬件加速算法,所述硬件加速算法包括SM2、SM3、SM4、RSA2048/RSA1024,AES_128、DES/3DES以及HASH_256等算法。B00TR0M(即本發(fā)明中的啟動(dòng)單元)完成系統(tǒng)的安全啟動(dòng)、開機(jī)驗(yàn)簽、密鑰更新的功能。SAM模塊為IC卡的邏輯訪問控制模塊,支持IS07816; USART模塊根據(jù)CPU的配置支持UART或者SPI功能,實(shí)現(xiàn)驅(qū)動(dòng)SPI液晶屏、調(diào)試或者與藍(lán)牙外設(shè)通訊等功能;IlMER實(shí)現(xiàn)系統(tǒng)定時(shí)的功能;I2C完成例如IC卡物理接口芯片的配置的功能;I2S實(shí)現(xiàn)對外部音頻接口。
[0058]Defender實(shí)現(xiàn)實(shí)時(shí)時(shí)鐘(RTC)、密鑰保存以及外部物理探測功能,這個(gè)物理探測無論CHJ工作還是不工作都實(shí)時(shí)的根據(jù)配置進(jìn)行工作,物理探測類型包括電壓檢測、電流檢測、頻偏檢測、溫度檢測、開蓋檢測等,如果檢測到異常,就將保存在內(nèi)部的密鑰清除。當(dāng)系統(tǒng)正常工作,需要安全保護(hù)的敏感數(shù)據(jù)存儲到物理安全與保護(hù)模塊(Defender)后,就需要時(shí)時(shí)的對這些敏感數(shù)據(jù)提保護(hù),當(dāng)檢測到有人開蓋、模塊頻率偏移或者工作的溫度,電壓、電流不在正常設(shè)計(jì)的區(qū)域時(shí),會(huì)自動(dòng)將敏感數(shù)據(jù)清除,達(dá)到保護(hù)效果。SMU模塊為系統(tǒng)的時(shí)鐘、復(fù)位以及系統(tǒng)寄存器的控制模塊,讀取配置是在系統(tǒng)管理模塊(SMU)中完成,當(dāng)系統(tǒng)復(fù)位解除的時(shí)候,系統(tǒng)首先要從非易失存儲器讀取配置字后,完成配置,其他模塊才會(huì)工作。PU為系統(tǒng)的保護(hù)單元模塊,根據(jù)系統(tǒng)的配置決定哪些外設(shè)或者內(nèi)存處于保護(hù)狀態(tài),哪些可以訪問,哪些不能訪問。
[0059]如圖3所示,為本發(fā)明一實(shí)施方式涉及的應(yīng)用驗(yàn)簽方法的流程圖。所述方法應(yīng)用于應(yīng)用驗(yàn)簽裝置,所述裝置包括處理單元、存儲單元、加解密單元、啟動(dòng)單元和校驗(yàn)單元,所述處理單元和加解密單元連接,所述處理單元與存儲單元連接,所述存儲單元與加解密單元連接,所述啟動(dòng)單元與加解密單元連接,所述校驗(yàn)單元與加解密單元連接;所述存儲單元包括第一存儲區(qū)和第二存儲區(qū);所述方法包括:
[0060]首先進(jìn)入步驟S301處理單元獲取應(yīng)用執(zhí)行代碼,所述處理單元為具有數(shù)據(jù)處理功能的電子元件,如CPU。所述應(yīng)用執(zhí)行代碼為軟件應(yīng)用進(jìn)行數(shù)字簽名驗(yàn)證的執(zhí)行代碼,軟件應(yīng)用不同,其對應(yīng)的執(zhí)行代碼也不同。
[0061]而后進(jìn)入步驟S302加解密單元對應(yīng)用執(zhí)行代碼進(jìn)行加密,得到公鑰和私鑰,并生成應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息。在本實(shí)施方式中,采用非對稱加密算法對應(yīng)用執(zhí)行代碼進(jìn)行加密,例如可以采用哈希加密算法對應(yīng)用執(zhí)行代碼進(jìn)行加密,以提高加密后的簽名信息的安全性。在本實(shí)施方式中,所述存儲單元為非易失性存儲器。所述存儲單元包括第一存儲區(qū)和第二存儲區(qū)。而后進(jìn)入步驟S303將所述應(yīng)用執(zhí)行代碼以及該應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息存儲于第二存儲區(qū),將該應(yīng)用執(zhí)行代碼對應(yīng)的公鑰存儲于第一存儲區(qū)。
[0062]而后進(jìn)入步驟S304處理單元設(shè)置存儲單元的配置信息,并將所述配置信息存儲于第一存儲區(qū)。在本實(shí)施方式中,所述配置信息包括下載信息、讀寫信息以及擦除信息。所述“處理單元還用于設(shè)置存儲單元的配置信息”具體包括:所述處理單元用于將下載信息設(shè)置為不可下載,將存儲單元的讀寫信息設(shè)置為只讀并禁止寫入,將存儲單元的擦除信息設(shè)置為不可擦除。這樣,存儲公鑰的第一存儲區(qū)屬性被設(shè)置為只讀、不可寫、不可擦除,保證公鑰的安全性,進(jìn)而保證應(yīng)用驗(yàn)簽過程的安全性。至此,驗(yàn)簽前的準(zhǔn)備設(shè)置工作完成,可以開始應(yīng)用驗(yàn)簽操作。
[0063]而后進(jìn)入步驟S305啟動(dòng)單元接收第一指令和用戶發(fā)送的私鑰加密信息,并從所述第一存儲區(qū)中讀取公鑰至加解密單元。在本實(shí)施方式中,所述第一指令為應(yīng)用啟動(dòng)指令,所述啟動(dòng)單元為B00TR0M,B00TR00M存儲著裝置執(zhí)行驗(yàn)簽操作的第一個(gè)代碼,當(dāng)接收到應(yīng)用啟動(dòng)指令后,會(huì)從所述第一存儲區(qū)中讀取公鑰至加解密單元。在其他實(shí)施例中,所述啟動(dòng)單元還用于接收第二指令,所述第二指令為應(yīng)用下載指令,所述處理單元用于更新存儲單元中的應(yīng)用執(zhí)行代碼與簽名信息。當(dāng)用戶下載其他指令時(shí),處理單元會(huì)重新獲取剛下載的應(yīng)用執(zhí)行代碼,加解密單元會(huì)對新的應(yīng)用執(zhí)行代碼進(jìn)行加密得到新的簽名信息,并新的應(yīng)用執(zhí)行代碼和簽名信息存儲于存儲單元的第二存儲區(qū)。
[0064]而后進(jìn)入步驟S306加解密單元對用戶發(fā)送的私鑰加密信息進(jìn)行解密,得到解密信息。非對稱加密算法的原理是用公鑰加密、私鑰解密或者用私鑰加密、公鑰解密。其中,公鑰存儲于存儲單元的第一存儲區(qū)內(nèi),私鑰在用戶發(fā)出驗(yàn)簽請求的電子設(shè)備上。在進(jìn)行驗(yàn)簽認(rèn)證時(shí),加解密單元會(huì)獲取第一存儲區(qū)中的公鑰對用戶發(fā)送的私鑰加密信息進(jìn)行解密,得到解密信息。
[0065]而后進(jìn)入步驟S307校驗(yàn)單元判斷解密信息與第二存儲區(qū)中的簽名信息是否相同,若是則進(jìn)入步驟S308通過校驗(yàn),否則進(jìn)入步驟S309不通過校驗(yàn)。若解密信息與簽名信息一致,說明用戶合法,而后啟動(dòng)單元會(huì)開始執(zhí)行存儲單元的第二存儲區(qū)內(nèi)的應(yīng)用執(zhí)行代碼,完成該應(yīng)用的啟動(dòng)。若解密信息與簽名信息不一致,則說明用戶非法,則啟動(dòng)單元不會(huì)開始執(zhí)行存儲單元的第二存儲區(qū)內(nèi)的應(yīng)用執(zhí)行代碼。在本實(shí)施方式中,所述裝置還包括提示單元,所述提示單元用于在校驗(yàn)單元校驗(yàn)不通過時(shí)發(fā)出提示信息。所述提示信息可以是語音提示信息、窗口提示信息等。
[0066]上述技術(shù)方案所述的應(yīng)用驗(yàn)簽方法和裝置,所述方法應(yīng)用于應(yīng)用驗(yàn)簽裝置,所述裝置包括處理單元、存儲單元、加解密單元、啟動(dòng)單元和校驗(yàn)單元;所述存儲單元包括第一存儲區(qū)和第二存儲區(qū);所述方法包括:首先處理單元獲取應(yīng)用執(zhí)行代碼,加解密單元對應(yīng)用執(zhí)行代碼進(jìn)行加密,得到公鑰和私鑰,并生成應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息,并將所述應(yīng)用執(zhí)行代碼以及該應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息存儲于第二存儲區(qū)存儲,將該應(yīng)用執(zhí)行代碼對應(yīng)的公鑰存儲于第一存儲區(qū);而后處理單元設(shè)置存儲單元的配置信息,并將所述配置信息存儲于第一存儲區(qū);而后啟動(dòng)單元接收第一指令和用戶發(fā)送的私鑰加密信息,并從所述第一存儲區(qū)中讀取公鑰至加解密單元;而后加解密單元對用戶發(fā)送的私鑰加密信息進(jìn)行解密,得到解密信息;而后校驗(yàn)單元判斷解密信息與第二存儲區(qū)中的簽名信息是否相同,若是則通過校驗(yàn),否則不通過校驗(yàn)。通過存儲單元的分區(qū)設(shè)置,使得存儲單元中一部分分區(qū)只讀,另一部分分區(qū)可寫可讀,只讀分區(qū)可以用于存儲驗(yàn)簽過程中的重要信息,如公鑰等;可寫可讀的分區(qū)有利于存儲應(yīng)用程序的執(zhí)行代碼,便于對應(yīng)用程序進(jìn)行更新,大大提高了 SOC系統(tǒng)的靈活度,降低了硬件成本,因而在計(jì)算機(jī)芯片設(shè)計(jì)領(lǐng)域具有廣闊的市場前景。
[0067]需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者終端設(shè)備中還存在另外的要素。此夕卜,在本文中,“大于”、“小于”、“超過”等理解為不包括本數(shù);“以上”、“以下”、“以內(nèi)”等理解為包括本數(shù)。
[0068]盡管已經(jīng)對上述各實(shí)施例進(jìn)行了描述,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對這些實(shí)施例做出另外的變更和修改,所以以上所述僅為本發(fā)明的實(shí)施例,并非因此限制本發(fā)明的專利保護(hù)范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種應(yīng)用驗(yàn)簽裝置,其特征在于,所述裝置包括處理單元、存儲單元、加解密單元、啟動(dòng)單元和校驗(yàn)單元,所述處理單元和加解密單元連接,所述處理單元與存儲單元連接,所述存儲單元與加解密單元連接,所述啟動(dòng)單元與加解密單元連接,所述校驗(yàn)單元與加解密單元連接;所述存儲單元包括第一存儲區(qū)和第二存儲區(qū); 所述處理單元用于獲取應(yīng)用執(zhí)行代碼,所述加解密單元用于對應(yīng)用執(zhí)行代碼進(jìn)行加密,得到公鑰和私鑰,并生成應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息; 所述第二存儲區(qū)用于存儲應(yīng)用執(zhí)行代碼以及該應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息,所述第一存儲區(qū)用于存儲該應(yīng)用執(zhí)行代碼對應(yīng)的公鑰; 所述處理單元還用于設(shè)置存儲單元的配置信息,并將所述配置信息存儲于第一存儲區(qū); 所述啟動(dòng)單元用于接收第一指令和用戶發(fā)送的私鑰加密信息,并從所述第一存儲區(qū)中讀取公鑰至加解密單元; 所述加解密單元用于對用戶發(fā)送的私鑰加密信息進(jìn)行解密,得到解密信息; 所述校驗(yàn)單元用于判斷解密信息與第二存儲區(qū)中的簽名信息是否相同,若是則通過校驗(yàn),否則不通過校驗(yàn)。2.如權(quán)利要求1所述的應(yīng)用驗(yàn)簽裝置,其特征在于,所述第一指令為應(yīng)用啟動(dòng)指令,則所述啟動(dòng)單元還用于接收第二指令,所述第二指令為應(yīng)用下載指令,所述處理單元用于更新存儲單元中的應(yīng)用執(zhí)行代碼與簽名信息。3.如權(quán)利要求1所述的應(yīng)用驗(yàn)簽裝置,其特征在于,所述配置信息包括下載信息、讀寫信息以及擦除信息;則所述“處理單元還用于設(shè)置存儲單元的配置信息”具體包括: 所述處理單元用于將下載信息設(shè)置為不可下載,將存儲單元的讀寫信息設(shè)置為只讀并禁止寫入,將存儲單元的擦除信息設(shè)置為不可擦除。4.如權(quán)利要求1所述的應(yīng)用驗(yàn)簽裝置,其特征在于,所述裝置還包括提示單元,所述提示單元用于在校驗(yàn)單元校驗(yàn)不通過時(shí)發(fā)出提示信息。5.如權(quán)利要求1所述的應(yīng)用驗(yàn)簽裝置,其特征在于,所述存儲單元為非易失性存儲器。6.—種應(yīng)用驗(yàn)簽方法,其特征在于,所述方法應(yīng)用于應(yīng)用驗(yàn)簽裝置,所述裝置包括處理單元、存儲單元、加解密單元、啟動(dòng)單元和校驗(yàn)單元,所述處理單元和加解密單元連接,所述處理單元與存儲單元連接,所述存儲單元與加解密單元連接,所述啟動(dòng)單元與加解密單元連接,所述校驗(yàn)單元與加解密單元連接;所述存儲單元包括第一存儲區(qū)和第二存儲區(qū);所述方法包括: 處理單元獲取應(yīng)用執(zhí)行代碼,加解密單元對應(yīng)用執(zhí)行代碼進(jìn)行加密,得到公鑰和私鑰,并生成應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息,并將所述應(yīng)用執(zhí)行代碼以及該應(yīng)用執(zhí)行代碼對應(yīng)的簽名信息存儲于第二存儲區(qū)存儲,將該應(yīng)用執(zhí)行代碼對應(yīng)的公鑰存儲于第一存儲區(qū);處理單元設(shè)置存儲單元的配置信息,并將所述配置信息存儲于第一存儲區(qū); 啟動(dòng)單元接收第一指令和用戶發(fā)送的私鑰加密信息,并從所述第一存儲區(qū)中讀取公鑰至加解密單元; 加解密單元對用戶發(fā)送的私鑰加密信息進(jìn)行解密,得到解密信息; 校驗(yàn)單元判斷解密信息與第二存儲區(qū)中的簽名信息是否相同,若是則通過校驗(yàn),否則不通過校驗(yàn)。7.如權(quán)利要求6所述的應(yīng)用驗(yàn)簽方法,其特征在于,所述第一指令為應(yīng)用啟動(dòng)指令,則所述方法還包括: 啟動(dòng)單元接收第二指令,處理單元更新存儲單元中的應(yīng)用執(zhí)行代碼與簽名信息,所述第二指令為應(yīng)用下載指令。8.如權(quán)利要求6所述的應(yīng)用驗(yàn)簽方法,其特征在于,所述配置信息包括下載信息、讀寫信息以及擦除信息;則所述“處理單元設(shè)置存儲單元的配置信息”具體包括: 處理單元將存儲單元的下載信息設(shè)置為不可下載,將存儲單元的讀寫信息設(shè)置為只讀并禁止寫入,將存儲單元的擦除信息設(shè)置為不可擦除。9.如權(quán)利要求6所述的應(yīng)用驗(yàn)簽方法,其特征在于,所述裝置還包括提示單元,所述方法包括:提示單元在校驗(yàn)單元校驗(yàn)不通過時(shí)發(fā)出提示信息。10.如權(quán)利要求6所述的應(yīng)用驗(yàn)簽方法,其特征在于,所述存儲單元為非易失性存儲器。
【文檔編號】G06F21/51GK105844147SQ201610164129
【公開日】2016年8月10日
【申請日】2016年3月22日
【發(fā)明人】王法翔
【申請人】福建超瑞創(chuàng)原信息技術(shù)有限公司