JP2018514854A - 完全性検査を実行するための方法および装置 - Google Patents
完全性検査を実行するための方法および装置 Download PDFInfo
- Publication number
- JP2018514854A JP2018514854A JP2017550588A JP2017550588A JP2018514854A JP 2018514854 A JP2018514854 A JP 2018514854A JP 2017550588 A JP2017550588 A JP 2017550588A JP 2017550588 A JP2017550588 A JP 2017550588A JP 2018514854 A JP2018514854 A JP 2018514854A
- Authority
- JP
- Japan
- Prior art keywords
- hash value
- level
- sections
- level section
- section
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/10—Integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Power Engineering (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
メッセージ完全性検査を実行するための方法が開示される。本方法では、プロセッサは、ストレージデバイスからのメッセージを読み取る。メッセージは、複数の第1のレベルセクションを備える。プロセッサは、複数の第1のレベルセクションから1つまたは複数の第2のレベルセクションを決定する。各第2のレベルセクションは、固定数の第1のレベルセクションを備える。暗号化エンジンは、それぞれの計算済ハッシュ値を生成するために各第2のレベルセクションのハッシュ値を計算し、それぞれの計算済ハッシュ値を生成するために第2のレベルセクションに含まれない各第1のレベルセクションのハッシュ値を計算する。プロセッサは、それぞれの計算済ハッシュ値の各々を対応する記憶されたハッシュ値と比較する。プロセッサは、各それぞれの計算済ハッシュ値が対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供する。
Description
関連出願の相互参照
本出願は、内容全体が参照により本明細書に組み込まれる、2015年4月2日に米国特許商標庁に出願された、米国非仮特許出願第14/677,602号の優先権および利益を主張する。
本出願は、内容全体が参照により本明細書に組み込まれる、2015年4月2日に米国特許商標庁に出願された、米国非仮特許出願第14/677,602号の優先権および利益を主張する。
本発明は、一般に、小セクタのファイルシステムにおいてメッセージ完全性検査を実行することに関する。
ストレージデバイスの記憶能力が増大するにつれて、ストレージデバイス全体のハッシュ値を計算することに基づく完全性検査のための実行時間も増大する。その結果、目標ファイルにアクセスするとき、その隣接する領域にアクセスすることによる不要な遅延を回避するために、完全性検査が目標ファイルにのみ適用されるのが好ましい。ファイルの典型的な完全性検査は、ハッシュチェーンに基づいてインライン完全性検査を使用する場合がある。インライン完全性検査では、ストレージデバイスの各セクタまたはブロック(通常、4KB)に関して、最初にハッシュ値が計算される場合があり、これらのハッシュ値は、チェーン(または、ツリー構造)で記憶される場合がある。次いで、全体的なハッシュ値を計算するために、ハッシュ値のチェーン(または、ツリー)全体がハッシュ化される。ファイルのインライン完全性検査を実行する前に、全体的なハッシュ値を以前記憶されたハッシュ値とマッチングすることによって、すべてのセクタのハッシュが最初に検証される。
ファイルへの次のアクセスの後、影響を受けるセクタ、すなわちアクセスされるファイルを記憶するセクタにおいてのみ、完全性検査が実行される必要がある。このことにより、小セクタ、たとえば4KBセクタの効率問題が生じ、その理由は、SHA-1およびSHA-256などの大部分のハッシュアルゴリズムが、ロングメッセージに対して高速であるが、初期化および完了に関するオーバーヘッドのコストがかかるからである。たとえば、ハードウェアベースのSHA-256暗号化エンジン用のドライバは、通常、init()、update()、およびfinal()と呼ぶ3つの関数を有する。ショートメッセージでは、ドライバと暗号化エンジンとの間の通信オーバーヘッドは、ハードウェアハッシュ演算よりも長い時間がかかる。したがって、アルゴリズム設定および最終的な処理による大きい遅延は、小セクタをハッシュ化する際に生じる場合がある。このように、ハッシュチェーンベースの完全性検査は、小セクタのファイルシステムを使用したストレージデバイスには効率的でない場合がある。
したがって、小セクタを使用したファイルシステムにおいてメッセージ完全性検査を効率的に実行するための技法が求められる。
本発明の一態様は、メッセージ完全性検査を実行するための方法に存在してもよい。本方法では、プロセッサは、ストレージデバイスからのメッセージを読み取る。メッセージは、複数の第1のレベルセクションを備える。プロセッサは、複数の第1のレベルセクションから1つまたは複数の第2のレベルセクションを決定する。各第2のレベルセクションは、固定数の第1のレベルセクションを備える。暗号化エンジンは、それぞれの計算済ハッシュ値を生成するために各第2のレベルセクションのハッシュ値を計算し、それぞれの計算済ハッシュ値を生成するために第2のレベルセクションに含まれない各第1のレベルセクションのハッシュ値を計算する。プロセッサは、それぞれの計算済ハッシュ値の各々を対応する記憶されたハッシュ値と比較する。プロセッサは、各それぞれの計算済ハッシュ値が対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供する。
本発明のより詳細な態様では、暗号化エンジンは、ハードウェア暗号化エンジンであってもよい。各第2のレベルセクションは、8つの第1のレベルセクションを備えてもよい。メッセージは、ファイルを備えてもよい。
本発明の別の態様は、ストレージデバイスからのメッセージを読み取るための手段であって、このメッセージが複数の第1のレベルセクションを備える、手段と、複数の第1のレベルセクションから1つまたは複数の第2のレベルセクションを決定するための手段であって、各第2のレベルセクションが固定数の第1のレベルセクションを備える、手段と、それぞれの計算済ハッシュ値を生成するために各第2のレベルセクションのハッシュ値を計算するための手段と、それぞれの計算済ハッシュ値を生成するために第2のレベルセクションに含まれない各第1のレベルセクションのハッシュ値を計算するための手段と、それぞれの計算済ハッシュ値の各々を対応する記憶されたハッシュ値と比較するための手段と、各それぞれの計算済ハッシュ値が対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供するための手段とを備える、装置に存在してもよい。
本発明の別の態様は、複数の第1のレベルセクションを備えるメッセージを記憶するように構成されるメモリと、1つのレベルセクションのハッシュ値を計算するように構成される暗号化エンジンと、複数の第1のレベルセクションから1つまたは複数の第3のレベルセクションを決定することであって、各第3のレベルセクションが第1の固定数の第1のレベルセクションを備える、決定することと、1つまたは複数の第2のレベルセクションが第3のレベルセクションに含まれない第1のレベルセクションから形成される場合があるかどうかを決定することであって、各第2のレベルセクションが第2の固定数の第1のレベルセクションを備え、第1の固定数が第2の固定数の整数倍である、決定することと、各第3のレベルセクションに関して計算された各それぞれの計算済ハッシュ値を対応する記憶されたハッシュ値と比較することと、各第2のレベルセクションに関して計算された各それぞれの計算済ハッシュ値を対応する記憶されたハッシュ値と比較することと、第2のレベルセクションまたは第3のレベルセクションに含まれない、各第1のレベルセクションに関して計算された各それぞれの計算済ハッシュ値を対応する記憶されたハッシュ値と比較することと、各それぞれの計算済ハッシュ値が対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供することとを行うように構成されるプロセッサとを備える、装置に存在してもよい。
本発明のより詳細な態様では、各第3のレベルセクションは256個の第1のレベルセクションを備えてもよく、各第2のレベルセクションは8つの第1のレベルセクションを備えてもよい。
本発明の別の態様は、コンピュータに、ストレージデバイスからのメッセージを読み取らせるためのコードであって、このメッセージが複数の第1のレベルセクションを備える、コードと、コンピュータに、複数の第1のレベルセクションから1つまたは複数の第2のレベルセクションを決定させるためのコードであって、各第2のレベルセクションが固定数の第1のレベルセクションを備える、コードと、コンピュータに、それぞれの計算済ハッシュ値を生成するために各第2のレベルセクションのハッシュ値を計算させるためのコードと、コンピュータに、それぞれの計算済ハッシュ値を生成するために第2のレベルセクションに含まれない各第1のレベルセクションのハッシュ値を計算させるためのコードと、コンピュータに、それぞれの計算済ハッシュ値の各々を対応する記憶されたハッシュ値と比較させるためのコードと、コンピュータに、各それぞれの計算済ハッシュ値が対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供させるためのコードとを備える、コンピュータ可読媒体に存在してもよい。
「例示的」という語は、本明細書では、例、実例、または例証としての役割を果たすことを意味するために使用される。「例示的」として本明細書で説明するいかなる実施形態も、他の実施形態よりも好ましいか、または有利であると必ずしも解釈されるべきでない。
図1〜図5を参照すると、本発明の一態様は、メッセージ完全性検査を実行するための方法100に存在してもよい。本方法では、プロセッサ220は、ストレージデバイス230からのメッセージ(たとえば、ファイル)を読み取る(ステップ110)。このメッセージは、複数の第1のレベルセクション(S(M)からS(M+i))を備えるが、Mは第1のレベルセクションのインデックスであり、iはメッセージ長のインデックスである。プロセッサは、複数の第1のレベルセクションから1つまたは複数の第2のレベルセクション(2ndL(N)から2ndL(N+j))を決定する(ステップ120)が、Nは第2のレベルセクションのインデックスであり、jは長さのインデックスである。各第2のレベルセクションは、固定数の第1のレベルセクションを備える。暗号化エンジン240は、それぞれの計算済ハッシュ値を生成するために各第2のレベルセクションのハッシュ値HL2を計算し(ステップ130)、それぞれの計算済ハッシュ値を生成するために第2のレベルセクションに含まれない各第1のレベルセクションのハッシュ値HL1を計算する(ステップ140)。プロセッサは、それぞれの計算済ハッシュ値の各々を対応する記憶されたハッシュ値と比較する(ステップ150)。プロセッサは、各それぞれの計算済ハッシュ値が対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供する(ステップ160)。
代替的に、完全性検査は、最後のハッシュチェーンの完全性を検査することのみによってハッシュごとの検証をスキップしてもよい。ハッシュチェーンが検証された後、所与のレベルセクションへの次のランダムアクセスは、最初に検証された対応するハッシュ値に関してのみ完全性検査を実行してもよい。
本発明のより詳細な態様では、ストレージデバイス230は、フラッシュメモリまたはディスクドライブを備えてもよい。暗号化エンジン240は、ハードウェア暗号化エンジン、または暗号化APIを有するソフトウェア実装形態であってもよい。各第2のレベルセクション2ndL(N)は、8つの第1のレベルセクションS(M)を備えてもよい。メッセージは、ファイルを備えてもよい。
本発明の利点は、同じストレージデバイス230に関して様々なセクション長を有する複数のレベルのハッシュチェーンの使用を含む場合がある。図3に示すように、第1のレベルは、対応する第1のレベルのハッシュ値HL1(K)を生成するために各セクションをハッシュ化することを伴う場合があるが、Kはそれぞれのセクションインデックスに対応するインデックスである。各第1のレベルセクションは、ディスクセクタまたはデータブロックであってもよい。第2のレベルは、複数の連続する第1のレベルセクションをハッシュ化することを伴う場合がある。説明の目的で、図3は、各第2のレベルセクションが4つの第1のレベルセクションとつながることを示す。しかしながら、各第2のレベルセクションは、8つの第1のレベルセクション、16個の第1のレベルセクションなどとつながってもよい。i個の隣接する第1のレベルセクションのファイルの完全性を検証する場合、ファイルを効率的に区分する第1のレベルのハッシュ値と第2のレベルのハッシュ値との組合せを見つけるために第1および第2のレベルセクションが選択され、その結果、その組合せは、既存のハッシュチェーンを用いて検証を実行するのに必要な最小の数のハッシュ関数呼出しによってカバーされる。ハッシュ関数呼出しは、SHA-1およびSHA-256であってもよい。
したがって、インライン完全性検査は、適応可能なセクション長に基づいてハッシュチェーンを使用して実行されてもよい。様々な隣接するセクタのセクション長に関するハッシュに基づく複数のレベルのハッシュチェーンは、小セクタを使用したファイルシステムの効率性を提供する。
図4は、2つの記憶されたファイルの例を示す。ファイルAは第1のレベルセクションS1〜S5に記憶され、ファイルBは第1のレベルセクションS8〜S13に記憶される。ファイルAの完全性を検証するために、図5に示すように、第2のレベルセクション1(2ndL(1))に関するハッシュ(H(S1||S2||S3||S4))が計算され、第1のレベルセクションS5に関するハッシュ(H(S5))が計算される。計算済ハッシュ値は、それぞれの記憶されたハッシュ値HL2(1)およびHL1(5)と比較される。このように、ファイルAの完全性を検査するのに、(5つではなく)2つのハッシュ関数呼出ししか必要とされず、大幅な時間効率性をもたらす。ファイルBの完全性を検証するために、第2のレベルセクション3(2ndL(3))に関するハッシュ(H(S9||S10||S11||S12))が計算され、第1のレベルセクションS8およびS13に関するハッシュ(H(S8)およびH(S13))が計算される。計算済ハッシュ値は、それぞれの記憶されたハッシュ値HL2(3)、HL1(8)、およびHL1(13)と比較される。このように、ファイルBの完全性を検査するのに、(6つではなく)3つのハッシュ関数呼出ししか必要とされず、同じく大幅な時間効率性をもたらす。また、各レベルのハッシュ関数入力は、下位レベルのハッシュからではなく、元のメッセージからの直接のものである。
本発明の別の態様は、ストレージデバイス230からのメッセージを読み取るための手段(たとえば、プロセッサ220)であって、このメッセージが複数の第1のレベルセクションを備える、手段と、複数の第1のレベルセクションから1つまたは複数の第2のレベルセクションを決定するための手段(たとえば、プロセッサ220)であって、各第2のレベルセクションが固定数の第1のレベルセクションを備える、手段と、それぞれの計算済ハッシュ値を生成するために各第2のレベルセクションのハッシュ値を計算するための手段(たとえば、暗号化エンジン240)と、それぞれの計算済ハッシュ値を生成するために第2のレベルセクションに含まれない各第1のレベルセクションのハッシュ値を計算するための手段(たとえば、暗号化エンジン240)と、それぞれの計算済ハッシュ値の各々を対応する記憶されたハッシュ値と比較するための手段(たとえば、プロセッサ220)と、各それぞれの計算済ハッシュ値が対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供するための手段(たとえば、プロセッサ220)とを備える、装置に存在してもよい。
本発明の別の態様は、複数の第1のレベルセクションを備えるメッセージを記憶するように構成されるメモリ230と、1つのレベルセクションのハッシュ値を計算するように構成される暗号化エンジン240と、複数の第1のレベルセクションから1つまたは複数の第2のレベルセクションを決定することであって、各第2のレベルセクションが固定数の第1のレベルセクションを備える、決定することと、各第2のレベルセクションに関して計算された各それぞれの計算済ハッシュ値を対応する記憶されたハッシュ値と比較することと、第2のレベルセクションに含まれない、各第1のレベルセクションに関して計算された各それぞれの計算済ハッシュ値を対応する記憶されたハッシュ値と比較することと、各それぞれの計算済ハッシュ値が対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供することとを行うように構成されるプロセッサ220とを備える、装置200に存在してもよい。
本発明の別の態様は、コンピュータ210に、記憶されたメッセージを読み取らせるためのコードであって、このメッセージが複数の第1のレベルセクションを備える、コードと、コンピュータ210に、複数の第1のレベルセクションから1つまたは複数の第2のレベルセクションを決定させるためのコードであって、各第2のレベルセクションが固定数の第1のレベルセクションを備える、コードと、コンピュータ210に、それぞれの計算済ハッシュ値を生成するために各第2のレベルセクションのハッシュ値を計算させるためのコードと、コンピュータ210に、それぞれの計算済ハッシュ値を生成するために第2のレベルセクションに含まれない各第1のレベルセクションのハッシュ値を計算させるためのコードと、コンピュータ210に、それぞれの計算済ハッシュ値の各々を対応する記憶されたハッシュ値と比較させるためのコードと、コンピュータ210に、各それぞれの計算済ハッシュ値が対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供させるためのコードとを備える、コンピュータ可読媒体230に存在してもよい。
図6に示すように、さらなるレベルが使用されてもよい。たとえば、第3のレベルは、16個の第1のレベルセクションをハッシュ化することを伴う場合がある。このように、S15〜S36にわたる22個の第1のレベルセクションに記憶されたファイルを検証するために、S17〜S32にわたる1つの第3のレベルのハッシュと、S33からS36にわたる1つの第2のレベルのハッシュと、S15およびS16に関する2つの第1のレベルのハッシュとが実行される必要がある。このように、22個の関数呼出し/ハッシュ演算ではなく、合計4個の関数呼出し/ハッシュ演算が実行される必要がある。第2および第3のレベルセクション内の第1のレベルセクションの数の他の構成が使用されてもよい。
本発明の別の態様は、複数の第1のレベルセクションを備えるメッセージを記憶するように構成されるメモリ230と、1つのレベルセクションのハッシュ値を計算するように構成される暗号化エンジン240と、複数の第1のレベルセクションから1つまたは複数の第3のレベルセクションを決定することであって、各第3のレベルセクションが第1の固定数の第1のレベルセクションを備える、決定することと、1つまたは複数の第2のレベルセクションが第3のレベルセクションに含まれない第1のレベルセクションから形成される場合があるかどうかを決定することであって、各第2のレベルセクションが第2の固定数の第1のレベルセクションを備え、第1の固定数が第2の固定数の整数倍である、決定することと、各第3のレベルセクションに関して計算された各それぞれの計算済ハッシュ値を対応する記憶されたハッシュ値と比較することと、各第2のレベルセクションに関して計算された各それぞれの計算済ハッシュ値を対応する記憶されたハッシュ値と比較することと、第2のレベルセクションまたは第3のレベルセクションに含まれない、各第1のレベルセクションに関して計算された各それぞれの計算済ハッシュ値を対応する記憶されたハッシュ値と比較することと、各それぞれの計算済ハッシュ値が対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供することとを行うように構成されるプロセッサ220とを備える、装置200に存在してもよい。
本発明のより詳細な態様では、各第3のレベルセクションは256個の第1のレベルセクションを備えてもよく、各第2のレベルセクションは8つの第1のレベルセクションを備えてもよい。
装置200(または、ステーション)は、プロセッサ220、メモリ230(および/またはディスクドライブ)、暗号化エンジン240、ディスプレイ250、ならびにキーパッドまたはキーボード260を含む、コンピュータ210であってもよい。コンピュータはまた、マイクロフォン、スピーカー、カメラなどを含んでもよい。さらに、このデバイスは、インターネットなどのネットワーク270を介して他のデバイスおよび/またはサーバーと通信するためのUSB、イーサネット(登録商標)、および同様のインターフェースを含む場合もある。
図7を参照すると、ワイヤレスリモート局(RS)702(ユーザ機器UEおよび/または装置200)は、ワイヤレス通信システム700の1つまたは複数の基地局(BS)704と通信してもよい。さらに、RSは、ワイヤレスピアデバイスとペアになってもよい。ワイヤレス通信システム700は、1つまたは複数の基地局コントローラ(BSC)706およびコアネットワーク708をさらに含んでもよい。コアネットワークは、適切なバックホールを介して、インターネット710および公衆交換電話網(PSTN)712に接続されてもよい。典型的なワイヤレス移動局は、ハンドヘルド電話またはラップトップコンピュータを含んでもよい。ワイヤレス通信システム700は、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、周波数分割多元接続(FDMA)、空間分割多元接続(SDMA)、偏波分割多元接続(PDMA)、または当技術分野で知られている他の変調技法などのいくつかの多元接続技法のうちのいずれか1つを採用してもよい。
情報および信号が様々な異なる技術および技法のいずれかを使用して表される場合があることを、当業者は理解されよう。たとえば、上の説明全体を通して言及されることがあるデータ、命令、指令、情報、信号、ビット、シンボルおよびチップは、電圧、電流、電磁波、磁場もしくは磁性粒子、光学場もしくは光学粒子、またはそれらの任意の組合せによって表される場合がある。
本明細書で開示する実施形態に関して説明する様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装される場合があることを、当業者はさらに諒解されよう。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップについて、概してそれらの機能に関して上記で説明してきた。そのような機能がハードウェアとして実装されるか、またはソフトウェアとして実装されるかは、特定の用途および全体的なシステムに課される設計制約によって決まる。当業者は説明した機能を特定の用途ごとに様々な方法で実装してもよいが、そのような実装決定は本発明の範囲からの逸脱を引き起こすものと解釈されるべきではない。
本明細書で開示する実施形態に関して説明する様々な例示的な論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタルシグナルプロセッサ(DSP)、特定用途用集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理デバイス、個別のゲートもしくはトランジスタ論理、個別のハードウェア構成要素、または本明細書で説明した機能を果たすように設計されたこれらの任意の組合せを用いて実装されるか、または実行される場合がある。汎用プロセッサは、マイクロプロセッサであってもよいが、代替として、このプロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンであってもよい。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、DSPコアと連携した1つもしくは複数のマイクロプロセッサ、または任意の他のそのような構成として実装されてもよい。
本明細書で開示する実施形態に関して説明した方法またはアルゴリズムのステップは、直接ハードウェアにおいて、プロセッサによって実行されるソフトウェアモジュールにおいて、またはこれら2つの組合せにおいて具現化されてもよい。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または当技術分野において知られている任意の他の形式の記憶媒体内に存在してもよい。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、また記憶媒体に情報を書き込むことができるように、プロセッサに結合される。代替として、記憶媒体は、プロセッサに一体化されてもよい。プロセッサおよび記憶媒体は、ASIC内に存在してもよい。ASICは、ユーザ端末内に存在してもよい。代替として、プロセッサおよび記憶媒体は、個別の構成要素としてユーザ端末内に存在してもよい。
1つまたは複数の例示的な実施形態では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せにおいて実装される場合がある。コンピュータプログラム製品としてソフトウェア内に実装された場合、機能は、1つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶される場合がある。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を容易にするコンピュータ記憶媒体を含む。記憶媒体は、コンピュータによってアクセスすることができる任意の利用可能な媒体であってもよい。限定ではなく例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または命令もしくはデータ構造の形態の所望のプログラムコードを記憶するために使用することができ、かつコンピュータによってアクセスすることができる、任意の他の媒体を備えることができる。本明細書で使用される場合、ディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザディスク(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピーディスク(disk)、およびブルーレイディスク(disc)を含み、ディスク(disk)は、通常、データを磁気的に再生するが、ディスク(disc)は、レーザを用いて光学的にデータを再生する。上記の組合せはまた、コンピュータ可読媒体の範囲内に同じく含まれるものとする。コンピュータ可読媒体は、一時的な伝搬信号を含まないように非一時的であってもよい。
開示した実施形態の先の説明は、当業者が本発明を作成または使用することができるように提供される。これらの実施形態に対する様々な変更形態が、当業者には容易に明らかとなり、本明細書において規定される一般原理は、本発明の趣旨または範囲から逸脱することなく他の実施形態に適用される場合がある。したがって、本発明は、本明細書で示した実施形態に限定されるものではなく、本明細書で開示した原理および新規の特徴に一致する最も広い範囲を与えられるべきである。
200 装置
210 コンピュータ
220 プロセッサ
230 ストレージデバイス、メモリ、コンピュータ可読媒体
240 暗号化エンジン
250 ディスプレイ
260 キーパッドまたはキーボード
270 ネットワーク
700 ワイヤレス通信システム
702 ワイヤレスリモート局
704 基地局
706 基地局コントローラ
708 コアネットワーク
710 インターネット
712 公衆交換電話網
HL1 第1のレベルセクションのハッシュ値
HL2 第2のレベルセクションのハッシュ値
S(M) 第1のレベルセクション
2ndL(N) 第2のレベルセクション
210 コンピュータ
220 プロセッサ
230 ストレージデバイス、メモリ、コンピュータ可読媒体
240 暗号化エンジン
250 ディスプレイ
260 キーパッドまたはキーボード
270 ネットワーク
700 ワイヤレス通信システム
702 ワイヤレスリモート局
704 基地局
706 基地局コントローラ
708 コアネットワーク
710 インターネット
712 公衆交換電話網
HL1 第1のレベルセクションのハッシュ値
HL2 第2のレベルセクションのハッシュ値
S(M) 第1のレベルセクション
2ndL(N) 第2のレベルセクション
Claims (15)
- メッセージ完全性検査を実行するための方法であって、
プロセッサによって、ストレージデバイスからのメッセージを読み取るステップであって、前記メッセージが複数の第1のレベルセクションを備える、ステップと、
前記プロセッサによって、前記複数の第1のレベルセクションから1つまたは複数の第2のレベルセクションを決定するステップであって、各第2のレベルセクションが固定数の第1のレベルセクションを備える、ステップと、
暗号化エンジンによって、それぞれの計算済ハッシュ値を生成するために各第2のレベルセクションのハッシュ値を計算するステップと、
前記暗号化エンジンによって、それぞれの計算済ハッシュ値を生成するために第2のレベルセクションに含まれない各第1のレベルセクションのハッシュ値を計算するステップと、
前記プロセッサによって、前記それぞれの計算済ハッシュ値の各々を対応する記憶されたハッシュ値と比較するステップと、
前記プロセッサによって、各それぞれの計算済ハッシュ値が前記対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供するステップと
を備える、方法。 - 前記暗号化エンジンがハードウェア暗号化エンジンである、請求項1に記載の方法。
- 各第2のレベルセクションが8つの第1のレベルセクションを備える、請求項1に記載の方法。
- 前記メッセージがファイルを備える、請求項1に記載の方法。
- ストレージデバイスからのメッセージを読み取るための手段であって、前記メッセージが複数の第1のレベルセクションを備える、手段と、
前記複数の第1のレベルセクションから1つまたは複数の第2のレベルセクションを決定するための手段であって、各第2のレベルセクションが固定数の第1のレベルセクションを備える、手段と、
それぞれの計算済ハッシュ値を生成するために各第2のレベルセクションのハッシュ値を計算するための手段と、
それぞれの計算済ハッシュ値を生成するために第2のレベルセクションに含まれない各第1のレベルセクションのハッシュ値を計算するための手段と、
前記それぞれの計算済ハッシュ値の各々を対応する記憶されたハッシュ値と比較するための手段と、
各それぞれの計算済ハッシュ値が前記対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供するための手段と
を備える、装置。 - ハッシュ値を計算するための手段が、ハードウェア暗号化エンジンを備える、請求項5に記載の装置。
- 各第2のレベルセクションが8つの第1のレベルセクションを備える、請求項5に記載の装置。
- 前記メッセージがファイルを備える、請求項5に記載の装置。
- 複数の第1のレベルセクションを備えるメッセージを記憶するように構成されるメモリと、
1つのレベルセクションのハッシュ値を計算するように構成される暗号化エンジンと、
プロセッサであって、
前記複数の第1のレベルセクションから1つまたは複数の第3のレベルセクションを決定することであって、各第3のレベルセクションが第1の固定数の第1のレベルセクションを備える、決定することと、
1つまたは複数の第2のレベルセクションが第3のレベルセクションに含まれない第1のレベルセクションから形成される場合があるかどうかを決定することであって、各第2のレベルセクションが第2の固定数の第1のレベルセクションを備え、前記第1の固定数が前記第2の固定数の整数倍である、決定することと、
各第3のレベルセクションに関して計算された各それぞれの計算済ハッシュ値を対応する記憶されたハッシュ値と比較することと、
各第2のレベルセクションに関して計算された各それぞれの計算済ハッシュ値を対応する記憶されたハッシュ値と比較することと、
第2のレベルセクションまたは第3のレベルセクションに含まれない、各第1のレベルセクションに関して計算された各それぞれの計算済ハッシュ値を対応する記憶されたハッシュ値と比較することと、
各それぞれの計算済ハッシュ値が前記対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供することと
を行うように構成されるプロセッサと
を備える、装置。 - 各第3のレベルセクションが256個の第1のレベルセクションを備え、各第2のレベルセクションが8つの第1のレベルセクションを備える、請求項9に記載の装置。
- ハッシュ値を計算するための手段が、ハードウェア暗号化エンジンを備える、請求項9に記載の装置。
- 前記メッセージがファイルを備える、請求項9に記載の装置。
- コンピュータに、ストレージデバイスからのメッセージを読み取らせるためのコードであって、前記メッセージが複数の第1のレベルセクションを備える、コードと、
コンピュータに、前記複数の第1のレベルセクションから1つまたは複数の第2のレベルセクションを決定させるためのコードであって、各第2のレベルセクションが固定数の第1のレベルセクションを備える、コードと、
前記コンピュータに、それぞれの計算済ハッシュ値を生成するために各第2のレベルセクションのハッシュ値を計算させるためのコードと、
前記コンピュータに、それぞれの計算済ハッシュ値を生成するために第2のレベルセクションに含まれない各第1のレベルセクションのハッシュ値を計算させるためのコードと、
前記コンピュータに、前記それぞれの計算済ハッシュ値の各々を対応する記憶されたハッシュ値と比較させるためのコードと、
前記コンピュータに、各それぞれの計算済ハッシュ値が前記対応する記憶されたハッシュ値に等しい場合、完全性検査指示を提供させるためのコードと
を備える、コンピュータ可読記録媒体。 - 各第2のレベルセクションが8つの第1のレベルセクションを備える、請求項13に記載のコンピュータ可読記録媒体。
- 前記メッセージがファイルを備える、請求項13に記載のコンピュータ可読記録媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/677,602 US20160295416A1 (en) | 2015-04-02 | 2015-04-02 | Method and apparatus for performing a message integrity check |
US14/677,602 | 2015-04-02 | ||
PCT/US2016/024114 WO2016160532A1 (en) | 2015-04-02 | 2016-03-24 | Method and apparatus for performing a integrity check |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018514854A true JP2018514854A (ja) | 2018-06-07 |
Family
ID=55661639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017550588A Pending JP2018514854A (ja) | 2015-04-02 | 2016-03-24 | 完全性検査を実行するための方法および装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20160295416A1 (ja) |
EP (1) | EP3278264A1 (ja) |
JP (1) | JP2018514854A (ja) |
CN (1) | CN107408190A (ja) |
WO (1) | WO2016160532A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10440033B2 (en) * | 2017-03-16 | 2019-10-08 | Sap Se | Data storage system file integrity check |
CN107301351A (zh) * | 2017-06-22 | 2017-10-27 | 北京北信源软件股份有限公司 | 一种扫描与清除网络访问记录的方法与装置 |
CN110457278A (zh) * | 2018-05-07 | 2019-11-15 | 百度在线网络技术(北京)有限公司 | 一种文件拷贝方法、装置、设备和存储介质 |
CN113474772B (zh) * | 2019-02-22 | 2024-06-07 | 美光科技公司 | 用于改进运行固件或有限状态机的组件或系统的安全性的方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040117459A1 (en) * | 2002-12-12 | 2004-06-17 | George Fry | System and method providing multimedia messaging in communication networks |
US8127100B1 (en) * | 2007-04-16 | 2012-02-28 | Marvell International Ltd | Unlimited sub-segment support in a buffer manager |
US20130013731A1 (en) * | 2011-07-08 | 2013-01-10 | Bradley Richard Ree | Devices, systems, and methods for transmitting a message |
US8555130B2 (en) * | 2011-10-04 | 2013-10-08 | Cleversafe, Inc. | Storing encoded data slices in a dispersed storage unit |
US9298390B2 (en) * | 2012-12-21 | 2016-03-29 | Cirrus Data Solutions, Inc. | Systems and methods for copying data maintained in a dynamic storage volume and verifying the copied data |
-
2015
- 2015-04-02 US US14/677,602 patent/US20160295416A1/en not_active Abandoned
-
2016
- 2016-03-24 JP JP2017550588A patent/JP2018514854A/ja active Pending
- 2016-03-24 WO PCT/US2016/024114 patent/WO2016160532A1/en active Search and Examination
- 2016-03-24 EP EP16714709.9A patent/EP3278264A1/en not_active Withdrawn
- 2016-03-24 CN CN201680016667.8A patent/CN107408190A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2016160532A1 (en) | 2016-10-06 |
CN107408190A (zh) | 2017-11-28 |
EP3278264A1 (en) | 2018-02-07 |
US20160295416A1 (en) | 2016-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10157295B2 (en) | System and method for file authenticity certification using blockchain network | |
JP6804668B2 (ja) | ブロックデータ検証方法および装置 | |
US10771264B2 (en) | Securing firmware | |
JP2018514854A (ja) | 完全性検査を実行するための方法および装置 | |
TWI640896B (zh) | 處理數值的裝置及方法 | |
US20210336798A1 (en) | Signature verification for a blockchain ledger | |
US10783277B2 (en) | Blockchain-type data storage | |
WO2021238285A1 (zh) | 一种主放置组均衡优化的方法、系统、设备及介质 | |
WO2020258858A1 (zh) | 块链式账本中的授权方法、系统、装置及设备 | |
JP2012530328A (ja) | 信頼されないコンピューティングノードによって実行された作業の検証 | |
US10790968B2 (en) | Ledger verification method and apparatus, and device | |
WO2020211493A1 (zh) | 一种块链式账本中的数据验证方法、系统、装置及设备 | |
US20200327227A1 (en) | Method of speeding up a full antivirus scan of files on a mobile device | |
EP3127031A1 (en) | A remote station and method for re-enabling a disabled debug capability in a system-on-a-chip device | |
JP2014503146A (ja) | 不正な証明書に対して保護するための方法および装置 | |
US9450764B1 (en) | Systems and methods for validating self-signed certificates | |
US20200213136A1 (en) | Monitoring time certificate generation requests | |
TW201626235A (zh) | 用於偵測在第一階指令快取中之惡意碼之積體電路及方法 | |
CN107391970B (zh) | Flash应用程序中的函数访问控制方法及装置 | |
US10771241B2 (en) | Time authentication method, apparatus and device in blockchain-type ledger | |
US9182943B2 (en) | Methods and devices for prime number generation | |
US10142335B2 (en) | Dynamic intrinsic chip identification | |
CN110717172B (zh) | 一种块链式账本中的权限移交方法、装置及设备 | |
TWI734151B (zh) | 參數同步方法、電腦裝置及存儲介質 | |
CN110659508B (zh) | 一种基于卢卡斯数列的加解密方法、设备及可读介质 |