(57)【要約】【目的】英文を入力とし、圧縮暗号コードを出力とする、暗号鍵（順列）で英文を管理するシステムを目的とする。圧縮率はＧ１エントロピーを指標とする。【構成】あらかじめ調べた英文を構成するアスキーコードの分布をもとに、Ｇ１エントロピーを下げるコードの置き換えをする前処理とカオスの圧縮展開テーブルを用いた圧縮過程より構成される。暗号鍵（順列）は前処理テーブルにも、カオスの圧縮展開テーブルにも定義することができる。【選択図】　　　　なし【特許請求の範囲】
【請求項１】
英文（大文字２６、小文字２６、記号５、数字７）テキスト２文字を１２ビットに変換し、Ｇ１エントロピーを下げ、順列で暗号鍵を定義したカオスの圧縮展開テーブルで繰り返し圧縮を行って圧縮コードを生成し、それらの逆過程をたどることにより復元することを特長とする英文テキストの可逆的圧縮暗号化の方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
英語は世界中で最も広く使われている言語であり、ディジタルコンピュータでも優先して使用される共通言語といってよい。英語の文書は単に暗号コード化して保存や転送が計られるだけでなく、同時に圧縮して情報量を減らしたいという要望は多い。暗号コード化には、暗号鍵と暗号表が必要である。暗号鍵は文書の管理コードとして活用される。
【０００２】
コンピュータのキーボードは、英文アルファベット専用に作られていると言ってよい。アスキーコードも、英語に関しては優先して割り当てられている。したがって、英語の圧縮暗号化は、他の言語に対して、基本的な役割を担っているということができる。
【０００３】
【従来の技術】
発明者の１人が著者である、近く出版予定の著書「カオスエンジニアリング、シュプリンガーフェアラーク東京、２００２年１０月予定」ページ９に、カオスを生成するロジスティック写像の逆計算において、正の符号（＋）をビット１に対応させ、負の符号（−）をビット０に対応させることにより、ディジタル情報をカオスに取り込むことが説明されている。
【０００４】
同相変換量子化して与える整数の初期値も、２進重みを与えて積和を計算するディジタル情報の取込とみなすことができる。圧縮コードは、初期値を同相変換逆変換した整数とし、ロジスティック写像の逆計算して得られる内部状態を同相変換して求めた整数である。初期値と取込符号と圧縮コードの関係は、それらのビット長が決められると、すべての組合せをあらかじめ計算してテーブルにしておく。そのテーブルをカオスの圧縮展開テーブルと呼ぶ。
【０００５】
【発明が解決しようとする課題】
カオスの圧縮展開テーブルを用いた圧縮は、圧縮処理を繰り返すたびにエントロピーを少しずつ上昇し、圧縮コードは０と１がほぼ１対１に混ざり合った乱数となっているという性質を持つ。乱数のエントロピーは無限大である。したがって、カオスの圧縮展開テーブルを有効に活用できるためには、英文ファイルのエントロピーを下げるという前処理が必要になる。
【０００６】
ディジタルファイルでは、０と１というビットが互いに独立であるから、エントロピーはＧ１＝−ｐ（０）ｌｏｇ２ｐ（０）−ｐ（１）ｌｏｇ２ｐ（１）で求めたＧ１エントロピーを指標とするとよい。ｐ（０）は全体の情報量に対する０であるビットの割合であり、ｐ（１）は全体の情報量に対する１であるビットの割合である。乱数のＧ１エントロピーはＧ１＝０．９９９９９９・・・と限りなく、１．０に近い。ディジタルファイルのエントロピー無限大とは、Ｇ１＝０．９９９９９９・・・のことである。
【０００７】
英文テキストの定義をしておこう。小文字２６文字、大文字２６文字、スペース・フルストップ等記号５文字、及び０＝Ｏ（オー）、１＝ｌ（エル）、２、３、４、５、６、７、８、９数字７文字、合計６４文字（アスキーコード６４本）とする。この定義は表１にまとめられている。この定義はあくまでも１例である。実用英語やビジネス英語や出版英語では、いろいろな専門記号が付加されている。ちなみに、このように定義した英文サンプルのＧ１エントロピーを求めてみると、Ｇ１＝０．９９５７４５・・・と大きい。このままでは、カオスの圧縮展開テーブルを用いた有効な圧縮は期待できない。
【０００８】
【表１】
2004129178.tif 000002
【０００９】
Ｇ１エントロピーを下げるということは、Ｐ（０）を大きくし（１に近い値にする）、ｐ（１）を小さい値（０に近い値にする）にすることである。すなわち、大半が０であり、０であるビットの中にまばらに１であるビットが存在するというファイルに変換することである。英文テキストファイルはアスキーコードの配列であるから、８ビットコードであらわされている。そこで８ビットコードの分布を調べる。
【００１０】
スペースコード（００１０００００）はもっとも頻繁に現れるコードである。英文をキーボードから入力するとき、単語の区切りにスペースコードをたたくからである。このコードには８ビットコード、オール０、（００００００００）を割り当てる。標準的な英文であれば、小文字の出現頻度は、ｅ、ａ、ｎ、ｏ、ｔ、・・・となっている。ｅは（０１１００１０１）である。このコードには（０００００００１）と、１が１つだけの８ビットコードを割り当てる。以下同様の置き換えを行い、１の数を減らし、０の数を増やす。このような前処理は完全に可逆的である。１ビットも情報が失われることはない。このような前処理を８ビットを８ビットに変換するから、８／８と書いておこう。
【００１１】
英文テキストの定義を６４種類に限定したのは、６４種類は６ビットコードであらわすことができるからである。すなわち、６／８という前処理が可能となる。この前処理は７５％への圧縮をかねて、かつＧ１エントロピーを下げる効果がある。
【００１２】
【課題を解決するための手段】
６ビットブロックの圧縮展開テーブルを用いて、８／８の前処理を行った英文テキストを圧縮したとき、圧縮率７０％がえられる。前処理後のＧ１エントロピーはＧ１＝０．６１３１・・・であった。一方、６／８の前処理を行った英文テキストの圧縮率は６５％であった。そのときの前処理後のＧ１エントロピーはＧ１＝０．７８０２・・・であった。２段階で圧縮を行った、後者の方がいい結果となっている。
【００１３】
英文テキストでは、アルファベットが無茶苦茶に並ぶことはない。ある文字がきたら、その次にくる文字は限られる。このことは、８ビットの重なりのないエントロピーＧ’８と１６ビットの重なりのないエントロピーＧ’１６を比べてみても、アルファベットの配列には強い相関があり、秩序があることがわかる。すなわち、６／８という前処理よりは、１２／１６という前処理が有効であることを示唆している。
【００１４】
【作用】
英文テキストの２文字の組合せの分布を調べ、頻度の高い組合せには１の数の少ない１２ビットコードを優先して割り当てる。表１に定義した６４種類の２文字の組合せは、（６４）２＝４０９６通り、すなわち１２ビットコードの種類と一致する。機械的にすべての可能性のある組合せにコードを割り当ててもよいが、実際には、２文字の組合せは６００程度にすぎない。実用上は頻度の高い６００程度に優先して１の数の少ない１２ビットコードを割り当てておくとよい。
【００１５】
標準的な英文テキストに対し、１２／１６の前処理を行うと、７５％の圧縮とともにＧ１エントロピーはＧ１＝０．７５５４１８・・・と小さくなり、５ビットブロックの圧縮展開テーブルで圧縮した結果、圧縮率５３％となった。原文の約半分への圧縮ができる。
【００１６】
本案の特長は、前処理も圧縮もテーブル化されていて、これらのテーブルはプログラムに共通に含まれる。Ｇ１エントロピーが圧縮可能性の指標を与えていることである。したがって、どんな英文テキストをもってきても、長い文章であっても、短い文章であっても、ほぼ同一の圧縮率となる。
【００１７】
【実施例】
本案の最大の特長は、前処理テーブルと圧縮展開テーブルに、順列を用いて暗号鍵を定義できることである。例えば８／８の前処理テーブルでは、小文字ｅ、ａ、ｎ、ｏ、ｔ、・・・に（０００００００１）、（００００００１０）、（０００００１００）、・・・と順番に８文字に１が１つの８ビットコードを割り当てる。この割り当てを入れ替えても、前処理後のＧ１エントロピーには全く変化がなく、したがって致達圧縮率にも変化はない。しかし、この入れ替えによって圧縮コードの０と１の配列は全く違ったものとなっている。
【００１８】
ｅ、ａ、ｎ、ｏ、ｔ、　・・・の８文字と（０００００００１）、（００００００１０）、（０００００１００）の８つのコードの対応は０、１、２、・・・、７の順列により任意に与えられる。これが順列で定義する暗号鍵である。暗号鍵の種類は８！＝４０，３２０通りある。１２種類で暗号鍵を定義すると１２！＝４．８×１０８通り、１６種類で定義すると１６！＝２．１×１０１３通りとなり、使い捨て可能な数となる。
【００１９】
暗号鍵が順列で与えられるのに対し、暗号表は前処理テーブルであり、カオスの圧縮展開テーブルである。しかし、暗号鍵（順列）に固有である。したがって、圧縮コードは暗号鍵により固有に支配された関係となっていて、圧縮コードを暗号コードとみなすことができる。ちなみに、圧縮コードのＧ１エントロピーはＧ１＝０．９９・・・以上と乱数に近い、大きな値となっている。
【００２０】
【発明の効果】
本案は、暗号化と圧縮を同時に行う。２度手間をかけないで、暗号鍵により英文テキストを管理する手法を提供した。重なりのない組合せである順列は、多数の暗号鍵を安全に提供するだけでなく、公平な暗号鍵の発行を可能にする。
【００２１】
圧縮は限界に向かって繰り返しとことん実行されるのが一般である。本案のＧ１エントロピーを指標とする圧縮は、目標とする圧縮率を目指して圧縮を制御することもできる。そのような考えは、膨大な情報量を取り扱う画像や音声データの圧縮において必要となるであろう。