本實用新型專利技術涉及一種芯片片外RAM總線接口硬件加密裝置,包括外部總線接口EMI:用于CPU擴展外部存儲器;加解密模塊:連接外部總線接口與RAM存儲器,實現總線數據硬件自動加密寫入與解密讀出;邏輯控制單元:用于控制總線接口及加解密功能模塊。用戶可通過控制邏輯單元關閉加解密功能,實現一種數據寫入讀出的旁路機制,即數據可以以明文方式把數據寫入RAM,并以明文方式讀出,提供數據存儲的靈活性。本實用新型專利技術實現RAM總線接口加密,具有擴展靈活、設計容易、可靠性強等特點。(*該技術在2022年保護過期,可自由使用*)
【技術實現步驟摘要】
本技術涉及計算機科學、信息安全、嵌入式終端領域,特別涉及片外RAM存儲器總線接口加密
技術介紹
RAM存儲器在嵌入式電子產品被廣泛使用,通過總線邏輯(包括地址總線、數據總線、控制總線)與處理器連接,用來暫存正在運行的程序,用于暫存臨時交換數據,具有訪問靈活、讀取速度快等特點。在系統運算的所有臨時數據,都會經過RAM存儲器,即便是一些重要的數據;同時,因為RAM存儲器具有掉電信息丟失的特點;還有,對于存有重要信息的安全產品,第三方一般是無法注入程序。因此,不法分子一般只能通過系統在線狀態下監測總線信號,從面獲取RAM存儲器相關信息。然后對獲取的信息進行一系列的比對分析,取得一些重要的數據,盜取他人秘密。因此,有些設計單位故意在設計時把數據總線連接關系打亂,以期達到迷惑不法分子的目的。但畢竟所有的數據信息還是以原始數據暴露在數據總線上,只是順序上的變化,而且每次系統上電運行時這種順序都是一樣的,仍容易被不法分子破解?,F在對RAM數據保護普遍采用軟件方案,先把數據加密然后燒寫到RAM上。使用數據時,通過在系統上讀取加密過的數據并使用軟件進行解密。因為在加解密過程中,本身也要用到RAM,因此,軟件方案一般只對重要數據在局部存儲空間上使用。這種實現方案存在如下缺陷第一,數據必須先加密再寫入RAM,缺失靈活性;第二,一般使用同一密鑰對數據加密,即密鑰單一,如果要支持每個產品不同的密鑰,生產和軟件輸出復雜;第三,密鑰一個是在數據加密時存在并使用,另一個是在軟件中固化,都存在安全隱患,即存在容易被他人盜取的風險。
技術實現思路
本技術要解決的技術問題,在于為片外RAM總線接口提供一種數據加解密技術方法,達到保護RAM片上數據信息安全。本技術是這樣實現的一種芯片片外RAM總線接口硬件加密裝置,其特征在于包括外部總線接口 EM1:用于CPU擴展外部存儲器;加解密模塊連接外部總線接口與RAM存儲器,實現總線數據硬件自動加密寫入與解密讀出;邏輯控制單元連接至加解密模塊,用于控制總線接口及加解密功能模塊。所述加解密模塊包含XOR運算引擎和密鑰單元,用于在CPU向外部RAM存儲器寫入或讀取數據時,數據與密鑰單元的密鑰經過XOR運算引擎運算后直接寫入RAM存儲器或送到CPU。所述加解密模塊所使用的加解密算法可以在單周期內同步運算,使得該加解密模塊接入總線后,不影響RAM的讀寫性能。其加解密算法使用XOR運算及其擴展技術,即使用動態XOR密鑰。該加解密技術可不單純使用一個固定的XOR密鑰,而是同時依賴一個動態的參數參與XOR運算;從而提高破解的復雜度。其上述固定的XOR密鑰是系統每次上電時隨機生成的,即每次上電該密鑰并不一樣。其數據加解密過程是單周期的,與總線接口操作同步完成,從而CPU從接口總線上可直接讀取到所需的數據,因此不影響RAM作為通用程序存儲器的功能。本技術的優點在于本技術所述的芯片片外RAM總線接口硬件加密裝置,使用異或(XOR)算法,通過硬件實現對總線接口的加解密。用由于XOR運算可逆,硬件邏輯實現簡單;其密鑰通過隨機產生,存儲于SOC片上某存儲單元,該存儲單元在系統啟動后由頂級BOOT控制,控制后只有XOR加解密引擎可以訪問。附圖說明下面參照附圖結合實施例對本技術作進一步的說明。圖1 :本技術之邏輯及應用示意框圖。圖2 :加解密模塊功能示意圖(X0R加密)。圖3 :加解密模塊功能擴展示意圖。具體實施方式有關本技術的特征及
技術實現思路
,請參考以下的詳細說明與附圖,附圖僅提供參考與說明,并非用來對本技術加以限制。圖1是本技術一種芯片片外RAM總線接口硬件加密裝置的邏輯及應用示意框圖。整體上,主控CPU通過外部接口總線EMI與外部RAM存儲器連接并訪問存儲器。本技術外部總線接口加解密部分,包括外部總線接口 EM1:用于CPU擴展外部存儲器;加解密模塊連接外部總線接口與RAM存儲器,實現總線數據硬件自動加密寫入與解密讀出;邏輯控制單元用于控制外部總線接口及加解密模塊功能。上述邏輯控制單元,主要功能是用戶可通過該邏輯控制單元關閉加解密模塊的加解密功能,實現一種數據寫入讀出的旁路機制,即數據可以以明文方式把數據寫入RAM,并以明文方式讀出,提供數據存儲的靈活性。該邏輯控制單元還用于控制加解密模塊內部密鑰單元的操作權限。通過邏輯控制單元可以關閉CPU對密鑰單元的訪問,而后只有加解密邏輯才可以訪問或者說使用密鑰訪問。本技術加解密模塊使用的是異或(XOR)算法。由于XOR運算是可逆的,而且邏輯實現簡單,可以方便地支持8位、16位、32位總線接口。圖2是加解密模塊使用XOR運算的一個邏輯示意圖。CPU向外部RAM存儲器寫入數據時,數據與密鑰單元的密鑰經過XOR運算引擎運算后直接寫入RAM存儲器,即在外部RAM存儲器引腳上的信號是已經加密過的。CPU從RAM上讀取數據時,數據從RAM存儲器出來后,與密鑰單元的密鑰經過XOR運算引擎運算后送到CPU。圖3是加解密模塊XOR加密方案的一種擴展模型。圖示增加一個動態參數來提高密鑰的隨機性。與圖2相比,則是在每次XOR運算時把這個動態參數一起參與XOR運算。例如,使用RAM存儲器的物理地址信號來作為這個動態參數,則在訪問RAM存儲器的每一個地址單元時其密鑰都是不一樣的,增加了不法分子通過監測接口信號分析數據的難度。上述示例使用物理地址信號作為動態參數,該參數是使用一個固定的信號。盡管地址信號是變化的,但還是有直接規律的。因此,對圖3的另一種變形方案是讓這個動態參數可配置。使用可配置后,用戶可以對不同RAM存儲區域使用不同的參數,或者根據軟件運行環境來決定該參數,則這個動態參數就可以在程序運行過程中調整,這樣可以極大程序上提升該總線加密方案的破解難度。本技術中,密鑰單元的密鑰是通過隨機數生成模塊隨機生成的,在每次系統上電時自動生成并存入密鑰單元。該密鑰存儲單元在設計上是可控制的,即由邏輯控制單元控制,可通過軟件配置,使得該單元不受CPU控制,而只能由加解密模塊讀取。在應用上由頂級Boot實現這種控制,這樣一旦系統跳出頂級Boot,用戶就再也無法訪問該密鑰。從而保證,在整個軟件代碼運行過程中,程序不會接觸到密鑰,保證了密鑰不會泄露。因為頂級Boot都是由產品生產廠家實現和維護,因此可以保證該密鑰是受保護的,同時也保證該密鑰不會被隨意的篡改(篡改將導致存儲在RAM存儲器中的數據解密的結果與寫入的明文不一致)。上述為本技術的具體實施方式,并不用以限制本技術,在本技術揭露的技術范圍內,任何對本技術所做的修改和替換,都應涵蓋在本技術的保護范圍之內。本文檔來自技高網...
【技術保護點】
一種芯片片外RAM總線接口硬件加密裝置,其特征在于包括:外部總線接口EMI:用于CPU擴展外部存儲器;加解密模塊:連接外部總線接口與RAM存儲器,實現總線數據硬件自動加密寫入與解密讀出;邏輯控制單元:連接至加解密模塊,用于控制總線接口及加解密功能模塊。
【技術特征摘要】
1.一種芯片片外RAM總線接口硬件加密裝置,其特征在于包括外部總線接口 EM1:用于CPU擴展外部存儲器;加解密模塊連接外部總線接口與RAM存儲器,實現總線數據硬件自動加密寫入與解密讀出;邏輯控制單元連接至加解密模塊,用于控制總線接口及加解密功能模塊。2.根據權利要求1所述的芯片片外RAM總線接口硬件加密裝置,其特征在于所述加解密模塊包含XOR運算引擎和密鑰單元,用于在CPU向外部RAM存儲器寫入或讀取數據時,數據與密鑰單元的密鑰經過XOR運算引擎運算后直接寫入RAM存儲器或送到CPU。3.根據權利要求1所述的芯片片外RAM總線接口硬件加密裝置,其特征在于所述加解密模塊所使用的加解密算法可以在單周期內同步運算,使得該加解密模塊接入總線后,不影響RAM...
【專利技術屬性】
技術研發人員:林峰,陳挺立,汪孝晃,葉明統,宋慰云,
申請(專利權)人:福建睿矽微電子科技有限公司,
類型:實用新型
國別省市: