JP2001522056A - 仮想マトリックス暗号化(vme)および仮想キー暗号法および装置 - Google Patents

仮想マトリックス暗号化(vme)および仮想キー暗号法および装置

Info

Publication number
JP2001522056A
JP2001522056A JP2000518475A JP2000518475A JP2001522056A JP 2001522056 A JP2001522056 A JP 2001522056A JP 2000518475 A JP2000518475 A JP 2000518475A JP 2000518475 A JP2000518475 A JP 2000518475A JP 2001522056 A JP2001522056 A JP 2001522056A
Authority
JP
Japan
Prior art keywords
data
encryption
data message
key
encrypting
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
Application number
JP2000518475A
Other languages
English (en)
Inventor
バッカル・シャウル・オー
Original Assignee
バッカル・シャウル・オー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by バッカル・シャウル・オー filed Critical バッカル・シャウル・オー
Publication of JP2001522056A publication Critical patent/JP2001522056A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0827Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving distinctive intermediate devices or communication paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • H04L9/16Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

(57)【要約】 暗号化されたデータを備えたメッセージの内容を伝送しないデータセキュリティ方法および装置(図5A〜図5C)。暗号化されたデータは、仮想マトリックス(図2A)内の位置を示すポインタと、連続的に変化する大きい値配列とからなり、この処理は仮想マトリックス暗号化と呼ばれている。本発明のデータセキュリティ構成は、高レベルの安全性を創出する非常に大きいキー(図4)を使用する。キーは搬送されず、その代わり、確実メッセージの送信に使用されるコンピュータおよび確実メッセージの受信に使用されるコンピュータの両者に利用される任意のサイズのファイルから創成される。本発明は、データが正しく復号化されるデータ範囲を定めることができるため、安全性を一層高めることができる。

Description

【発明の詳細な説明】
(技術分野) 本発明は、データセキュリティに関する。 (背景技術) 多くの異なる形式のセキュリティ手段が知られている。現在、最も広く使用さ
れているデータセキュリティ手段は、公開キー暗号法に基いている。公開キー暗
号法は、例えば、本願に援用する米国特許第4,218,582号において説明されてい る。公開キー暗号法に関する他の特許として米国特許第4,200,770号、第4,405,8
29号、第4,424,414号および第4,995,082号があり、これらは全て本願に援用する
。 公開キー暗号が相対的に優れている理由の1つは、キー分布の問題を手際良く
解決できることにある。 公開キー暗号より以前では、対称キー暗号は、ファイルの暗号化に使用された
ものと同じキーを用いてファイルを復号化する必要がある。従って、キーは、ユ
ーザ間で秘密裏に通信しなければならなかった。公開キー暗号法では、暗号キー
と復号キーとは別のものであり、暗号キーは公に知られ、復号キーは秘密が保た
れる。公開キー暗号法は、認証にも使用できる。 保証キー分布を要しないという大きな長所があるにも係わらず、公開キー暗号
にも種々の欠点がある。一意的な公開キーが各ユーザに割り当てられるようにす
るには、一般に管理が必要である。或る人の公開キーはディレクトリにリストア
ップされ、かつメッセージを暗号化する前にディレクトリ中に見出さなくてはな
らない。公開キー暗号の計算的負担は、キーとして使用するランダム素数を発生
することおよび該素数自体の暗号化および復号化処理の両者において重要である
。また、計算的な複雑さにも係わらず、中間サイズのキーを用いる公開キー暗号
法は、暗号破りに関係付けられる巨大なネットワーク計算資源を不確実にするこ
とが証明されている。 従って、セキュリティの点で現在の公開キー暗号法を凌駕しかつ包含される計
算的負担を最小にするデータセキュリティ機構が要望されている。 (発明の開示) 概略的にいえば、本発明は、小さい計算的コストで極めて高度のセキュリティ
が得られるデータセキュリティ法および装置を提供する。本発明のセキュリティ
構成は、幾つかの基本的な点で既知のデータセキュリティ手段とは異なっている
。特に、メッセージの内容は暗号化されたデータと共に送られることはない。そ
れどころか、暗号化されたデータは、仮想マトリックス内の位置を示すポインタ
と、連続的に変化する値の大きな(概念上、無限に大きい)配列とを有している
。従って、この暗号化技術は仮想マトリックス暗号化と呼ばれる。また、本発明
のデータセキュリティ構成は、既存の他のいかなる方法よりも非常に高いレベル
の安全性を創出できる百万ビット以上の非常に大きいキーを使用する。キーは搬
送されることはなく、その代わり、確実メッセージの送信に使用されるコンピュ
ータおよび確実メッセージの受信に使用されるコンピュータの両者に利用される
任意のサイズのファイルから創成される。本願で使用される用語「仮想キー暗号
(Virtual Key Cryptographic)」は、キーが、キー自体を全く伝送することな く、電子ファイルから遠隔の位置に再創成される技術をいう。ファイルは、イン
ターネット等からダウンロードされるシステムファイルで構成できる。より小さ
いトランザクション特定キー、例えば2,048ビットキーがエンド・ツー・エ ンドの態様で送られ、かつ非常に大きいキーに関連して使用されて、非常に大き
いキーを創出すべく同じファイルを反復しようとするような場合のセキュリティ
ハザードを防止する。中央仮想マトリックスアルゴリズムが、無数の他のアルゴ
リズムにより包囲される。単一バイトが非常に多くの回数で暗号化され、各連続
結果は、非常に大きいキー、小さいキー、および例えば送り手ユーザ、受け手ユ
ーザ、ファイル名、セーブアズ・ファイル名(save-as file name)、記載等を 含むユーザにより供給される他の種々のパラメータからの値を用いて、種々の接
合部で乱数発生器をリシーディング(reseeding)することにより決定されるラ ンダム径路と考えられる他のアルゴリズムに通される。任意の高レベルの安全性
が得られる。メッセージが、ファイル名およびセーブツー・ファイル名(save-t
o file name)と同じ記号列を用いて確定される場合に、最初にアンロッキング が試みられると、原ファイルが重ね書きされ、メッセージがアンロックされる1
回のみの機会が与えられる。メッセージは、グローバルオプション、特定オプシ
ョンおよび個人的オプションを含む意図した聴取者を特定する種々のオプション
に従って確定される。グローバルオプションは、データセキュリティソフトウェ
アのコピーを有する任意の人が、正しいキーを有しかつメッセージが確定される
人に一致するパラメータを供給できることを与えるメッセージを復号化すること
を可能にする。グループオプションは、共通語頭をもつソフトウェアプログラム
のコピーを有するメンバーにより識別されるグループ内のユーザの任意の数によ
り成功裏に復号化できるようにする。特定オプションは、ソフトウェアプログラ
ムの特定数のコピーをもつユーザのみが復号化できるようにする。最後に、個人
的オプションは、原メッセージを確定するのに使用される同じソフトウェアコピ
ーによってのみ復号化できるようにする。正しいキーおよびパラメータを使用し
なければ、メッセージをアンロックすることは不可能である。本発明は、データ
が正しく復号化されるデータ範囲を定めることができ、従って攻撃的な計算力に
よりコードを打破する無駄な努力を防止することにより安全性を更に高めること
ができる。 (発明を実施するための最良の形態) 本発明は、添付図面に関連して述べる以下の記載から一層良く理解されよう。 ここで図1を参照すると、本発明のデータセキュリティ技術が簡単化された概
略形態に示されている。既存の暗号化/復号化アルゴリズムとは異なり、本発明
の技術は、確保すべきデータが通される「パイプライン」を形成するためのアル
ゴリズム複合体(個々のアルゴリズムについては後述する)を使用する。データ
がパイプライン内にある間、データは無数の演算を受け、これらのうちの特定演
算が特定キーおよびパラメータにより制御される。パイプラインに沿う1箇所以
上の点で、データは仮想マトリックス(Virtual Matrix; VM)モジュールを通る
。VMモジュールは、前進仮想マトリックス(Progressive Virtual Matrix;PVM)
を使用してデータを暗号化する。PVMは、N次元の「ルービックキューブ(Rubik ’ s cube)」の一種であって、ルービックキューブの各面上に、あらゆるデー タ値がランダム配置で正確に一回だけ現れるものであると考えることができる。
データ値が暗号化されるとき、データ値は、該データ値の仮想マトリックス中の
当時位置(then-current location)を示すポインタ値で置換される。次にキュ ーブが「回転」され、少なくとも最後のデータ値の位置が変更されるように、デ
ータ値を混ぜ合わせる。 本発明の一実施形態では、パイプラインは、ランダムな順番で連結された、VM
モジュールを含む種々のモジュールからなるものと考えることができる。しかし
ながら、パイプライン内の同じモジュールの異なる場合には異なる演算をする。
より詳しくは、モジュールの幾つかまたは全部が乱数発生器を使用する。これに
対し、所与のモジュールの1つの場合には、1つの値を用いて乱数発生器にシー
ドし、他の場合には異なる値を用いて乱数発生器にシードする。従って、同じモ
ジュールの異なる場合は、全く異なる結果を作る。乱数発生器にシードするのに
使用される種々の値として、例えば、原データの最終バイト、特定トランザクシ
ョンキー(Specific Transaction Key; STK)、「ファイル」キー、「ユーザ」 キー、前のモジュールからの暗号化バイト入力等がある。VMモジュールは、メッ
セージデータ自体が暗号化された形態でも伝送されないという重要な結果を作る
。それどころか、データをメッセージするポインタ(仮想マトリックスポインタ
すなわちVMP)が伝送される。VMモジュールのこの重要な特性のため、VMモジュ ールは、種々の他のモジュールが周囲に配置されるハブとして示されている。図
1の説明文には、特定モジュールが識別されている。 VMPおよびSTKの両者は、無保証チャンネルを横切って伝送される。非常に大き
いキーMBK(一例では、百万ビットの大きさを有する)が発生されかつ局部的に 使用されるが、伝送されることはない。メッセージをアンロックするため、遠隔
端には同じキーが使用される。トランザクションの両端部で同じキーが使用され
るが、一端から他端へと伝送されることがないため、このキーは仮想キーと呼ば
れる。本願では、このような仮想キーを使用する暗号法を、仮想キー暗号(対称
キー暗号および公開キー暗号とは異なる)という用語で呼ぶことにする。図1に
おいて、送り手側のMBKと、受け手側のMBKとの間の関係が破線で示されている。
暗号化の過程で、MBKを動的に変化させることができる。 反転パイプラインの受け手側には、これまで呼ばれているものと同じモジュー
ルが配置されている。パイプラインはVMPポインタデータを受け、かつSTKおよび
MBKのピースに従ってこのデータで演算を行なって、原データを作る。 ここで、VMモジュールの演算を示す図2から出発して、図1の各モジュールを
詳細に説明する。 仮想マトリックスは、任意サイズのN次元配列である。従って、仮想マトリッ クスの特定値は、ポインタ(x, y, z…)により識別される。1つのポインタが 一定に保持される場合には、他のポインタはこれらの可能な値の範囲に及ぶため
、暗号化される、可能な限りのあらゆる値がランダムな順序で遭遇する。図2A
の3次元の例では、仮想マトリックスはキューブ(立方体)の形状をなしている
。キューブのZ=0面では、可能な全てのバイトは、ランダムな位置に現れた0 〜255の値をとる。図2Bは、前進仮想マトリックス(PVM)を使用した、暗 号化側での演算を示す。暗号化すべきバイト値は仮想マトリックス中にあり、ポ
インタ(X, Y, Z)により当該値に置換する。ひとたび特定の値が使用されたな らば、この値をランダムな位置の値と交換する。受け手側端部では、この処理が
反転される(図2C)。 受け手側端部での乱数発生器のリシーディング(reseeding)は、送り手側端部 での乱数発生器のリシーディングに「反転同期(reverse synchronized)」され
、従って、反転ランダム順番が発生されかつ受け手側端部での仮想マトリックス
への変化が送り手側端部での仮想マトリックスへの変化に「反転同期」されるこ
とに留意されたい。 図3を参照すると、ここには、乗算アルゴリズムマトリックス(Multiple Alg
orithms Matrix; MAM)モジュールの演算が示されている。MAMモジュールは、主
として、大きい数(例えば256)の一意的な暗号化アルゴリズムおよび同数の
対応する復号化アルゴリズムからなる。基本的には、可能な各データ値は、それ
自体の一意的なアルゴリズムにより、暗号化および復号化される。特に図3Aに
示すように、所与のアルゴリズムが実行されるとき、最初に、選択されたパラメ
ータに従って、乱数発生器がリシードされる。次に、暗号化または復号化が遂行
されたか否かに基いて、対応する暗号化アルゴリズムまたは復号化アルゴリズム
が実行される。 図3Aおよび図3Bに示すように、多数(例えば256個)の分枝は、特殊な
分枝処理を必要とする。入力データに基いて、或る処理数(例えば、16個の処
理P1〜P16)のうちの1つが実行されると(図3B)、更に大きい数のアルゴ
リズム(例えば、256個のアルゴリズムED0〜ED256)のうちの1つが実行
される(図3C)。例えばQ=16の場合には、V=2となり、P2が実行される 。すなわち、P2内で、Z=1であることが決定され、この結果、図3Bの第1リ
スト(Z=1)において第2番目にリストアップされたアルゴリズム(V=2)が
実行され、すなわちED16が得られる。 図4には、任意ファイルからMBKを作る方法が示されている。図4のルーチン の終時に、MBKは一連のバイトK(0)…K(131,071)となるであろう。ル
ーチンを実行する前に、これらのバイトはゼロにされる。任意のファイルは、2 20 ビットより小さいか、220ビットより大きい(131,072バイト)長 さWになるであろう。両場合において、乱数発生器には所定パラメータPがリシー
ドされ、カウンタVが−1に初期化され、かつVが増加されたループが入力される
。最初に、W>131,072バイトである場合について説明する。 カウンタVが増大された後、変数Bが、V MOD 131,072に設定される(最 初の131,073がループを通る場合には、V MOD 131,072=Vとなる) 。次に、ファイルのV番目のバイトが検索され、変数Aに置かれる。次に、キーバ
イトK(B)が、最初にAを用いて、次に乱数発生器により作られた乱数を用いてX
ORにされる。この演算態様は、ファイルの各レコードおよび全てのレコードが使
用されてしまうまで続けられる。得られる仮想キーは、一連のバイトK(0)…K
(131,071)となる。 ファイルサイズが131,072バイトより小さい場合には、同様な態様で演 算が続けられる。しかしながら、このファイルのバイトの少なくとも幾つかが2
回以上使用されるのに対し、各キーバイトは1回だけ使用されるに過ぎない。例
えば、ファイルは210ビットの長さ(65,536バイト)になる。この例で は、アルゴリズムの実行は、第1半部と第2半部とに分割できる。第1半部では
、キーバイトは、ファイルからのそれぞれのバイトをXORにされる。得られたキ ーバイトは更に、乱数発生器からの乱数を用いてXORにされる。中間点で、ファ イルからのバイトをカウントするカウンタがラップアラウンドする。次に、アル
ゴリズムの後半部では、ファイルのバイト0がキーバイトK(65,535)を用
いてXORにされ、次に、得られた結果が乱数をXORにされ、ファイルの1つがキー
バイトK(65,535)を用いてXORにされる等の演算が続行される。 図5に示すように、乗算モジュロマトリックスは、積(モジュール256)が
1に等しくなる数の対のマトリックスを使用する。この数の対のマトリックスは
、乱数に従ってスクランブルされる。データセキュリティソフトウェア内の他の
多くの場所におけるように、乱数発生器をリシーディングした後に、変化する変
数Pを用いて乱数が作られる。キーすなわち数の対の発生は、単位セッションに つき1回だけ生じる。しかしながら、キーを用いた暗号化/復号化は、単位セッ
ションにつき多数回生じる。 先ずサイズ図5Aを参照して説明すると、キーの対を表す変数A、Bが最初に1
に設定され、次に2だけ増大される。Aは外部プログラムループ内で増大される のに対し、Bは内部プログラムループ内で増大される。A、Bの各値は、A*B Mod 256=1になるまで増大される。次に、A、Bの値がマトリックス内に置かれる 。A、Bの値は奇数値のみをとるが、マトリックス内の連続偶数位置および奇数位
置に置かれる。A=255になると、外部ループが完了する。次のステップは、A=
1の「退化ケース(degenerate case)」を取り扱う。最後に、得られる乱数に 従って、乱数発生器がリシードされかつマトリックスがスクランブルされる。 図5Bでの暗号化の間、原データに、変化パラメータPに従ってマトリックス から選択されたキーの対暗号化キーであるE(P)が掛けられる。図5Cでの暗号
化の間、暗号化されたデータに、反転キーであるD(P)が掛けられる。 図6を参照して、特定トランザクションキー(Specific Transaction Key; ST
K)を発生する態様を詳細に説明する。好ましい実施形態では、STKは2048ビ
ット(256バイト)の長さを有する。 STKを発生させる主な仕事は、カウンタYを使用する外部ループコントロールお
よびカウンタXを使用する内側ループコントロール内に生じる。しかしながら、 外部ループに入る前に、乱数発生器がリシードされる。得られる乱数発生器には
1024が掛けられ、その結果が変数V内に置かれる。次に、変数Vには別の乱数
1024が掛けられる。次に、Vを用いて乱数発生器がリシードされ、外部ルー プカウンタYが−1に初期化される。 外部ループ内では、Yが増大され、乱数が発生されかつ220が掛けられ、得 られた結果が変数Eに置かれる。次に、Eを用いて乱数発生器がリシードされる。
内部ループ内では、Xが増大され、乱数が発生されかつ256が掛けられ、得ら れた結果が変数Zに置かれる。次に、キーバイトK(Y*16+X)がZに設定される
。例示の実施形態では、内部ループが、外部ループの各実行について16回実行
される、外部ループも16回実行されて、全部で256回実行される。従って、
256バイトのキーが得られる。 最も良く知られている暗号化アルゴリズムは、バイトレベルで作動する。バイ
トレベルでは、2進数は人知の及ぶところである。例えば、所与の値のバイトは
特定のテキスト文字を表す。従って、バイトレベルの暗号化はハッキングを受け
易い。これに対し、今日のセキュリティソフトウェアは、そのモジュールの1つ
としてビットレベル暗号(Bit Level Encryption; BLE)モジュールを採用して いる。BLEを使用すれば、バイトをビットレベルで暗号化できる。ビットはデジ タル情報の可能な最小単位であるので、それ自体ではビットは無意味なものであ
る。従って、BLEは、バイトレベルの暗号が受けるハッキング形式に対しては実 質的に影響を受けることはない。 図7に示すように、BLEの間、乱数発生器は、種々のパラメータを用いてあら ゆるバイトについてリシードされる。BLEは、変数Vによって制御されるプログラ
ムループを複数回(例えば8回)通すことから得られるランダム値Fでデータバ イトPをXORすることにより達成される。最初に、FおよびUはゼロに設定され、そ
の後にループに入る。 ループ内では乱数が発生され、該乱数に256が掛けられ、その結果が変数W に置かれる。変数Hが2Uに設定され、次に、WおよびHが一緒にANDされ、その結 果が変数Tに置かれる。WおよびHをANDすることにより(2^U)、1つのみのラン
ダムビットがオンまたはオフにされる。変数FおよびTが一緒に加えられる。次に
変数Uが増大される。例示の実施形態では、U=8となるまで、ループが8回実行 される。U=8であるとき、データバイトがFでXORされ、この結果、データバイト
のビットがランダムにトグルされる。 今日のデータセキュリティソフトウェアにより要求されるセキュリティは、単
に個々のアルゴリズムの強さによってではなく、これらのアルゴリズムを前述の
ようにパイプライン態様で結合することによっても手に負えない優れたものであ
る。本願で説明する減算モジュールマトリックスアルゴリズムは、他のアルゴリ
ズムと組み合わせるのに最も有効である。アルゴリズムは、変化するフローパラ
メータであるパラメータA、B、C、D、Eを使用する。例示の実施形態では、これ らのパラメータは、これらの合計が256を超えるように選択される。 図8Aに示すように、Pは、パラメータA、B、C、D、Eを使用して暗号化すべき
データバイトを表す。これらの各パラメータは、データインターンモジュロ25
6から減算される。一連の減算の過程において、「アンダーフロー」が生じるこ
とが保証される。このアンダーフローは、パラメータA、B、C、D、Eに基いて、 複雑な方法でデータを大きく変形させる。 図8に示す復号化の間、反転プロセスが続けられる。すなわち、暗号化された
インターンモジュロ256にA、B、C、D、Eが加えられる。これにより、原デー タが復元される。 従来技術によるセキュリティ法によれば、暗号メッセージが、時間制限なく復
号化される。従って、メッセージは1日に遮断され、暗号を打破する反復努力も
1日に開始され、かつ暗号を打破する反復努力は30日または100日に続く。
多くの既存のデータセキュリティ法は、暴力的攻撃に直面するデータセキュリテ
ィを得るための計算的困難性に基いている。暗号メッセージは打破に千年要する
かもしれないが、暗号を打破するためのひたむきな努力が、千年の過程に亘って
成功を収めるであろうという事実は残る。 これに対し、本発明のデータセキュリティソフトウェアは、暗号メッセージが
、特定データまたは特定範囲内のデータによってのみ復号化されるような、日付
制限型暗号を提供する。この機能は、日付制限情報を、STK内にセキュリティ埋 め込み(security embedding)することにより得られる。復号化の間、日付制限
情報がSTKから抽出され、かつコンピュータの実時間クロックからの現在日付と 比較される。現在日付が特定範囲内にない場合には、復号化プロセスは悪い結果
を生じる。コンピュータでの日付がリセットされたとしても、ハッカーはいかな
る日付が設定されたかを知ることはできない。日付制限は、暗号化の時点からの
制限された時間内での復号化、特定のニアターム日付(near term date)でのみ
の復号化ができ、または遠い将来の日付または日付範囲での復号化もできるよう
に設定できる。 図9に示すように、日付制限を設定するには、FROM日付(開始日:FROM DATE )およびTO日付(終了日:TO DATE)が入力される。FROM日付は変数Cのバイトと
して記憶され、TO日付はバイト8〜15として記憶される。ループ実行を制御す
るのに使用されるカウンタ変数Yは、−16に設定される。 ループ内で、Yは16だけ増大される。乱数が発生され、16が掛けられ、Yに
加えられ、その結果がポインタ変数Bに記憶される。低から高へとループおよびC
の次のバイトを通る各パスが変数Zに置かれる。乱数が発生され、かつ256が 掛けられる。また、得られた値にZが掛けられ、この値がZに戻し記憶される。次
に、位置Bで、Zの値が書き込まれる。 Yの値が240に達すると、別の位置で、Cの全てのバイトがSTK内に書き込ま れ、これにより、日付範囲がランダム位置でキーファイル構造に埋め込まれる。 メッセージが、丁度これらを時間特定にする態様で固定されるように、メッセ
ージはまた受取り人特定にすることもできる。許容される受取り人は、適当な復
号化ソフトウェア(グローバル:GLOBAL)を有するあらゆる人、特定語頭(グル
ープ:GROUP)をもつ連続番号を有するソフトウェアのコピーを有する人のみ、 単一の特定連続番号(スペシフィック:SPECIFIC)をもつコピーを有する人のみ
、または暗号化(個人:PRIVATE)に使用される同じソフトウェアコピーを用い る送り人のみである。 復号化の間、ソフトウェアユーザは適当な復号化オプションを選択しなければ
ならない。ユーザが正しいソフトウェアを使用する場合でも、ユーザが誤った復
号化オプションを選択するならば、復号化によって作られるのは2進ゴミに過ぎ
ない。同様に、ユーザは、暗号化の間に使用された1つまたは幾つかの他のパラ
メータ(例えば、送り手ID(識別子)、受け手ID、原ファイル名、キー発生ファ
イル名等)を供給することも要求される。何らかのパラメータが誤って供給され
る場合には、復号化によって作られるのは2進ゴミに過ぎない。 ここで図10に示すように、暗号パラメータの特定化の間、ユーザは、目標形
式(図示の例では、グローバル、グループまたは個人)を特定する。選択に基い
て、変数Uが、それぞれ、0、8または16に設定される。使用されるソフトウ ェアコピーの連続番号が変数Rに入力される。次に、乱数発生器がリシードされ 、ループカウンタXが−1に初期化される。 ループはU回実行される。ループ内で、Xが増大される。次に乱数が発生され、
16が掛けられ、かつR(連続番号)のX番目の値 が掛けられ、得らた結果がID (識別子)Iに加えられる。ID Iは最初はゼロであり、連続番号のバイトのU番号
を含んでいる。 X=Uになると、ループが終了する。Iの値は乱数発生器のリシードに使用され、
乱数が得られ、かつ該乱数に220が掛けられてキー値Kが与えられる。キー値K
は主キーの1つとして機能しかつ他のキーと組み合わされて使用され、全てのア
ルゴリズム内で乱数発生器をリシードする。従って、目標形式および対応するID
に基いて発生されるキーKが得られなければ、暗号メッセージを成功裏に復号化 することに希望は見出せない。 上記データセキュリティ法は、パーソナルコンピュータで実行されるソフトウ
ェアで実施することができる。一実施形態では、ソフトウェアは、種々の計算環
境から要望されるDOSプログラムとして書かれる。本発明のデータセキュリティ 法はまた、所望ならば例えばセルラー電話内の専用ハードウェアで実施すること
もできる。 以上、本発明のデータセキュリティ法および装置を説明したが、当業者ならば
、本発明の精神または本質的特徴から逸脱することなく、本発明を他の特定形態
で実施できることが理解されよう。従って、本願に開示する実施形態は、あらゆ
る意味において例示であって、制限的なものではない。本発明の範囲は、上記説
明によってではなく、特許請求の範囲の記載によって定められるものであり、従
って特許請求の範囲およびその均等物に含まれるあらゆる変更は、本発明の範囲
に包含されるものである。仮想マトリックス暗号の符号の説明 VME 仮想マトリックス暗号 VM 仮想マトリックス PVM 前進仮想マトリックス RVM 後退仮想マトリックス VKC 仮想キー暗号法 VMP 仮想マトリックスポインタ MBK 百万ビット仮想キー STK 特定トランザクションキー DLA 日付制限アルゴリズム MMM 乗算モジュロマトリックス TDS 目標配送システム SMM 減算モジュロマトリックス MAM 乗算アルゴリズムマトリックス BLE ビットレベル暗号化 UNSECURE 無保証配送チャンネル
【図面の簡単な説明】
【図1】 本発明による仮想マトリックス暗号化技術を示す一般化した概略ブロック図で
ある。
【図2A】 仮想マトリックスを示す概略図である。
【図2B】 前進仮想マトリックスを用いた暗号化を示すフローチャートである。
【図2C】 後退仮想マトリックスを用いた復号化を示すフローチャートである。
【図3A】 乗算アルゴリズムマトリックスを用いた暗号化/復号化を示すフローチャート
である。
【図3B】 多分枝機構の第1部分を示すフローチャートである。
【図3C】 図3Bの多分枝機構の第2部分を示すフローチャートである。
【図4】 百万ビット仮想キーの発生を示すフローチャートである。
【図5A】 乗算モジュロマトリックス(MMM)アルゴリズムのキー発生を示すフローチャ ートである。
【図5B】 MMMアルゴリズムを用いた暗号化を示すフローチャートである。
【図5C】 MMMアルゴリズムを用いた復号化を示すフローチャートである。
【図6】 特定トランザクションキーの発生を示すフローチャートである。
【図7】 ビットレベル暗号化アルゴリズムを示すフローチャートである。
【図8A】 減算モジュロマトリックス(SMM)による暗号化を示すフローチャートである 。
【図8B】 SMMアルゴリズムを用いた復号化を示すフローチャートである。
【図9】 日付制限アルゴリズムを示すフローチャートである。
【図10】 目標配送システムアルゴリズムを示すフローチャートである。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),OA(BF,BJ ,CF,CG,CI,CM,GA,GN,GW,ML, MR,NE,SN,TD,TG),AP(GH,GM,K E,LS,MW,SD,SZ,UG,ZW),EA(AM ,AZ,BY,KG,KZ,MD,RU,TJ,TM) ,AL,AM,AT,AU,AZ,BA,BB,BG, BR,BY,CA,CH,CN,CU,CZ,DE,D K,EE,ES,FI,GB,GD,GE,GH,GM ,HR,HU,ID,IL,IS,JP,KE,KG, KP,KR,KZ,LC,LK,LR,LS,LT,L U,LV,MD,MG,MK,MN,MW,MX,NO ,NZ,PL,PT,RO,RU,SD,SE,SG, SI,SK,SL,TJ,TM,TR,TT,UA,U G,US,UZ,VN,YU,ZW

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 暗号化されていない一連のデータ値からなるデータメッセー
    ジを暗号化する方法において、 暗号化されていない可能データ値のマトリックスを発生させる段階と、 所与の暗号化されていないデータ値に対して、 暗号化されていないデータ値をマトリックス内に入れ、所与の暗号化されてい
    ないデータ値に代えて、マトリックス内の暗号化されていないデータ値のポイン
    タを使用する段階と、 マトリックス内の所与の暗号化されていないデータ値の位置を変更する段階と
    を有することを特徴とするデータメッセージの暗号化方法。
  2. 【請求項2】 暗号化されていないデータ値および以前に暗号化したデータ
    値の一方から、複数の各所定パラメータを連続的に減算する段階を更に有し、 所定パラメータは、アンダーフローが生じるように選択されることを特徴とす
    る請求項1記載の暗号化方法。
  3. 【請求項3】 暗号化されていない一連のデータ値からなるデータメッセー
    ジを暗号化する方法において、 パイプライン態様で構成された複数の暗号化アルゴリズムを用いて、暗号化さ
    れていないデータ値を複数回暗号化する段階を有し、前記暗号化アルゴリズムの
    少なくとも1つは、暗号化プロセスの所定パラメータでシードされた乱数発生器
    から得られた乱数を使用し、 複数の暗号化アルゴリズムのうちの1つが、暗号化されていない可能データ値
    のマトリックスを発生させることからなり、 所与の暗号化されていないデータ値に対して、 暗号化されていないデータ値をマトリックス内に入れ、所与の暗号化されてい
    ないデータ値に代えて、マトリックス内の暗号化されていないデータ値のポイン
    タを使用する段階と、 マトリックス内の所与の暗号化されていないデータ値の位置を変更する段階と
    を更に有することを特徴とするデータメッセージの暗号化方法。
  4. 【請求項4】 キーを交換しない共通暗号キーを使用して、第1ユーザと第
    2ユーザとの間でデータメッセージを安全に交換する方法において、 第1ユーザおよび第2ユーザの両者が共通して利用できるコンピュータファイ
    ルを、帯域外チャンネルを介して特定化する段階と、 第1ユーザが、コンピュータファイルを使用して共通キーを発生させかつデー
    タメッセージを暗号化する段階と、 暗号化されたメッセージを、帯域内チャンネルを介して第2ユーザに伝送する
    段階と、 第2ユーザが、コンピュータファイルを使用して共通キーを発生させかつデー
    タメッセージを暗号化する段階とを有することを特徴とするデータメッセージの
    安全交換方法。
  5. 【請求項5】 セッション特定キーを発生させる段階と、 帯域内チャンネルを介してセッション特定キーを伝送する段階と、 セッション特定キーを使用して、共通キーを使用する前に共通キーをスクラン
    ブルする段階とを更に有することを特徴とする請求項4記載のデータメッセージ
    の安全交換方法。
  6. 【請求項6】 割り当てられた連続番号をもつプログラムのコピーを使用し
    て、特定の目標聴取者によってのみデータメッセージの暗号化ができるようにデ
    ータメッセージを暗号化する方法において、 目標聴取者を特定しかつ連続番号の可変長さ部分を選択する段階と、 可変長さ部分に連続演算を行ってキーを形成する段階と、 データメッセージの暗号化の間にキーを使用する段階とを有することを特徴と
    するデータメッセージの暗号化方法。
  7. 【請求項7】 前記可変長さ部分がゼロ長さであり、特定の目標聴取者が、
    連続番号の如何に係わらず、前記プログラムの全てのユーザであることを特徴と
    する請求項6記載の暗号化方法。
  8. 【請求項8】 前記可変長さ部分が最大長さからなり、特定の目標聴取者が
    、特定連続番号に関係をもつ前記プログラムのコピーのユーザだけであることを
    特徴とする請求項6記載の暗号化方法。
  9. 【請求項9】 前記可変長さ部分が中間長さからなり、特定の目標聴取者が
    、共通部分および特徴部分をもつ連続番号に関係をもつ前記プログラムのコピー
    のユーザであることを特徴とする請求項6記載の暗号化方法。
  10. 【請求項10】 暗号化されていない一連のデータ値からなるデータメッセ
    ージを暗号化する方法において、 乱数を発生させる段階と、 前記乱数を用いてランダム値を得る段階と、 該ランダム値と暗号化すべきデータ値とを論理的に結合する段階とからなり、
    暗号化すべきデータ値の異なるビットが、1つの論理状態から他の論理状態にラ
    ンダムにトグルされることを特徴とするデータメッセージの暗号化方法。
  11. 【請求項11】 暗号化されていない一連のデータ値からなるデータメッセ
    ージを暗号化する方法において、 暗号化アルゴリズムの重複度(multiplicity)Nを与える段階と、 乱数を発生させる段階と、 前記乱数を用いてランダム値を得る段階と、 N箇所分枝を遂行しかつN暗号化アルゴリズムのうちのランダムなアルゴリズム
    を用いて、暗号化すべきデータ値を暗号化する段階とを有することを特徴とする
    データメッセージの暗号化方法。
  12. 【請求項12】 暗号化されていない一連のデータ値からなるデータメッセ
    ージを暗号化する方法において、 対をなす値からなるマトリックスを作る段階を有し、1対の値は、モジュロ算
    術に従がう互いに乗算逆数(multiplicative inverses)であり、 マトリックスをスクランブルする段階と、 乱数を発生させる段階と、 前記乱数を用いてランダム値を得る段階と、 前記乱数に基いて1対の値を選択する段階と、 暗号化すべきデータ値に、前記対をなす値のうちの1つの値を掛けることによ
    り、暗号化すべきデータ値を暗号化する段階とを有することを特徴とするデータ
    メッセージの暗号化方法。
  13. 【請求項13】 一連のデータ値からなるデータメッセージを暗号化して、
    暗号化されたデータメッセージを作る方法において、 ユーザが、データメッセージが復号化される日付を制限する日付制限を特定す
    る段階と、 日付制限と暗号化されたデータメッセージとを結合しかつ暗号化する段階とを
    有することを特徴とするデータメッセージの暗号化方法。
  14. 【請求項14】 暗号化されたデータメッセージが復号化される日付を制限
    する暗号化された日付制限と組み合わされた暗号化されたデータメッセージを復
    号化する方法において、 日付制限を抽出しかつ復号化する段階と、 日付制限と、実時間クロックから得た現在日付とを比較する段階と、 現在日付が日付制限と一致しない場合に、暗号化されたデータメッセージが成
    功裏に復号化されることを防止する段階とを有することを特徴とするデータメッ
    セージの復号化方法。
JP2000518475A 1997-10-24 1998-10-22 仮想マトリックス暗号化(vme)および仮想キー暗号法および装置 Pending JP2001522056A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/957,288 1997-10-24
US08/957,288 US6219421B1 (en) 1997-10-24 1997-10-24 Virtual matrix encryption (VME) and virtual key cryptographic method and apparatus
PCT/IB1998/001698 WO1999022485A1 (en) 1997-10-24 1998-10-22 Virtual matrix encryption (vme) and virtual key cryptographic method and apparatus

Publications (1)

Publication Number Publication Date
JP2001522056A true JP2001522056A (ja) 2001-11-13

Family

ID=25499364

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000518475A Pending JP2001522056A (ja) 1997-10-24 1998-10-22 仮想マトリックス暗号化(vme)および仮想キー暗号法および装置

Country Status (9)

Country Link
US (1) US6219421B1 (ja)
EP (1) EP1025671A1 (ja)
JP (1) JP2001522056A (ja)
KR (1) KR20010024562A (ja)
CN (1) CN1279851A (ja)
AU (1) AU9454498A (ja)
CA (1) CA2307234A1 (ja)
IL (1) IL135770A0 (ja)
WO (1) WO1999022485A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010097912A1 (ja) * 2009-02-25 2010-09-02 Suginaka Junko 情報処理器、送信情報暗号化方法及び送信情報暗号化プログラム
WO2010103613A1 (ja) * 2009-03-10 2010-09-16 Suginaka Junko ネットワークシステム及びネットワークシステムにおける認証方法

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6850252B1 (en) 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
USRE48056E1 (en) 1991-12-23 2020-06-16 Blanding Hovenweep, Llc Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
USRE46310E1 (en) 1991-12-23 2017-02-14 Blanding Hovenweep, Llc Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
US5903454A (en) 1991-12-23 1999-05-11 Hoffberg; Linda Irene Human-factored interface corporating adaptive pattern recognition based controller apparatus
USRE47908E1 (en) 1991-12-23 2020-03-17 Blanding Hovenweep, Llc Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
US6665800B1 (en) * 1999-01-26 2003-12-16 Dell Usa, L.P. System and method for securing a computer system
US6823068B1 (en) * 1999-02-01 2004-11-23 Gideon Samid Denial cryptography based on graph theory
US20020099746A1 (en) * 1999-07-26 2002-07-25 Tie Teck Sing T-sequence apparatus and method for general deterministic polynomial-time primality testing and composite factoring
US7093137B1 (en) * 1999-09-30 2006-08-15 Casio Computer Co., Ltd. Database management apparatus and encrypting/decrypting system
US6640303B1 (en) * 2000-04-28 2003-10-28 Ky Quy Vu System and method for encryption using transparent keys
JP5159006B2 (ja) * 2000-05-25 2013-03-06 インベンテイオ・アクテイエンゲゼルシヤフト 建物内において手続きを開始する方法
CA2329590C (en) 2000-12-27 2012-06-26 Certicom Corp. Method of public key generation
US7003670B2 (en) * 2001-06-08 2006-02-21 Musicrypt, Inc. Biometric rights management system
CN1322701C (zh) * 2002-07-24 2007-06-20 谢道裕 幻方身份双向认证与密钥传输一体化方法
US7406174B2 (en) * 2003-10-21 2008-07-29 Widevine Technologies, Inc. System and method for n-dimensional encryption
US7885411B2 (en) 2004-04-02 2011-02-08 Research In Motion Limited Key agreement and re-keying over a bidirectional communication path
EP1592165A1 (fr) * 2004-04-26 2005-11-02 Ahmed Friaa Méthode de cryptographie basée sur des k-cubes particuliers et utilisation de ces k-cubes en cryptographie
US7412054B2 (en) * 2004-05-04 2008-08-12 International Business Machines Corporation Matrix encryption method and system
DE102004050187B4 (de) 2004-08-23 2020-07-09 Karl Eckhart Heinz Verfahren zur Chiffrierung und Dechiffrierung von Datenelementen
US8331559B2 (en) * 2004-10-12 2012-12-11 Chiou-Haun Lee Diffused data encryption/decryption processing method
US8489659B2 (en) * 2007-10-19 2013-07-16 Schneider Electric USA, Inc. Pseudorandom number generation
US20090119115A1 (en) * 2007-11-05 2009-05-07 Shmuel Shaffer Customizing A Target Using An Endpoint
US8618908B2 (en) * 2007-11-20 2013-12-31 Cisco Technology, Inc. Providing an endpoint access to a locked target
CN102752108B (zh) * 2012-06-29 2014-12-10 湖北大学 魔方加密和解密方法
US10204530B1 (en) 2014-07-11 2019-02-12 Shape Matrix Geometric Instruments, LLC Shape-matrix geometric instrument
US10952069B1 (en) 2017-11-07 2021-03-16 Imam Abdulrahman Bin Faisal University IoT cryptosystem device, system, method and computer program product
US10783230B2 (en) 2018-05-09 2020-09-22 Shape Matrix Geometric Instruments, LLC Methods and apparatus for encoding passwords or other information
CN109474428A (zh) * 2018-11-28 2019-03-15 北京杰睿中恒科技有限公司 基于数字信号数据的动态加密方法和装置
US11282288B2 (en) 2019-11-20 2022-03-22 Shape Matrix Geometric Instruments, LLC Methods and apparatus for encoding data in notched shapes

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US744041A (en) * 1901-09-21 1903-11-17 Charles G Burke Telegraphic code.
NL279100A (ja) * 1961-05-30
DE2658065A1 (de) 1976-12-22 1978-07-06 Ibm Deutschland Maschinelles chiffrieren und dechiffrieren
US4740890A (en) * 1983-12-22 1988-04-26 Software Concepts, Inc. Software protection system with trial period usage code and unlimited use unlocking code both recorded on program storage media
US4988987A (en) * 1985-12-30 1991-01-29 Supra Products, Inc. Keysafe system with timer/calendar features
US5058160A (en) * 1988-04-29 1991-10-15 Scientific-Atlanta, Inc. In-band controller
IL108645A (en) * 1994-02-14 1997-09-30 Elementrix Technologies Ltd Protected communication method and system
US5787172A (en) * 1994-02-24 1998-07-28 The Merdan Group, Inc. Apparatus and method for establishing a cryptographic link between elements of a system
US5663896A (en) 1994-09-22 1997-09-02 Intel Corporation Broadcast key distribution apparatus and method using Chinese Remainder
US5724428A (en) 1995-11-01 1998-03-03 Rsa Data Security, Inc. Block encryption algorithm with data-dependent rotations
US5771291A (en) * 1995-12-11 1998-06-23 Newton; Farrell User identification and authentication system using ultra long identification keys and ultra large databases of identification keys for secure remote terminal access to a host computer

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010097912A1 (ja) * 2009-02-25 2010-09-02 Suginaka Junko 情報処理器、送信情報暗号化方法及び送信情報暗号化プログラム
JPWO2010097912A1 (ja) * 2009-02-25 2012-08-30 順子 杉中 情報処理器、送信情報暗号化方法及び送信情報暗号化プログラム
WO2010103613A1 (ja) * 2009-03-10 2010-09-16 Suginaka Junko ネットワークシステム及びネットワークシステムにおける認証方法
JPWO2010103613A1 (ja) * 2009-03-10 2012-09-10 順子 杉中 ネットワークシステム及びネットワークシステムにおける認証方法

Also Published As

Publication number Publication date
WO1999022485A1 (en) 1999-05-06
AU9454498A (en) 1999-05-17
CA2307234A1 (en) 1999-05-06
IL135770A0 (en) 2001-05-20
CN1279851A (zh) 2001-01-10
EP1025671A1 (en) 2000-08-09
US6219421B1 (en) 2001-04-17
KR20010024562A (ko) 2001-03-26

Similar Documents

Publication Publication Date Title
JP2001522056A (ja) 仮想マトリックス暗号化(vme)および仮想キー暗号法および装置
US6125185A (en) System and method for encryption key generation
US7809134B2 (en) Method for encrypting information and device for realization of the method
EP0002578B1 (en) Data communication method
US7860241B2 (en) Simple universal hash for plaintext aware encryption
US20020048364A1 (en) Parallel block encryption method and modes for data confidentiality and integrity protection
US20050226408A1 (en) Apparatus and method for encryption and decryption
WO2000031917A1 (en) Data encrypting and decrypting apparatus and methods
US20060034453A1 (en) System and method for secure encryption
Gautam et al. An enhanced Cipher technique using Vigenere and modified Caesar cipher
US6640303B1 (en) System and method for encryption using transparent keys
US20040228485A1 (en) Method and apparatus for the generation of public key based on a user-defined ID in a cryptosystem
CN115567308A (zh) 一种基于密钥扩展的数据加密传输方法
JP2024511683A (ja) 国産暗号化アルゴリズムに基づく安全なファイル共有方法およびシステム
JP2001211154A (ja) 秘密鍵生成方法,暗号化方法及び暗号通信方法
AU753951B2 (en) Voice and data encryption method using a cryptographic key split combiner
Sanober et al. Crytographical primitive for blockchain: a secure random DNA encoded key generation technique
CN111488618B (zh) 基于区块链的一次一密密码方法、装置及存储介质
JP2017527225A (ja) 暗号システムの再現可能なランダムシーケンス
Rabin Provably unbreakable hyper-encryption in the limited access model
CN111008837A (zh) 区块链账户私钥恢复方法、装置、计算机设备及存储介质
Hamsanandhini et al. Securing Data in the Image Using SHA & ECC
CN117114959B (zh) 基于多参数一维混沌系统的秘钥反馈机制的图像加密方法
Tun et al. Message Security using One Time Pad and AES Hybrid Cryptography
JP3884593B2 (ja) 秘密鍵生成装置,暗号化装置,暗号通信方法,暗号通信システム及び記録媒体

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041116

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050531