(57)【要約】　　　（修正有）【課題】個人情報の秘匿又は保護のため或いは有意情報の安全な管理のためインターネットなどでの通信の秘密を保全する、容易で安全な鍵による個人認証方法と秘密通信システムを提供する。【解決手段】完全な資格認証が、ハッカーたちのなり済ましを防ぎます。パスワードをやり取りしなければ盗まれても平気です。絶対に解読できない暗号はなくても、その気にさせない暗号は作れます。それも簡単に…ただ会員になるだけで。この発明はいわばローテクで共通鍵を使っていますが、そのぶんコンピュータの能力だけで済むわけでコストもかからず、安全な認証方法だといえます。【選択図】図３
2004147274.tif 000002
【特許請求の範囲】
【請求項１】
ディジタル文書の暗号文作成及びその翻訳において、以下の詳細に述べる時刻や履歴累計数などの値をもとにした時限鍵と、使用者固有の秘密鍵（以降簡略に個別鍵という）で、変爻ミニマムプログラム記述（以降簡略に変爻コード記述という）の重ね合わせ共通鍵を作成するプログラムでなされた鍵と錠を用いて装置や、講社、もしくは機構（以下システムという）を構成すること。
【請求項２】
講社員もしくは会員（以下会員という）に対し適正な個別鍵と秘密鍵を与え、その個別鍵と会員の個別情報（会員に附与されたコードネームなど）を管理保全することによって、会員本人がその個別情報を漏らすことなくその秘密を知っていることを、同プログラムでシステムに伝えるのみで認証を行い会員資格を与えること。
【請求項３】
前項にいう資格認証を受けた会員の同プログラムによる暗号通信に際して、もしくは未加入会員のシステムまたは会員への暗号通信に際して、適正な変爻コード記述共通鍵とプログラムを提供し、変爻コード記述型共通鍵または暗号文書の預託を受け、通信記録簿を保管し、また会員の請求により、適正な変爻コード記述共通鍵または暗号文書を送付すること。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、個人情報の秘匿又は保護のため或いは有意情報の安全な管理のためインターネットなどでの通信の秘密を保全する、容易で安全な鍵による個人認証方法と秘密通信システムである。
【０００２】
【従来の技術】
暗号化技術の流れは現今公開鍵と共通鍵の二通りあり、前者はＲＳＡ署名やエルガマル署名に代表されるもので、後者はアメリカのＤＥＳ規格のように実績のあるものや、各国各社の開発によるものなど様々であるが、暗号化の容易さと解読の困難さは逆比例のようでそれぞれ一長一短である。
【０００３】
【問題点】
公開鍵については述べない。共通鍵方式について言えば次のとおりである。
【０００４】
【問題点１】
トリプルＤＥＳの使用に見られるように、鍵の安全性の面から今のコンピュータ性能の進歩に対応する必要に迫られていること。
【０００５】
【問題点２】
相手ごとに共通鍵を作り、それを相手方に伝えなければならないこと。
【０００６】
【問題点３】
鍵を持つ双方とも鍵の管理に注意を払わなければならないこと。
【０００７】
【問題点４】
相手が増えて鍵が多くなれば、それだけ負担も増大することなどである。
【０００８】
【問題解決１】
通信のやり取りごとに増加する共有秘密の二値情報そのものを鍵に用いることで、またさらに重ね合わせることにより新しい鍵を作り、共通鍵の全数探索などの解読に充分耐えられるより解読しにくい暗号を作成できる。
【０００９】
【問題解決２】
会員それぞれが個別鍵を持っているので鍵のやり取りは不要になる。
【００１０】
【問題解決３】
鍵の管理はシステムが行い、使用者はポストに手紙を投函するようにシステムに対し相手に翻訳コード（宛て先と差出人の個別鍵との差分を修正した変爻コード記述共通鍵）を送付することを依頼するほかはメールを送るのと同じで済む。
【００１１】
【問題解決４】
同じ文であれば、一つの暗号文を作成するだけで多くに配信できる。
【００１２】
【その他の利点】
最初の全く見知らぬ相手同士の間の唯一の共通知識（世界標準時）を時限公知鍵として一時的な鍵に用いて、しかも使い捨てすることにより唯ひとつの固定的な個別鍵で使用のたびに異なる共通鍵を作る結果となる上に、暗号文の中に日付時分情報を附加する事にもなる。
【００１３】
【実現方法】
上記のことを実現するための時限鍵と個別鍵との重ね合わせ変爻コード記述共通鍵によるソフトウェア錠前共有システムについて述べる。なお「会員が・・」という表現は「会員のコンピュータプログラムが・・」ということであり、「システムが・・」という表現は「システムのサーバーコンピュータプログラムが・・」ということである。
【００１４】
【共通鍵での暗号化とは】
共通鍵方式の基本は変換と転置である。この出願文では二つをまとめて変爻という。元の平文を二進数のビットの集まりとみなし、数ビット毎あるいはバイト単位をユニットとして、鍵の値によって変わる変換と転置を繰り返し、まったくちがったものに変えてしまう。そしてその変換や転置は二度続けて行えば、結果が元に戻るものを選んでいるから、暗号化で用いた共通鍵と同じ鍵で逆の操作をすれば元の平文に戻る仕組みである。
【００１５】
【重ね合わせ共通鍵とは】
もし変換と転置に、単一の関数ではなく変換テーブルを用いればより複雑な処理が出来るのだが、この機構の欠点は処理をして元通りに戻る周期の短いものが多く鍵の値そのものを変換テーブルに用いても平文を暗号化するには使いものにならないのだ。しかしもう一つ変換テーブルを付け加えれば、すなわちもう一つ鍵をつけることになる。しかも日付時刻や履歴累計数情報（受付順位など）など変化する値を鍵として用いれば、それらの重ねあわせ（排他的論理和）が、ひとつの共通鍵となるのでいくつかの利点が生まれる
【００１６】
【変爻ミニマムプログラム記述とは】
暗号化においては、元の情報量と同じだけの情報量があればすべての変換を成立させるのに十分なのだが、それ以上の情報を付け加えてどのように転置を行うかを指定することも可能である。今までの共通鍵方式では、選りすぐった方法でひとつの暗号法を規定しさまざまな方式があるのだが、良いものも悪いものも、周期の短いものもそうでないものも選択しないで、ただ付け加えられた情報どおり転置を行うのが変爻ミニマムプログラムである。分割された情報ユニットを重複なしに転置させる方法については、様々に考えられ又そのために用いる情報量もコンピュータの能力に左右されるが、実例で用いたものでは１６ビットで６５５３６通り、他にも１６個のユニットで２６ビット或いは６４個のユニットで１２０ビットなどが考えうる。このように変換情報ばかりでなく、どのユニットとどれを転置させるかを指定するのが付け加えられた１６ビットのミニマムプログラムであり、冗長なぶんだけその表わせる数だけの新しい別々の暗号化法があるともいえる。
【００１７】
【個別鍵とは】
会員それぞれが固有の個別鍵を持っていれば、たとえば与えられた日付情報の値１で下４ビットのＥＸＯＲ（排他的論理和）をとり、与えられた会員情報の値２で下１ビットのＥＸＯＲ（排他的論理和）をとる共通鍵を作る個別鍵もあれば、別の個別鍵は与えられた日付情報の値１で下１ビットのＥＸＯＲ（排他的論理和）をとり、与えられた会員情報の値２で下４ビットのＥＸＯＲ（排他的論理和）をとる共通鍵を作るというように、当然それらは同じ日付情報、会員情報を用いてもまったく別の暗号文を生成する。
【００１８】
【会員資格の認証について】
自らの公開会員番号を知らせて会員資格の認定を求める会員に対し、システムがあなたのコードネームはこれですか？というようにコードネームと同じ長さのネーム（ただし乱数）を送れば、会員は自らの個別鍵と時限鍵からそのネームを暗号化して返す。それはそのネームに対する評価あるいは採点というべきものでコードネームそのものではないが、会員情報をもつシステムも同じ操作をして、もし一致すればその評価点数が、会員本人にしか作れないことからシステムは会員の資格を認めることが出来る。
【００１９】
【暗号文作成について】
会員とシステムにしか知りえない乱数（例えば先の評価点数をもう一度暗号化したものなど）を１〜数個用いて元の文とのＥＸＯＲ（排他的論理和）をとり、平文を暗号化することが出来る。乱数の長さが充分であれば、これをメールで送られてもあるいは横取りして読もうとしても作成者の個別鍵と作成日時、システムの送った乱数を知らない限り、システムから送付される翻訳コードなしには不可能である。
【００２０】
【翻訳コードとは】
翻訳コードというのは前の簡単な例でいえば、前者の時限鍵と個別鍵との共通鍵の値１２で作られた暗号文を後者が自分の個別鍵で読むには共通鍵２１を用いればよく、両者の時限鍵と個別鍵を知るシステムは前者の用いた共通鍵と二人の時限鍵と個別鍵の差分から簡単に作り出せる変爻コードのことである。
【００２１】
【解読について】
前に述べたように元に戻る周期の短いことがこの機構の欠点ではあるが、乱数から乱数への暗号化では平文へという解決基準がない為欠点は目立たない。
また平文から乱数への場合でも鍵の長さを充分長くすることで対応できる。このため鍵の解読には全数検索の必要があり、その手立てとしてこのプログラムを使う以上、出現する全ての周期の最小公倍数を元にするか、常に周期を監視しながら復元作業回数を決めなくてはならないため、一つ一つの鍵の検証に手間取ることが予想される。そして鍵の長さをプログラム次第で決めることが出来るので将来予想されるコンピュータの計算能力の進歩にも柔軟に対応できる。
【００２２】
【発明の実施の形態】
実施の例としてインターネット上にホームページを設置して、会員を募る会員制の暗号通信システムを想定する。Ｗｅｂサイトの運営には、ＨＴＭＬ文による表示とＪａｖａＳｃｒｉｐｔによる入出力情報の操作、会員側一時記憶としてＣｏｏｋｉｅ、そしてサーバー側にＰｅｒｌによるＣＧＩプログラムを用いて、能動的かつ柔軟なアクセスを可能にしたい。
【００２３】
【システムの持つ会員の個別情報】
システムは、公開会員番号と会員名や個別鍵、メールアドレス、名簿搭載期日を記した会員名簿と、毎日作られる前回のアクセス日時とその時に使用した鍵とを記録したファイルとを持っている。
【００２４】
【会員の持つ個別情報】
会員の持つコンピュータの一時記憶装置（Ｃｏｏｋｉｅ）には、公開会員番号と会員名とは別に秘密鍵として使用のたびに更新される、前回のアクセス日時とその時使用した乱数の一部か全部、または個別鍵の一部か全部を選んで自らの責任において保存することができる。このため会員認証の手続きすべてをコンピュータが行うことも可能であるが、また会員が前回のアクセス日時と、その時使用した秘密鍵の一部か或いは全部をシステムに通知した場合と個別鍵までシステムに通知した場合とで使用者の利用権限の差を設けることにより、一部を保存しないことによって特に会員が商店の場合、アンケート、顧客データ、商品の発注、契約書など秘密の重要度に応じて解読のみ、暗号化のみ、あるいはその両方と使い分けることができる。
【００２５】
【インターネットでの応用について】
以上のための錠前プログラムの例を図１と図２にフローチャートで示す。このプログラムはインターネットのホームページとして使用することを前提に作られているので、悪意あるものがこれを盗用し改竄して解読のために用いることも可能であるが、その労多くして益少なきことを知らせて、また改良を怠らなければ、公の利益は大きい。今インターネットにおいて個人情報の秘匿は不可に等しく、使いやすく安全な個人認証と暗号化システムは必ず必要になる。
【００２６】
【発明の効果】
しっかりした資格認証が出来ていれば、たとえ顔は見えていなくともなつかしい筆跡のあの人からの手紙と同じように安心してそのメールを受け取ることも出来、コンピュータ・ウイルスの心配もなく添付ファイルを開くこともできるはずです又それが誰にでも出来て、技術的な知識を必要としないものなら、安全な通信を願う人だけのホームページにアクセスして、会員になるだけで済むなら、そう願う人も多くなるはずです。
そしてもし、会員が増えて会員同士の信頼が集まれば、そのデジタル文書がたとえ暗号化されていなくても、資格認証だけで信頼できるものと認められるようになり　会員ばかりでなく全てのインターネット利用者にも安心を届けることになると確信しています。
【００２７】
【補足】
請求項３で云う未加入会員の同プログラムによる暗号文とは、定型文書において平文をすべて暗号化するのではなく、適正に設計された入力フォームによるアプリケーション文書の記入内容を抽出して暗号化したもので、その例として入会申込書とその処理の例をフローチャートに示して、図３として添付する。
【図面の簡単な説明】
【図１】
これは実例として、２００２年１０月２０日９時１７分に実行したものの初期値とその処理を表わしたものである。なお時限鍵のみで個別鍵については使用していないので、個別鍵の値が全て０であるときこのようになると解釈してください。また１ユニットを４ｂｉｔとし、全部で１６ユニットの計８バイトとしているため、初期値のうちのレジスタ配列Ｓ［０，１…１５］には、１０２００９１７という月　日　時　分を表わす文字のａｓｃｉ値の上下位が分割されて入っている。これを施錠する対象文字列として、フローチャートとサブルーチンによる処理を行うものとする。尚サブルーチン中の？？は、各レジスタ［０］〜［１５］について順次処理を行うという意味である。
【図２】開錠ルーチンの実施例であって、図１で暗号化したものを解読するものである。初期値のうちのＳ［０，１…１５］には、図１で暗号化された値が入っている。施錠ルーチンと異なるものは、引数１、引数２、引数３の値と、引数１の増分量だけで、戻り値Ｒ１［０，１…１５］には図１での初期値　１０２００９１７のａｓｃｉ値の上下位が入ることになる。
【図３】施錠ルーチンでは８バイト１単位のみを暗号化したのに対し、図３では実際の文を扱っている。しかし未加入者にはまだ個別鍵が、与えられていないので、補足（項目００２７）で云うように入力フォームを使うことと、与えられた一時鍵の開錠で、資格認定の代用としていることを承知してください。この通信での出自というのは、一時鍵を使う権利を持つ本人であるということである。また通信文には通信の名前、開錠した一時鍵、チェックのためＸ＾Ｙ（排他的論理和）、暗号化の種としてＭ＾Ｎ（排他的論理和）、本文（メールアドレス、公開会員名、会員リスト用コメント）が、あるのみで住民票コードや、電話番号は入っていないことに注意して頂きたい。請求項２のように、また会員資格の認証（項目００１８）でも述べたように、情報そのものではなく、また最小限の情報量を伝えることで、情報伝達を実現させている。
【図１】
2004147274.tif 000003
【図２】
2004147274.tif 000004
【図３】
2004147274.tif 000005