(57)【要約】本発明は、データを暗号化して伝送するデータ伝送方法、データ伝送装置、データ送信装置並びにデータ受信装置に関し、データを安全に伝送できるデータ伝送方法、データ伝送装置及びデータ送信装置並びにデータ受信装置を提供することを目的としており、送信側から受信側にデータを伝送するデータ伝送方法において、送信側から受信側に供給するデータを暗号化するための演算アルゴリズムを受信側から暗号化して受信側から送信側に送信するようにした。
2002089397.tif 000002
【特許請求の範囲】
【請求項１】
送信側から受信側にデータを伝送するデータ伝送方法において、
前記送信側から前記受信側に供給するデータを暗号化するための演算アルゴリズムを前記受信側から暗号化して前記受信側から前記送信側に送信することを特徴とするデータ伝送方法。
【請求項２】
前記暗号化された前記演算アルゴリズムを復号化するための演算アルゴリズムを暗号化して前記受信側から前記送信側に送信することを特徴とする請求項１記載のデータ伝送方法。
【請求項３】
前記暗号化及び復号化を複数回繰り返すことにより、前記データを暗号化するための演算アルゴリズムを復号化することを特徴とする請求項２記載のデータ伝送方法。
【請求項４】
前記演算アルゴリズムは、前記データ毎に異なるようにすることを特徴とする請求項１乃至３のいずれか一項記載のデータ伝送方法。
【請求項５】
前記データを複数のビット列に分解し、各ビット列毎に前記演算アルゴリズムを異ならせることを特徴とする請求項１乃至４のいずれか一項記載のデータ伝送方法。
【請求項６】
送信側から受信側にデータを伝送するデータ伝送装置において、
前記送信側に設けられ、前記受信側に伝送するデータを予め設定された演算アルゴリズムに基づいて暗号化するデータ暗号化手段と、
前記受信側に設けられ、前記演算アルゴリズムにより暗号化されたデータを予め設定された演算アルゴリズムに基づいて復号化するデータ復号化手段と、
前記受信側に設けられ、前記データ暗号化手段に設定する演算アルゴリズムを暗号化する演算アルゴリズム暗号化手段と、
前記送信側に設けられ、前記演算アルゴリズム暗号化手段により暗号化された前記演算アルゴリズムを復号化し、前記データ暗号化手段に設定する演算アルゴリズム復号化手段とを有することを特徴とするデータ伝送装置。
【請求項７】
前記演算アルゴリズム復号化手段は、予め設定された演算アルゴリズムにより復号化を行う構成とされ、
前記受信側に設けられ、前記演算アルゴリズム復号化手段を復号化するための演算アルゴリズムを暗号化する第２の演算アルゴリズム暗号化手段と、
前記送信側に設けられ、前記第２の演算アルゴリズム暗号化手段で暗号化された演算アルゴリズムを復号化する第２の演算アルゴリズム復号化手段とを少なくとも一段有することを特徴とする請求項７記載のデータ伝送装置。
【請求項８】
前記演算アルゴリズムは、前記データ毎に異なるが用いられることを特徴とする請求項６又は７のいずれか一項記載のデータ伝送装置。
【請求項９】
前記データを複数のビット列に分解し、各ビット列毎に前記演算アルゴリズムを異ならせることを特徴とする請求項６乃至８のいずれか一項記載のデータ伝送装置。
【請求項１０】
受信側にデータを伝送するデータ送信装置において、
前記受信側に伝送するデータを予め設定された演算アルゴリズムに基づいて暗号化するデータ暗号化手段と、
前記受信側から暗号化された送信された前記演算アルゴリズムを復号化する演算アルゴリズム復号化手段を有することを特徴とするデータ送信装置。
【請求項１１】
送信側からのデータを受信するデータ受信装置において、
前記送信側から伝送されたデータを予め設定された演算アルゴリズムに基づいて復号化するデータ復号化手段と、
前記データを暗号化する演算アルゴリズムを暗号化する演算アルゴリズム暗号化手段とを有することを特徴とするデータ受信装置。
【請求項１２】
データを記憶するファイル装置において、
前記データを暗号化する暗号化手段と、
前記暗号化手段で暗号化されたデータを記憶する記憶手段と、
前記記憶手段から読み出されたデータを復号化する復号化手段とを有することを特徴とするファイル装置。
【請求項１３】
前記データは、記憶データ、スクランブルパターン及びパスワードから構成され、
前記暗号化手段は、前記記憶データを前記スクランブルパターンで暗号化し、前記パスワードで前記スクランブルパターンを暗号化して前記記憶手段に記憶することを特徴とする請求項１２記載のファイル装置。
【発明の詳細な説明】
技術分野
本発明はデータ伝送方法、データ伝送装置及びデータ送信装置並びにデータ受信装置に係り、データを暗号化して伝送するデータ伝送方法、データ伝送装置、データ送信装置並びにデータ受信装置に関する。
背景の技術
従来、本人の認証を行なう方法としては、キーコードが記憶された磁気カードやＩＣカードなどを用いるのが一般的である。このような認証方式で、本人の認証を行なう場合、磁気カードやＩＣカードをカードリーダに挿入する。カードリーダは、磁気カードやＩＣカードに記憶されたキーコードを読み取り、予め登録あるいは入力されたキーコードと比較し、一致すると、本人であると認証するようにしていた。
このとき、従来の磁気カードやＩＣカードはカードリードにより読み出されるデータが１対１でキーコードに対応していた。
しかるに、従来の磁気カードやＩＣカードでは、カードから読み出されるデータがキーコードに１対１で対応していたため、カードを読み取ることにより得たデータはスクランブルがかけられていたとしても単一なものであり、解読機械などにかければ、容易にキーコードを再現できるため、セキュリティーが万全でない。そこで、データを安全に伝送できるデータ伝送方法、データ伝送装置及びデータ送信装置並びにデータ受信装置が望まれている。
発明の開示
本発明は、送信側から受信側にデータを伝送するデータ伝送方法において、送信側から受信側に供給するデータを暗号化するための演算アルゴリズムを受信側から暗号化して受信側から送信側に送信するようにする。
また、本発明は、さらに、暗号化された演算アルゴリズムを復号化するための演算アルゴリズムを暗号化して受信側から送信側に送信するようにする。
さらに、本発明は、暗号化及び復号化を複数回繰り返すことにより、データを暗号化するための演算アルゴリズムを復号化するようにする。
また、演算アルゴリズムを、データ毎に異なるようにする。
さらに、データを複数のビット列に分解し、各ビット列毎に演算アルゴリズムを異ならせるようにする。
また、本発明は、受信側にデータを伝送するデータ送信装置において、受信側に伝送するデータを予め設定された演算アルゴリズムに基づいて暗号化するデータ暗号化手段と、受信側から暗号化された送信された演算アルゴリズムを復号化する演算アルゴリズム復号化手段とを設けてなる。
さらに、本発明は、送信側からのデータを受信するデータ受信装置において、送信側から伝送されたデータを予め設定された演算アルゴリズムに基づいて復号化するデータ復号化手段と、データを暗号化する演算アルゴリズムを暗号化する演算アルゴリズム暗号化手段とを設けてなる。
本発明によれば、データが暗号化するだけでなく、データを暗号化するための演算アルゴリズムも暗号化されるので、データのセキュリティー性を向上させることができる。
発明を実施するための最良の形態
図１に本発明の第１実施例のシステム構成図を示す。
本実施例のシステム１は、ＩＣカード２、ＩＣカードリーダ３、処理装置４から構成される。
ＩＣカード２は、認証番号などの情報が予め記録されている。ＩＣカードリーダ３は、ＩＣカード２に記憶された情報を読み取る。ＩＣカードリーダ３から読み取られた情報は処理装置４に供給され、ＩＣカードリーダ３から読み取られた情報に基づいて認証を行なう。また、処理装置４は、ＩＣカードリーダ３での認証結果、認証された場合には処理を可能となり、認証されない場合には処理は行なえないように制御される。
このとき、本実施例のシステム１では、ＩＣカード２の情報をＩＣカードリーダ３に読み取らせる際に、ＩＣカード２と処理装置４とで協働して、情報に動的にスクランブルがかかるように動作する。
図２に本発明の一実施例の要部のブロック構成図を示す。
ＩＣカード２は、記憶部１１、パスワード入力機構１２、可変演算アルゴリズム回路１３、１４から構成される。記憶部１１及びパスワード入力機構１２は、ＲＯＭから構成される。記憶部１１には、識別番号ＩＤが予め記憶される。パスワード入力機構１２には、パスワードが予め記憶される。なお、パスワード入力機構１２として、指紋入力装置を用いてもよい。
可変演算アルゴリズム回路１３、１４は、アドレス、データリード、データライトの３ポートのＲＡＭから構成される。
可変演算アルゴリズム回路１３は、アドレスポート及びデータライトポートがＩＣカードリーダ３に接続され、データリードポートが可変演算アルゴリズム回路１４のデータライトポートに接続される。すなわち、可変演算アルゴリズム回路１３は、ＩＣカードリーダ３からの所定の演算アルゴリズムの演算結果がプログラムされ、ＩＣカードリーダ３からの入力値として入力され、入力値に応じた演算結果を可変演算アルゴリズム回路１４に供給する。
可変演算アルゴリズム回路１４は、アドレスポートが記憶部１１及びパスワード入力機構１２に接続され、データライトポートが可変演算アルゴリズム回路１４のデータリードポートに接続され、データリードポートがＩＣカード２の出力データとされる。すなわち、可変演算アルゴリズム回路１４は、可変演算アルゴリズム回路１３の演算アルゴリズムの演算結果がプログラムされ、記憶部１１に記憶されたＩＤ又はパスワード入力機構１２により入力されたパスワードが入力値として入力され、入力値に応じてプログラムされた演算結果が出力され、ＩＣカードリーダ３に供給される。
ＩＣカードリーダ３は、ＩＣカード２との接続接点を有し、ＩＣカード２が挿入されて、ＩＣカード２との情報の交換を行なう。また、ＩＣカードリーダ３は、インタフェースを介して処理装置４に接続されており、ＩＣカード２と処理装置４のインタフェースをとる。
処理装置４は、インタフェースボード２０、認証部３０、処理部４０、入出力部５０から構成される。
インタフェースボード２０は、可変演算アルゴリズム回路２１、２２、演算アルゴリズム書込回路２３、２４、乱数発生器２５、制御回路２６から構成される。
可変演算アルゴリズム回路２１は、アドレスポートにＩＣカード２の可変演算アルゴリズム回路１４の演算結果が供給され、データライトポートに演算アルゴリズム書込回路２３からの演算アルゴリズムによる演算結果が供給され、データリードポートからの演算結果は、認証部３０に供給される。可変演算アルゴリズム回路２１は、演算アルゴリズム書込回路２２からの所定の演算アルゴリズムｆによる演算結果が書き込まれ、ＩＣカード２の可変演算アルゴリズム回路１４からの出力に応じた演算結果を出力し、認証部３０に供給する。
可変演算アルゴリズム回路２２は、アドレスポートに演算アルゴリズム書込回路２３から所定の演算アルゴリズムｆの入力値が供給され、データライトポートに演算アルゴリズム書込回路２４から所定の演算アルゴリズムｇの演算結果が供給され、データリードポートからの演算結果は、ＩＣカード２の可変演算アルゴリズム回路１３のアドレスポートに供給される。可変演算アルゴリズム回路２２は、演算アルゴリズム書込回路２４からの所定の演算アルゴリズムｇによる演算結果が書き込まれ、演算アルゴリズム書込回路２３から演算アルゴリズムｆを入力とした演算結果を出力し、ＩＣカード２に供給する。
ここで、可変演算アルゴリズム回路１３、１４、２１、２２について詳細に説明する。
図３に本発明の一実施例の可変演算アルゴリズム回路のデータ構成図を示す。
可変演算アルゴリズム回路１３、１４，２１，２２は、通常の半導体メモリと同様な構成とされており、アドレスＡ１〜Ａｎに対応してデータＤ１〜Ｄｎが格納される。可変演算アルゴリズム回路１３、１４、２１、２２には、所定の演算アルゴリズムの入力値をアドレスとしたときの所定の演算アルゴリズムの演算結果がデータとして格納される。
ここで、図２に戻って説明を続ける。
演算アルゴリズム書込回路２３は、演算アルゴリズムｆ１を復号化する演算アルゴリズムｇ１の演算結果を発生し、可変演算アルゴリズム回路２１にデータとして書き込むとともに、演算アルゴリズムｆ１を可変演算アルゴリズム回路２２のアドレスとして出力する。また、演算アルゴリズム書込回路２４は、演算アルゴリズムｆ２の演算結果を発生し、可変演算アルゴリズム回路２２のライトデータとして供給するとともに、演算アルゴリズムｆ２を復号化する演算アルゴリズムｇ２を可変演算アルゴリズム回路１３のライトデータとして供給する。
このとき、演算アルゴリズム書込回路２３、２４は、乱数発生器２５から乱数が供給され、乱数により演算アルゴリズムｆ２、ｇ１を決定し、決定された演算アルゴリズムｆ２、ｇ１に基づいて演算アルゴリズムｆ１、ｇ１を決定している。このため、演算アルゴリズム書込回路２３、２４は、毎回異なる演算アルゴリズムを可変演算アルゴリズム回路１３、１４、２１、２２に設定することができる。認証部３０は、可変演算アルゴリズム回路２１からの演算結果に基づいて認証結果を出力する。
次に、ＩＣカード２からＩＣカードリーダ３にＩＤ及びパスワードを送信するときの動作について説明する。
ＩＣカード２がＩＣカードリーダ３に挿入されると、ＩＣカードリーダ３の制御部２７はＩＣカード２がＩＣカードリーダ３に挿入されたことを検出する。制御部２７はＩＣカード２がＩＣカードリーダ３に挿入されたことを検出すると、乱数発生器２５を制御して乱数を発生する。乱数発生器２５で発生された乱数は、演算アルゴリズム書込回路２４に供給される。演算アルゴリズム書込回路２４は、乱数に応じた演算結果ｆ２を出力する。なお、演算結果ｆ２は、乱数そのものであってもよい。
演算アルゴリズム書込回路２４から出力された演算結果ｆ２は、可変演算アルゴリズム回路２２のライトデータとして供給される。また、演算アルゴリズム書込回路２４は、演算結果ｆ２を復号化する演算結果ｇ２を生成し、出力する。演算アルゴリズム書込回路２４から出力された演算結果ｆ２は、ＩＣカードリーダ３を介して可変演算アルゴリズム回路１３にライトデータとして供給される。
一方、演算アルゴリズム書込回路２３は、乱数に応じた演算結果ｇ１を生成し、可変演算アルゴリズム回路２１のライトデータとして出力する。また、このとき、演算アルゴリズム書込回路２３は、演算結果ｇ１を復号化する演算結果ｆ１を生成し、可変演算アルゴリズム回路２２のアドレスとして出力する。
可変演算アルゴリズム回路２２は、演算アルゴリズム書込回路２３からの演算結果ｆ１に対応する演算結果ｆ２を出力する。可変演算アルゴリズム回路２２の出力データを関数で表すと、演算結果ｆ２の関数をＦ２、演算結果ｆ１の関数をＦ１のとき、Ｆ２（Ｆ１）となる。
可変演算アルゴリズム回路２２の出力データは、ＩＣカードリーダ３を介して可変演算アルゴリズム回路１３のアドレスポートに供給される。可変演算アルゴリズム回路１３は、可変演算アルゴリズム回路２２からの出力データに応じて演算アルゴリズム書込回路２４によって記憶された演算結果ｇ２を出力する。すなわち、可変演算アルゴリズム回路２２は、関数Ｆ２で暗号化された関数Ｆ１を関数Ｆ１に復号する。
可変演算アルゴリズム回路２２で復号された演算結果ｆ１は、可変演算アルゴリズム回路１４にライトデータとして供給される。可変演算アルゴリズム回路１４には、関数Ｆ１の演算結果ｆ１が入力値に対応したアドレスに記憶される。
可変演算アルゴリズム回路１４に関数Ｆ１が記憶されると、次に記憶部１１からＩＤが可変演算アルゴリズム回路１４のアドレスポートに供給される。
可変演算アルゴリズム回路１４は、ＩＤ及びパスワードを入力値として関数Ｆ１の演算結果ｆ１を出力する。可変演算アルゴリズム回路１４からの出力は、ＩＣカードリーダ３を介して可変演算アルゴリズム回路２１のアドレスポートに供給される。可変演算アルゴリズム回路２１には、演算アルゴリズム書込回路２３により関数Ｇ１の演算結果ｇ１が入力値をアドレスに対応させて記憶されている。関数Ｇ１は、関数Ｆ１からその入力値ｘ、記憶部１１からのＩＤ及びパスワード入力機構１２からのパスワードを復元する関数である。
可変演算アルゴリズム回路２１により復元されたＩＤ及びパスワードは、認証部３０に供給される。認証部３０は、可変演算アルゴリズム回路２１からの演算結果ｘが予め登録されたＩＤ及びパスワードか否かを検出し、予め登録されたＩＤ及びパスワードであれば、認証を行なう。認証部３０での認証結果は、処理部４０に供給される。処理部４０は、ＩＣカード２からのＩＤ及びパスワードが認証部３０で認証されると、入出力部５０の入出力を実行可能とし、処理を可能とする。
なお、インタフェースボード２０の各部は、制御回路２６により制御される。
このとき、本実施例によれば、可変演算アルゴリズム回路１３、１４、２１、２２により、ＩＣカード２から処理装置４にＩＤ及びパスワードを供給するときに処理装置４からの毎回不確定の関数でスクランブルされて、送信できる。また、処理装置４からＩＣカード２に送信される不確定の関数も毎回不確定の関数でスクランブルされて、送信される。
このため、ＩＣカード２からＩＣカードリーダ３に読み出されたＩＤ及びパスワードを読み取ったとしても読み取られた情報は暗号化されているので、解読できない。また、暗号化は、乱数に決定される毎回異なる関数により暗号化されるので、暗号を容易に暗号を解読することはできない。また、暗号を解読できたとしても次回の認証では異なる関数で暗号されるので、解読した暗号は何の意味も持たない。
また、ＩＣカード２からＩＤ又はパスワードを伝送する際、データ列のすべてを同一の演算アルゴリズムで暗号化するのではなく、データ列を複数に分割して各部分で異なる演算アルゴリズムで暗号を行なうようにしてもよい。
図４に本発明の第１実施例の変形例の動作説明図を示す。
図４に示すようにデータ列Ｄ０を複数のデータ部ｄ１〜ｄｎに分割し、データ部ｄ１を演算アルゴリズムｆ１によりスクランブルをかけてデータｆ１（ｄ１）として送信し、受信側で演算アルゴリズムｇ１によりデスクランブルを行ない、元のデータｄ１に復元し、データ部ｄ２を演算アルゴリズムｆ２によりスクランブルをかけて伝送データｆ２（ｄ２）として送信し、受信側で演算アルゴリズムｇ２によりデスクランブルを行ない、元のデータｄ２に復元する。同様に、データ部ｄｎを演算アルゴリズムｆｎによりスクランブルをかけて伝送データｆｎ（ｄｎ）として送信し、受信側で演算アルゴリズムｇｎによりデスクランブルを行ない、元のデータｄｎに復元する。
本実施例では、演算アルゴリズムｆ１〜ｆｎ及びｇ１〜ｇｎの書込を容易に行なえるので、簡単に実現することができる。これにより、伝送データ列Ｄ０を簡単にクラックすることはできなくなる。
なお、本実施例では、可変演算アルゴリズム回路を２段構成としたが、これに限定されるものではなく、複数段設けるようにしてもよい。
図５に本発明の第２実施例の要部のブロック構成図を示す。図４はデータを伝送する部分を記載したものであり、他の周辺回路の説明は省略した。
本実施例は、可変演算アルゴリズム回路をｎ数段設けることにより秘匿性を高めたシステムである。
本実施例の伝送システム１００は、第１〜第ｎの暗号化回路１０１−１〜１０１−ｎ、演算アルゴリズム書込回路１０２−１〜１０２−ｎ、乱数発生器１０３から構成される。
第１の暗号化回路１０１−１は、送信側から受信側に伝送する伝送データｘを暗号化する。また、第２〜第ｎの暗号化回路１０１−２〜１０１−ｎは、受信側から送信側に伝送する伝送データを暗号化する。演算アルゴリズム書込回路１０２−１〜１０２−ｎは、第１〜第ｎの暗号化回路１０１−１〜１０１−ｎでの暗号化のための演算アルゴリズムを決定する。
第１〜第ｎの暗号化回路１０１−１〜１０１−ｎは、夫々暗号化回路１０１ａ及び復号化回路１０１ｂから構成される。暗号化回路１０１ａは、データの書換可能なメモリから構成され、演算アルゴリズム書込回路１０２−１〜１０２−ｎにより設定された暗号化のための演算アルゴリズムが記憶される。復号化回路１０１ｂは、データの書換え可能なメモリから構成され、演算アルゴリズム書込回路１０２−１〜１０２−ｎにより設定された復号化のための演算アルゴリズムが記憶される。暗号化回路１０１ａ及び復号化回路１０１ｂには、演算アルゴリズムの入力値がアドレスとして設定され、演算結果がデータとして記憶される。
演算アルゴリズム書込回路１０２−１〜１０２−ｎは、暗号化するための演算アルゴリズムとそれを復号化するための演算アルゴリズムとの対を作成して出力する。このとき、演算アルゴリズム書込回路１０２−１は、復号化のための演算アルゴリズムを第１の暗号化回路１０１−１の復号化回路１０１ｂに書き込み、暗号化のための演算アルゴリズムを第２の暗号化回路１０１−２を介して第１の暗号化回路１０１−２の暗号化回路１０１ａに書き込む。
また、演算アルゴリズム書込回路１０２−２〜１０２−（ｎ−１）は、ｉ段目の演算アルゴリズム書込回路１０２−ｉとすると、暗号化のための演算アルゴリズムを第ｉの暗号化回路１０１−ｉの暗号化回路１０１ａに書き込み、復号化のための演算アルゴリズムを第（ｉ＋１）の暗号化回路１０１−（ｉ＋１）を介して第ｉの暗号化回路１０１−ｉの復号化回路１０１ｂに書き込む。演算アルゴリズム書込回路１０２−ｎは、暗号化のための演算アルゴリズムを第ｎの暗号化回路１０１−ｎの暗号化回路１０１ａに書き込み、復号化のための演算アルゴリズムを第ｎの暗号化回路１０１−ｎの復号化回路１０１ｂに書き込む。
また、乱数発生器１０３は、演算アルゴリズム書込回路１０２−１〜１０２−ｎに乱数を供給する。演算アルゴリズム書込回路１０２−１〜１０２−ｎは、乱数発生器１０３から供給された乱数に基づいて演算アルゴリズムを生成する。なお、乱数発生器１０３から供給される乱数をそのまま暗号として用いるようにしてもよい。
本実施例によれば、送信側から受信側に伝送される伝送データが暗号化されるだけでなく、その暗号化に用いられる演算アルゴリズムを暗号化して受信側から送信側に伝送し、さらに、暗号化のための演算アルゴリズムを暗号化する演算アルゴリズムをｎ段にわたって暗号化するので、容易に暗号を解くことができない。
なお、本実施例では、本発明の暗号化回路をｎ段カスケードに接続することにより暗号化したが、１段の暗号化回路の入出力をｎ回ループさせる構成も考えられる。
図６に本発明の第３実施例の要部のブロック構成図を示す。
本実施例のシステム２００は、可変演算アルゴリズム回路２０１、２０２、演算アルゴリズム書込回路２０３、メモリ２０４、パス切換スイッチ２０５〜２０９から構成される。
可変演算アルゴリズム回路２０１、２０２は、データ書換え可能なメモリから構成され、演算アルゴリズム書込回路２０３で発生された演算アルゴリズムが書き込まれる。
メモリ２０４は、可変演算アルゴリズム回路２０１の出力データを記憶する。パス切換スイッチ２０５〜２０９は、パスの切換を行なう。
伝送データｘを送信側から受信側に伝送する場合には、まず、演算アルゴリズム書込回路２０３によりパス切換スイッチ２０５〜２０９を破線のパスが形成されるように切り換える。次に演算アルゴリズム書込回路２０３により可変演算アルゴリズム回路２０２に暗号化するための演算アルゴリズムを書き込むとともに、パス切換スイッチ２０６を介して可変演算アルゴリズム回路２０１に復号化するための演算アルゴリズムを書き込む。可変演算アルゴリズム回路２０１、２０２には、演算アルゴリズムの入力値をアドレスとして、入力値に対応するアドレスにその演算結果が書き込まれる。
演算アルゴリズム書込回路２０３から可変演算アルゴリズム回路２０１、２０２に互いに対応する演算アルゴリズムが書き込まれると、次に演算アルゴリズム書込回路２０３からパス切換スイッチ２０８を介して可変演算アルゴリズム回路２０２のアドレスに暗号化された暗号が供給される。暗号は、可変演算アルゴリズム回路２０２により暗号化され、パス切換スイッチ２０９、２０５を介して可変演算アルゴリズム回路２０２に供給される。
可変演算アルゴリズム回路２０２は、可変演算アルゴリズム回路２０２からの伝送データを復号化する。可変演算アルゴリズム回路２０２で復号化された伝送データは、パス切換スイッチ２０７を介してメモリ２０４に供給され、メモリ２０４に記憶される。
次に、演算アルゴリズム回路２０３からメモリ２０４に伝送した暗号を復号するための演算アルゴリズムを可変演算アルゴリズム回路２０２に書き込む。また、パス切換スイッチ２０５〜２０９を実線に示すパスが形成されるように切り換えて、メモリ２０４に記憶された暗号化データを可変演算アルゴリズム回路２０１に書き込む。
次に、可変演算アルゴリズム回路２０１のアドレスに伝送しようとするデータｘを供給する。伝送データｘは、可変演算アルゴリズム回路２０１により暗号化され、パス切換スイッチ２０７、２０８を介して可変演算アルゴリズム回路２０２に供給される。可変演算アルゴリズム回路２０２は、可変演算アルゴリズム回路２０１で暗号化されたデータを送信側から送信されたデータｘに復号化する。可変演算アルゴリズム回路２０１で復号化されたデータは、パス切換スイッチ２０９を介して出力される。
なお、本実施例では、暗号を１回暗号化した後に、伝送データｘを送信したが、暗号をｎ回ループさせた後に伝送データｘを送信するようにしてもよい。このようにすることにより高度に暗号化を行なうことができる。
なお、上記の実施例では、ＩＣカードの認証を行なうシステムに本発明を適用する場合について説明したが、これに限定されるものではなく、例えば、クライアントからサーバのファイルへのアクセスに対して適用できる。
図７に本発明の第３実施例のシステム構成図を示す。
本実施例のシステム３００は、サーバ３０１、ネットワーク３０２、クライアント３０３−１〜３０３−ｎから構成される。
サーバ３０１は、ネットワーク３０２を介してクライアント３０３−１〜３０３−ｎに接続されている。サーバ３０１とクライアント３０３−１〜３０３−ｎとの間でネットワーク３０２を介してファイルの伝送を行なう。
次にサーバ３０１について詳細に説明する。
図８は本発明の第３実施例のサーバのブロック構成図を示す。
サーバ３０１は、通信制御部３１１、データ変換部３１２−１〜３１２−ｎ、ファイル制御部３１３、ファイル装置３１４、制御部３１５から構成される。通信制御部３１１は、ネットワーク３０２との通信制御を行なう。データ変換部３１２−１〜３１２−ｎは、クライアント３０３−１〜３０３−ｎに対応して設けられており、後述するようにデータの変換を行なう。
ファイル制御部３１３は、ファイル装置３１４を制御して、ファイルのリードライトを行なう。ファイル装置３１４は、クライアント３０３−１〜３０３−ｎからのファイルを記憶する。
次にデータ変換部３１２−１〜３１２−ｎについて詳細に説明する。
図９に本発明の第３実施例のデータ変換部のブロック構成図を示す。
データ変換部３１２−１〜３１２−ｎは、クライアント３０１−１〜３０３−ｎに対応して設けられており、対応するクライアントによってデータを読み出させるように構成されている。
データ変換部３１２−１〜３１２−ｎのうちの１つのデータ変換部３１２−ｉは、入出力部３２１、可変演算アルゴリズム回路３２２、制御部３２３、パス切換スイッチ３２５、３２６から構成される。
入出力部３２１は、クライアント３０３−ｉからのファイルの入出力を制御する。可変演算アルゴリズム回路３２２は、制御部３２３により書き込まれた演算アルゴリズムに応じてファイルを暗号化又は復号化する。可変演算アルゴリズム回路３２２は、読み書き可能なメモリから構成され、演算アルゴリズムの入力値をアドレスとして、その演算結果がデータとして記憶される。
制御部３２３は、可変演算アルゴリズム回路３２２への演算アルゴリズムの書込を制御する。パス切換スイッチ３２４及び３２５は、制御部３２３により制御され、ファイルの書込時とファイルの読出し時とでパスの切換を行なう。
次に、データ変換部３１２−ｉの動作を説明する。
まず、ファイル装置３１４へのファイルの書込について説明する。
クライアント３０３−ｉからファイル装置３１４にファイルを書き込む場合には、パス切換スイッチ３２４、３２５を実線に示すパスに切り換える。次にクライアント３０３−ｉから演算アルゴリズムを決定するための情報が制御部３２３に供給される。この情報は、例えば、クライアント３０３−ｉの識別番号などであってもよい。
制御部３２３は、クライアント３０３−ｉからの情報に応じて演算アルゴリズムｇｉを生成する。制御部３２３で生成された演算アルゴリズムｆｉは、可変演算アルゴリズム回路３２２に書き込まれる。
可変演算アルゴリズム回路３２２に演算アルゴリズムｆｉが書き込まれると、クライアント３０３−ｉからのファイルをパス切換スイッチ３２４を介して可変演算アルゴリズム回路３２２に供給する。可変演算アルゴリズム回路３２２は、ファイルを演算アルゴリズムｆｉにより暗号化してパス切換スイッチ３２５を介してファイル装置３１４に供給する。以上により、クライアント３０３−ｉからのファイルｘは、ｆｉ（ｘ）に暗号化されてファイル装置３１４に記憶される。
ファイル装置３１４からクライアント３０３−ｉにファイルｘを読み出す場合には、パス切換スイッチ３２４、３２５を破線に示すパスに切り換える。次に制御部３２３は、演算アルゴリズムｆｉを復号するための演算アルゴリズムｇｉを決定する。制御部３２３は、クライアント３０３−１〜３０３−ｎ毎にファイル書込時の演算アルゴリズムｆｉを管理していて、クライアント３０３−１〜３０３−ｎからの要求により対応する演算アルゴリズムｆｉを読み出す。制御部３２３は、例えば、クライアント３０３−ｉからのパスワードの入力によって、演算アルゴリズムｆｉを読み出す。
制御部３２３は、演算アルゴリズムｆｉに基づいて演算アルゴリズムｆｉから元のファイルを復号化するための演算アルゴリズムｇｉを生成する。制御部３２３で生成された演算アルゴリズムｇｉは、可変演算アルゴリズム回路３２２に書き込まれる。
可変演算アルゴリズム回路３２２に演算アルゴリズムｇｉが書き込まれると、ファイル装置３１４からのファイルｆｉ（ｘ）がパス切換スイッチ３２４を介して可変演算アルゴリズム回路３２２に供給される。可変演算アルゴリズム回路３２２は、ファイルを演算アルゴリズムｇｉにより復号化してパス切換スイッチ３２５を介して入出力部３２１に供給する。以上により、ファイル装置３１４からのファイルｆｉ（ｘ）は、ファイルｘに復号化されてクライアント３０３−ｉに送信される。
なお、データ変換部３１２−ｉは、インタフェースボードなどとして提供される。
本実施例によれば、ファイルが暗号化された形成でファイルに記憶できるので、他の者から自分のファイルを参照されることがない。また、動作は、クライアント３０３−ｉとは関係なく、行なわれるので、操作性が良好である。
また、サーバ側では、通信制御部３１１とファイル装置３１４との間にデータ変換部３１２−ｉを設けるだけでよいので、簡単に実現できる。さらに、データ変換部３１２−ｉの構成もハード的に実現されているので、高速に変換を行なえる。また、変換もメモリを用いているだけであるので、簡単な構成で実現できる。
なお、スクランブルデータ、スクランブルパターン及びパスワードを用いて暗号化を行なうようにしてもよい。
図１０に本発明の第４実施例の要部のブロック構成図を示す。
図１０は本実施例のサーバの構成を示す。本実施例のサーバ４０１は、例えば、レンタルサーバである。サーバ４０１は、通信装置４０２、エンコーダ４０３、デコーダ４０４、演算装置４０５、ファイル処理部４０６、ファイル装置４０７から構成される。
通信装置４０２は、ネットワークを介してクライアントとの通信を行なう。エンコーダ４０３は、クライアントからのデータを所定の形式にエンコードする。デコーダ４０４は、エンコーダ４０３によりエンコードされたデータをデコードする。演算装置４０５は、図２、図５、図６、図９と同様な構成とされ、エンコーダ４０３からのデータを前述の如く暗号化するとともに、ファイル装置４０７からファイル処理部４０６を介して供給されたデータを復号化する。
ファイル処理部４０６は、エンコーダ４０３からのデータをファイル装置４０７に記憶するための処理を行なう。ファイル装置４０７は、ハードディスク装置から構成され、ファイル処理部４０６からのデータを記憶する。
このとき、クライアントから供給されるデータは、データ、スクランブルパターン及びパスワードから構成される。
図１１に本発明の第４実施例に用いられるデータのデータ構成図を示す。
クライアントから供給されるデータＤ０は、図１１に示すようにデータＤ１、スクランブルパターンＤ２、パスワードＤ３から構成される。
データＤ１は、演算装置４０５でスクランブルパターンＤ２及びパスワードＤ３により暗号化される。演算装置４０５で暗号化されたデータは、ファイル処理部４０６によりファイル装置４０７に記憶される。このとき、スクランブルパターンＤ２により演算装置４０５の乱数をコントロールして暗号化するようにしてもよい。なお、演算装置４０５には、乱数が保持される。
ファイル装置４０７に記憶されたデータは、ファイル処理部４０６により読み出される。ファイル処理部４０６は、データを暗号化した演算装置４０５に供給する。演算装置４０５は、データを元のデータに復号化する。演算装置４０５で復号化されたデータは、デコーダ４０４に供給される。デコーダ４０４は、データを元のデータにデコードする。デコーダ４０４でデコードされたデータは、通信装置４０２によりクライアントに供給される。
本実施例によれば、クライアントからのデータは、暗号化されてファイル装置４０７に記憶されるので、ファイル装置４０７の記憶データを参照しても元データを参照することはできない。よって、データの秘匿性を確保できる。
なお、本実施例では、サーバ側で暗号化を行なった場合について説明したが、クライアント側で暗号化を行ない、サーバのファイル装置に記憶するようにしてもよい。
図１２に本発明の第５実施例のブロック構成図を示す。
本実施例のシステム５００は、クライアント５０１とサーバ５０２とがネットワーク５０３を介して接続された構成とされている。
クライアント５０１には、ＩＣカード５０４が装着される。クライアント５０１は、データをＩＣカード５０４からのデータに基づいて暗号化してサーバ５０２に送信し、記憶する。
クライアント５０１は、暗号化／復号化部５１１、データ処理部５１２、通信部５１３から構成される。暗号化／復号化部５１１には、データ処理部５１２及びＩＣカード５０４からデータが供給される。暗号化／復号化部５１１は、データ処理部５１２からのデータをＩＣカード５０４からのデータにより暗号化するとともに、ＩＣカード５０４からのデータにより復号化する。
データ処理部５１２は、クライアント５０１側でのデータ処理を実行する。暗号化／復号化部５１１で暗号化されたデータは、データ処理部５１２により通信部５１３に供給される。通信部５１３は、サーバ５０２との通信を行なう。
サーバ５０２は、通信部５２１、データ処理部５２２、ファイル装置５２３から構成される。通信部５２１は、クライアント５０１との通信を行なう。
データ処理部５２２は、サーバ５０２内でのデータ処理を行なう。ファイル装置５２３は、クライアント５０１からのデータを記憶する。
このとき、暗号化／復号化部５１１は、図２、図５、図６、図９に示される演算装置と同様な構成とされており、暗号化、復号化を実行する。さらに、ＩＣカード５０４と暗号化／復号化部５１１とは、図２、図５、図６、図９に示される演算装置と同様な構成とし、ＩＣカード５０４と暗号化／復号化部５１１と間の通信の秘匿性を持たせるようにしてもよい。
本実施例によれば、クライアント５０１側で暗号化及び復号化を行ない、サーバ５０２に送信し、ファイル装置５２３に暗号化されたまま記憶する。このため、ネットワーク５０３、サーバ５０２でデータが参照されても、暗号化されたデータであるので、データを解読することはできない。また、データは、図２、図５、図６、図９に示される演算装置と同様な構成の暗号化／復号化部５１１で毎回異なるデータにより暗号化されるので、復号化することは困難である。
なお、図２、図５、図６、図９に示す演算装置は、ＲＡＭを用いたが、ＲＡＭとＲＯＭとを組み合わせた構成としてもよい。
例えば、パスワード、指紋を入力して、パスワードや指紋データによりＲＯＭを索引して、ＲＯＭの出力をアドレスとしてＲＡＭからデータを出力する。このとき、ＲＡＭは、図２、図５、図６、図９に示される演算装置と同様にデータが書き込まれるようにする。
図１３に本発明の一実施例の演算装置の変形例のブロック構成図を示す。
本変形例の演算装置６００は、入力装置６０１、ＲＯＭ６０２、ＲＡＭ６０３から構成される。入力装置６０１は、キーボード又は指紋入力装置などの構成される。なお、入力装置６０１は、キーボード、指紋入力装置に限定されるものではなく、データを入力できる構成であればよい。
入力装置６０１から入力されたデータは、ＲＯＭ６０２にアドレスとして供給される。ＲＯＭ６０２は、入力装置６０１からのデータに対応するアドレスのデータを出力する。ＲＯＭ６０２の出力データは、ＲＡＭ６０３にアドレスとして供給される。
ＲＡＭ６０３は、ＲＯＭ６０３からのデータに対応するアドレスのデータを出力する。このとき、ＲＡＭ６０３には、図２、図５、図６、図９に示される演算装置と同様にデータが書き込まれるようにする。
本変形例の演算装置をＩＣカード２、５０４に適用することによりデータの秘匿性を向上できる。
上述の如く、本発明によれば、データが暗号化するだけでなく、データを暗号化するための演算アルゴリズムも暗号化しておくことにより、データのセキュリティー性を向上させることができるなどの特長を有する。
本発明は上記の実施例に限定されるものではなく、本発明の範囲から逸脱することなく種々の変形例、適用例がなされるものである。
【図面の簡単な説明】
図１は、本発明の第１実施例のシステム構成図である。
図２は、本発明の一実施例の要部のブロック構成図である。
図３は、本発明の一実施例の可変演算アルゴリズム回路のデータ構成図である。
図４は、本発明の第１実施例の変形例の動作説明図である。
図５は、本発明の第２実施例の要部のブロック構成図である。
図６は、本発明の第３実施例の要部のブロック構成図である。
図７は、本発明の第３実施例のシステム構成図である。
図８は、本発明の第３実施例のサーバのブロック構成図である。
図９は、本発明の第３実施例のデータ変換部のブロック構成図である。
図１０は、本発明の第４実施例の要部のブロック構成図である。
図１１は、本発明の第４実施例に用いられるデータのデータ構成図である。
図１２は、本発明の第５実施例のブロック構成図である。
図１３は、本発明の一実施例の演算装置の変形例のブロック構成図である。
【図１】
2002089397.tif 000003
【図２】
2002089397.tif 000004
【図３】
2002089397.tif 000005
【図４】
2002089397.tif 000006
【図５】
2002089397.tif 000007
【図６】
2002089397.tif 000008
【図７】
2002089397.tif 000009
【図８】
2002089397.tif 000010
【図９】
2002089397.tif 000011
【図１０】
2002089397.tif 000012
【図１１】
2002089397.tif 000013
【図１２】
2002089397.tif 000014
【図１３】
2002089397.tif 000015
【手続補正書】
【提出日】平成15年5月2日(2003.5.2)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
送信側から受信側にデータを伝送するデータ伝送方法において、
アドレスが入力とされ、演算結果が出力データとされたメモリから構成される演算アルゴリズム回路を有し、
前記送信側から前記受信側に供給するデータを暗号化するための演算アルゴリズム回路のデータを前記受信側で暗号化して、前記受信側から前記送信側に送信し、前記送信側の演算アルゴリズム回路のデータを書き換えることを特徴とするデータ伝送方法。
【請求項２】
前記暗号化された前記演算アルゴリズムを復号化するための演算アルゴリズムを暗号化して、前記受信側から前記送信側に送信し、
前記送信側の演算アルゴリズム回路のデータを書き換えることを特徴とする
請求項１記載のデータ伝送方法。
【請求項３】
前記暗号化及び復号化を複数回繰り返すことにより、前記データを暗号化するための演算アルゴリズムを復号化し、前記演算アルゴリズム回路に設定することを特徴とする請求項２記載のデータ伝送方法。
【請求項４】
前記演算アルゴリズム回路に設定される前記演算アルゴリズムは、前記データ毎に異なることを特徴とする請求項１乃至３のいずれか一項記載のデータ伝送方法。
【請求項５】
前記データを複数のビット列に分解し、各ビット列毎に、前記演算アルゴリズム回路に設定する前記演算アルゴリズムを異ならせることを特徴とする請求項１乃至４のいずれか一項記載のデータ伝送方法。
【請求項６】
送信側から受信側にデータを伝送するデータ伝送装置において、
前記送信側に設けられ、アドレスが入力とされ、その演算結果が出力データとされたメモリから構成された演算アルゴリズム回路を有し、前記受信側に伝送するデータを該演算アルゴリズム回路により、暗号化するデータ暗号化手段と、
前記受信側に設けられ、アドレスが入力とされ、その演算結果が出力データとされたメモリから構成された演算アルゴリズム回路を有し、前記演算アルゴリズムにより暗号化されたデータを該演算アルゴリズム回路によりデータ復号化手段と、
前記受信側に設けられ、前記データ暗号化手段の演算アルゴリズム回路に設定する演算アルゴリズムを暗号化する演算アルゴリズム暗号化手段と、
前記送信側に設けられ、前記演算アルゴリズム暗号化手段により暗号化された前記演算アルゴリズムを復号化し、前記演算アルゴリズム回路に設定する演算アルゴリズム復号化手段とを有することを特徴とするデータ伝送装置。
【請求項７】
前記演算アルゴリズム復号化手段は、予め前記演算アルゴリズム回路に設定された演算アルゴリズムにより復号化を行う構成とされ、
前記受信側に設けられ、前記演算アルゴリズム復号化手段を復号化するための演算アルゴリズムを暗号化する第２の演算アルゴリズム暗号化手段と、
前記送信側に設けられ、前記第２の演算アルゴリズム暗号化手段で暗号化された演算アルゴリズムを復号化する第２の演算アルゴリズム復号化手段とを少なくとも一段有することを特徴とする請求項７記載のデータ伝送装置。
【請求項８】
前記演算アルゴリズムは、前記データ毎に異なることを特徴とする請求項６又は７のいずれか一項記載のデータ伝送装置。
【請求項９】
前記データを複数のビット列に分解し、各ビット列毎に前記演算アルゴリズム回路に設定する前記演算アルゴリズムを異ならせることを特徴とする請求項６乃至８のいずれか一項記載のデータ伝送装置。
【請求項１０】
受信側にデータを伝送するデータ送信装置において、
前記受信側に伝送するデータを、アドレスが入力とされ、演算結果が出力データとされたメモリから構成される演算アルゴリズム回路に設定された演算アルゴリズムに基づいて暗号化するデータ暗号化手段と、
前記受信側から暗号化された送信されたデータを、アドレスが入力とされ、演算結果が出力データとされたメモリから構成される演算アルゴリズム回路に設定された前記演算アルゴリズムに基づいて復号化する演算アルゴリズム復号化手段を有することを特徴とするデータ送信装置。
【請求項１１】
送信側からのデータを受信するデータ受信装置において、
前記送信側から伝送されたデータを、アドレスが入力とされ、演算結果が出力データとされたメモリから構成される演算アルゴリズム回路に設定された演算アルゴリズムに基づいて復号化するデータ復号化手段と、
前記データを、アドレスが入力とされ、演算結果が出力データとされたメモリから構成される演算アルゴリズム回路に設定された演算アルゴリズムに基づいて暗号化する演算アルゴリズム暗号化手段とを有することを特徴とするデータ受信装置。
【請求項１２】
データを記憶するファイル装置において、
前記データを、アドレスが入力とされ、演算結果が出力データとされたメモリから構成される演算アルゴリズム回路に設定された演算アルゴリズムに基づいて暗号化する暗号化手段と、
前記暗号化手段で暗号化されたデータを記憶する記憶手段と、
前記記憶手段から読み出されたデータを、アドレスが入力とされ、演算結果が出力データとされたメモリから構成される演算アルゴリズム回路に設定された演算アルゴリズムに基づいて復号化する復号化手段とを有することを特徴とするファイル装置。
【請求項１３】
前記データは、記憶データ、スクランブルパターン及びパスワードから構成され、
前記暗号化手段は、前記記憶データを前記スクランブルパターンが演算アルゴリズムとして設定された演算アルゴリズム回路に基づいて暗号化し、
前記パスワードに基づいて演算アルゴリズムが設定された演算アルゴリズム回路に基づいて前記スクランブルパターンを暗号化して前記記憶手段に記憶することを特徴とする請求項１２記載のファイル装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００２
【補正方法】変更
【補正の内容】
【０００２】
アドレスが入力とされ、演算結果が出力データとされたメモリから構成される演算アルゴリズム回路を有し、送信側から受信側に供給するデータを暗号化するための演算アルゴリズム回路により暗号化して、送信側に送信し、送信側の演算アルゴリズム回路のデータを書き換えることを特徴とする。
本発明によれば、アドレスが入力とされ、演算結果が出力データとされたメモリから構成される演算アルゴリズム回路のデータを演算アルゴリズムに応じて書き換えるだけで演算アルゴリズムを変更できるので、簡単な構成で演算アルゴリズムの変更が可能であり、また、データを暗号化するだけでなく、データを暗号化するための演算アルゴリズムも暗号化されるので、データのセキュリティー性を向上させることができる。
図面の簡単な説明
図１は、本発明の第１実施例のシステム構成図である。
図２は、本発明の一実施例の要部のブロック構成図である。
図３は、本発明の一実施例の可変演算アルゴリズム回路のデータ構成図である。
図４は、本発明の第１実施例の変形例の動作説明図である。
図５は、本発明の第２実施例の要部のブロック構成図である。




【国際調査報告】
2002089397.tif 000016
2002089397.tif 000017
2002089397.tif 000018
2002089397.tif 000019