TOP特許意匠商標
特許ウォッチ Twitter
10個以上の画像は省略されています。
公開番号2025169199
公報種別公開特許公報(A)
公開日2025-11-12
出願番号2025071988
出願日2025-04-24
発明の名称ハードウェア生成鍵の暗号化
出願人グーグル エルエルシー,Google LLC
代理人弁理士法人深見特許事務所
主分類G06F 21/60 20130101AFI20251105BHJP(計算;計数)
要約【課題】ハードウェア生成暗号化鍵によりモバイルデバイス内のフラッシュストレージに格納されるファイルのファイル毎の暗号化及び復号化を可能にする方法及び装置を提供する。
【解決手段】モバイルデバイスのシステムオンチップにおいて、ハードウェア鍵マネージャは、ノンスを適用しした1つ又は複数のベース鍵から生成された無制限の数の子鍵を提供し、第1のバスを介してホストコントローラインタフェースに子鍵を通信する。モバイルデバイス上のソフトウェアは、子鍵の値へのアクセスを有しない。フラッシュストレージドライバは、第2のバスを介してホストコントローラインタフェースにコマンドを通信し、ホストコントローラインタフェースは、フラッシュストレージに書き込まれるデータを暗号化するためか又はフラッシュストレージから読み出されるデータを復号するために、子鍵を利用する暗号エンジンを含む。
【選択図】図2
特許請求の範囲【請求項1】
方法であって、
フラッシュストレージラッパーにおいて、第1のバスを介して、ハードウェアから、第1の子鍵を受信することを含み、前記第1の子鍵は前記ハードウェア内のハードウェア鍵マネージャによってベース鍵から生成され、前記方法はさらに、
前記フラッシュストレージラッパーにおいて、第2のバスを介して、フラッシュストレージドライバから、メモリコマンドを受信することを含み、前記方法はさらに、
前記フラッシュストレージラッパーにおいて、前記第1の子鍵を使用して、前記メモリコマンドに従ってファイルを暗号化することと、前記暗号化されたファイルのフラッシュストレージデバイスの前記フラッシュストレージドライバから受信した前記メモリコマンドに基づく位置への書き込みを指示することとを含み、または前記方法はさらに、
前記フラッシュストレージラッパーにおいて、前記フラッシュストレージデバイス上の前記フラッシュストレージドライバから受信した前記メモリコマンドに基づく前記位置でファイルを読み出すことと、前記フラッシュストレージラッパーにおいて、前記第1の子鍵を使用して前記メモリコマンドに従って前記ファイルを復号することとを含む、方法。
続きを表示(約 1,500 文字)【請求項2】
前記第1のバス及び前記第2のバスは異なる、請求項1に記載の方法。
【請求項3】
前記第1の子鍵を受信することと、前記メモリコマンドを受信することとは、アービタから受信され、前記アービタは、前記第1のバス及び前記第2のバスに接続され、前記第1のバス及び前記第2のバスと、前記フラッシュストレージラッパーのホストコントローラインタフェースとの間の通信を調停するように構成される、請求項1または2のいずれか一項に記載の方法。
【請求項4】
前記第1の子鍵を受信することと、前記メモリコマンドを受信することとは、コントローラから受信され、前記コントローラは前記第1のバス及び前記第2のバスに接続され、前記コントローラは、前記フラッシュストレージラッパーの前記ホストコントローラインタフェースによって前記第1の子鍵の受信を可能にするとともに、前記フラッシュストレージラッパーの前記ホストコントローラインタフェースによってソフトウェア生成鍵の受信を防止するように構成される、請求項3に記載の方法。
【請求項5】
前記受信したメモリコマンドは、前記フラッシュストレージラッパーのホストコントローラインタフェース内の鍵テーブル内の位置を識別し、前記方法はさらに、前記受信したメモリコマンド内で識別された前記鍵テーブル内の前記位置で前記受信した第1の子鍵を格納することを含む、請求項1~4のいずれか一項に記載の方法。
【請求項6】
前記第1の子鍵を使用して前記ファイルを暗号化することは、前記フラッシュストレージラッパーの前記ホストコントローラインタフェース内の第1の暗号エンジンを使用して暗号化し、前記第1の暗号エンジンは前記鍵テーブルに格納された前記第1の子鍵を使用する、請求項5に記載の方法。
【請求項7】
前記暗号化されたファイルの前記フラッシュストレージデバイスへの前記書き込みを指示することは、前記フラッシュストレージラッパーの前記ホストコントローラインタフェースによって指示される、請求項6に記載の方法。
【請求項8】
前記フラッシュストレージデバイス上の前記ファイルを読み出すことは、前記フラッシュストレージラッパーの前記ホストコントローラインタフェースによって読み出される、請求項5、6、または7のいずれか一項に記載の方法。
【請求項9】
前記第1の子鍵を使用して前記ファイルを復号することは、前記フラッシュストレージラッパーの前記ホストコントローラインタフェース内の第1の暗号エンジンを使用して復号し、前記第1の暗号エンジンは前記鍵テーブルに格納された前記第1の子鍵を使用する、請求項5~8のいずれか一項に記載の方法。
【請求項10】
前記受信した第1の子鍵は、
前記ハードウェア鍵マネージャにおいて、第3のバスを介して、前記フラッシュストレージドライバから第1のノンスを受信することと、
前記ハードウェア鍵マネージャにおいて、前記第3のバスを介して、前記ハードウェア鍵マネージャ内のベース鍵テーブル内の前記ベース鍵のアイデンティティを前記フラッシュストレージドライバから受信することと、
前記第1の子鍵を生成するために前記識別されたベース鍵に前記第1のノンスを、前記ハードウェア鍵マネージャによって適用することとによって生成される、請求項1~9のいずれか一項に記載の方法。
(【請求項11】以降は省略されています)

発明の詳細な説明【背景技術】
【0001】
世界の人口のほぼ80%が自分の、モバイルデバイスの一種である携帯電話を所有していると推定されている。モバイルデバイスは通常、モバイルデバイスの頭脳であるシステムオンチップ(SoC)を含む。SoCは、様々なコンポーネント、例えば、中央プロセッサ、メモリ、グラフィックプロセッサ、オーディオプロセッサ、高速入力及び出力ラインインタフェース、ならびに暗号化エンジンを含む。モバイルデバイスは、SoCの外部に配置される、本明細書ではフラッシュストレージデバイスとも呼ばれるフラッシュストレージを含むことができる。フラッシュストレージは、写真及び電子メールなどのユーザデータをモバイルデバイスに格納するために使用される。セキュリティ目的でモバイルデバイスに格納されているデータを暗号化することは標準慣行である。メモリデバイスのパフォーマンスが継続的に向上するにつれて、効率的なパフォーマンスを確保するためにモバイルデバイスでのデータの暗号プロセス(例えば、暗号化及び復号)の速度を上げることが重要になっている。SoCでのインライン暗号化により、データがフラッシュストレージに書き込まれるときにデータの効率的な暗号化が可能になり、同様に、データがフラッシュストレージからSoCに読み出されるときにSoC上のデータの効率的な復号が可能になる。ただし、効率的な方法でインライン暗号演算を実行することは困難な場合がある。
続きを表示(約 3,900 文字)【0002】
モバイルデバイスのSoCは通常、フラッシュストレージラッパー内に位置するホストコントローラインタフェースを含む。ホストコントローラインタフェースは、SoCとフラッシュストレージとの間で通信する。ホストコントローラインタフェースは、SoCによって、フラッシュストレージに書き込まれるデータを暗号化するだけでなく、フラッシュストレージから読み出されるデータを復号するために使用される暗号エンジンを含む。モバイルデバイスの製造メーカーは、多くの場合、既製のサードパーティフラッシュストレージコントローラを、フラッシュストレージラッパー内のホストコントローラインタフェースとして使用する。多くの場合、サードパーティプロバイダは、このコントローラのいかなるカスタマイズも提示しない。
【発明の概要】
【0003】
本文書では、ファイルごとの暗号化を提供するためにハードウェア生成鍵を使用することについて説明する。本文書では、本開示のハードウェア鍵マネージャが1つまたは複数のベース鍵から生成された無限または無制限の数の鍵を提供するように構成される方法について詳述する。ベース鍵は、モバイルデバイスのSoC上に位置している、ハードウェア鍵マネージャ上に位置している。ファイルごとの暗号化を提供するために、本文書では、無制限の数の暗号化鍵のハードウェア生成を可能にする実施態様を説明する。これにより、異なる鍵を使用したインライン暗号化がファイルごとの暗号化を実行することが可能になる。ハードウェア鍵マネージャは、無制限の数の子鍵を生成してもよい。各子鍵は、ハードウェア鍵マネージャ上に位置するベース鍵の1つに、本明細書では微調整とも呼ばれるノンスを適用した結果として生成される。ハードウェア鍵マネージャが単一のベース鍵しか含まない場合でも、ノンスが無限の数の方法で変動し得るため、無制限の数の子鍵は、依然としてハードウェア鍵マネージャによって生成され得る。次にハードウェア生成子鍵は、ファイルごとに暗号化する、または復号するために、フラッシュストレージラッパー内のホストコントローラインタフェースによって使用され得る。
【0004】
本文書では、既製のサードパーティフラッシュストレージコントローラが、ハードウェア生成鍵を使用してファイルベースの暗号化を提供するためにホストコントローラインタフェースとして使用され得る方法について詳述する。本明細書では通信ラインとも呼ばれるバスは、ハードウェア鍵マネージャから既製のサードパーティフラッシュストレージコントローラへの通信を可能にするために、既製のサードパーティフラッシュストレージコントローラに追加される。バスという用語は、通信ライン、入力ライン、出力ライン、導線、電気バス、エネルギーバスなどを含む。ハードウェア鍵マネージャは、データを暗号化する、及び/または復号するために、既製のサードパーティフラッシュストレージコントローラによって使用されるハードウェア鍵を生成する。フラッシュメモリドライバは、既製のサードパーティフラッシュストレージコントローラ上の暗号エンジンによって鍵を使用するという要求を送信する。ただし、フラッシュメモリドライバと既製のサードパーティフラッシュストレージコントローラとの両方が、ハードウェア鍵マネージャによって生成された暗号化鍵の値へのアクセスを有しない。
【0005】
本文書では、ハードウェア鍵マネージャが、単一のベース鍵から、またはベース鍵のセットから無限、または無制限の数の子鍵を生成するように構成される方法について詳述する。ハードウェア鍵マネージャは、子鍵を生成するために、親鍵とも呼ばれるベース鍵に適用される微調整、またはノンスを使用する。本文書では、生成された子鍵がホストコントローラインタフェースの鍵テーブルに格納されることについて詳述する。ホストコントローラインタフェース内の暗号エンジンは、ハードウェア鍵マネージャによって生成された子鍵を使用してモバイルデバイス上でデータを暗号化する、または復号するために、鍵テーブルから子鍵にアクセスする。
【0006】
フラッシュストレージラッパーは、フラッシュストレージラッパー内に位置する既製のサードパーティフラッシュストレージコントローラであり得る、ホストコントローラインタフェースと通信するために、本明細書では通信ラインとも呼ばれる2つのバスを含む。本文書では、フラッシュストレージラッパーの第1のバスが、ハードウェア生成鍵をハードウェア鍵マネージャからホストコントローラインタフェースに渡すために使用されることについて詳述する。いくつかの実施態様では、ハードウェア鍵マネージャは、子鍵をフラッシュストレージラッパーのホストコントローラインタフェースに通信するために第1のバスを使用することが可能であり、他のコンポーネント(例えば、ソフトウェア)は第1のバスを使用することから除外されることができる。第1のバスがハードウェア鍵マネージャによってのみアクセス可能である場合、モバイルデバイス上のソフトウェアは、ハードウェア生成鍵の値へのアクセスを有することが防止される。フラッシュストレージラッパーの第2のバスは、フラッシュストレージドライバからホストコントローラインタフェースへのソフトウェアメモリコマンドの通信に使用される。ソフトウェアメモリコマンドは、どのデータがフラッシュストレージに格納されるか、またはフラッシュストレージから読み出される必要があるかだけでなく、暗号エンジンにどの暗号化鍵を暗号処理中に使用する必要があるかをホストコントローラインタフェースに指令するために使用される。ソフトウェアメモリコマンドは、モバイルデバイスのオペレーティングシステムなど、高レベルのソフトウェアからのコマンドに基づいて、フラッシュストレージドライバからホストコントローラインタフェースに送信される。
【0007】
例示的な実施態様では、方法は、フラッシュストレージラッパーにおいて、第1のバスを介して、ハードウェアから、第1の子鍵を受信することを含み、第1の子鍵はハードウェア内のハードウェア鍵マネージャによってベース鍵から生成され、方法はさらに、フラッシュストレージラッパーにおいて、第2のバスを介して、フラッシュストレージドライバから、メモリコマンドを受信することを含み、方法はさらに、フラッシュストレージラッパーにおいて、第1の子鍵を使用して、メモリコマンドに従ってファイルを暗号化することと、フラッシュストレージデバイスのフラッシュストレージドライバから受信したメモリコマンドに基づく位置への暗号化されたファイルの書き込みを指示することとを含み、または方法はさらに、フラッシュストレージラッパーにおいて、フラッシュストレージデバイス上のフラッシュストレージドライバから受信したメモリコマンドに基づく位置でファイルを読み出すことと、フラッシュストレージラッパーにおいて、第1の子鍵を使用して、メモリコマンドに従ってファイルを復号することとを含む。
【0008】
例示的な実施態様では、装置は、ハードウェアから通信を受信するように構成された第1のバスと、ソフトウェアから通信を受信するように構成された第2のバスと、第1のバス及び第2のバスに接続されたアービタとを含む。アービタは出力ラインを含む。装置は、アービタの出力ラインに接続された通信ラインを有するホストコントローラインタフェースを含む。ホストコントローラインタフェースは、第1の暗号エンジン及び鍵テーブルを含む。鍵テーブルはハードウェア生成鍵を含み、第1の暗号エンジンは、ファイルを暗号化する、または復号するために、ハードウェア生成鍵を使用するように構成される。
【0009】
例示的な実施態様では、方法は、ハードウェア鍵マネージャにおいて、ベース鍵から子鍵を生成することを含む。方法は、ハードウェア鍵マネージャから、第1のバス上のフラッシュストレージラッパーに子鍵を送信することを含む。方法は、フラッシュストレージドライバから、第2のバス上のフラッシュストレージラッパーでメモリコマンドを受信することを含む。方法は、ファイルを暗号化する、またはファイルを復号するために、フラッシュストレージラッパーにおいて子鍵を使用することを含む。方法は、メモリコマンドに基づいて、フラッシュストレージデバイス上のある位置に暗号化されたファイルを書き込むこと、またはその位置から復号されたファイルを読み出すことを含む。
【0010】
例示的な実施態様では、システムは、フラッシュストレージデバイスと、フラッシュストレージデバイスと通信するフラッシュストレージラッパーとを含む。フラッシュストレージラッパーは、複数の鍵及び複数の鍵スロットを有する第1の鍵テーブルを含む。複数の鍵の各鍵は、複数の鍵スロットの1つのスロットに対応する。システムは、第1のバスを介してフラッシュストレージラッパーと通信するハードウェア鍵マネージャを含む。システムには、第2のバスを介してフラッシュストレージラッパーと通信し、第3のバスを介してハードウェア鍵マネージャと通信するフラッシュストレージドライバが含まれる。
(【0011】以降は省略されています)

この特許をJ-PlatPat(特許庁公式サイト)で参照する

関連特許

グーグル エルエルシー
ウェアラブルコンピューティングデバイスの電力インターフェイスにおける錆の発生を最小限に抑える方法
7日前
グーグル エルエルシー
特定用途向け機械学習アクセラレータの生成およびグローバルなチューニング
1日前
グーグル エルエルシー
チャネル状態フィードバックにニューラルネットワークを使用した無線ネットワーク
1日前
個人
詐欺保険
1か月前
個人
縁伊達ポイン
1か月前
個人
職業自動販売機
20日前
個人
5掛けポイント
27日前
個人
RFタグシート
1か月前
個人
地球保全システム
2か月前
個人
QRコードの彩色
1か月前
個人
ペルソナ認証方式
1か月前
個人
自動調理装置
1か月前
個人
情報処理装置
1か月前
個人
残土処理システム
1か月前
個人
農作物用途分配システム
1か月前
個人
インターネットの利用構造
1か月前
個人
タッチパネル操作指代替具
1か月前
NISSHA株式会社
入力装置
今日
個人
サービス情報提供システム
22日前
個人
知的財産出願支援システム
1か月前
個人
スケジュール調整プログラム
1か月前
個人
学習用データ生成装置
1日前
個人
携帯端末障害問合せシステム
1か月前
個人
エリアガイドナビAIシステム
1か月前
株式会社キーエンス
受発注システム
2か月前
個人
食品レシピ生成システム
2か月前
株式会社キーエンス
受発注システム
2か月前
株式会社キーエンス
受発注システム
2か月前
キヤノン株式会社
画像認識装置
14日前
株式会社ケアコム
項目選択装置
1か月前
キラル株式会社
顧客体験提供システム
2日前
エッグス株式会社
情報処理装置
1か月前
キヤノン株式会社
印刷システム
1か月前
株式会社ワコム
電子ペン
29日前
個人
音声・通知・再配達UX制御構造
1か月前
キヤノン株式会社
表示システム
2か月前
続きを見る