JP2009531728A - 最高セキュリティアプリケーションのための暗号化方法 - Google Patents
最高セキュリティアプリケーションのための暗号化方法 Download PDFInfo
- Publication number
- JP2009531728A JP2009531728A JP2009502098A JP2009502098A JP2009531728A JP 2009531728 A JP2009531728 A JP 2009531728A JP 2009502098 A JP2009502098 A JP 2009502098A JP 2009502098 A JP2009502098 A JP 2009502098A JP 2009531728 A JP2009531728 A JP 2009531728A
- Authority
- JP
- Japan
- Prior art keywords
- message
- unitary
- string
- bits
- encrypted
- 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
Classifications
-
- 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/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
-
- 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
- H04L9/3236—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 using cryptographic hash functions
- H04L9/3239—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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】ワンタイムパッド暗号化方法を改良すること
【解決手段】IM−ビット長さのメッセージMを暗号化するための方法は、a)IR−ビット長さ(IR≧IM)の第1ランダムビットシーケンスを発生するステップと、b)メッセージMをISビット(ここでIS≦IM)のユニタリーメッセージストリングにサブ分割するステップと、c)各ユニタリーメッセージストリングに対し、暗号化されたユニタリーストリングを発生するよう、前記ユニタリーメッセージストリングと前記第1ランダムビットシーケンスのISビットとのXOR演算を実行するステップと、d)前記暗号化されたユニタリーストリングを暗号テキストに組み立てるステップとを備える。本発明によれば、暗号テキストの組み立ては、前記メッセージ内の対応するユニタリーメッセージストリングの位置に対して、前記暗号化テキスト内の前記暗号化されたユニタリーストリングの位置を入れ替えるように行う。換言すれば、前記暗号化されたユニタリーストリングを暗号テキストに組み立てるステップは、前記メッセージ内の対応するユニタリーメッセージストリングの位置に対して前記暗号テキスト内の前記暗号化されたユニタリーストリングの位置をランダムに入れ替えるステップを含む。
【解決手段】IM−ビット長さのメッセージMを暗号化するための方法は、a)IR−ビット長さ(IR≧IM)の第1ランダムビットシーケンスを発生するステップと、b)メッセージMをISビット(ここでIS≦IM)のユニタリーメッセージストリングにサブ分割するステップと、c)各ユニタリーメッセージストリングに対し、暗号化されたユニタリーストリングを発生するよう、前記ユニタリーメッセージストリングと前記第1ランダムビットシーケンスのISビットとのXOR演算を実行するステップと、d)前記暗号化されたユニタリーストリングを暗号テキストに組み立てるステップとを備える。本発明によれば、暗号テキストの組み立ては、前記メッセージ内の対応するユニタリーメッセージストリングの位置に対して、前記暗号化テキスト内の前記暗号化されたユニタリーストリングの位置を入れ替えるように行う。換言すれば、前記暗号化されたユニタリーストリングを暗号テキストに組み立てるステップは、前記メッセージ内の対応するユニタリーメッセージストリングの位置に対して前記暗号テキスト内の前記暗号化されたユニタリーストリングの位置をランダムに入れ替えるステップを含む。
Description
本発明は、最高セキュリティアプリケーションのための暗号化方法に関し、より詳細には、改良されたワンタイムパッド暗号化方法に関する。
ワンタイムパッドの発明は、AT&T社のギルバート・バーナム氏と、キャプテン・ジョセフ・モーボルニュ氏の共同作業として見なされている。ワンタイムパッドでは、暗号化すべき平文とこの平文と同じ長さのランダム鍵、すなわちパッドとを組み合わせる。メッセージ内の各文字は、(乱数で、秘密であって、1回しか使用されない)パッドからの文字と組み合わせられる。したがって、パッドは少なくともメッセージの長さになっていなければならない。
理論的には、パッドの内容を知ることなく、力づくでの攻撃を使ってメッセージを解読する方法はない。この理由から、パッドを保護(すなわち秘密に)し、乱数(すなわちだれにも予測できないもの)とし、1回しか使用しないことが重要である。そうでない場合、暗号が容易に脅かされてしまう。平文と、それに対応する暗号文の双方が知られると、パッドが容易に決定されてしまう。
最近の暗号学では、OTPを使用することにいくつかの欠点が存在する。第1の欠点は、膨大なボリュームの必要とされる乱数データを安全に配布すること、およびこの乱数データを安全に記憶することが困難であることに関するものであり、第2のグループの欠点は、安全でない伝送チャンネル(すなわち公衆インターネット)を通して伝送中にメッセージが変わってしまう可能性があることに関するものである。
第1の欠点は、高品位の乱数を発生するようになっている適当な乱数発生器を使用することによって克服でき、第2の欠点を解消するためには、最近のメッセージ認証アルゴリズムのうちの1つを使用することが、論理的な解決案であるように見える。かかる組み合わせは、基本的には破ることのできないセキュリティを保証できよう。しかしながら、所定の分野のアプリケーション、特に(e−バンキングのように)多数の通信メッセージがすべてのメッセージで標準的で既知の小さい同じテキスト部分を使用することが極めて多くなっているアプリケーションでは、暗号化方法によって得られる保護を更に高めることに関心がある。
本発明の目的は、改良されたワンタイムパッド暗号化方法を提供することにある。
この目的は、請求項1に記載の暗号化方法によって達成され、本方法の更なる変形例は従属請求項に記載されている。
IM−ビット長さのメッセージMを暗号化するための本発明に係わる方法は、a)IR−ビット長さ(IR≧IM)の第1乱数ビットシーケンスを発生するステップと、b)メッセージMをIS−ビット(ここでIS≦IM)のユニタリーメッセージストリングにサブ分割するステップと、c)各ユニタリーメッセージストリングに対し、暗号化されたユニタリーストリングを発生するよう、前記ユニタリーメッセージストリングと前記第1乱数ビットシーケンスのISビットとのXOR演算を実行するステップと、d)前記暗号化されたユニタリーストリングを暗号テキストに組み立てるステップとを備える。本発明によれば、暗号テキストの組み立ては、前記メッセージ内の対応するユニタリーメッセージストリングの位置に対して、前記暗号化テキスト内の前記暗号化されたユニタリーストリングの位置を入れ替えるように行うが、この位置の入れ替えは第一のランダムビットシーケンスに基づいている。換言すれば、前記暗号化されたユニタリーストリングを暗号テキストに組み立てるステップは、前記メッセージ内の対応するユニタリーメッセージストリングの位置に対して前記暗号テキスト内の前記暗号化されたユニタリーストリングの位置を―第一のランダムビットシーケンスに基づいて―ランダムに入れ替えるステップを含む。
暗号化されたメッセージでは、ユニタリーストリング、例えば元の平文のバイトは、その位置をランダムに変えている。このことは、同じショート標準メッセージの暗号化と伝送とを繰り返さなければならないアプリケーションでも、生じ得る攻撃者に対し、ランダムビットのシーケンスとして生じるビットストリングが立ちはだかることを意味する。
本発明の好ましい実施例では、前記メッセージMは、平文の多数のIPビットとIHビット長さのハッシュ値(ここで、IP+IH≦IM)とを含み、前記ハッシュ値は前記平文のビットによって決定される。適当な任意のハッシングアルゴリズム、例えばMD5アルゴリズムにより発生できるハッシュ値は、受信側でのメッセージの認証を可能にするので、伝送中にメッセージが変更されたかどうかを判断することが可能となる。
暗号化前、およびバイト位置のランダムに入れ替える前に、平文に対してメッセージ認証情報が追加されることが理解できよう。従って、この結果生じる暗号化されたメッセージでは、メッセージ認証コード(16バイト=128ビット)の位置でも未知であり、よってこの情報に対する攻撃は不可能である。
第1暗号化ステップおよび暗号テキストへの暗号化されたユニタリーストリングのその後の組み立ての後で、その結果得られる暗号テキストを異なるランダムビットシーケンスで再び暗号化することが望ましい。従って、この方法は、前記暗号テキスト長さに対応する長さの第2ランダムビットシーケンスを発生するステップと、前記暗号化されたメッセージを発生するよう、前記暗号テキストと前記第2ランダムビットシーケンスとのXOR演算を実行するステップとを更に備えることが好ましい。
ワンタイムパッドを構成するランダムビットシーケンスは、高品位の乱数を発生するようになっている任意の適当な乱数発生器によって発生できることが理解できよう。本方法の好ましい実施例では、第1および/または第2ランダムビットシーケンスを発生する前記ステップは、
a)(BFT)に、mBFTのアドレス指定可能なビットBTj(ここで0≦j≦mBFT−1)(前記はランダム分布した同じ数の「0」ビットと「1」ビットとを含む)を提供するステップと、
b)前記第1および/または第2ランダムビットシーケンスの各ビットに対し、 i)0とmBFT−1との間のレンジ内のアドレスFAを発生し、 ii)前記からアドレスFAを有するビットBTFAを選択し、 iii)前記からの前記ビットBTFAに等しくなるよう、前記第1および/または第2ランダムビットシーケンスのうちの前記ビットをセットするステップとを備える。
a)(BFT)に、mBFTのアドレス指定可能なビットBTj(ここで0≦j≦mBFT−1)(前記はランダム分布した同じ数の「0」ビットと「1」ビットとを含む)を提供するステップと、
b)前記第1および/または第2ランダムビットシーケンスの各ビットに対し、 i)0とmBFT−1との間のレンジ内のアドレスFAを発生し、 ii)前記からアドレスFAを有するビットBTFAを選択し、 iii)前記からの前記ビットBTFAに等しくなるよう、前記第1および/または第2ランダムビットシーケンスのうちの前記ビットをセットするステップとを備える。
ランダムビットシーケンスを発生するためのこの方法は、ランダム分布する同じ数の「0」ビットと「1」ビットを含む、ランダムビットテーブルから1つのビットをランダムに選択することにより、コインフロッピングの原理の結果を再現する。このコインフロッピングシミュレーションのその後の結果から、発生すべきランダムビットシーケンスをビットごとに組み立てる。
所定のレンジ内のアドレスの高品位のランダム性を保証する、適当な方法により、(BFT)から選択すべきビットのアドレスFAをランダムに発生することができる。良好に分布した乱数を得るために、発生される最終アドレスFAは、ビットフィッシングテーブルBFTのアドレススペース全体にわたってランダムにも分布しなければならない。このような目的を達成するための適当な対策は、特定の複雑な最終アドレス組み立てパラメータに従って、多数の基本ランダム性値の選択されたビットからFAアドレスを組み立てることを含むことができる。この基本ランダム性自らは、フィードバック変更子を使ってランダムに発生でき、この変更子は所定の数の、以前発生されたビットに影響される。
従って、かかる方法は、高品位の乱数を発生し、一方でこの方法は、任意の標準的コンピュータ、例えばシンプルなパソコンによって容易に実現できる。
本発明に係わる方法は、任意の標準的なパソコンまたはスマートカード、もしくは例えば32ビットプロセッサを有するUSBトークンのような小型物理的サポートでも容易に実施できることが理解できよう。このことは、特定の実現例の次の説明からより明らかとなろう。
ファイルの安全な伝送を可能にするだけでなく、e−バンキングのようなフルデュプレクスの内部伝送で作動するために、本明細書で提案する方法は、暗号化すべき平文メッセージを、1000バイトの長さを有する平文ブロックに分解する。次に、各平文ブロックを1024バイトの長さの暗号テキストブロックに変換する。この暗号テキストブロックは(ファイルまたはセッションの)ブロック数に関する情報、データグラム内に記憶されるテキストの長さ、およびメッセージ認証情報を含む。可能な実現例では、メッセージ認証情報は、例えばMD5タイプのアルゴリズムによって得られる。
「ランダムに入れ替えられた位置」なる用語は、元のテキストの各バイトが、暗号化中に暗号テキスト内の位置をランダムに換えたことを示す。すなわち最初の平文ブロックのバイト5は、最初の暗号テキストブロック内の位置844に存在することができ、他方、第2の平文のブロックのバイト5は、第2暗号テキストブロック内の位置45に位置することができる、などである。
このように暗号化を行う動機は、(e−バンクのように)多数の伝送メッセージがすべてのメッセージ内で、標準的な既知の同じ小さいテキスト部分を使用することが極めて多いという事実に基づく。各バイトがその位置をランダムに変更し、各ビットが異なるランダムビットと2回XOR演算されるよう、その結果として生じる暗号テキストが、8192のパーフェクトランダムビットのビットストリングによる攻撃を受ける可能性が残っている。
メッセージ認証コード(16バイト=128ビット)の位置が未知であっても、この情報に対する攻撃は不可能である。
この暗号化は次のステップを含む。すなわち
a)バイトを単位として構成されたメモリエリア内に8192のランダムビットの第1シーケンス、すなわちベースを発生するステップ
b)1024個のフラグの空リストと、暗号テキストを記憶するための1024バイトの暗号テキストメモリスペースを作成するステップ
c)8バイト(64ビット)のヘッダー部分にサブ分割できる1024バイトの平分メモリスペース、1000バイトのテキスト部分および16バイトのハッシュ部分を作成するステップ
d)平文メモリスペースのヘッダー部分内に平文テキストブロックのブロック数(54ビット)およびデータグラムの長さ(10ビット)を記憶するステップ
e)平文テキストメモリスペースのうちのテキスト部分に1000バイトまでの平文テキストを記憶するステップ(平文テキストが1000よりも短い場合、残りのバイトはゼロとなる)
f)メッセージダイジェストを認証として計算し、次に我々が1024バイトの暗号化すべき元のテキストを有するように、この結果得られる16バイトを平文テキストメモリスペースのうちのハッシュ部分に記憶するステップ
g)暗号位置カウンターおよび元のテキストカウンターにゼロを記憶させることにより、暗号位置カウンターおよび元のテキストカウンターを初期化するステップ
h)暗号位置カウンターによって表示されるバイトからの最小5ビット(0〜31)をベースから抽出し、これら5ビットを暗号位置カウンターに加算し、結果が1024またはそれより大となる場合に、このカウンターへのすべての加算の次に1024の減算が続かなければならないように注意を払うステップ
i)暗号位置カウンターに対応するフラグが空であるかどうかをチェックし、空でなければ、空の位置を見つけるまで、暗号位置カウンターを1つだけ増加させるステップ(カウンターが1024に達した場合、位置0で再スタートするように、1024だけ減算しなければならない)
j)元のテキストカウンターが参照する元のテキストからのバイトと暗号位置カウンターが参照するベースのバイトとのXOR演算を実行し、暗号文内の同じバイト位置に、前記XORの結果を記憶するステップ
k)フラグリスト内の占有されている位置と同じ位置にフラグを立てるステップ
l)元のテキストカウンターおよび暗号位置カウンターを1つだけ増加し、その結果が1024またはそれ以上である場合、このカウンターへのすべての加算の次に1024の減算が従わなければならないように、再び注意を払うステップ
m)上記ステップh)からl)を1022回繰り返すステップ
n)8192個のランダムビットの第2シーケンスを発生するステップ
o)暗号ブロックと、この8192ビットストリングとのXOR演算を実行し、送るべき暗号テキストを我々に与えるステップ
a)バイトを単位として構成されたメモリエリア内に8192のランダムビットの第1シーケンス、すなわちベースを発生するステップ
b)1024個のフラグの空リストと、暗号テキストを記憶するための1024バイトの暗号テキストメモリスペースを作成するステップ
c)8バイト(64ビット)のヘッダー部分にサブ分割できる1024バイトの平分メモリスペース、1000バイトのテキスト部分および16バイトのハッシュ部分を作成するステップ
d)平文メモリスペースのヘッダー部分内に平文テキストブロックのブロック数(54ビット)およびデータグラムの長さ(10ビット)を記憶するステップ
e)平文テキストメモリスペースのうちのテキスト部分に1000バイトまでの平文テキストを記憶するステップ(平文テキストが1000よりも短い場合、残りのバイトはゼロとなる)
f)メッセージダイジェストを認証として計算し、次に我々が1024バイトの暗号化すべき元のテキストを有するように、この結果得られる16バイトを平文テキストメモリスペースのうちのハッシュ部分に記憶するステップ
g)暗号位置カウンターおよび元のテキストカウンターにゼロを記憶させることにより、暗号位置カウンターおよび元のテキストカウンターを初期化するステップ
h)暗号位置カウンターによって表示されるバイトからの最小5ビット(0〜31)をベースから抽出し、これら5ビットを暗号位置カウンターに加算し、結果が1024またはそれより大となる場合に、このカウンターへのすべての加算の次に1024の減算が続かなければならないように注意を払うステップ
i)暗号位置カウンターに対応するフラグが空であるかどうかをチェックし、空でなければ、空の位置を見つけるまで、暗号位置カウンターを1つだけ増加させるステップ(カウンターが1024に達した場合、位置0で再スタートするように、1024だけ減算しなければならない)
j)元のテキストカウンターが参照する元のテキストからのバイトと暗号位置カウンターが参照するベースのバイトとのXOR演算を実行し、暗号文内の同じバイト位置に、前記XORの結果を記憶するステップ
k)フラグリスト内の占有されている位置と同じ位置にフラグを立てるステップ
l)元のテキストカウンターおよび暗号位置カウンターを1つだけ増加し、その結果が1024またはそれ以上である場合、このカウンターへのすべての加算の次に1024の減算が従わなければならないように、再び注意を払うステップ
m)上記ステップh)からl)を1022回繰り返すステップ
n)8192個のランダムビットの第2シーケンスを発生するステップ
o)暗号ブロックと、この8192ビットストリングとのXOR演算を実行し、送るべき暗号テキストを我々に与えるステップ
受信側での暗号解読は次のステップを実行することにより、暗号化の逆を行う。
a)暗号文と8192個のランダムビットの第2シーケンスとのXOR演算を実行するステップ
b)8192個のランダムビットの第1シーケンス、すなわちベースを使って、元のテキストの位置を探し、暗号文とベースからの対応するバイトとのXOR演算を実行し、元のテキストを我々に与えるステップ
c)元のテキストの1024バイトを完了した後に、ブロック数およびデータグラムの長さをチェックし、生じ得るエラーを検出するステップ
d)最後の16バイト、メッセージ認証をセーブし、これらバイトをゼロに置き換えるステップ
e)メッセージダイジェストを再計算し、この結果とセーブされた16バイトとを比較し任意の手段による、すなわち伝送エラーまたは攻撃者による変更を検出できるようにするステップ
a)暗号文と8192個のランダムビットの第2シーケンスとのXOR演算を実行するステップ
b)8192個のランダムビットの第1シーケンス、すなわちベースを使って、元のテキストの位置を探し、暗号文とベースからの対応するバイトとのXOR演算を実行し、元のテキストを我々に与えるステップ
c)元のテキストの1024バイトを完了した後に、ブロック数およびデータグラムの長さをチェックし、生じ得るエラーを検出するステップ
d)最後の16バイト、メッセージ認証をセーブし、これらバイトをゼロに置き換えるステップ
e)メッセージダイジェストを再計算し、この結果とセーブされた16バイトとを比較し任意の手段による、すなわち伝送エラーまたは攻撃者による変更を検出できるようにするステップ
上記方法は、長いプロセスのように見えるが、コンピュータはメッセージの暗号化および解読の役目を果たすことを忘れてはならない。3GHzで作動するEM64Tを有するインテル(登録商標)のペンティアム(登録商標)IVは、毎秒約6000ブロックで処理でき、上記のような乱数の発生は、毎秒6メガバイトのスループットを与える。
当然ながら、本方法は、毎秒10ギガビットのリンクに対する解決案とはならないが、鍵変換のための提案方法と組み合わされたAESのような対称の暗号化の組み合わせは、いわゆる量子暗号化技術の使用と同じ高いセキュリティを保証し、利点として低コストおよび欧州とオーストラリアのような長距離を容易にリンクする可能性を与える。
保護されたメモリを有するMPUを含む小型の物理的サポートを、乱数発生のための秘密ランダムビットテーブルと容易にペアにしてプログラムできることが理解できよう。保護されたメモリ内に記憶されていることに起因し、遠距離のパートナーに物理的にトランスポートする間のコピーは不可能であるので、CDまたはテープによりワイタイムパッドのための乱数を交換する場合に、情報がリークするソースとなり得ることを防止できる。上記乱数発生器が、かかるMPU内に組み込まれている場合、対称暗号化アプリケーションでも使用すべき新しい鍵の発生を同じように実行できる。
例えば認証およびログインのための小さいメッセージを考える場合、現時点で提案する方法のセキュリティは、より明らかとなる。これらメッセージは常に、8192個のランダムビット内に隠すことができるので、攻撃者にとって、伝送されるメッセージを暗号分析することが不可能となる。
上記乱数発生器を使用する場合、ビットフィッシングテーブル(BFT)と称されるランダムビットテーブルは、発生される数の乱数性に対する決定的な要素となる。このことは、暗号アプリケーションでこのような乱数発生器を使用する場合、(シードではなく)BFTだけが秘密に保持すべき要素となる。従って、(Eメールの主題またはフルデュプレックスチャンネルの同期内で)暗号解読のために使用するシードをオープンに表示できる。フルデュプレックスでは、応答者は同じ乱数を2度使用することを回避するために、最初のシードプラス1を使用することができる。
ポイントツーポイントの通信を超えるように使用を拡張するための、2つの可能性が存在する。適当であれば、どの参加者とも異なるランダムビットテーブルBFTを共用する、信頼できる安全なポストオフィスを創出することができる。ポストオフィスは(認証と共に)受信したメッセージを内部で解読し、適当なBFTにより新しく暗号化した後に、メッセージを宛て先人に送るので、グループのうちのどのメンバーも、グループの他のメンバーとの間で秘密メッセージを送受信できる。このことは、ローカルの機関、より巨大な会社などにとって最良の解決案のように見える。
より小さい、クローズされたグループに対する別の解決案は、共通ランダムビットテーブルBFTを共用し、かつどの暗号化ユニットも264の可能なシードの限られた数のスペースしか使用しないように、暗号化ユニットを認証することである。次に、本方法に従って暗号化されたメッセージの第1の暗号化ブロックは、メッセージを送りたい先の1つ以上の宛て先人を含んでいなければならない。第1ブロックの宛て先人リスト内に自らのメンバーの数が含まれていない場合、他のメンバーのユニットの解読プログラムはメッセージの解読を拒否することができる。
他のアプリケーションとして、コンピュータとプリンタとの間に解読ユニットを設け、会社のITネットワーク内で平文内では決して示されない文章をプリントするためのパスワードで保護された自らのスマートカードを使用することを宛て先人に強制することにより、組織内部で秘密文書を配布することを挙げることができる。
同じように、本発明に係わる暗号システムにより、全てのコンピュータを遮蔽でき、信頼できる、会社規模のコンピュータネットワークを構築し、インターネットを通したすべての内部通信を可能にできる。このことは、法律事務所、弁理士、銀行家などにも適用できる。
Claims (5)
- IR−ビット長(IR≧IM)の第1ランダムビットシーケンスを発生するステップと、
メッセージMをIS−ビット(ここでIS≦IM)のユニタリーメッセージストリングにサブ分割するステップと、
各ユニタリーメッセージストリングに対し、暗号化されたユニタリーストリングを発生するよう、前記ユニタリーメッセージストリングと前記第1ランダムビットシーケンスのISビットとのXOR演算を実行するステップと、
前記暗号化されたユニタリーストリングを暗号テキストに組み立てるステップとを備える、IM−ビット長のメッセージMを暗号化するための方法において、
前記メッセージ内の対応するユニタリーメッセージストリングの位置に対して、前記暗号化テキスト内の前記暗号化されたユニタリーストリングの位置を入れ替える(この位置の入れ替えは前記第1ランダムビットシーケンスに基づく)ことを特徴とする、暗号化方法。 - 前記暗号化されたユニタリーストリングを暗号テキストに組み立てる前記ステップは、前記メッセージ内の対応するユニタリーメッセージストリングの位置に対して、前記暗号テキスト内の前記暗号化されたユニタリーストリングの位置を、前記第1ランダムビットシーケンスに基づき、ランダムに入れ替えるステップを備える、請求項1に記載の方法。
- 前記メッセージMは、平文の多数のIPビットとIHビット長さのハッシュ値(ここで、IP+IH≦IM)とを含み、前記ハッシュ値は前記平文のビットによって決定される、請求項1または2のうちのいずれか1項に記載の方法。
- 前記暗号テキスト長さに対応する長さの第2ランダムビットシーケンスを発生するステップと、
前記暗号化されたメッセージを発生するよう、前記暗号テキストと前記第2ランダムビットシーケンスとのXOR演算を実行するステップとを更に備える、請求項1〜3のうちのいずれか1項に記載の方法。 - 第1および/または第2ランダムビットシーケンスを発生する前記ステップは、
a)(BFT)に、mBFTのアドレス指定可能なビットBTj(ここで0≦j≦mBFT−1)(前記はランダム分布した同じ数の「0」ビットと「1」ビットとを含む)を提供するステップと、
b)前記第1および/または第2ランダムビットシーケンスの各ビットに対し、
i.0とmBFT−1との間のレンジ内のアドレスFAを発生し、
ii.前記からアドレスFAを有するビットBTFAを選択し、
iii.前記からの前記ビットBTFAに等しくなるよう、前記第1および/または第2ランダムビットシーケンスのうちの前記ビットをセットするステップとを備えた、請求項1〜4のうちのいずれか1項に記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP06112143A EP1841122A1 (en) | 2006-03-31 | 2006-03-31 | Encryption method for highest security applications |
PCT/EP2007/053048 WO2007113217A1 (en) | 2006-03-31 | 2007-03-29 | Encryption method for highest security applications |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009531728A true JP2009531728A (ja) | 2009-09-03 |
Family
ID=36793887
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009502098A Pending JP2009531728A (ja) | 2006-03-31 | 2007-03-29 | 最高セキュリティアプリケーションのための暗号化方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20100174897A1 (ja) |
EP (2) | EP1841122A1 (ja) |
JP (1) | JP2009531728A (ja) |
CN (1) | CN101411114A (ja) |
CA (1) | CA2648084A1 (ja) |
WO (1) | WO2007113217A1 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102008010789B4 (de) * | 2008-02-22 | 2010-09-30 | Fachhochschule Schmalkalden | Verfahren zur zugriffs- und kommunikationsbezogenen Zufallsver- und Entschlüsselung von Daten |
CN101394268B (zh) * | 2008-09-12 | 2011-05-18 | 华南理工大学 | 基于广义信息域的高级加密系统及方法 |
DE102009036386A1 (de) * | 2009-08-06 | 2011-02-10 | Fachhochschule Schmalkalden | Echtzeitfähige quantencomputersicher Verschlüsselung von Daten aller Art |
JP5875441B2 (ja) | 2012-03-29 | 2016-03-02 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | データを暗号化する装置及び方法 |
GB201206636D0 (en) * | 2012-04-16 | 2012-05-30 | Maidsafe Net Ltd | Method of encrypting data |
JP2015522998A (ja) * | 2012-05-23 | 2015-08-06 | ユニバーシティ オブ リーズ | 安全通信方法 |
US9729309B2 (en) | 2012-12-19 | 2017-08-08 | Intel Corporation | Securing data transmission between processor packages |
TWI487308B (zh) * | 2013-05-29 | 2015-06-01 | 國立成功大學 | 量子通訊方法 |
US9584488B2 (en) | 2013-08-09 | 2017-02-28 | Introspective Power, Inc. | Data encryption cipher using rotating ports |
US9584313B2 (en) | 2013-08-09 | 2017-02-28 | Introspective Power, Inc. | Streaming one time pad cipher using rotating ports for data encryption |
WO2017064361A1 (en) * | 2015-10-16 | 2017-04-20 | Nokia Technologies Oy | Message authentication |
US10693662B2 (en) * | 2018-02-22 | 2020-06-23 | Idlogiq Inc. | Methods for secure serialization of supply chain product units |
EP3820075A1 (en) * | 2019-11-06 | 2021-05-12 | Commsolid GmbH | Method for preventing bit flip attack on a system on a chip |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6281145A (ja) * | 1985-10-04 | 1987-04-14 | Hitachi Ltd | デ−タ暗号化方式 |
JPS62237834A (ja) * | 1986-04-09 | 1987-10-17 | Hitachi Ltd | デ−タ暗号化装置 |
JPH08256140A (ja) * | 1995-01-17 | 1996-10-01 | Kokusai Denshin Denwa Co Ltd <Kdd> | データスクランブル伝送システム |
JPH10111652A (ja) * | 1996-10-04 | 1998-04-28 | Kokusai Gijutsu Kaihatsu Kk | 暗号化方法、復号化方法、及び認証方法 |
JP2002314534A (ja) * | 1993-12-01 | 2002-10-25 | Rpk New Zealand Ltd | 非決定論的ミクスチャー発生器ストリーム暗号化システム |
JP2003143115A (ja) * | 2001-11-01 | 2003-05-16 | G-Mix:Kk | デジタル情報の秘匿方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020002675A1 (en) * | 1997-08-06 | 2002-01-03 | Ronald Roscoe Bush | Secure encryption of data packets for transmission over unsecured networks |
JP2001016196A (ja) * | 1999-04-28 | 2001-01-19 | Fuji Soft Abc Inc | 多重アファイン鍵を用いる暗号化・復号化方法、認証方法、及びこれを用いる各装置 |
FR2832231B3 (fr) * | 2001-11-15 | 2003-12-19 | Jean Luc Stehle | Procede pour generer des nombres aleatoires |
US7827223B2 (en) * | 2004-04-22 | 2010-11-02 | Fortress Gb Ltd. | Accelerated throughput synchronized word stream cipher, message authenticator and zero-knowledge output random number generator |
US7986780B2 (en) * | 2006-07-06 | 2011-07-26 | Sap Ag | Privacy-preserving substring creation |
EP2020797B1 (en) * | 2007-08-02 | 2016-06-15 | Apple Inc. | Client-server Opaque token passing apparatus and method |
-
2006
- 2006-03-31 EP EP06112143A patent/EP1841122A1/en not_active Withdrawn
-
2007
- 2007-03-29 WO PCT/EP2007/053048 patent/WO2007113217A1/en active Application Filing
- 2007-03-29 JP JP2009502098A patent/JP2009531728A/ja active Pending
- 2007-03-29 CA CA002648084A patent/CA2648084A1/en not_active Abandoned
- 2007-03-29 EP EP07727520A patent/EP2002594A1/en not_active Withdrawn
- 2007-03-29 CN CN200780011471.0A patent/CN101411114A/zh active Pending
- 2007-03-29 US US12/294,651 patent/US20100174897A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6281145A (ja) * | 1985-10-04 | 1987-04-14 | Hitachi Ltd | デ−タ暗号化方式 |
JPS62237834A (ja) * | 1986-04-09 | 1987-10-17 | Hitachi Ltd | デ−タ暗号化装置 |
JP2002314534A (ja) * | 1993-12-01 | 2002-10-25 | Rpk New Zealand Ltd | 非決定論的ミクスチャー発生器ストリーム暗号化システム |
JPH08256140A (ja) * | 1995-01-17 | 1996-10-01 | Kokusai Denshin Denwa Co Ltd <Kdd> | データスクランブル伝送システム |
JPH10111652A (ja) * | 1996-10-04 | 1998-04-28 | Kokusai Gijutsu Kaihatsu Kk | 暗号化方法、復号化方法、及び認証方法 |
JP2003143115A (ja) * | 2001-11-01 | 2003-05-16 | G-Mix:Kk | デジタル情報の秘匿方法 |
Also Published As
Publication number | Publication date |
---|---|
EP1841122A1 (en) | 2007-10-03 |
CA2648084A1 (en) | 2007-10-11 |
EP2002594A1 (en) | 2008-12-17 |
US20100174897A1 (en) | 2010-07-08 |
CN101411114A (zh) | 2009-04-15 |
WO2007113217A1 (en) | 2007-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2009531728A (ja) | 最高セキュリティアプリケーションのための暗号化方法 | |
Krawczyk et al. | RFC2104: HMAC: Keyed-hashing for message authentication | |
Krawczyk et al. | HMAC: Keyed-hashing for message authentication | |
US8744078B2 (en) | System and method for securing multiple data segments having different lengths using pattern keys having multiple different strengths | |
Alemami et al. | Research on various cryptography techniques | |
CN106888081B (zh) | 白盒实施方案内中间值的宽编码 | |
CN107273724B (zh) | 为白盒实施方案的输入和输出加水印 | |
CN113711564A (zh) | 用于加密数据的计算机实现的方法和系统 | |
Ristić | Bulletproof SSL and TLS | |
US9059838B2 (en) | Encryption algorithm with randomized buffer | |
Teh et al. | A Chaos‐Based Authenticated Cipher with Associated Data | |
Joshy et al. | Text to image encryption technique using RGB substitution and AES | |
Saikumar | DES-Data Encryption Standard | |
Rani et al. | Technical Review on Symmetric and Asymmetric Cryptography Algorithms. | |
Erondu et al. | An encryption and decryption model for data security using vigenere with advanced encryption standard | |
Ahmad Abusukhon et al. | A novel network security algorithm based on encrypting text into a white-page image | |
Yang | [Retracted] Application of Hybrid Encryption Algorithm in Hardware Encryption Interface Card | |
Kuppuswamy et al. | New Innovation of Arabic language Encryption Technique using New symmetric key algorithm | |
Abusukhon et al. | Analyzing the efficiency of Text-to-Image encryption algorithm | |
Kumar et al. | A novel framework for secure file transmission using modified AES and MD5 algorithms | |
Corpuz et al. | Using a modified approach of blowfish algorithm for data security in cloud computing | |
Agnihotri et al. | A secure document archive implemented using multiple encryption | |
Thitme et al. | A recent study of various encryption and decryption techniques | |
Kako | Classical Cryptography for Kurdish Language | |
Pandey et al. | Data security using various cryptography Techniques: A Recent Survey |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091109 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120321 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120821 |