一種嵌入式系統(tǒng)及安全操作系統(tǒng)的實現(xiàn)方法
【專利摘要】本發(fā)明公開了一種嵌入式系統(tǒng)及安全操作系統(tǒng)的實現(xiàn)方法,硬件系統(tǒng)包含一塊支持RSA非對稱加密算法且可提供2048位私鑰的加密芯片和一塊受保護的非易失存儲器。軟件系統(tǒng)在Linux操作系統(tǒng)基礎(chǔ)上,對進程進行非對稱加密算法認證,涉及私鑰的操作均在受保護存儲器中的特定存儲區(qū)域(隱藏地址區(qū)段)內(nèi)完成,此時只有通過認證的進程才能在系統(tǒng)中運行,否則將被KILL。由于這種安全操作系統(tǒng)具有存儲器保護、密鑰認證等功能,因此其是一種可信計算架構(gòu)體系,具有很高的安全性。這種安全操作系統(tǒng)主要用于安全、保密等特種領(lǐng)域,可適配到通用PC、嵌入式平板等硬件系統(tǒng)。
【專利說明】一種嵌入式系統(tǒng)及安全操作系統(tǒng)的實現(xiàn)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種嵌入式系統(tǒng)及安全操作系統(tǒng)的實現(xiàn)方法。
【背景技術(shù)】
[0002]隨著計算機技術(shù)的發(fā)展,系統(tǒng)安全已越來越受到關(guān)注,而操作系統(tǒng)作為計算機體系中的關(guān)鍵組成部分,其安全特性受到更多的考慮。為保護操作系統(tǒng)及其關(guān)鍵數(shù)據(jù)不受惡意程序破壞,出現(xiàn)了殺毒軟件、數(shù)據(jù)加密等技術(shù),這些技術(shù)能夠在一定程度上對操作系統(tǒng)及其關(guān)鍵數(shù)據(jù)進行保護,但它們建立在操作系統(tǒng)之上,本身不屬于操作系統(tǒng)的一部分,因此保護作用具有局限性,而且這些保護程序本身的安全性也需要關(guān)注。“棱鏡門”事件之后,許多著名的應(yīng)用軟件、操作系統(tǒng)都可能存在“后門”,因此操作系統(tǒng)本身是否安全,以及其上運行的程序是否安全等問題需要重點考慮。
[0003]因此,有必要設(shè)計一種具有安全操作系統(tǒng)的嵌入式系統(tǒng)及安全操作系統(tǒng)的實現(xiàn)方法。
【發(fā)明內(nèi)容】
[0004]本發(fā)明所要解決的技術(shù)問題是提供一種嵌入式系統(tǒng)及安全操作系統(tǒng)的實現(xiàn)方法,該嵌入式系統(tǒng)及安全操作系統(tǒng)的實現(xiàn)方法能有效保障操作系統(tǒng)的安全,可用于對安全、保密有嚴格要求的特種領(lǐng)域。
[0005]發(fā)明的技術(shù)解決方案如下:
[0006]一種安全操作系統(tǒng)的實現(xiàn)方法,在硬件系統(tǒng)中設(shè)置一塊支持RSA非對稱加密算法且能提供2048位私鑰的加密芯片和一塊受保護的非易失性的存儲器;所述的存儲器為FLASH存儲器;
[0007]在Linux操作系統(tǒng)基礎(chǔ)上,對攜帶公鑰的進程(PP)進行基于非對稱加密算法的認證,如果認證通過,操作系統(tǒng)的進程管理模塊(PM)允許該進程繼續(xù)運行,如果認證不通過,進程管理模塊(PM)禁止該進程運行;
[0008]認證的過程為:
[0009]I):攜帶公鑰的進程(PP)由進程管理模塊(PM)啟動運行,并提交公鑰給進程管理模塊,此后攜帶公鑰的進程進入等待狀態(tài);
[0010]2)進程管理模塊(PM)收到公鑰后,將公鑰提交給認證模塊(CA),從而激活認證模塊(CA)運行;
[0011]3)認證模塊(CA)獲得公鑰后,從加密芯片提取私鑰,并使用RSA非對稱加密算法進行認證,然后將認證結(jié)果返回給進程管理模塊(PM);
[0012]認證模塊采用以下步驟實施認證:
[0013]A)通過加密芯片的驅(qū)動程序從加密芯片讀出私鑰;
[0014]B)將私鑰保存到所述存儲器的特定存儲區(qū)域中;
[0015]C)使用RSA算法對傳入的公鑰進行解密【如果解密成功,那么說明認證通過,此時將認證成功結(jié)果返回給PM,如果解密失敗,那么說明認證不通過,此時將認證不成功結(jié)果返回給PM】;
[0016]所述的特定存儲區(qū)域只由認證過程對應(yīng)的程序使用,在解密過程中,私鑰及與私鑰相關(guān)的數(shù)據(jù)均存儲在該特定存儲區(qū)域內(nèi),而不使用系統(tǒng)其他存儲區(qū)域進行存儲【解密完成后對特定存儲區(qū)域進行清空】。
[0017]受保護的存儲器被劃分為特定存儲區(qū)域即隱藏的地址區(qū)段和不受限制的地址區(qū)段;在受保護的存儲器中開辟一塊所述特定存儲區(qū)域的方法為:通過BootLoader啟動程序?qū)Υ鎯ζ鞯奈锢淼刂房臻g進行分配,即分為的被隱藏的地址區(qū)段和不受限制的地址區(qū)段;隱藏地址區(qū)段對應(yīng)于特定存儲區(qū)域,又稱為受限制的地址區(qū)段;在Boot Loader啟動程序中,通過配置處理器的基地址寄存器以及地址映射關(guān)系,使得Linux操作系統(tǒng)在建立MMU管理時,只在不受限制的地址區(qū)段上進行,而被隱藏的地址區(qū)段不參與MMU建立;使得在Linux系統(tǒng)啟動后,MMU只能管理不受限制的物理地址區(qū)段;而被隱藏地址區(qū)段對MMU不可見,經(jīng)過以上處理后,除認證模塊對應(yīng)的程序外,Linux操作系統(tǒng)及Linux操作系統(tǒng)上運行的程序都不能直接訪問該被隱藏的地址區(qū)段;
[0018]通過認證模塊對應(yīng)的程序?qū)υ摱坞[藏的物理地址進行訪問的實現(xiàn)方法為:不通過MMU的地址映射而是采用物理地址對該被隱藏的地址區(qū)段進行操作。
[0019]一種嵌入式系統(tǒng),采用由前述的方法實現(xiàn)的操作系統(tǒng);該嵌入式系統(tǒng)包括處理器、IXD顯示屏、內(nèi)存、FLASH存儲器和USB接口 ;IXD顯示屏、內(nèi)存、FLASH存儲器和USB接口均與處理器連接;其特征在于,還包括用于生成私鑰的加密芯片;所述的加密芯片與處理器連接。
[0020]所述的嵌入式系統(tǒng)還包括對攜帶公鑰的進程(PP)進行基于非對稱加密算法認證的認證裝置;如果認證通過,操作系統(tǒng)的進程管理模塊(PM)允許該進程繼續(xù)運行,如果認證不通過,進程管理模 塊(PM)禁止該進程運行。
[0021]認證裝置包括
[0022]I):進程管理模塊(PM)啟動攜帶公鑰的進程(PP)的裝置以及從攜帶公鑰的進程(PP)獲取公鑰的裝置;
[0023]2)進程管理模塊(PM)收到公鑰后,將公鑰提交給認證模塊(CA),從而激活認證模塊(CA)運行的裝置;
[0024]3)認證模塊(CA)獲得公鑰后,從加密芯片提取私鑰,并使用RSA非對稱加密算法進行認證,然后將認證結(jié)果返回給進程管理模塊(PM)的裝置;
[0025]所述的認證模塊對應(yīng)的裝置包括:
[0026]A)通過加密芯片的驅(qū)動程序從加密芯片讀出私鑰的裝置;
[0027]B)將私鑰保存到所述存儲器的特定存儲區(qū)域中的裝置;
[0028]C)使用RSA算法對傳入的公鑰進行解密以完成認證的裝置;
[0029]所述的特定存儲區(qū)域只由認證過程對應(yīng)的程序使用,在解密過程中,私鑰及與私鑰相關(guān)的數(shù)據(jù)均存儲在該特定存儲區(qū)域內(nèi),而不使用系統(tǒng)其他存儲區(qū)域進行存儲【解密完成后對特定存儲區(qū)域進行清空】;
[0030]所述的嵌入式系統(tǒng)還包括用于在存儲器中開辟一塊特定存儲區(qū)域用于存儲與加密和解密相關(guān)的數(shù)據(jù)的裝置;所述的存儲器為FLASH存儲器。[0031]所述的嵌入式系統(tǒng)還包括與處理器相連的觸摸屏控制器;嵌入式設(shè)備為平板電腦,所述的處理器為ExynoS4412,存儲器采用NAND FLASH存儲器;內(nèi)存為DDR3內(nèi)存;還包括USB接口和用于讀寫SD / TF器件的SD / TF插口 ;選用具有UART、I2C、SP1、PC1、USB任一接口的加密芯片,該加密芯片能提供2048位的私鑰。
[0032]加密芯片為TF32A09器件。
[0033]本發(fā)明的核心在于,硬件系統(tǒng)包含一塊支持RSA非對稱加密算法且可提供2048位私鑰的加密芯片和一塊受保護的非易失存儲器。軟件系統(tǒng)在Linux操作系統(tǒng)基礎(chǔ)上,對進程進行非對稱加密算法認證,涉及私鑰的操作均在受保護存儲器中的特定存儲區(qū)域內(nèi)完成,此時只有通過認證的進程才能在系統(tǒng)中運行,否則將被KILL【終止】。
[0034]本發(fā)明的關(guān)鍵是在操作系統(tǒng)上建立可信計算體系架構(gòu),并考慮一定的普適性,主要改進點在于:
[0035]1.在硬件系統(tǒng)中,必須提供一塊加密芯片。該芯片可提供2048位的私鑰,并支持RSA非對稱加密算法認證。
[0036]2.受保護的非易失存儲器可以是一塊獨立的存儲器,也可以是存儲器對應(yīng)物理地址空間的一部分。受保護的特性是由軟件去實現(xiàn),需在Boot Loader啟動程序中分配一段物理地址空間給受保護的存儲器作為特定存儲區(qū)域【隱藏地址區(qū)域】,而硬件只需提供非易失存儲器件。受保護存儲器中的特定存儲區(qū)域只接受特定的驅(qū)動程序通過物理地址訪問。
[0037]3.對進程管理(PM)模塊進行優(yōu)化,并增加進程(PP)的認證過程;增加認證(CA)模塊,負責對進程進行RSA認證。認證結(jié)果作為該進程是否可信的判斷依據(jù),并決定進程的運行結(jié)果。
[0038]有益效果:
[0039]本發(fā)明的嵌入式系統(tǒng)具有存儲器保護、密鑰認證等功能,可對進程進行認證,未通過認證的進程將被禁止運行,從而阻止它們破壞操作系統(tǒng)的可能。這種可信計算實現(xiàn)的安全操作系統(tǒng)可用于對安全、保密有嚴格要求的特種領(lǐng)域。
[0040]由于這種安全操作系統(tǒng)具有存儲器保護、密鑰認證等功能,因此其是一種可信計算架構(gòu)體系,具有很高的安全性。這種安全操作系統(tǒng)主要用于安全、保密等特種領(lǐng)域,可適配到通用PC、嵌入式平板等硬件系統(tǒng)。
[0041]本發(fā)明是在Linux操作系統(tǒng)基礎(chǔ)上實現(xiàn)了可信計算體系架構(gòu),可對進程進行非對稱加密RSA認證,使得系統(tǒng)中運行的進程都是可信安全的,從而確保系統(tǒng)安全。此時操作系統(tǒng)不僅自身安全,也能夠保證系統(tǒng)運行時的安全。因此可以在保密、安全等特種應(yīng)用領(lǐng)域使用這種可信計算實現(xiàn)的安全操作系統(tǒng),以保證系統(tǒng)安全可信。
【專利附圖】
【附圖說明】
[0042]圖1為安全操作系統(tǒng)的體系架構(gòu)圖;
[0043]圖2為嵌入式系統(tǒng)的硬件結(jié)構(gòu)框圖。
【具體實施方式】
[0044]以下將結(jié)合附圖和具體實施例對本發(fā)明做進一步詳細說明:
[0045]實施例1:[0046]如圖1-2,一種安全操作系統(tǒng)的實現(xiàn)方法,在硬件系統(tǒng)中設(shè)置一塊支持RSA非對稱加密算法且能提供2048位私鑰的加密芯片和一塊受保護的非易失性的存儲器;所述的存儲器為FLASH存儲器;
[0047]在Linux操作系統(tǒng)基礎(chǔ)上,對攜帶公鑰的進程(PP)進行基于非對稱加密算法的認證,如果認證通過,操作系統(tǒng)的進程管理模塊(PM)允許該進程繼續(xù)運行,如果認證不通過,進程管理模塊(PM)禁止該進程運行;
[0048]認證的過程為:
[0049]I):攜帶公鑰的進程(PP)由進程管理模塊(PM)啟動運行,并提交公鑰給進程管理模塊,此后攜帶公鑰的進程進入等待狀態(tài);
[0050]2)進程管理模塊(PM)收到公鑰后,將公鑰提交給認證模塊(CA),從而激活認證模塊(CA)運行;
[0051]3)認證模塊(CA)獲得公鑰后,從加密芯片提取私鑰,并使用RSA非對稱加密算法進行認證,然后將認證結(jié)果返回給進程管理模塊(PM);
[0052]認證模塊采用以下步驟實施認證:
[0053]A)通過加密芯片的驅(qū)動程序從加密芯片讀出私鑰;
[0054]B)將私鑰保存到所述存儲器的特定存儲區(qū)域中;
[0055]C)使用RSA算法對傳入的公鑰進行解密【如果解密成功,那么說明認證通過,此時將認證成功結(jié)果返回給PM,如果解密失敗,那么說明認證不通過,此時將認證不成功結(jié)果返回給PM】;
`[0056]所述的特定存儲區(qū)域只由認證過程對應(yīng)的程序使用,在解密過程中,私鑰及與私鑰相關(guān)的數(shù)據(jù)均存儲在該特定存儲區(qū)域內(nèi),而不使用系統(tǒng)其他存儲區(qū)域進行存儲【解密完成后對特定存儲區(qū)域進行清空】。
[0057]受保護的存儲器被劃分為特定存儲區(qū)域即隱藏的地址區(qū)段和不受限制的地址區(qū)段;在受保護的存儲器中開辟一塊所述特定存儲區(qū)域的方法為:通過Boot Loader啟動程序?qū)Υ鎯ζ鞯奈锢淼刂房臻g進行分配,即分為的被隱藏的地址區(qū)段和不受限制的地址區(qū)段;隱藏地址區(qū)段對應(yīng)于特定存儲區(qū)域,又稱為受限制的地址區(qū)段;在Boot Loader啟動程序中,通過配置處理器的基地址寄存器以及地址映射關(guān)系,使得Linux操作系統(tǒng)在建立MMU管理時,只在不受限制的地址區(qū)段上進行,而被隱藏的地址區(qū)段不參與MMU建立;使得在Linux系統(tǒng)啟動后,MMU只能管理不受限制的物理地址區(qū)段;而被隱藏地址區(qū)段對MMU不可見,經(jīng)過以上處理后,除認證模塊對應(yīng)的程序外,Linux操作系統(tǒng)及Linux操作系統(tǒng)上運行的程序都不能直接訪問該被隱藏的地址區(qū)段;
[0058]通過認證模塊對應(yīng)的程序?qū)υ摱坞[藏的物理地址進行訪問的實現(xiàn)方法為:不通過MMU的地址映射而是采用物理地址對該被隱藏的地址區(qū)段進行操作。
[0059]一種嵌入式系統(tǒng),采用由前述的方法實現(xiàn)的操作系統(tǒng);該嵌入式系統(tǒng)包括處理器、IXD顯示屏、內(nèi)存、FLASH存儲器和USB接口 ;IXD顯示屏、內(nèi)存、FLASH存儲器和USB接口均與處理器連接;其特征在于,還包括用于生成私鑰的加密芯片;所述的加密芯片與處理器連接。
[0060]所述的嵌入式系統(tǒng)還包括對攜帶公鑰的進程(PP)進行基于非對稱加密算法認證的認證裝置;如果認證通過,操作系統(tǒng)的進程管理模塊(PM)允許該進程繼續(xù)運行,如果認證不通過,進程管理模塊(PM)禁止該進程運行。
[0061]認證裝置包括
[0062]I):進程管理模塊(PM)啟動攜帶公鑰的進程(PP)的裝置以及從攜帶公鑰的進程(PP)獲取公鑰的裝置;
[0063]2)進程管理模塊(PM)收到公鑰后,將公鑰提交給認證模塊(CA),從而激活認證模塊(CA)運行的裝置;
[0064]3)認證模塊(CA)獲得公鑰后,從加密芯片提取私鑰,并使用RSA非對稱加密算法進行認證,然后將認證結(jié)果返回給進程管理模塊(PM)的裝置; [0065]所述的認證模塊對應(yīng)的裝置包括:
[0066]A)通過加密芯片的驅(qū)動程序從加密芯片讀出私鑰的裝置;
[0067]B)將私鑰保存到所述存儲器的特定存儲區(qū)域中的裝置;
[0068]C)使用RSA算法對傳入的公鑰進行解密以完成認證的裝置;
[0069]所述的特定存儲區(qū)域只由認證過程對應(yīng)的程序使用,在解密過程中,私鑰及與私鑰相關(guān)的數(shù)據(jù)均存儲在該特定存儲區(qū)域內(nèi),而不使用系統(tǒng)其他存儲區(qū)域進行存儲【解密完成后對特定存儲區(qū)域進行清空】;
[0070]所述的嵌入式系統(tǒng)還包括用于在存儲器中開辟一塊特定存儲區(qū)域用于存儲與加密和解密相關(guān)的數(shù)據(jù)的裝置;所述的存儲器為FLASH存儲器。
[0071]所述的嵌入式系統(tǒng)還包括與處理器相連的觸摸屏控制器;嵌入式設(shè)備為平板電腦,所述的處理器為ExynoS4412,存儲器采用NAND FLASH存儲器;內(nèi)存為DDR3內(nèi)存;還包括USB接口和用于讀寫SD / TF器件的SD / TF插口 ;選用具有UART、I2C、SP1、PC1、USB任一接口的加密芯片,該加密芯片能提供2048位的私鑰。
[0072]加密芯片為TF32A09器件。
[0073]在安全操作系統(tǒng)中,需要硬件系統(tǒng)中提供一塊加密芯片,該芯片需支持RSA非對稱加密算法,且提供2048位私鑰。其與CPU的接口可以是PC1、USB、UART、I2C、SPI等。受保護的存儲器由軟件來實現(xiàn),但硬件上仍需提供一塊非易失存儲器。
[0074]在軟件實現(xiàn)中,按下列步驟實施:
[0075]1.在Boot Loader啟動程序中,對物理地址空間進行劃分,取一段物理地址空間給受保護的存儲器作為特定存儲區(qū)域。
[0076]2.啟動加載Linux時,在剩下的物理空間上建立Linux操作系統(tǒng)的MMU,此時受保護存儲器中的特定存儲區(qū)域?qū)?yīng)的物理地址空間在MMU中不可見。
[0077]3.編寫該特定存儲區(qū)域的底層驅(qū)動程序。此驅(qū)動程序用來完成該特定存儲區(qū)域的讀寫操作。必須按照該存儲器件的芯片手冊中關(guān)于讀、寫等操作的具體指令來編寫程序。受保護存儲器中的特定存儲區(qū)域的驅(qū)動程序只接受CA認證模塊的調(diào)用,對其它內(nèi)核或應(yīng)用程序不可見。
[0078]4.根據(jù)加密芯片與CPU的通訊接口,編寫該接口的驅(qū)動程序。比如如果使用UART接口,那么先實現(xiàn)UART驅(qū)動;如果是使用USB或PCI接口,那么先實現(xiàn)USB或PCI接口。然后根據(jù)加密芯片的芯片手冊要求,編寫私鑰獲取程序,此程序可通過接口驅(qū)動讀取該加密芯片存放的私鑰。私鑰獲取程序只接受CA認證模塊的調(diào)用,對其它內(nèi)核或應(yīng)用程序不可見。[0079]5.在操作系統(tǒng)中,增加CA認證模塊。該模塊:1)可調(diào)用特定存儲區(qū)域的底層驅(qū)動程序;2)可調(diào)用私鑰獲取程序;3)包含非對稱加密RSA算法認證程序。在RSA認證程序中對私鑰的操作均應(yīng)在受保護存儲器中的特定存儲區(qū)域內(nèi)完成,不應(yīng)使用臨時內(nèi)存或其他存儲器,以防止私鑰外泄。然后,再對進程管理PM模塊進行優(yōu)化,將認證過程加入到PM中。此時創(chuàng)建或調(diào)度進程PP前,先進行認證,然后決定運行結(jié)果。
[0080]6.按下列執(zhí)行流程實現(xiàn)進程認證:1)攜帶公鑰的進程(PP)由操作系統(tǒng)PM啟動運行,并提交公鑰給PM,此后PP進入等待狀態(tài);2) CA在操作系統(tǒng)啟動后便開始運行,并一直處于等待狀態(tài);3)當PM收到公鑰后,將公鑰以管道、消息隊列等方式提交給CA,從而激活CA運行;4)CA獲得公鑰后,調(diào)用私鑰獲取程序從加密芯片中提取出私鑰,并使用非對稱加密RSA算法進行認證,然后將認證結(jié)果返回給PM ;5)如果認證通過,PM允許PP繼續(xù)運行,如果認證不通過,PM禁止PP運行。在這個機制中,CA對PP不可見,只由PM調(diào)度;PM與CA之間,必須通過管道、消息隊列等方式交互信息。
[0081]通過完成以上工作,即可建立一個可信計算體系架構(gòu)的安全操作系統(tǒng)。
【權(quán)利要求】
1.一種安全操作系統(tǒng)的實現(xiàn)方法,其特征在于,在硬件系統(tǒng)中設(shè)置一塊支持RSA非對稱加密算法且能提供2048位私鑰的加密芯片和一塊受保護的非易失性的存儲器;所述的存儲器為FLASH存儲器; 在Linux操作系統(tǒng)基礎(chǔ)上,對攜帶公鑰的進程(PP)進行基于非對稱加密算法的認證,如果認證通過,操作系統(tǒng)的進程管理模塊(PM)允許該進程繼續(xù)運行,如果認證不通過,進程管理模塊(PM)禁止該進程運行; 認證的過程為: 1):攜帶公鑰的進程(PP)由進程管理模塊(PM)啟動運行,并提交公鑰給進程管理模塊,此后攜帶公鑰的進程進入等待狀態(tài); 2)進程管理模塊(PM)收到公鑰后,將公鑰提交給認證模塊(CA),從而激活認證模塊(CA)運行; 3)認證模塊(CA)獲得公鑰后,從加密芯片提取私鑰,并使用RSA非對稱加密算法進行認證,然后將認證結(jié)果返回給進程管理模塊(PM); 認證模塊采用以下步驟實施認證: A)通過加密芯片的驅(qū)動程序從加密芯片讀出私鑰; B)將私鑰保存到所述存儲器的特定存儲區(qū)域中; C)使用RSA算法對傳入的公鑰進行解密; 所述的特定存儲區(qū)域只由認證過程對應(yīng)的程序使用,在解密過程中,私鑰及與私鑰相關(guān)的數(shù)據(jù)均存儲在該特定存儲區(qū)域內(nèi),而不使用系統(tǒng)其他存儲區(qū)域進行存儲。
2.根據(jù)權(quán)利要求1所述的安全操作系統(tǒng)的實現(xiàn)方法,其特征在于,受保護的存儲器被劃分為特定存儲區(qū)域即隱藏的地址區(qū)段和不受限制的地址區(qū)段;在受保護的存儲器中開辟一塊所述特定存儲區(qū)域的方法為:通過Boot Loader啟動程序?qū)Υ鎯ζ鞯奈锢淼刂房臻g進行分配,即分為的被隱藏的地址區(qū)段和不受限制的地址區(qū)段;隱藏地址區(qū)段對應(yīng)于特定存儲區(qū)域,又稱為受限制的地址區(qū)段;在%於Loader啟動程序中,通過配置處理器的基地址寄存器以及地址映射關(guān)系,使得Linux操作系統(tǒng)在建立MMU管理時,只在不受限制的地址區(qū)段上進行,而被隱藏的地址區(qū)段不參與MMU建立;使得在Linux系統(tǒng)啟動后,MMU只能管理不受限制的物理地址區(qū)段;而被隱藏地址區(qū)段對MMU不可見,經(jīng)過以上處理后,除認證模塊對應(yīng)的程序外,Linux操作系統(tǒng)及Linux操作系統(tǒng)上運行的程序都不能直接訪問該被隱藏的地址區(qū)段; 通過認證模塊對應(yīng)的程序?qū)υ摱坞[藏的物理地址進行訪問的實現(xiàn)方法為:不通過MMU的地址映射而是采用物理地址對該被隱藏的地址區(qū)段進行操作。
3.一種嵌入式系統(tǒng),其特征在于,采用由權(quán)利要求2所述的方法實現(xiàn)的操作系統(tǒng);該嵌入式系統(tǒng)包括處理器、IXD顯示屏、內(nèi)存、FLASH存儲器和USB接口;IXD顯示屏、內(nèi)存、FLASH存儲器和USB接口均與處理器連接;其特征在于,還包括用于生成私鑰的加密芯片;所述的加密芯片與處理器連接。
4.根據(jù)權(quán)利要求1所述的嵌入式系統(tǒng),其特征在于,還包括對攜帶公鑰的進程(PP)進行基于非對稱加密算法認證的認證裝置;如果認證通過,操作系統(tǒng)的進程管理模塊(PM)允許該進程繼續(xù)運行,如果認證不通過,進程管理模塊(PM)禁止該進程運行。 認證裝置包括1):進程管理模塊(PM)啟動攜帶公鑰的進程(PP)的裝置以及從攜帶公鑰的進程(PP)獲取公鑰的裝置; 2)進程管理模塊(PM)收到公鑰后,將公鑰提交給認證模塊(CA),從而激活認證模塊(CA)運行的裝置; 3)認證模塊(CA)獲得公鑰后,從加密芯片提取私鑰,并使用RSA非對稱加密算法進行認證,然后將認證結(jié)果返回給進程管理模塊(PM)的裝置; 所述的認證模塊對應(yīng)的裝置包括: A)通過加密芯片的驅(qū)動程序從加密芯片讀出私鑰的裝置; B)將私鑰保存到所述存儲器的特定存儲區(qū)域中的裝置; C)使用RSA算法對傳入的公鑰進行解密以完成認證的裝置; 所述的特定存儲區(qū)域只由認證過程對應(yīng)的程序使用,在解密過程中,私鑰及與私鑰相關(guān)的數(shù)據(jù)均存儲在該特定存儲區(qū)域內(nèi),而不使用系統(tǒng)其他存儲區(qū)域進行存儲; 所述的嵌入式系統(tǒng)還包括用于在存儲器中開辟一塊特定存儲區(qū)域用于存儲與加密和解密相關(guān)的數(shù)據(jù)的裝置;所述的存儲器為FLASH存儲器。
5.根據(jù)權(quán)利要求4所述的嵌入式系統(tǒng),其特征在于,還包括與處理器相連的觸摸屏控制器;嵌入式設(shè)備為平板電腦,所述的處理器為EXynos4412,存儲器采用NAND FLASH存儲器;內(nèi)存為DDR3內(nèi)存;還包括USB接口和用于讀寫SD / TF器件的SD / TF插口;選用具有UART、I2C、SP1、PC1、USB任一接口的加密芯片,該加密芯片能提供2048位的私鑰。`
6.根據(jù)權(quán)利要求5所述的嵌入式系統(tǒng),其特征在于,加密芯片為TF32A09器件。
【文檔編號】G06F12/02GK103617128SQ201310672229
【公開日】2014年3月5日 申請日期:2013年12月11日 優(yōu)先權(quán)日:2013年12月11日
【發(fā)明者】劉智臣, 肖弱, 譚永祥, 孫文德, 聶世剛, 黃波 申請人:長城信息產(chǎn)業(yè)股份有限公司, 長沙湘計海盾科技有限公司