(57)【特許請求の範囲】
【請求項１】
符号変換する入力情報の値又はこの値から１を引いた値を次数ｎで除算した時の商を行位置指定情報とし、前記入力情報の値又はこの値から１を引いた値を次数ｎで除算した時の余りを列位置指定情報とする行列指定部と、
０又は１から始まるｎ2個の連続した自然数の要素からなる２次元配置の、次数ｎの魔方陣を、前記行位置指定情報と列位置指定情報で指定して、指定された行位置と列位置の前記魔方陣の要素を変換情報として出力する符号化部と
を有することを特徴とする符号変換装置。
【請求項２】
０又は１から始まるｎ2個の連続した自然数の要素からなる次数ｎの符号化用魔方陣を用いて符号変換された入力情報を受け、該入力情報の値又はこの値から１を引いた値を次数ｎで除算した時の商を行位置指定情報とし、前記入力情報の値又はこの値から１を引いた値を次数ｎで除算した時の余りを列位置指定情報とする行列指定部と、
０又は１から始まるｎ2個の連続した自然数の要素からなる２次元配置の、前記符号化用魔方陣と対応する復号化用方陣を、前記行位置指定情報と列位置指定情報で指定して、指定された行位置と列位置の前記魔方陣の要素を復元情報として出力する復号化部と
を有することを特徴とする符号変換装置。
【請求項３】
０又は１から始まるｎ2個の連続した自然数の要素からなる次数ｎの符号化用魔方陣を用いて符号変換された入力情報で、前記符号化用魔方陣と対応する復号化用方陣を参照し、該復号化用方陣にある前記入力情報の値の行位置を行位置指定情報とし、列位置を列位置指定情報として出力する復号化部と、
前記行位置指定情報と前記列位置指定情報とを入力として受け、前記行位置指定情報にｎを掛けて、前記列位置指定情報の値を加算した値、又はこの加算値に更に１を加算した値を復元情報として出力する行列合成部と
を有することを特徴とする符号変換装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は符号変換装置に係り、特に暗号通信や識別情報の作成のために変換表を使用して符号化あるいは復号化を行う符号変換装置に関する。
【０００２】
【従来の技術】
暗号通信や識別情報の作成のため、入力情報をＳボックス等の変換表を用いて符号変換して出力情報を得る符号変換方法が従来より知られている。図６は従来の符号変換方法の一例を示す。すなわち、符号化時は、同図（ａ）に示すように、ある数字（又は記号等）の集合からなる入力情報Ｐを、変換表１１を使用して別の数字（又は記号等）の集合からなる出力情報Ｃに変換する。この変換表１１を用いることにより、例えば、入力情報Ｐ中の数字“０”は“１”に、“１”は“４”に、“２”は“０”に、“３”は“８”に変換されることになる。
【０００３】
また、復号化時は、図６（ｂ）に示すように、上記の出力情報Ｃを変換表１２を使用して元の入力情報Ｐに変換する。すなわち、変換表１２を用いることにより、例えば入力される情報Ｃ中の数字“１”は“０”に、“４”は“１”に、“０”は“２”に、“８”は“３”というように、元の入力情報Ｐに変換されて出力される。
【０００４】
【発明が解決しようとする課題】
しかるに、従来、上記の変換表１１及び１２の値の選択方法は、特に決められたものではなく、変換表１１及び１２の数字（又は記号等）の設定位置によっては、変換結果の偏りで変換特性に影響を及ぼさないとも限らなかった。
【０００５】
本発明は上記の点に鑑みなされたもので、変換表の数字や記号の並びを一様化することにより、変換結果を分散化し得る符号変換装置を提供することを目的とする。
【０００６】
また、本発明の他の目的は、魔方陣を使用した単純な構成で符号変換を行い得る符号変換装置を提供することにある。
【０００７】
【課題を解決するための手段】
上記の目的を達成するため、請求項１記載の符号変換装置は、符号変換する入力情報の値又はこの値から１を引いた値を次数ｎで除算した時の商を行位置指定情報とし、入力情報の値又はこの値から１を引いた値を次数ｎで除算した時の余りを列位置指定情報とする行列指定部と、０又は１から始まるｎ2個の連続した自然数の要素からなる２次元配置の、次数ｎの魔方陣を、行位置指定情報と列位置指定情報で指定して、指定された行位置と列位置の魔方陣の要素を変換情報として出力する符号化部とを有する構成としたものである。
【０００８】
魔方陣は、２次元配置された行列及び対角線上の要素の和が一定であり、要素の分散具合が均等となり、逆変換が確実に行えるという、変換表における好適な条件を有し、更に、次数ｎが大きくなった場合には、その方陣の存在する数も多数となり、使用する方陣を秘密にした場合には、いずれの方陣を使用したかの特定は困難であるという利点がある。
【０００９】
そこで、この発明では、この利点に着目して、所定のビット数の入力情報で、２次元配置の魔方陣を変換表として用い、その行位置と列位置を指定し、指定した行列位置の魔方陣の要素を変換情報として出力することにより、ディジタル情報化された平文の内容の秘密を保持して伝送あるいは保存することを目的とする情報秘匿システムや個人の識別を行うことを目的とする識別システムに適用できる。
【００１５】
また、上記の目的を達成するため、請求項２記載の符号変換装置は、０又は１から始まるｎ2個の連続した自然数の要素からなる次数ｎの符号化用魔方陣を用いて符号変換された入力情報を受け、該入力情報の値又はこの値から１を引いた値を次数ｎで除算した時の商を行位置指定情報とし、入力情報の値又はこの値から１を引いた値を次数ｎで除算した時の余りを列位置指定情報とする行列指定部と、０又は１から始まるｎ2個の連続した自然数の要素からなる２次元配置の、符号化用魔方陣と対応する復号化用方陣を、行位置指定情報と列位置指定情報で指定して、指定された行位置と列位置の魔方陣の要素を復元情報として出力する復号化部とを有する構成としたものである。この発明は、符号化したときの魔方陣に対応した逆変換を行う復号化用方陣を用いて、請求項１記載の符号変換装置と同様の手順で復号化を行うことができる。
【００１６】
また、上記の目的を達成するため、請求項３記載の符号変換装置は、０又は１から始まるｎ2個の連続した自然数の要素からなる次数ｎの符号化用魔方陣を用いて符号変換された入力情報で、符号化用魔方陣と対応する復号化用方陣を参照し、該復号化用方陣にある入力情報の値の行位置を行位置指定情報とし、列位置を列位置指定情報として出力する復号化部と、行位置指定情報と列位置指定情報とを入力として受け、行位置指定情報にｎを掛けて、列位置指定情報の値を加算した値、又はこの加算値に更に１を加算した値を復元情報として出力する行列合成部とを有する構成としたものである。この発明では、符号化用魔方陣と同じ魔方陣を復号化用方陣として用いることができる。
【００１７】
【発明の実施の形態】
次に、本発明の実施の形態について図面と共に説明する。図１（ａ）及び（ｂ）は本発明になる符号変換装置の第１の実施の形態である符号化装置Ａ及び第２の実施の形態である復号化装置Ｂのブロック図を示す。図１（ａ）に示す符号化装置Ａは、符号化用の符号化用魔方陣Ｍを変換表として有する符号化部ａと、入力情報Ｐにより符号化部ａの行列の位置を指定する行列指定部ＲＣとからなる。行列指定部ＲＣは、更に列位置指定部ＲＣｃと行位置指定部ＲＣｒとからなる。
【００１８】
ここで、符号化用魔方陣Ｍについて説明する前に、魔方陣の基本的な性質について説明する。連続な自然数を碁盤の目のように正方形に並べ、各行、各列及び両対角線に相当する部分の要素の和をすべて相等しくしたものを魔方陣という。魔方陣は、正方形に数字を要素として配置するので、各行、各列及び各対角線に相当する部分に含まれる数字の個数は相等しく、これらの数字の各個数がｎである方陣をｎ次の魔方陣と呼ぶ。
【００１９】
並びが異なった魔方陣の個数は、１次から５次までの範囲で知られているが、６次以上についての個数は知られておらず、それを算出するための公式的な計算式も存在は確認されていないようである。魔方陣の個数の数え方の条件として、並びが異なっていても魔方陣を回転させて同一の配置となるものと、裏返して同一の配置となるもの、そしてそれらの組み合わせによって得られるものは、いずれも同一の方陣として個数には入れない。
【００２０】
要素が同じ範囲であれば、１次の魔方陣の個数は１個、２次の魔方陣の個数は０個、３次の魔方陣の個数は１個、４次の魔方陣の個数は８８０個、５次の魔方陣の個数は３５，４７２，３２６個である。図３（ａ）及び（ｂ）は３次の魔方陣を示し、図４（ａ）及び（ｂ）は４次の魔方陣の二つの例を示す。３次の魔方陣は、値が０から８までのものは図３（ａ）に示すもの１個だけであり、値が１から９までのものは図３（ｂ）に示すもの１個だけである。
【００２１】
なお、回転と裏返しを個数に入れて数えると、上記の各次数でそれぞれ８倍の個数の魔方陣が存在する。ただし、１次は要素が一つしかないので、その条件から除く。ｎ次の魔方陣の要素を１からｎ２までの自然数とすると、すべての数の和Ｓｎは、
Ｓｎ＝１＋２＋３＋・・・＋ｎ２＝ｎ２（ｎ２＋１）／２
となる。また、行、列及び対角線上の各要素の数の和Ｌｎは、
Ｌｎ＝Ｓｎ／ｎ＝ｎ（ｎ２＋１）／２
となる。
【００２２】
このような性質を有する魔方陣は、２次元配置された行列及び対角線上の要素の和が一定であり、要素の分散具合が均等となり、逆変換が確実に行えるという、変換表における好適な条件を有し、更に、次数ｎが大きくなった場合には、その方陣の存在する数も多数となり、使用する方陣を秘密にした場合には、いずれの方陣を使用したかの特定は困難であるという利点がある。そこで、本実施の形態では、この利点に着目して、魔方陣を変換表として用いるものである。
【００２３】
すなわち、図１（ａ）の実施の形態では、入力情報Ｐを行列指定部ＲＣの行位置指定部ＲＣｒで行位置指定情報ＲＰに変換すると共に、列位置指定部ＲＣｃで列位置指定情報ＣＰに変換する。符号化用魔方陣Ｍの行位置と列位置を指定することにより、符号化用魔方陣Ｍから変換情報Ｃを得る。ここで、ｎ次の魔方陣の要素の値（以下、単に魔方陣の値ともいう）を０からｎ２‐１とした場合には、入力情報Ｐの値は０からｎ２‐１となり、行位置指定情報ＲＰの値はＰ／ｎの商の値となり、列位置指定情報ＣＰの値はＰ  ｍｏｄ  ｎ（Ｐをｎで割った余り）となる。
【００２４】
実際の行位置指定情報ＲＰと列位置指定情報ＣＰの値は、０からｎ‐１となる（魔方陣の行列位置の指定も０行０列からｎ‐１行ｎ−１列となる）。ここで、ｉ番目の入力情報Ｐｉに対する行位置指定部ＲＣｒの出力行位置指定情報ＲＰｉを、ＲＣｒ（Ｐｉ）と表し、列位置指定部ＲＣｃの出力列位置指定情報ＣＰｉを、ＲＣｃ（Ｐｉ）と表すものとすると、図１（ａ）の符号化部ａは、複数の魔方陣のうちから選択された一つの符号化用魔方陣ＭのＲＰｉで指定された行位置と、ＣＰｉで指定された列位置の要素Ｍｋ（ＲＰｉ，ＣＰｉ）を変換情報Ｃｉとして出力する。この変換情報Ｃｉを数式で表すと、次式になる。
Ｃｉ＝Ｍｋ（ＲＰｉ，ＣＰｉ）            （１）
【００２５】
なお、上式中、Ｍｋのｋは、複数の魔方陣のうちから、鍵として一つを選択するための変換表の番号である。
【００２６】
また、符号化用魔方陣Ｍの値を１からｎ２とした場合は、入力情報Ｐの値は１からｎ２となり、行位置指定情報ＲＰの値は（Ｐ−１）／ｎの商の値となり、列位置指定情報ＣＰの値は（Ｐ−１）  ｍｏｄ  ｎ（Ｐ−１をｎで割った余り）となる。実際のＲＰとＣＰの値は、０からｎ−１となる（魔方陣の行列位置の指定も０行０列からｎ−１行ｎ−１列となる）。
【００２７】
符号化用魔方陣Ｍの値を１からｎ２とした場合、ｉ番目の入力情報Ｐｉに対する行位置指定部ＲＣｒの出力行位置指定情報ＲＰｉは、ＲＣｒ（Ｐｉ  −１）と表わされ、列位置指定部ＲＣｃの出力列位置指定情報ＣＰｉは、ＲＣｃ（Ｐｉ  −１）と表わされ、図１の符号化部ａは、複数の魔方陣のうちから選択された一つの符号化用魔方陣ＭのＲＰｉで指定された行位置と、ＣＰｉで指定された列位置の、（１）式で表される要素Ｍｋ（ＲＰｉ，ＣＰｉ）を変換情報Ｃｉとして出力する。
【００２８】
図１（ｂ）に示す復号化装置Ｂは、変換情報Ｃを入力として受け、行列指定部ＲＣの行位置指定部ＲＣｒで行位置指定情報ＲＰに変換し、かつ、列位置指定部ＲＣｃで列位置指定情報ＣＰに変換し、これらで復号化部ｂで変換表として使用する復号化用方陣Ｍ´の行位置と列位置を指定し、復号化用方陣Ｍ´から復元情報Ｄを得る構成である。復号化用方陣Ｍ´は、符号化用魔方陣Ｍに対応した逆変換を行う方陣である。なお、符号化に使用した符号化用魔方陣Ｍに対応した逆変換を行う方陣は、必ず存在するが、それが魔方陣とは限らない。
【００２９】
この方陣Ｍ´の値を０からｎ２−１とした場合には、変換情報Ｃの値は０からｎ２−１までの値となり、行位置指定情報ＲＰの値はＣ／ｎの商の値となり、列位置指定情報ＣＰの値はＣ  ｍｏｄ  ｎ（Ｃをｎで割った余り）となる。実際のＲＰとＣＰの値は、０からｎ−１となる。
【００３０】
ここで、ｉ番目の入力変換情報Ｃｉに対する行位置指定部ＲＣｒの出力行位置指定情報ＲＰｉを、ＲＣｒ（Ｃｉ）と表し、列位置指定部ＲＣｃの出力列位置指定情報ＣＰｉを、ＲＣｃ（Ｃｉ）と表すものとすると、図１（ｂ）の復号化部ｂは、複数の魔方陣のうちから選択された一つの符号化用魔方陣ＭのＲＰｉで指定された行位置と、ＣＰｉで指定された列位置の要素Ｍ´ｋ（ＲＰｉ，ＣＰｉ）を復元情報Ｄｉとして出力する。この復元情報Ｄｉを数式で表すと、次式になる。
Ｄｉ＝Ｍ´ｋ（ＲＰｉ，ＣＰｉ）            （２）
【００３１】
なお、上式中、Ｍ´ｋのｋは、複数の復号化用方陣Ｍ´のうちから、鍵として一つを選択するための変換表の番号である。
【００３２】
また、復号化用方陣Ｍ´の値を１からｎ２とした場合は、入力変換情報Ｃの値は１からｎ２となり、行位置指定情報ＲＰの値は（Ｃ−１）／ｎとなり、列位置指定情報ＣＰの値は（Ｃ−１）  ｍｏｄ  ｎ（Ｃ−１をｎで割った余り）となる。実際のＲＰとＣＰの値は、０からｎ−１となる（方陣の行列位置の指定も０行０列からｎ−１行ｎ−１列となる）。
【００３３】
復号化用方陣Ｍ´の値を１からｎ２とした場合、ｉ番目の入力変換情報Ｃｉに対する行位置指定部ＲＣｒの出力行位置指定情報ＲＰｉは、ＲＣｒ（Ｃｉ  −１）と表わされ、列位置指定部ＲＣｃの出力列位置指定情報ＣＰｉは、ＲＣｃ（Ｃｉ  −１）と表わされ、図１（ｂ）の復号化部ｂは、複数の復号化用方陣のうちから選択された一つの復号化用方陣Ｍ´のＲＰｉで指定された行位置と、ＣＰｉで指定された列位置の、（２）式で表される要素Ｍｋ（ＲＰｉ，ＣＰｉ）を復元情報Ｄｉとして出力する。
【００３４】
図２は本発明になる符号変換装置の第３の実施の形態である復号化装置Ｂ´のブロック図を示す。この復号化装置Ｂ´は、符号化装置Ａで使用される符号化用魔方陣Ｍを復号化の変換表に使用する復号化部ｂ´と、変換表の行と列の位置を合成して復元情報Ｄとする行列合成部ＭＸとから構成されている。行列合成部ＭＸは、行位置指定情報入力部ＲＣｒ´と、列位置指定情報入力部ＲＣｃ´とからなる。
【００３５】
この実施の形態は、変換情報Ｃで符号化用魔方陣Ｍの値を指定することで、すなわち、変換情報Ｃと同一の値が符号化用魔方陣Ｍの何行何列目にあるかにより、行位置指定情報ＲＰと列位置指定情報ＣＰを得て、それらを行列合成部ＭＸに入力し、ここで合成して復元情報Ｄを得る。
【００３６】
上記の復号化部ｂ´で使用する符号化用魔方陣Ｍの値が０からｎ２‐１とした場合には、変換情報Ｃの値は０からｎ２‐１となり、行位置指定情報ＲＰの値と列位置指定情報ＣＰの値は０からｎ−１となる（魔方陣の行列位置の指定も０行０列からｎ‐１行ｎ−１列となる）。
【００３７】
この実施の形態では、ｉ番目の入力変換情報Ｃｉに対する符号化用魔方陣Ｍの出力行位置指定情報ＲＰｉにｎを掛けて、入力変換情報Ｃｉに対する符号化用魔方陣Ｍの出力列位置指定情報ＣＰｉを加算したものを復元情報Ｄｉとする。これを数式で表すと次式のようになる。
（ＲＰｉ，ＣＰｉ）＝Ｍｋ−１（Ｃｉ）          （３）
Ｄｉ＝ＭＸ（ＲＰｉ，ＣＰｉ）              （４）
【００３８】
なお、上記の行列合成部ＭＸの演算動作は、ＲＰの値を２進数に変換した値を上位側、ＣＰの値を２進数に変換した値を下位側とする２進数値を生成し、その値を更に１０進数に変換した値を復元情報Ｄとして得ることと同じである。
【００３９】
また、符号化用魔方陣Ｍの値を１からｎ２とした場合は、入力変換情報Ｃの値は１からｎ２となり、行位置指定情報ＲＰの値と列位置指定情報ＣＰの値は、０からｎ−１となる（魔方陣の行列位置の指定も０行０列からｎ−１行ｎ−１列となる）。この符号化用魔方陣Ｍの値を１からｎ２とした場合、ｉ番目の入力変換情報Ｃｉに対する符号化用魔方陣Ｍの出力行位置指定情報ＲＰｉにｎを掛けて、入力変換情報Ｃｉに対する符号化用魔方陣Ｍの出力列位置指定情報ＣＰｉを加算したものに更に１を加算したものを復元情報Ｄｉとする。これを数式で表すと次式のようになる。
（ＲＰｉ，ＣＰｉ）＝Ｍｋ−１（Ｃｉ  −１）      （５）
Ｄｉ＝ＭＸ（ＲＰｉ，ＣＰｉ）              （６）
【００４０】
【実施例】
次に、本発明の実施の形態について、具体的に説明する。まず、図１（ａ）の符号化装置Ａの動作について、図１（ａ）及び図４（ａ）に示す４次（ｎ＝４）の魔方陣を符号化用魔方陣Ｍとして使用し、図５（ａ）の番号で示す順番で入力情報Ｐが入力された場合について説明する。まず、１番目の入力情報Ｐの値は図５（ａ）に示すように「５」であり、これは４ビットで表すと「０１０１」であるから、図１（ａ）の行列指定部ＲＣにおいて、上位２ビット「０１」の１０進数の値である「１」が行位置指定情報ＲＰとされ、また、下位２ビット「０１」の１０進数の値である「１」が列位置指定情報ＣＰとされる。
【００４１】
上記の行列指定部ＲＣの演算を実施の形態で説明した方法で説明すると、行位置指定情報ＲＰの値はＰ／ｎの商の値であるので、Ｐ＝５、ｎ＝４を代入すると「１」となり、列位置指定情報ＣＰの値はＰ  ｍｏｄ  ｎであるから、５／４の余りの「１」となる。
【００４２】
上記の行位置指定情報ＲＰと列位置指定情報ＣＰは、符号化部ａに供給され、符号化用魔方陣Ｍの１行１列目（なお、符号化用魔方陣Ｍの左端と上端との交点の桝目が０行０列目、右端と下端との交点の桝目が３行３列目である）を指定するため、図１（ａ）及び図４（ａ）から分かるように、値「６」が変換情報Ｃとして符号化部ａから取り出される。従って、１番目の入力情報Ｐの値が「５」のときの出力変換情報Ｃの値は、図５（ａ）にＩで示すように、「６」である。
【００４３】
次に、２番目の入力情報Ｐの値は図５（ａ）に示すように「１２」であり、これは４ビットで表すと「１１００」であるから、図１（ａ）の行列指定部ＲＣにおいて、上位２ビット「１１」の１０進数の値である「３」が行位置指定情報ＲＰとされ、また、下位２ビット「００」の１０進数の値である「０」が列位置指定情報ＣＰとされる。
【００４４】
上記の行位置指定情報ＲＰと列位置指定情報ＣＰは、符号化部ａに供給され、符号化用魔方陣Ｍの３行０列目を指定するため、図１（ａ）及び図４（ａ）から分かるように、値「０」が変換情報Ｃとして符号化部ａから取り出される。従って、２番目の入力情報Ｐの値が「１２」のときの出力変換情報Ｃの値は、図５（ａ）にＩＩで示すように「０」である。
【００４５】
以下、上記と同様にして、図５（ａ）に示すように、３番目の入力情報Ｐの値が「１」であるときの行位置指定情報ＲＰは「０」、列位置指定情報ＣＰは「１」であり、変換情報Ｃの値は「８」となり、４番目の入力情報Ｐの値が「１５」であるときの行位置指定情報ＲＰは「３」、列位置指定情報ＣＰは「３」であり、変換情報Ｃの値は「１２」となり、５番目の入力情報Ｐの値が「７」であるときの行位置指定情報ＲＰは「１」、列位置指定情報ＣＰは「３」であり、変換情報Ｃの値は「１」となる。
【００４６】
次に、図１（ｂ）の復号化装置Ｂの動作について、図１（ｂ）及び図４（ｂ）に示す４次（ｎ＝４）の方陣を復号化用方陣Ｍ´として使用し、図５（ｂ）の番号で示す順番で変換情報Ｃが入力された場合について説明する。ここで、図１（ｂ）及び図４（ｂ）に示す復号化用方陣Ｍ´は、図１（ａ）及び図４（ａ）に示した符号化用魔方陣Ｍに対応した逆変換を行う方陣である。
【００４７】
まず、１番目の入力変換情報Ｃの値は図５（ｂ）に示すように「６」であり、これは４ビットで表すと「０１１０」であるから、図１（ｂ）の行列指定部ＲＣにおいて、上位２ビット「０１」の１０進数の値である「１」が行位置指定情報ＲＰとされ、また、下位２ビット「１０」の１０進数の値である「２」が列位置指定情報ＣＰとされる。
【００４８】
上記の行列指定部ＲＣの動作を実施の形態で説明した方法で説明すると、行位置指定情報ＲＰの値はＣ／ｎの商の値で、行位置指定情報ＲＰの値はその余りであるから、Ｃ／ｎにＣ＝６、ｎ＝４を代入すると、行位置指定情報ＲＰの値は「１」となり、行位置指定情報ＲＰの値は「２」となる。
【００４９】
上記の行位置指定情報ＲＰと列位置指定情報ＣＰは、復号化部ｂに供給され、復号化用方陣Ｍ´の１行２列目（なお、復号化用方陣Ｍ´の左端と上端との交点の桝目が０行０列目、右端と下端との交点の桝目が３行３列目である）を指定するため、図１（ｂ）及び図４（ｂ）から分かるように、値「５」が復元情報Ｄとして復号化装置ｂから取り出される。従って、１番目の入力変換情報Ｃの値が「６」のときの出力復元情報Ｄの値は、図５（ｂ）にＩＩＩで示すように、「５」である。
【００５０】
次に、２番目の入力変換情報Ｃの値は図５（ｂ）に示すように「０」であり、これは４ビットで表すと「００００」であるから、図１（ａ）の行列指定部ＲＣにおいて、上位２ビット「００」の１０進数の値である「０」が行位置指定情報ＲＰとされ、また、下位２ビット「００」の１０進数の値である「０」が列位置指定情報ＣＰとされて復号化部ｂに供給され、復号化用方陣Ｍ´の０行０列目を指定するため、図１（ｂ）及び図４（ｂ）から分かるように、値「１２」が復元情報Ｄとして復号化装置ｂから取り出される。従って、２番目の入力変換情報Ｃの値が「０」のときの出力復元情報Ｄの値は、図５（ｂ）にＩＶで示すように、「１２」である。
【００５１】
以下、上記と同様にして、図５（ｂ）に示すように、３番目の入力変換情報Ｃの値が「８」であるときの行位置指定情報ＲＰは「２」、列位置指定情報ＣＰは「０」であり、復元情報Ｄの値は「１」となり、４番目の入力変換情報Ｃの値が「１２」であるときの行位置指定情報ＲＰは「３」、列位置指定情報ＣＰは「０」であり、復元情報Ｄの値は「１５」となり、５番目の入力変換情報Ｃの値が「１」であるときの行位置指定情報ＲＰは「０」、列位置指定情報ＣＰは「１」であり、復元情報Ｄの値は「７」となる。
【００５２】
図５（ａ）及び（ｂ）を比較すると分かるように、符号化装置Ａに入力された情報Ｐは、復号化装置Ｂにより復号化されて復元情報Ｄとして取り出される。
【００５３】
次に、図２に示した復号化装置Ｂ´の動作について、図２及び図４（ａ）に示す４次（ｎ＝４）の方陣を復号化用方陣Ｍとして使用し、図５（ｃ）の番号で示す順番で変換情報Ｃが入力された場合について説明する。ここで、図２及び図４（ａ）に示す復号化用方陣Ｍは、図１（ａ）に示した符号化用魔方陣Ｍと同一の魔方陣である。
【００５４】
まず、１番目の入力変換情報Ｃの値は図５（ｃ）に示すように「６」であり、復号化部ｂ´で使用する魔方陣Ｍの値「６」が位置する１行１列目が検出されるため、「１」が行位置指定情報ＲＰとされ、また、「１」が列位置指定情報ＣＰとされる。これらの行位置指定情報ＲＰと列位置指定情報ＣＰは、行列合成部ＭＸに供給され、ここで行位置指定情報ＲＰを上位の２ビット、列位置指定情報ＣＰを下位の２ビットとする「０１０１」から１０進数「５」が求められ、これが復元情報Ｄとして取り出される。従って、１番目の入力変換情報Ｃの値が「６」のときの出力復元情報Ｄの値は、図５（ｃ）にＶで示すように「５」である。
【００５５】
上記の行列合成部ＭＸの動作を実施の形態で説明した方法で説明すると、復元情報Ｄは、入力変換情報Ｃに対する符号化用魔方陣Ｍの出力行位置指定情報ＲＰにｎを掛けて、入力変換情報Ｃに対する符号化用魔方陣Ｍの出力列位置指定情報ＣＰを加算したものであるので、ここでは、ＲＰ＝１、ｎ＝４、ＣＰ＝１であるから、復元情報Ｄは「５」（＝１×４＋１）となる。
【００５６】
次に、２番目の入力変換情報Ｃの値は図５（ｃ）に示すように「０」であり、復号化部ｂ´で使用する魔方陣Ｍの値「０」が位置する３行０列目が検出されるため、「３」が行位置指定情報ＲＰとされ、また、「０」が列位置指定情報ＣＰとされる。これらの行位置指定情報ＲＰと列位置指定情報ＣＰは、行列合成部ＭＸに供給され、ここで行位置指定情報ＲＰを上位の２ビット、列位置指定情報ＣＰを下位の２ビットとする「１１００」から１０進数「１２」が求められ、これが復元情報Ｄとして取り出される。
【００５７】
換言すると、ＲＰ＝３、ｎ＝４、ＣＰ＝０であるから、復元情報Ｄは「１２」（＝３×４＋０）となる。従って、２番目の入力変換情報Ｃの値が「０」のときの出力復元情報Ｄの値は、図５（ｃ）にＶＩで示すように「１２」である。
【００５８】
以下、上記と同様にして、図５（ｃ）に示すように、３番目の入力変換情報Ｃの値が「８」であるときの行位置指定情報ＲＰは「２」、列位置指定情報ＣＰは「０」であり、復元情報Ｄの値は「１」となり、４番目の入力変換情報Ｃの値が「１２」であるときの行位置指定情報ＲＰは「３」、列位置指定情報ＣＰは「０」であり、復元情報Ｄの値は「１５」となり、５番目の入力変換情報Ｃの値が「１」であるときの行位置指定情報ＲＰは「０」、列位置指定情報ＣＰは「１」であり、復元情報Ｄの値は「７」となる。
【００５９】
図５（ａ）及び（ｃ）を比較すると分かるように、符号化装置Ａに入力された情報Ｐは、復号化装置Ｂ´により復号化されて復元情報Ｄとして取り出される。
【００６０】
なお、本発明は以上の実施の形態に限定されるものではなく、変換表として使用する魔方陣は、他の４次の魔方陣、あるいは５次の魔方陣でもよい。
【００６１】
【発明の効果】
以上説明したように、請求項１記載の発明によれば、魔方陣を暗号通信あるいは認証情報の作成のためのブロック符号化方法の符号化を行う変換表に応用するようにしたため、単純な装置の構成で変換表の数字の並びを一様化することで演算結果の情報の分散化ができ、しかも正確かつ迅速な符号変換ができる。また、魔方陣の次数ｎの増加と共に魔方陣の選択の数が飛躍的に増加することから、難解性を飛躍的に高めることができ、魔方陣の利用価値と利用効果も飛躍的に高めることができる。
【００６２】
また、請求項２記載の発明によれば、符号化用魔方陣に対応した逆変換を行う復号化用方陣を使用するようにしているため、正確かつ迅速な復号化ができると共に、請求項１と同じ手順、構成で復号化ができる。
【００６４】
また、請求項３記載の発明によれば、符号化の魔方陣と同一の魔方陣を復号化の変換表として使用するため、復号化用のための新たな方陣を用意することなく、正確かつ迅速な復号ができる。
【図面の簡単な説明】
【図１】本発明の第１及び第２の実施の形態のブロック図である。
【図２】本発明の第３の実施の形態のブロック図である。
【図３】３次の魔方陣の各例を示す図である。
【図４】本発明の実施例で用いる４次の魔方陣を示す図である。
【図５】本発明の各実施例で用いる入力情報と行位置指定情報と列位置指定情報と復元情報の各例を示す図である。
【図６】従来の符号変換方法の一例の説明図である。
【符号の説明】
Ａ  符号化装置
ａ  符号化部
Ｂ、Ｂ´  復号化装置
ｂ、ｂ´  復号化部
Ｍ  符号化用魔方陣
Ｍ´  復号化用方陣
ＲＣ  行列指定部
ＲＣｒ  行指定部
ＲＣｃ  列指定部
ＲＰ  行位置指定情報
ＣＰ  列位置指定情報
ＭＸ  行列合成部
【図１】
0003573672.tif 000002
【図２】
0003573672.tif 000003
【図３】
0003573672.tif 000004
【図４】
0003573672.tif 000005
【図５】
0003573672.tif 000006
【図６】
0003573672.tif 000007