(57)【要約】【課題】  コンピューティングデバイスに関連する記憶媒体にデータを書き込む、コンピューティングデバイス上のアプリケーションを提供する。【解決手段】  データは、記憶媒体上のオブジェクトに関連付けられたセキュリティで保護された記憶領域に書き込まれることになり、セキュリティで保護された記憶領域は、関連付けられた値記憶領域を有する。アプリケーションは、ｎｏｎｃｅを生成し、共有セッションキー（ＫＳ）を使用してｎｏｎｃｅを暗号化して、（ＫＳ（ｎｏｎｃｅ））がもたらされる。記憶媒体は、（ＫＳ（ｎｏｎｃｅ））を受け取り、（ＫＳ）を使用して（ＫＳ（ｎｏｎｃｅ））を解読してｎｏｎｃｅをもたらし、セキュリティで保護された記憶領域に関連付けられた値記憶領域を特定し、特定された値記憶領域の中にそのようなｎｏｎｃｅを格納する。【選択図】  図４
2005332399.tif 000002
【特許請求の範囲】
【請求項１】
コンピューティングデバイス上のアプリケーションが、前記コンピューティングデバイスに関連付けられた記憶媒体にデータを書き込み、前記データは、前記記憶媒体上のオブジェクトに関連付けられたセキュリティで保護された記憶領域に書き込まれる方法であって、
前記アプリケーションおよび前記記憶媒体が、共有の秘密としてセッションキー（ＫＳ）を確立するステップと、
前記アプリケーションが、データキー（ＫＡ）を選択し、（ＫＡ（データ））をもたらすため前記データキー（ＫＡ）を使用して前記データを保護するステップと、
前記アプリケーションが、前記セッションキー（ＫＳ）を使用して（ＫＡ（データ））を暗号化して（ＫＳ（ＫＡ（データ）））をもたらし、（ＫＳ（ＫＡ（データ）））を前記記憶媒体に送るステップと、
前記記憶媒体が、（ＫＳ（ＫＡ（データ）））を受け取り、（ＫＳ）を使用して（ＫＳ（ＫＡ（データ）））を解読して（ＫＡ（データ））をもたらし、前記オブジェクトに関連付けられた前記セキュリティで保護された記憶領域を特定し、前記（ＫＡ（データ））を前記特定されたセキュリティで保護された記憶領域の中に格納するステップと、
を備えることを特徴とする方法。
【請求項２】
前記アプリケーションが、前記コンピューティングデバイスに関連付けられた既存のファイルシステム、および、前記ファイルシステムの確立された「セキュリティで保護された書き込み」コマンドを使用して、前記記憶媒体に（ＫＳ（ＫＡ（データ）））を送るステップを備えることを特徴とする請求項１に記載の方法。
【請求項３】
前記アプリケーションが、前記セキュリティで保護された書き込みコマンドを使用して、（ＫＳ（ＫＡ（データ）））を特定することができる場所、および前記（ＫＳ（ＫＡ（データ）））を受け取るべき前記セキュリティで保護された記憶領域に関連付けられた、もしくは、関連付けられるべき前記オブジェクトを識別するステップと、
前記ファイルシステムが、（ＫＳ（ＫＡ（データ）））を特定し、（ＫＳ（ＫＡ（データ）））、前記関連付けられたオブジェクトのＩＤとともに前記記憶媒体に要求を送るステップと、
前記記憶媒体が、前記特定されたオブジェクトに関連付けられた前記セキュリティで保護された記憶領域に（ＫＡ（データ））を書き込むステップと、  
をさらに備えることを特徴とする請求項２に記載の方法。
【請求項４】
前記記憶媒体が、ルックアップテーブルに基づき、前記オブジェクトに関連付けられた前記セキュリティで保護された記憶領域を特定するステップを備えることを特徴とする請求項１に記載の方法。
【請求項５】
前記オブジェクトは、前記記憶媒体上の少なくとも１つのセクタ上に格納された少なくとも１つのファイルを含み、前記セクタは、前記記憶媒体上のセクタヘッダを含み、
前記記憶媒体が、前記オブジェクトに関連付けられた前記セキュリティで保護された記憶領域を前記オブジェクトの前記ファイルの前記セクタの前記セクタヘッダとして探し出すステップを備えることを特徴とする請求項１に記載の方法。
【請求項６】
前記オブジェクトに関連付けられた前記セキュリティで保護された記憶領域を特定する前記ステップは、前記オブジェクトが、前記記憶媒体上でまだ作成されていないと前記記憶媒体が判定するステップ、並びに、前記オブジェクトのダミー表現をプレースホルダとして作成するステップ、および、前記オブジェクトが作成されるまで（ＫＡ（データ））をキャッシュするステップのうちの１つを含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記アプリケーションと前記記憶媒体が、共有の秘密としてセッションキー（ＫＳ）を確立するステップと、
前記アプリケーションが、前記オブジェクトに関連付けられた前記セキュリティで保護された記憶領域から（ＫＡ（データ））を要求するステップと、
前記記憶媒体が、前記セキュリティで保護された記憶領域から（ＫＡ（データ））を取り出し、（ＫＳ）を使用して（ＫＡ（データ））を暗号化して（ＫＳ（ＫＡ（データ）））をもたらし、（ＫＳ（ＫＡ（データ）））を戻すステップと、
前記アプリケーションが、（ＫＳ（ＫＡ（データ）））を受け取り、（ＫＳ）を（ＫＳ（ＫＡ（データ）））に適用して（ＫＡ（データ））をもたらし、（ＫＡ）を獲得し、（ＫＡ）を（ＫＡ（データ））に適用して前記データをもたらすステップと、
によって前記保存されたデータを読み取るステップをさらに備えることを特徴とする請求項１に記載の方法。
【請求項８】
前記アプリケーションが、前記コンピューティングデバイスに関連付けられた既存のファイルシステム、および、該ファイルシステムの確立された「セキュリティで保護された読み取り」コマンドを使用して（ＫＡ（データ））を要求するステップを備えることを特徴とする請求項７に記載の方法。
【請求項９】
前記アプリケーションが、前記セキュリティで保護された読み取りコマンドを使用して、前記オブジェクト、および（ＫＡ（データ））の宛先の場所を識別するステップと、
前記ファイルシステムが、前記明らかにされたオブジェクトを探し出す要求を前記記憶媒体に送るステップと、
前記記憶媒体が、前記識別されたオブジェクトに関連付けられた前記セキュリティで保護された記憶領域から（ＫＡ（データ））を読み取るステップと、
を備えることを特徴とする請求項８に記載の方法。
【請求項１０】
前記アプリケーションが、データキー（ＫＡ）を選択し、（ＫＡ）を使用して前記データを暗号化して（ＫＡ（データ））をもたらすステップを備えることを特徴とする請求項１に記載の方法。
【請求項１１】
コンピューティングデバイス上のアプリケーションが、前記コンピューティングデバイスに関連付けられた記憶媒体にデータを書き込み、前記データは、前記記憶媒体上のオブジェクトに関連付けられたセキュリティで保護された記憶領域に書き込まれ、前記セキュリティで保護された記憶領域は、前記セキュリティで保護された記憶領域に関連付けられた前記記憶媒体上に値記憶領域を有する方法であって、
前記アプリケーションと前記記憶媒体が、共有の秘密としてセッションキー（ＫＳ）を確立するステップと、
前記アプリケーションが、ｎｏｎｃｅを生成し、前記セッションキー（ＫＳ）を使用して前記ｎｏｎｃｅを暗号化して（ＫＳ（ｎｏｎｃｅ））をもたらすステップと、
前記アプリケーションが、前記記憶媒体に（ＫＳ（ｎｏｎｃｅ））を送るステップと、
前記記憶媒体が、（ＫＳ（ｎｏｎｃｅ））を受け取り、（ＫＳ）を使用して（ＫＳ（ｎｏｎｃｅ））を解読して前記ｎｏｎｃｅをもたらし、前記セキュリティで保護された記憶領域に関連する前記値記憶領域を識別し、前記識別された値記憶領域の中に該ｎｏｎｃｅを格納するステップと、
前記アプリケーションが、前記ｎｏｎｃｅを使用してキー（ＫＨ）を生成し、（ＫＨ）を使用して前記データを保護して（ＫＨ（データ））をもたらし、前記記憶媒体上において前記セキュリティで保護された記憶領域の中に格納するために（ＫＨ（データ））を前記記憶媒体に送り、（ＫＨ（データ））が、前記値記憶領域の中の前記ｎｏｎｃｅに関連付けられるステップと、
を備えることを特徴とする方法。
【請求項１２】
前記アプリケーションが、前記ｎｏｎｃｅとデータキー（ＫＡ）を所定の形で結合し、前記結合に対して一方向ハッシュを実行して前記キー（ＫＨ）をもたらすステップを備えることを特徴とする請求項１１に記載の方法。
【請求項１３】
前記アプリケーションが、前記コンピューティングデバイスに関連付けられた既存のファイルシステム、および、前記ファイルシステムの確立された「値書き込み」コマンドを使用して、前記記憶媒体に（ＫＳ（ｎｏｎｃｅ））を送るステップを備えることを特徴とする請求項１１に記載の方法。
【請求項１４】
前記アプリケーションが、前記値書き込みコマンドを使用して、（ＫＳ（ｎｏｎｃｅ））を探し出すことができる場所、および、前記（ＫＳ（ｎｏｎｃｅ））を受け取るべき前記値記憶領域に関連付けられた、もしくは、関連付けられるべき前記セキュリティで保護された記憶領域を識別するステップと、
前記ファイルシステムが、（ＫＳ（ｎｏｎｃｅ））を特定し、（ＫＳ（ｎｏｎｃｅ））、前記関連付けられたセキュリティで保護された記憶領域のＩＤとともに前記記憶媒体に要求を送るステップと、
前記記憶媒体が、前記特定されたセキュリティで保護された記憶領域に関連付けられた前記値記憶領域に前記ｎｏｎｃｅを書き込むステップと、
を備えることを特徴とする請求項１３に記載の方法。
【請求項１５】
前記記憶媒体が、ルックアップテーブルに基づき、前記セキュリティで保護された記憶領域に関連付けられた前記値記憶領域を特定するステップを備えることを特徴とする請求項１１に記載の方法。
【請求項１６】
前記セキュリティで保護された記憶領域は、前記記憶媒体上の少なくとも１つのセクタ上に格納された少なくとも１つのファイルを含み、前記セクタは、前記記憶媒体上のセクタヘッダを含み、
前記記憶媒体が、前記セキュリティで保護された記憶領域に関連付けられた前記値記憶領域を、前記セキュリティで保護された記憶領域の前記ファイルの前記セクタの前記セクタヘッダとして特定するステップを備えることを特徴とする請求項１１に記載の方法。
【請求項１７】
前記セキュリティで保護された記憶領域に関連付けられた前記値記憶領域を特定する前記ステップは、前記セキュリティで保護された記憶領域が前記記憶媒体上でまだ作成されていないと前記記憶媒体が判定するステップ、並びに、前記セキュリティで保護された記憶領域のダミー表現をプレースホルダとして作成するステップ、および、前記セキュリティで保護された記憶領域が作成されるまで前記ｎｏｎｃｅをキャッシュするステップのうちの１つを備えることを特徴とする請求項１１に記載の方法。
【請求項１８】
前記アプリケーションと前記記憶媒体が、共有の秘密としてセッションキー（ＫＳ）を確立するステップと、
前記アプリケーションが、前記セキュリティで保護された記憶領域に関連付けられた前記値記憶領域から前記ｎｏｎｃｅを要求するステップと、
前記記憶媒体が、前記値記憶領域から前記ｎｏｎｃｅを取り出し、（ＫＳ）を使用して前記ｎｏｎｃｅを暗号化して（ＫＳ（ｎｏｎｃｅ））をもたらし、（ＫＳ（ｎｏｎｃｅ）を戻すステップと、
前記アプリケーションが、（ＫＳ（ｎｏｎｃｅ））を受け取り、（ＫＳ）を（ＫＳ（ｎｏｎｃｅ））に適用して前記ｎｏｎｃｅをもたらすステップと、
前記アプリケーションが、前記ｎｏｎｃｅを使用して前記キー（ＫＨ）を生成し、前記記憶媒体上の前記セキュリティで保護された記憶領域から（ＫＨ（データ））を取り出し、前記キー（ＫＨ）を適用して（ＫＨ（データ））を解読して前記データをもたらすステップと、
によって前記格納されたデータを読み取るステップをさらに備えることを特徴とする請求項１１に記載の方法。
【請求項１９】
前記アプリケーションが、前記コンピューティングデバイスに関連付けられた既存のファイルシステム、および、前記ファイルシステムの確立された「値読み取り」コマンドを使用して前記ｎｏｎｃｅを要求するステップを備えることを特徴とする請求項１８に記載の方法。
【請求項２０】
前記アプリケーションが、前記値読み取りコマンドを使用して、前記セキュリティで保護された記憶領域、および前記ｎｏｎｃｅの宛先の場所を識別するステップと、
前記ファイルシステムが、前記識別されたセキュリティで保護された記憶領域を特定する要求を前記記憶媒体に送るステップと、
前記記憶媒体が、前記識別されたセキュリティで保護された記憶領域に関連付けられた前記値記憶領域から前記ｎｏｎｃｅを読み取るステップと、
をさらに備えることを特徴とする請求項１９に記載の方法。
【請求項２１】
前記値記憶領域の中の前記ｎｏｎｃｅを異なる値で置き換えることにより、前記セキュリティで保護された記憶領域の中の前記データの使用を終了するステップをさらに備えることを特徴とする請求項１１に記載の方法。
【請求項２２】
コンピューティングデバイス上のアプリケーションが、前記コンピューティングデバイスに関連付けられた記憶媒体からデータを読み取る方法であって、
前記記憶媒体上の前記データは、前記記憶媒体上のオブジェクトに関連付けられたセキュリティで保護された記憶領域の中にあり、前記セキュリティで保護された記憶領域は、前記セキュリティで保護された記憶領域に関連付けられた前記記憶媒体上に値記憶領域を有し、前記記憶媒体は、前記値記憶領域の中にｎｏｎｃｅを格納し、前記ｎｏｎｃｅは、キー（ＫＨ）を生成するのに使用され、前記データは、（ＫＨ）を使用して保護されて（ＫＨ（データ））がもたらされ、前記（ＫＨ（データ））として前記セキュリティで保護された記憶領域の中に格納され、前記セキュリティで保護された記憶領域の中の（ＫＨ（データ））が、前記値記憶領域の中の前記ｎｏｎｃｅに関連付けられるようになり、
前記アプリケーションと前記記憶媒体が、共有の秘密としてセッションキー（ＫＳ）を確立するステップと、
前記アプリケーションが、前記セキュリティで保護された記憶領域に関連付けられた前記値記憶領域から前記ｎｏｎｃｅを要求するステップと、
前記記憶媒体が、前記値記憶領域から前記ｎｏｎｃｅを取り出し、（ＫＳ）を使用して前記ｎｏｎｃｅを暗号化して（ＫＳ（ｎｏｎｃｅ））をもたらし、（ＫＳ（ｎｏｎｃｅ））を戻すステップと、
前記アプリケーションが、（ＫＳ（ｎｏｎｃｅ））を受け取り、（ＫＳ）を（ＫＳ（ｎｏｎｃｅ））に適用して前記ｎｏｎｃｅをもたらすステップと、
前記アプリケーションが、前記ｎｏｎｃｅを使用して前記キー（ＫＨ）を生成し、前記記憶媒体上の前記セキュリティで保護された記憶領域から（ＫＨ（データ））を取り出し、前記キー（ＫＨ）を適用して（ＫＨ（データ））を解読して前記データをもたらすステップと、
を備えることを特徴とする方法。
【請求項２３】
前記アプリケーションが、前記コンピューティングデバイスに関連する既存のファイルシステム、および、前記ファイルシステムの確立された「値読み取り」コマンドを使用して前記ｎｏｎｃｅを要求するステップを備えることを特徴とする請求項２２に記載の方法。
【請求項２４】
前記アプリケーションが、前記値読み取りコマンドを使用して、前記セキュリティで保護された記憶領域、および、前記ｎｏｎｃｅの宛先の場所を識別するするステップと、
前記ファイルシステムが、前記識別されたセキュリティで保護された記憶領域を特定する要求を前記記憶媒体に送るステップと、
前記記憶媒体が、前記識別されたセキュリティで保護された記憶領域に関連付けられた前記値記憶領域から前記ｎｏｎｃｅを読み取るステップと、
をさらに備えることを特徴とする請求項２３に記載の方法。
【請求項２５】
コンピューティングデバイス上のアプリケーションが、前記コンピューティングデバイスに関連付けられた記憶媒体からデータを読み取る方法であって、
前記記憶媒体上の前記データは、前記記憶媒体上のオブジェクトに関連付けられたセキュリティで保護された記憶領域の中にあり、前記セキュリティで保護された記憶領域の中の前記データは、（ＫＡ）を使用して保護されて（ＫＡ（データ））がもたらされ、前記（ＫＡ（データ））として前記セキュリティで保護された記憶領域の中に格納されて、前記セキュリティで保護された記憶領域の中の（ＫＡ（データ））が、前記オブジェクトに関連付けられるようになり、
前記アプリケーションと前記記憶媒体が、共有の秘密としてセッションキー（ＫＳ）を確立するステップと、
前記アプリケーションが、前記オブジェクトに関連付けられた前記セキュリティで保護された記憶領域から（ＫＡ（データ））を要求するステップと、
前記記憶媒体が、前記セキュリティで保護された記憶領域から（ＫＡ（データ））を取り出し、（ＫＳ）を使用して（ＫＡ（データ））を暗号化して（ＫＳ（ＫＡ（データ）））をもたらし、（ＫＳ（ＫＡ（データ）））を戻すステップと、
前記アプリケーションが、（ＫＳ（ＫＡ（データ）））を受け取り、（ＫＳ）を（ＫＳ（ＫＡ（データ）））に適用して（ＫＡ（データ））をもたらし、（ＫＡ）を獲得し、（ＫＡ）を（ＫＡ（データ））に適用して前記データをもたらすステップと、
を備えることを特徴とする方法。
【請求項２６】
前記アプリケーションが、前記コンピューティングデバイスに関連付けられた既存のファイルシステム、および、前記ファイルシステムの確立された「セキュリティで保護された読み取り」コマンドを使用して（ＫＡ（データ））を要求するステップを備えることを特徴とする請求項２５に記載の方法。
【請求項２７】
前記アプリケーションが、前記セキュリティで保護された読み取りコマンドを使用して、前記オブジェクト、および、（ＫＡ（データ））の宛先の場所を識別するステップと、
前記ファイルシステムが、前記識別されたオブジェクトを特定する要求を前記記憶媒体に送るステップと、
前記記憶媒体が、前記識別されたオブジェクトに関連付けられた前記セキュリティで保護された記憶領域から（ＫＡ（データ））を読み取るステップと、
をさらに備えることを特徴とする請求項２６に記載の方法。
【請求項２８】
コンピューティングデバイス上のアプリケーションが、前記コンピューティングデバイスに関連付けられた記憶媒体にデータを書き込み、前記データは、前記記憶媒体上のオブジェクトに関連付けられたセキュリティで保護された記憶領域に書き込まれる方法であって、
前記アプリケーションが、前記データおよび前記オブジェクトのＩＤとともに要求を送るステップと、
前記記憶媒体が、前記データおよび前記オブジェクトの前記ＩＤを受け取り、前記オブジェクトに関連付けられた前記セキュリティで保護された記憶領域を特定し、前記特定されたセキュリティで保護された記憶領域の中に前記データを格納するステップと、
を備えることを特徴とする方法。
【請求項２９】
前記アプリケーションが、セキュリティで保護された通信チャネルを介して前記データを送るステップを備えることを特徴とする請求項２８に記載の方法。
【請求項３０】
前記アプリケーションが、前記コンピューティングデバイスに関連付けられた既存のファイルシステム、および、前記ファイルシステムの確立された「セキュリティで保護された書き込み」コマンドを使用して、前記記憶媒体に前記データを送るステップを備えることを特徴とする請求項２８に記載の方法。
【請求項３１】
前記記憶媒体が、ルックアップテーブルに基づき、前記オブジェクトに関連付けられた前記セキュリティで保護された記憶領域を特定するステップを備えることを特徴とする請求項２８に記載の方法。
【請求項３２】
前記オブジェクトは、前記記憶媒体上の少なくとも１つのセクタ上に格納された少なくとも１つのファイルを含み、前記セクタは、前記記憶媒体上のセクタヘッダを含む方法であって、
前記記憶媒体が、前記オブジェクトに関連付けられた前記セキュリティで保護された記憶領域を前記オブジェクトの前記ファイルの前記セクタの前記セクタヘッダとして特定するステップを備えることを特徴とする請求項２８に記載の方法。
【請求項３３】
前記オブジェクトに関連付けられた前記セキュリティで保護された記憶領域を特定する前記ステップは、前記オブジェクトが、前記記憶媒体上でまだ作成されていないと前記記憶媒体が判定するステップ、並びに、前記オブジェクトのダミー表現をプレースホルダとして作成するステップ、および、前記オブジェクトが作成されるまで（ＫＡ（データ））をキャッシュするステップのうちの１つを備えることを特徴とする請求項２８に記載の方法。
【請求項３４】
前記アプリケーションが、前記オブジェクトのＩＤとともに要求を送るステップと、
前記記憶媒体が、前記オブジェクトの前記ＩＤを受け取り、前記オブジェクトに関連付けられた前記セキュリティで保護された記憶領域を特定し、前記セキュリティで保護された記憶領域から前記データを取り出し、該データを前記アプリケーションに戻すステップと、
によって前記格納されたデータを読み取るステップを備えることを特徴とする請求項２８に記載の方法。
【請求項３５】
前記アプリケーションが、前記コンピューティングデバイスに関連付けられた既存のファイルシステム、および、前記ファイルシステムの確立された「セキュリティで保護された読み取り」コマンドを使用して前記データを要求するステップを備えることを特徴とする請求項３４に記載の方法。
【請求項３６】
前記アプリケーションが、データキー（ＫＡ）を選択し、前記記憶媒体に（ＫＡ（データ））を送ることに先立って、前記データキー（ＫＡ）を使用して前記データを暗号化して前記（ＫＡ（データ））をもたらすステップを備えることを特徴とする請求項２８に記載の方法。
【請求項３７】
コンピューティングデバイス上のアプリケーションが、前記コンピューティングデバイスに関連付けられた記憶媒体にデータを書き込み、前記データは、前記記憶媒体上のオブジェクトに関連付けられたセキュリティで保護された記憶領域に書き込まれ、前記セキュリティで保護された記憶領域は、前記セキュリティで保護された記憶領域に関連付けられた前記記憶媒体上に値記憶領域を有する方法であって、
前記アプリケーションが、前記ｎｏｎｃｅおよび前記セキュリティで保護された記憶領域のＩＤとともに要求を送るステップと、
前記記憶媒体が、前記ｎｏｎｃｅおよび前記セキュリティで保護された記憶領域の前記ＩＤを受け取り、前記セキュリティで保護された記憶領域に関連付けられた前記値記憶領域を特定し、前記特定された値記憶領域の中に前記ｎｏｎｃｅを格納するステップと、
前記アプリケーションが、前記ｎｏｎｃｅを使用してキー（ＫＨ）を生成し、（ＫＨ）を使用して前記データを保護して（ＫＨ（データ））をもたらし、前記記憶媒体上において前記セキュリティで保護された記憶領域の中に格納するために（ＫＨ（データ））を前記記憶媒体に送り、（ＫＨ（データ））が、前記値記憶領域の中の前記ｎｏｎｃｅに関連付けられるステップと、
を備えることを特徴とする方法。
【請求項３８】
前記アプリケーションが、セキュリティで保護された通信チャネルを介して前記ｎｏｎｃｅを送るステップを備えることを特徴とする請求項３７に記載の方法。
【請求項３９】
前記アプリケーションが、前記ｎｏｎｃｅおよびデータキー（ＫＡ）を所定の形で結合し、前記結合に対して一方向ハッシュを実行して前記キー（ＫＨ）をもたらすステップを備えることを特徴とする請求項３７に記載の方法。
【請求項４０】
前記アプリケーションが、前記コンピューティングデバイスに関連付けられた既存のファイルシステム、および、前記ファイルシステムの確立された「値書き込み」コマンドを使用して、前記記憶媒体に前記ｎｏｎｃｅを送るステップを備えることを特徴とする請求項３７に記載の方法。
【請求項４１】
前記記憶媒体が、ルックアップテーブルに基づき、前記セキュリティで保護された記憶領域に関連付けられた前記値記憶領域を特定するステップを備えることを特徴とする請求項３７に記載の方法。
【請求項４２】
前記セキュリティで保護された記憶領域は、前記記憶媒体上の少なくとも１つのセクタ上に格納された少なくとも１つのファイルを含み、前記セクタは、前記記憶媒体上のセクタヘッダを含む方法であって、
前記記憶媒体が、前記セキュリティで保護された記憶領域に関連付けられた前記値記憶領域を、前記セキュリティで保護された記憶領域の前記ファイルの前記セクタの前記セクタヘッダとして特定するステップを備えることを特徴とする請求項３７に記載の方法。
【請求項４３】
前記セキュリティで保護された記憶領域に関連付けられた前記値記憶領域を特定する前記ステップは、前記セキュリティで保護された記憶領域が前記記憶媒体上でまだ作成されていないと前記記憶媒体が判定するステップ、並びに、前記セキュリティで保護された記憶領域のダミー表現をプレースホルダとして作成するステップ、および、前記セキュリティで保護された記憶領域が作成されるまで前記ｎｏｎｃｅをキャッシュするステップのうちの１つを備えることを特徴とする請求項３７に記載の方法。
【請求項４４】
前記アプリケーションが、前記セキュリティで保護された記憶領域のＩＤとともに要求を送るステップと、
前記記憶媒体が、前記セキュリティで保護された記憶領域の前記ＩＤを受け取り、前記セキュリティで保護された記憶領域に関連付けられた前記値記憶領域を特定し、前記値記憶領域から前記ｎｏｎｃｅを取り出し、該ｎｏｎｃｅを前記アプリケーションに戻すステップと、
前記アプリケーションが、前記ｎｏｎｃｅを使用して前記キー（ＫＨ）を生成し、前記記憶媒体上の前記セキュリティで保護された記憶領域から（ＫＨ（データ））を取り出し、前記キー（ＫＨ）を適用して（ＫＨ（データ））を解読して前記データをもたらすステップと、
によって前記格納されたデータを読み取るステップを備えることを特徴とする請求項３７に記載の方法。
【請求項４５】
前記アプリケーションが、前記コンピューティングデバイスに関連付けられた既存のファイルシステム、および、前記ファイルシステムの確立された「値読み取り」コマンドを使用して前記ｎｏｎｃｅを要求するステップを備えることを特徴とする請求項４４に記載の方法。
【請求項４６】
前記値記憶領域の中の前記ｎｏｎｃｅを異なる値で置き換えることにより、前記セキュリティで保護された記憶領域の中の前記データの使用を終了するステップをさらに備えることを特徴とする請求項３７に記載の方法。
【請求項４７】
コンピューティングデバイス上のアプリケーションが、前記コンピューティングデバイスに関連付けられた記憶媒体からデータを読み取る方法であって、
前記記憶媒体上の前記データは、前記記憶媒体上のオブジェクトに関連付けられたセキュリティで保護された記憶領域の中にあり、前記セキュリティで保護された記憶領域は、前記セキュリティで保護された記憶領域に関連付けられた前記記憶媒体上に値記憶領域を有し、前記記憶媒体は、前記値記憶領域の中にｎｏｎｃｅを格納し、前記ｎｏｎｃｅは、キー（ＫＨ）を生成するのに使用され、前記データは、（ＫＨ）を使用して保護されて（ＫＨ（データ））がもたらされ、前記（ＫＨ（データ））として前記セキュリティで保護された記憶領域の中に格納されて、前記セキュリティで保護された記憶領域の中の（ＫＨ（データ））が、前記値記憶領域の中の前記ｎｏｎｃｅに関連付けられるようになり、
前記アプリケーションが、前記セキュリティで保護された記憶領域のＩＤとともに要求を送るステップと、
前記記憶媒体が、前記セキュリティで保護された記憶領域の前記ＩＤを受け取り、前記セキュリティで保護された記憶領域に関連付けられた前記値記憶領域を特定し、前記値記憶領域から前記ｎｏｎｃｅを取り出し、該ｎｏｎｃｅを前記アプリケーションに戻すステップと、
前記アプリケーションが、前記ｎｏｎｃｅを使用して前記キー（ＫＨ）を生成し、前記記憶媒体上の前記セキュリティで保護された記憶領域から（ＫＨ（データ））を取り出し、前記キー（ＫＨ）を適用して（ＫＨ（データ））を解読して前記データをもたらすステップと、
を備えることを特徴とする方法。
【請求項４８】
前記記憶媒体が、セキュリティで保護された通信チャネルを使用して前記ｎｏｎｃｅを戻すステップを備えることを特徴とする請求項４７に記載の方法。
【請求項４９】
前記アプリケーションが、前記コンピューティングデバイスに関連付けられた既存のファイルシステム、および、前記ファイルシステムの確立された「値読み取り」コマンドを使用して前記ｎｏｎｃｅを要求するステップを備えることを特徴とする請求項４７に記載の方法。
【請求項５０】
コンピューティングデバイス上のアプリケーションが、前記コンピューティングデバイスに関連付けられた記憶媒体からデータを読み取り、前記記憶媒体上の前記データは、前記記憶媒体上のオブジェクトに関連付けられたセキュリティで保護された記憶領域の中にある方法であって、
前記アプリケーションが、前記オブジェクトのＩＤとともに要求を送るステップと、
前記記憶媒体が、前記オブジェクトの前記ＩＤを受け取り、前記オブジェクトに関連付けられた前記セキュリティで保護された記憶領域を特定し、前記セキュリティで保護された記憶領域から前記データを取り出し、前記データを前記アプリケーションに戻すステップと、
を備えることを特徴とする方法。
【請求項５１】
前記記憶媒体が、セキュリティで保護された通信チャネルを使用して前記データを戻すステップを備えることを特徴とする請求項５０に記載の方法。
【請求項５２】
前記アプリケーションが、前記コンピューティングデバイスに関連付けられた既存のファイルシステム、および、前記ファイルシステムの確立された「セキュリティで保護された読み取り」コマンドを使用して前記データを要求するステップを備えることを特徴とする請求項５０に記載の方法。  
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ保護システムにおいて記録可能な媒体にデータがセキュリティで保護された形で保存されることを可能にするアーキテクチャおよび方法に関する。より詳細には、本発明は、媒体がコンピューティングデバイスに関連付けられ、コンピューティングデバイス上で動作するアプリケーションと媒体が協働して、セキュリティで保護された形でデータの保存および取り出しを行う、そのようなアーキテクチャおよび方法に関する。
【背景技術】
【０００２】
図１を参照すると、周知のとおり、デジタルコンテンツ１２に関連して、コンテンツ保護−著作件管理（ＣＰＭ）および施行システムが非常に望まれている。このデジタルコンテンツ１２には、デジタルオーディオ、デジタルビデオ、デジタルテキスト、デジタルデータ、デジタルマルチメディアなどがあり、これらのデジタルコンテンツ１２は、ユーザに配布される。ユーザによって受け取られると、ユーザは、パーソナルコンピュータ１４上のメディアプレーヤ、ポータブル再生デバイスなどの適切なレンダリングデバイスを利用して、デジタルコンテンツをレンダリングすなわち「再生」する。
【０００３】
通常、そのようなデジタルコンテンツ１２を配布するコンテンツ所有者は、そのような配布されたデジタルコンテンツ１２に対してユーザが行うことができることを制限することを望む。例えば、コンテンツ所有者は、ユーザが、そのようなコンテンツ１２をコピーして、第２のユーザに再配布するのを制限することを望んだり、あるいは、配布されたデジタルコンテンツ１２が、限られた回数だけ、ある合計時間にわたってだけ、あるタイプのマシン上においてだけ、あるタイプのメディアプレーヤ上においてだけ、あるタイプのユーザだけによって再生されることなどを許可できるように望んだりする場合がある。
【０００４】
しかし、配布が行われた後は、そのようなコンテンツ所有者は、デジタルコンテンツ１２に対するコントロールを、たとえ有していたとしても、ほんのわずかしか有さない。そこで、ＣＰＭシステム１０が、任意の形態のデジタルコンテンツ１２の制限されたレンダリングまたは再生を可能にする。このような制限は柔軟であり、これらのデジタルコンテンツのコンテンツ所有者が定義をすることができる。通常、コンテンツ１２は、任意の適切な配信チャネルを介して、パッケージ１３の形態によってユーザに配信される。配信されるデジタルコンテンツパッケージ１３は、対称暗号化／解読キー（ＫＤ）を使用して暗号化されたデジタルコンテンツ１２（すなわち、（ＫＤ（コンテンツ）））、並びに、コンテンツおよびそのようなコンテンツに関するライセンスの取得の仕方などを特定するその他の情報を含むことができる。
【０００５】
信頼ベースのＣＰＭシステム１０は、そのようなデジタルコンテンツ１２のレンダリングが許される前に満たされなければならない規則を、デジタルコンテンツ１２の所有者が指定することを可能にする。そのような規則には、前述した要件および／またはその他の要件が含まれることが可能であり、ユーザ／ユーザのコンピューティングデバイス１４（以降、これらの用語は、環境によってそうでないことが要求されない限り、互いに区別されない）が、コンテンツ所有者、またはコンテンツ所有者の代理人から獲得しなければならないデジタルライセンス１６内において実現されることができる。あるいは、そのような規則は、コンテンツ１２に既に付加されていてもよい。そのようなライセンス１６は、例えば、おそらく、ユーザのコンピューティングデバイスまたは他の再生デバイスが解読可能な別のキーに従って暗号化されたデジタルコンテンツ１２を解読するための、解読キー（ＫＤ）を含むことが可能である。
【０００６】
デジタルコンテンツ１２のコンテンツ所有者は、ライセンス１６の中で、または別の場所でそのようなコンテンツ所有者によって指定された規則をユーザが遵守するとその所有者が信頼することができない限り、コンテンツ１２をユーザに配信しないことを選ぶだろう。それゆえ、好ましくは、ユーザのコンピューティングデバイス１４または他の再生デバイスは、そのような規則に従ってでなければ、デジタルコンテンツ１２をレンダリングしない信頼されたコンポーネント、または、機構１８を備える。
【０００７】
信頼されたコンポーネント１８は、通常、規則を点検し、点検された規則に基づき、とりわけ、求める形で要求のデジタルコンテンツ１２をレンダリングする権利を要求側ユーザが有するかどうかを判定するエバリュエータ２０（ｅｖａｌｕａｔｏｒ）を有する。理解されるべきことは、エバリュエータ２０は、ＣＰＭシステム１０内において、規則に従ってデジタルコンテンツ１２の所有者の要望を実行するものと信頼されており、ユーザは、不正な目的であるか否かに関わらず、いずれの目的であっても、そのような信頼されたコンポーネント１８および／またはエバリュエータ２０を容易に改変することができてはならないということである。
【０００８】
理解されるべきこととして、コンテンツ１２をレンダリングすることに関する規則は、ユーザが誰であるか、ユーザがどこに所在しているか、どのようなタイプのコンピューティングデバイス１４、もしくはその他の再生デバイスをユーザが使用しているか、どのようなレンダリングアプリケーションがＣＰＭシステム１０を呼び出しているか、日付、時刻などを含め、いくつかの要因のいずれに基づいても、ユーザがそのようにレンダリングを行う権利を有するかどうかを規定することができる。さらに、規則は、例えば、所定の再生回数、または所定の再生時間に、レンダリングを制限することもできる。
【０００９】
規則は、任意の適切な言語および構文に従って指定されることができる。例えば、言語は、満たされなければならない属性および値を単に指定すること（例えば、ＤＡＴＥ  ｍｕｓｔ  ｂｅ  ｌａｔｅｒ  ｔｈａｎ  Ｘ（ＤＡＴＥがＸよりも後でなければならない））、または指定されたスクリプト（例えば、ＩＦ  ＤＡＴＥ  ｇｒｅａｔｅｒ  ｔｈａｎ  Ｘ，  ＴＨＥＮ  ＤＯ）に従った諸機能の実行を要求することができる。
【００１０】
エバリュエータ２０によってユーザが規則を満たすと判定されると、デジタルコンテンツ１２は、レンダリングされることができる。詳細には、コンテンツ１２をレンダリングするのに、解読キー（ＫＤ）が事前定義されたソースから獲得され、コンテンツパッケージ１３からの（ＫＤ（コンテンツ））に適用されて、実際のコンテンツ１２そのものがもたらされ、そして、実際のコンテンツ１２が、現実にレンダリングされる。
【００１１】
信頼されたコンポーネント１８は、ときとして、特定のコンテンツ１２のレンダリング、および／または特定のライセンス１６の使用に関連する状態情報を保持することを要求され得ることに留意されたい。例えば、特定のライセンス１６は、再生カウント要件を有し、それに相応して、信頼されたコンポーネント１８は、ライセンス１６が対応するコンテンツ１２をレンダリングするのに何回使用されたか、または、ライセンス１６が、対応するコンテンツ１２をレンダリングするのに何回使用されることができるかを記憶していなければならない。したがって、信頼されたコンポーネント１８は、そのような状態情報が永続的にセキュリティで保護された形で内部に保持することができる、少なくとも１つの永続的セキュアストア２２も含むことが可能である。このため、信頼されるコンポーネント１８は、そのような状態情報をそのようなセキュアストア２２の中に永続的な形で記憶して、そのような状態情報が、コンピューティングデバイス１４上の使用セッションを跨っても保持されるようにする。そのようなセキュアストア２２は、たいてい、信頼されたコンポーネント１８のコンピューティングデバイス１４上に配置されることができる。ただし、以下に見るとおり、そのようなセキュアストア２２を別の場所に配置することも有用であり、または、必要でさえある場合もある。
【００１２】
ＣＰＭシステム１０において、コンテンツ１２は、そのようなコンテンツ１２を暗号化し、コンテンツ１２に規則セットを関連付け、ユーザによる使用のためにパッケージ化される。ここで、コンテンツ１２は、その規則に従うときのみレンダリングされる。コンテンツ１２は、規則に従ってのみレンダリングされるので、自由に配信されることが可能である。通常、コンテンツ１２は、前述したキー（ＫＤ）などの対称キーに従って暗号化されて、（ＫＤ（コンテンツ））がもたらされ、したがって、（ＫＤ（コンテンツ））は、やはり（ＫＤ）に従って解読されて、コンテンツ１２がもたらされる。そのような（ＫＤ）は、コンテンツ１２に対応するライセンス１６内に含めることができる。
【００１３】
しばしば、そのような（ＫＤ）は、コンテンツ１２のレンダリングが行われるコンピューティングデバイス１４の公開キー（ＰＵ−Ｃ）などの公開キーに従って暗号化され、（ＰＵ−Ｃ（ＫＤ））がもたらされる。ただし、例えば、ユーザの公開キー、ユーザがメンバであるグループの公開キーなどの、その他の公開キーを使用してもよく、ブロードキャスト暗号化などの他のスキームを使用して（ＫＤ）を隠してもよいことに留意されたい。このようにして、公開キーが（ＰＵ−Ｃ）であると想定すると、（ＰＵ−Ｃ（ＫＤ））を有するライセンス１６は、そのようなコンピューティングデバイス１４だけが、（ＰＵ−Ｃ）に対応する秘密キー（ＰＲ−Ｃ）へのアクセスを有するはずであるため、そのようなコンピューティングデバイス１４に結び付けられ、そのようなコンピューティングデバイス１４と共に使用されることが可能である。理解されるべきこととして、そのような（ＰＲ−Ｃ）は、（ＰＵ−Ｃ（ＫＤ））を解読して（ＫＤ）を獲得するのに必要であり、そのようなコンピューティングデバイス１４によって厳密に保持されなければならない。
【００１４】
【特許文献１】米国特許出願公開第０９／２９０３６３号明細書
【特許文献２】米国特許仮出願第１２６６１４号明細書
【特許文献３】米国特許出願公開第１０／１８５５２７号明細書
【特許文献４】米国特許出願公開第１０／１８５２７８号明細書
【特許文献５】米国特許出願公開第１０／１８５５１１号明細書
【発明の開示】
【発明が解決しようとする課題】
【００１５】
上記に示唆されるとおり、コンピューティングデバイス１４に関連付けられたすべてのコンテンツ１２および／またはライセンス１６に関する状態情報は、コンピューティングデバイスの信頼されたコンポーネント１８に関連付けられた中央に位置するセキュアストア２２の中に記憶される。しかし、そのような状態情報を集中して格納するのではなく、コンピューティングデバイス１４に関連付けられた記憶媒体２４上に、コンテンツ１２、ライセンス１６、および／または他の何らかのオブジェクトとともに記憶することが有用であり、かつ／または必要である可能性があることも理解されたい。理解することができるとおり、そのような記憶媒体２４は、光媒体または磁気媒体、固定媒体または可搬型の媒体などを含め、任意の媒体であり得る。
【００１６】
詳細には、少なくともある状況においては、コンテンツ所有者は、コンテンツ１２、ライセンス１６、または他の何らかの類似したオブジェクトに関連付けられた状態情報が、そのようなオブジェクトとともに記憶媒体２４上にセキュリティで保護された形によって記憶されることを望む場合がある。したがって、コンピューティングデバイス１４に関連付けられた記憶媒体２４上にセキュリティで保護された記憶領域を確立することを可能にするシステムおよび方法のニーズが存在する。ここで、このセキュリティで保護された記憶領域は、媒体２４上に記憶されたオブジェクトに関連付けられ、セキュリティで保護された記憶領域は、コンピューティングデバイス１４の信頼されるアプリケーションだけによって書き込み、または、読み取りが行われることが可能である。さらに、コンピューティングデバイス１４が、既存のファイルシステムを使用して記憶媒体２４上においてファイルを編成し、保存するようなシステムおよび方法のニーズが存在する。ここで、このシステムおよび方法は、コンピューティングデバイス１４上の既存のファイルシステムを利用して、セキュリティで保護された記憶領域にデータを書き込み、セキュリティで保護された記憶領域からデータを読み取る。
【課題を解決するための手段】
【００１７】
前述したニーズは、コンピューティングデバイス上のアプリケーションが、コンピューティングデバイスに関連付けられた記憶媒体にデータを書き込む方法が提供される本発明によって、少なくとも部分的に満たされる。ここで、データは記憶媒体上のオブジェクトに関連付けられたセキュリティで保護された記憶領域に書き込まれ、セキュリティで保護された記憶領域は、関連付けられた記憶媒体上の値記憶領域を有する。本方法では、アプリケーションおよび記憶媒体は、対称セッションキー（ＫＳ）を共有された秘密として確立し、アプリケーションは、ｎｏｎｃｅを生成し、セッションキー（ＫＳ）を使用してｎｏｎｃｅを暗号化して、（ＫＳ（ｎｏｎｃｅ））をもたらす。
【００１８】
アプリケーションは、（ＫＳ（ｎｏｎｃｅ））を記憶媒体に送り、記憶媒体は、（ＫＳ（ｎｏｎｃｅ））を受け取り、（ＫＳ）を使用して解読して、ｎｏｎｃｅがもたらされ、セキュリティで保護された記憶領域に関連付けられた値記憶領域を特定し、そのようなｎｏｎｃｅを特定された値記憶領域の中に記憶する。アプリケーションは、ｎｏｎｃｅを使用してキー（ＫＨ）を生成し、（ＫＨ）を使用してデータを暗号化して、（ＫＨ（データ））がもたらされ、（ＫＨ（データ））を記憶媒体上においてセキュリティで保護された記憶領域の中に記憶するために記憶媒体に送る。このため、（ＫＨ（データ））は、値記憶領域の中のｎｏｎｃｅに関連付けられる。
【００１９】
以上の概要、ならびに本発明の諸実施形態の以下の詳細な説明は、添付の図面と併せて読むことにより、より良く理解されよう。本発明を例示する目的で、図面には、現在、好ましいとされる諸実施形態が示されている。ただし本発明は、図示した構成および手段そのものに限定されないことを理解すべきである。
【発明を実施するための最良の形態】
【００２０】
コンピュータ環境
図２、および以下の説明は、本発明、および／または本発明の部分を実施することができる適切なコンピューティング環境の簡単な一般的説明を提供することを目的とする。必須ではないが、本発明は、クライアントワークステーションまたはサーバなどのコンピュータによって実行されるプログラムモジュール群などの、コンピュータ実行可能命令の一般的な環境において説明する。一般に、プログラムモジュールには、特定のタスクを実行する、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。さらに、本発明および／または本発明の諸部分は、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースの家庭用電化製品もしくはプログラマブル家庭用電化製品、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータなどを含む、その他のコンピュータシステム構成を使用して実施してもよいことを理解されたい。また、本発明は、通信網を介してリンクされたリモート処理装置群によってタスクが実行される分散コンピューティング環境において実施することもできる。分散コンピューティング環境においては、プログラムモジュール群は、ローカルメモリ記憶装置とリモートメモリ記憶装置の両方の中に配置されることが可能である。
【００２１】
図２に示すとおり、典型的な汎用コンピューティングシステムは、処理装置１２１、システムメモリ１２２、ならびにシステムメモリから処理装置１２１までを含む様々なシステムコンポーネントを結合するシステムバス１２３を有する慣用のパーソナルコンピュータ１２０などを含む。システムバス１２３は、様々なバスアーキテクチャのいずれかを使用するメモリバスもしくはメモリコントローラ、周辺バス、およびローカルバスを含め、いくつかのタイプのバス構造のいずれであることも可能である。システムメモリは、読み取り専用メモリ（ＲＯＭ）１２４およびランダムアクセスメモリ（ＲＡＭ）１２５を含む。起動中などにパーソナルコンピュータ１２０内部の要素間で情報を転送するのを助ける基本ルーチンを含む基本入出力システム１２６（ＢＩＯＳ）が、ＲＯＭ１２４の中に格納される。
【００２２】
パーソナルコンピュータ１２０は、ハードディスクに対して読み取りおよび書き込みを行うためのハードディスクドライブ１２７、リムーバブルな磁気ディスク１２９に対して読み取りもしくは書き込みを行うための磁気ディスクドライブ１２８、およびＣＤ−ＲＯＭまたは他の光媒体などのリムーバブルな光ディスク１３１に対して読み取りもしくは書き込みを行うための光ディスクドライブ１３０をさらに含むことができる。ハードディスクドライブ１２７、磁気ディスクドライブ１２８、および光ディスクドライブ１３０は、それぞれ、ハードディスクドライブインターフェース１３２、磁気ディスクドライブインターフェース１３３、および光ドライブインターフェース１３４でシステムバス１２３に接続される。以上のドライブ、および関連するコンピュータ読取り可能媒体により、コンピュータ可読命令、データ構造、プログラムモジュール、およびその他のデータの不揮発性ストレージがパーソナルコンピュータ１２０に提供される。
【００２３】
本明細書で説明する典型的な環境は、ハードディスク１２７、リムーバブルな磁気ディスク１２９、およびリムーバブルな光ディスク１３１を使用するが、データを格納することができ、コンピュータがアクセスすることができる他のタイプのコンピュータ読取り可能媒体も、典型的な動作環境において使用できることを理解されたい。そのような他のタイプの媒体には、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）などが含まれる。
【００２４】
オペレーティングシステム１３５、１つまたは複数のアプリケーションプログラム１３６、その他のプログラムモジュール群１３７、およびプログラムデータ１３８を含め、いくつかのプログラムモジュールが、ハードディスク、磁気ディスク１２９、光ディスク１３１、ＲＯＭ１２４、またはＲＡＭ１２５に格納され得る。ユーザは、キーボード１４０やポインティングデバイス１４２などの入力デバイス群を介して、コマンドおよび情報をパーソナルコンピュータ１２０に入力することができる。その他の入力デバイス群（図示せず）には、マイク、ジョイスティック、ゲームパッド、サテライトディスク、スキャナなどが含まれることができる。以上、およびその他の入力デバイス群は、しばしば、システムバスに結合されたシリアルポートインターフェース１４６を介して処理装置１２１に接続されるが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス（ＵＳＢ）などの他のインターフェース群によって接続してもよい。また、モニタ１４７、または他のタイプのディスプレイデバイスも、ビデオアダプタ１４８のようなインターフェースを介して、システムバス１２３に接続される。モニタ１４７に加え、パーソナルコンピュータは、通常、スピーカやプリンタなどの他の周辺出力デバイス群（図示せず）も含む。図２の典型的なシステムは、ホストアダプタ１５５、スモールコンピュータシステムインターフェース（ＳＣＳＩ）バス１５６、ならびにＳＣＳＩバス１５６に接続された外部記憶装置１６２も含む。
【００２５】
パーソナルコンピュータ１２０は、リモートコンピュータ１４９のような、１つまたは複数のリモートコンピュータに対する論理接続を使用するネットワーク化された環境において動作することができる。リモートコンピュータ１４９は、別のパーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、または他の一般的なネットワークノードであることが可能であり、通常、パーソナルコンピュータ１２０に関連して前述した諸要素の多く、またはすべてを含むが、メモリ記憶装置１５０だけを図２に例示している。図２に示す論理接続は、ローカルエリアネットワーク（ＬＡＮ）１５１およびワイドエリアネットワーク（ＷＡＮ）１５２を含む。そのようなネットワーキング環境は、オフィス、企業全体のコンピュータ網、イントラネット、およびインターネットで一般的である。
【００２６】
ＬＡＮネットワーキング環境で使用される場合、パーソナルコンピュータ１２０は、ネットワークインターフェースまたはネットワークアダプタ１５３を介してＬＡＮ１５１に接続される。ＷＡＮネットワーキング環境で使用される場合、パーソナルコンピュータ１２０は、通常、インターネットなどのワイドエリアネットワーク１５２を介して通信を確立するためのモデム１５４、または他の手段を含む。内部にあることも、外部にあることも可能なモデム１５４は、シリアルポートインターフェース１４６を介してシステムバス１２３に接続される。ネットワーク化された環境においては、パーソナルコンピュータ１２０に関連して示したプログラムモジュール群、またはプログラムモジュール群の諸部分は、リモートメモリ記憶装置の中に格納することができる。図示したネットワーク接続は、典型的なものであり、コンピュータ間で通信リンクを確立する他の手段も使用できることを理解されたい。
【００２７】
記憶媒体２４上のオブジェクトに関連付けられたセキュリティで保護された記憶領域
コンテンツ保護とは、デジタルコンテンツ１２を保護して、そのようなコンテンツ１２が、コンテンツ所有者および／またはコンテンツプロバイダの要望と矛盾する形で使用されることができないようにするための幅広い方法および技術を意味する。方法には、とりわけ、コピー保護（ＣＰ）、リンク保護（ＬＰ）、条件付きアクセス（ＣＡ）、著作権管理（ＲＭ）、およびデジタル著作権管理（ＤＲＭ）が含まれる。あらゆるコンテンツ保護システムの基礎は、保護されたコンテンツ１２の使用に関する暗黙の規則および／または明示的な規則の適切な遵守を確実にする信頼されたアプリケーションだけが、保護されていないコンテンツ１２の形態と同様にアクセスできることである。通常、コンテンツ１２は、何らかの形で暗号化されることによって保護され、信頼されるパーティだけが、コンテンツ１２を解読することができる。
【００２８】
コピー保護は、最も厳密な意味において、記憶装置の中に存在するコンテンツ１２に特に適用されるのに対して、リンク保護は、伝送媒体を介してアプリケーション／デバイス間で流れるコンテンツ１２に適用される。条件付きアクセスは、プレミアムの番組、チャネル、および／またはムービーが送信中に（ｉｎ  ｔｒａｎｓｉｔ）暗号化される、より高度な形態のリンク保護と考えることができる。そのようなコンテンツ１２へのアクセスの対価を支払った加入者だけに、コンテンツ１２を解読するのに必要なキーが提供される。
【００２９】
デジタル著作権管理は、特定のコンテンツ１２の認可された使用に関する規則が、明示的であり、コンテンツ１２自体に限られ、または、関連付けられる拡張可能なアーキテクチャである。ＤＲＭ機構は、個々のコンテンツのレベルで、またはそのコンテンツのサブコンポーネントのレベルにおいてさえ、より大幅なコントロールと柔軟性を提供しながら、他の方法よりも豊富で表現豊かな規則をサポートすることができる。デジタル著作権管理システムの実施例は、参照によりそれぞれ全体が本明細書に組み込まれている、１９９９年４月１２日に出願した特許文献１、および１９９９年３月２７日に出願した特許文献２に記載されている。
【００３０】
著作権管理は、コンテンツ１２が、組織内、または組織のサブセット内でだけアクセス可能であるように保護されることができるという点において、組織をベースにする（ｏｒｇａｎｉｚａｔｉｏｎａｌｌｙ  ｂａｓｅｄ）一形態のＤＲＭである。著作権管理システムの実施例は、参照により全体が本明細書に組み込まれている、２００２年６月２８日にそれぞれ出願した特許文献３、特許文献４、および特許文献５に記載されている。
【００３１】
次に、図３を参照すると、本発明では、コンテンツ１２であれ、ライセンス１６であれ、または別のオブジェクトであれ、何らかの種類のオブジェクト２６が、コンピューティングデバイス１４に関連付けられた記憶媒体２４上に格納される。そして、セキュリティで保護された記憶領域２８がオブジェクト２６に関連付けられるような形で、記憶媒体２４上においてセキュリティで保護された記憶領域２８が確立される。セキュリティで保護された記憶領域２８は、コンピューティングデバイス１４上にある信頼されるアプリケーション３０だけによって、適切に書き込み、または、読み取りが可能である。コンピューティングデバイス１４は、コンピューティングデバイス１４上の既存のファイルシステム４２を使用して、記憶媒体２４上でファイルの編成および保存を行い、アプリケーション３０は、そのような既存のファイルシステム４２を使用して、セキュリティで保護された記憶領域２８にデータを書き込み、セキュリティで保護された記憶領域２８からデータを読み取る。
【００３２】
セキュアストア２２の場合と同様に、セキュリティで保護された記憶領域２８内のデータは、本発明の趣旨および範囲を逸脱することなく、任意のデータであることが可能であるが、おそらくは、セキュリティで保護された記憶領域２８内のそのようなデータは、関連付けられたオブジェクト２６に対するいくらかの関連性を有する。例えば、オブジェクト２６がコンテンツ１２またはライセンス１６である場合、データは、コンテンツ１２を解読するための解読キー（ＫＤ）を含むこと、またはライセンス１６に関係する状態情報であることが可能である。重要なこととして、セキュリティで保護された記憶領域内のそのようなデータは、機密事項の性質のものであると想定されるため、そのようなデータは、少なくとも一部のケースでは、不正なエンティティによる改変を防止するように改ざん防止（ｔａｍｐｅｒ−ｐｒｏｏｆ）の形で、不正なエンティティがそのようなデータを見ることを防止するようにセキュリティで保護された形で記憶されなければならない。しかし、場合によって記憶媒体２４は可搬型である可能性があり、いずれにしても信頼されたコンポーネント１８とは別個であるため、以下により詳細に説明するとおり、そのような改ざん防止のセキュリティで保護された記憶を確実にするように、特別な配慮が行われなければならない。
【００３３】
オブジェクト２６および関連付けられたセキュリティで保護された記憶領域２８は、本発明の趣旨および範囲を逸脱することなく、任意の適切なオブジェクトおよびセキュリティで保護された記憶領域であることが可能である。通常、オブジェクト２６は、記憶媒体２４（図示する）上の１つもしくは複数のファイルの中に存在するコンテンツ１２またはライセンス１６であり、セキュリティで保護された記憶領域２８は、関連付けられたオブジェクト２６に関する状態情報を内部に有するセキュアストア２２の均等物であるが、本発明において他のタイプのオブジェクト２６およびセキュリティで保護された記憶領域２８を使用してもよいことを理解されたい。例えば、そのような他のタイプのセキュリティで保護された記憶領域２８は、ファイル３２に通常、関連付けられていない記憶媒体２４上の諸領域も包含することができる。
【００３４】
コンピューティングデバイス１４上の信頼されるアプリケーション３０も同様に、本発明の趣旨および範囲を逸脱することなく、任意の適切なアプリケーションであることが可能である。そのような信頼されたアプリケーション３０は、例えば、図１の信頼されたコンポーネント１８、コンテンツ１２を直接にレンダリングするアプリケーションなどでありえる。名前により示唆されるとおり、そのような信頼されるアプリケーション３０は、実際、付随するライセンス１６などの中に記載された規則およびポリシーに従ってだけ、ＣＰＭシステム１０の枠組み内でコンテンツ１２をレンダリングするものと信頼される。そのような信頼は、例えば、信頼されたアプリケーション３０が、信頼機関（ｔｒｕｓｔ  ａｕｔｈｏｒｉｔｙ）によって発行された、またはそのような信頼機関に由来するデジタル証明書などを所有していることで明白に示されることが可能である。
【００３５】
また、コンピューティングデバイス１４に関連付けられた記憶媒体２４も同様に、本発明に記載する条件付きで、本発明の趣旨および範囲を逸脱することなく、任意の適切な媒体であることが可能である。例えば、そのような記憶媒体２４は、光媒体または磁気媒体であることが可能であり、コンピューティングデバイス１４に固定されていることも、コンピューティングデバイス１４から持ち運びできることも可能である。このため、コンピューティングデバイス１４に関連付けられた記憶媒体２４は、例えば、リムーバブルディスクが補足的なドライブに挿入されるなど、最低でも一時的な関連付けだけしか必要としない。すべての実例において該当するわけではないが、記憶媒体２４は、データの書き込み、および再書き込みを行うことができ、または、論理的に可能な場合、前に書き込み済みのデータを更新することが少なくともできることが構想されている。更新を行うことができる必要性は、本発明の絶対要件ではないが、更新が利用できないケースでは、書き込み済みのデータは変更することができないことを理解されたい。信頼されるアプリケーション３０の場合と同様に、記憶媒体は、セキュリティで保護された記憶領域２８の中にデータを記憶するものと信頼され、そのような信頼も同様に、例えば、記憶媒体２４が、信頼機関によって発行された、またはそのような信頼機関に由来するデジタル証明書などを所有していることで明白に示されることが可能である。
【００３６】
重要なこととして、記憶媒体２４およびアプリケーション３０は、例えば、互いの間の通信を暗号化すること、および、解読するのに使用される共有された秘密を確立することを介して、互いの間でセキュリティにより保護されたチャネルを確立することができる。そのような共有された秘密を確立することは、本発明の趣旨および範囲を逸脱することなく、任意の適切な機構によって行われることができる。例えば、当業者（ｒｅｌｅｖａｎｔ  ｐｕｂｌｉｃ）には理解されるとおり、記憶媒体２４およびアプリケーション３０は、ディフィ−ヘルマン（Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ）手順を互いに実行することにより、共有された秘密を確立することができる。セキュリティで保護されたチャネルを確立することの一環として、記憶媒体２４とアプリケーション３０は、前述したデジタル証明書などを交換することにより、互いとの信頼も確立しなければならない。
【００３７】
本発明の一実施形態では、図３に示すとおり、記憶媒体２４は、内部に記憶された各オブジェクト２６に関して、関連付けられたセキュリティで保護された記憶領域２８を有するか、または作成することができ、セキュリティで保護された記憶領域２８をオブジェクト２６に、物理的にまたは論理的に関連付けることができる。本発明の趣旨および範囲を逸脱することなく、セキュリティで保護された記憶領域２８をオブジェクト２６に関連付けるのに、任意の適切な関連付けスキームを記憶媒体２４によって使用できる。そのような関連付けは、例えば、記憶媒体２４が、そのような関連付けを記録するルックアップテーブルなどを記憶媒体２４上に保持することでもたらされ、または、例えば、記憶媒体２４が、オブジェクト２６と、関連付けられたセキュリティで保護された記憶領域を並置する（ｃｏ−ｌｏｃａｔｉｎｇ）ことによりもたらされる。そのような並置は、オブジェクト２６および関連付けられたセキュリティで保護された記憶領域２８を、互いに隣接させて、もしくは、同一の記憶空間内において、物理的または論理的に記憶することによって実行することができる。
【００３８】
特に同一の記憶空間内に記憶するケースでは、図３に示すとおり、オブジェクト２６は、１つまたは複数のファイル３２として記憶媒体２４（図示する）上に記憶されることが可能であり、各ファイル３２は、記憶媒体２４上の１つまたは複数の物理セクタもしくは論理セクタ３４の中に記憶され、各セクタ３４は、セクタヘッダ３６を有する。理解することができるとおり、そのようなセクタヘッダ３６は、記憶媒体２４が、セクタの中に記憶されたファイルに関連するセクタデータなどのデータを格納する所定の量のスペースを含む。通常、やはり理解されるべきこととして、そのようなセクタヘッダ３６内のそのようなセクタデータは、記憶媒体２４だけによって使用され、記憶媒体２４の外部では使用されない。それでも、そのようなセクタデータは、アプリケーション３０のような外部要素によって、外部要素からの適切なコマンドを介して、書き込まれ、読み取られることが可能である。したがって、本発明の一実施形態では、記憶媒体２４は、オブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８をそのオブジェクト２６のファイル群３４のセクタヘッダ群３６の中に記憶することにより、オブジェクト２６および関連付けられたセキュリティで保護された記憶領域２８を並置する。もちろん、セキュリティで保護された記憶領域２８は、記憶媒体２４上の他の領域に記憶されることも可能である。例えば、記憶媒体２４は、ディスクのリードイン領域内のいくつかの完全なセクタを取っておくことができる。そのようなケースでは、ディスク全体に対するセキュリティで保護された記憶領域２８は、総ての導入セクタであることが可能であり、導入セクタのいずれの部分も、所与の任意のオブジェクト２６に関連付けられ、そのようなオブジェクト２６のために使用されることが可能である。この場合、関係するオブジェクト２６に対するリードイン領域内の導入セクタのそれぞれの関連付けが、おそらく、ルックアップテーブルの中で保持されなければならない。
【００３９】
前述したスキームは、セキュリティで保護された記憶領域２８のための記憶領域の量が、オブジェクト２６のファイル群３４のセクタヘッダ群３６から利用可能なスペースに限られる可能性があるという点において、制限があることに留意されたい。このため、前述したスキームの変種では、セキュリティで保護された記憶領域２８は、論理的にのみオブジェクト２６に結び付けられる。詳細には、図４に示すとおり、オブジェクト２６は、やはり、記憶媒体２４上の１つまたは複数のオブジェクトファイル３２として格納されることが可能であり、関連付けられたセキュリティで保護された記憶領域２８も、記憶媒体上の１つまたは複数のセキュリティで保護された記憶領域（ＳＳＡ）ファイル群３２として記憶される。ここで、記憶媒体２４は、そのような関連付けを記録する前述したルックアップテーブル３８などを保持する。理解されるべきこととして、このスキームは、セキュリティで保護された記憶領域２８を制限しない。というのは、セキュリティで保護された記憶領域２８のＳＳＡファイル群３２は、任意の必要なサイズであることが可能だからである。したがって、本発明の一実施形態では、記憶媒体２４は、ルックアップテーブル３８などを使用して、オブジェクト２６および関連付けられたセキュリティで保護された記憶領域２８を関連付ける。
【００４０】
そのような実施形態では、ＳＳＡファイル群３２は、許可のない閲覧を防止するように暗号化されるか、または、改ざんを防止するように少なくとも署名されなければならない。その場合、暗号化されたＳＳＡファイル群３２を解読しもしくは検証するのに、直接にまたは間接的に使用される値を格納するため、値記憶領域４０が必要であることに留意されたい。前述の場合と同様に、任意の適切な手段によって、記憶媒体２４は、値記憶領域４０を対応するＳＳＡファイル群３２に関連付けなければならない。したがって、本発明の一実施形態では、図４に示すとおり、記憶媒体２４は、実際、値記憶領域４０を対応するＳＳＡファイル群３２のセクタヘッダ群３６の中において作成することにより、値記憶領域４０を対応するＳＳＡファイル群３２に関連付ける。
【００４１】
図３および図４の実施形態では、理解することができるとおり、セクタヘッダ３６群の中への情報の実際の記憶は、本発明の趣旨および範囲を逸脱することなく、任意の適切な機構に従って構成されることが可能である。例えば、情報の単一のインスタンスだけが格納され、または、情報の複数のインスタンスが記憶されることが可能である。同様に、複数のオブジェクトファイルまたはＳＳＡファイル３２が存在する場合、複数のファイル３２のそれぞれがその情報を有し、または、複数のファイル３２の一部、もしくは、すべてがその情報を有することが可能である。
【００４２】
図３に示した実施形態に関連して、図５を次に参照すると、本発明の一実施形態では、アプリケーション３０が、次の形で、記憶媒体２４上のオブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８にデータを書き込む。準備として、アプリケーション３０と記憶媒体２４が、対称セッションキー（ＫＳ）などの共有された秘密を確立することにより、互いの間にセキュリティで保護されたチャネルをセットアップし（ステップ５０１）、アプリケーション３０が、データキー（ＫＡ）を選択して、（ＫＡ）を使用してデータを暗号化し、（ＫＡ（データ））がもたらされる（ステップ５０３）。データキー（ＫＡ）は、本発明の趣旨および範囲を逸脱することなく、任意の基準で選択されることができることに留意されたい。例えば、オブジェクト２６が、コンテンツキー（ＫＤ）で暗号化されたコンテンツ１２である場合、（ＫＡ）は、実際には、（ＫＤ）であることが可能である。
【００４３】
（ＫＡ）を使用してデータを暗号化して（ＫＡ（データ））をもたらす代りに、（ＫＡ）を使用して検証ハッシュを構成することができ、そのハッシュにより、何らかの後の時点でデータの完全性を検証することができることにも留意されたい。理解することができるとおり、そのような検証ハッシュは、データを隠すのではなく、代わりに、データが変更されていないことを確実にすることだけを行う。代替として、（ＫＡ）は、そのような（ＫＡ）を使用して信頼される形によってデータにアクセスを得るような何らかの方法で使用されることも可能であることにさらに留意されたい。そのような信頼されるアクセスシナリオでは、（ＫＡ）を所有している信頼されたエンティティだけに、データが提供されることが可能である。最後に、信頼されないアプリケーション３０が、セクタヘッダ、セキュリティで保護された記憶領域２８内でデータを読み取り、および／または書き込むことを記憶媒体２４が防止する場合などの、一部の状況においては、アプリケーション固有のデータキー（ＫＡ）を使用してデータを暗号化するステップ無しでも済ますことができることに留意されたい。このため、より一般的には、（ＫＡ）、（ＫＳ）、または他の任意のキーを使用してデータが保護されるあらゆる変形形態が、本発明の趣旨および範囲に含まれるものと考えられるべきである。
【００４４】
その後、アプリケーション３０は、セッションキー（ＫＳ）を使用して（ＫＡ（データ））を暗号化して（ＫＳ（ＫＡ（データ）））をもたらし（ステップ５０５）、オブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８の中に記憶するために、そのような（ＫＳ（ＫＡ（データ）））を記憶媒体２４に送る（ステップ５０７）。データが、（ＫＡ）と（ＫＳ）の両方を使用して二重暗号化された場合、記憶媒体２４でさえ、（ＫＳ）を使用して（ＫＳ（ＫＡ（データ）））を解読して（ＫＡ（データ））をもたらした時点では、データを見ることができない。というのは、アプリケーション３０だけが、（ＫＡ）の知識を有し、（ＫＡ）を（ＫＡ（データ））に適用してデータを明らかにすることができるからである。
【００４５】
本発明の一実施形態では、アプリケーション３０は、実際、コンピューティングデバイス１４に関連付けられた既存のファイルシステム４２を使用して、詳細には、ファイルシステム４２の確立された「セキュリティで保護された書き込み」コマンドを使用して、ステップ５０７において、オブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８の中に格納するために、そのような（ＫＳ（ＫＡ（データ）））を記憶媒体２４に送る。このため、コンピューティングデバイス１４のファイルシステム４２は、セキュリティで保護された書き込みコマンドを受け取ること、および、そのコマンドに基づいて動作することを担う。したがって、アプリケーション３０は、特定のファイルシステム４２および記憶媒体２４に固有である特別な直接書き込み手順、または、直接アクセス手順を、まったく備えている必要がなく、このため、アプリケーション３０は、本明細書に記載する方法を、いくつかのファイルシステム４２および記憶媒体２４のいずれに対しても使用することができる。本発明の他の実施形態では、アプリケーション３０は、実際、既存のファイルシステム４２、並びに、例えば、特定のセクタヘッダ３６の位置を確認するための、ファイルシステム４２に対するコマンドおよび記憶媒体２４に対する直接のクエリの組合せを使用して、ステップ５０７におけるとおり、オブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８の中に格納するために、そのような（ＫＳ（ＫＡ（データ）））を記憶媒体２４に送る。
【００４６】
コンピューティングデバイス１４のファイルシステム４２の確立されたセキュリティで保護された書き込みコマンドに基づき、セキュリティで保護された書き込みコマンドにおいてアプリケーション３０は、実際、（１）（ＫＳ（ＫＡ（データ）））を探し出すことができるバッファなどの位置、（２）そのような（ＫＳ（ＫＡ（データ）））を受け取るセキュリティで保護された記憶領域２８に関連付けられ、もしくは、関連付けられるべきオブジェクト２６、および（３）そのような（ＫＳ（ＫＡ（データ）））の長さ、を明らかにする。そのようなセキュリティで保護された書き込みコマンドで、ファイルシステム４２は、（ＫＳ（ＫＡ（データ）））を特定し、実際、そのような（ＫＳ（ＫＡ（データ）））とともに記憶媒体２４に要求を送り、関連付けられたオブジェクト２６のＩＤ、ならびに識別されたオブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８に記憶媒体２４が（ＫＡ（データ））を書き込むようにという通知も送る。
【００４７】
このため、そのような要求を受け取ると、記憶媒体２４は、（ＫＳ）を使用して（ＫＳ（ＫＡ（データ）））を解読して（ＫＡ（データ））をもたらし（ステップ５０９）、識別されたオブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８を特定し（ステップ５１１）、実際、特定されたセキュリティで保護された記憶領域２８の中にそのような（ＫＡ（データ））を格納する（ステップ５１３）。前述したとおり、記憶媒体２４は、ルックアップテーブル３８などに基づいて、ステップ５１１におけるとおり、識別されたオブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８を特定し、または単に、識別されたオブジェクト２６のセクタヘッダ群３６をセキュリティで保護された記憶領域２８として使用することができる。ただし、いずれの実例でも、識別されたオブジェクト２６が、実際、記憶媒体２４上でまだ作成されていないこともあり得ることに留意されたい。そのような場合、記憶媒体２４は、自らの上に、識別されたオブジェクト２６の少なくともダミー表現（ｄｕｍｍｙ  ｒｅｐｒｅｓｅｎｔａｔｉｏｎ）をプレースホルダ（ｐｌａｃｅｈｏｌｄｅｒ）として作成し、次に、その表現に関連付けられたセキュリティで保護された記憶領域２８の中に（ＫＡ（データ））を格納し、または、オブジェクト２６が作成されるまで（ＫＡ（データ））をキャッシュに入れて、その後、オブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８の中に（ＫＡ（データ））を格納することができる（ステップ５１２）。理解されるべきこととして、ダミー表現を作成するケースでは、ダミーオブジェクト２６は、オブジェクト２６が作成されると、そのオブジェクト２６で置き換えられ、セキュリティで保護された記憶領域２８に対する関連付けが適切に維持される。
【００４８】
次に図６を参照すると、図５に示した形でアプリケーション３０によって記憶媒体２４に書き込まれたデータ（すなわち、（ＫＡ（データ）））が、次の形で取り出されることが可能である。準備として、この場合も、アプリケーション３０および記憶媒体２４が、対称セッションキー（ＫＳ）などの共有された秘密を確立することにより、互いの間でセキュリティにより保護されたチャネルをセットアップし（ステップ６０１）、アプリケーション３０が、特定のオブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８から（ＫＡ（データ））を読み取るように、「セキュリティで保護された読み取り」コマンドを送る（ステップ６０３）。
【００４９】
前述した場合と同様に、ステップ６０３におけるアプリケーション３０からのセキュリティで保護された読み取りコマンドは、コンピューティングデバイス１４に関連付けられた既存のファイルシステム４２を使用して、詳細には、ファイルシステム４２の確立された「セキュリティで保護された読み取り」コマンドを使用して送られ、アプリケーション３０は、特別な直接読み取り手順または直接アクセス手順をまったく使用しない。このため、コンピューティングデバイス１４のファイルシステム４２は、セキュリティで保護された読み取りコマンドを受け取ること、およびそのコマンドに基づいて動作することを担う。したがって、アプリケーション３０は、特定のファイルシステム４２もしくは記憶媒体２４に固有である特別な直接読み取り手順、または、直接アクセス手順をまったく備えている必要がない。このため、アプリケーション３０は、本明細書に記載する方法を、いくつかのファイルシステム４２および記憶媒体２４のいずれに対しても使用することができる。代替として、既存のファイルシステム４２、並びに、例えば、特定のセクタヘッダ群３６の位置を確認するため、ファイルシステム４２に対するコマンドおよび記憶媒体２４に対する直接クエリの組合せを使用して、アプリケーション３０は記憶媒体２４から（ＫＡ（データ））を読み取る。
【００５０】
コンピューティングデバイス１４のファイルシステム４２の確立されたセキュリティで保護された読み取りコマンドに基づき、セキュリティで保護された読み取りコマンドにおけるアプリケーション３０は、実際、（１）そのような（ＫＡ（データ））を含むセキュリティで保護された記憶領域２８に関連付けられたオブジェクト２６、（２）バッファなどの（ＫＡ（データ））の宛先の場所、（３）セキュリティで保護された記憶領域２８内のそのような（ＫＡ（データ））の長さ、を明らかにする。そのようなセキュリティで保護された読み取りコマンドで、ファイルシステム４２は、実際、識別された関連付けられたオブジェクト２６を特定する要求を記憶媒体２４に送る。この要求は、識別されたオブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８から（ＫＡ（データ））を記憶媒体２４が読み取るようにという通知を含む。
【００５１】
このため、そのような要求を受け取ると、記憶媒体２４は、実際、識別されたオブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８を特定し（ステップ６０５）、特定されたセキュリティで保護された記憶領域２８の中からそのような（ＫＡ（データ））を取り出し（ステップ６０７）、（ＫＳ）を使用して（ＫＡ（データ））を暗号化して（ＫＳ（ＫＡ（データ）））をもたらし（ステップ６０９）、要求に応答してそのような（ＫＳ（ＫＡ（データ）））をファイルシステム４２に戻す（ステップ６１１）。この場合も、記憶媒体２４は、ルックアップテーブル３８などに基づいて、ステップ６０５におけるとおり、識別されたオブジェクト２６に関連するセキュリティで保護された記憶領域２８を特定すること、または単に、識別されたオブジェクト２６のセクタヘッダ群３６をセキュリティで保護された記憶領域２８として使用することができる。
【００５２】
そのような（ＫＳ（ＫＡ（データ）））で、ファイルシステム４２は、（ＫＳ（ＫＡ（データ）））を宛先の場所の中に格納する（ステップ６１３）。その後、アプリケーション３０は、そのような（ＫＳ（ＫＡ（データ）））に（ＫＳ）を適用して（ＫＡ（データ））をもたらし（ステップ６１５）、（ＫＡ）を獲得し、（ＫＡ（データ））に（ＫＡ）を適用してデータをもたらし（ステップ６１７）、その後、そのデータを適宜、使用する。アプリケーション３０は、本発明の趣旨および範囲を逸脱することなく、どのようなソースから、どのような形で（ＫＡ）を獲得してもよいことに留意されたい。データを使用する際、アプリケーション３０は、データを変更する可能性があり、その場合、そのようなデータが、図５に関連して記載した方法を使用して、オブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８の中に、再び格納されることが可能であることにも留意されたい。
【００５３】
次に図７を参照すると、図４に示した実施形態に関連して、本発明の別の実施形態において、アプリケーション３０が、次の形で、記憶媒体２４上のオブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８にデータを書き込む。準備として、アプリケーション３０およびと記憶媒体２４は、この場合も、対称セッションキー（ＫＳ）などの共有された秘密を確立することにより、互いの間でセキュリティにより保護されたチャネルをセットアップする（ステップ７０１）。ただし、この場合、アプリケーションは、以下により詳細に説明するとおりキーを生成するハッシュの一部となる、ｎｏｎｃｅまたは乱数を生成し（ステップ７０３）、セッションキー（ＫＳ）を使用してｎｏｎｃｅを暗号化して（ＫＳ（ｎｏｎｃｅ））をもたらす（ステップ７０５）。
【００５４】
その後、アプリケーション３０は、セキュリティで保護された記憶領域２８に関連付けられ、または関連付けられるべき値記憶領域４０の中に格納するために、そのような（ＫＳ（ｎｏｎｃｅ））を記憶媒体２４に送る（ステップ７０７）。本発明の一実施形態では、アプリケーション３０は、実際、コンピューティングデバイス１４に関連付けられた既存のファイルシステム４２を使用して、詳細には、ファイルシステム４２の確立された「値書き込み」コマンドを使用して、ステップ７０７におけるとおり、セキュリティで保護された記憶領域２８に関連付けられた値記憶領域２８の中に格納するために、そのような（ＫＳ（ｎｏｎｃｅ））を記憶媒体２４に送る。特別な直接書き込み手順または直接アクセス手順をまったく使用しない。このため、コンピューティングデバイス１４のファイルシステム４２は、値書き込みコマンドを受け取ること、および、そのコマンドに基づいて動作することを担う。したがって、アプリケーション３０は、特定のファイルシステム４２または記憶媒体２４に固有である特別な直接書き込み手順、または、直接アクセス手順をまったく備えている必要がなく、このため、アプリケーション３０は、本明細書に記載する方法を、いくつかのファイルシステム４２および記憶媒体２４のいずれに対しても使用することができる。本発明の他の実施形態では、既存のファイルシステム４２、並びに、例えば、特定のセクタヘッダ群３６の位置を確認するために、ファイルシステム４２に対するコマンドおよび記憶媒体２４に対する直接クエリの組合せを使用して、ステップ７０７におけるとおり、オブジェクト２６に関連付けられたセキュリティで保護された記憶領域２８の中に格納するために、アプリケーション３０は、実際、そのような（ＫＳ（ｎｏｎｃｅ））を記憶媒体２４に送る。
【００５５】
コンピューティングデバイス１４のファイルシステム４２の確立された値書き込みコマンドに基づき、値書き込みコマンドにおけるアプリケーション３０は、実際、（１）（ＫＳ（ｎｏｎｃｅ））を探し出すことができるバッファなどの位置、（２）そのような（ＫＳ（ｎｏｎｃｅ））を受け取る、値記憶領域４０に関連付けられ、または関連付けられるべきセキュリティで保護された記憶領域２８、および（３）そのような（ＫＳ（ｎｏｎｃｅ））の長さ、を明らかにする。そのような値書き込みコマンドによって、ファイルシステム４２は、（ＫＳ（ｎｏｎｃｅ））を特定し、実際、そのような（ＫＳ（ｎｏｎｃｅ））とともに記憶媒体２４に要求を送り、関連付けられたセキュリティで保護された記憶領域２８のＩＤ、ならびに、識別されたセキュリティで保護された記憶領域に関連付けられた値記憶領域４０に記憶媒体２４がｎｏｎｃｅを書き込むようにという通知も送る。
【００５６】
このため、そのような要求を受け取ると、記憶媒体２４は、（ＫＳ）を使用して（ＫＳ（ｎｏｎｃｅ））を解読してｎｏｎｃｅをもたらし（ステップ７０９）、識別されたセキュリティで保護された記憶領域２８に関連付けられた値記憶領域４０を特定し（ステップ７１１）、実際、特定された値記憶領域４０の中にそのようなｎｏｎｃｅを格納する（ステップ７１３）。前述したとおり、記憶媒体２４は、ルックアップテーブル３８などに基づいて、ステップ７１１におけるとおり、識別されたセキュリティで保護された記憶領域２８に関連付けられた値記憶領域４０を特定し、または単に、識別されたセキュリティで保護された記憶領域２８のセクタヘッダ群３６を値記憶領域４０として使用することができる。ただし、いずれの実例でも、識別されたセキュリティで保護された記憶領域２８は、実際、記憶媒体２４上においてまだ作成されていないこともあり得ることに留意されたい。そのような場合、記憶媒体２４は、自らの上に、識別されたセキュリティで保護された記憶領域２８の少なくともダミー表現をプレースホルダとして作成し、次に、その表現に関連付けられた値記憶領域４０の中にｎｏｎｃｅを格納するか、または、セキュリティで保護された記憶領域２８が作成されるまでｎｏｎｃｅをキャッシュに入れて、その後、セキュリティで保護された記憶領域２８に関連付けられた値記憶領域４０の中に、ｎｏｎｃｅを格納することができる（ステップ７１２）。やはり理解されるべきこととして、ダミー表現を作成するケースでは、セキュリティで保護された記憶領域２８が作成されると、そのセキュリティで保護された記憶領域２８によってダミーセキュリティで保護された記憶領域２８が置き換えられ、値記憶領域４０に対する関連付けは適切に維持される。
【００５７】
上記に示唆されるとおり、ｎｏｎｃｅは、ハッシュキー（ＫＨ）を生成するハッシュの一部としてアプリケーション３０によって使用さる。そのようなハッシュキー（ＫＨ）は、セキュリティで保護された記憶領域２８の中に格納されるべきデータを暗号化するのに使用される。とりわけ、ステップ７１２に関連して明白なとおり、セキュリティで保護された記憶領域２８の中のそのようなデータのそのような暗号化および格納は、ｎｏｎｃｅが値記憶領域４０の中に格納された前に行われても、後に行われてもよい。それでも、いずれの場合でも、プロセスは、同一ではないとしても、実質的に同様である。詳細には、本発明の一実施形態では、セキュリティで保護された記憶領域２８の中に格納されるデータを暗号化するのに、アプリケーション３０は、何らかの所定の形でｎｏｎｃｅとデータキー（ＫＡ）を結合し、その結合に対して一方向ハッシュを実行してハッシュキー（ＫＨ）をもたらし（ステップ７１５）、次に、ハッシュキー（ＫＨ）を使用してデータを暗号化して（ＫＨ（データ））をもたらす（ステップ７１７）。データキー（ＫＡ）は、本発明の趣旨および範囲を逸脱することなく、任意の基準で選択されることが可能であることに留意されたい。例えば、関連付けられたオブジェクト２６が、コンテンツキー（ＫＤ）で暗号化されたコンテンツ１２である場合、（ＫＡ）は、実際には、（ＫＤ）であることが可能である。
【００５８】
ステップ７１７におけるとおり（ＫＨ（データ））を生成すると、（ＫＨ（データ））が、対応する値記憶領域４０の中のｎｏｎｃｅに関連付けられるような形で、セキュリティで保護された記憶領域２８の中に格納するために、アプリケーション３０は、（ＫＨ（データ））を記憶媒体２４に送る（ステップ７１９）。そのような送信は、セキュリティで保護された記憶領域２８が記憶媒体２４上のファイル３２に過ぎない場合、コンピューティングデバイス１４のファイルシステム４２の標準の書き込みコマンドによって実行することが可能である。
【００５９】
この場合、図７に関連して記載した方法は、セキュリティで保護された記憶領域２８に関連付けられたオブジェクト２６が記憶媒体２４上にいつ存在するか、または存在するかどうかにさえ依拠しないことに留意されたい。実際、そのようなオブジェクト２６は、セキュリティで保護された記憶領域２８が作成される前、作成される最中、または作成された後に作成されることも可能であり、一部の状況においては、全く作成されないこともあり得る。
【００６０】
図７に関連して記載した方法では、値記憶領域４０の中のｎｏｎｃｅは、暗号化されなくてもよいことにも留意されたい。想定上、そのようなｎｏｎｃｅが、セキュリティで保護された記憶領域２８の中の基礎にあるデータを見ること、および／または改変することを望む不正なエンティティによって獲得される可能性がある。しかし、そのような不正なエンティティには、ステップ７１５におけるとおり、ハッシュキー（ＫＨ）を生成するようにｎｏｎｃｅを使用してハッシュされたデータキー（ＫＡ）を獲得する手段がまったくないはずであり、したがって、（ＫＨ（データ））に（ＫＨ）を適用して、そのようなデータを明らかにすることができない。
【００６１】
図７に関連して記載した形でｎｏｎｃｅを使用することにより、アプリケーション３０は、コンピューティングデバイスの既存のファイルシステム４２に対する値変更コマンドを使用して、単に、値記憶領域４０の中のｎｏｎｃｅを置き換えること、または、異なる値に更新することにより、関連するオブジェクト２６の使用を終了することができることにさらに留意されたい。理解されるべきこととして、値記憶領域４０の中のｎｏｎｃｅの値を変更することにより、関連付けられたセキュリティで保護された記憶領域２８の中のデータには、もはやアクセスすることができない。というのは、変更されたｎｏｎｃｅは、ステップ７１５において異なるハッシュキー（ＫＨ（ｘ＋１））をもたらし、そのような異なるハッシュキー（ＫＨ（ｘ＋１））によっては、（ＫＨ（ｘ））に従って暗号化されたデータが解読されないからである。さらに理解されるべきこととして、そのようなデータなしでは、関連するオブジェクト２６には、アクセスできない。このため、関連付けられたオブジェクト２６の使用を終了する際、アプリケーション３０は、記憶媒体２４からそのようなオブジェクト２６を物理的に削除する必要はなく、物理的に削除することは、そのようなオブジェクト２６が非常に大きい場合、例えば、数ギガバイト程度である場合、重い負担となる可能性がある。
【００６２】
次に図８を参照すると、図７に示した形でアプリケーション３０によって記憶媒体２４に書き込まれたデータ（すなわち、（ＫＨ（データ）））を、次の形で取り出すことができる。準備として、この場合も、アプリケーション３０と記憶媒体２４が、対称セッションキー（ＫＳ）などの共有された秘密を確立することにより、互いの間にセキュリティで保護されたチャネルをセットアップし（ステップ８０１）、特定のセキュリティで保護された記憶領域２８に関連付けられた値記憶領域４０から、アプリケーション３０は、ｎｏｎｃｅを読み取る「値読み取り」コマンドを送る（ステップ８０３）。
【００６３】
前述の場合と同様に、ステップ８０３におけるアプリケーション３０からの値読み取りコマンドは、コンピューティングデバイス１４に関連付けられた既存のファイルシステム４２を使用して、詳細には、ファイルシステム４２の確立された「値読み取り」コマンドを使用して送られる。アプリケーション３０は、この場合も、どのような特別な直接読み取り手順、または、直接アクセス手順も使用しない。このため、コンピューティングデバイス１４のファイルシステム４２は、値読み取りコマンドを受け取ること、およびそのコマンドに基づいて動作することを担う。したがって、アプリケーション３０は、特定のファイルシステム４２もしくは記憶媒体２４に固有である特別な直接読み取り手順、または、直接アクセス手順をまったく備えている必要がなく、このため、アプリケーション３０は、本明細書に記載する方法を、いくつかのファイルシステム４２および記憶媒体２４のいずれに対しても使用することができる。本発明の他の実施形態では、アプリケーション３０は、既存のファイルシステム４２、並びに、例えば、特定のセクタヘッダ群３６の位置を確認するため、ファイルシステム４２に対するコマンドおよび記憶媒体２４に対する直接クエリの組合せを使用して、記憶媒体２４からそのような（ＫＡ（データ））を読み取る。
【００６４】
コンピューティングデバイス１４のファイルシステム４２の確立された値読み取りコマンドに基づき、値読み取りコマンドにおけるアプリケーション３０は、実際、（１）そのようなｎｏｎｃｅを含む値記憶領域４０に関連付けられたセキュリティで保護された記憶領域２８、（２）バッファなどの、ｎｏｎｃｅの宛先の場所、および（３）値記憶領域４０内のそのようなｎｏｎｃｅの長さ、を明らかにする。そのような値読み取りコマンドで、識別された関連付けられたセキュリティで保護された記憶領域２８を特定する要求を、ファイルシステム４２は、実際記憶媒体２４に送り、要求は、識別されたセキュリティで保護された記憶領域２８に関連付けられた値記憶領域４０から記憶媒体２４がｎｏｎｃｅを読み取るようにという通知を含む。
【００６５】
このため、そのような要求を受け取ると、記憶媒体２４は、実際、識別されたセキュリティで保護された記憶領域２８に関連付けられた値記憶領域４０を探し出し（ステップ８０５）、探し出された値記憶領域４０の中からそのようなｎｏｎｃｅを取り出し（ステップ８０７）、（ＫＳ）を使用してそのようなｎｏｎｃｅを暗号化して（ＫＳ（ｎｏｎｃｅ））をもたらし（ステップ８０９）、要求に応答してそのような（ＫＳ（ｎｏｎｃｅ））をファイルシステム４２に戻す（ステップ８１１）。この場合も、記憶媒体２４は、ルックアップテーブル３８などに基づいて、ステップ８０５におけるとおり、識別されたセキュリティで保護された記憶領域２８に関連付けられた値記憶領域４０を特定すること、または単に、識別されたセキュリティで保護された記憶領域２８のセクタヘッダ群３６を値記憶領域４０として使用することができる。
【００６６】
そのような（ＫＳ（ｎｏｎｃｅ））で、ファイルシステム４２は、そのような（ＫＳ（ｎｏｎｃｅ））を宛先の場所の中に格納する（ステップ８１３）。その後、アプリケーション３０は、そのような（ＫＳ（ｎｏｎｃｅ））に（ＫＳ）を適用してｎｏｎｃｅをもたらし（ステップ８１５）、データキー（ＫＡ）を獲得し、ｎｏｎｃｅと（ＫＡ）を所定の形で結合し、その結合に対して一方向ハッシュを実行してハッシュキー（ＫＨ）をもたらし（ステップ８１７）、記憶媒体２４上のセキュリティで保護された記憶領域２８から（ＫＨ（データ））を取り出し（ステップ８１９）、ハッシュキー（ＫＨ）を使用して（ＫＨ（データ））を解読してデータをもたらし（ステップ８２１）、次に、そのデータを適宜、使用する。
【００６７】
前述した場合と同様に、アプリケーション３０は、セキュリティで保護された記憶領域２８が記憶媒体２４上のファイル３２に過ぎない場合、コンピューティングデバイス１４のファイルシステム４２の標準の読み取りコマンドにより、ステップ８１９におけるとおり、記憶媒体２４から（ＫＨ（データ））を取り出すことができる。やはり前述した場合と同様に、図８に関連して記載した方法は、セキュリティで保護された記憶領域２８に関連付けられたオブジェクト２６が記憶媒体２４上にいつ存在するか、または存在するかどうかにさえ依拠しない。
【００６８】
図３、図５、および図６に示した本発明の第１の変形形態を、図４、図７、および図８に示した第２の変形形態と比較すると、第１の変形形態は、セキュリティで保護された記憶領域２８のための記憶領域の量が、オブジェクト２６のファイル群３２のセクタヘッダ群２８から利用可能なスペースに限られているという点、および、そのような第１の変形形態は、実際にはそのようなオブジェクト２６の存在を要するという点において、制限を受けていることを理解されたい。これに対して、第２の変形形態は、セキュリティで保護された記憶領域２８が、関連付けられたオブジェクト２６のファイルとは別個のファイル、またはファイル群３４であるために、そのように制限はされない。ただし、そのような変形形態では、セキュリティで保護された記憶領域２８を保護するのに、ｎｏｎｃｅは追加のアイテムとして使用され、したがって、セキュリティで保護された記憶領域２８に関連付けられた値記憶領域４０の中に格納される。値記憶領域４０の記憶領域の量は、セキュリティで保護された記憶領域のオブジェクト２８のファイル群３４のセクタヘッダ２８から利用可能なスペースに限られる。しかし、そのような制限は、ｎｏｎｃｅが１２８バイトまたはキロバイト程度の少量のスペースだけしか要さないため、制限的であるとは思われない。
【００６９】
本発明のいずれの変形形態においても、信頼されないアプリケーションが、セキュリティで保護された記憶領域２８および／または値記憶領域４０として取っておかれた記憶媒体２４の領域にデータを書き込むこと、または、そのような領域からデータを読み取ることができる可能性があることに留意されたい。しかし、重要なこととして、そのような信頼されないアプリケーションは、セキュリティで保護された記憶領域２８にセキュリティで保護された形で格納されたデータを、暗号化されていない形態で回収することはできない。理解されるべきこととして、そのような信頼されないアプリケーションは、セキュリティで保護された記憶領域２８から暗号化されたデータを読み取ることができる可能性があるものの、おそらくは、キー（ＫＡ）へのアクセスを持たない信頼されないアプリケーションによって、読み取られたデータが解読される可能性はない。
【００７０】
結論
本発明に関連して実行されるプロセスを実施するのに必要なプログラミングは、比較的単純明快であり、プログラミング関係業者（ｒｅｌｅｖａｎｔ  ｐｒｏｇｒａｍｍｉｎｇ  ｐｕｂｌｉｃ）には明白なはずである。したがって、そのようなプログラミングは、本明細書には添付しない。それゆえ、本発明の趣旨および範囲を逸脱することなく、任意の特定のプログラミングを使用して本発明を実施することができる。
【００７１】
以上の説明において、本発明は、セキュリティで保護された記憶領域２８が、記憶媒体２４上に格納されたオブジェクトに関連しており、または関連付けられることが可能であり、セキュリティで保護された記憶領域２８への書き込み、または領域２８からの読み取りが、コンピューティングデバイス１４上の信頼されるアプリケーション３０だけによって行われることが可能な、コンピューティングデバイス１４に関連付けられた記憶媒体２４上において、セキュリティで保護された記憶領域２８を確立することを可能にする新規の有用なシステムおよび方法を含むことを見て取ることができよう。コンピューティングデバイス１４は、既存のファイルシステム４２を使用して、記憶媒体２４上でファイルの編成および保存を行い、システムおよび方法は、コンピューティングデバイス１４上の既存のファイルシステム４２を利用して、セキュリティで保護された記憶領域２８へのデータの書き込み、および、領域２８からのデータの読み取りを行う。
【００７２】
システムおよび方法は、コンピューティングデバイス１４上の既存のファイルシステム４２、または、既存のファイルシステム４２および記憶媒体２４への直接コマンドの組合せを利用して、セキュリティで保護された記憶領域２８へのデータの書き込み、並びに、領域２８からのデータの読み取りを行うこともできる。そのような場合、アプリケーション３０は、必要な場合、セキュリティで保護された記憶領域２８またはオブジェクト２６に関係するファイル３２にセクタ３４を割り当てるようにファイルシステム４２に要求し、割り当てられたセクタ３４のＩＤを要求することができる。その後、アプリケーション３０は、セクタ３４のＩＤ、もしくはセクタ３４のヘッダ３６のＩＤ、並びに、そこに書き込まれるべき、もしくは、そこから読み取られるべきデータを含め、セキュリティで保護された書き込みコマンド、セキュリティで保護された読み取りコマンド、値書き込みコマンド、または値読み取りコマンドと同種のコマンドを、記憶媒体２４に送ることができる。このため、前述したセキュリティで保護されたコマンド群をサポートしない既存のファイルシステム４２を、変更することなしに使用することができる。
【００７３】
諸実施形態の発明上の概念を逸脱することなく、前述した諸実施形態に対して変更を加えることも可能であることを理解されたい。それゆえ、一般に、本発明は、開示した特定の諸実施形態に限定されず、添付の特許請求の範囲で定義される本発明の趣旨および範囲に含まれる変更形態を範囲に含むことを意図するものと理解されたい。
【図面の簡単な説明】
【００７４】
【図１】信頼ベースのシステムの実施例の実施アーキテクチャを示すブロック図である。
【図２】本発明の諸態様、および／または諸態様の諸部分を組み込むことができる汎用コンピュータシステムを示すブロック図である。
【図３】本発明の一実施形態による、アプリケーションが、記憶媒体上のセキュリティで保護された記憶領域の中にデータを格納するシステムの第１の実施形態を示すブロック図である。
【図４】本発明の一実施形態による、アプリケーションが、記憶媒体上のセキュリティで保護された記憶領域の中にデータを格納するシステムの第２の実施形態を示すブロック図である。
【図５】本発明の一実施形態による、データをセキュリティで保護された記憶領域に書き込む際に図３のアプリケーションおよび記憶媒体によって実行される主要なステップを示す流れ図である。
【図６】本発明の一実施形態による、セキュリティで保護された記憶領域からデータを読み取る際に図３のアプリケーションおよび記憶媒体によって実行される主要なステップを示す流れ図である。
【図７】本発明の一実施形態による、データをセキュリティで保護された記憶領域に書き込む際に図４のアプリケーションおよび記憶媒体によって実行される主要なステップを示す流れ図である。
【図８】本発明の一実施形態による、データをセキュリティで保護された記憶領域に書き込む際に図４のアプリケーションおよび記憶媒体によって実行される主要なステップを示す流れ図である。
【符号の説明】
【００７５】
１０    ＣＰＭシステム
１２０  パーソナルコンピュータ
１２７  ハードディスクドライブ
【図１】
2005332399.tif 000003
【図２】
2005332399.tif 000004
【図３】
2005332399.tif 000005
【図４】
2005332399.tif 000006
【図５】
2005332399.tif 000007
【図６】
2005332399.tif 000008
【図７】
2005332399.tif 000009
【図８】
2005332399.tif 000010
【外国語明細書】
2005332399000001.pdf