新四季網

安全管理單元、包括它的主機控制器接口及其操作方法

2023-05-24 06:36:51

安全管理單元、包括它的主機控制器接口及其操作方法
【專利摘要】一種操作主機控制器接口的方法,包括:從主存儲器接收包括扇區信息的緩衝區描述符;通過使用緩衝區描述符中所包括的源地址來取數據;使用扇區信息,選擇安全策略表中所包括的多個記錄其中之一;和,通過使用所選記錄中所包括的安全策略,確定是否加密所取的數據。
【專利說明】安全管理單元、包括它的主機控制器接口及其操作方法
[0001]相關專利申請的交叉引用
[0002]要求2012年10月19日在韓國知識產權局遞交的第10-2012-0116890號韓國專利申請的優先權,其主題通過引用被全部包含於此。
【技術領域】
[0003]本發明構思涉及主機控制器接口。更具體地,本發明構思涉及主機控制器接口中的安全管理單元,所述安全管理單元能夠根據對應存儲設備的區域來管理安全策略。本發明構思還涉及操作包括所述安全管理單元的主機控制器接口的方法,以及包括這種主機控制器接口的設備。
【背景技術】
[0004]數據安全是當代計算機系統內的存儲設備的設計和操作中的重要考慮。有效的數據安全方法必須防止對被存儲數據的未授權訪問,無論這種訪問企圖讀取、操縱、變更、篡改、偽造還是提取被存儲的數據。有效的數據安全方法也必須防止外部代理程序(externalagent)阻止合法用戶訪問存儲的數據。
[0005]在被存儲的數據期間,主機控制器接口與對應的存儲設備之間的數據總線(和由數據總線傳遞的相稱的數據信號)經常被作為目標。結果,很多常規系統將對在主機控制器接口和存儲設備之間傳遞的數據進行加密。為此目的,各種加密方法和/或加密模塊可被結合主機控制器接口使用。只要數據安全策略被跨越存儲設備的所有區域施加於所有被存儲的數據,這種常規方法就相當有效。
[0006]S卩,當使用所謂的「安全處理器」來管理用於存儲設備的特定數據安全策略時,在數據處理必須由「非安全處理器」執行時,遇到巨大的開銷。實際上,在具有不同數據安全策略的數據之間切換的處理器降低了所構成計算機系統的總體性能。

【發明內容】

[0007]本發明構思的某些實施例提供了包括安全策略表的安全管理單元,所述安全策略表可被用來根據存儲設備的特定區域而有區別地管理安全策略。使用這些安全管理單元易於使計算機系統內通常因安全策略上的改變而出現的計算開銷最小化。本發明構思的某些實施例提供了一種包括這種類型的安全管理單元的主機控制器接口。本發明構思的某些實施例提供了操作包括這種類型的安全管理單元的主機控制器接口的方法,以及包括這種主機控制器接口的設備。
[0008]在一個實施例中,本發明構思提供了一種方法,包括:從主存儲器接收包括扇區信息的緩衝區描述符;通過使用緩衝區描述符中所包括的源地址取數據;使用扇區信息從安全策略表選擇記錄;和,使用由所選記錄定義的安全策略確定是否加密所取的數據。
[0009]在另一實施例中,本發明構思提供了一種安全管理單元,包括:存儲在存儲器中並包括第一記錄和第二記錄的安全策略表,第一記錄和第二記錄分別定義用於存儲設備的第一區域和第二區域的第一安全策略和第二安全策略;和,扇區訪問控制邏輯,被配置成響應於緩衝區描述符中所包括的扇區信息,在第一記錄和第二記錄之間選擇,並提供指示根據第一安全策略還是第二安全策略來加密數據的第一控制信號。
[0010]在另一實施例中,本發明構思提供了一種主機控制器接口,包括:存儲控制器,其使用緩衝區描述符中所包括的源地址從主存儲器讀取數據,並響應於緩衝區描述符中所包括的扇區信息提供扇區密鑰;安全管理單元,其響應於扇區密鑰,從存儲在存儲器中的安全策略表選擇記錄,並提供定義了與所選記錄對應的安全策略的第一控制信號;和,數據保護器,其響應於第一控制信號確定是否對數據執行加密操作,其中,安全策略表包括多個記錄,每一記錄分別定義用於存儲設備中的多個區域中的至少一個的對應安全策略。
[0011]在另一實施例中,本發明構思提供了一種計算機系統,包括:存儲設備,其包括多個區域;中央處理單元(CPU),其在運行訪問所述多個區域中的區域的應用程式時生成緩衝區描述符;主存儲器,其存儲緩衝區描述符和數據;和,主機控制器接口,其使用緩衝區描述符中所包括的源地址從主存儲器讀取數據,響應於扇區信息選擇多個記錄其中之一,並基於由所選記錄定義的安全策略確定是否對數據執行加密操作,其中,多個記錄中的每一個管理用於存儲設備中的多個區域的每一個的不同安全策略。
【專利附圖】

【附圖說明】
[0012]圖1是根據本發明構思實施例的計算機系統的框圖;
[0013]圖2是根據本發明構思另一實施例的計算機系統的框圖;
[0014]圖3是示出可在圖1和圖2的計算機系統中使用的緩衝區描述符的一個例子的概念圖;
[0015]圖4是用於圖1的存儲設備的部分存儲器映射的框圖;
[0016]圖5是示出可在圖1和圖2的計算機系統中使用的主機控制器接口的框圖;
[0017]圖6是示出可在圖5的安全管理單元中使用的安全策略表的概念圖;
[0018]圖7是進一步示出圖5的安全管理單元的框圖;
[0019]圖8是示出根據本發明構思實施例的用於直接存儲器訪問操作的初始化操作的操作圖;
[0020]圖9,包括圖9A和圖9B,是流程圖,示出根據本發明構思的實施例的用於直接存儲器訪問操作的操作方法;
[0021]圖10是示出可在圖5的安全管理單元中使用的另一安全策略表的概念圖;
[0022]圖11是進一步示出如被圖10的安全策略表修改的、圖9的直接存儲器訪問操作的部分的部分流程圖;
[0023]圖12是當在本發明構思的實施例中使用嵌入式多媒體卡(eMMC)時可被存儲在安全策略表中的信號的列表;
[0024]圖13是可被包括在圖5的安全管理單元中的又一安全策略表的概念圖;
[0025]圖14是示出可在圖1和圖2的計算機系統中使用的緩衝區描述符的另一例子的概念圖;
[0026]圖15、圖16和圖17是示出可在圖1和圖2的計算機系統中使用的主機控制器接口的其他例子的相應框圖;和[0027]圖18是根據本發明構思另一實施例的計算機系統的框圖。
【具體實施方式】
[0028]現在將參考附圖更詳細地描述本發明構思的實施例。但是,本發明構思可被以很多不同的形式具體實施,並且不應被理解為僅限於所示出的實施例。相反,提供這些實施例以使本公開將會透徹和完整,並且將向本領域技術人員全面地傳達本發明構思的範圍。貫穿上面描述和附圖,相同的參考數字和標記代表相同或者類似的元素。
[0029]將會理解,當一元件被稱為被「連接」或者「耦合」到另一元件時,其可以直接連接或者耦合到另一元件,或者,可能存在居間的元件。相反,當一元件被稱為被「直接連接」或者「直接耦合」到另一元件時,不存在居間的元件。如這裡所使用的,術語「和/或」包括相關聯的被列出項目中的一個或更多個的任意和所有組合,並可以被縮寫為「/」。
[0030]將會理解,儘管這裡可能使用術語第一、第二等來描述各種元件,但是這些元件不應被這些術語限制。這些術語只被用來將一個元件與另一個加以區分。例如,第一信號可以被稱為第二信號,並且類似地,第二信號可以被稱為第一信號而不偏離本公開的教導。
[0031]這裡使用的術語僅僅是為了描述特定實施例,並非旨在限制本發明構思。如這裡所使用的,單數形式「一」、「一個」和「該」預期也包括複數形式,除非上下文清楚地另有指示。還將會理解,術語「包含」或「包括」在本說明書中被使用時,規定了存在所陳述的特徵、區域、部分、步驟、操作、元件,和/或部件,但是不排除存在或者添加一個或更多個其他的特徵、區域、部分、步驟、操作、元件、部件,和/或其組。
[0032]除非另外定義,否則這裡使用的所有術語(包括技術和科學術語)具有和本發明所屬【技術領域】的技術人員通常理解的相同的含義。還將會理解,例如在常用詞典中定義的那些的術語應該被解釋為具有與其在相關技術和/或本發明的上下文中的含義相符的含義,並且將不會以理想化或者過於形式化的意義解釋,除非這裡明確地如此定義。
[0033]這裡使用術語「計算機系統」來寬泛地代表能夠對要被存儲在數據存儲設備中的數據和/或從數據存儲設備取回的數據執行某種形式的數據處理的數字平臺。計算機系統將包括一般可以被稱作「處理器」的邏輯電路。在本發明構思的某些實施例中,計算機系統的處理器可以被說成依據構成的作業系統(OS) 「運行」一個或更多個應用程式。
[0034]和處理器運行應用程式相關或者被其指示的數據(例如,讀/寫數據)可以被存儲在「主存儲器」中。因此,存儲在主存儲器中的「數據」可以是定義應用程式內的命令的程序數據,和/或被處理器響應於命令生成或者操作的實際數據(例如,用戶數據、有效載荷數據、計算數據,等等)。
[0035]如本領域技術人員所理解的那樣,計算機系統可以相繼地或者同時地(B卩,至少運行時間上重疊)運行多於一個應用程式。一般地,數據可在應用程式之間被共享,只是條件是所述數據擁有能夠被每一應用程式一致地理解的「安全定義」。但是,和一個應用程式相關聯的某些數據定義可能不被另一應用程式理解。例如,某些智慧卡運行使用安全密鑰的安全應用程式,所述安全密鑰對執行驗證、認證和/或數據解密是必不可少的。保護安全密鑰和/或有關於安全密鑰定義的相關聯數據(此後共同或者單獨地叫作「安全密鑰要求數據」)是任何數據安全方法中的重要考慮。
[0036]圖1是示出根據本發明構思實施例的計算機系統的框圖。參考圖1,計算機系統1000包含中央處理單元(CPU)llOO、主存儲器1200、主存儲器控制器1300、主機控制器接口1400和數據存儲設備1500。計算機系統1000可以是諸如行動電話或者膝上型計算機的行動裝置、個人計算機、伺服器計算機、可編程家用電器,或者諸如大型機的通用或者專用計算機系統。
[0037]CPUl 100控制計算機系統1000的總體操作,並且在圖1所示實施例中包括安全CPUl110和非安全CPUl 120。安全CPUl110可用來運行計算機系統引導操作和某些認證過程。相反,不允許非安全CPU1120訪問安全模塊或者存儲在「加密數據區域」中的數據。
[0038]例如,假設計算機系統1000是能夠運行要求高等級數據安全性的應用程式(例如,銀行應用程式或者證券經紀應用程式)的行動裝置。這種類型的「高安全性應用程式」是要求數據認定或者認證的那一種,這樣必須由安全CPU1110執行。但是,計算機系統1000可能也能夠使用非安全CPU1120運行多個「低安全性應用程式」(例如電子書或者遊戲應用程式)。
[0039]因此,當「當前應用程式」(即當前被CPU1100運行的應用程式)訪問存儲在存儲設備1500中的數據時,CPU1100可以生成標識相關聯的數據(例如讀/寫數據)被存儲的位置的「緩衝區描述符」(buffer desCriptor,BD),然後儘管每一生成的緩衝區描述符可以被存儲在主存儲器1200的特定緩衝區描述符(BD)區域1210中,但是把緩衝區描述符與數據一起存儲在主存儲器1200中。在這個上下文中,主存儲器1200可以被理解為用來臨時存儲數據的數據存儲介質(例如,系統存儲器或者高速緩存存儲器)。因此,主存儲器1200可以用來根據文件系統形式存儲數據,和/或把由CPU1100生成的緩衝區描述符存儲在BD區域1210 中。
[0040]和CPU1100協同,主存儲器控制器1300可以用來控制主存儲器1200。主存儲器控制器1300可被配置成支持多個總線接口埠,藉此主存儲器控制器1300可以被連接到安全CPUl 110、非安全CPUl 120和主機控制器接口 1400。
[0041]主機控制器接口 1400提供基於硬體的能夠在主存儲器1200和存儲設備1500之間傳遞數據(例如,DATA和DATA』)的接口。在本發明構思的某些實施例中,主機控制器接口 1400可以提供直接存儲器訪問(DMA)主控功能。具有DMA主控功能的主機控制器接口1400可用來生成由安全CPU1110建立的具有給定「安全定義」或者「安全等級」的「安全事務處理」。其也可以被用來生成由非安全CPUl 120建立的不具有特定安全等級(或者具有相對較低的安全等級)的「非安全事務處理」。根據本發明構思的某些實施例,主機控制器接口1400和存儲設備1500可以使用串行ATA (SATA)接口通信,並且扇區可被用作地址單元。
[0042]假設存儲設備1500是能夠長期(非易失)存儲大量數據(例如軟體、用戶數據等)的數據存儲介質。如圖1中所示,存儲設備1500可以包括被提供用於存儲要求安全性的數據的加密區域1510和被提供用於存儲一般數據或者不要求安全性的數據的非加密區域1520。只有生成和訪問來自加密區域1510的要求安全性的數據的高安全性應用程式才可以訪問加密區域1510。
[0043]圖2是示出根據本發明構思某些實施例的計算機系統的框圖。參考圖2,計算機系統2000包含CPU2100、主存儲器2200、主存儲器控制器2300、主機控制器接口 2400和存儲設備2500。CPU2100、主存儲器2200、主存儲器控制器2300和主機控制器接口 2400經由系統總線2600通信。[0044]和圖1的計算機系統1000相比,圖2中的計算機系統2000中的存儲器控制器2300被假設只支持單個總線接口埠。因此,在任意給定時間點,CPU2100可以經由系統總線2600電連接到存儲器控制器2300或者主機控制器接口 2400。
[0045]CPU2100可以工作於安全模式2110或者非安全模式2120。這些工作模式中的每一個可被根據正由CPU2100運行的當前應用程式來確定。當CPU2100響應於低安全性應用程式而工作於非安全模式2120時,其同時不可訪問安全模塊或者加密的存儲器區域。
[0046]圖2的主機控制器接口 2400的結構和操作可以和圖1的主機控制接口 1400大致相似。
[0047]圖3是示出可在本發明構思的實施例中使用的緩衝區描述符的一個可能數據結構的概念圖。參考圖1、圖2和圖3,緩衝區描述符10包括源地址11、目的地址12、數據長度13和到下一目的地的指針14。
[0048]源地址11指示存儲源數據(B卩,要被處理的數據)的位置。目的地址12指示存儲結果數據(即,隨後處理後的數據)的位置。數據長度13指示要被傳遞的數據的大小,並且下一目的地地址14指示當前存儲器訪問操作之後的下一存儲訪問操作的位置。
[0049]在讀操作期間,CPUl 100/2100生成和被存儲在存儲設備1500/2500中的讀數據(DATA』)相關聯的緩衝區描述符10。這裡,緩衝區描述符10的源地址11可以包括存儲設備1500或2500的地址,並且目的地地址12可以包括主存儲器1200或2200。
[0050]在寫操作期間,CPU1100/2100生成和被臨時存儲在主存儲器1200/2200中並將要編程到存儲設備1500/2500的寫數據(DATA)相關聯的緩衝區描述符10。這裡,緩衝區描述符10的源地址11可以是主存儲器1200/2200的地址,而目的地地址12可以包括存儲設備1500/2500 的地址。
[0051]此後,將參考圖5、圖15、圖16和圖17更詳細地描述某些主機控制器接口1400/2400的示範性結構和操作。
[0052]圖4是示出用於圖1的存儲設備1500的部分存儲器映射的一個可能例子的框圖。存儲設備1500可以被具體實施在磁性存儲設備中,如硬碟驅動器(HDD)、諸如光碟(⑶)的光學存儲盤,或者諸如固態驅動器(SSD)的基於快閃記憶體的存儲器、多媒體卡(MMC)、嵌入式MMC(eMMC)或者通用快閃記憶體存儲器(universal flash storage, UFS)。
[0053]假設使用了 HDD,信息可以被存儲在高速旋轉的磁碟上。使用一個或更多個讀/寫頭,可以從磁碟讀取數據,和/或將數據寫到磁碟。和HDD相比,常規SSD執行相對高速的讀操作,但是相對低速的寫操作。
[0054]MMC是存儲和移動各種數字設備的數據的可拆卸或可附接設備,所述數字設備諸如蜂窩電話、智慧型電話、移動國際網際網路設備(mobile internet device, MID)、計算機,或者數位相機,並且由用於存儲數據的存儲空間和負責操作與控制的部分配置。
[0055]UFS是基於快閃記憶體的具有低功耗的存儲設備。UFS可以被用作高速串行接口,同時具有如SSD的存儲容量,內置用於改善隨機訪問功能的命令排隊功能,並且內置串行接口的功率節省功能。
[0056]一般地,存儲設備1500可以具有CHS (cylinder, head, and sector,柱、頭和扇區)地址單元或者邏輯塊地址(logical block address, LBA)0 LBA被用來指定存儲設備1500中的數據塊的位置。LBA可以指定地址或者塊(B卩,索引)。扇區和邏輯塊可以是512位元組的整數倍,如512位元組或者1024位元組。
[0057]參考圖4,存儲設備1500A包括多個區域31到34和38,每一個分別能夠存儲具有不同安全定義(或者安全策略)的數據。根據存儲設備的類型,多個區域的每一個可以被劃分為段單元、扇區單元或者分區單元。
[0058]根據針對當前應用程式規定的安全等級,在DMA操作期間可以確定具體的安全策略。因此,當前應用程式的安全策略確定例如是否可獲得對特定區域的訪問,存儲在特定區域中的數據是否被加密,以及寫操作是否可用。
[0059]因此,在所示的圖4例子中,第一區域31隻可以被具有特定安全策略的安全應用程式訪問。因此,第一區域31隻存儲加密數據,並且對於存儲在第一區域31中的加密數據,只有讀操作被允許。第三區域33被類似地定義。
[0060]但是,第二區域32可以被非安全應用程式訪問,只能存儲純文本(非加密)數據,並且讀操作和寫操作都被允許。
[0061]第四區域34可以被非安全應用程式訪問,能夠存儲加密數據,並且只有讀操作被允許,並且第八區域38被類似地定義。
[0062]圖5是進一步示出可在圖1的計算機系統中使用的主機控制器接口的一個可能例子的框圖。參考圖1和圖5,主機控制器接口 1400A包含存儲控制器310、安全管理單元320、數據保護器330和事務處理類型寄存器340。
[0063]存儲控制器310控制涉及存儲在存儲設備1500中的數據的數據訪問操作。當存儲在存儲設備1500中的數據被按扇區標識時,通常理解的把扇區密鑰分配給每一扇區的XTS-AES方法可以被用作加密存儲在存儲設備1500中的數據的一種方法。
[0064]在圖5的所示例子中,存儲控制器310從主存儲器1200接收緩衝區描述符(BD)。然後,存儲控制器310可以(例如)使用緩衝區描述符中所包括的源地址來標識存儲在主存儲器1200中的特定數據(DATA)。
[0065]此外,存儲控制器310依據扇區描述符BD中所包括的扇區信息,把扇區密鑰(SECT0R_KEY)提供給數據保護器330。扇區描述符BD中所包括的扇區信息可被存儲控制器310用作生成對應扇區地址(SECT0R_ADD)的信息,所述扇區地址被傳遞到存儲設備1500。這裡,無論存儲控制器310隨後在數據處理操作期間如何使用扇區信息,可以從扇區信息唯一地生成一個扇區密鑰。
[0066]在本發明構思的某些實施例中,安全管理單元320包括具有多個記錄的安全策略表,每一記錄管理用於存儲設備1500的特定區域的安全策略。將參考圖6更詳細地描述安全策略表的一個可能例子。
[0067]因此,響應於由存儲控制器310提供的給定扇區密鑰(SECT0R_KEY),安全管理單元320可以選擇安全策略表記錄其中之一。安全管理單元320可以把加密/解密指示信號ED輸出到數據保護器330,根據所選記錄中所包括的安全策略確定是否對數據執行加密操作。此外,安全管理單元320可以輸出訪問指示信號IAE,根據所選記錄所指示的安全策略確定是否允許訪問操作(例如讀/寫操作)。即,根據訪問指示信號IAE,由存儲控制器310提供的讀/寫信號(R/W)被安全管理單元320中斷。
[0068]響應於由安全管理單元320提供的加密/解密指示信號ED,數據保護器330可被用來對經由主機控制器接口 1400A要被寫到存儲設備1500的寫數據(DATA)和從存儲設備1500獲取的讀數據(DATA』 )執行加密/解密操作。例如,基於加密/解密指示信號ED,數據保護器330可以確定針對讀/寫數據執行加密操作、解密操作還是旁路操作。
[0069]當對寫數據(DATA)執行加密操作時,數據保護器330可以使用由數據控制器310提供的扇區密鑰(SECT0R_KEY)執行加密操作。
[0070]根據接收到的緩衝區描述符BD,事務處理類型寄存器340可被用來存儲與當前應用程式相關聯的安全等級信息。即,事務處理類型寄存器340可以存儲狀態信息,該狀態信息指示在主機控制器接口 1400A中執行的DMA操作是具有給定安全等級的安全事務處理類型還是非安全事務處理類型。根據每一事務處理類型的安全等級信號(S/NS)被傳遞到安全管理單元320。這裡,假設安全管理單元320和數據保護器330的各自操作,以及存儲在事務處理類型寄存器340中的信息只可以被安全CPUl110改變。
[0071]圖6是示出可被包括在圖5的安全管理單元中的安全策略表的一個可能例子的概念圖。
[0072]參考圖6,安全策略表322A包括多個記錄,每一記錄管理用於存儲設備1500的一個或更多個區域(例如,扇區)的特定安全策略。
[0073]圖6的安全策略表322A只包括八個記錄41到44和48。記錄41到44和48中的每一個把存儲在基扇區地址寄存器中的扇區地址設置為起始地址,以便表達存儲設備1500中所包括的區域的每一範圍,並設置每一區域的大小。這裡,和每一記錄41到44和48對應的每一區域的大小(SIZE)可以被相同或者不同地設置。
[0074]在記錄41到44和48中的每一個中,包括指示鑑於安全策略存儲的數據是有效還是無效(VALID/INVALID)的信息。安全策略還可以指示對於存儲設備1500的特定區域,讀(R)和/或寫(W)訪問是否被允許。安全策略還可以指示在安全(S)或者非安全(NS)的基礎上是否允許針對存儲設備1500的特定區域的訪問。最後,安全策略可以指示有關於寫到區域或者從區域讀取的數據是否可以執行加密(Enc)操作。
[0075]在圖6的所示例子中,假設了存儲在和記錄41到44相關聯的區域(扇區)中的數據有效。
[0076]從存儲在基扇區地址寄存器I中的地址,第一區域具有A個扇區的大小。在第一區域中只可以執行讀操作,第一區域只可以被具有安全等級的應用程式訪問,並且加密數據可以被存儲在第一區域中。
[0077]從存儲在基扇區地址寄存器2中的地址,第二區域具有B個扇區的地址。在第二區域中,讀操作和寫操作都可以被執行,並且第二區域不僅可以被具有安全等級的應用程式訪問,而且也可以被具有非安全等級的應用程式訪問,並且非加密數據(NonEnc)可以被存儲在第二區域中。
[0078]從存儲在基扇區地址寄存器3中的地址,第三區域具有C個扇區的地址。在第三區域中,讀操作和寫操作都可以被執行,並且第三區域僅可以被具有安全等級的應用程式訪問,並且加密數據可以被存儲在第三區域中。
[0079]從存儲在基扇區地址寄存器4中的地址,第四區域具有D個扇區的地址。在第四區域中,只可以執行讀操作,並且第四區域不僅可以被具有安全等級的應用程式訪問,而且也可以被具有非安全等級的應用程式訪問,並且加密數據可以被存儲在第四區域中。
[0080]和前述的相反,存儲在和第八記錄48相關聯的第五區域中的數據是無效的。[0081]根據本發明構思的某些實施例,可以使用不同的控制方法建立特定的安全策略(以及安全策略表322A中的對應記錄)。
[0082]圖7是進一步示出圖5的安全管理單元320的框圖。共同參考圖1、圖5、圖6和圖7,安全管理單元320包含表訪問控制邏輯321、扇區訪問控制表322和扇區訪問控制邏輯323。圖6中所示的安全策略表322A是扇區訪問控制表322的一個例子。
[0083]響應於從安全CPUl110輸出的表更新命令TU_CMD,表訪問控制邏輯321可以改變存儲在扇區訪問控制表322中的、存儲設備150的每一區域中的安全策略。當表更新命令TU_CMD被從非安全CPUl 120輸入時,表訪問控制邏輯321不把安全策略改變信號TU傳送到扇區訪問控制表322,而是把錯誤信號TUE傳送到非安全CPU1120。
[0084]響應於從安全CPUl110輸出的表更新命令TU_CMD,表訪問控制邏輯321可以生成用於改變扇區訪問控制表322的至少一個記錄的安全策略改變信號TU。
[0085]因此,也被稱為安全策略表322的扇區訪問控制表可以包括多個記錄,每一記錄管理用於存儲設備1500的一個或更多個區域的安全策略。例如,圖7的扇區訪問控制邏輯323可被用來從存儲控制器310接收扇區密鑰(SECT0R_KEY)和訪問操作信號(R/W),並從事務處理類型寄存器340接收安全等級信號(S/NS)。
[0086]然後,響應於扇區密鑰,扇區訪問控制邏輯323可以把用於選擇多個基扇區地址寄存器其中之一的記錄選擇信息(SNI)傳遞到安全策略表322。響應於記錄選擇信息,安全策略表322把和所選基扇區地址寄存器對應的選擇記錄(SNE)傳遞到扇區訪問控制邏輯323。
[0087]S卩,扇區訪問控制邏輯323可以基於扇區密鑰選擇安全策略表322的記錄其中之一。扇區訪問控制邏輯323可以把加密/解密指示信號(ED)輸出到數據保護器330,依據所選記錄(SNE)中所包括的安全策略指示是否加密數據,並把訪問指示信號(IAE)輸出到存儲控制器310。
[0088]響應於訪問指示信號IAE,存儲控制器310可以把扇區地址(SECT0R_ADD)和加密數據(DATA』 )輸出到存儲設備1500。存儲設備1500可以把加密數據(DATA』 )存儲在和扇區地址對應的區域中。在這種情況下,扇區地址可以包括目的地址12和數據長度13中的至少一個。
[0089]圖8是示出根據本發明構思的某些實施例的在DMA操作期間可被執行的初始操作的操作圖。參考圖1、圖5和圖8,安全CPU1110初始安全管理單元320和數據保護器330(SllO)0
[0090]之後,安全CPU1110把事務處理類型寄存器340設置於非安全狀態,所以非安全CPU1120被運行(S120)。當非安全CPU1120操作應用程式時,非安全CPU1120生成緩衝區描述符BD,並且被生成的緩衝區描述符BD通過主存儲器控制器1300被存儲在主存儲器1200的存儲區域1210中。
[0091]當緩衝區描述符BD的起始地址指向存儲控制器310 (S140)時,起始地址被存儲在起始寄存器311中(S150)。之後,基於存儲在存儲控制器310的起始寄存器311中的起始地址,可以開始DMA操作。
[0092]圖9,包括圖9A和圖9B,是流程圖,概括了根據本發明構思實施例的一種可以藉其執行直接存儲器訪問(DMA)操作的操作方法.[0093]參考圖1、圖5、圖9A和圖9B,存儲控制器310通過使用存儲在起始寄存器311中的起始地址,從主存儲器1200的存儲區域1210讀取包括扇區信息的緩衝區描述符BD(S211 )。這裡,緩衝區描述符(BD)由用於訪問和扇區信息對應的、存儲設備1500的特定區域的應用程式生成。緩衝區描述符通過數據保護器330輸入存儲控制器310。
[0094]存儲控制器310通過使用緩衝器描述符中所包括的源地址(例如,圖3的11),讀或者取存儲在主存儲器1200中(例如,和源地址對應的存儲區域)的數據(DATA)。(S212)。
[0095]存儲控制器310基於緩衝區描述符BD中所包括的扇區信息,生成扇區密鑰(SECT0R_KEY),並把扇區密鑰傳送到安全管理單元320和數據保護器330 (S213)。
[0096]響應於從存儲控制器310輸出的扇區密鑰,安全管理單元320選擇安全策略表322中所包括的多個記錄其中之一(S214)。這裡,安全策略表322包括記錄,每一記錄管理用於存儲設備1500中所包括的每一區域的安全策略。
[0097]使用所選記錄中所包括的安全策略,安全管理單元320確定是否加密所取的數據
(5215)。當需要對所取的數據執行加密操作時,數據保護器330可以使用例如扇區密鑰來加密數據。但是,當不需要對所取數據執行加密操作時,數據保護器330旁路並把數據傳送到存儲控制器310。
[0098]作為用於確定是否在存儲設備1500的特定區域中寫數據的第一確定步驟,安全管理單元320把所選記錄中所包括的安全等級信息和應用程式的安全等級信息進行比較
(5216)。這裡,應用程式的安全等級信息被存儲在事務處理類型寄存器340中,並被作為安全等級信號(S/NS)傳送到安全管理單元320。
[0099]當安全策略表(例如,圖6的322A)中所包括的安全等級信息(例如,圖6的S或者NS)等於應用程式的安全等級信息時,安全管理單元320可以允許應用程式訪問存儲設備1500的對應區域,例如,對應的扇區區域(S217)。
[0100]但是,當安全策略表中所包括的安全等級信息不等於應用程式的安全等級信息時,安全管理單元320不允許應用程式訪問存儲設備1500的對應區域,例如,對應扇區區域(S223)。
[0101]作為用於確定是否在存儲設備1500的特定區域中寫數據的第二確定步驟,安全管理單元320把所選記錄中所包括的訪問操作信息和數據的輸入/輸出操作信息進行比較
(5218)。這裡,數據的輸入/輸出操作信息被作為訪問操作信號(R/W)從存儲控制器310傳送到安全管理單元320。
[0102]當安全策略表中所包括的訪問操作信息等於數據的輸入/輸出操作信息時,安全管理單元320可以允許應用程式訪問存儲設備1500的對應區域,例如,對應扇區區域
(5219)。
[0103]但是,當安全策略表中所包括的訪問操作信息不等於數據的輸入/輸出操作信息時,安全管理單元320不允許應用程式訪問存儲設備1500的對應區域,例如,對應扇區區域(S223)。
[0104]圖9僅示出了每一確定步驟S216和S218順次進行的一個例子;但是,數據解密操作步驟S215、第一確定步驟S216和第二確定步驟S218可以獨立地進行,或者至少兩個步驟同時進行。
[0105]當允許對存儲設備1500的特定區域的數據訪問時,運行直接存儲器訪問(DMA)操作。存儲控制器210等待完成對存儲設備1500的特定區域的DMA操作。
[0106]當DMA操作完成並且緩衝區描述符被順次具體實施時,存儲控制器310檢查下一緩衝區描述符是否有效(S221)。當下一緩衝區描述符有效時,存儲控制器310返回到從主存儲器1200讀下一緩衝區描述符的步驟(S211)。但是,當下一緩衝區描述符不存在或者無效時,存儲控制器310完成DMA操作(S222)。
[0107]當DMA操作被成功完成或者DMA操作因對對應扇區區域的訪問失敗而失敗時,存儲控制器310生成情況的狀態信息,非安全CPU1120從存儲控制器310接收狀態信息(S225)。
[0108]圖10是示出可對本發明構思的某些實施例使用的安全策略表的另一例子的概念圖,並且圖11是概括和圖10的安全策略表相關聯的操作方法的流程圖。
[0109]當存儲設備1500包括很多區域,在安全管理單元320中具有很多對應記錄時,可能越來越多地消耗硬體資源。當包括所有記錄的安全策略表被存儲在主存儲器1200中並且安全管理單元320中的表如轉換檢測緩衝器(translation look-a-side buffer, TLB)一樣工作時,硬體消耗可以降低。
[0110]安全策略表被包括在圖5的安全管理單元中。參考圖10,安全策略表322B包括記錄51到55,每一個管理用於存儲設備1500中所包括的每一區域的安全策略。
[0111]安全策略表322B中所包括的記錄的數量可以被多種多樣地設置,並且和每一記錄對應的、存儲設備1500的區域的大小可以被相同設置。根據本發明構思的示範性實施例,虛地址被存儲在安全策略表322B中,並且虛地址可以不和物理地址一致。
[0112]在每一記錄51到55中,存儲了關於存儲在安全策略表322B的每一記錄51到55中的值有效還是無效VALID/INVALID的信息,以及安全策略。
[0113]安全策略可以包括以下至少一個:是否允許對和每一記錄51到55對應的、存儲設備1500的每一區域的訪問READ/WRITE (讀/寫)、根據安全等級是否允許對每一區域的訪問SE⑶RE/N0N-SE⑶RE (安全/非安全),以及是否針對每一區域對輸入/輸出數據執行加密操作 ENCRYPTION/NON-ENCRYPTION (加密 / 非加密)。
[0114]例如,由於第一記錄51的有效性VALID/INVALID是有效VALID,所以存儲在和存儲設備1500的第一區域對應的第一記錄51中的值是有效的。在第一區域中只可以執行讀操作R,第一區域只可以被具有安全等級S的應用程式訪問,並且被加密的數據可以被存儲在第一區域中。
[0115]由於第二記錄52的有效性VALID/INVALID是有效VALID,所以存儲在和存儲設備1500的第二區域對應的第二記錄52中的值是有效的。在第二區域中可以執行讀操作和寫操作R/W,第二區域不僅可以被具有安全等級S的應用程式訪問,而且可以被具有非安全等級NS的應用程式訪問,並且非加密數據NonEnc可以被存儲在第二區域中。
[0116]由於第三記錄53的有效性VALID/INVALID是有效VALID,所以存儲在和存儲設備1500的第三區域對應的第三記錄53中的值是有效的。在第三區域中可以執行讀操作和寫操作R/W兩者,第三區域只可以被具有安全等級S的應用程式訪問,並且加密數據Enc可以被存儲在第三區域中。
[0117]由於第四記錄54的有效性VALID/INVALID是有效VALID,所以存儲在和存儲設備1500的第四區域對應的第四記錄54中的值是有效的。在第四區域中只可以執行讀操作R,第四區域也可以被具有非安全等級NS的應用程式訪問,並且加密數據Enc可以被存儲在第四區域中。
[0118]由於最後的記錄55的有效性VALID/INVALID是無效INVALID,所以存儲在和存儲設備1500的最後區域對應的最後記錄55中的值是無效的。設置安全策略表332B中的區域和所描述的安全策略類型的方法可被多種多樣地改變。
[0119]圖11是概括依據圖10的安全策略表執行的DMA操作的部分流程圖。圖11的方法步驟可以代替圖9中被指示的結點A和B之間的那些。
[0120]參考圖1、圖5、圖9、圖10和圖11,響應於從存儲管理器310輸出的扇區密鑰SECT0R_KEY,安全管理單元320選擇或者搜索安全策略表322B中所包括的記錄之一(S311)。這裡,安全策略表322B包括記錄,每一記錄均管理用於存儲設備1500中所包括的每一區域的安全策略。
[0121]安全管理單元320確定和扇區密鑰(SECT0R_KEY)對應的記錄是否被包括在安全策略表322B中(S312)。
[0122]當安全策略表322B不包括所選記錄時(S312),存儲控制器310把主存儲器1200中存儲的安全策略表加載到安全管理單元320,並且安全管理單元320從對應的被加載的安全策略表讀取對應記錄的安全策略(S313)。
[0123]當安全策略表322B包括所選記錄時,通過使用所選記錄中所包括的安全策略確定是否加密所取的數據(S315)。
[0124]當需要對所取的數據執行加密操作時,數據保護器330可以通過使用扇區密鑰加密數據。但是,當不需要對數據執行加密操作時,數據保護器330旁路並把數據傳送到存儲控制器310。
[0125]圖12和圖13共同起到刻畫在本發明構思的某些實施例中可用作數據存儲設備的嵌入式多媒體卡(eMMC)。eMMC可以是快閃記憶體存儲器的存儲器卡標準,並且eMMC是在JEDEC中被設為標準的嵌入式MMC的標準。eMMC扮演存儲多媒體數據以便在超出硬碟或者緊制盤的限制之外的各種類型的數字設備中使用的角色。
[0126]圖12是當存儲設備涉及eMMC時可被存儲在安全策略表中的信號的列表。參考圖12,BEGIN指示分區開始的扇區地址;END指示分區結束的扇區地址;SR代表噹噹前應用程式具有安全等級時是否可以執行讀操作;SW代表噹噹前應用程式具有安全等級時是否可以執行寫操作;NSR代表噹噹前應用程式具有非安全等級時是否可以執行讀操作;NSW代表噹噹前應用程式具有非安全等級時是否可以執行寫操作;UFK指示在加密期間是否可以使用熔絲密鑰(fuse key) ;ECB指示使用電子碼本(Electronic codebook, ECB)模式;ENC代表是否需要加密操作;並且VALID代表存儲在表的記錄中的值的有效性。
[0127]圖13示出了可被包括在圖5的安全管理單元中的安全策略表的另一例子。參考圖12和圖13,由eMMC1500C提供的存儲器空間被劃分為多個分區71、72和73,每一分區具有不同的安全策略。安全策略表322C包括記錄,每一記錄管理用於均被包括在eMMC1500C中的多個分區71、72和73中的每一個的安全策略。
[0128]每一記錄設置起始(或者開始)扇區地址BEGIN和結束扇區地址END,以便表示被包括在eMMC1500C中的多個分區71、72和73的範圍。
[0129]此外,每一記錄存儲關於在安全策略表的每一記錄中存儲的值是否有效的信息和安全策略。
[0130]安全策略可以包括如參考圖12所描述的其中至少一個:在安全等級對於和每一記錄對應的分區的讀操作SR、在安全等級的寫操作SW、在非安全等級的讀操作NSR、在非安全等級的寫操作NSW、加密模式ECB和輸入/輸出數據的加密操作ENC。
[0131]例如,由於第一記錄61的有效性VALID的值是1,所以和存儲設備1500的第一分區71對應的第一記錄61的值有效。第一分區71的區域具有從和00000000對應的區域到和000FFFFF對應的區域的範圍,00000000是起始地址,000FFFFF是結束地址。第一分區71存儲引導程序或者引導映像,所以在第一分區71中只可以在非安全等級執行讀操作。但是,不需要對第一分區71中存儲的數據執行加密操作。
[0132]由於第二記錄62的有效性VALID的值是1,所以和存儲設備1500的第二分區72對應的第二記錄62的值有效。第二分區72的區域具有從和00100000對應的區域到和00EFFFFF對應的區域的範圍,00100000是起始地址,00EFFFFF是結束地址。第二分區72存儲用戶文件系統,所以在第二分區72中可以在非安全等級執行讀操作和寫操作兩者。但是,需要對第二分區72中存儲的數據執行加密操作。
[0133]由於第三記錄63的有效性VALID的值是1,所以和存儲設備1500的第三分區73對應的第三記錄63的值有效。第三分區73的區域具有從和(KF00000對應的區域到和00FFFFFF對應的區域的範圍,00F00000是起始地址,00FFFFFF是結束地址。第三分區73存儲安全OS文件系統,所以在第三分區73中可以在安全等級執行讀操作和寫操作兩者。此夕卜,需要對第三分區73中存儲的數據執行加密操作。
[0134]圖14是示出可被本發明構思的某些實施例使用的緩衝區描述符的另一例子的概念圖。圖15是根據本發明構思的另一實施例,與圖5的框圖類似的另一框圖。
[0135]共同參考圖14和圖15,假設彼此不同的第一應用程式和第二應用程式正被CPUl 100同時運行。第一應用程式加密並把第一數據存儲在存儲設備1500的第一區域中,並且第二應用程式加密並把第二數據存儲在存儲設備1500的第二區域中。
[0136]這裡,當使用和第一區域對應的扇區密鑰加密和存儲第一數據,並且第二應用程式可以使用和第一區域對應的扇區密鑰對數據執行加密操作或者解密操作時,第二應用程式可能具有的問題是第二應用程式可以讀取可被第一應用程式訪問的數據。
[0137]為了克服這個潛在的問題,本發明構思的某些實施例把安全密鑰添加到緩衝區描述符,以便具有和「公共」加密或者解碼相關的許可的第一應用程式不需要具有讀取和第二應用程式相關聯的數據的許可。
[0138]參考圖1、圖3和圖14,緩衝器描述符20和先前關於圖3描述的緩衝區描述符10類似。但是,私有密鑰欄位25被添加該數據結構,其中,私有密鑰25可被針對不同的應用程式不同地生成。
[0139]圖5的主機控制器接口 1400A使用扇區密鑰(SECT0R_KEY)來加密數據(DATA)或者解密以前加密的數據(DATA』)。但是,和先前描述的實施例不一樣,圖15的主機控制器接口 1400B額外使用安全密鑰(PrivateJfey)來加密/解密數據。
[0140]參考圖1和圖15,主機控制器接口 1400B包括存儲控制器410、安全管理單元(SMU) 420、數據保護器430和事務處理類型寄存器440。
[0141]存儲控制器410控制存取到存儲設備1500的數據。存儲控制器410通過使用從主存儲器1200輸出的緩衝區描述符BD中所包括的源地址從主存儲器1210讀取數據。而且,存儲控制器410可以把緩衝區描述符BD中所包括的私有密鑰輸出到數據保護器430。
[0142]緩衝區描述符BD中所包括的扇區信息可被用來生成被傳遞到存儲設備1500的扇區地址和被傳遞到安全管理單元420的扇區密鑰。
[0143]響應於由存儲控制器410提供的扇區密鑰,安全管理單元420可以選擇安全策略表的記錄其中之一,並輸出加密/解密指示信號(ED),該信號根據所選安全策略表記錄所指示的安全策略確定是否對數據執行加密操作、或者對被加密數據執行解密操作。
[0144]根據加密/解密指示信號,數據保護器430可以對要經由主機控制器接口 1400B對要被寫到存儲設備1500的數據或者從其讀取的數據執行加密/解密操作。即,基於由安全管理單元420提供的加密/解碼指示信號,數據保護器430可被用來確定執行加密操作、解密操作還是旁路操作。
[0145]當應該對寫數據執行加密操作時,數據保護器430可以通過使用由存儲控制器410提供的Private_Key執行加密操作。
[0146]這裡,由於針對每一應用程式不同地設置或者生成Private_Key,所以各個應用程式將不知道另一應用程式的Privatejfey。因此,即使第一應用程式可以訪問存儲在加密存儲區域1500中的數據,第二應用程式也不需要知道和第一應用程式相關聯的Private_Key,儘管第二應用程式能夠訪問相同的加密存儲區域。這種方法在利用公共的數據存儲資源的同時,提供了應用程式間的數據安全性。
[0147]圖16和圖17是示出可在圖1的計算機系統中使用的主機控制器接口的其他例子的相應框圖。根據這些實施例,能夠執行和關於圖5的安全管理單元320描述的那些相同或者類似功能的安全管理單元可以被獨立地存儲在主機控制器接口內部。但是,根據其他實施例,執行和圖5的安全管理單元320相同或者類似功能的安全管理單元可以被嵌入存儲控制器或者數據保護器其中之一。
[0148]參考圖1和圖16,主機控制器接口 1400C可以包括存儲控制器510、數據保護器520和事務處理類型寄存器530。存儲控制器510可以通過使用從主存儲器1200輸出的緩衝區描述符BD中所包括的源地址從主存儲器1200讀取數據,並響應於緩衝區描述符中所包括的扇區信息,把扇區密鑰輸出到數據保護器520。
[0149]存儲控制器510包括安全管理單元511,其管理用於存儲設備1500中所包括的每一區域的安全策略。響應於緩衝區描述符中所包括的扇區信息,安全管理單元511選擇安全策略表的記錄之一。安全管理單元511可以把加密/解密指示信號輸出到數據保護器520,根據所選記錄中所包括的安全策略確定是否加密數據。
[0150]圖5的安全管理單元320的結構和功能大致和圖16的安全管理單元511的結構和功能相同。執行和事務處理類型寄存器340大致相同功能的事務處理類型寄存器530存儲生成緩衝區描述符的應用程式的安全等級信息,並把安全等級信號傳送到存儲控制器510。存儲控制器510可以參考安全等級信號和安全管理單元511中所包括的安全策略表,確定是否需要對存儲設備1500的特定區域的數據訪問。
[0151]參考圖1和圖17,主機控制器接口 1400D可以包括存儲控制器610和數據保護器620。數據保護器620可以包括事務處理類型寄存器621、安全管理單元SMU622和安全引擎623。[0152]存儲控制器610可以通過使用從主存儲器1200輸出的緩衝區描述符中所包括的源地址從主存儲器1200讀取數據,並響應於緩衝區描述符中所包括的扇區信息,把扇區密鑰輸出到數據保護器620。存儲控制器610把用於執行讀操作或者寫操作的訪問操作信號輸出到數據保護器620。
[0153]數據保護器620包括安全管理單元622,其管理用於存儲設備1500中所包括的每一區域的安全策略。響應於安全密鑰,安全管理單元622選擇安全策略表的記錄之一,並根據所選記錄中所包括的安全策略,把訪問指示信號輸出到存儲控制器610。存儲控制器610可以基於訪問指示信號控制對存儲設備1500的數據的訪問。
[0154]圖18是示出根據本發明構思又一實施例的計算機系統的框圖。
[0155]參考圖18,可以在蜂窩電話、智慧型電話、個人數字助理(PDA)、平板個人計算機、移動國際網際網路設備(MID)或者無線通信設備中具體實施計算機系統3000。
[0156]計算機系統3000包含連接到總線3100的微處理器3200、高速緩存存儲器3210、只讀存儲器(ROM) 3300、主存儲器3400、主存儲器控制器3410、存儲設備3500、主機控制器接口 3510、I/O控制器3610、I/O設備3600、顯示設備3700和顯示控制器3710。
[0157]微處理器3200是完全控制計算機系統3000的控制設備。可以在包括多個核的多核處理器中具體實施微處理器3200。高速緩存存儲器3210被定位得靠近微處理器3200。高速緩存存儲器3210是用來緩衝具有相對較快的操作速度的微處理器3200與具有相對較慢的操作速度的主存儲器3400之間的數據處理速度的高速存儲器設備。R0M3300可以在只讀存儲器設備中存儲引導代碼。
[0158]執行和主存儲器1200或者2200大致相同的功能的主存儲器3400可以被具體實施在動態隨機訪問存儲器(DRAM)、靜態隨機訪問存儲器(SRAM)或者移動DRAM中。執行和主存儲器控制器1300或者2300大致相同功能的主存儲器控制器3410控制主存儲器3400。
[0159]執行和存儲設備1500或2500大致相同功能的存儲設備3500可以和硬碟驅動器(HDD)、固態驅動器(SSD)或者冗餘獨立磁碟陣列(RAID)相同。
[0160]存儲設備3500可被具體實施在非易失性存儲器設備中,並且非易失性存儲器設備可以包括可擦除可編程只讀存儲器(EPR0M)、電可擦除可編程只讀存儲器(EEPR0M)、快閃記憶體、相變隨機訪問存儲器(Phase Change Random Access Memory, PRAM)、電阻隨機訪問存儲器(Resistance Random Access Memory, RRAM)、納米浮柵存儲器(Nano FloatingGate Memory, NFGM)、聚合物隨機訪問存儲器(Polymer Random Access Memory, PoRAM)>磁隨機訪問存儲器(Magnetic Random Access Memory, MRAM)或者鐵電隨機訪問存儲器(Ferroelectric Random Access Memory, FRAM)。
[0161]執行和主機控制器接口 1400或2400大致相同功能的主機控制器接口 3510可以按存儲設備3500的區域來管理安全策略。安全策略可以管理在一個或更多個應用程式中使用的數據,以便在數據就安全性而言是敏感數據時,使數據可以不被在微處理器3200中執行的其他應用程式訪問。
[0162]顯示控制器3710控制顯示設備3700的操作。1/0設備3700是可以輸入/輸出用於控制微處理器3200的操作的控制信號或者要被微處理器3200處理的數據的設備,並且可以被具體實施在諸如觸摸板和計算機滑鼠、小鍵盤或者鍵盤的指點設備中。
[0163]根據本發明構思實施例的主機控制器接口可以使用包括安全策略表的安全管理單元,根據存儲設備的被標識的區域有效地管理不同的安全策略。因此,根據本發明構思實施例的主機控制器接口可以使用安全管理單元連續地執行操作而沒有因在處理器之間切換所導致的系統性能上的退化,儘管安全策略隨著存儲設備的具體區域改變。
[0164]當應用程式生成數據時,根據本發明構思的某些實施例的主機控制器接口可以按扇區生成私有密鑰,藉此防止可能具有相同的數據加密/解密權限的其他應用程式讀取已被存儲在存儲設備中的和前一應用程式相關聯的數據。
[0165]儘管已經示出並描述了本一般性發明構思的幾個實施例,但是本領域技術人員將會理解,不偏離本一般性發明構思的原理和精神可以在這些實施例中做出變化,本一般性發明構思的範圍由所附權利要求及其等同物限定。
【權利要求】
1.一種操作主機控制器接口的方法,所述方法包含: 從主存儲器接收包括扇區信息的緩衝區描述符; 通過使用緩衝區描述符中所包括的源地址取數據; 使用扇區信息從安全策略表選擇記錄;和 使用由所選記錄定義的安全策略確定是否加密所取的數據。
2.如權利要求1所述的方法,其中,緩衝區描述符被訪問由扇區信息指示的、存儲設備的區域的應用程式生成。
3.如權利要求2所述的方法,還包含: 把用於所選記錄的安全等級信息和用於應用程式的安全等級信息進行比較以生成比較結果;和 響應於比較結果,確定是否在由扇區信息指示的、存儲設備的區域中寫數據。
4.如權利要求2所述的方法,還包含: 把用於所選記錄的訪問操作信息和用於所取數據的輸入/輸出操作信息進行比較,以生成比較結果;和 響應於比較結果,確定是否在由扇區信息指示的、存儲設備的區域中寫數據。
5.如權利要求1所述的方法,其中,安全策略表被存儲在主存儲器中。`
6.如權利要求1所述的方法,其中,緩衝區描述符包含源地址、目的地地址和數據長度。
7.如權利要求6所述的方法,其中,緩衝區描述符還包含私有密鑰,並且所述方法還包含使用私有密鑰加密所取數據。
8.一種安全管理單元,包含: 存儲在存儲器中並包括第一記錄和第二記錄的安全策略表,第一記錄和第二記錄分別定義用於存儲設備的第一區域和第二區域的第一安全策略和第二安全策略; 扇區訪問控制邏輯,被配置成響應於緩衝區描述符中所包括的扇區信息,在第一記錄和第二記錄之間選擇,並提供指示根據第一安全策略還是第二安全策略來加密數據的第一控制信號。
9.如權利要求8所述的安全管理單元,還包含: 表訪問控制邏輯,被配置成響應於由安全中央處理單元(CPU)提供的表更新命令,在第一安全策略和第二安全策略之間改變。
10.如權利要求8所述的安全管理單元,其中,第一安全策略和第二安全策略中的每一個均包括安全等級信息和訪問操作信息其中至少一個。
11.如權利要求10所述的安全管理單元,其中,扇區訪問控制邏輯還被配置成接收扇區信息和安全等級信號、把用於所選記錄的安全等級信息和用於當前應用程式的安全等級信息進行比較,並提供允許訪問存儲設備的區域的第二控制信號。
12.如權利要求10所述的安全管理單元,其中,扇區訪問控制邏輯還被配置成接收扇區信息和訪問操作信號,把用於所選記錄的訪問操作信息和數據訪問操作信息進行比較,並提供允許訪問存儲設備的區域的第二控制信號。
13.如權利要求8所述的安全管理單元,其中,安全管理單元被配置在主機控制器接口內。
14.一種主機控制器接口,包含: 存儲控制器,其使用緩衝區描述符中所包括的源地址從主存儲器讀取數據,並響應於緩衝區描述符中所包括的扇區信息提供扇區密鑰; 安全管理單元,其響應於扇區密鑰,從存儲在存儲器中的安全策略表選擇記錄,並提供定義了與所選記錄對應的安全策略的第一控制信號;和 數據保護器,其響應於第一控制信號確定是否對數據執行加密操作, 其中,安全策略表包括多個記錄,每一記錄分別定義用於存儲設備中的多個區域中的至少一個的對應安全策略。
15.如權利要求14所述的主機控制器接口,其中,數據保護器響應於第一控制信號和扇區密鑰執行加密操作。
16.如權利要求14所述的主機控制器接口,其中,數據保護器響應於第一控制信號和緩衝區描述符中所包括的私有密鑰執行加密操作。
17.如權利要求14所述的主機控制器接口,還包含: 事務處理類型寄存器,其存儲用於應用程式的安全等級信息,該應用程式用於生成緩衝器描述符,並向安全管理單元提供指示安全等級信息的安全等級信號。
18.如權利要求17所述的主機控制器接口,其中,安全管理單元接收扇區信息和安全等級信號,把所選記錄中所包括的安全等級信息和安全等級信號進行比較,並根據比較結果輸出指示是否允許訪問存儲設備的特定區域的第二控制信號。
19.如權利要求17所述的主機控制器接口,其中,安全管理單元接收扇區信息和從存儲控制器輸出的訪問操作信號,把所`選記錄中所包括的訪問操作信息和數據訪問操作信息進行比較,並輸出根據比較結果指示是否允許訪問存儲設備的特定區域的第二控制信號。
20.—種計算機系統,包含: 存儲設備,其包括多個區域; 中央處理單元(CPU),其在運行訪問所述多個區域中的區域的應用程式時生成緩衝區描述符; 主存儲器,其存儲緩衝區描述符和數據;和 主機控制器接口,其使用緩衝區描述符中所包括的源地址從主存儲器讀取數據,響應於扇區信息選擇多個記錄其中之一,並基於由所選記錄定義的安全策略確定是否對數據執行加密操作, 其中,所述多個記錄中的每一個管理用於存儲設備中的所述多個區域的每一個的不同安全策略。
21.如權利要求20所述的計算機系統,其中,主機控制器接口包括: 存儲控制器,其使用源地址從主存儲器讀取數據,並響應於扇區信息提供扇區密鑰; 安全管理單元,其響應於扇區密鑰選擇所選記錄,並響應於由所選記錄定義的安全策略提供第一控制信號;和 數據保護器,其基於第一控制信號確定是否對數據執行加密操作。
22.如權利要求20所述的計算機系統,其中,存儲設備是以下其中之一:硬碟驅動器(HDD)、光碟、固態驅動器(SSD)、多媒體卡(MMC)、嵌入式MMC (eMMC)和通用快快閃記憶體儲設備(UFS)。
23.如權利要求20所述的計算機系統,其中,存儲設備和主機控制器接口經由串行ATA接口通信。`
【文檔編號】G06F21/79GK103778075SQ201310495239
【公開日】2014年5月7日 申請日期:2013年10月21日 優先權日:2012年10月19日
【發明者】金寬浩, 金奭旼, 李憲洙 申請人:三星電子株式會社

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀