JP2004126483A - 暗号における情報の抜け防止方法 - Google Patents

暗号における情報の抜け防止方法 Download PDF

Info

Publication number
JP2004126483A
JP2004126483A JP2002321780A JP2002321780A JP2004126483A JP 2004126483 A JP2004126483 A JP 2004126483A JP 2002321780 A JP2002321780 A JP 2002321780A JP 2002321780 A JP2002321780 A JP 2002321780A JP 2004126483 A JP2004126483 A JP 2004126483A
Authority
JP
Japan
Prior art keywords
code
encryption
stream
file
ciphering
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
JP2002321780A
Other languages
English (en)
Inventor
Katsufusa Shono
庄野 克房
Motohide Shirasago
白砂 元秀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CHAOS SANGYO GIJUTSU KENKYUSHO KK
Marubun Co Ltd
Marubun Corp
Original Assignee
CHAOS SANGYO GIJUTSU KENKYUSHO KK
Marubun Co Ltd
Marubun Corp
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 CHAOS SANGYO GIJUTSU KENKYUSHO KK, Marubun Co Ltd, Marubun Corp filed Critical CHAOS SANGYO GIJUTSU KENKYUSHO KK
Priority to JP2002321780A priority Critical patent/JP2004126483A/ja
Publication of JP2004126483A publication Critical patent/JP2004126483A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【目的】擬似乱数またはPN信号におけるコードの0と1の連なりの分布は確率分布である。ストリーム暗号化において、0の長い連なりのところでの文字抜けは避けられない。暗号コードをファイルに開いたとき、原文を解読する手がかりを残さないため、2重、3重に重ね合わせたストリーム暗号化を行う。
【構成】ロジスティック写像に初期値を与え、擬似乱数またはPN信号を生成し、原文ディジタルファイルとのEXOR演算をとり、ストリーム暗号コードを生成する。文字抜けを防ぐため、複数回のストリーム暗号化を行う。
【選択図】    図1

Description

【0001】
【産業上の利用分野】
ディジタルコンピュータが産業のいろいろな分野で活用される時代となった。ディジタルコンピュータは、スタンドアロンとして単独でも使用されるが、多数のコンピュータが相互に接続されたネットワークとして活用されることも多い。ディジタルコンピュータのコアであるCPU(central processing unit)はオープンシステムとして作られている。OS(operating system)もオープンシステムである。
【0002】
オープンシステムのままでは、その中に記録されている情報は、誰でもアクセスして読むことができるだけでなく、書き換えることも自由である。保護されるべき、あるいは他人に秘密としたい情報の保護のために、いろいろな暗号が取り入れられている。しかし、完全な暗号は、本来オープンであり、ディジタルに限られているコンピュータにあっては難しい。少しでも、暗号の強度を増す努力が求められている。
【0003】
【従来の技術】
ディジタルコンピュータは、OS上で浮動小数点64ビット、有効数字52ビットの計算能力をもってしても52ビットコードのすべての組合せ、252〜1016通りでしかない。これ以上の組合せは、今日のディジタルコンピュータでは取り扱うことができない。ディジタルコンピュータが計算量が爆発的に増大する複雑な組合せ問題を苦手とする理由である。暗号は原理的には、この複雑な組合せ問題に属するため、強度の高い暗号システムを今日のディジタルコンピュータが苦手としても仕方がない。
【0004】
ロジスティック写像(c=4.0)がリヤプノフ指数λ=1n2=0.693・・・のカオスを生成することは知られている。カオスは周期の対極に位置する概念で、カオスの中には、いろいろな暗号が含まれていることが知られている。ストリーム暗号、ブロック暗号、圧縮暗号化などである。本案はストリーム暗号に関する。
【0005】
ストリーム暗号は、1対1のコンパクトな暗号生成技術であり、情報量に増減がない。ロジスティック写像(c=4.0)を浮動小数点64ビット、有効数字52ビットでOS上で逐次計算することによって生成するタイムシリーズYt,1の擬似乱数(同相変換量子化観測で量子化分解能n=1)あるいは、逐次計算結果の有効数字52ビットを並べたPN信号でもよい。あるいは、52ビット固定小数点乗算器FPGAで1回の写像での出力104ビットから96ビット(8または16の倍数とする)を取り出して並べたPN信号でもよい。初期値52ビットが固有の擬似乱数Yt,1またはPN信号を支配しているため、初期値を暗号鍵とし、擬似乱数またはPN信号を暗号表とするストリーム暗号である。ただし、暗号表は逐次生成され、逐次演算に使用され、テーブルとして記録されることはない。
【0006】
暗号化すべきディジタルファイルと暗号表との排他的論理和(EXOR)演算で暗号コードを生成する。暗号コードと暗号表との再度のEXOR演算で原文がえられる。ストリーム暗号はディジタルコードのEXOR演算の特長を活かした、1対1の逐次計算を活用した暗号である。
【0007】
【発明が解決しようとする課題】
ディジタルファイルが英文の場合、8ビットアスキーコードの配列である。数字の場合も、8ビットアスキーコードの配列である。ディジタルファイルが日本語の場合、2B(バイト)で1文字をあらわしている。画像データの場合も、各セルの情報はR、G、Bそれぞれ8ビットの強度データの配列である。
【0008】
暗号表となるロジスティック写像の擬似乱数Yt,1の連続する0または1ビットコードの分布は、図1に示すように、確率分布となっている。図1の擬似乱数の総データ量は221〜100万点の場合である。すなわち、孤立した0または1は総データ量の1/8であり、連続する00、または11は総データ量の1/16である。連続する0または1の最も長いものは19である確率が1本づつはあることを意味している。良い擬似乱数(周期に入っていない)であれば、擬似乱数は確率分布をしていなければならない。そうでなくなったときに、カオスは周期に入り、もはやカオスではなくなる。連続する0が19ヶも連なっていると、文字をストリーム暗号化したとき、2・3文字は文字抜けすることが避けられない。
【0009】
暗号表となるロジスティック写像のPN信号の連続する0または1の分布が図2に示される。この例では、最大の連続する0の数、または1の数が36にも達している。暗号コードを生成したあと、暗号コードを例えば英文とみなしてファイルを開くと、たいていは文字化けしていて意味不明であるが、数文字だけだが文字抜けすることが避けられない。暗号解読への手がかりを与えることになる。消す努力をしておかねばならない。
【0010】
【課題を解決するための手段】
カオス・ストリーム暗号の暗号表である擬似乱数Yt,1やPN信号の生成速度は、前者がMB/s、後者が100MB/sと高速である。1冊の本をストリーム暗号化したとしても、数秒もかからない。従って、複数回のストリーム暗号化に何の問題もない。
【0011】
カオスは複雑な組合せ問題の結果を見ているのであるから、予測不可能な性質をもつ。例えば、ある初期値から擬似乱数のタイムシリーズYt,1を生成したとする。その長さが、図1の例のように221〜100万ビットであったとしよう。00・・・0または11・・・1が19個連なるところがどこかに1箇所あるはずであるが、それがどこにあるかを予測することは難しい。それぞれの初期値について検索して調べると、決定される。どこにあらわれるかを、初期値を見ただけでは予測できない、いわゆるカオスの初期値敏感性である。
【0012】
2つの初期値を与えて、2本の擬似乱数Yt,1を生成したとしよう。全体のデータ量を221〜100万ビットとすると、連続する0が19個並ぶ確率は1であるが、2本の100万ビットを重ね合わせたとき、たまたま19個の0の連なりが重なり合う確率はほとんどない。この性質を利用して、ストリーム暗号の文字抜けを防止することができる。
【0013】
【作用】
ストリーム暗号において、1文字がそのまま抜ける可能性を検討してみよう。図1によれば、100万ビットの擬似乱数Yt,1の中に0が8ヶ以上並んでいるところが約1000ヶ所ある。そこでは1文字が抜け落ちる可能性がある。実際、テスト用に特定のアスキーコード、例えば小文字のa=01100001を繰り返し入力したテスト用ファイルを用意し、ある初期値から生成した擬似乱数Yt,1との排他的論理和演算でストリーム暗号コードを生成し、英文ファイルとみなして聞いてみる。aという文字が何文字抜け落ちているかを数える。1文字抜けたところが36ヶ所あり、2文字抜けたところが13ヶ所見つかった。
【0014】
小文字aを繰り返し入力したファイルは、完全に周期的なファイルである。暗号解読者が試みる手法である。コンピュータが管理保管するディジタルファイルには、このような周期性はない。小文字aに注目して、暗号コードを英文ファイルとして開いたとき、出力されるaには2種類存在する。1つは、暗号表が00・・・0となったところで文字抜けしをしたaであり、他の1つはディジタルコードを擬似乱数のコードとをEXOR演算した結果の化けたaである。暗号コードだけを見たのでは、この2つを区別することはできない。しかし、原文が英文ファイルであると推定するには十分な情報となる。
【0015】
日本語は16ビットコードである。日本語を図2のPN信号でストリーム暗号化した場合、例えばひらがな”あ”を繰り返し入力した原文ファイルをストリーム暗号化し、その暗号コードを日本語ファイルと見なして開いてみると、PN信号が00・・・0と連なったところでは文字抜けを起こしている。PN信号が11・・・1と連なったところでは、文字の反転コードが出力されている。8ビットコードの英文に対し、16ビットコードの日本語の場合、ストリーム暗号コードを日本語とみなして開いたとき、ほとんどが文字化けしていて、内容の判別は不可能であるが、日本語で頻繁にあらわれるひらがな”は””の””と”・・・などは、文字抜けではないかと思われる情報が発見される。
【0016】
【実施例】
英文、日本語あるいは数字だけのファイルを、1つの初期値から生成した擬似乱数でストリーム暗号化し、暗号コード1を生成する。暗号コード1を英文、日本語あるいは数字とみなしてそれぞれのファイルとして開くと、文字抜けを生じている。暗号コード1を他の初期値から生成した擬似乱数で再度ストリーム暗号化し、暗号コード2を生成する。暗号コード2を、同じように、英語、日本語あるいは数字のファイルとみなして開いてみると、文字化けした中にもとのコードの抜けたものを発見することがほとんど不可能となっている。
【0017】
2回よりも、3回、4回と回数を増すほど効果が大きいと期待されるが、経験上2回のストリーム暗号化で十分である。
【0018】
2回または複数回のストリーム暗号化を行うと、処理時間は2倍、3倍と増加する。しかし、擬似乱数の生成もMB/sと高速であり、PN信号の生成も100MB/sと高速であり、ストリーム暗号化のEXOR演算もディジタルコンピュータにとっては基本論理演算であるから、十分に高速である。処理速度の遅延を心配する必要がない。また、擬似乱数の生成あるいはPN信号の生成に同期して並列処理を実行することも容易である。
【0019】
異なる初期値の擬似乱数またはPN信号の生成において、初期値をシフトして乱数またはPN信号を生成し、同期をとって復元するという手法は、産業技術としては大変便利な手法である。しかし、本案の効果をたしかなものとするためには、十分距離をとったシフトが必要である。
【0020】
十分に確率分布が保証された擬似乱数またはPN信号を用いたストリーム暗号は、解読不可能な暗号だと信じられている。しかし、本案では、長い00・・・0や11・・・1、あるいは簡単なコードの配列例えば0101・・・01や00110011・・・0011のような配列は、原文が何であるかを推定する情報すなわち文字抜けを生じていることを示した。このような暗号解読への手がかりは丹念に消しておく必要がある。
【0021】
ロジスティック写像が生成する擬似乱数またはPN信号は、初期値に固有であり、0または1の連なりの分布は確率分布である。初期値の異なる2本の擬似乱数の長い00・・・0や長い11・・・1が相互に重なる確率は無視できるほど小さい。1回のストリーム暗号化では文字抜けは避けられないが、2回以上のストリーム暗号化では、文字抜けをなくすことができる。
【図面の簡単な説明】
【図1】擬似乱数の度数分布である。
【図2】PN信号の度数分布である。

Claims (1)

  1. ロジスティック写像が生成する擬似乱数またはPN信号を用いたストリーム暗号化システムにおいて、排他的論理和演算を重ね合わせることにより、文字等の抜けを防止することを特長とする、ストリーム暗号における情報の抜け防止方法。
JP2002321780A 2002-10-01 2002-10-01 暗号における情報の抜け防止方法 Pending JP2004126483A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002321780A JP2004126483A (ja) 2002-10-01 2002-10-01 暗号における情報の抜け防止方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002321780A JP2004126483A (ja) 2002-10-01 2002-10-01 暗号における情報の抜け防止方法

Publications (1)

Publication Number Publication Date
JP2004126483A true JP2004126483A (ja) 2004-04-22

Family

ID=32289747

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002321780A Pending JP2004126483A (ja) 2002-10-01 2002-10-01 暗号における情報の抜け防止方法

Country Status (1)

Country Link
JP (1) JP2004126483A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006100088A (ja) * 2004-09-29 2006-04-13 Toyoda Gosei Co Ltd 発光装置の輝度制御方法及び制御データ生成装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006100088A (ja) * 2004-09-29 2006-04-13 Toyoda Gosei Co Ltd 発光装置の輝度制御方法及び制御データ生成装置

Similar Documents

Publication Publication Date Title
Cang et al. Pseudo-random number generator based on a generalized conservative Sprott-A system
JPH07104976A (ja) 擬似乱数発生装置
Sleem et al. TestU01 and Practrand: Tools for a randomness evaluation for famous multimedia ciphers
Luengo et al. Recommendations on statistical randomness test batteries for cryptographic purposes
Bahi et al. Evaluating quality of chaotic pseudo-random generators: Application to information hiding
Turn Privacy transformations for databank systems
CN107797788B (zh) 一种随机数发生装置、真随机数发生器及系统级芯片
AVAROĞLU et al. A novel S-box-based postprocessing method for true random number generation
Kumari et al. Lightweight image encryption algorithm using NLFSR and CBC mode
Sangeetha et al. Authentication of symmetric cryptosystem using anti-aging controller-based true random number generator
Karimovich et al. Computer's source based (Pseudo) random number generation
Beighton et al. Algebraic attacks on Grain-like keystream generators
Alsharida et al. RC4D: A New Development of RC4 Encryption Algorithm
JP2004126483A (ja) 暗号における情報の抜け防止方法
Ratan et al. Bit-plane specific randomness testing for statistical analysis of ciphers
Mahmood et al. Implementation of the binary random number generator using the knight tour problem
Cerruti One time pad and the short key dream
Zelenoritskaya et al. Possible modifications of RC4 stream cipher
Abed et al. Design of New Efficient Stream Key Generator to Protect the Classified Information
Deb et al. Study of NLFSR and reasonable security improvement on trivium cipher
Safaryan et al. Self-generated model of acoustics encryption by means of true random number generator
Ali Oppel-2: a new family of FCSR-based stream ciphers
Thammannagowda et al. Low area FPGA implementation of PRNG-LCC-CSLA architecture based on chaotic circuit
Stoyanov Self-Shrinking Chaos Based Pseudo-Random Algorithm
Pillai et al. The analysis of PQ sequences generated from continued fractions for use as pseudorandom sequences in cryptographic applications