[go: up one dir, main page]

TW200822669A - Control system and method using identity objects - Google Patents

Control system and method using identity objects Download PDF

Info

Publication number
TW200822669A
TW200822669A TW096124586A TW96124586A TW200822669A TW 200822669 A TW200822669 A TW 200822669A TW 096124586 A TW096124586 A TW 096124586A TW 96124586 A TW96124586 A TW 96124586A TW 200822669 A TW200822669 A TW 200822669A
Authority
TW
Taiwan
Prior art keywords
access control
host
key
access
control record
Prior art date
Application number
TW096124586A
Other languages
Chinese (zh)
Inventor
Michael Holtzman
Ron Barzilai
Fabrice Jogand-Coulomb
Original Assignee
Sandisk Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US11/557,041 external-priority patent/US8639939B2/en
Priority claimed from US11/557,039 external-priority patent/US20080010458A1/en
Application filed by Sandisk Corp filed Critical Sandisk Corp
Publication of TW200822669A publication Critical patent/TW200822669A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/77Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in smart cards
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/86Secure or tamper-resistant housings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

An object known as an identity object comprises a public key and a private key pair and at least one certificate issued by a certificate authority that certifies that the public key of the pair is genuine. In one embodiment, this object may be used as proof of identification by using the private key to sign data provided to it or signals derived from the data. An identity object may be stored in a non-volatile memory as proof of identity, where the memory is controlled by a controller. Preferably, a housing encloses the memory and the controller. In another embodiment, an identity object may be stored in a non-volatile memory of a memory system as proof of identity. The memory system is removably connected to a host device. After the host device has been successfully authenticated, the private key of the object is used to encrypt data from the host device or signals derived from said data, and the at least one certificate and the encrypted data or signals are sent to the host device. In yet another embodiment, after an entity has been authenticated by a control data structure of the memory system, the public key of the identity object and the at least one certificate to certify the public key are provided to the entity. In one practical application of this embodiment, if encrypted data encrypted by means of the public key of the identity object is received from the entity, the memory system will then be able to decrypt the encrypted data using the private key in the identity object. The identity object and the at least one certificate are stored in a non-volatile memory where the memory is controlled by a controller. Preferably, a housing encloses the memory and the controller. In one more embodiment, an identity object may be stored in a non-volatile memory of a memory system. The memory system is removably connected to a host device. After the host device has been successfully authenticated, the public key of the identity object and the at least one certificate to certify the public key are provided to the host device. When encrypted data encrypted by means of the public key of the identity object is received from the host device, the memory system decrypts the encrypted data using the private key in the identity object.

Description

200822669 九、發明說明: 【發明所屬之技術領域】 本發明概言之關於記憶體系統,特別是一種具有多用途 控制特徵的記憶體系統。 【先前技術】 諸如快閃記憶體卡之儲存裝置係已經變成用於儲存諸如 相片之數位内容的儲存媒體之選擇。快閃記憶體卡亦可以 被使用於散佈其他類型媒體内容。再者,種類增加的主機 裝置(諸如電腦、數位相機、行動電話、個人數位助理及 諸如MP3播放機之媒體播放機)現在係具有呈現儲存於快閃 記憶體卡内的媒體内容之能力。因此,對於快閃記憶體卡 以及其他類型行動儲存裝置而言,係具有很大的潛能變成 用於散佈數位内容的廣泛使用傳播媒介。 對於一些應用中,相關聯於一記憶體裝置(例如記憶體 卡)之實體被要求提供其身份證明。如果不易取得該身份 證明,就很不方便。對於其它的應用,待儲存在一記憶體 裝置(例如記憶體卡)之資料需要受到安全方法來保護。 【發明内容】 ° 一種稱為一身份物件的物件包含一公開密鑰與一私有密 鑰對,及由憑證授權單位發出的至少—憑證,該至少一憑 證係用於檢定該公開密鑰對是真實的。在一實施例中,使 用T物件來作為身份證明,其方式為使用該私有密鑰來簽 名提供給該物件的資料或自該資料推導出的传號。可在一 非揮發性記Μ中儲存-身份物件以作為身份,其中 122364.doc 200822669 忒圮k體文控於一控制器。較佳地,一殼體包覆該記憶體 與該控制器。 在另一實施例中,可在一記憶體系統的一非揮發性記憶 體中儲存一身份物件以作為身份證明。該記憶體系統係可 移除式地連接到一主機裝置。在已經成功地鑑認該主機裝 置之後,使用该物件的該私有密鑰加密來自該主機裝置的 貝料或自该貧料推導出的信號,且該至少一憑證及該經加 密資料或信號被傳送到該主機裝置。 在又另一實施例中,於已經藉由該記憶體系統之一控制 貧料結構鑑認一實體之後,該身份物件的該公開密鑰及檢 定該公開密鑰的該至少一憑證被提供給該實體。在此實施 例的一實務應用中,如果接收到來自該實體的藉由該身份 物件之該公開密鑰加密的經加密資料時,則該記憶體系統 能夠使用在該身份物件中的該私有密鑰解密該經加密資 料。該身份物件與該至少一憑證係儲存在一非揮發性記憶 體中,且該記憶體受控於一控制器。較佳地,一殼體包覆 該記憶體與該控制器。 在又另一實施例中,可在一記憶體系統的一非揮發性記 憶體中儲存一身份物件。該記憶體系統係可移除式地連接 到一主機裝置。在已經成功地鑑認該主機裝置之後,該身 份物件的該公開密鑰與檢定該公開密鑰的該至少一憑證被 提供給該主機裝置。當接收到來自該實體的藉由該身份物 件之該公開密鑰加密的經加密資料時,該記憶體系統使用 在該身份物件中的該私有密鑰解密該經加密資料。 122364.doc 200822669 在此處所參照的所有專利、專利申請案、文章、書籍、 規格、標準、其它出版物、 曰 又什興事物皆完全在此引述其 整體作為參考。在任何所引用 5丨用的出版物、文件或事物與本 文件的内谷之間在一詞囊的用法七〜矣匕一 、 』果的用法或疋義上有某種程度的不 致或衝突時’必須以在本文件φ 你今又仵甲之3茱的定義與用法為 準。 【實施方式】 圖1之方塊圖顯示示範性記憶體系統,可在該示範性記 憶體系統中實施本發明之各項態様。如示於圖i,該記憶 體系統10包含一中央處理單元(CPU)12、一緩衝管理單‘ (BMU)14、一主機介面模組(HIM)16及一快閃記憶體介面 杈組(FIM)18、一快閃記憶體2〇及一周邊裝置存取模組 (PAM)22。記憶體系統1〇係透過一主機介面匯流排^及埠 26a而與一主機裝置24通訊。快閃記憶體2〇(其可屬於反及 (NAND)型)提供用於該主機裝置24之資料儲存,該主機裝 置24可以係一數位相機、一㈤人電冑、一個人數位助理 (PDA)、一數位媒體播放機(諸如一 Mp3播放機)、一行動電 話、視訊轉換器或其他數位裝置或設備。用於中央處理 單兀12之軟體碼係亦可以儲存於快閃記憶體2〇之中。快閃 記憶體介面模組18係透過一快閃記憶體介面匯流排28及埠 28a而連接至該快閃記憶體2〇。主機介面模組“係適合用 於連接至一主機裝置。該周邊裝置存取模組22選擇用於與 該中央處理單元12通訊之適當的控制器模組,諸如快閃記 憶體介面模組、主機介面模組及緩衝管理單元。於一項實 122364.doc -10- 200822669 施例中’該系統1 0於虛線方塊内之所有組件可被包封於一 單一單兀之中,諸如於記憶體卡或記憶體條1 〇,之内,較佳 地係被囊封。該記憶體系統丨〇係可卸除地連接至主裝置 24,使得系統1〇内的内容可被許多不同的主機裝置之每一 者所存取。 於下文中’記憶體系統丨〇亦被稱為記憶體裝置丨〇,或僅 稱為記憶體裝置或裝置。雖然本文中藉由引用快閃記憶體 來闡釋本發明,但是本發明亦可以應用於其他類型記憶 體,諸如磁碟,光碟,以及其他類型可重寫非揮發性記憶 體系統。 该緩衝管理單元14包含一主機直接記憶體存取 (HDMA)32,一快閃直接記憶體存取(FDMA)34,一仲裁器 36,一緩衝隨機存取記憶體(BRAM)38及一密碼編譯引擎 4〇。該仲裁H 36係-共用匯流排仲裁器,使得僅—主控器 (master)或起始器(其可以係該主機直接記憶體存取^、該 快閃直接記憶體存取34或巾央處理單元12)可於任何時間 為作用中狀態,且從屬器或目標係緩衝隨機存取記憶體 3卜該仲裁器負責通道化適當的起始器請求至該緩衝隨機 存取•己L體3 8。$主機直接記憶體存取32及該快閃直接記 憶體存取34負責介於該主機介面模組16、該快閃記憶體^ 面模組18與該緩衝隨機存取記憶體38或者中央處理單二 機存取記憶體(CPU RAM)12a之間傳輸之資料。該: 接記憶體存取似該㈣直接記存取处操作係傳^ 的且不而要於本文詳細敘述。該緩衝隨機存取記憶體^ 122364.doc 200822669 係用於儲存介於該主機裝置2 4與快閃記憶體2 〇之間傳通之 資料。該主機直接記憶體存取32及該快閃直接記憶體存取 34負責介於該主機介面模組16/該快閃記憶體介面模組u 與該緩衝隨機存取記憶·體38或者中央處理單元隨機存取記 憶體12a之間傳送資料,且用於指示區段(sect〇r)完成。 於項實施例中,記憶體系統10產生用於加密及/或解 密之密鑰值,其中,該密鑰值較佳地係實質上無法被外部 袭置(諸如主機裝置24)所存取。或者,該密鑰值亦可以在 該系統ίο之外產生(諸如藉由一使用權伺服器 server)所產生)且被傳送至系統1〇。不論該密鑰值係如何 產生 旦该猎鑰值被儲存於系統1 〇之中,僅經鑑認之實 體將此夠存取該密鑰值。然而,加密及解密典型地係以逐 Y檔案方式實施,此乃因該主機裝置係以檔案之形式將資 料頃取及寫入至記憶體系統1〇。類似於許多其他類型儲存 哀置,圯憶體裝置1 〇係不管理檔案。雖然記憶體2〇確實儲 存-播案配置表(FAT)(其中,該等檑案之邏輯位址係被識 別),但是該檔案配置表典型地係由該主機裝置24所存取 及管理’而非由該控制器12所存取及管理。因此,為了加 :於-特定檔案内的資料,該控制器12係必須依賴該主機 裝置,以傳送該記憶體20内該檔案中之資料的邏輯位址, 使得可由該系統10使用僅限於系統1〇可取得之密鑰值來尋 找及加密及/或解密該特定檔案之資料。 為了提供對於該主機裝置24及記憶體系統10兩者之控制 代碼(handle),以指向用於以密碼編譯方式處理檔案内的 122364.doc -12- 200822669 資料之相同的密鍮,該主機裝置係提供用於由該系統1〇產 生或被傳送至系統10之每—密餘值之參照(ref⑽ce),其 中,此類參照係可以僅為一密錄IDe因此,使該主機裝置 24相關聯於由线__密鑰⑴以密碼編譯方式處理的每 一檔案,且使該系統10相關聯於用於用由該主機所提供之 密鑰ID以密碼編譯方式處理f料的每_密鑰值因此,當該 主機請求經以密碼編譯方式處理之資料時,其將傳送該請 求連同-密鑰ID以及將自記憶體2_取㈣存於記憶體2〇 内之資料的邏輯位址至系統1()。系統職生或接收一密瑜 值’並且使由該主機裝置24所提供之該密鑰㊉相關聯於此 密鑰值,且實施密碼編譯處理。以此方式,不需要改變記 ,體系統卿作之方式,同時允許其使用密鑰而完全控制 密碼編譯處理,包含對於密鑰值之獨佔式存取。換句話 說,一旦該密鑰值被儲存於系統1〇之中或由系統1〇予以產 生,該系統係持續允許該主機裝置24藉由具有對於標案配 置表之獨佔式控制而管理該等檔案’同時其係維持對於使 用於密碼編譯處理之密鍮值的管理之獨佔式控制。在該等 密鑰值被儲存於記憶體系統10之後,該主機裝置24無管理 用於資料密碼編譯處理之密鑰值的責任。 於一項實施例中,由該主機裝置24所提供之密鑰m及傳 送至該記憶體系統或由該記憶體系統所產生之密鑰值係形 成一數量的兩個屬性,於下文稱為,,内容加密密鑰(Conknt Encryption Key,CEK)”或” CEK"。雖然該主機裝置24可使 每一密鑰ID相關聯於一或多個檔案,但是該主機裝置以亦 122364.doc -13- 200822669 可使每一密鑰ID相關聯於未經組織的資料或者以任何方式 組織之資料,且係不受限於組織成為完整檔案之資料。 為了使一使用者或應用程式獲得存取系統1〇内受保護的 内谷或區域,將需要使用向系統1〇預登錄的一認證 (credentiaD來鑑認該使用者或應用程式。一認證相關聯於 經授予給具有該認證之特定使用者或應用程式之存取權。 於預登錄程序中,系統10儲存一記錄,該記錄包含該使用 者或應用程式之該身份及認證,以及由該使用者或應用程 式所决疋且透過該主機裝置24提供之與此身份及認證相關 聯之存取權。在已經完成該預登錄之後,當該使用者或應 用程式請求將資料寫入至記憶體2〇時,其將需要透過該主 機裝置提供其身份及認證、—用於加密該資料之密錄m、 及經加始、資料被儲存之邏輯位址。系統丨〇產生或接收一密 鑰值,且使該密鑰值相關聯於由該主機裝置所提供之密鑰 ID ’且將用於加密待寫入之資料的密鑰值之密鑰ι〇儲存於 用於違使用者或應用程式之記錄或表中。接著,加密該資 料且儲存經加密資料於該主機所指定之位址處以及其產生 或接收之密鑰值。 田使用者或應用程式請求自記憶體20讀取經加密資料 時,其將需要提供其身份及認證、用於先前用於加密該請 求貪料之密鑰之密鑰ID、及該經加密資料被儲存之邏輯位 址。系統10接著比對由該主機所提供之使用者或應用程式 身份及認證與儲存於其之記錄内的身份及認證。假如匹 配,則系統10將接著自其之記憶體内擷取與由該使用者或 122364.doc -14- 200822669 應用程式所提供之密鑰ID相相關聯的密鑰值,使用該密餘 值解欲館存於该主機裝置所指定之位址處之資料,且傳送 該解密資料至該使用者或應用程式。 藉由分離該等鑑認認證與用於密碼編譯處理之密鑰的管 理’接著分旱存取資料之權利而不共用認證係可能的。因 此,一群組具有不同認證之使用者或應用程式可存取用於 存取相同資料之相同的密鑰,而該群組以外的使用者係不 能存取。雖然一群組内所有使用者或應用程式係可以存取 相同的資料,其可以仍然具有不同的權利。因此,某些使 用者可以具有唯讀存取,而其他使用者可以具有唯寫存 取,而又其他使用者係可以具有唯讀存取及唯寫存取兩 者。因為系統10維持一含有該使用者或應用程式之身份及 認證、其可存取之密鑰ID以及每一密鑰1〇所相關聯之存取 權的5己錄,所以對於系統丨〇而言,增加或刪除特定使用者 或應用程式之密鑰ID且改變與此密鑰⑴相關聯的存取權、 自一使用者或應用程式委派存取權給另一使用者或應用程 式、或者甚至刪除或增加用於使用者或應用程式之記錄或 表係可此的,所有皆受控於一適當經鑑認之主機裝置。儲 存之記錄可指冑-用於存取某些密錄所需要的安全通道。 可使用對稱或非對稱演算法以及密碼來實行鑑認。 特別重要的疋该§己憶體系統i 0内的受到保護的内容之可 攜丨,於存取忒在鍮值係受到該記憶體系統控制之實施例 中田併入,亥系統之記憶體系統或儲存裝置係自一外部系 統轉移至另一外部系統時’維持儲存於其内之内容的安全 122364.doc -15- 200822669 性。不論該密鍮係由該記怜辦会 ϋ ^篮糸統所產生或者起源於該記 憶體系統外,外部系統無法存取系統1〇内之此類内容,除 非已以70王又到3亥δ己憶體系統控制之方式鑑認外部系 統。甚至在經此鑑認之後,在跑怂— 伟取係完全受控於該記憶體系 統,且外部系統可僅以一根攄兮 很骒5亥圮憶體系統内預設記錄所 控制之方式進行存取。假如一古主、七於 ^ °月求係不付合此類記錄,則 該睛求將被拒絕。200822669 IX. Description of the Invention: TECHNICAL FIELD OF THE INVENTION The present invention relates generally to memory systems, and more particularly to a memory system having multi-purpose control features. [Prior Art] A storage device such as a flash memory card has become a choice for storing a storage medium such as digital content of a photo. Flash memory cards can also be used to distribute other types of media content. Furthermore, an increased variety of host devices (such as computers, digital cameras, mobile phones, personal digital assistants, and media players such as MP3 players) now have the ability to present media content stored in a flash memory card. Therefore, for flash memory cards and other types of mobile storage devices, there is a great potential to become a widely used medium for distributing digital content. For some applications, an entity associated with a memory device (e. g., a memory card) is required to provide proof of identity. If it is not easy to obtain the identity certificate, it is very inconvenient. For other applications, the data to be stored in a memory device (e.g., a memory card) needs to be protected by a secure method. SUMMARY OF THE INVENTION An object called an identity object includes a public key and a private key pair, and at least a certificate issued by the certificate authority, the at least one certificate is used to verify that the public key pair is real. In one embodiment, a T object is used as the proof of identity by using the private key to sign the material provided to the object or a token derived from the material. The identity object can be stored in a non-volatile record as an identity, wherein the device is controlled by a controller. Preferably, a housing encloses the memory and the controller. In another embodiment, an identity object can be stored in a non-volatile memory of a memory system as proof of identity. The memory system is removably coupled to a host device. After the host device has been successfully authenticated, the private key of the object is used to encrypt the bedding material from the host device or the signal derived from the poor material, and the at least one voucher and the encrypted data or signal are Transfer to the host device. In still another embodiment, after the entity has been authenticated by one of the memory systems to control the lean structure, the public key of the identity object and the at least one certificate verifying the public key are provided to The entity. In a practical application of this embodiment, if the encrypted material encrypted by the public key of the identity object is received from the entity, the memory system can use the private secret in the identity object. The key decrypts the encrypted data. The identity object and the at least one voucher are stored in a non-volatile memory and the memory is controlled by a controller. Preferably, a housing encloses the memory and the controller. In yet another embodiment, an identity object can be stored in a non-volatile memory of a memory system. The memory system is removably coupled to a host device. After the host device has been successfully authenticated, the public key of the identity object and the at least one certificate verifying the public key are provided to the host device. Upon receiving the encrypted material encrypted by the public key of the identity object from the entity, the memory system decrypts the encrypted material using the private key in the identity object. 122364.doc 200822669 All patents, patent applications, articles, books, specifications, standards, other publications, and other matters referenced herein are hereby incorporated by reference in their entirety. There is some degree of inconsistency or conflict between the use of any of the five publications, documents or things cited in this document and the inner valley of this document. The time must be based on the definition and usage of this document. [Embodiment] FIG. 1 is a block diagram showing an exemplary memory system in which various aspects of the present invention can be implemented. As shown in FIG. 1, the memory system 10 includes a central processing unit (CPU) 12, a buffer management list (BMU) 14, a host interface module (HIM) 16, and a flash memory interface group ( FIM) 18, a flash memory 2 and a peripheral device access module (PAM) 22. The memory system 1 communicates with a host device 24 via a host interface bus and port 26a. Flash memory 2 (which may be of the NAND type) provides data storage for the host device 24, which may be a digital camera, a (5) person, and a PDA. , a digital media player (such as an Mp3 player), a mobile phone, a video converter or other digital device or device. The software code for the central processing unit 12 can also be stored in the flash memory. The flash memory interface module 18 is connected to the flash memory 2 via a flash memory interface bus 28 and port 28a. The host interface module is "suitable for connection to a host device. The peripheral device access module 22 selects an appropriate controller module for communicating with the central processing unit 12, such as a flash memory interface module, The host interface module and the buffer management unit. In a case of 122364.doc -10- 200822669, all components of the system 10 in the dotted square can be enclosed in a single unit, such as memory. The body card or memory strip 1 is preferably encapsulated. The memory system is removably coupled to the host device 24 such that the contents of the system 1 can be hosted by many different hosts. Each of the devices is accessed. Hereinafter, the 'memory system 丨〇 is also referred to as a memory device 丨〇, or simply as a memory device or device. Although this is explained by reference to flash memory. The present invention, but the present invention is also applicable to other types of memory, such as magnetic disks, optical disks, and other types of rewritable non-volatile memory systems. The buffer management unit 14 includes a host direct memory access (HDMA). 32, Flash Direct Memory Access (FDMA) 34, an arbiter 36, a buffered random access memory (BRAM) 38 and a cryptographic engine 4. The arbitration H 36-shared bus arbitrator allows only - a master or initiator (which may be the host direct memory access ^, the flash direct memory access 34 or the towel processing unit 12) may be active at any time, and The slave or target buffers the random access memory 3. The arbiter is responsible for channelizing the appropriate initiator request to the buffered random access device. The host direct memory access 32 and the flash The direct memory access 34 is responsible for the interface between the host interface module 16, the flash memory module 18 and the buffer random access memory 38 or the central processing single memory access memory (CPU RAM) 12a. The data transmitted between: the memory access is similar to the (4) direct access to the operating system and is not described in detail herein. The buffered random access memory ^ 122364.doc 200822669 is used for Storing the money between the host device 24 and the flash memory 2 The host direct memory access 32 and the flash direct memory access 34 are responsible for the host interface module 16/the flash memory interface module u and the buffer random access memory body 38 or The central processing unit transfers data between the random access memories 12a and is used to indicate that the segment (sect〇r) is completed. In the embodiment, the memory system 10 generates a key value for encryption and/or decryption. Wherein, the key value is preferably substantially inaccessible to an external attack (such as the host device 24). Alternatively, the key value may also be generated outside the system ίο (such as by a usage right servo) Generated by the server) and transmitted to the system 1〇. Regardless of how the key value is generated, the key value is stored in system 1 and only the authenticated entity has access to the key value. However, encryption and decryption are typically implemented in a Y-file format because the host device fetches and writes data to the memory system in the form of a file. Similar to many other types of storage sorrows, the memory device 1 does not manage files. Although the memory 2 does store the broadcast configuration table (FAT) (where the logical addresses of the files are identified), the file configuration table is typically accessed and managed by the host device 24' Rather than being accessed and managed by the controller 12. Therefore, in order to add data to the specific file, the controller 12 must rely on the host device to transfer the logical address of the data in the file in the memory 20 so that the system 10 can be used only by the system. 1. The key value that can be obtained to find and encrypt and/or decrypt the data of the particular file. In order to provide a control for both the host device 24 and the memory system 10 to point to the same key used to process the 122364.doc -12-200822669 data in the file in a cryptographically compiled manner, the host device A reference (ref(10)ce) for each of the secret values generated by or transmitted to the system 10 is provided, wherein such reference frame may be only a secret IDe, thus associating the host device 24 Each file processed in a cryptographically compiled manner by the line__key (1), and associated with the system 10 for each key used to process the material in a cryptographic manner with the key ID provided by the host Therefore, when the host requests the data processed by the cryptographic compilation method, it will transmit the request together with the -key ID and the logical address of the data stored in the memory 2 from the memory 2_ System 1 (). The system attendance or receiving a password value' and correlates the key ten provided by the host device 24 to the key value and performs a cryptographic process. In this way, there is no need to change the way the system is done, while allowing it to use the key to fully control the cryptographic compilation process, including exclusive access to the key value. In other words, once the key value is stored in the system 1 or generated by the system, the system continues to allow the host device 24 to manage the host device 24 by having exclusive control over the table configuration table. The file 'at the same time maintains exclusive control over the management of the secret value used for cryptographic compilation. After the key values are stored in the memory system 10, the host device 24 is not responsible for managing the key value for the data cryptographic process. In one embodiment, the key m provided by the host device 24 and the key value transmitted to or generated by the memory system form a quantity of two attributes, hereinafter referred to as ,, Conknt Encryption Key (CEK) or CEK". Although the host device 24 can associate each key ID with one or more files, the host device can associate each key ID with unorganized material or also 122364.doc -13 - 200822669 or The organization of the information in any way is not limited to the organization's information as a complete file. In order for a user or application to gain access to the protected valley or area within the system, it is necessary to use a certificate (credentiaD) pre-registered with the system 1 to authenticate the user or application. In conjunction with the access granted to a particular user or application having the authentication. In the pre-login procedure, system 10 stores a record containing the identity and authentication of the user or application, and The user or application determines the access rights associated with the identity and authentication provided by the host device 24. After the pre-login has been completed, when the user or application requests to write data to the memory When the device is 2, it will need to provide its identity and authentication through the host device, the secret record m used to encrypt the data, and the logical address where the data is added and the data is stored. The system generates or receives a secret. a key value, and the key value associated with the key ID provided by the host device and the key value used to encrypt the key value of the data to be written are stored for use by the user or The application's record or table. Next, the data is encrypted and the encrypted data is stored at the address specified by the host and the key value it generates or receives. The field user or application requests to read from the memory 20. When the data is encrypted, it will need to provide its identity and authentication, the key ID used to encrypt the key used to encrypt the request, and the logical address where the encrypted data is stored. System 10 then compares The identity or authentication of the user or application provided by the host and the identity and authentication stored in its records. If matched, the system 10 will then retrieve from the memory of the user or by the user or 122364.doc -14- 200822669 The key value associated with the key ID provided by the application, the secret value is used to solve the information stored in the address specified by the host device, and the decrypted data is transmitted to the use. By the separation of the authentication of the authentication and the management of the key used for the cryptographic processing, the right to access the data without sharing the authentication is possible. Therefore, a group has no The authenticated user or application can access the same key used to access the same data, and users outside the group cannot access it. Although all users or applications in a group can access it. The same information, it can still have different rights. Therefore, some users can have read-only access, while other users can have write-only access, while other users can have read-only access and only Write access both because the system 10 maintains a record of the identity and authentication of the user or application, its accessible key ID, and the access rights associated with each key. So for the system, add or delete the key ID of a specific user or application and change the access rights associated with this key (1), delegate access from one user or application to another. Any application or application, or even deletion or addition of records or representations for the user or application, may be controlled by a suitably authenticated host device. A record of storage can be referred to as a secure channel for accessing certain ciphers. A symmetric or asymmetric algorithm and a password can be used to perform the authentication. It is particularly important that the protected content of the § 己 体 system i 0 is incorporated in the memory system in which the 鍮 value is controlled by the memory system, and the memory system of the system Or the storage device is 'safe to maintain the content stored therein when transferring from one external system to another external system 122364.doc -15- 200822669. Regardless of whether the secret system is generated by or originated from the memory system, the external system cannot access such content in the system, unless it has been 70 to 3 The δ mnemonic system controls the external system. Even after this verification, the squat-wei system is completely controlled by the memory system, and the external system can be controlled only by a preset record in the system. Access. If an ancient master, seven in the month of the month, does not pay for such records, then the eye will be rejected.

\ 為了提供在保護内容上較大的彈性,可以想像僅限於經 適當鑑認的使用者或應用程式才能存取該記憶體之某些區 :(下文稱為分割區)。當結合上述以密鑰為基礎之資料加 密之特徵時,系統10係提供較大的資料保護能力。如示於 圖2,該快閃記憶體2〇係可以使其之儲存容量被分割成為 許多分割區:-使用者區域或分割區及自訂分割區。所有 使用者及應用程式可存取使用者區域或分割區ρ〇,而不需 要鑑認。雖然任何應用程式或制者可讀取或寫人至儲存 於該使用者區域内的資料的所有位元值,假如所讀取之資 料係被加密,則無授權解密之使用者或應用程式無法存取 ^儲存於一使用者區域内的位元值所表示的資訊。舉例而 s,由儲存於使用者區域Ρ0内的檔案102及1〇4所顯示。亦 儲存於該使用者區域的是未經加密檔案,諸如,其可 被所有應用程式及使用者讀取及瞭解。因此,象徵而古, 被加密之檔案係顯示為具有與其相關聯之鎖,諸如對於_ 案102及1〇4而言。 、· 雖然未經授權的應用程式或使用者無法瞭解於一使用者 122364.doc -16 - 200822669 區域p〇内的經加密檔案,然而此類應用程式或使用者仍然 月b夠刪除或破壞該檔案,這對於一些應用程式而言可能為 不期望的。為了此目的,記憶體2〇亦包含受保護的自訂分 割區’諸如分割區P1及P2,在無事先鑑認情況下無法存取 彼等自訂分割區。於此申請案内實施例中所允許的鑑認程 序係說明如下。 如亦顯示於圖2中,各種使用者或應用程式可以存取記 fe體20内的檔案。因此,圖2顯示使用者及(執行於裝 置上之)應用程式1-4。在彼等實體被允許存取記憶體2〇内 受保護的内容之前,首先藉由一鑑認程序以下文說明之方 式鑑認彼等實體。於此程序中,需要於該主機端識別正在 請求存取之實體,以用於角色為基礎的存取控制。因此, 正在請求存取之實體首先藉由提供諸如”我是應用程式2且 我想要讀取檔案1 ”之資訊,而識別自己。接著,控制器i 2 比對忒身伤、鑑認資訊及請求與健存於記憶體2〇或控制器 12内之記錄。假如所有條件係符合,則存取係被授予給此 類實體。如示於圖2,使用者丨被允許讀取及寫入檔案1〇1 至刀吾彳區P1,然而除了使用者1具有讀取及寫入檔案i 〇6至 分割區p〇之不受限制的權利之外,其僅可讀取檔案1〇2及 1〇4。另一方面,使用者2不被允許存取檔案1〇1及1〇4,然 而可讀取及寫入存取檔案102。如示於圖2,使用者丨及2具 有相同的登入演算法(AES),而應用程式1及3具有不同的 登入演算法(例如,RSA及001001),其係亦與使用者 之登入演算法不同。 122364.doc -17- 200822669 安全儲存應用程式(SSA)係一種記憶體系統10之安全性 應用程式,且闡釋本發明之一項實施例,其可被使用於實 施許多上述的特徵。安全儲存應用程式係可以建構為具有 儲存於該記憶體20或中央處理單元12内的非揮發記憶體 (未顯示)内的資料庫之軟體或電腦碼,且被讀入至隨機存 取記憶體12a中且由中央處理單元12所執行。所使用參照 安全儲存應用程式之字母縮寫係說明於下表: 定義、字母縮寫及縮寫 ACR Access Control Records(存取控制記錄) AGP ACR Group(存取控制記錄群組) CBC Chain Block Cipher(鏈區塊編密) CEK Content Encryption Key(内容力α 密密鍮) ECB Electronic Codebook(電子碼本) ACAM ACR Attributes Management(存取控制記 錄屬性管理) PCR Permissions Control Record(權限控制記 錄) SSA Secure Storage Application(安全儲存應 用程式) Entity 實體,具有真實及個別存在(主機端)且 登入該安全儲存應用程式且因而利用其 之功能的任何事物 安全儲存應用程式系統說明 資料安全性、完整性及存取控制係安全儲存應用程式之 主要角色。資料係明確地儲存於某種大量儲存裝置上的檔 案。安全儲存應用程式系統係位於儲存系統的上方,且增 加用於被儲存主機檔案之安全性層級,且透過安全性資料 結構而提供安全性功能,如下文所述。 122364.doc -18- 200822669 該安全儲存應用程式之主要卫作係f理相關聯於記憶體 :被儲存的(及安全的)内容的不同權利。記憶體應用程式 需要管理多個使用者及對於多個儲存的内容的内容權利。 。八之側而來的主機應用程式係看見此類應用程式可見之 驅動每式及〃割區’以及管理及描♦該儲存裝置上儲存播 案之位置的檔案配置表(FAT)。 於此情況下,該儲存裝置使用分割成分割區之反及快閃 記憶體晶片,然而亦可使用其他行動儲存裝置且係屬於本 發明之範疇内。這些分割區係連續的邏輯位址緒 (thread),其中,一起始及一結束位址定義其邊界。因 此假如想要,可以藉由軟體(諸如儲存於記憶體内的 軟體),而將限制賦加於對於隱藏分割區的存取,此類軟 體使此類限制相關聯於此類邊界内的位址。藉由該安全儲 存應用程式所管理之分割區邏輯位址邊界,使該安全儲存 應用私式可凡全辨識分割區。該安全儲存應用程式系統使 用刀割區,以實際上使資料安全免於未經授權之主機應用 程式。對於主機而言,該等分割區係一種定義儲存資料檔 案之專屬空間之機制。這些分割區可以係:公開的,其 中,可存取該儲存裝置的任何者可看見及知道該分割區存 在於4扃置上,或者私有的或隱藏的,其中,僅被選擇的 主機應用程式可存取及知道其存在於該儲存裝置上。 圖3係把憶體之示意圖,其顯示記憶體之分割區:ρ〇、 P1 P2及P3(顯然地,可採用少於或多於4個的分割區), 其中,P0係一公開分割區,其可由任何實體存取而不需要 122364.doc -19· 200822669 鐘認。 私有分割區(諸如pj、 — 藏對於其内之檔案的 m,糟由防止该主機存取該分割區,快閃記憶體裝置 /,快閃記憶體卡)係傳送該分割區内的資料檔案之保 護°然而’此種保護係藉由賦加限制於存取儲存於該分割In order to provide greater flexibility in protecting content, it is conceivable that only certain authenticated users or applications can access certain areas of the memory: (hereinafter referred to as partitions). When combined with the above key-based data encryption features, system 10 provides greater data protection capabilities. As shown in Fig. 2, the flash memory 2 can be divided into a plurality of partitions: a user area or a partition and a custom partition. All users and applications can access the user area or partition without the need for authentication. Although any application or manufacturer can read or write all the bit values of the data stored in the user area, if the data read is encrypted, the user or application without authorization decryption cannot. Accessing information represented by bit values stored in a user area. For example, s is displayed by files 102 and 1.4 stored in the user area Ρ0. Also stored in the user area is an unencrypted file, such as it can be read and understood by all applications and users. Thus, symbolically, the encrypted file system is shown to have locks associated with it, such as for _102 and 〇4. · Although an unauthorized application or user cannot know the encrypted file in a user's 122364.doc -16 - 200822669 area, such application or user still has the ability to delete or destroy the file. Archives, which may be undesirable for some applications. For this purpose, the memory 2〇 also contains protected custom partitions 'such as partitions P1 and P2, which cannot be accessed without prior authentication. The authentication procedures allowed in the examples in this application are described below. As also shown in Figure 2, various users or applications can access the files in the note body 20. Thus, Figure 2 shows the user and (executed on the device) applications 1-4. Before their entities are allowed to access protected content in memory 2, they are first authenticated by an authentication procedure as described below. In this program, it is necessary to identify the entity that is requesting access on the host side for role-based access control. Therefore, the entity that is requesting access first identifies itself by providing information such as "I am application 2 and I want to read file 1". Next, the controller i 2 compares the injuries, the authentication information, and the requests and the records stored in the memory 2 or the controller 12. If all the conditions are met, the access system is granted to this type of entity. As shown in Figure 2, the user 丨 is allowed to read and write the file 〇1 to the 刀吾彳区 P1, but the user 1 has the ability to read and write the file i 〇6 to the partition p〇 In addition to the restricted rights, it can only read files 1〇2 and 1〇4. On the other hand, the user 2 is not allowed to access the files 1〇1 and 1〇4, but can access and write the access file 102. As shown in Figure 2, users 2 and 2 have the same login algorithm (AES), while applications 1 and 3 have different login algorithms (for example, RSA and 001001), which are also linked to the user's login calculus. The law is different. 122364.doc -17- 200822669 The Secure Storage Application (SSA) is a security application for the memory system 10 and illustrates an embodiment of the present invention that can be used to implement many of the above features. The secure storage application can be constructed as a software or computer code having a database stored in a non-volatile memory (not shown) in the memory 20 or the central processing unit 12, and read into the random access memory. It is executed by central processing unit 12 in 12a. The abbreviations used in the reference secure storage application are described in the following table: Definitions, acronyms and abbreviations ACR Access Control Records AGP ACR Group CBC Chain Block Cipher Block Coding) CEK Content Encryption Key ECB Electronic Codebook ACAM ACR Attributes Management PCR Permissions Control Record SSA Secure Storage Application Secure Storage Application) An Entity entity that has real and individual presence (host side) and logs into the secure storage application and thus utilizes its functionality to securely store the application system to illustrate data security, integrity and access control systems. The main role of a secure storage application. The data is stored in a file on a large number of storage devices. The secure storage application system is located above the storage system and adds a security level for the stored host files and provides security functionality through the security data structure, as described below. 122364.doc -18- 200822669 The main security of this secure storage application is related to the memory: the different rights of the stored (and secure) content. The memory application needs to manage multiple users and content rights for multiple stored content. . The host application on the side of the eight sees the driver-type and castration areas visible to such applications and the file configuration table (FAT) that manages and describes the location on the storage device where the broadcast is stored. In this case, the storage device uses a reverse-flash memory chip that is divided into partitions, although other mobile storage devices may be used and are within the scope of the present invention. These partitions are consecutive logical bit threads, where a start and an end address define their boundaries. Thus, if desired, restrictions can be imposed on hidden partitions by software (such as software stored in memory) that associates such restrictions with bits within such boundaries. site. The secure storage application privately identifies the partition by the partition logical address boundary managed by the secure storage application. The secure storage application system uses a knife cut zone to virtually protect data from unauthorized host applications. For the host, these partitions are a mechanism for defining the exclusive space in which the data files are stored. These partitions may be public, wherein any one of the accessible storage devices may see and know that the partition exists on the device, or is private or hidden, wherein only the selected host application is selected. It can be accessed and known to exist on the storage device. Figure 3 is a schematic diagram of a memory, showing partitions of memory: ρ 〇, P1 P2 and P3 (obviously, less than or more than 4 partitions may be employed), wherein P0 is a public partition , which can be accessed by any entity without the need for 122364.doc -19· 200822669. The private partition (such as pj, the m for the file in it, the host is prevented from accessing the partition, the flash memory device / flash memory card) transmits the data file in the partition Protection. However, this protection is limited to access and storage in the segmentation.

區内該等邏輯位址虛^ ^ M ,铒4址處之貝#,而吞沒駐留於該隱藏分割區 内所有檔案。換句話說,該等限制係相關聯於一邏輯位址 範圍。可存取該分割區的所有使用者/主機係可未無限制 存取内部的所有檔案。4了隔離不同的檔案及另一不同的 ㈣或者槽案群組,該安全儲存應用程式系統使用密输及 密鑰參照或密鑰ID,而提供每一檔案或者檔案群組另一層 級安全性及完整性。用於加密在不同的記憶體位址處之^ 料的一特定密鑰值之一密鑰參照或密鑰1〇可被類推至一含 有該經加密資料之容器(container)或定義域(d〇mai幻。因 此,於圖4中,該等密鑰參照或密鑰ID(例如,,,密鍮丨,,及 後、鍮2 )係以緣圖方式顯示為圍繞使用相關聯於該等密输 ID之密鑰值加密之檔案之區域。 參照圖4,舉例而言,檔案A係可被所有實體存取而不需 要任何鑑認,因為其係顯示為不被任何密鑰ID所封入。即 使所有實體可讀取或覆寫公開分割區内的檔案B,然而樓 案B含有以一具有ID π密鑰1Π之密鑰予以加密之資料,所 以使得檔案Β中所含有的資訊係不能被一實體存取,除非 此類實體有權存取此類密鑰。以此方式,使用密鑰值及密 鑰參照或密鑰ID係僅提供邏輯保護,其係相對於由上述分 122364.doc -20- 200822669 割^所提供之保護類型。因此,可存取一分割區(公開的 ;或孝有的)之任何主機能夠讀取或寫入整個分割區内的資 料包合經加密資料。然而,因為該資料係被加密,所以 未經授權的使用者係僅能夠破壞該資料。較佳地,其在無 谓測之下無法改變資料。藉由限制對於加密及/或解密密 鑰之存取,此特徵可僅允許經授權實體使用該資料。於 亦使用具有役鑰ID π密鑰2,,之密鑰來加密檔案B及 C 〇 可透過對稱加密法而提供資料機密性及完整性,該等對 稱加密方法使用内容加密密錄(Content Encryption Key ; =ΕΚ),每内容加密密鑰一個。於該安全儲存應用程式實 J中於内谷加被搶餘内的密錄值係由快閃記憶體裝置 (例如’㈣記憶體卡)所產生或接&,該密餘值係僅内部 使用且保持為避開外面世界的秘密。被加密或以密碼編譯 處理之f料係亦可以為雜湊的(hashed)或者密碼編譯係鏈 區塊的,以確保資料完整性。 並非於該分割區内的所有資料係以不同的密鑰予以加密 及相關聯於不同的密鑰仍。於公開或使用者檔案内或於作 業系統區域(亦即檔案配置表)内之某些邏輯位址係可以不 相關聯於任何密鑰或密餘參照,且因而係可供可存取該分 割區本身之任何實體所使用。 一要求建立密鑰及分割區以及寫入及自其讀取資料或使 用該等密鑰之能力的實體係需要透過一存取控制記錄 (ACR)而登入該安全儲存應用程式系統。於該安全儲存應 122364.doc -21 - 200822669 用耘式系統内一存取控制記錄的特殊權限(privUeg匀係稱 為動作"(action)。每一存取控制記錄係具有實施下列三種 類別的動作之權限:建立分割區及密鑰/密鑰id ;存取分 割區及密鑰;以及建立/更新其他存取控制記錄。 。、存取控制$錄係被㈣成群組,稱為存取控制記錄群組 或GP 旦已經成功鑑認一存取控制記錄,則該安全儲 存應用程式開啟-會期(sessi〇n),透過該會期,可執行任 f \ 何存取控制記錄之動作。存取控制記錄及存取控制記錄群 組係用於根據原則而控制存取分割區及密餘之安全性資料 結構。 使用者分割區 办該安全儲存應用程式系統管理一或多個公開分割區,亦 %為使用者分割區。此分割區係存在於該儲存裝置上且係 可透過儲存裝置之標準讀取寫入命令予以存取之一或多個 =割區。獲得關於分割區之大小以及其存在於該裝置上的 貝汛較佳地無法對於該主機系統隱藏。 該安全儲存應用程式系㈣期標準讀取“命令或該 安全儲存應用程式命令而能夠存取分割區。因此,較佳 :安區無法被限用於特定存取控制記錄 '然而, :使^者ΙΓ程式系統可使該等主機裝置能夠限制存取 ;有4種?:區。可個別啟用/停用讀取… 迕所有4種組合(例如, 入,以及無存取權)。 寫(防寫保護),讀取及寫 該安全錯存應用程式系統使存取控制記錄能夠使密⑽ 122364.doc -22- 200822669 相關聯於該使用者分割區内的檔案,且使用相關聯於此類 密鑰ID之密鑰來加密個別檔案。存取該等使用者分割區内 的經加密檔案以及設定對於該等分割區之存取權將使用該 安全儲存應用程式命令集而實行。上述特徵亦應用於未經 組織成槽案之資料。 安全儲存應用程式分割區 有能夠僅透過該安全儲存應用程式命令存取之(避免未 經鑑認的當事人之)隱藏分割區。較佳地,該安全儲存應 用程式系統將不允許該主機裝置存取—安全儲存應用程式 分割區,除了透過一由登入至一存取控制記錄所建置之會 期之外。類似地,較佳地,該安全儲存應用程式將不提供 關於-安全儲存應用程式分割區之存在、大小及存取權限 之資訊,除非此請求係透過一已建置的會期而來。 對於分割區之存取權係自該存取控制記錄權限推導而 來。一旦一存取控制記錄登入至該安全儲存應用程式系 統’ ^可與其他存取控制記錄共用該分割區(敛述如下 文)。當建立一分割區時,該主機提供用於該分割區之一 參照名稱或者ID(例如,圖3及4中之p〇_p3)。在對於該分割 區之進步的讀取及寫入命令之中使用此參照。 儲存裝置之分割區 較仏地’該裝置之所有可用儲存容量被配置給使用者分 J品及目七組態的安全儲存應用程式分割區。因此, : = 作:牵涉到現有分割區之重新組態。對於該: 、,改變(所有分割區之大小的總和)將為零。該妒 122364.doc -23- 200822669 置記憶體空間内的分割區之ID係由該主機系統所定義。 該主機系統可重新分割現有分割區之一者成為兩個較小 的刀割區,或者合併兩個現有分割區(其係可以或可以不 為相鄰的)成為一分割區。於經分割或經合併分割區内的 貝料可被刪除或者保留不碰觸,其係根據該主機之判斷。 因為該儲存裝置之重新分割可導致資料的遺失(由於資 料被刪除或者使資料在該儲存裝置之邏輯位址空間内移 攀 動對重新分割之嚴格限制係由該安全儲存應用程式系 i 統所管理。僅一駐留於一根存取控制記錄群組内的存取控 制記錄(下文說明)被允許發佈一重新分割命令,且其僅可 參照由其所擁有的分割區。因為該安全儲存應用程式系統 不知道資料係如何於該等分割區中組織(檔案配置表或其 他檔案系統結構),所以每當該裝置被重新分割時,重新 建構這些結構係該主機之責任。 使用者分割區之重新分割將改變主作業系統所觀看之此 分割區的大小及其他屬性。 / 在刀告彳之後,確保該安全儲存應用程式系統内任何存取 拴制z錄係不正在參照非現有分割區係該主機系統的責 任。假如未適當地删除或更新這些存取控制記錄,則未來 企圖代表這些存取控制記錄存取非現有分割區,將被該系 統债測到及拒絕。關於被刪除的密鑰及密鑰m採胡類似的 考量。 密鑰、密鑰ID及邏輯保護 當一檔案被寫入至某一隱藏分割區時,其係對於公眾為 122364.doc -24- 200822669 fe藏J而,一旦一實體(有敵意的或者無敵意的)獲得對 該分割區之知識及存取,則該檔案係變成可用且易於瞭 解。為m使該檔案安全,該安全儲存應用程式可加 密該隱藏分割區内的檔案’其中’用於存取解密該標案之 密鑰之認證較佳地不同於用於存取該分割區的認證。由於 事實上檔案係完全由該主機所控制及管理,使—内容加密 密鑰相關聯於-檔案係__問題。連結該權案與該安全儲存 應用程式認知的某物件(該密鑰ID)修正此問題。因此,當 由該安全儲存應用程式建立—密鍮時,該主機係使用由: 安全儲存應用程式所建立之該密鑰,使用於該密鑰之該密 鑰ID相關聯於經加密之資料。假如該密鑰連同密鑰山—起 被傳送至該安全儲存應用程式,則該密鑰及密鑰m可輕易 地彼此相關聯。 虡牷鍮值及该密输ID提供邏輯安全性。相關聯於一給定 猎鑰ID之所有資料(不論其之位置為何)係以該内容加密密 鑰(CEK)内相同的密鑰值予以編密(cipher),該内容加密密 鑰之參照名稱或密鑰ID係由主機應用程式在建立時獨一地 提供。假如一實體(藉由透過一存取控制記錄進行鑑認)獲 得對一隱藏分割區之存取,且想要讀取或寫入該分割區内 的一經加密檔案,則其係需要可存取與該檔案相關聯之密 鑰1D。當授予用於該密鑰ID之密鑰之存取時,該安全儲存 應用程式載入相關聯於此密鑰ID之内容加密密鑰内的密輪 值,且在將資料傳送至該主機之前解密該資料,或在將資 料寫入至該快閃記憶體2〇之前加密該資料。於一項實施例 122364.doc -25- 200822669 中’相關聯於-密餘ID之内容加密密瑜内的一密输值係由 駐全儲存應用m统隨機建立—次且由其維護。在該 安王儲存應用程式系统外的任一實體皆不知道或不可存取 内今加雄密輸内之該密鑰值。外面的世界僅提供及使用一 參照或密鑰ID,而非内容加密密輪内的密输值。該密餘值 係受到徹底管理,且較佳地僅可由該安全儲存應用程式存 取或者,δ亥雄、鑰可被提供給該安全儲存應用程式系統。 該安全儲存應用程式系統使用任一(使用者定義的)下列 2密模式(所使用之真正的密碼編譯演算法以及内容加密 山鑰内的4鑰值係系統控制#,且係不透露給外面世 界): 區塊模式-資料被分割成為區塊,該等區塊的每一者被 個別加密。此模式一般被認為較不安全且易受字典攻擊。 然而,其將允許使用者隨機存取任一資料區塊。 鏈模式資料被分割成為區塊,其係於加密程序期間被 鏈鎖(chain)。每-區塊係被使用作為至下_加密程序之輸 入之-。於此模式中,雖然被認為較安全,然而資料係自 開始至結束予以循序寫入及讀取,建立一可能不被使用者 接受的過度耗用(overhead)。 雜凑的-具有額外建立一資料摘要之鏈模式,該資料摘 要可被用於確認資料完整性。 存取控制記錄及存取控制 該安全儲存應用程式係設計成處置多個應用程式,其 中,該等應用程式之每-者於該系統資料庫内被表示為一 122364.doc -26- 200822669 具有艮P點的核f。介於該冑應用程式之間之相互排斥係藉由 確保該等樹的分支之間無串擾而逹成。 為了獲知存取該安全儲存應用程式系統,一實體需要透 k Λ系、、充之存取控制記錄之一者來建置連接。由該安全儲 存應用程式系統根據内建於該使用者選擇待連接之存取控 制記錄内的定義來管理登入程序。 。亥存取控制記錄係一對於該安全儲存應用程式系統之個 別登入點。該存取控制記錄係保有登入認證及鑑認方法。 亦駐留於該記錄内的係該安全儲存應用程式系統内的登入 權限,於其中係讀取及寫入特殊權限。此係顯示於圖5, 其係顯示相同存取控制記錄群組中的η個存取控制記錄。 此係意謂該η個存取控制記錄中至少一些者可共用對相同 密鑰之存取。因此,存取控制記錄#1及存取控制記錄知共 用對具有密鑰ID "密鑰3”之密鑰之存取,其中,存取控制 a錄#1及存取控制記錄#n係存取控制記錄ID,且,,密鑰3,, 係用於加密相關聯於,,密鑰3”之資料的密鑰之密鑰m。亦 可使用相同的密鑰來加密及/或解密多個檔案,或者多組 資料。 該安全儲存應用程式系統支援數種登入該系統的類型, 其中’鑑§忍 >貝鼻法及使用者認證係可以改變,因為一曰使 用者成功登入,該系統内的使用者特殊權限可改變。圖5 係再次顯示不同的登入演算法及認證。存取控制記錄#1指 定一密碼登入演算法及密碼為認證,而存取控制記錄指 定一公開密鑰基礎結構(pkd登入演算法及公開密鑰為認 122364.doc -27- 200822669 口此為了登入,一實體將需要提交一有效的存取控 制記錄ID以及正確的登入演算法及認證。 一旦一實體登入至該*全儲存應用矛呈式系統之一存取控 制記錄’則在相關聯於該存取控制記錄的權限控制記錄 (PCR)中定義其權限(其使用安全儲存應用程式命令之權 利)。於圖5中’根據所顯示之權限控制記錄,存取控制記 錄#1授予對相關聯於,,密鑰3”之資料的唯讀權限,且存取 控制記錄#2授予對相關聯於”密餘5,,之資料的讀取及寫入 權限。 卜不同的#取控制記錄可共用該系統内共同的利益及特殊 權限諸如藉以頃取及寫入之密输。為了達成此目的,共 5 /、有某二事物之存取控制記錄被分組於存取控制記錄群 、且(ACR群組)巾。目此,存取控制記錄及存取控制記錄 如共用對一具有密鑰⑴,,密鑰3”之密鑰之存取。 存取控制記錄群組及其内之存取控制記錄係以樹狀階層 ^予以組織,且因此,除了建立保持敏感資料安全之安 王在鑰之外,一存取控制記錄較佳地係亦可夠建立對應於 其密鑰ID/分割區之其他存取控制記錄實體。這些存取控 制記錄子代將具有與其之父代(建立者)相同的或較少的權 限,且可被給予父代建立之任何密I的權限。$需要增 加,該等子代獲得對於其建立之任何密錄的存取權限。此 係顯示於圖6。因此,存取控制記錄群組12㈣所有存取控 制記錄係由存取控制記錄122所建立,且此類存取控制記 錄中之兩者係繼承自存取控制記錄122之對存取相關聯於 122364.doc -28- 200822669 "密鑰3”之資料之權限。 存取控制記錄群組 登入至該安全儲存應用程式系統係藉由指定一存取控制 記錄群組及該存取控制記錄群組内的一存取控制記錄而實 行。 每一存取控制記錄群組具有一獨一m(參照名稱),其係 使用作為一索引,以指向在安全儲存應用程式資料庫中的 其項目。當建立該存取控制記錄群組時,該存取控制記錄 群組名稱被提供給該安全儲存應用程式系統。假如所提供 之存取控制記錄群組名稱係已經存在該系統内,則該安2 儲存應用程式將拒絕該建立操作。 存取控制記錄群組係用於管理對存取權限及管理權限之 委派的限制,&同將於下文中敘述。圖6内兩個樹所提供 之功此之係&理疋全分開實體(諸如兩個不同的應用程 式,或者兩個不同的電腦使用者)之存取。為此目的,對 於兩個存取程序實質上彼此獨立(亦即,實質上無串擾)係 可能重要的,即使兩者皆同時發生亦如此。此係意謂每一 樹内額外存取控制記錄及存取控制記錄群組的鑑認、權限 以及建立未連接至其他樹並且非相依於其他樹。因此,當 於記憶體1G中使用該安全儲存應用程式系統時,允許該記 憶體系統_時伺服複數個應用程式。亦允許兩個應用程 式彼此獨立地存取兩組分開的資料(例如,一組相片及一 組歌曲)。此係顯示於圖6。因此,應用程式或使用者正在 透過圖6之上方部分的樹内之節點(存取控制記錄)存取之相 122364.doc -29- 200822669 關聯於n密鑰3”、,,密鑰χ”及"密鑰z,,之資料可包含相片。 應用程式或使用者正在透過圖6之下方部分的樹内之節點 (存取控制記錄)存取之相關聯於”密鑰5,,及,,密鑰γ,,之資料 可包含歌曲。建立該存取控制記錄群組之存取控制記錄僅 限於當該存取控制記錄群組係無存取控制記錄項目時才具 有刪除该存取控制記錄群組的權限。 實體之安全儲存應用程式進入點(entry p〇int) ··存取控制 記錄The logical addresses in the area are virtual ^^M, 铒4 at the address #, and engulf all files residing in the hidden partition. In other words, the restrictions are related to a logical address range. All users/hosts that have access to the partition have unrestricted access to all internal files. 4 Isolating different files and another different (four) or slot group, the secure storage application system uses a secret key and key reference or key ID to provide another level of security for each file or file group. And integrity. A key reference or key 1 加密 used to encrypt a particular key value at a different memory address can be analogized to a container or domain containing the encrypted data (d〇 Mai illusion. Therefore, in FIG. 4, the key references or key IDs (eg, ,,,, and after, 鍮2) are displayed in a marginal manner as associated with the use. The area of the file in which the key value of the ID is encrypted. Referring to Figure 4, for example, file A can be accessed by all entities without any authentication because it is shown as not being enclosed by any key ID. Even if all entities can read or overwrite the file B in the public partition, the case B contains the data encrypted with a key with the ID π key, so that the information contained in the file cannot be An entity access, unless such entity has access to such a key. In this way, the use of the key value and the key reference or key ID provides only logical protection, which is relative to the above-mentioned sub-122364.doc -20- 200822669 The type of protection provided by ^^. Therefore, one can be accessed. Any host in the cut zone (public or filial) can read or write the data in the entire partition to the encrypted data. However, because the data is encrypted, the unauthorized user is only The data can be destroyed. Preferably, it cannot change the data without predicate. By restricting access to the encryption and/or decryption key, this feature can only allow the authorized entity to use the data. With the key ID π key 2, the key to encrypt the files B and C can provide data confidentiality and integrity through symmetric encryption. The symmetric encryption method uses content encryption (Content Encryption Key; = ΕΚ), one for each content encryption key. In the secure storage application, the secret value in the inner valley plus the sneak is generated or connected by a flash memory device (such as '(four) memory card) &, the secret value is only used internally and remains as a secret to avoid the outside world. The f-system that is encrypted or cryptographically compiled can also be hashed or cryptographically tethered to Ensure data Integrity. Not all data in the segment is encrypted with different keys and associated with different keys. In public or user files or in the operating system area (ie file configuration table) Some of the logical addresses may not be associated with any key or secret reference and are therefore available to any entity that has access to the partition itself. A request to establish a key and partition and write and The real system from which the data is read or the ability to use the keys needs to be logged into the secure storage application system via an Access Control Record (ACR). The secure storage should be 122364.doc -21 - 200822669 A special permission to access control records in the system (privUeg is called action " (action). Each access control record has the authority to perform the following three categories of actions: establishing a partition and key/key id; accessing the split area and key; and establishing/updating other access control records. . The access control record is (four) into a group, called the access control record group or the GP has successfully authenticated an access control record, then the secure storage application is opened - the session (sessi〇n), Through this session, you can perform any action of controlling access records. The access control record and the access control record group are used to control the security data structure of the access partition and the secret according to the principle. User partitioning The secure storage application system manages one or more public partitions, and is also a user partition. The partition is present on the storage device and is accessible to one or more of the cut zones via a standard read write command of the storage device. Obtaining the size of the partition and its presence on the device is preferably not hidden from the host system. The secure storage application system (4) reads the "command or the secure storage application command and can access the partition. Therefore, it is better that the security area cannot be restricted to a specific access control record." However, : ^ The program system allows these host devices to restrict access; there are four types of zones: zones that can be individually enabled/disabled... 迕 all four combinations (eg, incoming, and no access). Anti-write protection), reading and writing the secure memory application system enables the access control record to associate the secret (10) 122364.doc -22- 200822669 with the file in the user partition, and the associated use is The key of the class key ID is used to encrypt the individual files. Accessing the encrypted files in the user partitions and setting access rights to the partitions will be performed using the secure storage application command set. It is also used for data that has not been organized into a slot. Secure Storage Application partitions have hidden partitions that can be accessed only through the secure storage application command (to avoid unauthenticated parties). The secure storage application system will not allow the host device to access - securely store the application partition, except through a session established by logging into an access control record. Similarly, preferably, The secure storage application will not provide information about the existence, size and access rights of the Secure Storage Application partition unless the request is made through an established session. Derived from the access control record authority. Once an access control record is logged into the secure storage application system '^ can share the partition with other access control records (as described below). When creating a partition The host provides a reference name or ID for the partition (eg, p〇_p3 in Figures 3 and 4). This reference is used among progressive read and write commands for the partition. The partition of the storage device is relatively low. 'All available storage capacity of the device is configured for the user to partition the secure storage application partitions of the J product and the target configuration. Therefore, : = Reconfiguration of the existing partition. For this: ,, the change (the sum of the sizes of all partitions) will be zero. The 妒122364.doc -23- 200822669 The ID of the partition in the memory space is the host Defined by the system. The host system can re-segment one of the existing partitions into two smaller cut areas, or merge two existing partitions (which may or may not be adjacent) into a partition. The bedding material in the divided or merged segment can be deleted or left untouched, according to the judgment of the host. Because the re-segmentation of the storage device can result in the loss of data (because the data is deleted or the data is The strict restriction of re-segmentation in the logical address space of the storage device is managed by the secure storage application system. Only one access control record (described below) residing within an access control record group is allowed to issue a re-segmentation command, and it can only refer to the partitions owned by it. Because the secure storage application system does not know how the data is organized in the partitions (file configuration tables or other file system structures), it is the responsibility of the host to rebuild these structures whenever the device is repartitioned. The re-segmentation of the user partition will change the size and other attributes of the partition viewed by the primary operating system. / After the warning, ensure that any access to the secure storage application system is not referring to the non-existing partitions of the host system. If these access control records are not properly deleted or updated, future attempts to access non-existing partitions on behalf of these access control records will be detected and rejected by the system debt. A similar consideration is given to the deleted key and the key m. Key, Key ID, and Logic Protection When a file is written to a hidden partition, it is for the public to be 122364.doc -24- 200822669, but once an entity (hostile or hostile) The knowledge and access to the partition is obtained, and the file system becomes available and easy to understand. To secure the file for m, the secure storage application can encrypt the file in the hidden partition, where the authentication used to access the key decrypting the standard is preferably different from the authentication used to access the partition. Certification. Since the file system is actually controlled and managed entirely by the host, the content encryption key is associated with the file system __ problem. Linking the privilege to an object (the key ID) recognized by the secure storage application fixes the problem. Thus, when a secret is established by the secure storage application, the host uses the key established by the secure storage application, and the key ID used for the key is associated with the encrypted material. If the key is transmitted to the secure storage application along with the key, the key and the key m can be easily associated with each other. The threshold and the secret ID provide logical security. All data associated with a given Hunting Key ID (regardless of its location) is ciphered by the same key value in the Content Encryption Key (CEK), the reference name of the content encryption key Or the key ID is uniquely provided by the host application at the time of creation. If an entity (by authenticating through an access control record) obtains access to a hidden partition and wants to read or write an encrypted file within the partition, it needs to be accessible. The key 1D associated with the file. When the access to the key for the key ID is granted, the secure storage application loads the pin value associated with the content encryption key associated with the key ID and decrypts the data before transmitting it to the host. The material is encrypted or encrypted before it is written to the flash memory. In an embodiment 122364.doc -25-200822669, a secret value in the content encryption key associated with the - secret ID is randomly established by the resident storage application system and maintained by it. Any entity outside the Anwang storage application system does not know or can't access the key value in the current encryption. The outside world only provides and uses a reference or key ID, rather than the encrypted value in the content encryption pin. The secret value is thoroughly managed and preferably only accessible by the secure storage application or the key can be provided to the secure storage application system. The secure storage application system uses any of the following (user-defined) 2 secret modes (the real cryptographic compilation algorithm used and the 4 key value system control# in the content encryption key), and is not disclosed to the outside World): Block mode - data is divided into blocks, each of which is individually encrypted. This mode is generally considered to be less secure and vulnerable to dictionary attacks. However, it will allow the user to randomly access any of the data blocks. The chain pattern data is divided into blocks, which are chained during the encryption process. Each block is used as the input to the next_encryption program. In this mode, although considered safer, the data is written and read sequentially from start to finish, creating an over-capacity that may not be accepted by the user. Hash-up - A chain pattern with additional data summaries that can be used to confirm data integrity. Access control record and access control The secure storage application is designed to handle multiple applications, wherein each of the applications is represented in the system database as a 122364.doc -26-200822669 having核P point of the core f. The mutual exclusion between the applications is achieved by ensuring that there is no crosstalk between the branches of the trees. In order to gain access to the secure storage application system, an entity needs to establish a connection through one of the access control records. The secure program is managed by the secure storage application system based on the definitions built into the access control record that the user selects to connect. . The Hai Access Control Record is a separate entry point for the secure storage application system. The access control record retains login authentication and authentication methods. Also resident in the record are login privileges within the secure storage application system in which special permissions are read and written. This is shown in Figure 5, which shows n access control records in the same access control record group. This means that at least some of the n access control records can share access to the same key. Therefore, the access control record #1 and the access control record know that the access to the key having the key ID "key 3" is shared, wherein the access control a record #1 and the access control record #n are The access control record ID, and, the key 3, is used to encrypt the key m of the key associated with the data of the key 3". The same key can also be used to encrypt and/or decrypt multiple files, or multiple sets of data. The secure storage application system supports several types of logins to the system, where the 'Guo 忍 & 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝change. Figure 5 shows the different login algorithms and authentication again. Access Control Record #1 specifies a password login algorithm and password for authentication, while the access control record specifies a public key infrastructure (pkd login algorithm and public key for identification 122364.doc -27- 200822669) To log in, an entity will need to submit a valid access control record ID along with the correct login algorithm and authentication. Once an entity logs into the *full storage application, the access control record is one of the associated access records. The access control record defines its authority (the right to use the secure storage application command) in the rights control record (PCR). In Figure 5, 'according to the displayed rights control record, access control record #1 grants the relevant In conjunction with, the read-only permission of the data of the key 3", and the access control record #2 grants the read and write permission to the data associated with the "secret 5," The common interests and special rights in the system can be shared, such as the secret input and the secret input. In order to achieve this, a total of 5 /, access control records of a certain two things are grouped in the access control record For example, the access control record and the access control record share access to a key having a key (1), a key 3". The access control records therein are organized in a tree hierarchy, and therefore, in addition to establishing the security key to keep sensitive data, an access control record may preferably be established to correspond to its secret. Other access control record entities of the key ID/segment. These access control record children will have the same or fewer rights as their parent (founder) and can be given any secret I established by the parent. Permissions. $ needs to be added, and the children get access to any of the secrets they have created. This is shown in Figure 6. Therefore, access control record group 12 (4) all access control records are accessed by access control records. 122 is established, and both of such access control records are inherited from the access control record 122 for access to the data associated with the data of 122364.doc -28- 200822669 & "key 3". Control record group login to the secure storage should The application system is implemented by designating an access control record group and an access control record in the access control record group. Each access control record group has a unique m (reference name), It is used as an index to point to its item in the secure storage application database. When the access control record group is created, the access control record group name is provided to the secure storage application system. If the provided access control record group name is already in the system, the security storage application will reject the setup operation. The access control record group is used to manage the delegation of access rights and administrative rights. The limitations, & will be described below. The two trees in Figure 6 provide the same & separate technologies (such as two different applications, or two different computer users) Access. For this purpose, it may be important for the two access procedures to be substantially independent of each other (i.e., substantially free of crosstalk), even if both occur simultaneously. This means that the identification, permissions, and establishment of additional access control records and access control record groups in each tree are not connected to other trees and are not dependent on other trees. Therefore, when the secure storage application system is used in the memory 1G, the memory system is allowed to servate a plurality of applications. It also allows two applications to access two separate sets of data (e.g., a set of photos and a set of songs) independently of each other. This is shown in Figure 6. Therefore, the application or user is accessing the phase 122364.doc -29- 200822669 through the node (access control record) in the tree in the upper part of FIG. 6 associated with the n key 3",,, key χ" And "key z,, the data can include photos. The application or user is accessing the information associated with the "key 5,,,,, key γ," via the node (access control record) in the tree in the lower portion of Figure 6, which may contain the song. The access control record of the access control record group is limited to having the right to delete the access control record group when the access control record group has no access control record item. The entity secure storage application enters Entry (entry p〇int) · access control record

C 於该安全儲存應用程式系統内的一存取控制記錄敘述該 實體被允許登入該系統之方式。當一實體登入該安全儲存 應用程式系統時,其係需要指定對應於其將執行之鑑認程 序的存取控制記錄。-存取控制記錄包含―權限控制記錄 (PCR),其係顯示使用者—旦如示於圖5之存取控制記錄中 定義經鑑認後,該使用者可執行的經授予之動作。該主機 端的實體提供所有存取控制記錄資料攔位。 當-實體係成功地登人至—存取控制記錄時,該實體將 能夠查詢所有存取㈣靖之分龍及密料取權限以及C An access control record within the secure storage application system describes the manner in which the entity is allowed to log into the system. When an entity logs into the secure storage application system, it needs to specify an access control record corresponding to the authentication program it will execute. The access control record contains a Rights Control Record (PCR) which displays the user's executable actions that can be performed by the user as defined in the access control record shown in FIG. The entity at the host side provides all access control record data blocks. When the real-world system successfully logs into the access control record, the entity will be able to query all accesses (4) Jingzhilong and secret access rights as well as

存取控制記錄屬性管理(ACA聊限(下文予以敛述卜 存取控制記錄ID 當一安全儲存應用程式系統實體起始登人程序時,其係 需要指定對應於該登人方法的存取控制記錄ID(如同當建 立該存取控制記錄係被時由該主機予以提供),使得: 經符合所有登人需求時,該安全儲存應用程式將設定: 的演算法及選擇正確的權限控制記錄。當建立該存取控制 122364.doc -30- 200822669 記錄時,該存取控制記錄10被提供給該安全儲存應用程式 系統。 登入/鑑認演算法 邊鑑涊次算法指定何種登入程序將被該實體所使用,及 何種認證係需要,以提供使用者身份的證明。該安全儲存 應用程式系統支援數種標準的登入演算法, 序(及無認證)及以密碼為基礎的程序至—根據=二 稱密碼編譯之雙向鑑認協定。 ^ 認證 該實體之認證係對應於該登入濟算法,且係由該安全儲 存應用程式所使用以驗證及鑑認該使用者。一用於認證之 棘例可以係一用於密碼鑑認之密碼/個人識別碼數字,用 於登入演异法驗證之登入演算法密鑰,等等。該等認證 (亦即,個人識別碼,對稱密鑰等等)之類型/格式係預先定 義的,且係自該鑑認模式中推導出;當建立該存取控制記 錄時,該等認證被提供給該安全儲存應用程式系統。該安 ' 全儲存應用程式系統對於定義、散佈及管理這些認證沒有 責任,惟以公開密鑰基礎結構為基礎的鑑認例外,其中, 可使用該裝置(例如快閃記憶體卡)來建立該RSA或其他類 型密鑰對,並且公開密鑰可被匯出,以用於認證建立。 權限控制記錄(PCR) 權限控制記錄顯示在登入該安全儲存應用程式系統之後 授予該實體之事項,及成功地傳送該存取控制記錄之鑑認 程序。有三種類型權限類別:分割區及密鍮之建立權限; 122364.doc -31 - 200822669 分割區及密鑰之存取權限;;5“ ^ 催1卩,及只體存取控制記錄屬性之管 理權限。 存取分割區Access control record attribute management (ACA chat limit (hereinafter referred to as access control record ID) When a secure storage application system entity starts the entry procedure, the system needs to specify the access control corresponding to the login method The record ID (as provided by the host when the access control record is created) is such that: the secure storage application will set the algorithm and select the correct rights control record when all entry requirements are met. When the access control 122364.doc -30-200822669 record is established, the access control record 10 is provided to the secure storage application system. The login/authentication algorithm specifies which login procedure will be The entity's use and what type of certification is required to provide proof of the user's identity. The secure storage application system supports several standard login algorithms, pre- (and non-certified) and password-based programs to - A two-way authentication protocol compiled according to = two passwords. ^ Certification of the entity corresponds to the login algorithm and is made by the secure storage application. It is used to verify and authenticate the user. A spine for authentication can be a password/personal identification number for password authentication, a login algorithm key for login verification, and the like. The type/format of such authentication (ie, personal identification number, symmetric key, etc.) is predefined and derived from the authentication mode; when the access control record is established, the authentication is Provided to the secure storage application system. The secure storage application system is not responsible for defining, distributing and managing these authentications, except for public key infrastructure-based authentication exceptions, where the device can be used (eg Flash memory card) to establish the RSA or other type of key pair, and the public key can be exported for authentication establishment. The rights control record (PCR) permission control record is displayed in the secure storage application system. The matter is then granted to the entity, and the authentication procedure for successfully transmitting the access control record. There are three types of permission categories: partition and password establishment authority; 122364.doc -31 - 200822669 Access rights for partitions and keys; 5" ^ 卩1卩, and management rights for only the body access control record attributes. Access partition

此段落的權限控制記錄含有該㈣於成功地完成該存取 控制記錄階段時可存取之分割區的清單(㈣提供給該安 全儲存應用程式系統之其ID)。對於每—分割區,存取類 型被被限定為唯寫或唯讀或者可以指定完全的寫入/讀取 權利。因此,圖5中之該存取控制記錄#1可存取分割㈣ 並且不可存取分副區# i。指定於該權限控制記錄内的限制 套用於該等安全儲存應用程式分割區及公開分割區。 可藉由至裝載該安全儲存應用程式系統之裝置(例如, 快閃記憶體卡)之正規讀取及寫入命令來存取該公開分割 區’或者藉由安全儲存應用程式命令來存取該公開分割 Q。當-根存取控制記錄(下文予以說明)被建立成具有限 制該公開分龍之權限時,其可傳送權限至其子代。較佳 地,-存取控制記錄僅可限制正規讀取及寫入命令存取: 公開分龍。較佳地,於該安全儲存應用程式系統内的存 取控制記錄係、僅只有當其建立時,能夠被限制。—旦—存 取控制記錄具有讀取/寫人該公開分割區之權限時,較佳 地,無法去除其權限。The rights control record for this paragraph contains a list of the partitions that are accessible when the access control record phase is successfully completed ((4) the ID provided to the secure storage application system). For each partition, the access type is defined as write-only or read-only or can specify full write/read entitlements. Therefore, the access control record #1 in FIG. 5 can access the partition (4) and cannot access the sub-area #i. The restrictions specified in this permission control record are used for such secure storage application partitions and public partitions. The public partition can be accessed by a regular read and write command to a device (eg, a flash memory card) that loads the secure storage application system or accessed by securely storing application commands Publicly split Q. When the root access control record (described below) is established to have the authority to restrict the disclosure, it can transfer rights to its children. Preferably, the access control record can only restrict normal read and write command accesses: Open. Preferably, the access control record within the secure storage application system can only be restricted when it is created. Once the access control record has the authority to read/write the open partition, it is preferred that its permissions cannot be removed.

存取密鑰ID 此奴洛的#限控㈣記錄含有當該實體登入程序符合存取 =記錄^時該實體可存取的密卿之清單所相關聯的 貝料。所指定之密鑰1£)係相關聯於—駐留於出現於該權限 122364.doc -32- 200822669 控制記錄中之分割區内的一或多個檔案。因為該等密鑰山 係不相關聯於該裝置(例如,快閃記憶體卡)内的邏輯位 址,所以當一個以上的分割區係相關聯於一特定存取控制 記錄時,該等檔案可位於該等分割區之任一者中。於該權 限控制記錄内指定之密鑰山可各具有一組不同存取權利。 對密鑰ID所指向之資料的存取可被限制成唯寫或唯讀,或 者可以指定完全的寫入/讀取權利。 存取控制記錄屬性管理AM) /本段落敘述於某些情況下,如何可改變該存取控制記錄 系統之屬性。 於該安全儲存應用程式系、统中可准許之存取控制記錄屬 性管理動作係·· 1.建立/刪除/更新存取控制記料組及存取控制記錄。 2·建立/删除分割區及密鑰。 3·委派存取權給密鑰及分割區。 k 一父代存取控制記錄較佳地無法編輯存取㈣記錄屬性 官理權限。較佳地,此需㈣存取控制記錄之刪除及重新 建立。再者,較佳地,對於由該存取㈣記錄所建立之一 密鑰ID的存取權限無法被去除。 一存取控制記錄係可以具有建 其他存取控制記錄及存 取抆制記錄群組的容量。建立存 乜制5己錄亦可以意謂委 派由其建立者所持有的一必或全邱左&仏 M m十 一飞王邛存取控制記錄屬性管理 而彼荨存取控制記錄。具有建立 媢且古nr幻& ^ 子取控制圮錄之權限係意 口月具有下列動作的權限: 122364.doc -33- 200822669 ι.定義及編輯子代的認證·較佳地,一旦被該建立存取 控制記錄所設定,絲認方法無法被編輯。該等認證係可 以於已經定義用於子代的鑑認演算法之邊界内被改變。 2·刪除一存取控制記錄。 ί % 3.委派建立權限給子代存取控制記錄(因而具有孫代卜 一具有建立其他存取控制記錄權限之存取控制記錄係具 有委派解除封鎖(unblock)權限給其建立之存取控制記錄的 柘限(雖然其係可能不具有解除封鎖存取控制記錄之權 限)。該父代將於該子代存取控制記錄中置放一指向其解 除封鎖者之參照。 以代存取m錄係具有删除其子代存取控制記錄的 ^唯存取n己錄。當_存取控制記錄刪除其建立 雜所t低層級存取控制記錄時,由該較低層級存取控制記 ::繁街的所有存取控制記錄係亦自動被刪除。當 =記錄被刪除,則其建立之所有密⑽及分割區被刪 記錄可更新其自己的記錄係具有兩項例外: 存取栌希人識別碼’雖然密碼’個人識別碼係由該建立 存取控制§己錄所势令 _ ^ #'i ^t^-τ m 〇 ,由包含密碼/個人識別碼之存取 “i:錄可更新該密碼,個人識別竭。 制二=取控制記錄係可以刪除自己及其駐留的存取控 委派存取_給密鑰及分㈣ 存取控制記錄及复 /、存取控制記錄群組被組合於樹狀階 122364.doc -34- 200822669 層架構之中,其中,該根存取控制記錄群組及其内之該等 存取控制記錄係於該樹的上方(例如圖6中之根存取控制記 錄群組13〇及132)。於該安全儲存應用程式系統中可具有 數個存取控制記錄群組,雖然該等存取控制記錄群組係彼 此完全分離。於一存取控制記錄群組内的一存取控制記錄 可委派對於其之㈣的存取權限給其所在的相同存取控制 記錄群組内的所有存取控制記錄,且委派給所有由其建立 之存取控制記錄。較佳地,建立密鑰之權限包含委派使用 該等密錄之存取權限之權限。 對於密鑰之權限係分為三種類別: 1·存取-此係定義對於該密鑰之存取權限,亦即,讀 取,寫入。 2.擁有權-依據定義,一建立一密鑰之存取控制記錄係 其擁有者。此擁有權可自一存取控制記錄委派給另一存取 控制記錄(前提係彼等存取控制記錄係在相同的存取控制 記錄群組中或在一子代存取控制記錄群組中)。一密鑰之 一擁有權提供將其刪除以及委派權限給它之權限。 3·存取權委派-此權限使該存取控制記錄能夠委派其所 保有的權利。 存取控制圮錄可委派對其建立之分割區以及其具有存 取權限之其他分割區的存取權限。 權限委派係藉由將該等分割區之名稱及密鑰m加入至指 疋的存取控制記錄的權限控制記錄之中而實行。委派密鑰 存取權限係可以藉由該密鑰ID或者藉由敘述存取權限係用 122364.doc -35- 200822669 於委派存取控制記錄之所有建立的密鑰而實行。 存取控制記錄之封鎖及解除封鎖 /一存取控制記錄可具有-封鎖計數器,t該實體對於該 系、·先之存取控制記錄鑑認程序係不成功時累加該封鎖計數 器。當達到某-最大數量之不成功鑑認時,該安全儲存應 用私式系統將封鎖該存取控制記錄。 該被封鎖#取控制記錄可被另—#取控帝】記錄解除封 鎖,該另一存取控制記錄係被該被封鎖存取控制記錄所參 照。對於該解除封鎖存取控制記錄之參照係被其之建立者 予以設定。較佳地,該解除封鎖存取控制記錄係於位於與 該被封鎖存取控制記錄之建立者相同的存取控制記錄群組 中,且具有”解除封鎖,,權限。 、 該系統内的㈣其他存取控制記錄皆無法解除封鎖該被 封鎖存取控制記錄。一存取控制記錄可被組態成具有一封 鎖。十數器,但疋無一解除封鎖者存取控制記錄。於此情況 下,假如此存取控制記錄被封鎖,則其無法被解除封鎖。 根存取控制記錄群組-建立一應用程式資料庫 該安全儲存制m㈣設計成處置多㈣用程式, 並且隔離該多個應用程式之每一者的資料。該存取控制記 錄群組系統之該樹結構係用於識別及隔離應用程式特定之 負料的主要工#。該根存取控制記錄群組係於一應用程式 安全儲存應用程式資料庫樹之頂端,且遵守某些不同的行 為規則。可於該安全錯存應用程式系統中組態若干根存取 控制記錄群組。於圖6中顯示兩個根存取控制記錄群組13〇 】22364.doc -36 200822669 …、員然地,可使用較多或較少個存取控制記錄群 組,且係屬於本發明之範疇内。 登錄用於一新的應用程式之裝置(例如,快閃記憶體卡) ,毛佈用於邊裝置之新的應用程式之認證係透過將 新的存取控制記錄群組/存取控制記錄樹加入至該裝置的 程序而實行。 X安王儲存應用程式系統支援三種不同模式的根存取控 制記錄群組建立(以及該根存取控制記錄群組之所有存取 控制記錄及其權限): _ 、式不綠要任何種類的鑑認之任何使用者或實 體或透過該系統存取控制記錄鑑認之使用者/實體(下文 =敘述)’可建立—新的根存取控制記錄群組。該開放 二,式實現在無任何安全性措施之下進行根存取控制記錄 〆:且之建立’同時所有資料傳送係於一開放式通道上(亦 P於—發佈代理者(issuance agency)之安全環境下)或者 經由—透過該系統存取控制記錄鑑認所建置之安全通 (亦即,透過空氣(0TA)及後置發佈程序)而實行。 ,如為系統存取控制記錄未經組態(此係—選用特徵), =根存取控制記錄群組建立模式係収成"開放式",則 僅4開放式通道選項係可用。 又控制的.僅透過該系統存取控制記錄鑑認之實體可 =的根存取控制記錄群組。假如系統存取控制記錄 tr組怨’則該安全儲存應用程式系統無法被設定為此模 122364.d< -37- 200822669 3·已封鎖:根存取控制記錄群組之建立被停用,且無額 卜的根存取控制記錄群組可被加入至該系統。 兩個安全儲存應用程式命令控制此特徵(這些命令係可 被任何使用者/實體所使用,而不必鑑認)。: 方法組態命令-用於組態該安全儲存應用程式系統, 以使用三種根存取控制記錄群組建立模式中之任一者。僅 下列模式改變係被允許··開放式+受控制的,受控制的+ 已封鎖(亦即,假如該安全儲存應用程式系統目前被組態 為又控制的,則其係僅能夠被改變成已封鎖)。 2·方法組態鎖定命令-用於停用該方法組態命令,且永 久鎖定目前選擇的方法。 當一根存取控制記錄群組被建立,其處於啟用其存取控 制U己錄之建立及組態(使用與套用至該根存取控制記錄群 組之建立相同的存取限制)之特殊初始化模式。於該根存 取控制記錄群組組態程序結束處,當該實體明確地將其切 換至操作杈式時,不再可更新現有的存取控制記錄,且不 再可建立額外的存取控制記錄。 一旦一根存取控制記錄群組係置放於標準模式中,僅能 夠藉由透過其存取控制記錄_經指派具有刪除該根存取控 制圯錄群組之權限的一存取控制記錄登入該系統,才能刪 除該根夸取控制記錄群組。此係除了該特殊初始化模式之 卜根存取控制A錄群組之另一例外;較佳地,其係可含 有具有刪除其自己的存取控制記錄群組之存取控制記錄 的僅有的存取控制記錄群組,此係相對於下一樹層級内的 122364.doc -38- 200822669 存取控制記錄群組。 一根存取控制記錄及一標準存取控制記錄之間之第三及 最後差異在於,其係該系統中唯一可具有建立及刪除分割 區之權限的存取控制記錄。 女全儲存應用程式系統之存取控制記錄 該系統存取控制記錄可用於下列兩項安全儲存應用程式 操作: f £ i 1.在敵意環境内一安全通道的保護下建立一存取控制記 錄/存取控制記錄群組樹。 2·識別及鑑認裝载該安全儲存應用程式系統之裝置。 較佳地’該安全儲存應用程式系、統内可僅有—系統存取 栓制.己錄’且一旦被定義,較佳地,其無法被改變。當建 立該系統存取控制記錄時,係不需要系統鑑認;只需^一 安全儲存應用程式命令。”建立系統存取控制記錄"特徵可 被停用(類似於”建立根存取控制記錄群組”特徵)。在該系 統存取控制記錄係被建立之後,該,,建立系、统存取控制記 錄”特命令係無效果 錄係被允許的。 因為較佳地,僅一系統存取控制記 :於建立之私序中’該系、統存取控制記錄係不操作的。 ;凡成夺肖殊的命令係需要被發佈,其指示該系統存 取控制記錄係被建立㈣準備好進行。在此點之後,該系 統存取控制記錄較佳地無法被更新或取代。 /系、先存取控制讀於該安全儲存應用程式巾建立該根 存取控制。己錄/存取控制記錄群組。其具有增加/改變該根 122364.doc -39- 200822669 f ==:’直到該主機係滿意其且封鎖其之時間為止。 ^亥根存取控制記錄群組基本上係切斷其接至該系統之 且呈現其防竄改證明(tamper pr〇〇f)。此時,任 ::無法改變/編輯該根存取控制記錄群組及其内 制記錄。此係透過-安全儲存應用程式命令而實行。停用工 =取控制記錄群組之建立具有—永久的效果且無法進行 還原。於圖7顯示牵涉到該系統存取控制記錄的上述特 心I糸統存取控制記錄係用於建立三個不同的.根存取控 制,己錄群組。於這些根存取控制記錄群組被建立之後某一 夺占時自5亥主機傳送該安全儲存應用程式命令,以自今 系赫取控制記錄封鎖料根存取控制記錄群組,藉此停/ 用肩建立根存取控制記錄群組”特徵,如圖7中連接該系 、’先存取控制C錄及該等根存取控制記料組之虛線所示。 此呈現。亥_個根存取控制記錄群組之防窥改證明。於該等 根存取控制記錄群組被封鎖之前或之後,可使用該三個根 存取控制記錄群組來建立子代存取控制記錄群組,以形成 三個個別的樹。 上述之特徵係提供内容擁有者於組態具有内容之安全產 的彈f生女全產品需要被’’發佈,,。發佈係置放識別密 鑰之私序,藉由該識別密鑰,該裝置可識別該主機,且反 之亦$ Q識別該裝置(例如,快閃記憶體卡)係使該主機能 夠决疋疋否其可相栺具有其之秘密。另一方面,識別該主 機係使4裝置能夠僅限於該主機被允許之情況下強制實行 安全性原則(授予及執行一特定主機命令)。 122364.doc 200822669 被設計成舰多數個應用程式之產品將具有數個識別密 餘。該產品可被”預先發佈",於製造期間在裝運之前儲 存密瑜;或者,,後發佈”,於裝運之後增加新的密鑰。對於 後發佈而言,記憶體裝置(例如,記憶體卡)係需要含有某 種主控或裝置層級⑽,其係被用於識別被允許將應用程 式加入至該裝置之實體。 上述特徵實現將一產品組態成啟用/停用後發佈。此 外,可在裝運之後安全地進行該後置發佈組態。該裝置係 可以作為一零售產品被購買,該零售產品上不具有除了上 述主:或裝置層級密鑰之外的密鑰,且接著係由新的擁有 者組態,以啟用或停用進一步的後發佈應用程式。 因此,該系統存取控制記錄之特徵提供完成上述目標之 能力· 厂 -不具有系統存取控制記錄之記憶體裝置將允許無限制 及無控制增加應用程式。 -不具有系統存取控制記錄之記憶體裝置可被組態成停 用該系統存取控制記錄建立,其係意謂無任何控制增加新 應用程式之方法(除非建立新的根存取控制記錄群組之 徵亦被停用)。 ' -具有系統存取控制記錄之記憶體裝置將僅允許經由一 透過使用該系統存取控制記錄認證之鑑認程序所建置之a 全通道以受控制方式增加應用程式。 女 -具有系統存取控制記錄之記憶體裝置可被組態成在應 用程式已經被加入之前或之後,停用該加入應用程式: 122364.doc •41- 200822669 徵。 密鑰ID清單 密鑰ID係根據特定存取控制記錄請求而建立;然而,於 記憶體系統1G中’其係僅由該安全儲存應用程式系統所使 用。當一密输ID被建立時,下列資料係由建立存取控制記 錄所提供或提供給建立存取控制記錄: 1.密鑰ID。該10係由該實體透過該主機所提供,且係用 於參妝该岔鑰及於所有進一步讀取或寫入存取中使用該密 鑰加密或解密之資料。 2·密鑰編密及資料完整性模式(上述已封鎖、已鏈鎖及 雜湊模式且如下文所敘述)。 除了主機提供的屬性之外,下列資料係由該安全儲存應 用程式系統所維護: 1 ·密鑰1D擁有者。該存取控制記錄之ID係該擁有者。當 一密鑰ID被建立時,該建立者存取控制記錄係其擁有者。 然而,密鑰ID擁有權可被轉移至另一存取控制記錄。較佳 地’僅該密鑰ID擁有者係被允許轉移一密鑰ID之擁有權及 委派一密鑰ID。委派存取權限給相關聯的密鑰及廢止這些 權利可由該密鑰ID擁有者或被指派具有委派權限之任何其 他存取控制記錄所管理。每當企圖實施彼等操作之任一者 時’只有在該請求的存取控制記係被授權之下,該安全儲 存應用程式系統才授予此企圖。 2·内谷加密密鑰(CEK)。此係其之密鑰值係被用於編密 相關聯於該密鑰ID或該密鑰ID所指向之内容之内容加密密 122364.doc -42- 200822669 鑰。該密鑰值可以係一由該安全儲存應用程式系統所建立 之128位元之登入演算法隨機密鑰。 3.MAC及IV值。用於鏈區塊編密加密演算法中之 動態資訊(訊息鑑認碼及起始向量)。 參照圖8A-16之流程圖而顯示該安全儲存應用程式之各 種特徵,其中,一步驟之左方的”H”係意謂該操作係由該 主機所實施,且"C”係意謂該操作係由該記憶體卡所實 施。雖然參照記憶體卡而顯示這些安全儲存應用程式特 徵’應瞭解的是,這些特徵係亦可應用於其他實體形式中 之記憶體裝置。為了建立一系統存取控制記錄,該主機發 佈一命令給該記憶體裝置10内的安全儲存應用程式,以建 立系統存取控制記錄(方塊2〇2)。該裝置丨〇係藉由檢查是否 糸、、’充存取控制圮錄係已經存在而回應(方塊Μα,菱形 206)。叙如其係已經存在,則裝置1〇傳回失敗及停止(橢圓 形208)。假如其係尚未存在,則記憶體1〇係檢查系統存取 控制記錄建立是否被允許(菱形21〇),且假如不被允許,則 傳回一失敗狀態(方塊212)。因此,可有若干案例,其中, 該裝置發行者係不允許一系統存取控制記錄的建立,諸如 於所需之安全性特徵係已經被預先決定,使得不需要 存取控制記錄的情況。假如此係被允許,則該裝置1〇傳回 確定(〇Κ)狀態^待來自該主機的系統存取控制記錄認證 (方塊214)。該主機檢查該安全儲存應用程式狀態及是否該 裝置10係已經指示-系統存取控制記錄的建立係被允許 (方塊216及菱形218)。假如建立係不被允許或者一系統存 122364.doc 43- 200822669 取控制記錄係已經存在,則該主機停止(橢圓形22G)。假如 該裝置1 〇係已經指示一系統存取控制記錄的建立係被允 許,則該主機係發佈-安全儲存應用*式命令,以定義其 之登入涊證,且傳送該登入認證至該裝置1〇(方塊222)。該 裝置10用所接收之認證來更新—系統存取控制記錄記錄, 且傳回"確定”狀態(方塊224)。為了回應此狀態«,該主 機發佈安全儲存應用程式命令,其指示該系統存取控制記 錄係準備好(方塊226)。該I置10係以鎖定該系統存取控制 α己錄使彳于其無法被更新或取代而回應(方塊228)。此係鎖定 X系、’先存取控制5己錄之特徵及其用於對於主機識別該裝置 10之身份。 用於建立新的樹(新的根存取控制記錄群組及存取控制 記錄)的程序係由於該裝置内組態這些功能之方式而決 疋。圖9係說明該等程序。該主機24及該記憶體系統兩 者遵循此。假如增加新的根存取控制記錄群組係全然被停 用’則無法增加新的根存取控制記錄群組(菱形246)。假如 其係被啟用但需要一系統存取控制記錄,則該主機透過該 系統存取控制記錄進行鑑認,且在發佈,,建立根存取控制 記錄群組”命令之前建置一安全通道(方塊254)。假如不需 要系統存取控制記錄(菱形248),則該主機24可發佈該,,建 立根存取控制記錄群組”命令而不需鑑認,且進行至方塊 254。假如系統存取控制記錄確實存在,則該主機係可以 使用匕即使其係不需要亦如此(未示於該流程圖)。假如 該功能被停用,則該裝置(例如快閃記憶體卡)將拒絕建立 122364.doc -44- 200822669 一新的根存取控制記錄群組的任何企圖,且假如需要系統 存取控制記錄,則其將拒絕_建立-新的根存取控制記錄 群組而不健之企圖(菱形246及25())。於方塊中新建立 的存取控制記錄群組及存取控制記錄現在係切換成操作模 式,使得於此類存取控制記錄群組内的存取控制記錄無法 被更新或改變,且無存取控制記錄可被加入彼等存取控制 2錄群組之中(方塊256)。接著,該系統係可選用地被鎖 疋,使侍無法建立額外的根存取控制記錄群組(方塊258)。 虛線方塊258係一指示此步驟係選用的步驟的慣例。於本 申%案之圖式内的流程圖内所有虛線方塊係選用的步驟。 此係允許該内容擁有者封鎖將該裝置1〇用於可模仿一具有 合法内容的真品記憶體裝置的其他非法目的。 為了建立存取控制記錄(除了該根存取控制記錄群組内 存取控制記錄以外,如上文所述),可以具有建立一存取 控制5己錄之權利的任何存取控制記錄開始(方塊27〇),如示 於圖10。任何實體可企圖透過該主機24藉由提供進入點之 存取控制記錄身份以及具有所有想要建立之必要的屬性之 存取控制圮錄而進入(方塊272)。該安全儲存應用程式檢查 對於該存取控制記錄身份之匹配及具有如此身份之存取控 制A錄疋否具有建立一存取控制記錄的權限(方塊274)。假 如該印求係被鑑認為經授權,則該裝置丨〇内的安全儲存應 用程式係建立一存取控制記錄(方塊276)。 圖11係顯示兩個存取控制記錄群組,其係顯示一對於使 用圖10之方法之安全性應用程式有用的樹。因此,於行銷 122364.doc -45- 200822669 存取控制圮錄群組内具有身份ml之存取控制記錄具有建立 一存取控制記錄的權限。該存取控制記錄ml亦具有使用用 於頃取或寫入相關聯於密鑰ID,,行銷資訊"的資料及相關聯 於袷鑰ID ’’價格清單”的資料之密鑰的權限。使用圖1〇之方 法,建立具有兩個存取控制記錄的銷售存取控制記錄群 、、且· s 1及s2,其係僅具有對於用於存取相關聯於該密鑰 "價格清單,,之定價資料之密鑰的讀取權限,而無存取相關 聯於該密鑰ID,,銷售資訊”之資料所需的密鑰的讀取權限。 以此方式,具有存取控制記錄sl及s2之實體係僅能夠讀取 而不能夠改變定價資料,且將不可存取行銷資料。另一方 面,存取控制記錄m2不具有建立存取控制記錄的權限,且 僅具有對於用於存取相關聯於密鑰m,,價格清單,,及相關聯 於密鑰ID "行銷資訊”之資料的密鑰之讀取權限。 因此,可以使用上述之方式委派存取權,其中,以委 派讀取定價資料的制給81及82。在牽涉到大型行銷及銷 售群組之情況下,此係特別有用的。在僅一或少數銷售人 員之下,可以不需要使用圖1〇之方法。反而是,存取權係 可以由一存取控制記錄委派給於相同的存取控制記錄群組 内於一較低層級或相同層級的存取控制記錄,如示於圖 12。首先,該實體進入用於此類存取控制記錄群組的樹, 其方式係藉由以一上述方法透過該主機指定該樹中之一存 取控制記錄(方塊280)。接著,該主機將指定該存取控制記 錄及委派給其之權利。該安全儲存應用程式係檢查用於此 類存取控制記錄的樹及該存取控制記錄是否具有委派權利 122364.doc -46- 200822669 給指定的另一存跑Access Key ID This Noro's #Limited (4) record contains the contents of the list of secrets that the entity can access when the entity's login procedure matches Access=Record^. The specified key 1 £) is associated with one or more files that reside in the partition that appears in the control record 122364.doc -32- 200822669. Because the key mountains are not associated with logical addresses within the device (eg, a flash memory card), when more than one partition is associated with a particular access control record, the files are Can be located in any of the partitions. The key mountains specified in the rights control record may each have a different set of access rights. Access to the material pointed to by the key ID can be restricted to write-only or read-only, or a full write/read right can be specified. Access Control Record Attribute Management AM) / This paragraph describes how to change the attributes of the access control record system in some cases. Access control record attribute management action system permitted in the secure storage application system. 1. Create/delete/update access control record group and access control record. 2. Create/delete partitions and keys. 3. Delegate access to the key and partition. k A parent access control record is preferably unable to edit access (4) record attribute official authority. Preferably, this requires (4) the deletion and re-establishment of the access control record. Furthermore, preferably, access rights to one of the key IDs established by the access (four) record cannot be removed. An access control record can have the capacity to create other access control records and to access the control record group. The establishment of a depository system may also mean that the delegated access control record attribute management is owned by a certain or all-qiu left & M m. The authority to establish the 媢 古 古 古 amp amp amp ^ ^ ^ ^ 意 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 定义 定义 定义 定义 定义 定义 定义The setting of the access control record is set, and the silk recognition method cannot be edited. Such authentications can be changed within the boundaries of the authentication algorithms that have been defined for the children. 2. Delete an access control record. % % 3. Delegate the establishment of permissions to the child access control records (thus having access control records with the authority to establish other access control records with delegated unblocking rights to the access control established by them) The limit of the record (although it may not have the authority to unblock the access control record). The parent will place a reference to the unblocked person in the child access control record. The recording system has the only access to delete its child access control record. When the _ access control record deletes its low-level access control record, the lower level access control record: : All access control records of the street are also automatically deleted. When the record is deleted, all the secrets (10) and partitions created by it are deleted and the record can be updated to have its own record with two exceptions: The person identification code 'Although the password' personal identification number is determined by the establishment of the access control § _ ^ #'i ^t^-τ m 〇, by the access containing the password / PIN "i: recorded The password can be updated, personal identification is exhausted. The record system can delete itself and its resident access control delegate access _ to the key and sub-(4) access control record and complex / access control record group are combined in the tree step 122364.doc -34- 200822669 In the layer architecture, the root access control record group and the access control records therein are located above the tree (for example, the root access control record groups 13 and 132 in FIG. 6). There may be several access control record groups in the secure storage application system, although the access control record groups are completely separated from each other. An access control record in an access control record group can be delegated The access rights to (4) are given to all access control records in the same access control record group in which they are located, and are delegated to all access control records established by them. Preferably, the permission to establish a key includes The authority to use the access rights of the secret records is delegated. The permissions on the keys are divided into three categories: 1. Access - This defines the access rights to the key, that is, read and write. 2. Ownership - according to the definition, one establishes one The access control record of the key is its owner. This ownership can be delegated from one access control record to another access control record (provided that their access control records are in the same access control record group) Or in a child access control record group. One of the keys has the right to provide permission to delete it and delegate permissions to it. 3. Access Rights Delegation - This permission enables the access control record to be delegated The rights reserved. The access control record can delegate the access rights to the partitions it establishes and other partitions with access rights. The rights delegation is by the name and key of the partitions. It is implemented by adding to the access control record of the fingerprint access control record. The delegation key access authority can be delegated by the key ID or by narrating the access authority system 122364.doc -35- 200822669 Execution is performed by accessing all established keys of the control record. The lockout and unblocking of the access control record/an access control record may have a -blocking counter, and the entity accumulates the blocked counter when the access control record authentication procedure is unsuccessful. When a certain-maximum number of unsuccessful authentications is reached, the secure storage application private system will block the access control record. The blocked control record can be unlocked by another record, and the other access control record is referenced by the blocked access control record. The reference to the unblocked access control record is set by its creator. Preferably, the unblocking access control record is in the same access control record group as the creator of the blocked access control record, and has "unblocking, privilege." (4) within the system No other access control record can unblock the blocked access control record. An access control record can be configured to have a lock. Tens, but none of the unblocker access control records. If the access control record is blocked, it cannot be unblocked. Root access control record group - create an application database. The secure storage system m (4) is designed to handle multiple (four) applications and isolate the multiple The data of each of the applications. The tree structure of the access control record group system is used to identify and isolate application-specific negative materials. The root access control record group is tied to an application. The program securely stores the top of the application database tree and adheres to certain different behavior rules. Several root access control record groups can be configured in the secure application system. In Figure 6, two root access control record groups are displayed. 22364.doc -36 200822669 ..., memberally, more or fewer access control record groups can be used, and belong to the present invention. In the category. Login to a device for a new application (for example, a flash memory card), the authentication of the new application for the edge device is based on the group/access of the new access control record. The control record tree is implemented by adding a program to the device. The X-Awang Storage Application System supports three different modes of root access control record group establishment (and all access control records of the root access control record group and Permissions): _, non-green for any kind of authentication of any user or entity or through the system access control record identification of the user / entity (below = narrative) 'can be established - new root access control Record group. The open second implementation implements the root access control record without any security measures: and the establishment of 'all data transmission is on an open channel (also P-publishing agent ( Issuance Under the security environment of the agency), or through the access control of the system to access the control record to identify the security pass (that is, through the air (0TA) and post-release procedures). For system access control The record is not configured (this system - select feature), = root access control record group establishment mode is harvest "open ", then only 4 open channel options are available. Controlled. Only through this The system access control record identification entity can = root access control record group. If the system access control record tr group resentment, then the secure storage application system cannot be set to this mode 122364.d<-37- 200822669 3. Blocked: The establishment of the root access control record group is disabled, and the untrusted root access control record group can be added to the system. Two secure storage application commands control this feature (these commands can be used by any user/entity without having to authenticate). : Method Configuration Command - Used to configure the secure storage application system to use any of the three root access control record group establishment modes. Only the following mode changes are allowed. · Open + controlled, controlled + blocked (ie, if the secure storage application system is currently configured to be controlled, it can only be changed to Blocked). 2. Method Configuration Lock Command - Used to deactivate the method configuration command and permanently lock the currently selected method. When an access control record group is created, it is in the special state of enabling its access control U record creation and configuration (using the same access restrictions as applying to the root access control record group) Initialization mode. At the end of the root access control record group configuration program, when the entity explicitly switches it to the operation mode, the existing access control record can no longer be updated and additional access control can no longer be established. recording. Once an access control record group is placed in the standard mode, it can only be logged in by access control records via the access control record assigned to delete the root access control record group. The system can delete the root extract control record group. This is in addition to the special initialization mode of the Buken Access Control A record group; preferably, it may contain only the access control record with its own access control record group deleted. Access control record group, which is relative to the 122364.doc -38-200822669 access control record group in the next tree level. The third and final difference between an access control record and a standard access control record is that it is the only access control record in the system that has the authority to create and delete partitions. Access Control Record for Female Full Storage Application System The system access control record can be used for the following two secure storage application operations: f £ i 1. Establish an access control record under the protection of a secure channel in a hostile environment / Access control records the group tree. 2. Identify and identify the device that loads the secure storage application system. Preferably, the secure storage application system can have only system access plug-in. Once recorded, and preferably, it cannot be changed. When the system access control record is established, system authentication is not required; only one securely stores the application command. The "establish system access control record" feature can be deactivated (similar to the "establish root access control record group" feature). After the system access control record system is established, the system is established. Take control records. The special command system is not allowed. Preferably, only one system access control record is used in the private sequence established. The system access control record is not operational. The command system that needs to be released is required to be issued, indicating that the system access control record is established (4) ready to proceed. After this point, the system access control record is preferably not updated or replaced. / System, first access control reads the secure storage application towel to establish the root access control. Recorded/accessed control record group. It has the ability to increment/change the root 122364.doc -39- 200822669 f ==:' until the host is satisfied and the time is blocked. ^Hügen access control record group basically cuts off its connection to the system and presents its tamper proof (tamper pr〇〇f). At this time, the ::cannot change/edit the root access control record group and its internal record. This is done through the Secure Storage Application command. Deactivated work = The establishment of the control record group has a permanent effect and cannot be restored. The above-described privileged access control record relating to the system access control record is shown in Figure 7 for establishing three different root access controls, the recorded group. After the root access control record group is established, the secure storage application command is transmitted from the host of the 5H at the time of the capture, so that the control record is blocked from the root access control record group. / Using the shoulder to establish the root access control record group feature, as shown in Figure 7 is connected to the system, 'first access control C record and the root access control record group's dotted line. This presentation. Root access control record group anti-peep proof. The root access control record group can be established using the three root access control record groups before or after the root access control record group is blocked. Groups to form three individual trees. The above characteristics are provided by the content owner to configure the product with the security of the content of the entire product needs to be ''published,. The publishing system puts the private key to identify the key By means of the identification key, the device can identify the host, and vice versa, identifying the device (eg, a flash memory card) to enable the host to determine whether it can have its secret On the other hand, identifying the host system makes 4 devices It is sufficient to enforce the security principle (grant and execute a specific host command) only if the host is allowed. 122364.doc 200822669 Products designed as a ship's majority of applications will have several identification secrets. Being "pre-released", storing Mi Yu before shipment during manufacturing; or, post-posting, adding a new key after shipment. For post-release, memory devices (eg, memory cards) There is a need to include some sort of master or device level (10) that is used to identify entities that are allowed to add applications to the device. The above features enable a product to be configured for enable/disable after release. In addition, it can be shipped The post-release configuration is then safely performed. The device can be purchased as a retail product that does not have a key other than the primary: or device level key, and is then new The owner configures to enable or disable further post-release applications. Therefore, the features of the system access control record provide the ability to accomplish the above objectives. Factory - a memory device that does not have a system access control record will allow unlimited and no control to add an application. - A memory device without a system access control record can be configured to deactivate the system access control record creation. , which means that there is no way to control the addition of new applications (unless a new root access control record group is also disabled). '- Memory devices with system access control records will only be allowed via A full channel of the authentication program established by the access control record authentication system is used to increase the application in a controlled manner. Female - The memory device with system access control record can be configured to be in the application already Before or after being added, the joining application is deactivated: 122364.doc • 41- 200822669. The key ID list key ID is established according to a specific access control record request; however, in the memory system 1G It is only used by this secure storage application system. When a secret ID is created, the following data is provided by the establishment access control record or provided to establish an access control record: 1. Key ID. The 10 is provided by the entity through the host and is used to access the key and to encrypt or decrypt the data using the key in all further read or write accesses. 2. Key Encryption and Data Integrity Mode (the above-mentioned blocked, chained and hashed modes are described below). In addition to the properties provided by the host, the following information is maintained by the secure storage application system: 1 • Key 1D owner. The ID of the access control record is the owner. When a key ID is established, the creator access control record is its owner. However, the key ID ownership can be transferred to another access control record. Preferably, only the key ID owner is allowed to transfer ownership of a key ID and delegate a key ID. Delegate access rights to associated keys and revoke these rights can be managed by the key ID owner or any other access control record assigned to delegate authority. The secure storage application system grants this attempt whenever an attempt is made to perform any of its operations only if the access control record of the request is authorized. 2. Inner Valley Encryption Key (CEK). This is the key value used to encrypt the content associated with the key ID or the content to which the key ID is directed to encrypt the key 122364.doc -42- 200822669. The key value can be a 128-bit login algorithm random key established by the secure storage application system. 3. MAC and IV values. Dynamic information (message identification code and start vector) used in the chain block encryption algorithm. Referring to the flowchart of FIG. 8A-16, various features of the secure storage application are shown, wherein the "H" system on the left of the step means that the operation is implemented by the host, and the "C" system means This operation is performed by the memory card. Although these secure storage application features are displayed with reference to the memory card, it should be understood that these features can also be applied to memory devices in other physical forms. Access control record, the host issues a command to the secure storage application in the memory device 10 to establish a system access control record (block 2〇2). The device is checked by checking whether, The access control control system already exists and responds (block Μα, diamond 206). If the system already exists, the device 1 〇 returns failure and stops (oval 208). If the system does not exist, the memory 1 The system checks whether the access control record establishment is allowed (diamond 21〇), and if not allowed, returns a failure status (block 212). Therefore, there may be several cases in which the The issuer does not allow the establishment of a system access control record, such as where the required security profile has been predetermined so that access control records are not required. If so, the device is enabled. Returning the determination (〇Κ) status to the system access control record authentication from the host (block 214). The host checks the status of the secure storage application and if the device 10 has indicated that the system access control record is established. Is allowed (block 216 and diamond 218). If the establishment is not allowed or a system saves 122364.doc 43- 200822669, the control record is already present, then the host stops (oval 22G). Having indicated that the establishment of a system access control record is permitted, the host issues a secure-storage application* command to define its login credentials and transmits the login authentication to the device (block 222). The device 10 updates with the received authentication - the system access control records the record and returns a "determined" status (block 224). In response to this state «, the host issues a secure storage application command indicating that the system access control record is ready (block 226). The I set is 10 to lock the system access control and the response is responsive to its inability to be updated or replaced (block 228). This locks the features of the X-system, 'first access control" and its identity for identifying the device 10 for the host. The procedures used to create new trees (new root access control record groups and access control records) are determined by the way these functions are configured within the device. Figure 9 illustrates these procedures. Both the host 24 and the memory system follow this. If a new root access control record group is completely disabled, then a new root access control record group (diamond 246) cannot be added. If it is enabled but requires a system access control record, the host authenticates through the system access control record, and establishes a secure channel before issuing the root access control record group command ( Block 254). If the system access control record (diamond 248) is not required, then the host 24 can issue the "Create Root Access Control Record Group" command without authentication and proceed to block 254. If the system access control record does exist, the host can be used even if it is not required (not shown in the flowchart). If the feature is disabled, the device (such as a flash memory card) will refuse to create any attempt to create a new root access control record group for 122364.doc -44- 200822669, and if system access control records are required , then it will reject the _establishment - new root access control record group and do not attempt (magnitude 246 and 25 ()). The newly established access control record group and access control record in the block are now switched to the operation mode, so that the access control record in such access control record group cannot be updated or changed, and no access is made. Control records can be added to their access control 2 record group (block 256). The system is then optionally locked so that the server cannot create additional root access control record groups (block 258). The dashed box 258 is a convention that indicates the steps selected for this step. All the dashed lines in the flow chart in the diagram of this application are the steps selected. This allows the content owner to block the use of the device 1 for other illegal purposes that can mimic a genuine memory device with legitimate content. In order to establish an access control record (in addition to the access control record within the root access control record group, as described above), any access control record having the right to establish an access control 5 may be initiated (block 27). 〇), as shown in Figure 10. Any entity may attempt to enter through the host 24 by providing an access control record identity for the entry point and an access control record having all the attributes necessary to establish (block 272). The secure storage application checks for a match in the access control record identity and an access control having such an identity to have permission to establish an access control record (block 274). If the print request is deemed authorized, then the secure storage application within the device creates an access control record (block 276). Figure 11 shows two access control record groups showing a tree useful for the security application using the method of Figure 10. Therefore, in the marketing 122364.doc -45-200822669 access control record group having the identity ml in the access control record group has the authority to establish an access control record. The access control record ml also has the authority to use a key for taking or writing data associated with the key ID, the marketing information " and the data associated with the key ID ''price list'. Using the method of FIG. 1A, a sales access control record group having two access control records, and s 1 and s2 are established, which only have a price list associated with the key for access. , the read permission of the key of the pricing data, and the access permission of the key required for the information related to the key information, the sales information. In this way, the real system with access control records sl and s2 can only read but not the pricing data, and the marketing data will not be accessible. On the other hand, the access control record m2 does not have the authority to establish an access control record, and has only the information associated with the key m for access, the price list, and the associated key ID " marketing information The right to read the key of the data. Therefore, the access method can be delegated in the above manner, in which 81 and 82 are assigned to read the pricing data. In the case of large marketing and sales groups This is particularly useful. Under only one or a few sales people, the method of Figure 1 can be eliminated. Instead, the access rights can be delegated to the same access control record by an access control record. An access control record in a lower level or the same level within the group, as shown in Figure 12. First, the entity enters a tree for such access control record group by using the above method An access control record in the tree is designated by the host (block 280). The host then specifies the access control record and the rights delegated to it. The secure storage application checks for such access control Whether the recorded tree and the access control record have delegated rights 122364.doc -46- 200822669 Give another specified run

存取控制記錄的權限(方塊282)。假如苴是, 利係被委派(方塊284);假如不是,則停止。該結 %糸:1 丁於圖13。於此情況下,存取控制記錄ml具有委派 項取權限…亥存取控制記錄si的權限,使得在委派之後, Sl將月匕夠使用—存取價格資料的密鍮。假如ml係、具有存取 定價資料及如此委派之權限的相同或較大的權利,則此可 被實施。於-項實施例中,ml在委派之後維持其存取權。 較佳地’可在受限制條件下(而非永久地)委派存取權,諸 如一段有限的時間、有限的存取次數等等。 圖14顯不用於建立一密錄及密输⑴之程序。該實體透過 存取控錄進行鑑認(方塊302)。該實體請求用由該主 機所指定之ID來建立密鑰建立(方塊3〇4)。該安全儲存應 用程式檢查及觀看所指定之存取控制記錄是否具有如此實 施之權限(菱形3G6)。舉例而言,假如該密鑰係被用於存取 一特別分割區内的資料,則該安全儲存應用程式將檢查及 觀看該存取控制記錄是否可存取此分割區。假如該存取控 制記錄經授權,則該記憶體裝置10建立一相關聯於由該主 機所提供之密鑰ID的密鑰值(方塊308),且儲存該密錄m 於該存取控制記錄之中,及儲存該密鑰值於其記憶體(控 制器相關聯的記憶體或記憶體20)内,且根據由該實體所 長:供之資訊而指派權利及權限(方塊3 1 〇 ),且用此類經指派 的權利及權限來修改此類存取控制記錄的權限控制記錄 (方塊3 12)。因此,該密鑰之建立者具有所有可取得的權 利,諸如讀取及寫入權限、委派及與相同存取控制記錄群 122364.doc -47- 200822669 組内其他存取控制記或於一較低層級之存取控制記錄共用 之權利,及轉移該密鑰之擁有權之權利。 一存取控制記錄可改變於該安全儲存應用程式系統内另 一存取控制記錄之權限(或全然存在),如示於圖15。一實 體係可以如前一樣透過一存取控制記錄而進入一樹;於一 清況下’ 0亥實體被鑑忍且接著其指定一存取控制記錄(方 塊330,3 32)。其請求一目標存取控制記錄之刪除或一目 標存取控制記錄内之權限(方塊334)。假如所指定之存取控 制記錄或於如此時間為作用中狀態之存取控制記錄具有如 此實施之權利(菱形336),則該目標存取控制記錄被刪除, 或者該目標存取控制記錄之權限控制記錄被改變以刪除此 類權限(方塊33 8)。假如此未經授權,則該系統停止。 在上述程序之後,該目標將不再能夠存取在該程序之前 其能夠存取之資料。如示於圖16,一實體係可能企圖進入 該目‘存取控制圯錄(方塊35〇),且發現到該鑑認程序失 敗’因為先前存在的存取控制記錄ID係不再出現於該安全 儲存應用程式之中,使得存取權係被拒絕(菱形352)。假設 該存取控制記錄ID尚未被刪除,則該實體指定一存取控制 記錄(方塊354)及於一特別分割區内的密鑰山及/或資料, 且接著該安全儲存應用程式根據此類存取控制記錄的權限 控制記錄檢查是否准許該密鑰山或分割區存取請求(菱形 3 5 8)。假如该權限已被刪除或已經過期,則該請求再次被 拒絕。否則’該請係被授予(方塊360)。 上述程序敘述該裝置(例如,快閃記憶體卡)如何管理對 122364.doc -48- 200822669 受保護的資料之存取,而不論是否該存取控制記錄及其之 權限控制記錄係剛剛被另-存取控制記錄予以改變或者開 始係如此組態。 會期 該安全儲存應隸式系統被設計成處置同時登入的多個 使用者。當使用此特徵時,僅在用於鑑認一特定實體的存 取控制記錄具有詩所請求動作的權限之情況下,由該安 全儲存應絲賴純之所有命令係㈣㈣於該實體且被 執行。 ,個實體係透過會期觀念予以支援。一會期係於該鑑認 私序_予以建置’且由該安全儲存應用程式系統指派— 會細。該會期m係内部相關聯於用於登人㈣統之存取 控制圮錄,且被匯出給歹 如也 ^、口 °亥實體,以在所有進一步的安全儲 存應用程式命令中使用。 / :王儲存應用程式系統支援兩種類型會期:開放式會 J及女全會期。與一雜 、疋鉸^程序相關的會期類型係定義 於存取控制記錄之中。兮—人 我 δ亥女王儲存應用程式系統將以類似 於強制焉4亍該名班切士 ή ^ ^ 1…本身之方式強制實行會期建置。因為該 子取控制§己錄定.義該等實㈣趨阳 者能夠使安全通、首, 所以此機制使系統設計 敌_ 相關聯於存取特定密鑰1D或調用特定存 取控制記錄管理握从,‘ 心什 定認證)。 〃(亦~ ’建立新的存取控制記錄及設 開放式會期 開放式會期係一用— 、 —^期ID識別但不以匯流排加密之會 122364.doc -49- 200822669 期,所有命令及資料係公開被傳送。此種操作模式較佳地 係用於一多使用者或多實體環境中,其中,該等實體係非 構成威脅模型亦非於該匯流排上的竊聽的一部分。 雖然不保護資料之傳送亦不實現該主機端之應用程式之 間之有效率的防火牆,但是該開放式會期模式使該安全儲 存應用程式系統能夠僅允許存取目前經鑑認的存取控制記 錄所允許的資訊。 該開放式會期係亦能夠被使用於一分割區或一密鑰係需 要被保護之情況。然而’在—有效鑑認程序之後,存取被 授予給該主機上所有實體。各種主機應用程式用以獲得經 鑑認存取控制記錄之權限而需要共用的唯一事物係會期 ⑴。此係顯不於圖17A。在線4〇〇上方之步驟係由該主機μ 所採用之步驟。在一實體係對於存取控制記錄1經鑑認(方 塊402)之後,其請求存取該記憶體裝置1〇内一相關聯於一 密鑰ID X之檔案(方塊4〇4,4〇6及4〇8)。假如該存取控制 记錄1之該權限控制記錄允許此類存取,則裝置1〇授予該 請求(菱形410)。假如不允許,則該系統返回方塊4〇2。在 鑑認完成之後,該記憶體系統10係僅藉由該指派的會期 ID(且非該等存取控制記錄認證)而識別正在發佈一命令的 實體。一旦該存取控制記錄丨係於一開放式會期中獲得存 取其之權限控制記錄内相關聯於該等密鑰ID之資料,則任 何其他應用程式或使用者可藉由指定介於該主機24上不同 的應用程式所共用的正確會期1〇,來存取相同的資料。此 特徵於應用程式中為有利的,其中,對於使用者而言,僅 122364.doc -50- 200822669 能夠登入一次、能夠存取所有關聯於不同應用程式用以實 行登入之帳戶的資料,係更方便的。因此,一行動電話的 使用者可能夠存取記憶體2〇内儲存的電子郵件且聽儲存的 曰市,而不需要多次登入。另一方面,不被該存取控制記 錄1所内含的資料係不可存取。因此,相同的行動電話的 使用者係可以具有有價值的内容,諸如可透過一分離的帳 戶存取控制記錄2存取之遊戲及相片。此係他不想要借他 的電話的其⑽人存㉟的資才斗,即使他彳能不彳意其他人可 以透過他的第一帳戶存取控制記錄丨存取資料。於開放式 會期中將對資料之存取分開成為兩個分離帳戶且同時允許 存取存取控制記錄1,提供容易使用以及提供有價值的資 料之保護。 ' 為了更進一步易於在該等主機應用程式之間共用該會期 ID之程序,當一存取控制記錄正在請求一開放式會期時, 其可明確地請求該會期將被指派”〇" ID。以此方式,應用 程式可被設計成使用一預先定義的會期m。唯一限制係, 因為明顯的理由,於一特定時間僅可鑑認一正在請求會期 0之存取控制記錄。一鑑認另一正在請求會期〇之存取控制 記錄的企圖將被拒絕。 安全會期 為了增加一層安全性,該會期1]0可被使用,如示於圖 。接著,該記憶體10亦儲存作用中狀態會期之會期 ID。於圖17B中,舉例而言’為了能夠存取一相關聯於密 鑰ID X之檔案,在該實體被允許存取該檔案之前,該實體 122364.doc 200822669 亦將需要提供一會期ID,諸如會期ID,,A”(方塊404, 406,4 12及414)。以此方式,除非該請求實體係知道正確 的會期ID,否則其無法存取該記憶體1〇。因為該會期1〇係 於該會期結束之後被刪除且對於每一會期而言係不同的, 所以一實體係僅當其已經能夠提供會期號碼時,才能能夠 獲得存取。 該安全儲存應用程式系統係藉由使用該會期號碼,而追 蹤是否一命令係真的來自正確經鑑認的實體。對於有攻擊 者將嘗試使用一開放式通道以傳送有惡意的命令之恐嚇的 應用程式及使用情況而言,該主機應用程式係使用一安全 會期(一安全通道)。 當使用一安全通道時,該會期ID以及整個命令係以安全 通道加密(會期)密鑰予以加密,且該安全性等級係與該主 機端實施一樣高。 終止一會期 於下列任一狀況中,終止一會期,且登出該存取控制記 錄: 1·該實體係發佈一明確的會期結束命令。 2·通訊時間逾期。—特定實體在—段期間(如存取控制 記錄參數之一者所定義)未發佈任何命令。 3 ·在凌置(例如快閃記憶體卡)重設及/或電源循環之後, 終止所有開放式會期。 資料完整性服務 女王儲存應用程式系統驗證該安全儲存應用程式資料 122364.doc •52· 200822669 ^其係含有所有存取控制記錄、權限控制記錄等等)之完 此外,透過密鑰ID機制而提供 完整性服務。 %貫體貝科的貧料 假如—密鑰ID經組態以用雜凑作為其加穷 雜湊值係與該内容加密 工决异法,則該 密鑰記錄之中。於寫入二,内容加密 值梅^ ㉟作期間什异及儲存雜湊值。雜湊 取操作㈣再次被計算,且與於先前寫入操作期 額外^之值相比較。每#該實體正在存取該密鑰ID時, 額外的資料係(以密碼編嘩方六 的(用^ 式)串接至¥的資料及經更新 的(用於項取或寫入之)適合雜湊值。 因為僅該主機知道相關聯於一密鑰m或由一密鍮①指向 的貢料檔案’戶斤以該主機係以下列方式明 完整性功能的數項態樣: /貝枓 從=目!聯於一密卿或由一密⑽指向的資料權案係 6被“或_取。存取該㈣之部分的任何企圖將 <其混亂’原因係該安全儲存應用程式系統正在使用 區塊密碼加密方法且產生該整個資料的—雜湊訊息摘要。 u tm連續串流内(該資料串流可交錯其他穷 鑰id之資料串流,且係可以於多個會期上分割)的資^ 原口係中間的雜凑值係由該安全儲存應用程式系統所維 護。然而’假如該資料串流係重新開始,則該實體將需要 明確^指示該安全儲存制程式“重設料雜湊值Γ 3.當一讀取操作完成時,該主機明確地請求該安全儲存 應用程式I统藉由比較所讀取雜湊其及寫人操作期間所= 122364.doc -53- 200822669 算之雜湊值來確認該讀取之雜湊。 4·該安全儲存應用程式系統亦提供一,,設設讀取,,操作。 此特徵係將串流經過加密引擎的資料,然而將不傳送其出 去至該主機。此特徵可被用於在資料真正自該裝置(例如 快閃記憶體卡)讀取出之前,確認資料完整性。 隨機號碼產生 ί /. 該安全儲存應用程式系統將使外部實體能夠使用内部隨 機號碼產生器’且請求隨機號碼被使用於該安全儲存應用 程式系統之外。此服務係可被任何主機使用,且不需要鑑 認0 RSA密鑰對產生 該安全儲存應用程式系統將使外部使用者能夠使用内部 RSA密输對建立特徵,且請求—㈣鑰對被使用於該安全 儲存應用程式系統之外。此服務係可被任何主機使用,且 不需要鑑認。 替代實施例 不使用階層架構方式,類似的結果可使用―資料庫方式 而逹成,如示於圖18。 如示於圖18 ’―含有用於實體之認證、鐘認方法、失敗 旨》式的最大次數及解除封鎖所需之認證最小數目的清單可 被輸入儲存於控制器12或記憶體20内之一資料庫之中,1 清單使認證需求相關於由該記憶體10之該控制器 二 該資料庫中之®π汽把 心原則(對於密鑰及分割區之讀取、 取,安全通道需灰、。+ h 一 馬入存 " 亦儲存於該資料庫的係對於存取密 122364.doc -54- 200822669 鑰及刀副區之約束及限制。因此,一些實體(例如,系統 B理者)係可以於一白色清單上,其係意謂這些實體可存 取所有密鑰及分割區。其他實體係可以於一黑色清單上, 八存取任何資訊之企圖將被封鎖。該限制可以係全域 ^ 或诒鑰及/或分割區特定的。此係意謂僅某些實體可 存取某些特定密鑰及分割區,且某些實體無法如此實施。 、、、勺束亦月b夠被置放於内容本身上,而不論内容所在的分割 區或用於加密或解密該内容之密鑰為何。因此,某些資料 (/列如歌曲)係可以具有其僅能夠被前5個存取它們的主機 裝f所存取的屬性,或者其他資料(例如,電影)係僅能夠 被項取有限次數的屬性,而不論哪些實體具有存取權。 鑑認 欲碼保護 、•密竭保護係意謂需要提交—密碼,以存取受保護的區 域。除非其無法超過一個密碼,否則密碼可相關聯於不同 的權利,諸如讀取存取及/或寫入存取。 •密碼保護係意謂該裝置(例如,快閃記憶體卡)可驗證 由該主機所提供之密碼’亦即該裝置亦具有儲存於裝置管 理安全記憶體區域内的密碼。 發佈及限制 •密碼係受限於重新播放攻擊。因為在每—提交之後穷 碼係不改變’所以其可相同地重新傳送。其係意謂假如: 被保護的資料係有價值的,則密碼係不應㈣㈣, 訊匯流排係容易被存取。 122364.doc •55- 200822669 •密碼可保護存取儲存的資料,然而係不應該被使用於 保護資料(非一密鑰)。 •為了增加與密碼相關聯的安全性等級,其可使用一主 控密鑰而多樣化,結果為駭客一份資料係不搞垮整個系 統。一以會期密錄為基礎的安全通訊通道可被用於傳送該 密碼。 圖19繪示使用一密碼進行鑑認之流程圖。該實體係傳送 一帳戶ID及密碼至系統1 〇(例如,快閃記憶體卡)。該系統 係檢查看看是否該密碼係匹配於其記憶體内的密碼。假如 其係匹配,則傳回經鑑認狀態。否則,累加用於該帳戶之 錯誤計數器,且該實體係被要求重新輸入一帳戶仍及密 碼。假如該計數斋係滿溢,則該系統傳回存取被拒絕的狀 態0Access control record permissions (block 282). If 苴 is, the affiliation is delegated (block 284); if not, it is stopped. The knot %糸:1 is shown in Figure 13. In this case, the access control record ml has the authority to delegate the access to the control record si, so that after the delegation, the Sl will be used enough to access the price data. This can be implemented if the ml is the same or a larger right with access pricing information and such delegated authority. In the - item embodiment, ml maintains its access rights after delegation. Preferably, access rights can be delegated under restricted conditions, rather than permanently, such as a limited time, limited number of accesses, and the like. Figure 14 shows the procedure for establishing a secret and confidential transmission (1). The entity authenticates via access control (block 302). The entity requests to establish a key establishment with the ID specified by the host (block 3〇4). The secure storage application checks and sees if the specified access control record has the authority to do so (diamond 3G6). For example, if the key is used to access data in a particular partition, the secure storage application will check and see if the access control record has access to the partition. If the access control record is authorized, the memory device 10 establishes a key value associated with the key ID provided by the host (block 308), and stores the secret record m in the access control record. And storing the key value in its memory (the memory or memory 20 associated with the controller), and assigning rights and rights according to the information provided by the entity: for information (block 3 1 〇), The rights control records of such access control records are modified with such assigned rights and rights (block 3 12). Therefore, the creator of the key has all available rights, such as read and write permissions, delegation, and other access control records in the group with the same access control record group 122364.doc -47- 200822669 The lower level access control records the right to share and the right to transfer ownership of the key. An access control record can be changed to another access control record (or fully present) within the secure storage application system, as shown in FIG. A real system can enter a tree through an access control record as before; in a clear case, the entity is authenticated and then it specifies an access control record (blocks 330, 3 32). It requests a deletion of a target access control record or a permission within a target access control record (block 334). If the specified access control record or the access control record in the active state at this time has the right to do so (diamond 336), then the target access control record is deleted, or the target access control record has permission The control record is changed to delete such permissions (block 33 8). If this is not authorized, the system stops. After the above procedure, the target will no longer be able to access the data it was able to access before the program. As shown in Figure 16, a real system may attempt to enter the directory 'access control record' (block 35〇) and find that the authentication procedure failed 'because the pre-existing access control record ID no longer appears in the Among the secure storage applications, the access rights are denied (diamond 352). Assuming that the access control record ID has not been deleted, the entity specifies an access control record (block 354) and key hills and/or data within a particular partition, and then the secure storage application is based on such The access control record of the access control record checks whether the key mountain or partition access request is granted (diamond 3 5 8). If the permission has been deleted or has expired, the request is rejected again. Otherwise, the request is granted (block 360). The above procedure describes how the device (e.g., flash memory card) manages access to protected data of 122364.doc -48-200822669, regardless of whether the access control record and its rights control record system have just been - The access control record is changed or started to be configured as such. Session The secure storage system is designed to handle multiple users logging in at the same time. When this feature is used, only if the access control record used to identify a particular entity has the authority to perform the action requested by the poem, all the command systems (4) (4) that are purely stored by the secure storage are executed on the entity and executed. . A real system is supported through the concept of the session. A session is tied to the authentication private order _ to be built and assigned by the secure storage application system. The session m is internally associated with the access control record for the boarding (four) system, and is exported to 歹, such as ^, mouth, for use in all further secure storage application commands. / : The King Storage Application System supports two types of sessions: Open J and Women's Plenary Session. The type of session associated with a miscellaneous, 疋 ^ ^ program is defined in the access control record.兮-人 I am the Queen of the Queen's Storage Application System, which will force the implementation of the session in a manner similar to the mandatory 班 亍 班 ^ ^ ^ 1... itself. Because the sub-control § has been recorded. The real (4) yang can make the security pass, the first, so this mechanism makes the system design enemy _ associated with accessing a specific key 1D or calling a specific access control record management Hold from, 'heart is certified.' 〃 (also ~ 'Create a new access control record and set up an open session open-ended session for use -, - ^ period ID identification but not encrypted by bus bar 122364.doc -49- 200822669 period, all The commands and data are publicly transmitted. This mode of operation is preferably used in a multi-user or multi-entity environment where the real system does not constitute a threat model nor is part of the eavesdropping on the bus. While not protecting the transfer of data and not implementing an efficient firewall between the host-side applications, the open session mode enables the secure storage application system to only allow access to currently authenticated access controls. Record the information allowed. The open session can also be used in a partition or a key system needs to be protected. However, after the valid authentication procedure, access is granted to all hosts. Entity. The only thing that is required to be shared by various host applications to obtain access to the access control record (1). This is not shown in Figure 17A. The step taken by the host μ. After a real system authenticates the access control record 1 (block 402), it requests access to a file associated with a key ID X in the memory device 1 ( Blocks 4〇4, 4〇6 and 4〇8). If the access control record of the access control record 1 allows such access, the device 1〇 grants the request (diamond 410). If not, then The system returns to block 4〇 2. After the authentication is completed, the memory system 10 identifies the entity that is issuing a command only by the assigned session ID (and not the access control record authentication). The access control record is the data associated with the key IDs in the access control record that is accessed during an open session, and any other application or user can be specified by the host 24 The same session is shared by different applications to access the same data. This feature is advantageous in the application, where only 122364.doc -50- 200822669 can log in once for the user. Access to all associations It is more convenient to use the program to implement the information of the account that is logged in. Therefore, a user of a mobile phone can access the email stored in the memory 2 and listen to the stored market without multiple logins. On the other hand, the data contained in the access control record 1 is not accessible. Therefore, users of the same mobile phone can have valuable content, such as access control through a separate account. Record 2 access games and photos. This is the (10) person who does not want to borrow his phone to save 35, even if he can not care that others can access the control record through his first account丨Access to data. Access to data is split into two separate accounts during an open session and at the same time allows access control records 1 to be provided, providing easy protection and providing valuable data protection. In order to further facilitate the sharing of the session ID between the host applications, when an access control record is requesting an open session, it can explicitly request that the session be assigned "〇" ID. In this way, the application can be designed to use a predefined duration m. The only restriction is that for obvious reasons, only one access control record that is requesting session 0 can be identified at a specific time. An attempt to identify another access control record that is being requested will be rejected. Security session To add a layer of security, the session 1]0 can be used, as shown in the figure. Next, the memory The volume 10 also stores the session ID of the active session. In Figure 17B, for example, to enable access to a file associated with the key ID X, before the entity is allowed to access the file, Entity 122364.doc 200822669 will also need to provide a session ID, such as the session ID, A" (blocks 404, 406, 4 12 and 414). In this way, unless the requesting system knows the correct session ID, it cannot access the memory. Since the duration of the session is deleted after the end of the session and is different for each session, a real system can only be accessed if it is already able to provide the session number. The secure storage application system tracks whether a command system is actually from a properly authenticated entity by using the session number. The host application uses a secure session (a secure channel) for applications and usage scenarios where an attacker will attempt to use an open channel to transmit malicious commands. When a secure channel is used, the session ID and the entire command are encrypted with a secure channel encryption (session) key, and the security level is as high as the host implementation. Termination of a session In any of the following cases, the term is terminated and the access control record is logged out: 1. The system issues a clear end of session order. 2. The communication time is overdue. - A specific entity did not issue any commands during the period (as defined by one of the access control record parameters). 3 • Terminate all open sessions after the reset (eg flash memory card) reset and/or power cycle. Data Integrity Service Queen Storage Application System verifies the secure storage application data 122364.doc • 52· 200822669 ^ It contains all access control records, permission control records, etc.) In addition, it is provided through the key ID mechanism. Integrity service. If the key ID is configured to use hash as its plus hash value and the content encryption method is different, then the key record is included. In the second write, the content encryption value is 35 and the hash value is stored during the period. The hash take operation (4) is again calculated and compared to the value of the extra ^ during the previous write operation. Every time the entity is accessing the key ID, the additional data is cryptographically compiled into the data of the ¥ and the updated (for item fetch or write). It is suitable for the hash value. Because only the host knows the tributary file associated with a key m or pointed by a key 1 'the metrics of the host system in the following way: From the source of the data, the data file system 6 pointed to by a secret or by a secret (10) is "or taken. Any attempt to access the part of the (4) will be <the chaos of the reason is the secure storage application system The block cipher encryption method is being used and the hash information summary of the entire data is generated. u tm is in the continuous stream (the data stream can interleave the data stream of other poor key ids, and can be divided in multiple sessions) The hash value in the middle of the original port is maintained by the secure storage application system. However, if the data stream is restarted, the entity will need to explicitly indicate that the secure storage program "resets the material". Hash value Γ 3. When a read operation is completed, the The machine explicitly requests the secure storage application system to confirm the hash of the read by comparing the hash value of the read hash and the write operation period = 122364.doc -53 - 200822669. 4. The secure storage The application system also provides one, set read, and operate. This feature will stream the data through the encryption engine, but will not transfer it to the host. This feature can be used to actually source the device. (eg flash memory card) confirm data integrity before reading out. Random number generation ί /. The secure storage application system will enable external entities to use the internal random number generator' and request random numbers to be used for this Outside the secure storage application system. This service can be used by any host and does not require authentication. The RSA key pair generates the secure storage application system which will enable external users to use the internal RSA secret pair to create features. Request—(4) The key pair is used outside of the secure storage application system. This service can be used by any host and does not require authentication. For example, the hierarchical structure is not used, and similar results can be obtained by using the “database method” as shown in Figure 18. As shown in Figure 18, the maximum value of the method for authentication, identification, and failure of the entity is shown in Figure 18. The number of times and the list of the minimum number of authentications required to unlock the block can be entered into a database stored in the controller 12 or the memory 20, and the list causes the authentication request to be associated with the controller 2 of the memory 10. The ® π steam core principle in the database (for the reading and retrieval of keys and partitions, the safe channel needs to be gray, + h is stored in the store " is also stored in the database for the access key 122364. Doc -54- 200822669 The constraints and restrictions of the key and the knife sub-area. Therefore, some entities (for example, system B) can be on a white list, which means that these entities can access all keys and partitions. . Other real systems can be on a black list, and eight attempts to access any information will be blocked. This restriction may be global ^ or key and/or partition specific. This means that only certain entities have access to certain keys and partitions, and some entities cannot do so. The , , and the bundles are also placed on the content itself, regardless of the partition in which the content resides or the key used to encrypt or decrypt the content. Therefore, certain materials (/columns such as songs) may have attributes that they can only be accessed by the first five hosts that access them, or that other materials (eg, movies) can only be fetched a limited number of times. Attributes regardless of which entities have access rights. Identification Code protection • Exhaustion protection means that a password is required to access the protected area. Unless it cannot exceed a password, the password can be associated with different rights, such as read access and/or write access. • Password protection means that the device (e.g., a flash memory card) can verify the password provided by the host' that is, the device also has a password stored in the device management secure memory area. Publishing and Restrictions • Passwords are subject to replay attacks. Since the poor code does not change after each commit, it can be retransmitted identically. It means that if the protected data is valuable, the password should not be (4) (4), and the communication stream is easily accessible. 122364.doc •55- 200822669 • Passwords protect access to stored data, but should not be used to protect data (not a key). • In order to increase the level of security associated with a password, it can be diversified using a master key, with the result that a database of hackers does not mess up the entire system. A secure communication channel based on the session secret can be used to transfer the password. Figure 19 is a flow chart showing the use of a password for authentication. The real system transmits an account ID and password to the system 1 (for example, a flash memory card). The system checks to see if the password matches the password in its memory. If it matches, it returns the authenticated status. Otherwise, the error counter for the account is accumulated and the real system is required to re-enter an account still password. If the count is full, the system returns the status of the access denied.

對稱密鑰 對稱密输演算法係意謂於加密及解密兩端使用相同的密 鑰。其係意謂該密鑰係在通訊 每一端應該實施彼此的逆演算 算法及於另一端之解密演算法 演算法以通訊。 之鈿已經預先同意。此外, 法,亦即,於一端之加密演 。兩端係不需要實施該兩種 •對稱密鑰鑑認係意謂裝詈r你丨‘ ^ (例如,快閃記憶體卡)及主 機共用相同的密鑰且具有相回 $ 门的雄碼編譯演算法(直接及 思向,例如,DES及DES-1)。 •對稱密鑰鑑認係意謂挑戰_ ^ 口應(保濩防止重新播放攻 122364.do, 200822669 擊)°受保護的裝置產生一用於其他裝置的挑戰,且兩者 計算回應。該鑑認裝置傳回該回應,且該受保護裝置檢查 該回應,且據此因而確認鑑認。接著,與鑑認相關的權利 可被授予。 鑑認可以係: 界 •外部的··該裝置(例如快閃記憶體卡)鑑認外部的世 亦即’該裝置確認一給定主機或應用程式之認證。 •相互的:於兩端上產生一挑戰。 •内部的:該主機應用程式鑑認該裝置(亦即,快閃記 憶體卡)’亦即,主機檢查是否裝置對於其之應用程式而 言係真實的。 為了增加整個系統的安全性等級(亦即,破壞一者 破壞全部), 、 •對稱密鑰係通常使用一主控密鑰而與多樣化結合。 •相互鑑認使用來自兩端的挑戰,以確、::亩 的挑戰。 Λ你一異實 加密 對稱密鑰密碼編譯亦用於加密,因為其係 的演算法,亦即,其係不需要一功能強大的中央二有,率 來處置密碼編譯。 、外理單元 §用於使一通訊通道安全時·· •兩端裝^必須知道用於使該料安 有傳出資料且解密&p,加密所 必得入貝枓)的會期密鑰。 一預先共用的安全對避仓〜斗 、吊使用 女王對“鑰或使用么V開密瑜 心、、、。攝而建 122364.doc -57- 200822669 置此會期密鑰。 同的密碼編譯演算法 兩^破置係必須知道及實施相 簽名 野㈣鑰亦可使用於簽名 密的-部分結果。保持該结…於此情況下’簽名係加 樣多-欠,τΤόχ ' 為。卜分的允許簽名與所需一 7夕 而不顯露該密餘值。 發佈及限制 對稱演昇法係非常有效率且安全 用秘宓Α其甜 、,W而其係以一預共 該發佈係以一動態方式安全地共用此秘Symmetric Key Symmetrical Secret Transfer algorithm means that the same key is used at both ends of the encryption and decryption. It means that the key should implement each other's inverse algorithm at each end of the communication and the decryption algorithm at the other end to communicate. It has been agreed in advance. In addition, the law, that is, the encryption at one end. Both ends do not need to implement the two types. • Symmetric key authentication means that you are 丨 '^ (for example, a flash memory card) and the host shares the same key and has a male code that returns $ gate. Compile algorithms (direct and thinking, for example, DES and DES-1). • Symmetric key authentication means that the challenge _ ^ mouth should (protect against replaying attacks 122364.do, 200822669) ° Protected devices generate a challenge for other devices, and both calculate responses. The authentication device returns the response and the protected device checks the response and, accordingly, confirms the authentication. Next, the rights associated with the authentication can be granted. Authentication can be: • External • The device (such as a flash memory card) recognizes the external world, ie the device confirms the authentication of a given host or application. • Mutual: creates a challenge on both ends. • Internal: The host application authenticates the device (i.e., flash memory card). That is, the host checks if the device is authentic for its application. In order to increase the security level of the entire system (i.e., destroy one destroys all), the symmetric key system is usually combined with diversification using a master key. • Mutual identification uses challenges from both ends to ensure that the :: mu challenge. Λ You are different. Encryption Symmetric key cryptography is also used for encryption because its algorithm, that is, it does not require a powerful central ubiquity, to handle cryptographic compilation. When the external unit § is used to make a communication channel secure, the two ends must know the session key used to make the material have the outgoing data and decrypt the &p, and the encryption must be entered. . A pre-shared security pair to avoid the warehouse ~ bucket, hanging the use of the Queen on the "key or use it V open secret Yu,,, and built 122364.doc -57- 200822669 set this session key. The same password compilation The algorithm must know and implement the phase signature wild (four) key can also be used for the signature-partial result. Keep the knot... In this case, the signature system is multi-owed, τΤόχ' is . Allowing the signature and the required one without revealing the secret value. The release and restriction of the symmetry algorithm is very efficient and safe to use its secrets, and it is based on a pre-published release. Share this secret safely in a dynamic way

:二::使其為隨機的(像是-會期密鍮)。此想法係一 =用的秘 1、係不易於長期料安全的,且 多個人員共用。 J 為了促進此操作,已經發明公開密鑰演算法,因為其係 允許秘密交換,而不共用該等秘密。 非對稱鑑認程序 以非對稱密鑰為基礎的鑑認使用傳送命令之一系列資 ::其係最終建構用於安全通道通訊之會期密鑰。基本: 定係對於駐线存應肖m缝認該使肖者。協定變 化係允許:相互鑑認,#中’該使用者係必須鑑認他想要 使用的存取控制記錄;以及雙因素鑑認。 較佳地,該安全儲存應用程式之非對稱鑑認協定使用公 開密鑰基礎結構(PKI)及RSA演算法。如由這些演算法所定 義’該鑑認程序内每一當事人係被允許建立其自己的 密鑰對。每一RSA密鑰對係由公開密鑰及私有密鑰所組 122364.doc -58- 200822669 成。因為該等密鑰係匿名的,所以其無法提供身份的證 明。該公開翁餘基礎結構層哥求一第三方且受信任的當事 人’其簽名該等公開密鍮之每一者。該受信任的當事人之 公開街输係於將彼此鑑認之當事人之間預先共用,且係使 用於驗證該等當事人的公開密鑰。一旦信任係被建置(兩 個當事人決定由另一當事人所提供之公開密鑰可被信 任),該協定係持續鑑認(驗證每一當事人保存匹配的私有 密鑰)以及密鑰交換。此可透過示於圖22及23中之挑戰回 應機制而實施,如下文所述。 含有該加上簽名的公開密鑰之結構被稱為一憑證。簽名 該等憑證的受信任當事人被稱為憑證授權單位(CA)。為了 使一當事人成為經鑑認,其具有一 RSA密鑰對及一證明該 公開密鑰的真實性之憑證。該憑證係由一憑證授權單位加 上簽名,該憑證授權單位係受到另一(鑑認)當事人信任。 該鑑認當事人係被期望於其之財產上具有其受信任的憑證 授權單位之公開密鑰。 該安全儲存應用程式系統允許憑證鏈。此係意謂被識別 之當事人的公開密鑰係可以由一與該識別當事人所信任的 不同的憑證授權單位加上簽名。於此情況下,該被識別當 事人除了提供其自己的憑證之外,亦提供對其公開密瑜加 上簽名之憑證授權單位的憑證。假如該第二層級憑證係仍 然不被另一當事人所信任(未被其受信任的憑證授權單位 加上簽名),則可提供一第三層級憑證。於此憑證鏈演算 法之中’每—t事人係將持有需要鑑認其公開密鑰之憑: 122364.doc -59- 200822669 的完整清單。此係顯示於圖23及24。用於此種類型存取控 制記錄相互鑑認所需要之認證係所選長度之rSA密鑰對。 安全儲存應用程式憑證 安全儲存應用程式係採用[χ·509]第3版數位憑證。 [Χ.509]係一種一般用途標準;於此所述之該安全儲存應用 程式憑證資料檔係進一步說明及限制憑證定義欄位之内 谷。違憑證資料播亦定義用於憑證鏈、安全儲存應用程式 憑證之確認及憑證廢止清單(CRL)資料檔之管理所定義之 信任的階層架構。 該憑證係被認為為公開資訊(如同内部的公開密鑰),且 因而係不被加密。然而 其包含一RSA簽名,其係驗證該 公開密鑰以及所有其他資訊欄位未被竄改。 [X.509]係定義每一欄位係使用ASN·1標準而格式化,其 接著使用用於資料編碼之DER格式。 安全儲存應用程式憑證概觀 裝置至多3層級階層架構,然而 少於3的層級數。 主機憑證階層架構 化、頁示於圖20及21之該安全儲存應用程式憑證管理架構之 項實施例包含用於該主機之無限層級階層架構及用於該 然而對於該裝置可使用多於或 該裝置係根據兩項因素而鑑認主機: :儲存於該裝置内的: Two:: Make it random (like - session secret). This idea is one of the secrets 1. It is not easy to be safe for a long time, and it is shared by many people. In order to facilitate this operation, public key algorithms have been invented because they allow secret exchanges without sharing the secrets. Asymmetric authentication procedures Asymmetric key-based authentication uses a series of transmission commands: :: The system ultimately constructs the session key for secure channel communication. Basic: The system is fixed for the line. The protocol change allows: mutual authentication, #中' the user must identify the access control record he wants to use; and two-factor authentication. Preferably, the asymmetric authentication protocol of the secure storage application uses a public key infrastructure (PKI) and an RSA algorithm. As defined by these algorithms, each party in the authentication process is allowed to establish its own key pair. Each RSA key pair is made up of a public key and a private key set 122364.doc -58- 200822669. Because these keys are anonymous, they cannot provide proof of identity. The public infrastructure layer seeks a third party and the trusted party's signature each of the public secrets. The public street of the trusted party is pre-shared between the parties who authenticate each other and is used to verify the public key of the parties. Once the trust is established (the two parties decide that the public key provided by the other party can be trusted), the agreement is continuous authentication (verifying each party to hold the matching private key) and key exchange. This can be implemented by the challenge response mechanism shown in Figures 22 and 23, as described below. The structure containing the signed public key is called a credential. Signing Trusted parties to these credentials are referred to as Credential Authorization Units (CAs). In order for a party to be authenticated, it has an RSA key pair and a certificate proving the authenticity of the public key. The voucher is signed by a voucher authority that is authorized by another (authenticated) party. The authentication party is expected to have a public key for its trusted certificate authority on its property. The secure storage application system allows a credential chain. This means that the public key of the identified party can be signed by a different credential authority that is trusted by the identifying party. In this case, in addition to providing its own credentials, the identified party also provides credentials for the certificate authority that has signed the public secret. If the second level of credentials is still not trusted by another party (not signed by its trusted certificate authority), a third level of credentials may be provided. In this voucher chain algorithm, the 'per-t' person will hold a complete list of the public key that needs to be authenticated: 122364.doc -59- 200822669. This is shown in Figures 23 and 24. The authentication required for mutual authentication of this type of access control record is the rSA key pair of the selected length. Secure Storage Application Credentials The Secure Storage application uses the [χ·509] version 3 digital certificate. [Χ.509] is a general-purpose standard; the secure storage application voucher data file described herein further describes and limits the valley of the voucher definition field. The voucher data distribution also defines the hierarchical structure of trust defined by the credential chain, the confirmation of the secure storage application credentials, and the management of the certificate revocation list (CRL) data file. The voucher is considered to be public information (like an internal public key) and is therefore not encrypted. However, it contains an RSA signature that verifies that the public key and all other information fields have not been tampered with. [X.509] defines that each field is formatted using the ASN·1 standard, which in turn uses the DER format for data encoding. Secure Storage Application Credential Overview The device has up to 3 levels of hierarchy, however less than 3 levels. The host credential hierarchy is structured, and the embodiment of the secure storage application credential management architecture shown in Figures 20 and 21 includes an infinite hierarchical hierarchy for the host and is used for the device but more than or The device identifies the host based on two factors: : stored in the device

記錄)。 122364.doc 200822669 、對於每-存取控制記錄而言,該主機憑證授權單位係作 為該根憑證授權單位(此係駐留於該等存取控制記錄認證 内的憑從)。舉例而言,對於一存取控制記錄而言,該根 憑也授權單位可以係”主機丨憑證授權單位(第2層級)憑證,,, 且對於另一存取控制記錄而言,該根憑證授權單位可以係 二主機根憑證授權單位憑證”。對於每一存取控制記錄而 言,持有由該根憑證授權單位簽名之一憑證(或者一連接 广 該根憑證授權單位至終端實體憑證之憑證鏈)之每一實體 、 彳登人該存取控制記錄,前提係其具有用於該終端實二憑 證之對應的私有密餘。如上文所述,憑證係公開的知識, 且係非保持秘密的。 由该根憑證授權單位所發佈之所有憑證擁有者(及對應 的私有密鑰)可登入該存取控制記錄的事實係意謂,對於 特疋存取控制記錄之鑑認係由儲存於該存取控制記錄認 證内之根憑證授權單位的發行者所決定。換句話說,該根 隸授權單位之發行者可以係f理該存取控制記錄的鐘認 i 方案的實體。 主機根憑證 該根憑證係該安全儲存應用程式正在㈣開始驗證嘗試 a入(主機)之只體的公開密餘之受信任的憑證授權單位憑 證。當該存取控制記錄被建立以作為該等存取控制記㈣ 迅之。P分時’提供此憑證。其係用於該公開密鑰基礎結構 系統之信任的根’且因此’其係假設由一受信任的實體 (一父代存取控制記錄或製造/組態受信任的環境)所提供。 122364.doc •61- 200822669 該安全儲存應用程式使用其公開密鑰以驗證該憑證簽名而 驗證該憑證。該主機根憑證係經加密地儲存於一非揮發性 記憶體之中(未顯示於圖υ,且該裝置之秘密密鑰較佳地係 僅可由系統10之圖1的中央處理單元12所存取。 主機憑證鍵 主機憑證鏈係於鑑認期間提供給該安全儲存應用程式的 憑證。在完成該主機憑證鏈之處理之後,於該裝置中應未 儲存該主機憑證鏈之回憶。recording). 122364.doc 200822669 For a per-access control record, the host credential authority is the root credential authority (this is the reliance on the access control record authentication). For example, for an access control record, the root can also be a "host" certificate authority (level 2) voucher, and, for another access control record, the root certificate The authorized unit can be the second host root certificate authority unit certificate. For each access control record, each entity holding a certificate signed by the root certificate authority (or a certificate chain connecting the root certificate authority to the terminal entity certificate), The control record is taken, provided that it has a private secret for the corresponding real-time voucher of the terminal. As mentioned above, a voucher is a publicly available knowledge and is not kept secret. The fact that all the certificate holders (and corresponding private keys) issued by the root certificate authority can log into the access control record means that the authentication of the special access control record is stored in the deposit. It is determined by the issuer of the authorized unit of the root certificate within the control record certificate. In other words, the issuer of the root authorized unit can determine the entity of the access control record. Host Root Credentials This root credential is the trusted voucher authority voucher that the secure storage application is starting to verify (v) the open secret of the attempted a (host) entity. When the access control record is created as the access control record (4), it is fast. P time division' provides this certificate. It is used for the root of the trust of the public key infrastructure system and is therefore assumed to be provided by a trusted entity (a parent access control record or a manufacturing/configuration trusted environment). 122364.doc •61- 200822669 The secure storage application verifies the voucher by using its public key to verify the voucher signature. The host root certificate is stored encrypted in a non-volatile memory (not shown in the figure), and the secret key of the device is preferably stored only by the central processing unit 12 of FIG. 1 of the system 10. The host credential key The host credential chain is the credential provided to the secure storage application during the authentication process. After the processing of the host credential chain is completed, the host credential chain recall should not be stored in the device.

C 0 0、、、g示若干不同的主機憑證鏈之主機憑證層級階層架 構之示意圖。如示於圖20,該主機憑證係可以具有許多不 同的憑證鏈,其中,僅三個係被顯示·· A1·主機根憑證授權單位憑證5〇2、主機丨憑證授權單位 (第一層級)憑證504及主機憑證506 ; B1.主機根憑證授權單位憑證5〇2、主機n憑證授權單位 (第二層級)憑證5〇8,主機1憑證授權單位(第三層級)憑證 510及主機憑證512 ; ^ —C1·主餘憑證授權單位憑證5〇2、主機η憑言登授權單位 (第二層級)憑證5 08及主機憑證514。 上述之三個憑證鏈A1、B1及C1係顯示可被用於證明該 主機之公開密鑰係為真實的之三個可能的主機憑證鏈。參 照上述憑證鏈A1及圖2G,該主機i憑證授權單位(第二層 級)憑證5G4内的公開料係藉由該主機根憑證授權單= 私有密鑰而被簽名(亦即’藉由加密該公開密餘之摘要), 該主機根憑證授權單位的公開密鑰係於該主機根憑證授權 122364.doc •62- 200822669C 0 0, , , g show a schematic diagram of a host credential hierarchy of a number of different host credential chains. As shown in Figure 20, the host certificate can have many different credential chains, of which only three are displayed. · A1 · Host Root Credential Authorization Unit Credentials 5〇2, Host/Voucher Authorization Unit (Level 1) Voucher 504 and host certificate 506; B1. Host root certificate authority unit certificate 5〇2, host n certificate authority unit (second level) certificate 5〇8, host 1 certificate authority unit (third level) certificate 510 and host certificate 512 ; ^ - C1 · Master Remnant Credential Authorization Unit Voucher 5 〇 2, Host η Authenticated Authorized Unit (Second Level) Voucher 5 08 and Host Credential 514. The three credential chains A1, B1 and C1 above show three possible host credential chains that can be used to prove that the host's public key is authentic. Referring to the above voucher chain A1 and FIG. 2G, the disclosure information in the host i voucher authorization unit (second level) voucher 5G4 is signed by the host root voucher authorization form = private key (ie, by encrypting the Summary of the disclosure of the secret), the public key of the host root certificate authority is attached to the host root certificate authorization 122364.doc •62- 200822669

單位憑證502之内。於兮冬M 接著由#主$ 、以機憑證5〇6内的主機公開密鑰係 接者由该主機1憑證授繼s (弟一層級)之該私有密鍮戶斤簽 名,該主機1憑證授權罝^厅食 (弟二層級)的公開密鑰係提供於 該主機1憑證授權單位、、臣 1 干饥(弟一層級)憑證504之内。因此,一 具有該主機根憑證授權罝 榷早位的公開密鑰之實體係將能夠驗 否且上述憑證鏈A1之直眚 , 一實生。作為弟一步驟,該實體係使用Within unit certificate 502. Yu Yudong M followed by #主$, the machine public key in the machine certificate 5〇6 is signed by the host 1 voucher s (the first level) of the private key 签名 斤, the host 1 The public key of the voucher authorization 罝^ 食食(di tier 2) is provided in the voucher authorization unit of the host 1, and the voucher 504 of the priest. Therefore, a real system with a public key of the host root certificate authorization 榷 early will be able to check and the above-mentioned credential chain A1 is straightforward. As a step of the brother, the real system uses

:擁有之該主機根憑證授權單位之該公開密鑰,以解密由 A傳ϋ至其之主機i憑證授權單位(第二層級)憑證5〇4 内、工簽名的么開續’ 1比較該經解密的經簽名公開密输 由。亥主機所傳送之該主機i憑證授權單位(第二層級)憑證 504内之未經簽名的公開密鑰的摘要。假如該兩者係匹 配貝1亥主機1憑證授權單位(第二層級)之該公開密輸係被 鑑認,且該實體接著將使用該主機1憑證授權單位(第二層 級)之該經鑑認公開密鑰,以解密由該主機傳送之該主機 芯證506内之該主機i憑證授權單位(第二層級)的私有密鑰 所簽名之主機的公開密鑰。假如該經解密的簽名值匹配由 孩主棧所傳送之該主機憑證5〇6内之該公開密鑰的摘要之 值’則该主機之該公開密鑰係接著亦被鑑認。可用類似的 方式使用該憑證鏈B 1及C1以用於鑑認。 如同將由上述牵涉到憑證鏈A1之程序所注意到,來自需 要被该實體驗證之該主機的第一公開密鑰係於該主機1憑 證授權單位(第二層級)内的密鑰,且非為該主機根憑證授 權單位憑證。因此,該主機僅需要傳送該主機i憑證授權 單位(弟一層級)憑證504及該主機憑證506給該實體,使得 122364.doc -63- 200822669 該主機1憑證授權單位(第二層級)憑證將為該憑證鏈中需要 被傳送的第一憑證。如上文所示,憑證驗證的序列係如 下。該驗證實體(於此情況下,即記憶體裝置10)首先驗證 該憑證鏈中該第一憑證内的公開密鑰的真實性,其在此情 況下係在該根憑證授權單位下方的憑證授權單位的憑證 5 04。在此類憑證内的公開密鑰被驗證為真實的之後,裝 置1〇接著係進行至驗證下一憑證,於此情況下係該主機憑 證506。藉由相同的符記,可應用一類似的驗證序列,其 中,該憑證鏈含有兩個以上憑證,其開始於緊接在該根下 方的憑證,而結束於將被鑑認之實體的憑證。 裝置憑證階層架構 5亥主機係根據兩項因素而鑑認該裝置:儲存於該主機内 的裝置根憑證授權單位憑證及由該裝置提供給該主機之憑 證/憑證鏈(其係於該存取控制記錄建立時提供給該裝置, 以作為一認證)。用於由該主機鑑認該裝置的程序係類似 於上文所述該裝置鑑認該主機之程序。 裝置憑證鏈 裝置憑證鏈係該存取控制記錄之密鑰對的憑證。其係當 该存取控制記錄被建立時提供給該卡。該安全健存應用程 式個別儲存這些憑證,且將於鑑認期間,逐一地提供憑證 給該主機。該安全儲存應用程式使用這些憑證以鑑認該主 機。該裝置能夠處理一含3個憑證的憑證鏈,然而可使用 不同於3個的若干憑證。憑證的數量係因存取控制記錄不 同而改變。其係當該存取控制記錄被建立時予以決定。該 122364.doc -64 - 200822669 裝置可傳送該憑證鏈給該主機,然而,其係不需要分析它 們’原因係其係不使用該憑證鏈資料。 圖21顯示裝置憑證層級階層架構之示意圖,用於顯示使 用安全儲存應用程式用於諸如儲存裝置之裝置的丨至^不同 的憑證鏈。示於圖21之該n個不同的憑證鏈係如下: Α2·裝置根憑證授權單位憑證52〇,裝置丨憑證授權單位 (製造商)憑證522及裝置憑證524 ; B2·裝置根憑證授權單位憑證520,裝置n憑證授權單位 C (製造商)憑證526及裝置憑證528。 該安全儲存應用程式裝置係可以由iSn個不同的製造商 所製k,每一製造商係具有其自己的裝置憑證授權單位憑 =。因此,於用於一特定裝置之裝置憑證内的公開密鑰係 藉由其製造商的私有密鑰予以簽名,且接著該製造商的公 開密鑰係由該裝置根憑證授權單位的私有密瑜予以簽名。 該裝置之該公開密鑰被驗證的方式係類似於上述該主機之 χ公開密鑰之情況下的方式。當在上述用於主機之憑證賴 、之驗證之情況時,不需要傳送該裝置根憑證授權單位馮 證^該等憑證鏈内需要被傳送之第一憑證係裝置i憑證 授權單位(製造商)憑證,其後接著裝置憑證,i係自1至_ 整數。 於不於圖21之實施例中,該裝置將提交兩個憑證·裝置 旧證授權單位(製造請證,其後接著其自己的裝置憑 α , »亥4置ι4 5登授權單位(製造商)憑證係製造該如此裝置 之製造商且係提供私有密鑰以簽名該裝置之公開密鑰的製 122364.doc -65- 200822669 造商的憑證。當該裝置i憑證授權單位(製造商)憑證係由該 主機予以接收時,該主機使用其擁有的根憑證授權單位之 公開密鑰,以解密及驗證該裝置i憑證授權單位(製造商)公 開密鑰。假如此驗證失敗,則該主機將中止該程序,且通 知该裝置鑑認已失敗。假如鑑認成功,則該主機係傳送一 請求給該裝置,以用於下一憑證。接著,該裝置係以一類 似的方式,傳送其將被該主機驗證之自己的裝置憑證。 上述驗證程序係亦更詳細地顯示於圖22及23。於圖22 (士" 文全服務模組系統"係一軟體模組,其係實施本文所 过之女王儲存應用私式糸統以及下文敛述之其他功能。安 全服務模組系統係可以建構為軟體或電腦碼,其具有儲存 於記憶體20或中央處理單元12内的一非揮發性記憶體(未 顯示)内的資料庫,且係由該中央處理單元12讀取至隨機 存取記憶體12a之中且予以執行。 如不於圖22,該程序内有三個階段,其中,裝置丨〇内的 安全服務模組系統542鑑認一主機系統540。於第一公開密 、 鑰鑑認階段中,該主機系統540傳送該安全服務模組命令 内該主機憑證鏈給該安全服務模組系統542。該安全服務 模組系統542使用位於該存取控制記錄55〇内之該主機根憑 證548内的根憑證授權單位公開密鑰,而鑑認(方塊552)該 主機憑證544及該主機公開密鑰546之真實性。若牵涉到介 於4根憑證授權單位與該主機之間的一中間憑證授權單位 549 ’則於方塊552,該中間憑證授權單位549亦被用於驗 證。假設該鑑認或程序(方塊552)係成功的,則該安全服務 122364.doc -66- 200822669 模組系統542係接著進行至第二階段。 該安全服務模組系統542產生一隨機號碼554且傳送該隨 機號碼554作為-挑戰而至該主機系統54〇。系统$破用 該主機系統的私有密鍮547簽名該隨機號碼(方塊556), 且傳送該經簽名的隨機號碼作為對於該挑戰的回應。該回 應係使用該主機公開密输5懈以解密(方塊㈣)了且與該 隨機號碼554相比較(方塊56())β假設該經解密回應匹配該 隨機號碼554,則該挑戰回應係成功的。 於第=階段中,隨機號碼562係使用該主機公開密錄⑽ 予以加密。接著,該隨機號碼562係會期密繪。該主機系 、、充540可藉甴使用其之私有密錄解密(方塊%句來自該安全 服務模組系統542之該經加密的隨機號碼562,而獲得該會 期密鑰。藉由此會期密鑰,接著可起始介於該主機系統 540與該安全服務模組系統542之間的安全通訊。圖U係顯 不一單向非對稱鑑認,其中,該主機系統54〇係由裝置⑺ 内之該安全服務模組系統542予以鑑認。圖23係一協定 圖,其顯示一類似於圖22之單向鑑認協定之雙向相互鑑認 程序,其中,圖23中之該安全服務模組系統542係亦由該 主機系統540予以鑑認。 圖24繪示本發明之一項實施例之憑證鏈590的圖式。如 上文所述,需要被提交用於鑑認之憑證鏈可包含若干憑 吞豆因此圖2 4之憑證鍵包含總計9個憑證,該等憑證全 部係可以需要被鑑認以用於鑑認。如說明於上文之先前技 術部分,於用於憑證鑑認的現有系統中,在傳送一不完整 122364.doc -67- 200822669 的憑證鏈,或者若傳送整個憑證,而該等憑證係不以任何 特定的順序予以傳送,使得接收者係將不能夠分析該等憑 證,直到整個憑證群組係已經被接收及儲存為土 因為於 一憑證鏈内憑證之數量係事先不知道,所以此可呈現一問 題。一大量的儲存空間係可能需要被保留,以用於儲存不 確定長度的憑證鏈。此可以係一對於實施鑑認之儲存裝置 的問題。 本發明之一項實施例係根據··該問題可藉由主機裝置以 ( 與該憑證鏈將被該儲存裝置鑑認之相同順序傳送其之憑證 鏈之一系統所減輕之認知。因此,如示於圖24,憑也之心 證鏈590係:開始於憑證鏈590(1),其係緊接在該主機根憑 證下方的憑證;且結束於憑證590(9),其係該主機憑證。 因此,裝置10將首先鑑認憑證590(i)内之公開密鑰,其後 接著憑證590(2)内之公開密鑰的鑑認,以此類推’直到憑 證590(9)内的主機公開密鑰被鑑認為止。接著’此係70成 整個憑證鏈590之鑑認程序。因此,假如該主機裝置係以 、 與該憑證鏈將被鑑認之相同順序或序列而傳送該憑證鍵 590至記憶體裝置1〇,則記憶體裝置1〇可當每一憑證被接 收時開始鑑認每一憑證,而不需要等待直到該憑證鍵590 内全部9個憑證已經被接收為止。 因此,於一項實施例中,該主機裝置係一次傳送該憑證 鏈590内一憑證至記憶體裝置1〇。接著,記憶體裝置1〇將 必須一次儲存一單一憑證。在該憑證係已經被鑑認之後, 其可被由該主機所傳送之下一憑證予以覆寫,惟該憑證鏈 122364.doc -68- 200822669 中最後一憑證除外。以此方式’在任何時間’記憶體裝置 1 〇將需要保留用於僅儲存一單一憑證的空間。 該記憶體裝置係將需要知道該整個憑證鏈590何時已經 被接收。因此,較佳地,最後一憑證590(9)係含有其係該 憑證鏈内最後一憑證之一指示項或一項指示。此特徵係顯 示於圖25,其顯示一控制區段的資訊的表,該控制區段係 在由該主機傳送至該記憶體裝置1 〇之憑證緩衝區之前。如 示於圖25,憑證590(9)之控制區段含有一引數名稱”為最後 的旗標”。接著,記憶體裝置10可藉由檢查是否該”為最後 的旗標係被設定,而鑑認憑證590(9)係該憑證鏈内最後一 憑證,以決定是否所揍收之憑證係該憑證鏈中最後一個憑 證。 於一替代實施例中,憑證鏈590内之憑證係可非以逐一 方式予以傳送,而係以含一個、兩個或三個憑證之群組予 以傳送。明顯地,可使用具有其他數量之憑證的群組或者 群組中相同數量之憑證。因此,憑證鏈590包含5個連續的 憑證串591、593、595、597及599。該等憑證串之每一者 含有至少一憑證。一連續的憑證串係含有下列憑證的憑證 串:緊接於該憑證鏈中位於該討論中憑證串之前的憑證串 之憑證(開始憑證);緊接在該憑證鏈内該討論中憑證串的 後的憑證串的憑證(結尾憑證);以及介於該開始憑證與結 尾憑證之間之所有憑證。舉例而言,憑證串593含有三個 憑證590(2)、590(3)及590(4)。該5個憑證串係由記憶體裝 置10以下列序列鑑認:591、593、595、597且以599結 122364.doc •69- 200822669 束口此,假如該5個憑證串係以與記憶體裝置10所實施 …相同的序列予以傳送及接收,則該記憶體裝置在彼 等f也串已經被鑑認之後,將不需要儲存任一憑證串,且 2:後—憑證串除外的所有可被來自該主機而到逹的下一 &焉串斤復寫。如同先前的實施例,期望該憑證鏈内最後 —係含有一諸如一旗標的指示項,其係被設定為一特 疋的值,以指不其係該憑證鏈内最後一憑證。於此實施例 中’该記憶體t置將僅需要保m儲存該5個憑證串内 最_的憑證的空間。因&,假如該主機首先係通知該 ,-凌置1 〇其思欲傳送之最長憑證串,該記憶體裝置i 〇 係僅需保留用於最長憑證串列之足夠空間。 也由17亥主機所傳送之該憑證鏈内每一憑證的長度 不超過由該憑證所檢定的么、開密鑰之長度的4倍。類似 地二’較佳地,由該記憶體裝置1〇傳送至一主機裝置以檢定 。亥。己U體裝置之公開密鑰之憑證的長度不超過由該憑證所 檢定的公開密鑰之長度的4倍。 上述用於憑證鏈之鐘認的實施例係顯示於圖%之流程圖 之中’其中’對於簡化起見,於每一群組内的憑證數量係 假。又為1如示於圖26,該主機係循序傳送該憑證鏈内之 憑證至該卡。以該憑證鏈内之第一憑證(典型地,接在該 根憑證之後的憑證,如上文所述)開⑭,該卡循序接收來 自錢鑑認之該主機的憑證鏈(方塊6G2)。接著,該卡係鑑 認每-接收到的憑證,且假如任—憑證係鑑認失敗,則中 止該程序。假如該等憑證之任—鑑認失敗,則該卡通知該 122364.doc 200822669 主機(方塊604,606)。接著,該卡係偵測是否最後一憑證 已經被接收及鑑認(菱形608)。假如最後一憑證尚未被接收 及鑑認,則該卡返回方塊602,以繼續接收及鑑認來自該 主機的憑證。假如最後一憑證已經被接收及鑑認,則該卡 在憑證鑑認之後,進行至下一階段(6丨〇)。雖然圖26及以下 後續圖内之特徵係引用記憶體卡作為範例,應瞭解的是, 這些特徵係亦可應用於具有非記憶體卡之實體形式之記憶 體裝置。 ^ 當該卡正在鑑認該主機時由該主機所實施之程序係顯示 於圖27。如示於圖27,該主機傳送該憑證鏈内下一憑證至 該卡(方塊620),典型地係以一接在該根憑證之後的憑證開 始。接著’該主機係決定是否已經接收到來自該卡之一指 不鑑認失敗的中止通知(菱形622)。假如已經接收一中止通 知則δ亥主機停止(方塊6 2 4)。假如尚未接收一中止通知, 則該主機係藉由檢查是否已經於被傳送之最後一憑證中設 定’’為最後的旗標",而檢查看看是否已經傳送該憑證鏈内 最後一憑證(方塊626)。假如已經傳送最後一憑證,則在憑 證鑑認之後,該主機進行至下一階段(方塊628)。如示於圖 22及23,下一階段可以係一挑戰回應,其後係接著會期密 鑰建立。假如尚未傳送該憑證鏈内最後一憑證,則該主機 返回方塊620,以傳送該憑證鏈内下一憑證。 當該卡正被鑑認時由該卡及該主機所採取的動作係顯示 於圖28及29。如示於圖28,在開始之後,該卡係等待一來 自該主機的請求,以傳送該憑證鏈内之一憑證(方塊63〇, 122364.doc -71- 200822669 菱形632)。假如未接收到來自該主機的一請求,則該卡將 返回菱形632。假如接收到來自該主機的一請求,則該卡 接著將傳送該憑證鏈内下一憑證,其係以應該被傳送之第 一憑證開始(典型地,以接在該根憑證之後的憑證開始)(方 塊634)。該卡決定是否已接收到而來自該主機的一失敗通 知(方塊636)。假如已接收到一失敗通知,則該卡停止(方 塊637)。假如未接收到任何失敗通知,則該卡決定是否已 傳送最後一憑證(菱形63 8)。假如尚未傳送最後一憑證,則 (; 該卡返回菱形632且等待直到其接收來自該主機的下一請 求為止,以用於傳送該憑證鏈内之下一憑證。假如已傳送 最後一憑證,則該卡係進行至下一階段(方塊639)。 圖29顯不當該卡係正在被鑑認時,該主機所採取之動 作。該主機傳送對於該憑證鏈内之下一憑證之請求至該 卡,其係以對於將被傳送之第一憑證的請求開始(方塊 640)。接著,該主機鑑認每一接收到的憑證,且假如鑑認 失敗,則中止該程序且通知該卡(方塊642)。假如鑑認通 § V 過,則该主機檢查看看是否已接收且成功地鑑認最後一憑 證(菱形644)。假如尚未接收及成功地鑑認最後一憑證,則 泫主機返回方塊64〇,以傳送一對於該憑證鏈内下一憑證 之清求。假如已接收及成功地鑑認最後一憑證,則在憑證 鑑認之後,該主機進行至下一階段(方塊646)。 憑證廢止 當發佈一憑證時,期望於其整個有效期間被使用。然 而,各種情況可能導致一憑證在有效期間到期之前變成無 122364.doc -72- 200822669 效的。此類情況包含名稱改變,主題與憑證授權單位之門 之關聯性改變(例如’―員工終止與一組織之雇用關係): 及危及或懷疑危及對應的私有密鑰。於此類情況下,該憑 證授權單位係需要廢止該憑證。 “ 女全儲存應用程式係以不同的方式啟用憑證廢止,每一 存取控制記錄可被組態以用於一用於廢止憑證之特定方 T。一存取控制記錄可被組態成不支援一廢止方案。於此: The public key of the authorized unit of the host root certificate is authorized to decrypt the certificate issued by A to the host i certificate authority (second level) certificate 5〇4, and the signature of the worker is started. The decrypted signed and secretly transmitted. A summary of the unsigned public key in the host i voucher authority (second level) voucher 504 transmitted by the host. If the two match the public secret transmission of the subscriber 1 (second level) of the subscriber, the entity will then use the authentication of the host 1 certificate authority (second level). The public key is decrypted to decrypt the public key of the host signed by the private key of the host i certificate authority (second level) in the host certificate 506 transmitted by the host. If the decrypted signature value matches the value of the digest of the public key in the host credential 5 〇 6 transmitted by the child stack, then the public key of the host is then also authenticated. The credential chains B 1 and C1 can be used in a similar manner for authentication. As noted by the above-described procedure involving the credential chain A1, the first public key from the host that needs to be verified by the entity is tied to the key in the host 1 credential authorization unit (second level), and is not The host root certificate authorizes the unit credentials. Therefore, the host only needs to transfer the host i credential authorization unit (the first level) credential 504 and the host credential 506 to the entity, so that the host 1 credential authorization unit (second level) credential will be 122364.doc -63-200822669 The first credential that needs to be transmitted in the credential chain. As shown above, the sequence of voucher verification is as follows. The verification entity (in this case, the memory device 10) first verifies the authenticity of the public key in the first voucher in the voucher chain, which in this case is the voucher authorization under the root voucher authority Unit voucher 5 04. After the public key in such a voucher is verified as authentic, the device then proceeds to verify the next voucher, in this case the host credential 506. By the same token, a similar verification sequence can be applied, wherein the credential chain contains more than two credentials starting with the credentials immediately below the root and ending with the credentials of the entity to be authenticated. The device credential hierarchy architecture identifies the device based on two factors: a device root credential authorization unit voucher stored in the host and a voucher/credential chain provided by the device to the host (which is attached to the access) The control record is provided to the device as an authentication). The procedure for authenticating the device by the host is similar to the procedure described above for the device to authenticate the host. Device Credential Chain The device credential chain is the credential for the key pair of the access control record. It is provided to the card when the access control record is created. The secure storage application stores these credentials individually and will provide credentials to the host one by one during the authentication period. The secure storage application uses these credentials to authenticate the host. The device is capable of processing a voucher chain with 3 credentials, however several credentials other than 3 can be used. The number of vouchers varies depending on the access control record. It is determined when the access control record is created. The 122364.doc -64 - 200822669 device can transmit the credential chain to the host, however, it does not need to analyze them because the voucher chain data is not used. Figure 21 is a diagram showing the hierarchy of device credential hierarchy for displaying a different credential chain using a secure storage application for devices such as storage devices. The n different credential chains shown in Figure 21 are as follows: Α2·Device Root Credential Authorization Unit Credentials 52〇, Device/Voucher Authorization Unit (Manufacturer) Credentials 522 and Device Credentials 524; B2·Device Root Credential Authorization Unit Credentials 520, device n certificate authority unit C (manufacturer) certificate 526 and device certificate 528. The secure storage application device can be made by iSn different manufacturers, each manufacturer having its own device certificate authority unit =. Thus, the public key in the device credential for a particular device is signed by its manufacturer's private key, and then the manufacturer's public key is the private secret of the device's root credential authorized unit. Sign it. The manner in which the public key of the device is verified is similar to the manner in which the host's public key is described above. When in the above-mentioned case for the verification of the certificate of the host, there is no need to transmit the device root certificate authority unit von certificate ^ the first certificate system device i certificate authority (manufacturer) in the voucher chain to be transmitted The voucher followed by the device voucher, i is from 1 to _ integer. In the embodiment of Figure 21, the device will submit two voucher/device legacy licenses (manufacturing certificate, followed by its own device by alpha, »hai 4 set ι4 5 to authorize the unit (manufacturer) The voucher is the manufacturer of the device and is the manufacturer of the public key to sign the public key of the device 122364.doc -65- 200822669. When the device i certificate authority (manufacturer) certificate When received by the host, the host uses the public key of the root certificate authority that it owns to decrypt and verify the device i certificate authority (manufacturer) public key. If the verification fails, the host will Suspending the program and notifying the device that the authentication has failed. If the authentication is successful, the host transmits a request to the device for the next credential. Then, the device transmits it in a similar manner. The device credentials verified by the host. The above verification procedures are also shown in more detail in Figures 22 and 23. Figure 22 (Science " Full Service Module System" is a software module The Queen Stores the application of the private system and other functions as described below. The security service module system can be constructed as a software or computer code having a non-volatile content stored in the memory 20 or the central processing unit 12. The database in the memory (not shown) is read by the central processing unit 12 into the random access memory 12a and executed. If not in Fig. 22, there are three stages in the program, wherein The security service module system 542 in the device identifies a host system 540. In the first public key and key authentication phase, the host system 540 transmits the host certificate chain in the security service module command to the security service. Module system 542. The security service module system 542 authenticates (block 552) the host credentials 544 using the root credential authority unit public key located in the host root credential 548 within the access control record 55 The authenticity of the host public key 546. If an intermediate credential authorization unit 549 'between 4 credential authorization units and the host is involved, then at intermediate block 552, the intermediate credential authorization 549 is also used for verification. Assuming the authentication or procedure (block 552) is successful, the security service 122364.doc -66-200822669 module system 542 proceeds to the second phase. The security service module system 542 generates a random number 554 and transmits the random number 554 as a challenge to the host system 54. The system $ breaks the private key 547 of the host system to sign the random number (block 556), and transmits the signed The random number is used as a response to the challenge. The response is decrypted using the host's public key (block (4)) and compared to the random number 554 (block 56()) β assuming the decrypted response matches the random The number 554, the challenge response is successful. In the phase =, the random number 562 is encrypted using the host public secret record (10). Then, the random number 562 is intimately drawn. The host system, the charging unit 540 can obtain the session key by using the private secret recording decryption thereof (the block % sentence is from the encrypted random number 562 of the security service module system 542). The period key can then initiate a secure communication between the host system 540 and the security service module system 542. Figure U shows a one-way asymmetric authentication, wherein the host system 54 is The security service module system 542 in the device (7) is authenticated. Figure 23 is a protocol diagram showing a two-way mutual authentication procedure similar to the one-way authentication protocol of Figure 22, wherein the security in Figure 23 The service module system 542 is also authenticated by the host system 540. Figure 24 depicts a diagram of a credential chain 590 in accordance with an embodiment of the present invention. As described above, a credential chain that needs to be submitted for authentication There may be a number of vouchers so the voucher key of Figure 24 contains a total of 9 vouchers, all of which may need to be authenticated for authentication. As explained in the prior art section above, for vouchers In the existing system, the transmission is incomplete 1 22364.doc -67- 200822669 The credential chain, or if the entire voucher is transmitted, and the voucher is not transmitted in any particular order, so that the recipient will not be able to analyze the voucher until the entire voucher group has been It is received and stored as a soil because the number of voucher in a voucher chain is not known in advance, so this can present a problem. A large amount of storage space may need to be reserved for storing a voucher chain of indeterminate length. It may be a problem with the storage device that implements the authentication. An embodiment of the present invention is based on the problem that the host device can transmit it in the same order as the certificate chain will be authenticated by the storage device. The recognition of one of the voucher chains is mitigated. Thus, as shown in Figure 24, the core of the chain 590 is: starting with voucher chain 590(1), which is the voucher immediately below the host root voucher; Ending at voucher 590(9), which is the host credential. Accordingly, device 10 will first authenticate the public key in voucher 590(i), followed by the authentication of the public key in voucher 590(2), And so on Until the host public key in the credential 590 (9) is considered to be terminated. Then this is 70% of the entire credential chain 590. Therefore, if the host device is authenticated with the credential chain, By transmitting the credential key 590 to the memory device 1 in the same order or sequence, the memory device 1 can begin to authenticate each credential when each credential is received without waiting until all 9 of the credential key 590 The credentials have been received. Thus, in one embodiment, the host device transmits a voucher in the credential chain 590 to the memory device 1 at a time. Then, the memory device 1 must store a single voucher at a time. After the voucher has been authenticated, it can be overwritten by a voucher sent by the host, except for the last voucher in the voucher chain 122364.doc -68- 200822669. In this way 'at any time' the memory device 1 〇 will need to reserve space for storing only a single voucher. The memory device will need to know when the entire credential chain 590 has been received. Therefore, preferably, the last voucher 590(9) contains an indication or an indication that it is one of the last voucher in the voucher chain. This feature is shown in Figure 25, which shows a table of information for a control segment that is before the voucher buffer transmitted by the host to the memory device. As shown in Figure 25, the control section of voucher 590(9) contains an argument name "as the last flag". Next, the memory device 10 can be set by checking whether the "be the last flag system is set, and the authentication voucher 590 (9) is the last voucher in the voucher chain to determine whether the voucher received is the voucher. The last voucher in the chain. In an alternative embodiment, the voucher in the voucher chain 590 may be transmitted non-transitively, and transmitted in groups of one, two or three voucher. Obviously, The same number of credentials in a group or group with other numbers of credentials are used. Thus, credential chain 590 contains 5 consecutive credential strings 591, 593, 595, 597, and 599. Each of the credential strings contains at least a voucher. A contiguous voucher string is a voucher string containing the following voucher: a voucher (starting voucher) of the voucher string immediately preceding the voucher string in the voucher chain; immediately within the voucher chain a voucher (end credential) of the subsequent voucher string of the voucher string; and all voucher between the start voucher and the end voucher. For example, voucher string 593 contains three voucher 590(2), 590(3) and 590 (4). The five credential strings are identified by the memory device 10 in the following sequence: 591, 593, 595, 597 and 599 knots 122364.doc • 69- 200822669 bundles, if the five credential strings are associated with the memory device 10 implementations... the same sequence is transmitted and received, then the memory device will not need to store any credential string after the f-string has been authenticated, and 2: all subsequent except the credential string can be The next & 复 来自 来自 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 In order to not be the last voucher in the voucher chain. In this embodiment, the memory t will only need to store the space of the most voucher in the 5 voucher strings. Because & First of all, it is notified that the first longest voucher string is transmitted by the device, and the memory device i only needs to reserve enough space for the longest veneer string. The voucher chain is also transmitted by the 17H host. The length of each voucher within the certificate does not exceed the value verified by the voucher 4 times the length of the open key. Similarly, the 'better' is transmitted from the memory device 1 to a host device for verification. The length of the public key of the U-device is not more than The voucher is validated by 4 times the length of the public key. The above-described embodiment for the voucher chain is shown in the flow chart of Figure %, where 'for', for simplicity, within each group The number of voucher is false. Also as shown in Figure 26, the host sequentially transmits the voucher in the voucher chain to the card. The first voucher in the credential chain (typically, the credential following the root credential) As described above, the card 14 sequentially receives the credential chain of the host from the money authentication (block 6G2). Next, the card authenticates each received credential, and if the credential-authentication fails, the program is aborted. If the credentials are invalid—the authentication fails, the card notifies the 122364.doc 200822669 host (blocks 604, 606). Next, the card detects if the last voucher has been received and authenticated (diamond 608). If the last voucher has not been received and authenticated, then the card returns to block 602 to continue receiving and authenticating credentials from the host. If the last voucher has been received and authenticated, the card proceeds to the next stage (6丨〇) after the voucher is authenticated. Although the features in Figure 26 and the following figures refer to memory cards as an example, it should be understood that these features can also be applied to memory devices having a physical form other than a memory card. ^ The program implemented by the host when the card is authenticating the host is shown in Figure 27. As shown in Figure 27, the host transmits the next voucher in the voucher chain to the card (block 620), typically starting with a credential following the root credential. Then the host determines whether an abort notification (diamond 622) from one of the cards has failed to be authenticated has been received. If an abort notification has been received, the host is stopped (block 6 2 4). If a suspension notification has not been received, the host checks to see if the last voucher in the voucher chain has been transmitted by checking whether the ''last flag' has been set in the last voucher being transmitted ( Block 626). If the last voucher has been transmitted, the host proceeds to the next stage after the voucher is authenticated (block 628). As shown in Figures 22 and 23, the next stage can be a challenge response followed by a session key establishment. If the last credential in the credential chain has not been transmitted, the host returns to block 620 to transmit the next credential within the credential chain. The actions taken by the card and the host when the card is being authenticated are shown in Figures 28 and 29. As shown in Figure 28, after the start, the card waits for a request from the host to transmit one of the credentials in the voucher chain (block 63〇, 122364.doc -71 - 200822669 diamond 632). If a request from the host is not received, the card will return to diamond 632. If a request is received from the host, the card will then transmit the next voucher in the voucher chain, starting with the first voucher that should be transmitted (typically starting with the voucher following the root voucher) (block 634). The card determines if a failure notification has been received from the host (block 636). If a failure notification has been received, the card is stopped (block 637). If no failure notification is received, the card determines if the last document has been transmitted (diamond 63 8). If the last credential has not been transmitted, then (; the card returns to diamond 632 and waits until it receives the next request from the host for transmitting the next credential in the credential chain. If the last credential has been transmitted, The card proceeds to the next stage (block 639). Figure 29 shows the action taken by the host when the card is being authenticated. The host transmits a request for the next voucher in the voucher chain to the card. , which begins with a request for the first credential to be transmitted (block 640). Next, the host authenticates each received credential, and if the authentication fails, the program is aborted and the card is notified (block 642). If the authentication is passed, the host checks to see if it has received and successfully authenticated the last credential (diamond 644). If the last credential has not been received and successfully authenticated, then the host returns to block 64. In order to transmit a request for the next voucher in the voucher chain. If the last voucher has been received and successfully authenticated, then after the credential is authenticated, the host proceeds to the next stage (block 646). Abolition When a voucher is issued, it is expected to be used throughout its validity period. However, various circumstances may result in a voucher becoming invalid without the 122364.doc -72-200822669 effect before the expiration of the validity period. Such cases include name changes, subject matter. A change in the association with the authority of the voucher authority (eg '--employee termination and employment relationship with an organization'): and endangering or suspecting the compromise of the corresponding private key. In such cases, the voucher authority needs to revoke the voucher "The female full storage application enables credential revocation in different ways, and each access control record can be configured for a specific party T used to revoke the voucher. An access control record can be configured to not Support an abolition plan.

情況下,每-憑證係被認為有效的,直到其之到期曰期為 止。或者可採用憑證廢止清單。作為又另一替代方式,1 ,止方案可特定心-特料應用程式,或者應用^式= 定的’其係將於下文說明。—存取控制記錄係藉由指定一 廢止值’而指定三種廢止方案中被採用的廢止方案。假如 :存取控制記錄被建立成不具有廢止方案,則對於其而 g ’採用-能夠被該存取控制記錄擁有者啟動的廢止方案 係可能的。記憶體裝置憑證之廢止係由該主機予以強制實 :’而非由該安全錯存應用程式安全性系統予以強制實 :。:存取控制記錄擁有者負責管理一主機根憑證的廢 二=^根憑證而實施之機制係藉由更新該等存取控 帝J圮錄的憑證而實施。 憑證廢止清單(CRL) 4女全儲存應用程式系統使用—廢止 週期性發佈一鑪在一 $ # 八係晕涉到 為且廢止清單之經簽名資料結構之每 一憑泣授權單位。-憑證廢止清單係一時間戮 識別由一憑證授權單位(發 D /早” v知伸。才娜中的憑證之相同憑證授 122364.doc -73- 200822669 權單位)所簽名之經廢止憑證,且實施成可由公眾所自由 使用。每-經廢止憑證係藉由其憑證序號而於一憑證廢止 清單中予以識別。該憑證廢止清單的大小係任意的,且係 取決於經廢止的未到期憑證之數量。當一裝置使用一憑證 1如,用㈣認—主機的身份)時,該裝置不僅檢查該憑 也簽名(及有效性)’而且亦比對透過—憑證廢止清單接收 •之序號清單而鑑認該憑證。假如於發佈該憑證的憑證授權 单位所發佈之憑證廢止清單上找到一諸如一憑證之序號的 識別’則此係指示該等憑證係已經被廢止且不再有效。 該憑證廢止清單亦將需要被鑑認為真實的,以使其作為 確。…丘之目的。憑證廢止清單係使用發伟該憑證廢止清 皁的憑證授權單位的私有密餘 山巧丁 Μ贫石,且可糟由使用該 憑證授權單位的公開密餘解 ^ ^鮮4该經簽名的憑證廢止清單而 被鑑自忍為真實的。假如該 U解孩的憑證廢止清單匹配該未 、、里簽名的憑證廢止清單之摘要, 幻此係思明该憑證廢止清 早係未曾被竄改且係真實的。渴 — 刃心也廢止清早係通常使用一 雜凑凟异法而被雜湊,以 ,_ ^ . 又仔八之摘要,且該等摘要係藉 由4私彡豆授權單位的私有密鑰 X ^ 为山塢于以加始、。為了鑑認是否一 憑證廢止清單係有效的,該 、、i分名的憑證廢止清單(亦 P ’、、、里雜凑及經加密的憑證 x 廢止清早)係使用該憑證授權 卿止、主,: 經解密及經雜凑的憑 二 月早(亦即’該憑證麼止清單的-摘要)。接著,盆 凑的憑證廢止清單比較。因此,該鑑認程序ΐ 到雜凑該憑證廢止清單以用於與經解密及經雜凑 122364.doc -74· 200822669 的憑證廢止清單相比較的步驟。 該等憑證廢止清單方案的特性之一係,該憑證(對於該 憑證廢止清單)之確認可與獲得該憑證廢止清單分開實 施。憑證廢止清單係亦由適切的憑證之發行者予以簽名, 且係以上述之方式,使用發佈該等憑證廢止清單之憑證授 權單位的公開密鑰,以一類似於憑證鑑認之類似方式來鑑 認憑證廢止清單。該記憶體裝置鑑認該簽名係屬於該憑證 廢止清單且該憑證廢止清單之發行者匹配該憑證之發行 者。該憑證廢止清單方案之另一特性係,可藉由完全相同 於該等憑證本身的手段散佈憑證廢止清單,亦即,經由不 受信任的祠服ι§及不受信任的通訊。憑證廢止清單及其之 特性係詳細說明於X.509標準之中。 憑證廢止清單之安全儲存應用程式基礎架構 安全儲存應用程式使用該憑證廢止清單方案而提供一用 於主機廢止之基礎結構。當以憑證廢止清單廢止方案鑑認 一 RS A為基礎的存取控制記錄時,該主機係將作為一額外 的欄位之一憑證廢止清單(假如發行者憑證授權單位未廢 止任何憑證,則可能為一空的憑證廢止清單)加入至一集 合憑證命令之中。此攔位將含有一由該憑證的發行者所簽 名之憑證廢止清單。當此欄位係存在時,該記憶體裝置10 首先鑑認該集合憑證命令内的憑證。獲得及存取該憑證廢 止清單存放庫(repository)係完全為該主機之責任。憑證廢 止清單係於其為有效期間的時期(憑證廢止清單到期時期 (CET)而發佈。於鑑認期間’假如目前的時間係被發現為 122364.doc -75- 200822669 不在此時期内,則該憑證廢止清單係被認為有缺陷的,且 不能夠被用於憑證鑑認。接著,結果係該憑證的鑑認失 敗。 於傳統的憑證鑑認方法中,該鑑認或鑑認實體被期望持 有憑證廢止清單或能夠自憑證授權單位擷取憑證廢止清 單’且比對該清單以檢查提交用於鑑認之憑證的序號,以 決定是否所提交的憑證係已經被廢止。在鑑認或鐘認實體 係°己丨思體裝置之情況下,該記憶體裝置係可能尚未被使 用於自己自憑證授權單位擷取憑證廢止清單。假如一憑證 廢止清單係預先儲存於該裝置内,則此類清單係可變成過 期的,使得在該安裝日期之後所廢止的憑證將不出現於該 清單上。此將使使用者能夠使用一經廢止憑證存取該儲存 裝置。此係不期望的。 在一項實施例中,可藉由一種系統來解決上述問題,其 中,想要被鑑認之實體提交一憑證廢止清單連同將被鑑認 之憑證給該鑑認實體,該鑑認實體可以係一記憶體裝置 1 〇。該鑑認實體接著鑑認接收到之憑證及憑證廢止清單的 真實性。該鑑認實體藉由檢查是否該憑證之識別(諸如該 憑證之序號)係出現於該憑證廢止清單上,而檢查是否該 憑證係於該憑證廢止清單上。 鑑於上述内容,一非對稱鑑認方案可被用於介於一主機 裝置與3己憶體裝置10之間的相互鑑認。想要對於該記愧體 裝置10而被鑑認之該主機裝置係將需要提供其憑證鏈及對 應的憑證廢止清單。另一方面,主機裝置係已經被用於連 122364.doc •76· 200822669 接至憑證授權單位以獲得憑證廢止清單,使得當記憶體裝 置10係將被主機裝置予以鑑認時,該記憶體裝置不需要將 憑證廢止清單連同其憑證或憑證鏈提交給該等主機裝置。 近年來,係有擴大數量之不同類型可用於播放内容的可 攜式裝置,諸如不同内建的或獨立的音樂播放機、邮3播 放機、行動電話、個人數位助理及筆記型電腦。雖然連接 此類裝置至全球網路(WWW)以自憑證授權單位存^憑證 鑑認清單係可能的,然而典型地,許多使用者非每天= 至web,反而是僅獲得新的内容或更新訂購(諸如每幾週) 才連接至web。因此,對於此類使用者而言,必須更頻繁 地自憑證授權單位獲得憑證廢止清單可能係麻須的。對於 此類使用者而言,可於該儲存裝置本身之一較 早 護區域中健存該憑證廢止清單及亦可選用之將需要被二交 給-儲存裝置以存取受保護内容之主機憑證。於許多類型 儲存裝置(例如快閃記憶體)之中,該等館存裝置之未受保 護區域係由主機裝置所管理,而非該等錯存裳置自己所管 理。以此方式’對於該使用者(至該主機裝置)而言,不需 要必須連接至該網路,以獲得更多最新的憑證廢止清單。 該主機裝置係可以僅自該儲存裝置之不安全區域榻取此類 貧訊,且接著轉向及提交此類憑證及清單給該儲存器或記 憶體裝置,以存取該儲存裝置内受保護内容。因為用於存 取受保護内容的憑證及其對應的憑證廢止清翠典型地係於 某時期為有效的’所以只要其係仍然有效的,則該使用者 將不需要獲得最新的憑證或憑證廢止清單。上述特徵使使 122364.doc -77- 200822669 用者能夠於相當長的期間當該憑證及憑證廢止清單皆為有 效時,方便存取該憑證及憑證廢止清單,而不需要連接至 該憑證授權單位,以用於經更新資訊。 上述程序係顯示於圖30及31之流程圖之中。如示於圖 3〇’該主機24自該記憶體裝置1G之不安全公開區域讀取關 於該主機將提交給該記憶體裝置以用錢認之一憑證的憑 證廢止清單(方塊652)。因為該憑證廢止清單係儲存於該記 憶體之一不安全區域,所以在該憑證廢止清單能夠被該主 機獲得之别,係不需要鑑認。因為該憑證廢止清單係儲存 於名圯憶體裝置之公開區域,所以該憑證廢止清單的讀取 係又到4主機裝置24控制。接著,該主機傳送憑證廢止清 皁連同將被鑑認之憑證至該記憶體裝置(方塊654),且進行 下卩自&,除非其接收來自該記憶體裝置1 〇之一失敗通 去(方塊65 6)。參照圖3 1,該記憶體裝置係接收來自該主機 的心也廢止π單及憑證(方塊658),且檢查是否該憑證之序 號係於該憑證廢止清單上(方塊66〇),以及其他方面(例 如疋否"亥憑證廢止清單係已經過期)。假如於該憑證廢 止清單上找到該憑證之序號或者因其他理由而失敗,則該 記憶體裝置傳送一失敗通知給該主機(方塊662)。以此方 式’不·同的主機可獲得儲存於該記憶體裝置之公開區域内 的憑證廢止清單,原因係相同的憑證廢止清單可被用於不 同主機的4! 4。如上文所述,為了使用者方便,將使用該 心、從廢止β單而被鑑認之憑證較佳地係亦可以與該憑證廢 止β單起儲存於記憶體裝置10之一不安全區域内。然 122364.doc •78- 200822669 而,該憑證係可用於僅由該憑證被發佈之該主機對於記憶 體裝置之鑑認。 在該憑證廢止清單係於其攔位内含有一用於下一更新時 間之情況下,如示於圖32,於裝置10内的安全儲存應用程 式係亦對照此時間而檢查目前時間,以看看是否目前時間 係於此時間之後;假如其係如此’則鏗認亦失敗。因此, 較佳地,該安全儲存應用帛式對照目冑的時間(或者對照 該憑證廢止清單被該記憶體裝置10接收到的時間)檢查下 一更新的時間以及憑證廢止清單到期時期。 一 如上文所述,假如該憑證廢止清單含有長經廢止憑證識 別清早,則處理(例如雜湊)及搜尋清單中是否有由該主機 提交之憑證的序號可能花費一段長時間,特別是在該處理 及搜尋係依序實施之情況下。因此,為了加速該程序,處 理及搜尋係可以同時被實施。再者,假如整個憑證廢止清 早在其被處理及搜尋之前需要被接收’則該程序係亦可以 為費時的。申請人係體認到:可藉由隨著該憑證廢止清單 之部㈣接收時(迅速地)μ處理及搜尋而迅速執行該程 序,使付當該憑證廢止清單之最後—部分被接 序係即將完成。 圖33及34係顯示上述廢止方案之特徵。㈣㈣實體 (例如’-堵如-記憶體卡之記憶體裝置)處,自想要被鑑 認之實體接收憑證及憑證廢止清單(方塊7〇2)。未經加密的 憑證廢止清單之部分被處理(例如雜凑)並且同時搜尋此等 部分中是否有所提交之憑證的識別(例如,序號)。該等經 122364.doc -79- 200822669 編譯成為一經In the case, each voucher is considered valid until the expiration of its expiration. Alternatively, a voucher revocation list can be used. As yet another alternative, the scheme may be specific to the particular application, or the application may be described below. - The access control record specifies the abolition scheme used in the three abolition schemes by specifying an abolition value. If the access control record is established to have no abolition scheme, it is possible for it to adopt an abolition scheme that can be initiated by the access control record owner. The abolition of the memory device credentials is enforced by the host: 'not forced by the securely compromised application security system: The access control record owner is responsible for managing the waste of the host root certificate and implementing the mechanism by updating the credentials of the access control. Voucher Revocation List (CRL) 4 Female Full Storage Application System Use - Abolish Periodically release a firecracker authorized unit in a $# octave. - the voucher revocation list is identified by a voucher authorized unit (issuing D / early) v Zhishen. The same voucher of the voucher in the certificate is issued by 122364.doc -73- 200822669 right unit, signed by the abolition certificate, and It is implemented to be freely usable by the public. Each-dead certificate is identified in a voucher revocation list by its voucher number. The size of the voucher revocation list is arbitrary and depends on the revoked unexpired voucher. When a device uses a voucher 1 such as (4) to identify the identity of the host, the device not only checks the signature (and validity) but also compares the serial number of the voucher revocation list. And the voucher is authenticated. If an identification such as the serial number of a voucher is found on the voucher revocation list issued by the voucher authorized by the voucher issuing the voucher, then the system indicates that the voucher has been revoked and is no longer valid. The abolition list will also need to be considered to be true, so that it is the purpose of the .... Qiu's purpose. The voucher revocation list is issued using the certificate of abolishing the soap. The private secret of the unit is singularly poor, and it can be judged to be true by the use of the publicly available secrets of the authorized unit of the certificate. The child's voucher revocation list matches the summary of the non-existing and signed voucher revocation list. The illusion is that the voucher is abolished in the early morning and has not been tampered with and is true. Thirst - the heart also abolishes the early morning usually using a hash. It is a mixture of different methods, _ ^ . and a summary of the eight, and the abstract is by the private key X ^ of the private Bean Authorized Unit of the private bean X ^ in the beginning of the mountain, in order to identify whether If the voucher revocation list is valid, the voucher revocation list of the i, the name, (also P ', ,, hashed and encrypted voucher x abolished early) is used to authorize the secretary, the master,: decrypted And the hashed by early February (that is, the summary of the list of vouchers). Then, the vouchers of the vouchers are abolished. Therefore, the authentication procedure smashes the vouchers of the vouchers for use. Decrypted and hashed 122364.doc -74· 2 The step of comparing the voucher revocation list of 00822669. One of the characteristics of the voucher revocation list scheme is that the confirmation of the voucher (for the voucher revocation list) can be implemented separately from obtaining the voucher revocation list. The issuer of the voucher is signed, and in the manner described above, the voucher revocation list is authenticated in a similar manner to voucher identification using the public key of the voucher authority that issued the voucher revocation list. The device identifies that the signature belongs to the voucher revocation list and the issuer of the voucher revocation list matches the issuer of the voucher. Another feature of the voucher revocation list scheme is by means of exactly the same as the voucher itself Distribute the voucher revocation list, that is, through untrusted service and untrusted communication. The list of revoked documents and their characteristics are detailed in the X.509 standard. Secure Storage Application Infrastructure for Credential Revocation List The Secure Storage application uses this voucher to abolish the inventory scheme to provide an infrastructure for host abolition. When the RS A-based access control record is authenticated by the voucher revocation list abolition scheme, the host system will act as one of the additional fields for the voucher revocation list (if the issuer certificate authority does not revoke any voucher, then Add an empty voucher revocation list to a set of voucher commands. This block will contain a list of vouchers to be signed by the issuer of the voucher. When this field is present, the memory device 10 first authenticates the credentials within the set of credentials commands. Obtaining and accessing the voucher revocation list repository is entirely the responsibility of the host. The voucher revocation list is issued during the period in which it is valid (Certificate Revocation List Expiration Period (CET). During the identification period, 'if the current time is found to be 122364.doc -75- 200822669 is not in the current period, then The voucher revocation list is considered to be defective and cannot be used for voucher authentication. Then, the result is that the authentication of the voucher fails. In the traditional voucher authentication method, the authentication or authentication entity is expected Holding the voucher revocation list or being able to retrieve the voucher revocation list from the voucher authorization unit and comparing the serial number of the voucher submitted for verification to determine whether the submitted voucher has been revoked. In the case of a clock-recognition system, the memory device may not have been used by itself to obtain a voucher revocation list from a voucher authority. If a voucher revocation list is pre-stored in the device, then The list of classes can become expired, so that the voucher that was revoked after the installation date will not appear on the list. This will enable the user to use once abolished. Accessing the storage device. This is not desirable. In one embodiment, the above problem may be solved by a system in which an entity that is to be authenticated submits a voucher revocation list along with the identification to be authenticated. The voucher is given to the authenticating entity, and the authenticating entity can be a memory device 1. The authenticating entity then authenticates the authenticity of the received voucher and the voucher revocation list. The authenticating entity checks whether the voucher is The identification (such as the serial number of the voucher) appears on the voucher revocation list, and checks if the voucher is on the voucher revocation list. In view of the above, an asymmetric authentication scheme can be used between a host device and 3 mutual authentication between the devices 10. The host device that is to be authenticated for the recording device 10 will need to provide its credential chain and corresponding certificate revocation list. On the other hand, the host device The system has been used to connect to the voucher authorization unit to obtain the voucher revocation list, so that when the memory device 10 is to be authenticated by the host device, the record The device does not need to submit the voucher revocation list along with its voucher or voucher chain to the host devices. In recent years, there have been an expanded number of different types of portable devices that can be used to play content, such as different built-in or independent music. Players, mail 3 players, mobile phones, personal digital assistants, and notebook computers. Although it is possible to connect such devices to the World Wide Web (WWW) to verify the list of credentials from a voucher authority, typically, Many users do not go to the web every day = instead, they only get new content or update subscriptions (such as every few weeks) to connect to the web. Therefore, for such users, the credentials must be obtained from the certificate authority more frequently. The abolition list may be numb. For such users, the voucher revocation list may be stored in an earlier protection area of the storage device itself and may also be required to be handed over to the storage device. Access host credentials for protected content. In many types of storage devices (e.g., flash memory), the unprotected areas of such storage devices are managed by the host device rather than being managed by the host device. In this way, for the user (to the host device), there is no need to connect to the network to obtain more up-to-date voucher revocation lists. The host device can only take such a poor message from the unsafe area of the storage device, and then steer and submit such a voucher and list to the storage or memory device to access the protected content in the storage device. . Because the credentials used to access the protected content and their corresponding credentials are no longer valid for a certain period of time, so the user will not need to obtain the latest credentials or credentials if the system is still valid. List. The above features enable the user of 122364.doc -77-200822669 to conveniently access the voucher and voucher revocation list for a relatively long period of time when the voucher and voucher revocation list are valid, without the need to connect to the voucher authority For updated information. The above procedure is shown in the flowcharts of Figs. As shown in Figure 3, the host 24 reads from the unsecure open area of the memory device 1G a certificate revocation list that the host will submit to the memory device to recognize the voucher (block 652). Since the voucher revocation list is stored in an unsafe area of the memory, the voucher revocation list can be obtained by the host without identification. Since the voucher revocation list is stored in the public area of the name memory device, the reading of the voucher revocation list is controlled by the 4 host device 24. Next, the host transmits the voucher abolition soap along with the voucher to be authenticated to the memory device (block 654), and proceeds from the & unless it receives a failure from the memory device 1 ( Block 65 6). Referring to Figure 3, the memory device receives the heart from the host and also revokes the π-single and the voucher (block 658), and checks if the voucher number is on the voucher revocation list (block 66), and other aspects. (For example, &No"Hai vouchers list has expired). If the serial number of the voucher is found on the voucher revocation list or fails for other reasons, the memory device transmits a failure notification to the host (block 662). In this way, the host that is not the same can obtain the certificate revocation list stored in the public area of the memory device, because the same certificate revocation list can be used for different hosts 4! As described above, for the convenience of the user, the certificate to be authenticated from the abolished beta is preferably stored in an unsafe area of the memory device 10 together with the voucher. . 122364.doc •78- 200822669 However, the voucher can be used for authentication of the memory device by the host that is only issued by the voucher. In the case where the voucher revocation list is included in the block for a next update time, as shown in FIG. 32, the secure storage application in the device 10 also checks the current time against the time to see See if the current time is after this time; if it is so, then the recognition will also fail. Therefore, preferably, the secure storage application checks the time of the next viewing (or the time received by the memory device 10 against the receipt of the voucher revocation list) to check the time of the next update and the expiration of the voucher revocation list. As described above, if the voucher revocation list contains a long-term revoked voucher identification early, it may take a long time to process (eg, hash) and search the list for the serial number of the voucher submitted by the host, especially in the process. And the search system is implemented in sequence. Therefore, in order to speed up the process, the processing and search systems can be implemented simultaneously. Furthermore, the program can be time consuming if the entire voucher is revoked early and needs to be received before it is processed and searched. The applicant's department recognizes that the program can be quickly executed by (quickly) μ processing and searching as the part (4) of the voucher revocation list is received, so that the last part of the voucher revocation list is partially received. will complete. Figures 33 and 34 show the features of the abolition scheme described above. (4) (4) The entity (for example, the memory device of the memory card) receives the certificate and the certificate revocation list from the entity that is to be authenticated (block 7〇2). The portion of the unencrypted voucher revocation list is processed (e.g., hashed) and the identification of the voucher (e.g., serial number) in the submitted portion is also searched for. The compilation was completed by 122364.doc -79- 200822669

或者假如目前的時間係不在該憑證廢止清單到期 處理的(例如經雜湊的)憑證廢止清單部分被 雜湊的完整憑證廢止清單,其係與該完整經 %期之内,或者假如已超過下一更新憑證廢止清單之時間 (方塊710),則鑑認亦失敗。於一些實施方式中,儲存用於 編譯之該等經雜湊憑證廢止清單部分及該等級解密雜湊憑 證廢止清單部分可不需要大量的記憶體空間。 當一實體(例如,該主機)想要被鑑認,其將傳送其憑證 及憑證廢止清單給該鑑認實體(方塊722),且進行至下一階 段(方塊724)。此係顯示於圖34。 假如該實體係提交一用於鑑認之憑證鏈,則可實施一類 似於上述之程序。於此事件中,將需要對於該憑證鏈内每 一憑證連同其對應的憑證廢止清單重複上述程序。每一憑 證及其憑證廢止清單係可隨著其被接收時予以處理,而不 需要等待接收該憑證鏈中之其餘憑證及其對應的憑證廢止 清單。 身份物件(IDO) 身份物件係一受保護物件,其係設計成允許諸如一快閃 122364.doc -80- 200822669 記憶體卡之該記憶體襞置1〇儲存一 RSA密鑰對或其他類型 始、碼編譯ID。該身份物件包含任何類型密碼編譯ID,其可 被用於簽名及鑑認身份、以及加密及解密資料。該身份物 件亦包g —來自一憑證授權單位的憑證(或者來自多個憑 證授權單位的一憑證鏈),以檢定該密鑰對内之公開密鑰 為真實的。該身份物件可被用於提供一外部實體或一内部 卡實體(亦即,該裝置本身、一内部應用程式等等,稱為 该身份物件之擁有者)之身份證明。因此,該卡非正在透 °挑戰回應機制使用该RS A密瑜對或其他類型密碼編譯 、勉〜π亥主機,而疋透過簽名提供給其之資料流而作為 身份證明。換句話說,該身份物件係含有其擁有者的密碼 編譯ID。為了存取該身份物件内的密碼編譯ι〇,該主機將 首先需要被鑑認。如上文所述,該鑑認程序係受控於一存 取控制記錄。在該主機係已經被成功鑑認之後,該身份物 件擁有者可使用該密碼編譯ID來建置該擁有者對於另一當 事人之身份。舉例而言,該密碼編譯m(例如,一公開-私 有密鍮對之私有密鑰)可被用於簽名由其他當事人透過該 主機提父之資料。該經簽名的資料及該身份物件内之憑證 係代表該身份物件之擁有者提交給其他當事人。由一憑證 授權單位(亦即,一受信 " 又怡4的杈權早位)檢定該憑證内之該 公開-私有密鑰對之公開宓 A開在鑰為真實的,使得其他當事人 可#任該公開密鑰為真實的。接 苴♦ 憑證内之該公開密鑰來解密 ^ 田 可使用該 艇…… 簽名的資料,且比較該經 解始、的負料與由其他舍畫A &由 他田事人所傳送之資料。假如該經解密 122364.doc -81- 200822669 的資料匹配於由其他t事人所傳送之資料,則此係顯示該 身份物件之擁有者係真的具有存取該真實的私彳密餘之權 利,且因而其代表之實體係真實的。 忒身伤物件之一第二用途係使用該密碼編譯諸如該 RSA么鑰本身)來保護指定給該身份物件之擁有者之資料。 β貝料係期望使用該身份物件公開密鑰而被加密。諸如一 記憶體卡之該記憶體裝置1G將使用該私有密鑰來解密 料。Or if the current time is not in the voucher revocation list expiring (for example, the hashed) voucher revocation list part of the hashed complete voucher revocation list, which is within the % of the full period, or if the next time has been exceeded When the time of the voucher revocation list is updated (block 710), the authentication also fails. In some embodiments, storing the hashed voucher list portion for compiling and the level decrypting the voucher revocation list portion may not require a large amount of memory space. When an entity (e.g., the host) wants to be authenticated, it will transmit its voucher and voucher revocation list to the authenticating entity (block 722) and proceed to the next stage (block 724). This is shown in Figure 34. If the real system submits a credential chain for authentication, a procedure similar to that described above can be implemented. In this event, the above procedure will need to be repeated for each voucher in the voucher chain along with its corresponding voucher revocation list. Each voucher and its voucher revocation list can be processed as it is received, without waiting to receive the remaining voucher in the voucher chain and its corresponding voucher revocation list. Identity Object (IDO) An identity object is a protected object that is designed to allow a memory such as a flash 122364.doc -80-200822669 memory card to store an RSA key pair or other type. , code compilation ID. The identity object contains any type of cryptographic compilation ID that can be used to sign and authenticate, as well as encrypt and decrypt data. The identity object also contains g - a voucher from a voucher authority (or a voucher chain from multiple voucher authorities) to verify that the public key within the pair is authentic. The identity object can be used to provide identification of an external entity or an internal card entity (i.e., the device itself, an internal application, etc., referred to as the owner of the identity object). Therefore, the card is not being used by the challenge response mechanism to compile the RS A password or other types of passwords, and to use the data stream provided to it by the signature as proof of identity. In other words, the identity object contains the password compilation ID of its owner. In order to access the password in the identity object, the host will first need to be authenticated. As described above, the authentication procedure is controlled by an access control record. After the host system has been successfully authenticated, the identity object owner can use the password to compile the ID to establish the identity of the owner for another party. For example, the cryptographic compilation m (e.g., a public-private key pair private key) can be used to sign the data that is being passed over by the other party through the host. The signed information and the voucher in the identity object are submitted to other parties on behalf of the owner of the identity object. The publicity of the public-private key pair in the voucher is verified by a voucher authorization unit (ie, a trusted letter " Any public key is true.苴 ♦ The public key in the voucher is used to decrypt ^ Tian can use the boat... The signed information, and compare the unsuccessful material and the other materials sent by A & data. If the information decrypted 122364.doc -81- 200822669 matches the information transmitted by other t-sectors, then it indicates that the owner of the identity object has the right to access the real private secret. And thus its representative system is real. The second use of one of the injuries is to use the password to compile the information such as the RSA key itself to protect the information assigned to the owner of the identity object. The beta shell is expected to be encrypted using the identity object public key. The memory device 1G, such as a memory card, will use the private key to decrypt the material.

“份物件係一可對於任何類型存取控制記錄予以建立 之物件。於—項實施例中’―存取控制記錄可具有僅一個 ^份物件。資料簽名及保護特徵兩者係該安全儲存應用程 二:Γ:給任何能夠鑑認該存取控制記錄的實體之服 h物件之保4等級係與該存取控制記錄之登入鑑 3=-樣高。料經繫結以具有—身份物件之—存取控 =,可選擇任何鑑認演算法。由建 :估:一演算法可最佳地保護該身份物件使用方式。一且 y身份物件之存取控制記錄提供其憑二 獲得該身份物件公開密鑰之命令。 口應於 當正在使用該身份物件以進 的經解密的資料係可能m f自射輸出 該主機係被鼓勵使用_透 乂…於此情況下, 建置之安全通道。4過可用之㈣、演算法之任一者所 田建立該身份物件時, 本。於-項實施例中,公開密擇鑰:鑰二以及。KCS#1版 1在鑰及私有岔鑰正在使用如 122364.doc -82- 200822669 PKCS#1 2·1版本定義之(指數,模數)表示。 於一項實施例中,於一身份物件建立期間所包含之資料 係具有所選長度的RSA密鑰對以及一憑證鏈,其係遞迴地 證明該公開密鑰之真實性。 擁有該身份物件之存取控制記錄將允許使用者資料的簽 名。此係透過兩個安全儲存應用程式命令而實施: •汉定使用者資料:提供一將被簽名之自由格式之資料 緩衝區。 •獲得安全儲存應用程式簽名··該卡將提供一 rsa簽名 (使用該存取控制記錄私有密鑰)。取決於該物件之類型, 可根據PKCS#1 1.5版本或2.1版纟來設定該簽名的格式及 大小。 使用身伤物件之操作係顯示於圖3 5-37,其中,該記 憶體裝置1〇係一快閃記憶體卡,且該卡係該身份物件之擁 有者。圖35係顯示—由該卡^名傳送給—主機之資料所實 之私序參照圖35,在-主機被鑑認之後(方塊8〇2),如 由上述才对狀結構之一即點處之一存取控制記錄所控制, 該卡係等待用於—憑證之-主機請求(菱形804)。在接收該 請求之後,該卡傳送該憑證,且返回菱形8()4,以用於下 一主機凊求(方塊806)。假如需 卡所擁有之该身份物件的公開 要傳送一憑證鏈以檢定由 密鑰’則重複上述動作, 該 直 到該憑證鏈内所有憑證 已經被傳送至該主機之 令(菱形808)。假如於一 已經被傳送至該主機。在每一憑證 <爰’該卡等待來自該主機之其他命 予員α又日夺期期間内未接收到來自該主 122364.doc -83 - 200822669 機的命令’則該卡返回菱形804。於接收來自該主機的資 料及一命令時,該卡檢查以看看是否該命令係用於簽名資 料(菱形810)。假如該命令係用於簽名資料,則該卡係以該 身份物件内之該私有密鑰簽名該資料,且接著傳送該經簽 名的資料至該主機(方塊812),且返回菱形8〇4。假如來自 該主機的命令係非用於簽名來自該主機的資料,則該卡使 用該身份物件内之該私有密鑰,以解密該接收到的資料 (方塊814),且返回菱形8〇4。 圖36顯示在該卡簽名之資料傳送給該主機時由該主機所 實施之程序。參照圖36 ,該主機傳送鑑認資訊給該卡(方 塊822)。在如上文之一樹狀結構之一節點處之一存取控制 記錄所控制之成功鑑認之後,該主機傳送請求至該卡以用 於憑證鏈,且接收該憑證鏈(方塊824)。在已經鑑認該卡之 該公開密鑰之後,該主機傳送資料給該卡以用於簽名,且 接收藉由該卡之私有密鑰所簽名之資料(方塊826)。 圖37係顯示當該主機使用該卡之公開密鑰解密資料且傳 送該經解密的資料至該卡時由該主機所實施之程序。參照 圖37,該主機傳送鑑認資訊給該卡(方塊862)。在成功實施 由一存取控制記錄控制之鑑認之後,該主機傳送請求給該 卡,以要求憑證鏈(方塊864),該憑證鏈係鑑認該身份物件 内該卡的公開密鑰所需的,且傳送請求至該卡,以要求資 料。在已4監認該身份物件内之該卡的該公開密鍮之後,該 主機使用該卡之經鑑認公開密鑰來加密來自該卡的資料, 且傳送其至該卡(方塊866,868)。 122364.doc -84- 200822669 查詢 主機及應用程式係需要持有關於其正—起工作以執行系 統操作之記憶體裝置或卡的某些資訊。舉例而言,主機及 應用程式可需要知道儲存於該記憶體卡上的哪些應用程式 係可供調用(invocation)。該主機所需之資訊有時候不是公 開的知識,其係意謂並非每一實體係具有擁有它的權利。 為了鑑別經授權與未經授權之使用者,需要提供一主機可 使用之兩種問方法。 般資訊查詢此查詢公佈系統公開資訊,而無限制。儲 存於該等記憶體裝置内之機密資訊包含兩個部分:一共用 部分及一非共用部分。該機密資訊的一部分包含可以對於 個另J只體為專屬的貧訊,使得每一實體應被允許僅存取其 自己的專屬貧訊’而不能夠存取其他實體的專屬機密資 訊。此種機密資訊類型係不被共用,且形成該機密資訊的 未共用部分。 f 通本被想成公開的某些資訊於某些情況下係可能被認為 機山的It如駐留於該卡内的應用程式之名稱及其生命週 期狀態。此之另一範例可係根存取控制記錄名稱,其被認 為A開的然而對於某些安全儲存應用程式使用情況而言 $以係機在的。對於這些情況而言,該系統應回應於一般 資訊查詢而接批_ , 選項’保持此資訊僅能由所有經鑑認的 I用者使用’然而係不能被未經鑑認的使用者使用。此類 胃訊構成該機③、貧訊的共用部分。該機密資訊的共用部分 的耗例可包含一根存取控制記錄清單,即目前出現於該 122364.doc -85- 200822669 裝置上的所有根存取控制記錄的清單。 透過该一般貧訊查詢來存取公開資訊係不需要該主機/ 使用者登入一存取控制記錄。因此,具有安全儲存應用程 式標準知識之任何實體可執行及接收該資訊。就安全儲存 應用程式而論,此查詢命令係在無一會期號碼之下被處 置。然而’假如期望由一實體存取該機密資訊的共用部 为,則需要首先透過控制存取該記憶體裝置内的資料之任 何控制結構(例如,任一存取控制記錄)來鑑認該實體。在 一成功鑑認之後,該實體將能夠透過一般資訊查詢而存取 該機密貧訊的該共用部分。如上文所說明,該鑑認程序將 導致用於存取之一安全儲存應用程式會期號碼或者ID。 谨慎貧訊查詢 關於個別存取控制記錄及其系統存取及資產的私有資訊 係被認為謹慎的,且需要明確鑑認。因此,此種查詢要求 在接收用於資訊查詢的授權之前,進行存取控制記錄登入 及鑑認(假如鑑認係由該存取控制記錄所指定)。此項查詢 係需要一安全儲存應用程式會期號碼。 在詳細敘述兩種類型查詢之前,首先敘述索引群組作為 一用於實施該等查詢之實務解決方案之觀念係將為有用 的。 索引群組 執行於可能的安全儲存應用程式主機上之應用程式係被 該主機上的作業系統及系統驅動程式要求指定意欲被讀取 之區段數。接著,此係意謂該主機應用程式需要知道對於 122364.doc -86 - 200822669 每一安全儲存應用程式讀取操作而言,需要讀取多少個區 段0 因為查詢操作的本冑旨在供應對於一請纟資訊的實體而 言通常係不知道的資訊,所以對於該主機應用程式而言, 發佈該查詢且猜測該操作所需之區段數係有困難的。"Parts are objects that can be created for any type of access control record. In an embodiment, the access control record can have only one object. The data signature and protection features are both secure storage applications. Cheng 2: Γ: The 4 level of the service object of any entity that can identify the access control record is the same as the login number of the access control record. The material is tied to have the identity object. - Access Control =, any authentication algorithm can be selected. Build: Estimate: An algorithm can best protect the identity object usage. The access control record of the identity object provides the second The order of the identity object public key. The mouth should be in the decrypted data when the identity object is being used. It may be mf self-emerging output. The host system is encouraged to use _ transparent... In this case, the secure channel is established. (4) When any of the algorithms (4) and the algorithm are used to establish the identity object, in the embodiment, the secret key is selected: key two and KCS#1 version 1 in the key and private key Being used as 122364.doc -82- 2008 22669 PKCS#1 (index, modulo) representation defined by version 2. 1 In one embodiment, the data contained during the establishment of an identity object has an RSA key pair of a selected length and a credential chain. It recursively proves the authenticity of the public key. The access control record with the identity object will allow the signature of the user data. This is implemented through two secure storage application commands: • Hanting user data : Provide a free-form data buffer to be signed. • Obtain a secure storage application signature. · The card will provide an rsa signature (using the access control to record the private key). Depending on the type of object, The format and size of the signature are set according to PKCS#1 version 1.5 or version 2.1. The operation system for using the body injury object is shown in Fig. 3 5-37, wherein the memory device 1 is a flash memory card. And the card is the owner of the identity object. Figure 35 shows that the private order of the data transmitted from the card to the host is shown in Figure 35, after the host is authenticated (block 8〇2), As mentioned above One of the structures is controlled by one of the access control records, the card is waiting for the -voucher-host request (diamond 804). After receiving the request, the card transmits the voucher and returns to diamond 8 ( 4) for the next host solicitation (block 806). If the disclosure of the identity object owned by the card is to transmit a voucher chain to verify the key', then repeat the above actions until the voucher chain The voucher has been transmitted to the host (diamond 808). If one has been transmitted to the host, each voucher <爰' the card waits for other ambassadors from the host to regain the period The command from the main 122364.doc -83 - 200822669 machine was not received' then the card returns to diamond 804. Upon receiving the data from the host and a command, the card checks to see if the command is for signature information (diamond 810). If the command is for signature material, the card signs the material with the private key in the identity object, and then transmits the signed material to the host (block 812) and returns to diamond 8.4. If the command from the host is not used to sign material from the host, the card uses the private key in the identity object to decrypt the received data (block 814) and returns to diamond 8.4. Figure 36 shows the procedure implemented by the host when the card signed data is transferred to the host. Referring to Figure 36, the host transmits authentication information to the card (block 822). After successful authentication controlled by one of the access control records at one of the nodes of one of the tree structures above, the host transmits a request to the card for use in the credential chain and receives the credential chain (block 824). After the public key of the card has been authenticated, the host transmits the data to the card for signing and receives the information signed by the private key of the card (block 826). Figure 37 is a diagram showing the procedure implemented by the host when the host decrypts the material using the card's public key and transmits the decrypted material to the card. Referring to Figure 37, the host transmits authentication information to the card (block 862). After successfully implementing authentication by an access control record control, the host transmits a request to the card to request a credential chain (block 864) that identifies the public key of the card within the identity object. And send a request to the card to request information. After having 4 acknowledged the public key of the card in the identity object, the host encrypts the data from the card using the card's authenticated public key and transmits it to the card (blocks 866, 868). ). 122364.doc -84- 200822669 Query Host and application systems need to hold certain information about the memory device or card they are working on to perform system operations. For example, hosts and applications may need to know which applications stored on the memory card are invocation. The information required by this host is sometimes not publicly available, which means that not every real system has the right to own it. In order to authenticate authorized and unauthorized users, it is necessary to provide two methods that can be used by the host. General Information Query this query to publish system public information without restriction. The confidential information stored in the memory devices consists of two parts: a shared part and a non-shared part. A portion of this confidential information contains a message that is exclusive to each other, so that each entity should be allowed to access only its own proprietary poor business' without accessing proprietary confidential information of other entities. Such confidential information types are not shared and form an unshared portion of the confidential information. f Some of the information that is considered to be public is in some cases may be considered as the name of the machine, such as the name of the application residing in the card and its life cycle state. Another example of this is the root access control record name, which is considered A-open but is available for some secure storage application usage. For these cases, the system should receive a batch _ in response to a general information query. The option 'keep this information available only to all authenticated users.' However, it cannot be used by unidentified users. This kind of stomach news constitutes the common part of the machine 3, the poor news. The consumption portion of the shared portion of the confidential information may include a list of access control records, i.e., a list of all root access control records currently present on the 122364.doc -85-200822669 device. Accessing the public information through the general poor query does not require the host/user to log in to an access control record. Therefore, any entity with knowledge of secure storage application standards can execute and receive this information. In the case of a secure storage application, this query command is placed under a no-session number. However, if it is desired that the shared portion of the confidential information is accessed by an entity, the entity must first be authenticated by any control structure (eg, any access control record) that controls access to the data within the memory device. . After a successful authentication, the entity will be able to access the shared portion of the confidential information through general information enquiries. As explained above, the authentication procedure will result in accessing one of the secure storage application session numbers or IDs. Prudentially poor queries Private information about individual access control records and their system access and assets is considered prudent and requires explicit identification. Therefore, such a query requires access control record entry and authentication (if the authentication is specified by the access control record) before receiving the authorization for the information inquiry. This query requires a secure storage application session number. Before describing two types of queries in detail, it would be useful to first describe the concept of index groups as a practical solution for implementing such queries. Index Group The application executed on the possible secure storage application host is specified by the operating system and system driver requirements on the host. Next, this means that the host application needs to know how many segments 0 need to be read for each secure storage application read operation of 122364.doc -86 - 200822669 because the query operation is intended to supply An entity that asks for information is usually information that is not known, so it is difficult for the host application to publish the query and guess the number of segments required for the operation.

為了解決此問題,該安全儲存應用㈣查詢輸出緩衝區 僅包含每-查詢請求-區段(512位元組)。為輸出資訊的一 部分之物件係組織於稱為索引群組之中。每—類型物件可 具有一不同的位元組大小,其係考慮到可以適配於一單一 區段之物件數。此定義該物件之索引群組。假如一物件具 有-20個位元組的大小,則用於該物件之索引群植將含^ 至多25個物件。假如總共有56個此類物件,則其將已經被 組織成3個索引群組,其中,物件,,〇"(第一物件)起始第一 索引群組,物件"25"起始第二索引群組且物件"5〇>始: 三且為最後索引群組。 系統查詢(一般資訊查詢) 此查詢提供關於該裝置内之該支援安全儲存應用程式系 統及被設定之目前的系統之一般公開資訊,像是執行於該 裝置上之不同的樹及應用程式。類似於下文所述之 制記錄查詢(謹慎查詢)’該系統查詢經結構化以 : 查詢選項: 歎個 •一般的-安全儲存應用程式支援版本 現於該裝置上之所有安全 包含其之執行狀態。 •安全儲存應用程式-目前出 儲存應用程式之應用程式清單, 122364.doc -87- 200822669 ι 、貝成糸公開資訊。如同該存取控制記錄查 „ ’為了使主機不需要知道對於該查詢輸出緩衝區待讀取 多=區段,將有-自該裝置傳回的區段,同時仍然使該 主機能夠進一步查詢額外的索彳丨 ,^ 家引群組。因此,假如根存取 控制記錄物件之數| 件之K過用於索引群組” G,,之輸出緩衝區 大小的數1,則該主機可以接來 -查詢請求。 帛下來的索引群組,,i"傳送另 Ο \ 存取控制記錄查詢(謹慎資訊查詢) 該安全儲存應用程式存取栌击 己錄查詢命令意欲供應該 存取控制記錄使用者關於該存 仔取控制圯錄之系統資源的資 汛,像是密鑰及應用程式出, 梓 W 刀副£及子代存取控制記 錄。该查詢資訊係僅關於登入存 ,,u ^ > 讦取徑制5己錄且非關於該系 、、先樹上之其他存取控制記錄。 換句活說,存取係限於僅僅 在牵涉到的存取控制記錄之權 分。 〈權限下可存取的機密資訊的部 使用者可查詢下列二個尤 * —個不冋的存取控制記錄物件: •分割區-名稱及存取權(擁有者,讀取,寫入卜 •密鑰ID及應用程式ID义 皆、 飞名%及存取權(擁有者,讀取, 馬入)〇 子代存取控制記錄-- 星接子代存取控制記錄的存取 控制圮錄及存取控制記錄群組名稱。 身份物件及安全資料你彳生 . 枓物件(下文敘述)_名稱及存取權 (擁有者,讀取,寫入)。 因為與一存取控制記錄遠 坏逑接之物件數量係可以改變,且 122364.doc -88- 200822669 該資:係可能超過512個位元組(一區段)。在未事先知道物 件數里之下,该使用者無法知道需要自該裝置内之該安全 儲存應用程式系統讀取多少個區&,以獲得全部的清單。 因此,由該安全儲存應用程式系統所提供之每一物件清單 係被分割成為若干索引群組,其係類似於上述系統查詢之 情況。一索引群組係適配於一區段的物件數量,亦即可自 該l置内之安全儲存應用程式系統於一區段内傳送多少個 物件至該主機。此使該裝置内之該安全儲存應用程式系統 傳送一被請求的索引群組之一區段。該主機/使用者將接 收該等被查詢物件之一緩衝區,該緩衝區内之物件數量。 假如該緩衝區係滿的,則該使用者可查詢下一物件索引群 組0 圖38顯示一牵涉到一般資訊查詢之操作的流程圖。參照 圖38,當該安全儲存應用程式系統接收來自一實體的一般 資訊查詢(方塊902)時,該系統決定是否該實體已經被鑑認 (菱形904)。假如該實體已經被鑑認,則該系統向該實體供 應公開資訊及該機密資訊之共用部分(方塊9〇6)。假如其該 實體尚未被鑑認,則該系統向該實體供應僅公開資訊(方 塊 908)。 圖39顯示一牵涉到一謹慎資訊查詢之操作的流程圖。參 照圖39,當該安全儲存應用程式系統係接收來自一實體的 一謹慎資訊查詢(方塊922)時,該系統決定是否該實體已經 被鑑認(菱形924)。假如該實體已經被鑑認,則該系統向該 實體供應機密資訊(方塊926)。假如該實體尚未被鑑認,則 122364.doc -89- 200822669 該系統係拒絕該實體存取機密資訊(方塊928)。 特徵組延伸(FSE) 於許多情況下’於該卡上執行該安全儲存應用程式内的 資料處理活動(例如,DRM使用權物件確認)係非常有利 的。相對於所有資料處理工作係於該主機上執行之替代解 決方案,該所得系統係將為更安全的,更有效率的,且較 不依賴於主機。 該安全儲存應用程式安全性系統包含 ----- 組趣硌廣异沄及 授權原則,其係設計成控制存取及使用由該記憶體卡所儲 存、管理及保護的物件之集合。一旦一主機獲得存取權, 該主機將接著處理健存於該記憶體裝置内之資料,立中, 存取該記憶體裝置係受控於該安全儲存應用程式。然而, 假設該㈣本質麵常應用程式特定的,且㈣,該資料 格式及貝料處理係皆非定義於該安全儲存制程式之中, 該安全儲存應用程式不處理儲存於該等裝置上的資料。 =相之:項實施㈣輯w··料全儲存應用 二=、、=被增強,以允許主機執行通常由該 之主機所實施之一些功能。因此,該等主機之 : 用程式可被分割成為兩個部分 一旱體應 分;以及現在由該卡實施之 式’此增強資料處理的安全性及效率。為了力程 入一稱為特徵組延伸之機制 飞加 之能力。在本文中,由該卡以此全儲存應用程式 内的主機應用程式亦稱為内部^執行之特徵組延伸 應用私式,或裝置内部應用 122364.doc 200822669 程式。 该增強的安全儲存應用程式系統提供一種延伸基本安全 儲存應用程式命令組的機制,其係透過導人卡制程式而 提供該卡之鑑認及存取控制。—卡應用程式被假設為亦實 施除了該安全儲存應用程式之服務以外的服務(例如, DRM機制’電子商務交易)。該安全儲存應用程式特徵組 延伸係一種没什成增強具有資料處理軟體/硬體模組之標 準安全儲存應用程式安全性系統的機制,其可以係專屬 的。除了能夠使用上述查詢獲得的資訊之外,由該安全儲 存應用程式特徵組延伸系統所定義之服務使主機裝置能夠 查詢該卡,以用於可用之應用程式,選擇及與一特定應用 程式通訊。上述之-般查詢及謹慎查詢係可以使用於此目 的。 使用兩種延伸卡之安全儲存應用程式特徵組延伸内特徵 組之方法: •提供服務-實現此特徵之方式為,透過允許經授權實 體使用-稱為通訊管道(pipe)之命令通道直接與該内部應 用程式通訊,該通訊管道可以係專屬的。 •女全儲存應用程式標準存取控制原則的延伸—實現此 特徵之方式為透過使内部的受保護資料物件(例如,内容 加㈣鑰、下文敘述之安全資料物件(SD〇))相關聯於内部 卡應用程式。每當此類物件被存取時,假如滿足所定義之 標準的安全儲存應用程式原則,則調用相關聯的應用程 式,藉此除了利用該等標準的安全儲存應用程式原則之 122364.doc -91 · 200822669 外,還利用至少一條杜。卜 条件較^地’該條件將不與該等標準 的安王儲存應用私式原則衝突。只有亦滿足在此額外的條 件之f月況了彳授予存取。在進—步詳細說明該特徵組延 伸之能力之前,現在將說明特徵組延伸以及該通訊管道及 與全資料物件之架構態樣。 女全服務模組(SSM)及相關模組 圖40A係0己j思體裝置1〇(諸如一快閃記憶體卡)連接至 -主機裝置24的系統架構_之功能方塊圖,以闡釋本發 明之-項實施例。該卡2G之該記憶體裝置内的軟體模組之 主要組件如下: 安全儲存應用程式傳輸層1〇〇2 該安全儲存應用程式傳輸層係卡協定相依的。其處置該 卡10之該協定層上之主機端安全儲存應用程式請求(命 令)’且接著將其中繼至安全服務模組AP]^所有主機-卡 同步化及安全儲存應用程式命令識別係於此模組内實施。 該傳輸層亦係負責主機24與卡1〇之間所有資料傳送。 安全服務模組核心1004 此模組係該安全儲存應用程式實施方案之一重要的部 分。該安全服務模組核心實施該安全儲存應用程式架構。 更明確言之,該安全服務模組核心實施該安全儲存應用程 式樹及存取控制記錄系統以及組成該系統之所有上述對= 規則。該安全服務模組核心模組使用一密碼編譯庫MU, 以支援該安全儲存應用程式安全性及密碼編譯特徵,諸如 加密、解密及雜湊。 122364.doc -92- 200822669 安全服務模組核心API 1006 此係主機及内部應用程式將介接於該安全服務模組核心 以實行安全儲存應用程式操作之層。如示於圖4〇a,主機 24及裝置内部應用程式1〇 1〇將使用相同的Αρι。 安全性應用程式管理員模組(SAMM) 1008 女全性應用程式管理員模組非屬該安全儲存應用程式系 統之部分’然而其係控制介接於該安全儲存應用程式系統 之裝置内部應用程式之卡内的一重要的模組。 該安全性應用程式管理員模組管理所有裝置内部執行中 之應用程式,其包含: 1 ·應用程式生命週期監視及控制。 2.應用程式初始化。 3·應用程式/主機/安全服務模組介面。 裝置内部應用程式1 0 1 〇 裝置内部應用程式係經准許於該卡端上執行之應用程 式。彼等裝置内部應用程式係被安全性應用程式管理員模 組所管理,且係可存取該安全儲存應用程式系統。該安全 服務模組核心亦提供該等主機端應用程式與該等内部應用 程式之間之一通訊管道。用於此類内部執行應用程式之範 例係DRM應用程式及單次密碼(〇ne time 卿; 〇Tp) 應用程式,如下文作進一步說明。 裝置管理系統(DMS)lOl 1 此模組含有在一後裝運(通常稱為後發佈)模式中更新該 卡之系統及應用程式韌體以及增加/移除服務所需之處理 122364.doc -93- 200822669 程序及協定。To solve this problem, the secure storage application (4) query output buffer contains only per-query request-segments (512 octets). Objects that are part of the output information are organized into groups called index groups. Each type of object can have a different byte size, taking into account the number of objects that can be adapted to a single segment. This defines the index group for this object. If an object has a size of -20 bytes, the index cluster for that object will contain up to 25 objects. If there are a total of 56 such objects, it will have been organized into 3 index groups, where the object, 〇" (first object) starts the first index group, and the object "25" The second index group and the object "5〇> start: three is the last index group. System Enquiry (General Information Enquiry) This inquiry provides general public information about the supported secure storage application system and the current system being set up in the device, such as different trees and applications executing on the device. Similar to the record query (careful query) described below' The system query is structured to: Query options: Sigh • General - Secure Storage Application Support Version All security currently on the device contains its execution status . • Secure Storage Application - A list of applications that currently store applications, 122364.doc -87- 200822669 ι, and Bechengwei public information. As the access control record checks, 'in order for the host to not need to know more about the query output buffer to be read = section, there will be - the segment returned from the device, while still enabling the host to further query additional So, the home group can be connected. Therefore, if the number of root access control records is too large for the index group "G," the output buffer size is 1, the host can be connected. Come - query request. The index group that has been smashed down, i"transfers another Ο\access control record query (careful information query) The secure storage application access sniper record query command is intended to supply the access control record user about the deposit Take control of the resources of the system resources, such as the key and application, 梓W knife and child access control records. The query information is only about login, u ^ > 径 径 5 has recorded and other access control records on the system, first tree. In other words, access is limited to the rights of the access control records only involved. Users of the confidential information that can be accessed under the authority can query the following two special access control record objects: • Partition-name and access rights (owner, read, write • Key ID and application ID meaning, flying name % and access rights (owner, read, horse entry) 〇 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代 代And access control record group name. Identity object and security data you are born. 枓 Object (described below) _ name and access rights (owner, read, write). Because it is far worse than an access control record The number of connected objects can be changed, and 122364.doc -88- 200822669 This asset may be more than 512 bytes (one segment). The user cannot know the need without knowing the number of objects in advance. How many zones &amps are read from the secure storage application system in the device to obtain a full list. Therefore, each object list provided by the secure storage application system is divided into several index groups. Its system is similar to the above In the case of an inquiry, an index group is adapted to the number of objects in a section, that is, how many objects are transferred to the host in a section from the secure storage application system in the location. The secure storage application system transmits a segment of the requested index group. The host/user will receive a buffer of the object being queried, the number of objects in the buffer. If the system is full, the user can query the next object index group. Figure 38 shows a flow chart of the operation involving the general information query. Referring to Figure 38, when the secure storage application system receives general information from an entity. Upon query (block 902), the system determines if the entity has been authenticated (diamond 904). If the entity has been authenticated, the system supplies the entity with the public information and the shared portion of the confidential information (block 9〇) 6) If the entity has not been authenticated, the system supplies the entity with only public information (block 908). Figure 39 shows a flow diagram involving an operation of a cautious information query. Referring to Figure 39, when the secure storage application system receives a cautious information query from an entity (block 922), the system determines if the entity has been authenticated (diamond 924). If the entity has been authenticated, The system then provides confidential information to the entity (block 926). If the entity has not been authenticated, then 122364.doc -89- 200822669 the system denies the entity access to confidential information (block 928). Feature Group Extension (FSE) In many cases, it is advantageous to perform data processing activities within the secure storage application (eg, DRM usage rights object confirmation) on the card. An alternative solution is performed on the host relative to all data processing operations. The solution, the resulting system will be more secure, more efficient, and less dependent on the host. The Secure Storage Application Security System consists of a group of interesting and authoritative principles designed to control access to and use of a collection of objects stored, managed and protected by the memory card. Once a host gains access, the host will then process the data stored in the memory device, and the access to the memory device is controlled by the secure storage application. However, assuming that the (4) essence is often application specific and (4), the data format and the bedding processing system are not defined in the secure storage system, the secure storage application does not process the storage on the device. data. = phase: item implementation (four) series w · · full storage application 2 =, , = is enhanced to allow the host to perform some of the functions normally implemented by the host. Therefore, the host: the program can be divided into two parts, a dry body; and now implemented by the card, which enhances the security and efficiency of data processing. In order to force the ability to fly into a mechanism called feature group extension. In this paper, the card is used to store the host application in the application, which is also called the internal feature group extension application private, or the device internal application 122364.doc 200822669 program. The enhanced secure storage application system provides a mechanism for extending the basic secure storage application command set, which provides authentication and access control of the card through a guide card program. The card application is assumed to also implement services other than the services of the secure storage application (e.g., DRM mechanism 'e-commerce transactions). The Secure Storage Application Feature Group extension is a mechanism that does not enhance the standard security storage application security system with data processing software/hardware modules, which can be proprietary. In addition to the information that can be obtained using the above query, the service defined by the secure storage application feature set extension system enables the host device to query the card for available applications, select and communicate with a particular application. The above-mentioned general query and cautious inquiry can be used for this purpose. A method of using two extended cards to securely store an application feature set to extend an intra-feature group: • Provide a service - this feature is achieved by allowing the authorized entity to use a command channel called a pipe directly Internal application communication, the communication pipeline can be proprietary. • Extension of the standard access control principle for female full storage applications - this feature is achieved by associating internal protected data objects (eg, content plus (four) keys, security data objects (SD〇) described below) Internal card application. Whenever such an object is accessed, if the secure storage application principle of the defined criteria is met, the associated application is invoked, in addition to using the standard secure storage application principles 122364.doc -91 · In addition to 200822669, at least one du is also utilized. The conditions are better than the conditions. The condition will not conflict with the standard of the Angkor storage application. Access is granted only if the additional conditions are met. Before proceeding with further details on the ability of the feature set to extend, the feature set extension and the architectural aspects of the communication pipeline and the full data object will now be described. Female full service module (SSM) and related module diagram 40A is a functional block diagram of the system architecture of the host device 24 (such as a flash memory card) to explain this Invention - Item Embodiment. The main components of the software module in the memory device of the card 2G are as follows: Secure Storage Application Transport Layer 1〇〇2 The Secure Storage Application Transport Layer is card-dependent. It handles the host-side secure storage application request (command) on the protocol layer of the card 10 and then relays it to the security service module AP] ^ all host-card synchronization and secure storage application command identification is Implemented within this module. The transport layer is also responsible for all data transfer between the host 24 and the card. Security Services Module Core 1004 This module is an important part of this secure storage application implementation. The security service module core implements the secure storage application architecture. More specifically, the security service module core implements the secure storage application tree and access control record system and all of the above pairs of rules that make up the system. The security service module core module uses a cryptographic compilation library MU to support the secure storage application security and cryptographic compilation features such as encryption, decryption and hashing. 122364.doc -92- 200822669 Security Service Module Core API 1006 This host and internal application will be interfaced to the core of the security service module to implement a secure storage application layer. As shown in Fig. 4A, the host 24 and the internal application 1〇1〇 will use the same Αρι. Security Application Administrator Module (SAMM) 1008 The Female Full Application Administrator Module is not part of the Secure Storage Application System. However, it controls the internal application of the Secure Storage Application System. An important module within the card. The security application manager module manages all of the internal applications of the device, including: 1 • Application lifecycle monitoring and control. 2. Application initialization. 3. Application/host/security service module interface. Device Internal Application 1 0 1 装置 The internal application of the device is approved for execution on the card. Their internal applications are managed by the Security Application Administrator module and are accessible to the Secure Storage Application System. The core of the security service module also provides a communication channel between the host applications and the internal applications. The examples for such internal execution applications are the DRM application and the single-password (〇T time) application, as further explained below. Device Management System (DMS)101 This module contains the system and application firmware for updating the card in a post-shipment (commonly referred to as post-release) mode and the processing required to add/remove services. 122364.doc -93 - 200822669 Procedures and agreements.

圖40B係該安全服務模組核心丨〇〇4之内部軟體模組之功 能方塊圖。如示於圖40B,核心1〇〇4包含一安全儲存應用 矛王式命令處理常式(command ]^ηο^Γ)1022。處理常式1022 係於命令被傳送至該安全儲存應用程式管理員1〇24之前, 剖析起源於該主機或起源於該裝置内部應用程式1〇1〇的該 等安全儲存應用程式命令。所有安全儲存應用程式安全性 資料結構(諸如存取控制記錄群組及存取控制記錄)以及所 有安全儲存應用程式規則及原則係儲存於該安全儲存應用 私式資料庫1026之中。安全儲存應用程式管理員1〇24實行 由該等存取控制記錄及存取控制記錄群組以及儲存於資料 庫1026内之其他控制結構所行使之控制。其他物件(諸如 身份物件)以及安全資料物件亦係儲存於該安全儲存應用 私式資料庫1026之中。安全儲存應用程式管理員實行 由該等存取控制記錄及存取控制記錄群組以及儲存於資料 庫1026内之其他控制結構所行使之控制。由該安全儲存應 用程式非安全操作模組1028處置不牵涉到安全儲存應用程 式之非安全操作。由該安全儲存應用程式安全操作模組 1030處置在該安全儲存應用程式架構下的安全操作。模組 1032係一連接模組1030至該密碼編譯庫1〇12之介面。模組 1034係一連接模組1〇26及1028至圖1中該快閃記憶體2〇之 層0 通訊(或傳遞(Pass-Through))管道 當由該安全服務模組核心及安全性應用程式管 122364.doc -94- 200822669Figure 40B is a functional block diagram of the internal software module of the core module 4 of the security service module. As shown in Fig. 40B, the core 1〇〇4 includes a secure storage application spear-type command processing routine (command)^ηο^Γ) 1022. The processing routine 1022 analyzes the secure storage application commands originating from the host or originating from the internal application of the device before the command is transmitted to the secure storage application administrator. All secure storage application security data structures (such as access control record groups and access control records) and all secure storage application rules and principles are stored in the secure storage application private database 1026. The secure storage application manager 1 24 performs the control exercised by the access control record and access control record groups and other control structures stored in the database 1026. Other items (such as identity items) and security data items are also stored in the secure storage application private database 1026. The secure storage application administrator performs the control exercised by the access control record and access control record groups and other control structures stored in the database 1026. The non-secure operation of the secure storage application is handled by the secure storage application non-secure operating module 1028. The secure storage application security operating module 1030 handles security operations under the secure storage application architecture. The module 1032 is an interface between the connection module 1030 and the cryptographic compilation library 〇12. The module 1034 is a connection module 1〇26 and 1028 to the layer 0 communication (or Pass-Through) pipeline of the flash memory 2 in FIG. 1 when the security service module core and security application are used. Program tube 122364.doc -94- 200822669

控制時,該等傳遞管道物件使經授權主機端之實體能夠與 該等内部應用程式通訊。介於該主機與該内部應用程式之 間之資料傳送係透過SEND& RECEIVE命令(定義如下)而 實行。實際的命令係應用程式特定的。建立該管道之該實 體(存取控制記錄)將需要提供該管道名稱及將開啟一通道 至其之應用程式的ID。如同具有所有其他受保護物件,該 存取控制記錄係變成其擁有者,且被允許根據標準的委Z 規則及限制而委派使用權利以及擁有權給其他存取控制記 錄。 假如在被鑑認實體之存取控制記錄屬性管理中設定 CREATE_PIPE權限,則一該被鑑認實體將被允許建立管 道物件。只有於該實體之權限控制記錄中設定在寫入或讀 取管道權限之情況下,才允許與内部應用程式之通訊。只 有在該實體係該管道擁有者或於該實體之權限控制記錄中 設定委派存取權之情況下,才允許擁有權及存取權委派。 如同所有其他權限,當委派擁有權給另一存取控制記錄 時,較佳地,剝除該原始擁有者對於該裝置應用程式之所 有權限。 較佳地,對於一特定應用程式,建立僅一通訊管道。較 佳地,建立一第二管道及連接該第二管道至一已經連接之 應用程式之嘗試將被該安全服務模組系統1000所拒絕。因 此,較佳地,介於該等裝置内部應用程式1010之一者與一 通訊管道之間係有1對1之關係。然而,多個存取控制記錄 可與一裝置内部應用程式通訊(透過委派機制)。一單一 122364.doc -95- 200822669 取控制記錄可與數個裝置應用程式通訊(透過連接至不同 應用程式之多個管道之委派或擁有權)。較佳地,控制不 同的官道之存取控制記錄係位於完全分離的樹之節點上, 使得該等通訊管道之間係無串擾。 介於該主機與一特定應用程式之間傳送資料係使用下列 命令而實行: • WKITE PASS THROUGH(寫入傳遞)-將自該主機傳送 一未格式化的資料緩衝區至該裝置内部應用程式。 • KEAD PASS THROUGH(讀取傳遞)_將自該主機傳送一 未格式化的資料緩衝區至該裝置内部應用程式,且一旦該 内部處理係完成,將輸出一未格式化的資料緩衝區回到該 主機。 寫入傳遞命令及讀取傳遞命令提供主機想要通訊之裝置 内部應用程式1010之1£>作為參數。該實體權限將被確認, 且假如該請求實體(亦即,主控該實體正在使用之會期之 存取控制記錄)具有使用連接至該被請求應用程式之管道 的權限’貝“亥貧料緩衝區將被中斷,且命令被執行。 此通訊方法係允許該主機應用程式透過該安全儲存應用 私式存取控制記錄會期通道傳送廠商/專屬的特定命令至 一裝置内部應用程式。 安全資料物件(SDO) 月b夠結合特徵組延伸而被使用之有用的物件係 料物件。 胃 口亥女王貝料物件係作為_用於安全儲存敏感資訊的一般 122364.doc -96- 200822669When controlled, the transfer pipeline objects enable entities of the authorized host to communicate with the internal applications. Data transfer between the host and the internal application is performed via the SEND& RECEIVE command (defined below). The actual commands are application specific. The entity that establishes the pipe (access control record) will need to provide the pipe name and the ID of the application to which a channel will be opened. As with all other protected objects, the access control record becomes its owner and is allowed to delegate usage rights and ownership to other access control records in accordance with standard Z rules and restrictions. If the CREATE_PIPE privilege is set in the access control record attribute management of the authenticated entity, then the authenticated entity will be allowed to create a pipe object. Communication with internal applications is allowed only if the authority to write or read pipes is set in the entity's permission control record. Ownership and access delegation are allowed only if the pipeline owner of the real system or delegate access is set in the entity's privilege control record. As with all other rights, when the ownership is delegated to another access control record, preferably the original owner has the exclusive right to the device application. Preferably, for a particular application, only one communication conduit is established. Preferably, an attempt to establish a second conduit and connect the second conduit to an already connected application will be rejected by the secure service module system 1000. Therefore, preferably, there is a one-to-one relationship between one of the device internal applications 1010 and a communication pipe. However, multiple access control records can be communicated to an internal application (through a delegation mechanism). A single 122364.doc -95- 200822669 Control Record can communicate with several device applications (through delegation or ownership of multiple pipes connected to different applications). Preferably, the access control records that control different official channels are located on nodes of a completely separate tree such that there is no crosstalk between the communication pipes. Transferring data between the host and a particular application is performed using the following commands: • WKITE PASS THROUGH - An unformatted data buffer will be transferred from the host to the internal application of the device. • KEAD PASS THROUGH will transfer an unformatted data buffer from the host to the internal application of the device, and once the internal processing is complete, an unformatted data buffer will be output back. The host. The write transfer command and the read transfer command provide the device that the host wants to communicate with. The internal application 1010 is a parameter. The entity privilege will be confirmed, and if the requesting entity (ie, the access control record hosting the session in use by the entity) has the right to use the pipe connected to the requested application, The buffer will be interrupted and the command executed. This communication method allows the host application to transmit the vendor/specific specific commands to an internal application via the secure storage application private access control session channel. Object (SDO) Month b is a useful object to be used in conjunction with the extension of the feature set. The appetite of the Queen of the Moon is used as a general information for the safe storage of sensitive information. 122364.doc -96- 200822669

用途容器。類似於内容加密密鑰物件,其係由一存取控制 記錄擁有,且可於存取控制記錄之間委派存取權及擁有 權。安全貝料物件含有根據預先定義的原則限制而被保護 及使用之資料,且可選擇地,*有至一裝置内職用程式 1010之連結。較佳地,該敏感資料非係由該安全儲存應用 程式系統予以使用或解譯,而是由該物件之擁有者及使用 者所使用或解譯。換句話說,該安全儲存應用程式系統不 辨明其所處置之資料内的資訊。以此方式,t於主機盘該 等資料物件之間傳送資料時,該物件内之該資料的擁有者 及使用者可較不關^歸目於介接於該安全儲存應用程式系 統所造成的敏感資訊之損失。因此,安全資料物件係由該 主機系統(或内部應用程式)所建立,且被指派一串ID,類 似於建立内容加密密錄之方式。於建立時,該主機係除了 提供名稱之外,亦提供經連結至該安全資料物件之應用程 式之-應用程式ID及將被該安全儲存應用程式儲存、完整 性鑑認及接收之一資料區塊。 王 類似於内容加密密鑰’安全資料物件較佳地係僅於一安 全儲存應用程式會期内予以建立。用於開啟該會期之存取 控制記錄變成該安全資料物件之擁有者,且係具有刪㈣ 安全資料物件之權利、寫人及讀取敏感資料以及委派財 :及存取該安全資料物件之權限給另一存取控制記錄(為 /、之子代或於相同的存取控制記錄群組之内)。 該等寫入及讀取操作係專門為該安全資料物件之擁有者 所保留。—寫人操作用,提供的資料緩衝區來覆寫現有安 122364.doc -97· 200822669 讀取操作將擷取該安全資料物 全資料物件之物件資料。 件之完整的資料記錄。 允許/、有適田存取權JI艮的非擁有者存取控制記錄進行安 全資料物件存取操作係。定義下列操作: SDO Set(女全資料物件設定),應用程式①被定義·· 將由具有該應用程式ID之該内部安全健存應用程式處理該 資料。藉由相關聯於該安全資料物件而調用該應用程式。 作為-選用結果,該應用程式將寫人該安全資料物件。 • SDO Set(安全資料物件設定),應用程式①係空值 (null) ·此選項益效,曰腺 — • 文且將k不一不合法命令錯誤。該Set 命令需要-執行於該卡内的内部應用程式。Use container. Similar to a content encryption key object, it is owned by an access control record and can delegate access and ownership between access control records. Safety beakers contain information that is protected and used in accordance with pre-defined principles and, optionally, * has a link to a device 1010. Preferably, the sensitive material is not used or interpreted by the secure storage application system, but is used or interpreted by the owner and user of the object. In other words, the secure storage application system does not identify the information in the data it disposes. In this way, when the data is transferred between the data objects on the host disk, the owner and user of the data in the object can be less concerned with the connection to the secure storage application system. Loss of sensitive information. Therefore, the secure data object is created by the host system (or internal application) and assigned a string of IDs similar to the way in which content encryption is created. At the time of establishment, in addition to providing the name, the host also provides an application ID linked to the secure data object and a data area to be stored, integrity authenticated and received by the secure storage application. Piece. Wang is similar to the content encryption key. The security data object is preferably created only during a secure storage application session. The access control record used to open the session becomes the owner of the secure data object, and has the right to delete (4) security data objects, write and read sensitive information, and delegate money: and access to the security data object. Permissions are given to another access control record (either a child of /, or within the same access control record group). These write and read operations are reserved exclusively for the owner of the secure data item. - for the human operation, the provided data buffer to overwrite the existing security. 122364.doc -97· 200822669 The read operation will retrieve the security data from the full data object. The complete data record of the piece. The non-owner access control record of the SHI艮 access right JI艮 is allowed to perform the security data object access operation system. The following operations are defined: SDO Set, Application 1 is defined • The data will be processed by the internal secure application with the application ID. The application is invoked by being associated with the secure data object. As a result of the selection, the application will write the safety data object. • SDO Set (safe data object setting), application 1 is null (null) • This option is beneficial, and the gland is – and the k is not legal command error. The Set command needs to be executed on the internal application of the card.

Get(安全貝料物件獲得),應用程式⑴被定義: =由,有該應用程式! D之該裝置内部應用程式處理該請 …猎由相關聯於該安全資料物件而調用該應用程式。輸 出(《未被定義)將被傳回該請求者。該應用程式將可選 擇地項取該安全資料物件。 、.SD〇如(安全資料物件獲得),應用程㈣係空值: 此k項無效,且將提示—不合法命令錯誤。該⑽命令需 要執行於該卡内的内部應用程式。 ㈣件相關權限:—存取控制記錄可以係 全資料物件擁有者式σ 9 文 者取權限(Set,Get,或者兩 ,一存取控制記錄可被允許傳遞對於非其擁有 料物件的存取權至另―存取控制記錄。假如-^子 二'°己錄具有存取控制記錄屬性管理權限,Μ該存取控 122364.doc -98- 200822669 制記錄係可以明確地被准許建立安全資料物件且委派存取 權。 内部存取控制記錄 内部存取控制記錄類似於具有一權限控制記錄的任何存 取控制記錄,惟該裝置10之外部的實體無法登入該存取控 制記錄除外。而是,當在圖40B之該安全儲存應用程式管 理員1024之控制下的物件或相關聯於其之應用程式被調用 時,圖40B之該安全儲存應用程式管理員1〇24自動登入該 内部存取控制記錄。因為嘗試獲得存取之實體係一該卡或 記憶體裝置内部的實體,所以係不需要鑑認。該安全儲存 應用程式管理員1〇24將僅傳送一會期密鑰至該内部存取控 制記錄,以啟用内部通訊。 將使用兩個範例顯示特徵組延伸之能力:單次密碼產生 及數位權管理。在敘述單次密碼產生之範例之前,首先將 說明雙因素鑑認之發佈。 單次密碼之實施例 i 雙因素鑑認(DFA) 雙因素鑑認係一項鑑認協定,其設計成藉由加入一額外 的秘密”一第二因素”至標準使用者認證(亦即,使用者名稱 及氆碼)’而增強個人登入至(例如)一 web服務伺服器之安 全性。該第二秘密典型土也係該使用*於其持有㉟中所具有 的實體安全符記内儲存的某事物。於登人程序期間,該使 用者需要提供持有證明作為該登人認證之—部分。—證明 持有之常用方式係使用一單次密碼,其係一僅適合於一單 -登入之密碼,其係由該安全符記所產生及輸出。假如該 122364.doc -99- 200822669 使用者能夠提供正確的單次密碼,則其係被認為充分證明 ,有,符記的擁有,因為無該符記之下以密碼編譯方式計 ::早次密碼係不可實行的。因為該單次密碼係僅適合於 平次登入’所以該使用者係應該於登人時具有該符記,因 為使用自一先刖登入所捕捉到的舊密碼將不再有效。 敘述於下面段落的i品係使用f亥安全储存應用程式安全 性資料結構,加上-特徵組延伸設計,以計算於該單次密 碼系列中下一密碼,以冑行一具有多個,,虛擬安全符記之 快閃記憶體卡,每-符記產生—不同系列的密碼(其可被 使用於且入不同的web網站)。此系統之一方塊圖係顯示於 圖 41 〇 、 元整的系統1050包含一鑑認伺服器1〇52、一網際網路伺 服器1〇54及一具有符記1〇58之使用者⑺兄。第一步驟係同 意該鑑認伺服器與該使用者之間的一共用秘密(亦稱為種 子仏應)孩使用者10 5 6將請求一將被發佈之秘密或種 子,且將儲存其於該安全符記1058之中。下一步驟係繫結 發佈之秘密或種子與一特定web服務伺服器。一旦此係完 成,該鑑認可發生。該使用者將指示該符記產生一單次密 碼。具有该使用者名稱及密碼之單次密碼係被傳送至網際 網路伺服器1054。該網際網路伺服器1〇54轉遞該單次密碼 至該鑑認伺服器1052,要求其鑑認該使用者之1〇。該鑑認 伺服器亦將產生一單次密碼,且因為該單次密碼係自一共 用秘岔連同該符記予以產生,所以其係應該匹配自該符記 產生的單次密碼。假如一項匹配係被找到,則該使用者之 122364.doc -100- 200822669 ID係被鑑認’且該鑑認伺服器將傳回一肯定確認給該網際 網路伺服器1054,該網際網路伺服器1〇54將完成該使用者 登入程序 用於該單次密碼產生之特徵組延伸實施方案具有下列特 性: •於該卡内安全地儲存(經加密)該單次密碼種子。 •該密碼產生演算法係於該卡内執行。 r •該裝置U)可模擬多個虛擬符記,每一虛擬符記係存一 不同的種子,且可以使用不同的密碼產生演算法。 •該裝置1〇係提供-安全協定’以自該鑑:飼服器傳送 該種子至該裝置。 用於單次密碼種子供應及單次密碼產生之安全儲存應用 程式特徵係顯示於圖42,其中,實線箭頭係顯示擁有權或 存取權,且虛線箭頭係顯示關聯性或連結。如示於圖竹 於安全財應用程式特徵組延㈣㈣叫,可 多:通訊管道1104來存取軟體程式碼特徵組延伸1102,; 訊管道1104係受控於n個岸用铲彳六 ^ > ^存取控制記錄⑽之各 、”轭例中,僅顯示—特徵組延 式,且對於每一特徵組延伸應體應用私 然而應瞭解的是,可以利用/ 彳―通訊管道。 斗一 了以利用-個以上特徵組延伸應用尹 圖42係僅顯示-通訊管道,應瞭解的是,可以: 用複數個通訊管道。所有此類變化係可行的。 40A、侧及42,該特徵組延伸⑽可以係 、二 碼供應之應用程式,且 用於早-人岔 形成圖4〇A之裝置内部應用程式 122364.doc 200822669 1〇10之子集合。控制結構(存取控制記錄11G1、1103、 1106 111G)係安全儲存應用程式内之安全性資料結構的 一部分,且係儲存於該安全儲存應用程式資料庫1026之 中。諸如身份物件1120、身份物件此及通訊管道u〇k 資料結構亦係儲存於該安全儲存應用程式資料庫咖之 中。 參照圖40A及40B,φ涉到該等存取控制記錄及資料結 構之安全性相關操作(例如會期内之資料傳送,以及諸如 力山解在與雜凑之操作)係在介面1032及密碼編譯庫 1012之辅助之下’由模組1〇3〇所處置。安全服務模組核心 API _6不區別牵涉到與主機互動之存取控制記錄(外部 的存取控制記錄)的操作及不肖主機互動之内料存取控 制。己錄之操作’且因而係不區別牵涉到主機之操作相對於 =置内部應用程式ΠΠ0之操作。以此方式,控制由主機端 實體所實行之存取以及由裝置内部應用程式所實行之 存取係使用相同的控制機制。此導致用於劃分主機端應用 程式與裝置内部應用程式1〇1〇之間之資料處理的彈性。該 等内部應用程式1()1〇(例如圖42中之特徵組延伸ιι〇2)相關 聯於該等内部存取控制記錄(例如圖42中之存取控制記錄 1103) ’且係透過該等内部存取控制記錄之控制予以 再者,諸如具有相關聯的安全儲存應用程式規則及原則 之存取控制記錄及存取控制記錄群組之安全性資料結構較 ^土地係控制對重要資訊的存$,諸如安》資料物件内之内 122364.doc 200822669 容或能夠自安全資料物件内之内容推導出之資訊,使得外 部或内部應用程式係僅能夠根據該等安全儲存應用程式規 則及原則而存取該内容或資訊。舉例而言,假如兩個不同 的使用者可調用該等裝置内部應用程式1〇1〇之一個別裝置 内部應用程式來處理資料,則使用位於分離的樹狀階層架 構内之内部存取控制記錄來控制該兩個使用者所實施之存 取,使得其之間係無串擾。以此方式,該兩個使用者皆能 夠存取一共同組裝置内部應用程式1010以用於處理資料, 而不擔心該等安全資料物件内之内容或資訊的擁有者喪失 對於該内容或資訊的控制。舉例而言,對儲存由該等裝置 内部應用程式1010所存取之安全資料物件資料之存取可受 控於位於分開的樹狀階層架構内之存取控制記錄,使得其 之間係無串擾。此種控制方式係類似於上述安全儲存應用 私式控制存取資料之方式。此係對於内容擁有者及使用者 提供儲存於該等資料物件内的資料的安全性。 參照圖42,對於該單次密碼相關主機應用程式所需之軟 體應用程式碼之一部分被儲存(例如,在記憶體卡發佈之 鈾預先儲存或在記憶體卡發佈之後載入)於該記憶體裝置 10内作為特徵組延伸1102内之應用程式係可能的。為了執 行此類程式碼,該主機將首先需要透過該N個鑑認存取控 制記錄1106中之一者進行鑑認(N係一正整數),以獲得對 於管道1104之存取。該主機亦將需要提供一用於識別其想 要調用之單次密碼相關之應用程式的應用程式m。在一成 功鑑認之後,可存取此類程式碼,以用於透過相關聯於該 122364.doc -103- 200822669 單次岔碼相關之應用程式的管道1 1 04而執行。如上文所注 意到,較佳地,介於一管道1104與一特定應用程式(諸如 一單次密碼相關内部應用程式)之間係有1對1的關係。如 示於圖42,多個存取控制記錄丨丨〇6可共有對一共同管道 1104之控制。一存取控制記錄亦可控制一個以上管道。 圖42顯示統稱為物件1114之安全資料物件1、安全資料 物件2及安全資料物件3,每一者係含有資料,諸如用於單 次密碼產生之一種子,該種子係有價值的且較佳為被加 密。介於該三個資料物件與特徵組延伸11〇2之間之連結或 關聯性1108顯示該等物件之屬性在於··當存取該等物件中 之任一者時,於具有該安全資料物件之屬性内一應用程式 ID之特徵組延伸1102内之應用程式將被調用,且該應用程 式將由該記憶體裝置之中央處理單元12所執行,而不需要 接收任何進一步的主機命令(圖丨)。 參照圖42,在一使用者可開始該單次密碼程序之前,該 等安全性資料結構(存取控制記錄11〇1、11〇3、11〇6及 1110)已被建立成具有用於控制該單次密碼程序之權限控 制記錄。該使用者將需要具有存取權,以透過鑑認伺服器 存取控制記錄110 6之一而調用一單次密碼裝置内部應用程 式1102。該使用者亦將需要具有對於將透N個使用者存取 控制δ己錄1110之一而產生之單次密碼的存取權。可以於該 單次禮、碼種子供應程序期間被建立該等安全資料物件 1114。較佳地,該内部存取控制記錄丨1〇3已建立及控制該 身份物件1116。該内部存取控制記錄11〇3係在其被建立之 122364.doc -104- 200822669 後,亦控制該等安全資料物件1114。當存取該等安全資料 物件1114時’於圖4〇b内之該安全儲存應用程式管理員 1024自動登入該内部存取控制記錄1103。該内部存取控制 纪錄1103係相關聯於特徵組延伸1102。於該單次密碼種子 供應程序期間,該等安全資料物件1114可變成相關聯於該 特徵組延伸,如虛線11〇8所示。在該關聯性就緒之後,當 該主機存取該等安全資料物件時,該關聯性丨1〇8係將導致 特徵組延伸1102被調用,而不需要來自該主機的一進一步 睛求。當透過N個存取控制記錄11〇6之一存取通訊管道 1104時,圖40B内之該安全儲存應用程式管理員1〇24亦自 動登入該存取控制記錄11〇3。於此兩者情況下(存取安全 貧料物件1114及管道1104),該安全儲存應用程式管理員 將傳送一會期號碼至該特徵組延伸11〇2,該會期號碼將識 別至該内部存取控制記錄1103之通道。 該單次密碼操作係牵涉到兩個階段:一示於圖43之種子 供應階段;及一示於圖44之單次密碼產生階段。參照圖 40-42將亦能夠有助於說明。圖43繪示該種子供應程序之 協定圖。如示於圖43,由主機(諸如主機24)以及由該卡採 取各種動作。採取各種動作之卡上的一實體係圖4〇a及 40B之該安全服務模組系統,其包含該安全服務模組核心 1004採取各種動作之卡上的另一實體係顯示於圖42之該 特徵組延伸1 102。 於雙因素鑑認之中,該使用者係請求一種子被發佈,且 一旦該種子被發佈,該種子係被儲存於一安全符記之中。 122364.doc -105- 200822669 於此乾例中,該安全符記係該記憶體裝置或卡。該使用者 向圖42中該等鑑認存取控制記錄11〇6之一者進行鑑認,以 獲得存取該安全服務模組系統(箭頭1122)。假設鑑認成功 (箭頭1124),則該使用者請求一種子(箭頭1126)。該主機 傳送該請求,以藉由選擇一用於簽名該種子請求之特別的 應用程式1102而將該種子請求簽名至該卡。假如該使用者 不知道需要被調用之該特別的應用程式之m,則可自裝置 10獲得該貧訊,舉例而言,透過一對於該裝置之謹慎查 詢。接著,該使用者輸入應被調用之應用程式之應用程式 ID,藉此亦選擇一對應於該應用程式之通訊管道。接著, 透過該對應的通訊管道’在—傳遞命令中轉遞該使用者命 令至來自該使用者之該應用程式m所指定之應用程式(箭 頭1128)。被調用之應用程式係藉由該指定之身份物件(諸 如圖42内之身份物件1112)内的公開密鑰而請求一簽名。 該安全服務模組系統使用言亥身份物件之該公開密鍮簽名 該種子請求,且通知該應用程式該簽名係完成(箭頭 1132)。接著,該被調用之應用程式請求該身份物件之憑 證鏈(箭頭1134)。為了回應,該安全服務模組系統提供由 該存取控制記錄1103所控制之該身❾物件之憑證鏈(箭頭 1136)。接著,該被調用之應用程式透過該通訊管道,提 供該經簽名的種子請求及該身份物件之該憑證鏈至該安全 服務模組系統,該安全服務模組系統轉遞該經簽名的種子 請求及該身份物件之該憑證鏈至該主機(箭頭ιΐ38)。透過 該通訊管道傳送該經簽名的種子請求及該身份物件之該憑 122364.doc -106- 200822669 證鏈的係透過建置於圖40A之該安全性應用程式管理員模 組1008及該安全服務模組核心1〇〇4之間的回呼(caiiback)功 能’其中’將於下文說明該回呼功能。 接著,由該主機接收到的該經簽名的種子請求及該身份 物件之該憑證鏈被傳送至如示於圖41之該鑑認伺服器 1052。由該卡所提供之憑證鏈檢定該經簽名的種子請求係 起源於受信任的符記,使得該鑑認伺服器1〇52係想要提供 忒秘密種子給該卡。因此,該鑑認伺服器丨OK傳送以該身 份物件之該公開密鑰加密之種子連同該使用者存取控制記 錄貧訊一起給該主機。該使用者資訊指示出在該N個使用 者存取控制記錄中使該使用者具有存取將被產生之該單次 密碼的權利的存取控制記錄。該主機藉由提供該應用程式 ID而調用特徵組延伸11〇2内一單次密碼應用程式,藉此亦 選擇對應於該應用程式之通訊管道,且轉遞該使用者存取 控制ό己錄資汛至該安全服務模組系統(箭頭丨丨4〇)。接著, 忒經加飨的種子及該使用者存取控制記錄資訊係透過該通 訊管道被轉遞至該選擇出之應用程式(箭頭1142)。該被調 用之應用程式傳送一請求至該安全服務模組系統,以用於 使用忒身伤物件之私有密鑰,而解密該種子(箭頭1。 該安全服務模組系統解密該種子且傳送一解密已經完成之 通知給該應用程式(箭頭1146)。接著,該被調用之應用程 弋3求建立女全資料物件之及於該安全資料物件内儲存 °亥種子。其亦請求使該安全資料物件相關聯於用於產生該 早次密碼之該單次密碼應用程式(其可以係相同於正在請 122364.doc •107- 200822669 求之應用程式)之10(箭頭1148)β該安全服務模組系統建立 該等安全資料物件1114之一者,且儲存該種子於該安全資 料物件内,且使該安全資料物件相關聯於該單次密碼應用 耘式之ID,且當完成時傳送通知給該應用程式(箭頭 1150)。接著’該應用程式請求該安全服務模組系統根據 由該主機所提供之使用者龍,委派該㈣存取控制記錄 之用於存取該安全資料物件1114之存取權,給適當的使用 ^存取控制記錄(箭頭1152)。在已經完成委派之後,該安 王服務核組系統通知該應用程式(箭頭〗154)。接著,該應 用程式係藉由一回呼功能,透過該通訊管道傳送該安全資 料,件之名稱(槽ID)給該安全服務模組系統(箭頭ιΐ56)。 接著,安全服務模組系統係轉遞該安全資料物件之名稱至 該主機(箭頭1158)。接著,該主機繫結該安全資料物件之 名稱與該使用者存取控制記錄,使得該使用者係現在能夠 存取該安全資料物件。 現在將參照圖44中之協$圖而1述單次密碼產生之程 序。為了獲得該單次密碼,該使用者將登入其具有存取權 3用者存取控制記錄(箭頭1172)。假設該鑑認成功,則 该安全服務模㈣統通知該主機,且該主機傳送一"㈣ SDO"(獲得安全資料物件)命令給該安全服務模組(箭頭 76)如上文所述,儲存該種子之該安全資料物 件已經相關聯於一用於產生該單次密碼之應用程式。因 f不像疋以财一樣透過該通訊管道選擇一應用程式,該 早-人进碼產生應用程式係藉由介於由該命令存取之安全資 122364.doc 200822669 料物件(箭頭1176)與該單次密碼產生應用程式之間的關聯 性所調用(箭頭H78)。接著,該單次密碼產生應用程式請 求該安全服務模組系統自該安全資料物件讀取該内容(亦 即,該種子)(箭頭1180)。較佳地,該安全服務模組不知道 該安全資料物件之内容内包含的資訊,且將僅按該特徵組 延伸指示來處理該安全資料物件内之資料。假如該種子被 加密,則此係可以牵涉到按該特徵組延伸命令在讀取之前 解在δ亥種子。該安全服務模組系統自該安全資料物件讀取 該種子,且提供該種子至該單次密碼產生應用程式(箭頭 1182)。接著,該單次密碼產生應用程式產生該單次密碼 且&供忒單次密碼給該安全服務模組系統(箭頭1 1 8句。接 著4單次岔碼係由該安全服務模組轉遞至該主機(箭頭 1186) ’接著’該主機轉遞該單次密碼至該鑑認伺服器 1052,以完成該雙因素鑑認鑑認程序。 回呼功能 於圖40Α之該安全服務模組核心1〇〇4與安全性應用程式 盲理員模組1008之間建置一泛用回呼功能。不同的裝置内 部應用程式及通訊管道可被登錄以具有此類功能。因此, 虽调用一裝置内部應用程式時,該應用程式可使用此回呼 功能,以透過被用於傳送一主機命令至該應用程式之相同 通訊管道,將處理後之資料傳送至該安全服務模組系統。 DRM系統實施例 圖45繪示DRM系統的功能方塊圖,該DRM系統採用通 訊官道1104’、具有至特徵組延伸應用程式u〇2,之連結 122364.doc -109- 200822669 11 0 8 ’的内容加密密鑰1114,及用於控制該等功能以實施 DRM功能之控制結構11〇1,、1103,及U06,。如將被注意 到,圖45中之架構係相當類似於圖42之架構,惟該安全性 資料、、、σ構現在包合使用權4司服器存取控制記錄川6,及播放 存取控制記錄1 1 10,(取代鑑認伺服器存取控制記錄及使用 者存取控制記錄)以及内容加密密鑰1114,(取代安全資料物 件)除外。此外,不牽涉到該身份物件,且因而於圖45中 省略該身份物件。可以於使用權供應程序中建立該等内容 加密密鑰1114,。圖46之協定圖顯示一種用於使用權供應及 内容下載之程序,其中,於使用權物件中提供密鑰。如同 於该單次密碼之實施例中,一想要獲得一授權之使用者將 首先需要在N個存取控制記錄11〇6,之一者& N個存取控制 記錄1110,之一者之下取得存取權,使得可藉由一媒體播放 機(諸如一媒體播放機軟體應用程式)呈現内容。 如示於圖46 ’該主機向一使用權伺服器存取控制記錄 U〇6f(箭頭1202)進行鑑認。假設鑑認成功(箭頭12〇4),則 4使用權伺服器提供一使用權檔案(license fUe)連同一内 容加密密鑰(密鑰ID及密鑰值)給該主機。該主機亦藉由提 供该應用程式ID至該卡上之該安全服務模組系統,而選擇 被調用之應用程式。該主機亦傳送播放機資訊(例如,於 一媒體播放機軟體應用程式上之資訊)(箭頭12〇6)。該播放 機資將指示在該N個播放機存取控制記錄111 〇,之哪一者 之下’該播放機具有存取權。該安全服務模組系統係透過 對應於該選擇出之應用程式之通訊管道,而轉遞該使用權 122364.doc -110 200822669 檔案及該内容加密密鑰至該DRM應用程式(箭頭12〇8)。接 者’該被調用之應用程式請求該安全服務模組系統將該使 用權檔案寫入至隱藏分割區之中(箭頭121〇)。當係如此寫 入該使用權檔㈣,該安全服務模㈣統通知該應用程式 (箭頭1212)。接著,該DRM應用程式請求一被建立之内容 加密密鑰物件1114’’且將來自該使用權檔案的鋒值儲存 於該被建立之内容加密密錄物件1114,之中。該drm應用 程式亦請求使該内容加密密鑰物件與相關聯於一 D r Μ應用 程式的ID(該DRM應用程式檢查相關聯於所提供之密_ 授權K箭頭1214)。該安全服務模組系統完成這些工作,且 因而通知該應用程式(箭頭1216)。接著,該應用程式請求 根據由主機傳送之播放機資訊,而將對該内容加密密鑰 1114’之讀取存取權委派給一播放機存取控制記錄(該播放 機具有對該播放機存取控制記錄的存取内容之權限箭頭 1218^該安全服務模組系統實行該委派,且因而通知嗜 應用程式(箭頭122〇)。由該應用程式透過該通訊管道傳= 一已經完成儲存該授權之訊息至該安全服務模組系統,且 該安全服務模組系統轉遞該訊息至該使用權伺服器(箭頭 1222及1224)。使用-回呼功能以透過該通訊管道進行此 動作…旦接收到該通知時,接著該使用權祠服器提供以 提供給該卡之該内容加密密鑰内之密鑰值加密之内容檔 案。該經加密的β容係由該主機儲存於該公開卡區域中。 儲存該經加密的内容檔案不牽涉到安全性功能,使得該安 全服務模組系統係不牽涉到該儲存。 122364.doc -111 - 200822669 該播放操作係顯示於圖47。該使用者係透過該主機而向 適合的播放存取控制記錄(亦即,於上文箭頭1152及1154 中已被委派讀取權至其之播放存取控制記錄)進行鑑認(箭 頭1242)。假設鑑認成功(箭頭1244),則該使用者接著傳送 一請求,以讀取相關聯於該密鑰ID之内容(箭頭1246)。於 接收該請求時,該安全服務模組系統將發現一 DRM應用程 式之ID係相關聯於正被存取之内容加密密鑰物件,且因而 將導致調用該被識別之DRM應用程式(箭頭1248)。該DRM 應用程式請求該安全服務模組系統讀取相關聯於該密鑰m 之資料(亦即,使用權)(箭頭1250)。該安全服務模組不知 道其被請求讀取之資料内的資訊,且僅處理來自該特徵組 延伸的請求,以實行該資料讀取程序。該安全服務模組系 統自δ亥1¾藏分告彳區頃取資料(亦即,使用權),且提供該資 料至該DRM應用程式(箭頭1252)。接著,該drm應用程式 解譯該資料,且檢查該資料内之使用權資訊,以看看該使 用權是否有效。假如該使用權仍然有效,則該DRM應用程 式將向該安全服務模組系統通知准許進行内容解密(箭頭 1254)。接著,该女全服務模組系統使用該内容加密密鑰 物件内之該密鑰值解密該請求的内容,且提供該經解密的 内容至該主機,以用於播放(箭頭1256)。假如該使用權不 再有效’則用於内谷存取之請求係被拒絕。 假使來自該使用權伺服器的使用權内未提供任何密鑰, 則該使用權供應及内容下載係將稍微不同於示於圖46之方 式。此類不同的方案係顯示於圖48之協定圖之中。圖46與 122364.doc •112- 200822669 圖48之間相同的步驟係以相同的元件符號予以識別。因 此,該主機及該安全服務模組系統首先進行鑑認(箭頭 1202,1204)。該使用權伺服器提供該使用權檔案及該密 鑰ID(但是無該密鑰值)給該主機,且該主機將轉遞所提供 之該使用權檔案及該密鑰ID連同該主機想要調用之該 應用程式的ID至該安全服務模組系統。該主機亦傳送播放 機資訊(箭頭讓該安全服務模組系統係透過對 應於該選擇出之應用程式之通訊管道,而轉遞該使用權標 案及該密鍮ID至該選擇出之DRM應用程式(箭頭12〇8)。接 著,該DRM應靠式請求將該使用權檔案寫人至隱藏分則 區之中(箭頭121〇)。當已經如此寫入該使用權檔案時,該 安全服務模組系統通知該D驗應用程式(箭頭1212)。接 著,該DRM應用程式請求該安全服務模"統產生一密矯 值、建立—内容加密密鑰物件、儲存該密輕於其中及使 該内容加密密鑰物件相關聯於一職應用程 1214J。在已經符合該請求後 、、,s A J之後5亥文全服務模組系統傳 ^-通知給該麵應用程式(箭頭1216)。接著,該 =將請=全„模組系統根據由主機傳送之㈣ 播:機;^:』對°亥内+加密密餘物件之讀取存取權給該 =機存取控制錢(箭頭1218)。該其“料,該安全 —矛^組系統因而通知該DRM應用程式(箭頭㈣)。接 者,该DRM應用程式向該安全 兮传用趨甘*分 服務杈組系統通知已經儲存 μ使用權,其中,,亥通知係藉由_回呼 … 道而被傳送(箭頭1222)。此項通知:過該通訊管 轉遞至该使用權伺服 122364.doc -113- 200822669 器(箭頭1224)。該使用權伺服器接著傳送相關聯於一密鑰 ID之内容檔案至該安全服務模組系統(箭頭η%卜該安全 服務模組系統以該密鑰山所識別之該密鑰值加密該内容, 而不牵涉到任何應用程式。如此加密及儲存於該卡上之内 容係可以使用圖47之協定而被播放。 於上述之單次密碼及DRM實施例中,該特徵組延伸灯⑽ 及1102,可含有許多不同的單次密碼及drm應用程式,以 #主機裝置選擇。使用者具有選擇及調用所要裝置内部應 、帛程式之選擇機^雖然如此,介於該安全服務模組與該 特徵組延伸之間之整體關係係維持相同,使得使用者及資 料提供者可使用標準的協定組,以用於與該安全服務模= 互動及用於調用該特徵組延伸。使用者及提供者係不需要 變成牵涉到許多不同的裝置内部應用程式之特質,該等裝 置内部應用程式之一些者可以係專屬的。 再者,該等供應協定可些微不同’如同於圖46及48之情 f 況。在圖46之情況下,該使用權物件含有一密鑰值,然: v 在圖48之情況下,該使用權物件無密鑰值。此差異要求略 微不同的協定,如上文所述。然而’圖47中之播放係相同 的,而不論如何供應該使用權。因此,此差異將僅關於内 容提供者及散佈者,然而典型地係與消費者無關,消費者 典型地係僅牵涉到播放階段。因此,此架構提供給内容提 供者及散佈者客製化協定的大彈性,同時維持顧客容易使 用。明顯地,自兩組以上供應協定所供應之資料推導而來 的資訊係可以仍然可使用第二協定存取。 122364.doc -114- 200822669 由上述之實施例所提供之另一優點係,雖然外部實體 (諸如使用者)及該等裝置内部應用程式可共用對由該安全 性資料結構所控制之資料的使用,但是使用者僅能夠存取 由該等裝置内部應用程式自所儲存的資料推導出之結果。 因此於該單次密碼之實施例中,該經過該等主機裝置之 使用者僅能夠獲得該單次密碼,而無法獲得該種子值。於 該DRM實施例中,該經過該等主機裝置之使用者係、僅能夠 ^ 獲得所呈現的内容,然而不存取該使用權檔案或密碼編譯 密鑰。此特徵係允許消費者方便,而不損及安全性。 於- DRM實施例中,該等裝置内部應用程式及主機皆不 月b存取4等始、碼編譯密鑰;僅該安全性資料結構可存取該 等密碼編譯密鑰。於其他實施例中,&了該安全性資料結 構以外之實體係亦能夠存取該密碼編譯密输。該等密输亦 能夠藉由該等裝置内部應用程式所產生,且接著由該安全 性資料結構所控制。 、 存取該等裝置内部應用程式及存取資訊(例如,單次密 碼及所呈現之内容)係受控於相同的安全性資料結構。此 減少控制系統及成本之複雜度。 精由提供自該内部存取控制記錄(其控制對該等裝置内 /應用知式之存取)委派存取權給_存取控制記錄(其控制 該等=機存取由調用該等裝置内部應用程式所獲得之資 旬之能力,此特徵使達成上述特徵及功能係可能的。 應用程式特定之廢止方案 122364.doc -115- 200822669 當被調用-裝置内部應用程式係時,亦可被修改該安全 性資料結構之存取控制協定。舉例而言,該憑證廢止協定 可以係一使用憑㉟廢止清單之標準協丨或一專屬協定。因 此^藉由調用一特徵組延伸,該標準的憑證廢止清單廢止 協定可被一特徵組延伸專屬協定所取代。 除了支援該憑證廢止清單廢止方案,安全儲存應用程式 使一駐留於該裝置内的特定内部應用程式,能夠透過介於 忒波置内部應用矛呈式與該憑言登授權單位或任何其他廢止授 榷單位之間之一私有通訊通道而廢止主機。該内部應用程 式專屬廢止方案係《限於該主機-應用程式之關係。 、备組態應用程式特定之廢止方案日夺,該φ全儲存應用程 式系統將拒絕該憑證廢止清單(假如被提供),否則將使用 。亥心也及δ亥專屬應用程式資料(先前透過一應用程式特定 通訊管道予以提供),以決定是否該給定的憑證被廢止。 如上文所述,一存取控制記錄係藉由指定一廢止值,而 指定三種廢止方案(無廢止方案、標準憑證廢止清單方案 及應用耘式特疋廢止方案)之哪一者被採用。當選擇該應 用私式特定廢止方案選項時,該存取控制記錄將亦指定用 於管理該廢止方案之内部應用程式ID之一ID,且該憑證廢 止清單到期時期/APPJD欄位内之值將對應於管理該廢止 方案之内部應用程式ID。當鑑認該裝置時,安全儲存應用 程式系統接著將支持該内部應用程式之專屬方案。 不以另一組協定取代一組協定,一裝置内部應用程式之 調用可對已經由該安全儲存應用程式所行使之存取控制賦 122364.doc -116- 200822669 加額外的存取條件。舉例而+ 心^ 可由一特徵組延伸進一牛 ^ 墚内之一费鑰值之權利。在該安 之存取權利之後,將在授予 *鑰值 伸。此特徵允許内容擁有者控 ί 性。 谷之存取的大彈 是 明Get (secure beak object gets), the application (1) is defined: = by, there is the app! The device internal application of D handles the request to call the application by being associated with the security data object. The output ("undefined") will be passed back to the requester. The application will select the item to take the security data item. , .SD such as (secure data object acquisition), application (four) is null: This k item is invalid, and will prompt - illegal command error. The (10) command needs to be executed on the internal application of the card. (4) Permitted permissions: - Access control records can be full data object owner σ 9 authors take permissions (Set, Get, or two, an access control record can be allowed to pass access to non-owned objects) Right to another access control record. If -^子二'° has recorded access control record attribute management authority, the access control 122364.doc -98- 200822669 system can be explicitly allowed to establish security information Object and delegate access. Internal Access Control Record The internal access control record is similar to any access control record with an access control record, except that entities outside the device 10 cannot log into the access control record. When the object or the associated application under the control of the secure storage application manager 1024 of FIG. 40B is invoked, the secure storage application administrator of FIG. 40B automatically logs in to the internal access. Controlling the record. Because the attempt is to gain access to the real system of the card or the entity inside the memory device, no authentication is required. The secure storage application administrator 24 will only transmit a session key to the internal access control record to enable internal communication. Two examples will be used to show the ability to extend feature sets: single-password generation and digital rights management. Before the example, the release of two-factor authentication will be explained first. Example of single-password i Two-factor authentication (DFA) Two-factor authentication is a recognition agreement designed to incorporate an additional secret. The second factor "to standard user authentication (ie, user name and weight)" enhances the security of the individual's login to, for example, a web service server. The second secret is also used by the general It holds a thing stored in the physical security token of 35. During the boarding process, the user needs to provide proof of possession as part of the denial certification. A single-password, which is only suitable for a single-login password, which is generated and output by the security token. If the user is able to provide the correct single-time secret, the 122364.doc -99-200822669 Code, it is considered to be sufficient proof, yes, the possession of the token, because there is no such code to compile the password:: The early password is not practicable. Because the single password is only suitable for the flat login. 'So the user should have this token when they log in, because the old password captured from the login will no longer be valid. The i-series described in the following paragraph use the safe storage application security. The data structure, plus the feature group extension design, to calculate the next password in the single password series, to execute a flash memory card with multiple, virtual security tokens, each token generated - different series of passwords (which can be used in different web sites). A block diagram of this system is shown in Figure 41. The system 1050 contains an authentication server 1〇52, an internetwork. The router 1〇54 and the user (7) with the token 1〇58. The first step is to agree that a shared secret (also known as a seed) between the authentication server and the user will request a secret or seed to be posted and will store it. This security token is in the middle of 1058. The next step is to tie the secret or seed to a specific web service server. Once the system is completed, the identification takes place. The user will instruct the token to generate a single password. A one-time password with the username and password is transmitted to the Internet server 1054. The Internet server 1 〇 54 forwards the one-time password to the authentication server 1052 and asks it to authenticate the user. The authentication server will also generate a single password, and since the single password is generated from a common secret along with the token, it should match the single password generated from the token. If a match is found, the user's 122364.doc -100-200822669 ID is authenticated' and the authentication server will send back a positive confirmation to the internet server 1054, the Internet The route server 1 〇 54 will complete the user login procedure for the feature set extension implementation of the single cipher generation with the following characteristics: • Securely store (encrypt) the single cipher seed within the card. • The password generation algorithm is executed within the card. r • The device U) can simulate multiple virtual tokens, each of which holds a different seed and can generate algorithms using different passwords. • The device 1 provides a - safety agreement from which the feeder delivers the seed to the device. The secure storage application feature for single cipher seed provisioning and single cipher generation is shown in Figure 42, where the solid arrow indicates ownership or access and the dashed arrow indicates association or association. As shown in Figure Bamboo, the security feature application group extension (4) (four) is called, can be more: communication pipeline 1104 to access the software code feature group extension 1102;; the communication pipeline 1104 is controlled by n shore shovel six ^ &gt ^ Each of the access control records (10), "in the yoke example, only the display - feature group extension, and for each feature group extension application, it should be understood that the / communication channel can be utilized. In order to utilize the application of more than one feature set, the Yin Tuo 42 system only displays the - communication pipeline. It should be understood that: a plurality of communication pipelines can be used. All such variations are feasible. 40A, side and 42, the feature group The extension (10) can be applied to the application code of the second code, and is used to form a subset of the device internal application 122364.doc 200822669 1〇10 of FIG. 4A. The control structure (access control record 11G1, 1103, 1106 111G) is part of a secure data structure within the secure storage application and stored in the secure storage application database 1026. For example, identity object 1120, identity object, and communication pipe u〇k data node The structure is also stored in the secure storage application database. Referring to Figures 40A and 40B, φ relates to the security-related operations of the access control records and data structures (e.g., data transfer during the session, and such as Lishan solution and hash operation are handled by module 1〇3〇 with the help of interface 1032 and password compilation library 1012. Security service module core API _6 does not distinguish between access to host interaction The operation of the control record (external access control record) and the internal access control of the unfamiliar host interaction. The recorded operation 'and thus does not distinguish the operation involving the host relative to the operation of the internal application ΠΠ0. In this way, the access controlled by the host entity and the access control implemented by the internal application of the device use the same control mechanism. This results in the partitioning of the host application and the internal application of the device. Resilience of data processing between the internal applications 1(), such as the feature group extension ιι〇2 in Figure 42, is associated with the internal access control records (eg, Figure 42). Access control records 1103) 'and are controlled by such internal access control records, such as access control records and access control record groups with associated secure storage application rules and principles The security data structure is more than the land system control of the important information, such as the information contained in the information object, or the information that can be derived from the contents of the security data object, so that the external or internal application system The content or information can only be accessed in accordance with the rules and principles of the secure storage application. For example, if two different users can call one of the internal applications of the device, one of the individual application internal applications To process the data, the internal access control records located in the separate tree hierarchy are used to control the access performed by the two users so that there is no crosstalk between them. In this manner, both users are able to access a common set of device internal applications 1010 for processing data without fear that the owner of the content or information within the secure data object loses the content or information. control. For example, access to stored secure material object data accessed by the device internal application 1010 can be controlled by access control records located within a separate tree hierarchy such that there is no crosstalk between them . This type of control is similar to the way the secure storage application privately controls access to data. This provides the content owner and user with the security of the data stored in those data items. Referring to FIG. 42, a portion of the software application code required for the single-password-related host application is stored (for example, the uranium issued by the memory card is pre-stored or loaded after the memory card is released) in the memory. It is possible within the device 10 to extend the application within the 1102 as a feature set. In order to execute such a code, the host will first need to authenticate (N is a positive integer) through one of the N authentication access control records 1106 to gain access to the pipeline 1104. The host will also need to provide an application m for identifying the application associated with the single password that it wants to invoke. After a successful authentication, such code can be accessed for execution via Pipe 1 1 04 associated with the 122364.doc -103 - 200822669 single weight related application. As noted above, preferably, there is a one-to-one relationship between a pipe 1104 and a particular application, such as a single-password-related internal application. As shown in Figure 42, a plurality of access control records 丨丨〇6 may share control of a common pipe 1104. An access control record can also control more than one pipe. Figure 42 shows a security data item 1, a security data item 2, and a security data item 3, collectively referred to as object 1114, each containing information, such as one seed for a single password generation, which is valuable and preferred. To be encrypted. A link or association between the three data objects and the feature set extension 11 〇 2 indicates that the attributes of the objects are: when accessing any of the objects, having the secure data object The application within the feature set extension 1102 of an application ID will be invoked and the application will be executed by the central processing unit 12 of the memory device without receiving any further host commands (Figure 丨) . Referring to FIG. 42, the security profile (access control records 11〇1, 11〇3, 11〇6, and 1110) has been established to have control before a user can start the one-time password procedure. The permission control record of the single password program. The user will need to have access rights to invoke a single cryptographic device internal application 1102 through one of the authentication server access control records 110. The user will also need to have access to a single password generated by accessing one of the N user access controls δ1. The secure data item 1114 can be created during the single gift, code seeding process. Preferably, the internal access control record 丨1〇3 has established and controlled the identity object 1116. The internal access control record 11〇3 also controls the secure data items 1114 after it is established 122364.doc -104-200822669. When the secure data item 1114 is accessed, the secure storage application manager 1024 in Figure 4B automatically logs into the internal access control record 1103. The internal access control record 1103 is associated with the feature set extension 1102. During the single cryptographic seeding process, the secure material items 1114 may become associated with the feature set extension as indicated by the dashed line 11〇8. After the association is ready, when the host accesses the secure data objects, the association 将1〇8 will cause the feature group extension 1102 to be invoked without requiring a further look from the host. When the communication channel 1104 is accessed through one of the N access control records 11〇6, the secure storage application manager 1〇24 in Fig. 40B also automatically logs in to the access control record 11〇3. In both cases (accessing the security lean object 1114 and the pipe 1104), the secure storage application administrator will transmit a session number to the feature group extension 11〇2, the session number will be identified to the internal Access control record 1103 channel. The single cryptographic operation involves two phases: one is shown in the seed supply phase of Figure 43; and the single cryptographic generation phase is shown in Figure 44. Reference will also be made to Figures 40-42. Figure 43 is a diagram showing the agreement of the seed supply procedure. As shown in Figure 43, various actions are taken by the host (such as host 24) and by the card. The security service module system of FIG. 4A and 40B, which is a real system on the card of various actions, includes another real system on the card in which the security service module core 1004 takes various actions, as shown in FIG. The feature set extends 1 102. In two-factor authentication, the user requests a child to be published, and once the seed is published, the seed is stored in a security token. 122364.doc -105- 200822669 In this example, the security token is the memory device or card. The user authenticates one of the authentication access control records 11〇6 in Fig. 42 to gain access to the security service module system (arrow 1122). Assuming the authentication is successful (arrow 1124), the user requests a child (arrow 1126). The host transmits the request to sign the seed request to the card by selecting a particular application 1102 for signing the seed request. If the user does not know the particular application m to be called, the poorness can be obtained from the device 10, for example, through a cautious inquiry for the device. Then, the user inputs the application ID of the application to be called, thereby selecting a communication channel corresponding to the application. Then, the user command is forwarded to the application specified by the application m from the user via the corresponding communication pipe 'in the delivery command (arrow 1128). The called application requests a signature by the public key in the specified identity object (identity object 1112 in Figure 42). The security service module system signs the seed request using the public key of the identity object and notifies the application that the signature is complete (arrow 1132). The invoked application then requests the credential chain of the identity object (arrow 1134). In response, the security service module system provides a credential chain (arrow 1136) of the body object controlled by the access control record 1103. Then, the called application provides the signed seed request and the credential chain of the identity object to the security service module system through the communication pipeline, and the security service module system forwards the signed seed request And the credential chain of the identity object is linked to the host (arrow ιΐ38). Transmitting the signed seed request and the identifier of the identity object through the communication pipeline through the security application manager module 1008 and the security service of FIG. 40A The callback function between the module cores 1 and 4 'where' will be explained below. Next, the signed seed request received by the host and the credential chain of the identity object are transmitted to the authentication server 1052 as shown in FIG. The credential chain provided by the card verifies that the signed seed request originates from a trusted token such that the authentication server 1〇52 wants to provide a secret seed to the card. Therefore, the authentication server 丨OK transmits the seed of the public key encryption of the identity object to the host along with the user access control record. The user information indicates an access control record that gives the user the right to access the single password to be generated in the N user access control records. The host invokes the feature set to extend a single-password application within 11〇2 by providing the application ID, thereby selecting a communication channel corresponding to the application, and forwarding the user access control Funding to the security service module system (arrow 丨丨 4〇). The filtered seed and the user access control record information are then forwarded through the communication conduit to the selected application (arrow 1142). The invoked application transmits a request to the security service module system for decrypting the seed using the private key of the body object (arrow 1. The security service module system decrypts the seed and transmits a Decrypting the completed notification to the application (arrow 1146). The invoked application 3 then seeks to create the female full data item and store the security object in the secure data object. It also requests the security information. The object is associated with the single cipher application for generating the early password (which may be the same as the application being requested by 122364.doc • 107-200822669) 10 (arrow 1148) β the security service module The system establishes one of the security data objects 1114, and stores the seed in the security data object, and associates the security data object with the ID of the single password application type, and transmits a notification to the Application (arrow 1150). Then the application requests the security service module system to delegate the (four) access control record based on the user dragon provided by the host. The access rights for accessing the secure data item 1114 are given to the appropriate usage control access record (arrow 1152). After the delegation has been completed, the Anjun service core group system notifies the application (arrow 154) Then, the application transmits the security data through the communication pipe by a callback function, and the name (slot ID) of the component is sent to the security service module system (arrow ιΐ56). Then, the security service module system is Transmitting the name of the secure data item to the host (arrow 1158). The host then binds the name of the secure data item to the user access control record so that the user system can now access the secure data object The procedure for single-password generation will now be described with reference to the co-$ diagram in Figure 44. To obtain the single-password, the user will log in with the access rights 3 user access control record (arrow 1172). Assuming that the authentication is successful, the security service module (4) notifies the host, and the host transmits a "(4) SDO" command to the security service module (arrow 76). As described in the text, the security data item storing the seed has been associated with an application for generating the single password. Since f does not select an application through the communication channel, the early-person The code generation application is invoked by the association between the security object 122364.doc 200822669 (arrow 1176) accessed by the command and the single password generation application (arrow H78). The secondary password generation application requests the security service module system to read the content (ie, the seed) from the security data object (arrow 1180). Preferably, the security service module does not know the content of the security data object. The information contained in the information, and the information in the security data object will be processed only according to the feature group extension indication. If the seed is encrypted, then the system may be involved in deciphering the seed before reading the feature set extension command. The security service module system reads the seed from the secure data item and provides the seed to the single password generation application (arrow 1182). Then, the single password generation application generates the single password and & provides a single password to the security service module system (arrow 1 1 8 sentences. Then 4 single weights are transferred by the security service module Delivered to the host (arrow 1186) 'Next' the host forwards the single password to the authentication server 1052 to complete the two-factor authentication and authentication process. The callback function is shown in Figure 40. A universal callback function is established between the core device 4 and the security application blind controller module 1008. Different device internal applications and communication pipes can be logged in to have such functions. Therefore, although one is called When the device is internally applied, the application can use the callback function to transmit the processed data to the security service module system through the same communication channel used to transmit a host command to the application. Embodiment FIG. 45 is a functional block diagram of a DRM system using a communication official channel 1104' and a link to a feature group extension application u〇2, the link 122364.doc -109-200822669 11 0 8 ' Encryption key 1114, and control structures 11〇1, 1103, and U06 for controlling these functions to implement DRM functions. As will be noted, the architecture of Figure 45 is quite similar to the architecture of Figure 42. However, the security data, the σ structure now includes the right to use the 4 server access control record Chuan 6, and the play access control record 1 1 10, (instead of the authentication server access control record and the user save The control record is taken as well as the content encryption key 1114, except (instead of the security data object). Furthermore, the identity object is not involved, and thus the identity object is omitted in Figure 45. Such content may be created in the usage rights provisioning program. Encryption key 1114. The protocol diagram of Figure 46 shows a procedure for usage rights provisioning and content downloading in which a key is provided in the usage rights object. As in the embodiment of the single password, one wants to obtain An authorized user will first need to gain access under one of the N access control records 11〇6, one of &# N access control records 1110, such that a media player can be used (such as a media player The application is rendered. As shown in Figure 46, the host authenticates to a usage right server access control record U〇6f (arrow 1202). If the authentication is successful (arrow 12〇4), then 4 is used. The rights server provides a license file (license fUe) to the host with the same content encryption key (key ID and key value). The host also provides the application ID to the security service mode on the card. Group the system and select the called application. The host also transmits player information (for example, information on a media player software application) (arrow 12〇6). The player will indicate the N The player access control record 111 〇, which of the following 'the player has access rights. The security service module system forwards the usage right 122364.doc -110 200822669 file and the content encryption key to the DRM application (arrow 12〇8) through a communication pipeline corresponding to the selected application. . The invoker's called application requests the security service module system to write the usage rights file into the hidden partition (arrow 121). When the usage rights (4) are written in this way, the security service module (4) notifies the application (arrow 1212). Next, the DRM application requests an established content encryption key object 1114'' and stores the threshold value from the usage rights file in the created content encrypted secret object 1114. The drm application also requests that the content encryption key object be associated with an ID of the application (the DRM application check is associated with the provided secret_authorization K arrow 1214). The security service module system performs these tasks and thus notifies the application (arrow 1216). Next, the application requests to delegate read access to the content encryption key 1114' to a player access control record based on the player information transmitted by the host (the player has the player stored in the player) Taking the permission arrow for controlling the access of the record 1218^ the security service module system performs the delegation, and thus notifies the application (arrow 122〇). The application transmits the authorization through the communication pipe. The message to the security service module system, and the security service module system forwards the message to the usage server (arrows 1222 and 1224). The use-callback function performs this action through the communication pipe... At the time of the notification, the usage right server then provides a content file encrypted with the key value in the content encryption key provided to the card. The encrypted beta content is stored by the host in the public card area. The storage of the encrypted content file does not involve security features, so that the security service module system does not involve the storage. 122364.doc -111 - 200822669 The system is shown in Figure 47. The user accesses the appropriate access control record through the host (i.e., the playback access control record has been delegated to the above arrows 1152 and 1154). An authentication is made (arrow 1242). Assuming the authentication is successful (arrow 1244), the user then transmits a request to read the content associated with the key ID (arrow 1246). Upon receiving the request, the The security service module system will discover that the ID of a DRM application is associated with the content encryption key object being accessed, and thus will result in invoking the identified DRM application (arrow 1248). The DRM application requests The security service module system reads the data (ie, usage rights) associated with the key m (arrow 1250). The security service module does not know the information in the data it is requested to read, and only processes A request from the feature set extension to implement the data reading process. The security service module system retrieves data (i.e., usage rights) from the δ海13⁄4藏分区, and provides the data to the DRM application. Program (arrow 1252). The drm application then interprets the data and checks the usage rights information in the data to see if the usage right is valid. If the usage right is still valid, the DRM application will serve the security service. The module system notifies permission to decrypt the content (arrow 1254). The female full service module system then decrypts the requested content using the key value in the content encryption key object and provides the decrypted content to the Host, for playback (arrow 1256). If the usage right is no longer valid' then the request for the inner valley access is rejected. If no key is provided from the usage right server, then The usage rights supply and content downloading will be slightly different from the manner shown in FIG. Such different schemes are shown in the agreement diagram of Figure 48. The same steps between Figure 46 and 122364.doc • 112- 200822669 Figure 48 are identified by the same component symbols. Therefore, the host and the security service module system first authenticate (arrows 1202, 1204). The usage right server provides the usage rights file and the key ID (but no such key value) to the host, and the host will forward the provided usage rights file and the key ID together with the host The ID of the application is called to the security service module system. The host also transmits player information (the arrow causes the security service module system to transmit the usage right standard and the password ID to the selected DRM application through a communication pipeline corresponding to the selected application. Program (arrow 12〇8). Next, the DRM should rely on the request to write the usage rights file to the hidden partition area (arrow 121〇). When the usage rights file has been written in this way, the security service The module system notifies the D-test application (arrow 1212). The DRM application then requests the security service module to generate a secret correction value, establish a content encryption key object, store the secret key and make it The content encryption key object is associated with the job application 1214J. After the request has been met, the sAJ is notified to the application (arrow 1216). , the = will = = full „ module system according to the transmission by the host (four) broadcast: machine; ^: 』 亥 内 + + encryption secret object read access to the = machine access control money (arrow 1218 ). The "material, the safety - spear system" And notifying the DRM application (arrow (4)). The DRM application notifies the security system that the user has stored the usage rights, wherein the notification is by _callback ... is transmitted (arrow 1222). This notification: the communication pipe is forwarded to the usage right servo 122364.doc -113- 200822669 (arrow 1224). The usage right server then transmits the associated one secret. The content file of the key ID is sent to the security service module system (arrow η%b) the security service module system encrypts the content by the key value identified by the key mountain, without involving any application. The content stored on the card can be played using the protocol of Figure 47. In the single-password and DRM embodiment described above, the feature set extension lamps (10) and 1102 can contain many different single-passwords and drm applications. The program is selected by the #host device. The user has a selection machine for selecting and calling the internal device of the desired device. However, the overall relationship between the security service module and the extension of the feature group remains the same. In order for the user and the data provider to use a standard set of protocols for interacting with the security service and for invoking the feature set extension. The user and provider do not need to become involved in many different devices. The nature of the application, some of the internal applications of the devices may be proprietary. Furthermore, the supply agreements may be slightly different 'as in Figures 46 and 48. In the case of Figure 46, the use The weight object contains a key value, but: v In the case of Figure 48, the usage object has no key value. This difference requires a slightly different agreement, as described above. However, the playback in Figure 47 is the same. And regardless of how the right to use is supplied. Thus, this difference will only be with respect to content providers and distributors, but typically is independent of the consumer, who typically only involves the playback phase. As a result, this architecture provides great flexibility to content providers and distributors to customize agreements while maintaining customer ease of use. Obviously, information derived from data supplied by more than two supply agreements can still be accessed using the second agreement. 122364.doc -114- 200822669 Another advantage provided by the above embodiments is that external entities (such as users) and internal applications of the devices can share the use of data controlled by the security data structure. However, the user can only access the results derived from the stored data by the internal applications of the devices. Therefore, in the embodiment of the single-password, the user who passes through the host devices can only obtain the single-password and cannot obtain the seed value. In the DRM embodiment, the user of the host device is only able to obtain the presented content, but does not access the usage rights file or password compilation key. This feature allows the consumer to be convenient without compromising security. In the DRM embodiment, the internal application and the host of the device do not access the 4th start code compiling key; only the security data structure can access the cryptographic key. In other embodiments, the real system other than the security data structure can also access the password compilation secret. The secret transmissions can also be generated by the internal applications of the devices and then controlled by the security data structure. Access to internal applications and access to information (eg, single passwords and presented content) is controlled by the same security data structure. This reduces the complexity of the control system and cost. The fine access is provided from the internal access control record (which controls access to the in-device/application know) to delegate access to the access control record (which controls the access to the device by calling the device) The ability of the internal application to obtain the above-mentioned features and functions makes it possible to achieve the above-mentioned features and functions. Application-specific abolition scheme 122364.doc -115- 200822669 When called - device internal application system, can also be Modifying the access control agreement of the security data structure. For example, the certificate revocation agreement may be a standard agreement or a proprietary agreement for revoking the list by 35. Therefore, by calling a feature group extension, the standard The voucher revocation list revocation agreement can be replaced by a feature group extension exclusive agreement. In addition to supporting the voucher revocation list abolition scheme, the secure storage application enables a specific internal application residing in the device to pass through the internal wave The host shall be abolished by applying a private communication channel between the authoring unit or any other abolition authority. The program-specific abolition scheme is limited to the host-application relationship. The configuration application-specific abolition scheme will be rejected. The φ full storage application system will reject the certificate revocation list (if provided), otherwise it will Use. Haixin and δHai exclusive application data (previously provided through an application-specific communication channel) to determine whether the given certificate is revoked. As mentioned above, an access control record is specified by Abolish the value, and specify which of the three abolition schemes (no abolition scheme, standard certificate abolition scheme, and application scheme abolition scheme) is adopted. When the application private specific abolition scheme option is selected, the access is selected. The control record will also specify one of the IDs of the internal application IDs used to manage the abolition scheme, and the value of the voucher revocation list expiration period/APPJD field will correspond to the internal application ID that manages the abolition scheme. When the device is recognized, the secure storage application system will then support the proprietary solution of the internal application. A set of protocols, a device internal application call can add additional access conditions to the access control that has been exercised by the secure storage application 122364.doc -116- 200822669. For example, + heart ^ can be a feature The group extends the right to a key value in a ^^。. After the access right, the key value will be granted. This feature allows the content owner to control the trait. The big bomb of the valley access is

雖然上文已參照各種實施例而敘述本發明,將瞭解的 實行變化及修改’而未不偏離本發明之範嘴,、本發 之耗彆僅由後附申請專利範圍及其均等物所定義。 【圖式簡單說明】 ° 圖1、、、曰不有助於闡釋本發明之與主機穿 、機衣置通矾之記憶體 系統之方塊圖。 圖2繪示有助於闡釋本發明之不同實施例之記憶體的不 同分割區及儲存於不同分割區之未經加密及經加密檔案之 示意圖,其中,對某些分割區及經加密檔案之存取係由存 取原則及鑑認程序所控制。 圖3繪示記憶體内不同分割區之記憶體的示意圖。 圖4繪示有助於闡釋本發明之不同實施例之示於圖3之圮 憶體的不同分割區之檔案位置表的示意圖,其中, 、咸寺分 割區内某些檔案係被加密。 圖5繪示有助於闡釋本發明之不同實施例之—存取#制 記錄群組内之存取控制記錄及相關密鑰參照之示意圖。 圖6繪示有助於闡釋本發明之不同實施例之由存取控制 記錄群組及存取控制記錄所形成之樹狀結構之示意圖。 122364.doc -117- 200822669 圖7、、、g示存取控制記錄群組之三個樹狀階層架構之樹的 示意圖’以闌釋樹的形式程序。 圖8A及8B繪示由一主機裝置及一諸如一記憶體卡之記 fe、體衣置所實行用於建立及使用一系統存取控制記錄之程 序的流程圖。 圖9繪示有助於闡釋本發明之不同實施例之一使用一系 統存取控制記錄以建立一存取控制記錄群組之程序的流程 圖。 圖10繪不一用於建立一存取控制記錄之程序的流程圖。 圖Π緣示樹狀階層架構之特定應用程式的兩個存取控制 記錄群組之示意圖。 圖12繪不一用於委派特定權利之程序的流程圖。 圖13繪不一存取控制記錄群組及一存取控制記錄之示意 圖,以闡釋圖12之委派特程序。 圖14繪示用於建立一用於加密及/或解密用途之密鑰的 程序的流程圖。 圖15繪不一用於根據一存取控制記錄移除存取權及/或 資料存取權限之程序的流程圖。 圖16、、、θ示用於*存取權及/或存取權限係已經被刪除 或已經過期時請求存取的程序的流程圖。 圖17Α及17Β繪示有助於閣釋本發明之不同實施例之用 於鑑認及授予存取密碼編譯密鑰之原則之規則結構的組織 之示意圖。 圖18繪不一用於根據原則來控制對受保護資訊之存取的 122364.doc •118- 200822669 替代方法之資料結構的方塊圖。 圖19繪示使用密碼之鑑認程序的流程圖。 圖20繪示若干主機憑證鏈之圖式。 圖2 U會示若干裝置憑證鏈之圖式。 圖22及圖23(包含圖23A及23B)!會示用於單向及互相鑑認 方案之程式的協定圖。 圖24!會示有助於闊釋本發明之_項實施例之—憑證鍵之 圖式。 ' ®25繪示在憑證緩衝區之前之-控制區段内的資訊的 t ’該資訊係由該主機傳送,用於傳送最後—憑證至一記 L體裝f ’其係顯示該憑證係該憑證鍵内最後一憑證之一 項指示,以闡釋本發明之另一項實施例。 囷及27係刀別顯示用於鑑認方案之卡及主機程序的流 程圖,其中,一記憶體卡正在鑑認一主機裝置。 圖28及29係分別顯示用於鑑認方案之卡及主機程序的流 耘圖,其中,主機裝置正在鑑認一記憶體卡。 圖〇及3 1、、、曰示为別由一主機裝置及一記憶體裝置所實施 之私序的机私圖,其中,該主機裝置榻取儲存於該記憶體 裝置内的憑證廢止清單,以闡釋本發明之另一項實施例。 圖32繪示列出憑證廢止清單内之欄位的憑證廢止清單圖 式,以閣釋本發明之另一項實施例。 圖33及34分別繪示用於使用憑證廢止清單來驗證憑證之 卡及主機程序的流程圖。 圖35纷示用於卡對傳送至該主機之資料加上簽名及用於 I22364.doc •119- 200822669 自該主機解密資料的卡程序的流程圖。 圖36繪示主機程序的流程圖,其中,卡對傳送至該主機 之資料加上簽名。 圖37繪示主機程序的流程圖,其中,該主機傳送經加密 資料至該記憶體卡。 圖38及39分別繪示用於一般資訊查詢及謹慎資訊查詢之 程序的流程圖。 圖40A係一纪憶體裝置(諸如一快閃記憶體卡)連接至一 主機裝置的糸統架構之功能方塊圖,以闡釋本發明之一項 實施例。 圖40B緣示圖40A之安全服務模組核心的内部軟體模組 之功能方塊圖。 圖41 %示用於建立單次密碼之系統之方塊圖。 圖42%示單次密碼(〇τρ)種子供應及單次密碼產生之功 能方塊圖。 圖43繪示種子供應階段的協定圖。 圖44繪示單次密碼產生階段的協定圖。 圖45繪示DRM系統的功能方塊圖。 圖46綠示用於使用權供應及内容下載之程序的協定圖, 其中’使用權物件中提供密鑰。 圖47纷示用於播放操作之程序的協定圖。 圖48纷示一用於使用權供應及内容下載之程序的協定 ® ’其中’使用權物件中未提供密鑰。 【主要元件符號說明】 122364.doc 200822669While the invention has been described above with reference to the various embodiments of the invention, it is understood that the invention may be modified and modified without departing from the scope of the invention, and the scope of the present invention is defined only by the scope of the appended claims and their equivalents. . [Simple description of the drawings] ° Figures 1, and 曰 do not help to explain the block diagram of the memory system of the present invention which is connected to the main body and the machine. 2 is a schematic diagram of assistance in explaining different partitions of memory of different embodiments of the present invention and unencrypted and encrypted files stored in different partitions, wherein for certain partitions and encrypted files Access is controlled by access principles and authentication procedures. FIG. 3 is a schematic diagram showing the memory of different partitions in the memory. 4 is a schematic diagram of a file location table for facilitating the interpretation of different partitions of the memory of FIG. 3 in accordance with various embodiments of the present invention, wherein certain files in the salt temple division are encrypted. 5 is a diagram of an access control record and associated key reference in an access group for facilitating the interpretation of various embodiments of the present invention. 6 is a schematic diagram of a tree structure formed by an access control record group and an access control record to facilitate the explanation of various embodiments of the present invention. 122364.doc -117- 200822669 Figures 7, 3, and 3 show a schematic diagram of a tree of three tree hierarchy structures of an access control record group in the form of a release tree. 8A and 8B are flow diagrams showing a procedure for establishing and using a system access control record by a host device and a memory card such as a memory card. Figure 9 is a flow diagram of a process for facilitating the use of a system access control record to establish an access control record group in accordance with one embodiment of the present invention. Figure 10 depicts a flow chart for a procedure for establishing an access control record. Figure 2 shows a schematic diagram of two access control record groups for a particular application of the tree hierarchy. Figure 12 depicts a flow chart for a procedure for delegating a particular right. Figure 13 depicts a schematic diagram of an access control record group and an access control record to illustrate the delegated procedure of Figure 12. Figure 14 is a flow chart showing a procedure for establishing a key for encryption and/or decryption purposes. Figure 15 depicts a flow diagram of a procedure for removing access rights and/or data access rights based on an access control record. Figures 16, and θ show flowcharts of programs for accessing * when access rights and/or access rights have been deleted or have expired. Figures 17A and 17B are diagrams showing an organization of a rule structure for facilitating the identification and granting of access to a cryptographic key for different embodiments of the present invention. Figure 18 depicts a block diagram of the data structure of an alternative method for controlling access to protected information in accordance with the principles of 122364.doc • 118- 200822669. Figure 19 is a flow chart showing the authentication procedure using a password. Figure 20 depicts a diagram of a number of host credential chains. Figure 2 U shows a diagram of several device credential chains. Figures 22 and 23 (including Figures 23A and 23B) show the agreement diagram for the one-way and mutual authentication schemes. Figure 24! shows a diagram of the voucher key that facilitates the release of the embodiment of the present invention. ' ® 25 is shown before the voucher buffer - the information in the control section t ' the information is transmitted by the host, used to transfer the last - voucher to a L-package f 'the system displays the voucher An indication of the last voucher in the voucher key to illustrate another embodiment of the present invention.囷 and 27 series cutters show the flow chart of the card and host program for the authentication scheme, in which a memory card is authenticating a host device. Figures 28 and 29 are flow diagrams showing the card and host program for the authentication scheme, respectively, wherein the host device is authenticating a memory card. 〇 〇 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机 主机To illustrate another embodiment of the invention. Figure 32 is a diagram showing a list of vouchers for listing the fields in the vouchers list to illustrate another embodiment of the present invention. Figures 33 and 34 are flow diagrams showing the card and host program for verifying the voucher using the voucher revocation list, respectively. Figure 35 is a flow chart showing the card program used by the card to sign the data transmitted to the host and for the I22364.doc • 119-200822669 card program to decrypt the data from the host. Figure 36 is a flow diagram of a host program in which a card signs a message transmitted to the host. Figure 37 is a flow diagram of a host program in which the host transmits encrypted data to the memory card. 38 and 39 are flowcharts showing procedures for general information inquiry and cautious information inquiry, respectively. Figure 40A is a functional block diagram of a architecture of a memory device (such as a flash memory card) coupled to a host device to illustrate an embodiment of the present invention. Figure 40B is a functional block diagram of the internal software module of the core of the security service module of Figure 40A. Figure 41 shows a block diagram of a system for creating a one-time password. Figure 42% shows the functional block diagram of the single-password (〇τρ) seed supply and single-password generation. Figure 43 depicts an agreement diagram for the seed supply phase. Figure 44 illustrates a protocol diagram for a single password generation phase. Figure 45 is a functional block diagram of the DRM system. Fig. 46 is a green diagram showing a protocol for the procedure of use right supply and content download, in which the key is provided in the use right object. Figure 47 shows an agreement diagram for the program for the playback operation. Figure 48 shows an agreement for the procedure for use rights provisioning and content downloading ® 'where the key is not provided in the usage rights object. [Main component symbol description] 122364.doc 200822669

/ 10 記憶體系統 10, 記憶體卡或記憶體條 12 中央處理單元 12a 中央處理單元隨機存取記憶體 14 緩衝管理單元(BMU) 16 主機介面模組(HIM) 18 快閃記憶體介面模組(FIM) 20 快閃記憶體 22 周邊裝置存取模組(PAM) 24 主機裝置 26 主機介面匯流排 26a 埠 28 快閃記憶體介面匯流排 28a 埠 32 主機直接記憶體存取(HDMA) 34 快閃直接記憶體存取(FDMA) 36 仲裁器 38 緩衝隨機存取記憶體(BRAM) 40 密碼編譯引擎 101 檔案 102及104 檔案 106 未經加密檔案 130 根存取控制記錄群組 132 根存取控制記錄群組 122364.doc -121 - 200822669 400 線 402 鑑認 404 存取相關聯於一密鑰ID X之檔案 406 檔案+密鑰ID X 410 確定? 412 開放式會期相關聯資料之表 414 使用會期A與密鑰ID X進行存取 502 主機根憑證授權單位憑證 504 主機1憑證授權單位(第二層級)憑證 506 主機憑證 508 主機η憑證授權單位(第二層級)憑證 510 主機1憑證授權單位(第三層級)憑證 512 主機憑證 514 主機憑證 520 裝置根憑證授權單位憑證 522 裝置1憑證授權單位(製造商)憑證 524 裝置憑證 526 裝置η憑證授權單位(製造商)憑證 528 裝置憑證 542 安全服務模組系統 540 主機糸統 550 存取控制記錄 548 主機根憑證 544 主機憑證 122364.doc -122- 200822669 546 主機公開密錄 549 中間憑證授權單位 554 隨機號碼 547 私有密鑰 562 隨機號碼 590 憑證鏈 590(1) 憑證鍵 590(2) 憑證 ( 590(9) 憑證 591 、 593 、 595 、 597及599 憑證串 1000 系統架構 1002 安全儲存應用程式傳輸層 1004 安全服務模組核心 1012 密碼編譯庫 1006 安全服務模組核心API % 1010 裝置内部應用程式 1008 安全性應用程式管理員模組 1011 裝置管理系統 1022 安全儲存應用程式命令處理常式 1024 安全儲存應用程式管理員 1026 安全儲存應用程式資料庫 1028 安全儲存應用程式非安全操作模組 1030 安全儲存應用程式安全操作模組 122364.doc -123- 200822669 1032 模組 1034 模組 1050 系統 1052 鑑認伺服器 1054 網際網路伺服器 1058 符記 1056 使用者 1100 安全儲存應用程式特徵組延伸系統 1102 軟體程式碼特徵組延伸 1104 通訊管道 1106 應用程式存取控制記錄 1101 存取控制記錄 1103 存取控制記錄 1106 存取控制記錄 1110 存取控制記錄 1120 身份物件 1122 身份物件 1114 安全資料物件 1116 身份物件 1104f 通訊管道 1102f 特徵組延伸應用程式 1108f 連結(關聯性) 1114f 内容加密密鑰 1101,、1103,及 控制結構 122364.doc -124- 200822669 1106f 1110’ 存取控制記錄 122364.doc 125-/ 10 Memory System 10, Memory Card or Memory Bar 12 Central Processing Unit 12a Central Processing Unit Random Access Memory 14 Buffer Management Unit (BMU) 16 Host Interface Module (HIM) 18 Flash Memory Interface Module (FIM) 20 Flash Memory 22 Peripheral Access Module (PAM) 24 Host Device 26 Host Interface Bus 26a 埠 28 Flash Memory Interface Bus 28a 埠 32 Host Direct Memory Access (HDMA) 34 Fast Flash Direct Memory Access (FDMA) 36 Arbiter 38 Buffered Random Access Memory (BRAM) 40 Password Compilation Engine 101 Files 102 and 104 Files 106 Unencrypted Files 130 Root Access Control Record Group 132 Root Access Control Record Group 122364.doc -121 - 200822669 400 Line 402 Authentication 404 Access File 406 associated with a Key ID X File + Key ID X 410 OK? 412 Open Session Related Data Table 414 Access Using Session A and Key ID X 502 Host Root Credential Authorization Unit Credential 504 Host 1 Credential Authorization Unit (Second Level) Credential 506 Host Credential 508 Host n Credential Authorization Unit (Second Level) Document 510 Host 1 Document Authorization Unit (Level 3) Document 512 Host Document 514 Host Document 520 Device Root Document Authorization Unit Document 522 Device 1 Document Authorization Unit (Manufacturer) Document 524 Device Document 526 Device η Document Authorized Unit (Manufacturer) Voucher 528 Device Credentials 542 Security Service Module System 540 Host System 550 Access Control Record 548 Host Root Credentials 544 Host Credentials 122364.doc -122- 200822669 546 Host Public Directory 549 Intermediate Credential Authorization Unit 554 Random Number 547 Private Key 562 Random Number 590 Credential Chain 590(1) Credential Key 590(2) Credentials (590(9) Credentials 591, 593, 595, 597, and 599 Credential String 1000 System Architecture 1002 Secure Storage Application Transport Layer 1004 Security Service Module Core 1012 Password Compilation Library 1006 Ann Full Service Module Core API % 1010 Device Internal Application 1008 Security Application Administrator Module 1011 Device Management System 1022 Secure Storage Application Command Processing 1024 Secure Storage Application Administrator 1026 Secure Storage Application Database 1028 Security Storage Application Non-Security Operating Module 1030 Secure Storage Application Security Operation Module 122364.doc -123- 200822669 1032 Module 1034 Module 1050 System 1052 Authentication Server 1054 Internet Server 1058 Symbol 1056 User 1100 Secure Storage Application Feature Group Extension System 1102 Software Code Feature Group Extension 1104 Communication Pipeline 1106 Application Access Control Record 1101 Access Control Record 1103 Access Control Record 1106 Access Control Record 1110 Access Control Record 1120 Identity Object 1122 Identity Object 1114 Security Data Object 1116 Identity Object 1104f Communication Pipe 1102f Feature Group Extension Application 1108f Link (Affinity) 1114f Content Encryption Key 1101, 1103, and Control Structure 122364.doc -124- 200822669 11 06f 1110’ Access Control Record 122364.doc 125-

Claims (1)

200822669 十、申請專利範圍·· 1 · 一種非揮發性記憶體系統,其包含·· 至少一控制資料結構; 一控制器,其使用該至少一抑 體裝置之操作; 。制貝紅構控制該記憶 一:::發性記憶體’其儲存—物件,該物件包含具有 至小―:鑰:—公開密鑰的—密鑰對、至少-憑證及該 r ㈣之^育料結構,該至少—控制資料結構控制對該 ^奸,其中該控制器利用該私有密鑰來簽名資料 次自该貧料推導出的信號;及 风體’其包覆該非揮發性記憶體與控制器。 •明求項1之系統,該至少一押制資料钍-扭^ 機制,其控制對於該物件之存? 冓“, 存取該物件。 存取’使付僅經鐘認實體可 求項1之系統,該殼體具有-卡片的形狀。 體。月长項1之系統’該非揮發性記憶體包含_快閃記憶 5. 一種非揮發性記憶體系統,其包含: 至少一控制資料結構; 一控制器,其传用兮P 體裝置之操作;、…-控制資料結構控制該記憶 軍I 1± σ己憶體,其儲存一物件, 一私有密鑰與一公从 十匕3具有 、一 二 幵1饴鑰的一密鑰對、至少一憑證,該 技制貝料結構藉由一鐘認機制來控制對該物件之 122364.doc 200822669 存取使付僅有經鑑遇之實體可存取該物件,其中該控 制器使用該鑑認機制鑑認一實體,並供應該至少一憑證 給一經鑑認之實體來檢定該公開密鑰,其中該系統接收 藉由該公開密鑰加密的資料,該控制器使用該私有密鑰 解密藉由該公開密鑰加密的資料;及 一殼體,其包覆該非揮發性記憶體與控制器。 6·如請求項5之系統,該殼體具有一卡片的形狀。 7·如請求項5之系統,該非揮發性却200822669 X. Patent Application Range · 1 · A non-volatile memory system comprising: at least one control data structure; a controller using the operation of the at least one suppression device; The system controls the memory one::: hair memory's storage-object, the object contains a key pair with at least ": key: - public key", at least - a voucher and the r (four) ^ An educational structure, the at least control data structure controlling the fraud, wherein the controller uses the private key to sign a signal derived from the poor material; and the wind body 'covers the non-volatile memory With the controller. • The system of claim 1, the at least one charge data-twist mechanism, which controls the existence of the object?冓 ", access to the object. Access 'to make a system that only recognizes the entity to claim item 1, the shell has the shape of a - card. Body. System of month length 1 'The non-volatile memory contains _ Flash memory 5. A non-volatile memory system, comprising: at least one control data structure; a controller that transmits the operation of the 兮P body device;, ...-control data structure controls the memory army I 1± σ a memory object, which stores an object, a private key and a key pair with at least one of the keys, and at least one voucher. The technical bedding structure is controlled by a clock. To control the access of the object to the object that only the authenticated entity has access to the object, wherein the controller uses the authentication mechanism to authenticate an entity and supply the at least one certificate to a Identifying the public key by the entity, wherein the system receives the data encrypted by the public key, the controller uses the private key to decrypt the data encrypted by the public key; and a casing, the package Overlay the non-volatile memory and Is prepared. 6. The system according to item 5 of the request, the housing having a card shape. 7. The system according to item 5 of the request, but the non-volatile 平知『°己饭體包含一快閃記憶 8. —種藉由一非揮發性 的方法,其包含: 至少一控制資料結構;及 一非揮發性記憶體,其儲存一物 切仟,遠物件包含該實 體所擁有的一密鑰對、識別該實體 、 κ艰之至少一憑證及該至 >'一控制資料結構,該方法包含: 可移除地連接該記憶體系統至一主機裝置· 藉由該至少一控制資料結構向該 ^ 口己憶體糸統鑑認該主 機裝置·, 茨 在已經成功地鑑認該主機裝置之後, 十丄 刼用该私有密鑰 來加密來自該主機裝置的資料或自 號;及 χ貝枓推導出的信 傳送該至少一憑證與該經加密資料 、了十及仏號到該主機裝 置0 實體之資料的方 9· 一種藉由一非揮發性記憶體系統保護一 122364.doc 200822669 法,該非揮發性記憶體系統包含: 至少一控制資料結構;及 一非揮發性記憶體,其儲存一物件,該物件包含具有 一私有密鑰與一公開密鑰的一密鑰對、至少一憑證與至 少一控制資料結構,該方法包含: 可移除地連接該記憶體系統到一主機裝置; 藉由該至少一控制資料結構向該記憶體系統鑑認該主 機裝置; 在已經成功地鑑認該主機裝置之後,供應該至少一憑 證給該主機裝置以檢定該公開密鑰; 接收藉由該公開密鑰所加密的資料;及 使用該私有密鑰解密該資料。 122364.docI know that "the hex" contains a flash memory. 8. By a non-volatile method, it comprises: at least one control data structure; and a non-volatile memory, which stores a tangible, far The object includes a key pair owned by the entity, identifying the entity, at least one credential and the control data structure, the method comprising: removably connecting the memory system to a host device · Authenticating the host device with the at least one control data structure. After the host device has been successfully authenticated, the tenth uses the private key to encrypt the host device. a data or a self-number of the device; and a letter derived from the χ 枓 传送 transmitting the at least one voucher and the encrypted data, the ten and the nickname to the data of the host device 0 entity. The memory system protects a method of 122364.doc 200822669, the non-volatile memory system comprising: at least one control data structure; and a non-volatile memory storing an object, the object comprising a key pair having a private key and a public key, at least one credential and at least one control data structure, the method comprising: removably connecting the memory system to a host device; by the at least one control The data structure authenticates the host device to the memory system; after successfully authenticating the host device, supplying the at least one credential to the host device to authenticate the public key; receiving the encrypted by the public key Data; and use the private key to decrypt the data. 122364.doc
TW096124586A 2006-07-07 2007-07-06 Control system and method using identity objects TW200822669A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US81950706P 2006-07-07 2006-07-07
US11/557,041 US8639939B2 (en) 2006-07-07 2006-11-06 Control method using identity objects
US11/557,039 US20080010458A1 (en) 2006-07-07 2006-11-06 Control System Using Identity Objects

Publications (1)

Publication Number Publication Date
TW200822669A true TW200822669A (en) 2008-05-16

Family

ID=38728800

Family Applications (1)

Application Number Title Priority Date Filing Date
TW096124586A TW200822669A (en) 2006-07-07 2007-07-06 Control system and method using identity objects

Country Status (5)

Country Link
EP (1) EP2038799A2 (en)
JP (1) JP4972165B2 (en)
KR (1) KR20090034332A (en)
TW (1) TW200822669A (en)
WO (1) WO2008008243A2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7743409B2 (en) 2005-07-08 2010-06-22 Sandisk Corporation Methods used in a mass storage device with automated credentials loading
FR2954656B1 (en) 2009-12-23 2016-01-08 Oberthur Technologies PORTABLE ELECTRONIC DEVICE AND ASSOCIATED METHOD FOR PROVIDING INFORMATION
JP2016019120A (en) * 2014-07-08 2016-02-01 日本電気通信システム株式会社 Decoding device, communication system, decoding method, and program
CN112738643B (en) * 2020-12-24 2022-09-23 北京睿芯高通量科技有限公司 System and method for realizing safe transmission of monitoring video by using dynamic key

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3012407B2 (en) * 1992-08-31 2000-02-21 日本電気アイシーマイコンシステム株式会社 Level conversion circuit
US5473692A (en) * 1994-09-07 1995-12-05 Intel Corporation Roving software license for a hardware agent
US5778071A (en) * 1994-07-12 1998-07-07 Information Resource Engineering, Inc. Pocket encrypting and authenticating communications device
US6584495B1 (en) * 1998-01-30 2003-06-24 Microsoft Corporation Unshared scratch space
US6779113B1 (en) * 1999-11-05 2004-08-17 Microsoft Corporation Integrated circuit card with situation dependent identity authentication
CN100583117C (en) * 2004-12-21 2010-01-20 桑迪士克股份有限公司 General content control method with partitions

Also Published As

Publication number Publication date
EP2038799A2 (en) 2009-03-25
KR20090034332A (en) 2009-04-07
WO2008008243A2 (en) 2008-01-17
JP4972165B2 (en) 2012-07-11
JP2009543210A (en) 2009-12-03
WO2008008243A3 (en) 2008-02-28

Similar Documents

Publication Publication Date Title
US8140843B2 (en) Content control method using certificate chains
US8639939B2 (en) Control method using identity objects
US8245031B2 (en) Content control method using certificate revocation lists
US8613103B2 (en) Content control method using versatile control structure
CN101490687B (en) Control system and method using identity objects
US8266711B2 (en) Method for controlling information supplied from memory device
US20080010452A1 (en) Content Control System Using Certificate Revocation Lists
US20080010449A1 (en) Content Control System Using Certificate Chains
US20100138652A1 (en) Content control method using certificate revocation lists
US20080034440A1 (en) Content Control System Using Versatile Control Structure
US20080022395A1 (en) System for Controlling Information Supplied From Memory Device
US20080010458A1 (en) Control System Using Identity Objects
JP5180203B2 (en) System and method for controlling information supplied from a memory device
CN101120352A (en) Memory system with common content control
TW200823715A (en) Content control system and method using certificate revocation lists
TW200822670A (en) Content control system and method using versatile control structure
TW200820037A (en) Content control system and method using certificate chains
JP2008524758A (en) Control structure generation system for multi-purpose content control
JP2008524758A5 (en)
TW200822669A (en) Control system and method using identity objects
JP2008524757A (en) Control structure for multi-purpose content control and method using the control structure