(57)【要約】【課題】耐タンパ機能を備えない情報制御装置間であっても、安全で秘匿な通信を実現するための認証方法および通信制御方法を提供すること。【解決手段】信頼される環境にて、秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）を情報制御装置内の記憶領域に格納する。更に、（１）入力側情報制御装置からの認証要求に対して認証制御装置がＫｐ＋Ｋｔ（ＲＮ）を各情報制御装置に送信、（２）各情報制御装置でＫｓ（Ｋｔ）を復号化して共通鍵Ｋｔを得て、Ｋｔ（ＲＮ）をＫｔで復号化してＲＮを得る、（３）入力側の情報制御装置がＫｔ（Ｄ＋ＲＮ）＋Ｈ［Ｄ＋ＲＮ］を送信、（４）Ｋｔ（Ｄ＋ＲＮ）をＫｔで復号化して（Ｄ＋ＲＮ）’ を得て、該（Ｄ＋ＲＮ）’に不可逆演算処理したＨ［（Ｄ＋ＲＮ）’］を取得して、受信したもののうちのＨ［Ｄ＋ＲＮ］と該Ｈ［（Ｄ＋ＲＮ）’］を比較して、一致した場合には受信したデータＤが正常であると判断する。【選択図】図３
2007251437.tif 000002
【特許請求の範囲】
【請求項１】
複数の情報制御装置及び認証制御装置からなるシステムにおいて、情報制御装置間の秘匿通信を実現させるための認証方法であって、
あらかじめ信頼される環境にて、秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）を前記情報制御装置内の記憶領域に格納し、
該暗号化情報Ｋｓ（Ｋｔ）を用いて認証処理を行うことを特徴とする認証方法。
【請求項２】
複数の情報制御装置及び認証制御装置からなるシステムにおいて、入力側の情報制御装置と出力側の情報制御装置の間の秘匿通信を実現するための認証方法であって、
あらかじめ信頼される環境にて、秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）を前記各情報制御装置内の記憶領域に格納し、
前記入力側の情報制御装置からの認証要求に応じて、前記認証制御装置は入力側、出力側それぞれの情報制御装置に、秘密鍵Ｋｓの公開鍵ペアであるＫｐと乱数ＲＮを共通鍵Ｋｔで暗号化したＫｔ（ＲＮ）、すなわちＫｐ＋Ｋｔ（ＲＮ）を送信し、
前記各情報制御装置は、前記認証制御装置から送られた公開鍵Ｋｐによって、自身が保持している暗号化情報Ｋｓ（Ｋｔ）を復号化して共通鍵Ｋｔを得、更に該共通鍵Ｋｔで前記認証制御装置から送られたＫｔ（ＲＮ）を復号化してＲＮを得、
前記入力側の情報制御装置は、送信したいデータＤに乱数ＲＮを追加したＤ＋ＲＮを共通鍵Ｋｔで暗号化したＫｔ（Ｄ＋ＲＮ）及びＤ＋ＲＮを不可逆演算処理したＨ［Ｄ＋ＲＮ］、すなわちＫｔ（Ｄ＋ＲＮ）＋Ｈ［Ｄ＋ＲＮ］を、前記認証制御装置を介して前記出力側の情報制御装置に送信し、
前記出力側の情報制御装置で、受信したもののうちＫｔ（Ｄ＋ＲＮ）を自身が保持する前記Ｋｔで復号化して（Ｄ＋ＲＮ）’ を得て、該（Ｄ＋ＲＮ）’に不可逆演算処理したＨ［（Ｄ＋ＲＮ）’］を取得して、受信したもののうちのＨ［Ｄ＋ＲＮ］と該Ｈ［（Ｄ＋ＲＮ）’］を比較して、一致した場合には認証する、
ことを特徴とする認証方法。
【請求項３】
更に、認証が終了した後、前記各情報制御装置において、前記共通鍵Ｋｔ、前記公開鍵Ｋｐを記憶領域から消去する、ことを特徴とする請求項２記載の認証方法。
【請求項４】
複数の情報制御装置及び認証制御装置からなるシステムにおいて、入力側の情報制御装置と出力側の情報制御装置の間の秘匿通信を実現するための通信制御方法であって、
あらかじめ信頼される環境にて、秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）を前記各情報制御装置内の記憶領域に格納し、
前記入力側の情報制御装置からの認証要求に応じて、前記認証制御装置は入力側、出力側それぞれの情報制御装置に、秘密鍵Ｋｓの公開鍵ペアであるＫｐと乱数ＲＮを共通鍵Ｋｔで暗号化したＫｔ（ＲＮ）、すなわちＫｐ＋Ｋｔ（ＲＮ）を送信し、
前記各情報制御装置は、前記認証制御装置から送られた公開鍵Ｋｐによって、自身が保持している暗号化情報Ｋｓ（Ｋｔ）を復号化して共通鍵Ｋｔを得、更に該共通鍵Ｋｔで前記認証制御装置から送られたＫｔ（ＲＮ）を復号化してＲＮを得、
前記入力側の情報制御装置は、送信したいデータＤに乱数ＲＮを追加したＤ＋ＲＮを共通鍵Ｋｔで暗号化したＫｔ（Ｄ＋ＲＮ）及びＤ＋ＲＮを不可逆演算処理したＨ［Ｄ＋ＲＮ］、すなわちＫｔ（Ｄ＋ＲＮ）＋Ｈ［Ｄ＋ＲＮ］を、前記認証制御装置を介して前記出力側の情報制御装置に送信し、
前記出力側の情報制御装置で、受信したもののうちＫｔ（Ｄ＋ＲＮ）を自身が保持する前記Ｋｔで復号化して（Ｄ＋ＲＮ）’ を得て、該（Ｄ＋ＲＮ）’に不可逆演算処理したＨ［（Ｄ＋ＲＮ）’］を取得して、受信したもののうちのＨ［Ｄ＋ＲＮ］と該Ｈ［（Ｄ＋ＲＮ）’］を比較して、一致した場合には受信したデータＤが正常であるものとし、該当する処理を行う、
ことを特徴とする通信制御方法。
【請求項５】
更に、前記該当する処理を終了した後、前記各情報制御装置において、前記共通鍵Ｋｔ、前記公開鍵Ｋｐを記憶領域から消去する、ことを特徴とする請求項４記載の通信制御方法。
【請求項６】
あらかじめ信頼される環境にて、秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）を格納する記憶部と、
暗号化鍵を用いて暗号化または復号化を実行する暗号／復号処理部と、
不可逆演算を行う不可逆演算を実行する不可逆演算処理部と、
他の装置と通信する通信部と、
を備え、
認証要求を前記通信部から送信し、
前記認証要求に対応して認証制御装置から送信された秘密鍵Ｋｓの公開鍵ペアであるＫｐと乱数ＲＮを共通鍵Ｋｔで暗号化したＫｔ（ＲＮ）であるＫｐ＋Ｋｔ（ＲＮ）を前記通信部にて受信し、
前記受信した公開鍵Ｋｐを用いて前記暗号／復号処理部にて、前記記憶部に格納されている暗号化情報Ｋｓ（Ｋｔ）を復号化して共通鍵Ｋｔを得、更に該共通鍵Ｋｔで前記認証制御装置から送られたＫｔ（ＲＮ）を復号化してＲＮを得、
入力側である場合、前記暗号／復号処理部にて送信したいデータＤに乱数ＲＮを追加したＤ＋ＲＮを共通鍵Ｋｔで暗号化したＫｔ（Ｄ＋ＲＮ）を生成し、また前記不可逆演算処理部にてＤ＋ＲＮを不可逆演算処理したＨ［Ｄ＋ＲＮ］を生成し、Ｋｔ（Ｄ＋ＲＮ）＋Ｈ［Ｄ＋ＲＮ］として前記通信部から出力側に送信し、
出力側である場合、前記通信部にて受信したもののうち、前記暗号／復号処理部にてＫｔ（Ｄ＋ＲＮ）を自身が保持する前記Ｋｔで復号化して（Ｄ＋ＲＮ）’ を得て、前記不可逆演算処理部にて該（Ｄ＋ＲＮ）’に不可逆演算処理してＨ［（Ｄ＋ＲＮ）’］を取得して、受信したもののうちのＨ［Ｄ＋ＲＮ］と該Ｈ［（Ｄ＋ＲＮ）’］を比較して、一致した場合には認証成立とし、受信したデータＤが正常であるとして該当する処理を行う、
ことを特徴とする情報制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の情報制御装置間で電子的な価値をやり取りする場合において、耐タンパ機能がない情報制御装置間であっても、認証を行いながら安全に情報を伝達することを可能とする認証方法及び通信制御方法に関わる。
【背景技術】
【０００２】
近年、電子チケットやポイントサービスなどの電子的な価値を利用したシステムが普及してきている。このようなシステムでは、複数の装置間において電子的な価値を送受信する必要があり、データを送受信する装置間でユーザの認証が必要となる。これらの認証処理には、公開鍵暗号方式による電子署名や、共通鍵を利用した相互認証方式などが用いられてきた。公開鍵暗号方式や、共通鍵を利用した相互認証方式では、それぞれの装置に、公開鍵や共通鍵を安全に格納するための耐タンパ機能を備えた領域、例えばＩＣカードモジュールなどを備え、該領域に公開鍵や共通鍵を格納して不正者などから情報を守るように構成されている。
【０００３】
しかし、これらの認証方式では前述のように公開鍵や共通鍵を格納するための耐タンパ性を備えた領域やその他の特殊な機能を備える必要があり、装置がコストアップしてしまうという課題があった。
【０００４】
このような課題を解決するために、例えば特許文献１では、耐タンパ機能のない携帯端末であっても、ユーザを安全に認証できるような認証システムを提案している。該認証システムでは、まず認証要求装置が、暗号化第一情報と第二情報を認証装置に向けて送信する。次に、暗号化第一情報と第二情報を受信した認証装置は、暗号化第一情報と第二情報が所定の関係であるかどうかを判断し、もし、所定の関係であれば、認証要求装置は認証装置により認証される。その結果、例えば、認証要求装置のユーザに対して決済処理が行われたり、鍵の解除がなされたりなどが行われるように構成されている。該文献には「認証要求装置側に暗号鍵などの秘密情報を格納しておく必要がなく、また暗号化を行う処理も必須ではない〔００５０〕」と記載されているが、該システムの暗号化第一情報は暗号化された情報であり、暗号化するためにはなんらかの暗号化鍵が必要であると考えられ、これをどのように保持するかが明示されておらず、認証が確実に機能しているのかどうか疑問が残る。
【特許文献１】特開２００４−３０４７５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
そこで、本発明の課題は、耐タンパ機能を備えない情報制御装置間であっても、安全で秘匿な通信を実現するための認証方法および通信制御方法を提供することにある。
【課題を解決するための手段】
【０００６】
上述の課題を解決するために本発明では、あらかじめ信頼される環境にて、秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）を情報制御装置内の記憶領域に格納するようにした。よって耐タンパ機能を備えない情報制御装置であっても、共通鍵を秘密鍵で暗号化して格納するため、例え情報制御装置の情報が不正者によって読み取られたとしても不正者は暗号化鍵そのものを入手することができない。
【０００７】
また、本発明では更に次のような手順を備えるように構成し、入力側の情報制御装置から出力側の情報制御装置への通信の際の認証と通信を実現するようにした。
（１）入力側の情報制御装置からの認証要求に応じて、認証制御装置はそれぞれの情報制御装置に、秘密鍵Ｋｓの公開鍵ペアであるＫｐと乱数ＲＮを共通鍵Ｋｔで暗号化したＫｔ（ＲＮ）、すなわちＫｐ＋Ｋｔ（ＲＮ）を送信する。
（２）各情報制御装置は、認証制御装置から送られた公開鍵Ｋｐによって、自身が保持している暗号化情報Ｋｓ（Ｋｔ）を復号化して共通鍵Ｋｔを得、更に認証制御装置から送られたＫｔ（ＲＮ）を得られた共通鍵Ｋｔで復号化してＲＮを得る。
（３）入力側の情報制御装置は、送信したいデータＤに乱数ＲＮを追加したＤ＋ＲＮを共通鍵Ｋｔで暗号化したＫｔ（Ｄ＋ＲＮ）に、Ｄ＋ＲＮを不可逆演算処理したＨ［Ｄ＋ＲＮ］を追加したもの、すなわちＫｔ（Ｄ＋ＲＮ）＋Ｈ［Ｄ＋ＲＮ］を送信する。
（４）出力側の情報制御装置で、受信したもののうちＫｔ（Ｄ＋ＲＮ）を自身が保持するＫｔで復号化して（Ｄ＋ＲＮ）’ を得て、該（Ｄ＋ＲＮ）’に不可逆演算処理したＨ［（Ｄ＋ＲＮ）’］を取得して、受信したもののうちのＨ［Ｄ＋ＲＮ］と該Ｈ［（Ｄ＋ＲＮ）’］を比較して、一致した場合には受信したデータＤが正常であると判断して、該データを利用しその後のアプリケーション処理などを実行する。
【０００８】
以上のような手順を備えることにより、耐タンパ機能を備えない情報制御装置間の認証、通信を実現することが可能である。また、更に、
（５）データの送受信やアプリケーション処理等の一連の処理が終了したのちは、情報制御装置において上記手順の（１）〜（４）によって得られた共通鍵Ｋｔ、公開鍵Ｋｐを情報制御装置の記憶領域から消去する。
という手順を加えることで、情報制御装置にはデータの送受信を実行するとき以外には暗号化鍵そのものが存在することがないため、不正を防止することが可能である。
【０００９】
本発明の一態様によれば、複数の情報制御装置及び認証制御装置からなるシステムにおいて、情報制御装置間の秘匿通信を実現させるための認証方法であって、あらかじめ信頼される環境にて、秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）を前記情報制御装置内の記憶領域に格納し、該暗号化情報Ｋｓ（Ｋｔ）を用いて認証処理を行うことを特徴とする。これにより、耐タンパ機能を備えない情報制御装置であっても、共通鍵を秘密鍵で暗号化して格納するため、例え情報制御装置の情報が不正者によって読み取られたとしても不正者は暗号化鍵そのものを入手することができない。
【００１０】
本発明の一態様によれば、複数の情報制御装置及び認証制御装置からなるシステムにおいて、入力側の情報制御装置と出力側の情報制御装置の間の秘匿通信を実現するための認証方法であって、あらかじめ信頼される環境にて、秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）を前記各情報制御装置内の記憶領域に格納し、前記入力側の情報制御装置からの認証要求に応じて、前記認証制御装置は入力側、出力側それぞれの情報制御装置に、秘密鍵Ｋｓの公開鍵ペアであるＫｐと乱数ＲＮを共通鍵Ｋｔで暗号化したＫｔ（ＲＮ）、すなわちＫｐ＋Ｋｔ（ＲＮ）を送信し、前記各情報制御装置は、前記認証制御装置から送られた公開鍵Ｋｐによって、自身が保持している暗号化情報Ｋｓ（Ｋｔ）を復号化して共通鍵Ｋｔを得、更に該共通鍵Ｋｔで前記認証制御装置から送られたＫｔ（ＲＮ）を復号化してＲＮを得、
前記入力側の情報制御装置は、送信したいデータＤに乱数ＲＮを追加したＤ＋ＲＮを共通鍵Ｋｔで暗号化したＫｔ（Ｄ＋ＲＮ）及びＤ＋ＲＮを不可逆演算処理したＨ［Ｄ＋ＲＮ］、すなわちＫｔ（Ｄ＋ＲＮ）＋Ｈ［Ｄ＋ＲＮ］を、前記認証制御装置を介して前記出力側の情報制御装置に送信し、前記出力側の情報制御装置で、受信したもののうちＫｔ（Ｄ＋ＲＮ）を自身が保持する前記Ｋｔで復号化して（Ｄ＋ＲＮ）’ を得て、該（Ｄ＋ＲＮ）’に不可逆演算処理したＨ［（Ｄ＋ＲＮ）’］を取得して、受信したもののうちのＨ［Ｄ＋ＲＮ］と該Ｈ［（Ｄ＋ＲＮ）’］を比較して、一致した場合には認証する、ことを特徴とする。これにより、耐タンパ機能を備えない情報制御装置間の認証を実現することが可能で、安全な秘匿通信を行うことができる。
【００１１】
本発明の一態様によれば、複数の情報制御装置及び認証制御装置からなるシステムにおいて、入力側の情報制御装置と出力側の情報制御装置の間の秘匿通信を実現するための通信制御方法であって、信頼される環境にて、秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）を前記各情報制御装置内の記憶領域に格納し、前記入力側の情報制御装置からの認証要求に応じて、前記認証制御装置は入力側、出力側それぞれの情報制御装置に、秘密鍵Ｋｓの公開鍵ペアであるＫｐと乱数ＲＮを共通鍵Ｋｔで暗号化したＫｔ（ＲＮ）、すなわちＫｐ＋Ｋｔ（ＲＮ）を送信し、前記各情報制御装置は、前記認証制御装置から送られた公開鍵Ｋｐによって、自身が保持している暗号化情報Ｋｓ（Ｋｔ）を復号化して共通鍵Ｋｔを得、更に該共通鍵Ｋｔで前記認証制御装置から送られたＫｔ（ＲＮ）を復号化してＲＮを得、前記入力側の情報制御装置は、送信したいデータＤに乱数ＲＮを追加したＤ＋ＲＮを共通鍵Ｋｔで暗号化したＫｔ（Ｄ＋ＲＮ）及びＤ＋ＲＮを不可逆演算処理したＨ［Ｄ＋ＲＮ］、すなわちＫｔ（Ｄ＋ＲＮ）＋Ｈ［Ｄ＋ＲＮ］を、前記認証制御装置を介して前記出力側の情報制御装置に送信し、前記出力側の情報制御装置で、受信したもののうちＫｔ（Ｄ＋ＲＮ）を自身が保持する前記Ｋｔで復号化して（Ｄ＋ＲＮ）’ を得て、該（Ｄ＋ＲＮ）’に不可逆演算処理したＨ［（Ｄ＋ＲＮ）’］を取得して、受信したもののうちのＨ［Ｄ＋ＲＮ］と該Ｈ［（Ｄ＋ＲＮ）’］を比較して、一致した場合には受信したデータＤが正常であるものとし、該当する処理を行う、ことを特徴とする。これにより、耐タンパ機能を備えない情報制御装置間でも、安全な秘匿通信を実現することができる。
【発明の効果】
【００１２】
本発明によれば、信頼される環境にて、秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）を情報制御装置内の記憶領域に格納するため、たとえ情報制御装置の情報が不正者によって読み取られたとしても不正者は暗号化鍵そのものを入手することができない。また、耐タンパ機能を備えない情報制御装置間であっても、安全で秘匿な通信を実現することが可能である。すなわち本発明の認証方法および通信制御方法によれば、情報制御装置に耐タンパ機能を備える必要がないため、装置を低コストに抑えることができる。また、既存の装置に新たなハードウェアを追加することなく、安全で秘匿な通信を実現することが可能である。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照して、本発明の実施の形態について説明する。
尚、以下の説明において用いる記号に関する定義を行う。
Ｘ（Ｙ）は、情報ＹをＸにて暗号化した情報を示す。
【００１４】
Ｘ＋Ｙは、情報Ｘに情報Ｙを付加した情報を示す。
Ｘ［Ｙ］は、情報Ｙに対して特定の処理Ｘを行ったことを示す。例えば、Ｈ［Ｄ］は、情報Ｄに不可逆演算であるハッシュ演算処理Ｈを施したことを示す。
【００１５】
以上から、例えば、Ｋｐ（Ｄ１＋Ｄ２）であれば、情報Ｄ１に情報Ｄ２を付加したデータを、Ｋｐにて暗号化したものを示すことになる。
また、暗号化をするための鍵である、公開鍵ペアの一方を公開鍵Ｋｐと言い、もう一方を秘密鍵Ｋｓと言うことにする。また、共通鍵をＫｔと表し、乱数値をＲＮと表すことにする。
【００１６】
さて、図１に本発明の構成例を示す。
情報制御装置１は、例えば、カード番号やパスワード、書き込みデータなどが入力される情報入力装置である。以下、入力側の情報制御装置、または、単に情報制御装置１と呼ぶ。情報制御装置２は、情報入力装置にて入力された情報をカードなどへ書き込む情報出力装置である。以下、出力側の情報制御装置、または、単に、情報制御装置２と呼ぶ。認証制御装置３は、入力側の情報制御装置と、出力側の情報制御装置の間で情報のやり取りを行うための装置である。図では、これら３つの装置がそれぞれ独立しているが、有線または無線などの通信手段により接続されている構成となる。また、情報制御装置は図では２台示しているが３台以上の複数台で構成されてもよい。またそれぞれの装置は、固定端末であってもよいし、持ち運びの可能な携帯端末であってもよい。
【００１７】
次に、図２に入力側、出力側の情報制御装置、及び認証制御装置の機能ブロック図を示す。
図２（ａ）に示すように、入力側の情報制御装置は、情報が入力される情報入力部１１と、装置における情報処理や装置全体の制御を行う制御部１２と、他の装置との通信を担う通信部１３と、暗号化／復号化処理を行う暗号／復号処理部１４と、情報を格納する記憶部１５と、不可逆演算処理を行う不可逆演算処理部１６とから構成される。
【００１８】
同様に図２（ｂ）に示すように、出力側の情報制御装置は、情報をカードなどに書き込む情報出力部２１、装置における情報処理や装置全体の制御を行う制御部２２、他の装置との通信を担う通信部２４と、暗号化／復号化処理を行う暗号／復号処理部２４、情報を格納する記憶部２５、不可逆演算処理を行う不可逆演算処理部２６とから構成される。
【００１９】
入力側および出力側の情報制御装置の記憶部１５、２５には秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）が格納される。この格納のタイミングは、製品出荷時やシステムを最初に起動するときなど、あらかじめ信頼された環境や空間にて行われるものである。
【００２０】
また、図２（ｃ）に示すように、認証制御装置は、装置における情報処理や全体の制御を行う制御部３１と、他の装置との通信を担う通信部３２と、情報を格納する記憶部３３と、乱数を生成する乱数生成部３４とから構成される。
【００２１】
以上のように構成されるシステムにおいて、入力側の情報制御装置と、出力側の情報制御装置が秘匿通信を行う場合の概要を図３に示す。すなわち、図３は本発明の認証方法及び通信制御方法の概要を示す図である。
【００２２】
以下、図中の（０）〜（５）の順に述べる。
（０）情報制御装置１、２の出荷時、初起動時など信頼される環境にて、情報制御装置１，２の記憶部１５、２５に秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）が格納される。
（１）入力側の情報制御装置１に、カード番号が入力されるなどの秘匿通信が必要な入力がなされると、情報制御装置１から秘匿通信開始要求が認証制御装置３に送信される。そして、認証制御装置３が該要求を受信すると、認証制御装置３はそれぞれの情報制御装置１，２に、秘密鍵Ｋｓの公開鍵ペアであるＫｐと乱数ＲＮを共通鍵Ｋｔで暗号化したＫｔ（ＲＮ）、すなわちＫｐ＋Ｋｔ（ＲＮ）を送信する。
（２）各情報制御装置１，２は、認証制御装置３から送られた公開鍵Ｋｐによって、自身が保持している暗号化情報Ｋｓ（Ｋｔ）を復号化して共通鍵Ｋｔを得、更に認証制御装置３から送られたＫｔ（ＲＮ）を得られた共通鍵Ｋｔで復号化してＲＮを得る。
（３）入力側の情報制御装置は１、送信したいデータＤに乱数ＲＮを追加したＤ＋ＲＮを共通鍵Ｋｔで暗号化したＫｔ（Ｄ＋ＲＮ）に、Ｄ＋ＲＮを不可逆演算処理したＨ［Ｄ＋ＲＮ］を追加したもの、すなわちＫｔ（Ｄ＋ＲＮ）＋Ｈ［Ｄ＋ＲＮ］を送信する。
（４−１）出力側の情報制御装置２で、受信したもののうちＫｔ（Ｄ＋ＲＮ）を自身が保持するＫｔで復号化して（Ｄ＋ＲＮ）’ を得て、該（Ｄ＋ＲＮ）’に不可逆演算処理したＨ［（Ｄ＋ＲＮ）’］を取得して、受信したもののうちのＨ［Ｄ＋ＲＮ］と該Ｈ［（Ｄ＋ＲＮ）’］を比較して、一致するか否か判断する。
（４−２）一致した場合、受信したデータＤが正常であると判断して、該データを利用しその後のアプリケーション処理などを実行する。
（５）データの送受信やアプリケーション処理などの一連の処理が終了した後は、情報制御装置１、２において一時的な記憶部に格納された共通鍵Ｋｔ、公開鍵ＫｐおよびＲＮを消去する。
【００２３】
次に、図４に図３に示した本発明の概要をシーケンス図として示した。
入力側の情報制御装置１にカード番号等が入力されると、情報制御装置１から認証制御装置３に秘匿通信開始要求が送信される。これを受信した認証制御装置３は、処理ＳＣ１を行う。処理ＳＣ１の処理フローは図５で後に詳述するが、処理概要は次のようになる。まず、乱数生成部３４にて乱数ＲＮｎを生成し、共通鍵Ｋｔにより乱数ＲＮｎを暗号化して、Ｋｔ（ＲＮｎ）を取得する。尚、乱数値ＲＮｎは一連の処理ごとに必ず変化する値である。そして、公開鍵ＫｐとＫｔ（ＲＮｎ）をあわせたＫｐ＋Ｋｔ（ＲＮｎ）を送信電文として生成する。
【００２４】
認証制御装置３はその後、情報制御装置１、２に秘匿通信開始応答電文Ｋｐ＋Ｋｔ（ＲＮｎ）を送信する。尚、Ｋｐは公開鍵用公開鍵であるため、あえて秘匿する必要はないものである。
【００２５】
秘匿通信開始応答電文を受信した情報制御装置１、２はそれぞれ、処理ＳＡ１，ＳＢ１を行う。処理ＳＡ１，処理ＳＢ１は、それぞれ図６、図７に詳述するが、概要としては次のような処理を行う。
【００２６】
処理ＳＡ１では、受信した公開鍵Ｋｐにて、自身が保持する暗号化情報Ｋｓ（Ｋｔ）を復号化し、得られた共通鍵Ｋｔにて、受信したＫｔ（ＲＮｎ）を復号化してＲＮｎを取得する。更に、出力側の情報制御装置２へ送信したいデータＤｎ及びＲＮｎを共通鍵Ｋｔにて暗号化したＫｔ（Ｄｎ＋ＲＮｎ）を取得し、更に、例えばハッシュ演算処理などの不可逆演算処理により署名情報（データの正当性を保証するために付けられる情報の意）Ｈ［Ｄｎ＋ＲＮｎ］を取得して、送信電文Ｋｔ（Ｄｎ＋ＲＮｎ）＋Ｈ［Ｄｎ＋ＲＮｎ］を取得する。
【００２７】
また、処理ＳＢ１では、受信した公開鍵Ｋｐにて、自身が保持する暗号化情報Ｋｓ（Ｋｔ）を復号化し、得られた共通鍵Ｋｔにて、受信したＫｔ（ＲＮｎ）を復号化してＲＮｎを取得しておく。
【００２８】
次に、入力側の情報制御装置１から送信電文Ｋｔ（Ｄｎ＋ＲＮｎ）＋Ｈ［Ｄｎ＋ＲＮｎ］が認証制御装置３を介して出力側の情報制御装置２に送信されると、情報制御装置２では処理ＳＢ２が行われる。
【００２９】
処理ＳＢ２の処理フローは図８で後に詳述するが、概要としては次のような処理を行う。
受信した電文Ｋｔ（Ｄｎ＋ＲＮｎ）＋Ｈ［Ｄｎ＋ＲＮｎ］のうち、共通鍵ＫｔにてＫｔ（Ｄｎ＋ＲＮｎ）を復号化した復号化情報（Ｄｎ＋ＲＮｎ）’を取得し、このＲＮｎ‘と先にＳＢ１の処理で取得していたＲＮｎを比較して同じであれば次の処理へ進む。次の処理では、復号化情報（Ｄｎ＋ＲＮｎ）’の不可逆演算処理を行い、演算結果Ｈ［（Ｄｎ＋ＲＮｎ）’］を取得する。そして、この演算結果Ｈ［（Ｄｎ＋ＲＮｎ）’］と受信したＨ［Ｄｎ＋ＲＮｎ］を比較して、同じ値であれば改ざんなどがされていない正常なデータＤｎであると判断し、（Ｄｎ＋ＲＮｎ）からＲＮｎを引くことでデータＤｎを取得し、その後のアプリケーション処理などを実行する。
【００３０】
以下、処理ＳＣ１，ＳＡ１，ＳＢ１，ＳＢ２の処理をフローを用いて詳細に説明する。
まず図５に処理ＳＣ１のフローを示した。
Ｓ５１にて、秘匿通信開始要求が受信され、Ｓ５２にて乱数生成部３４で乱数ＲＮｎが生成される。Ｓ５３で生成された乱数ＲＮｎを共通鍵Ｋｔにより暗号化して、Ｋｔ（ＲＮｎ）を取得し、Ｓ５４で送信電文Ｋｐ＋Ｋｔ（ＲＮｎ）を生成する。その後、Ｓ５５，Ｓ５６にて情報制御装置１または情報制御装置２へ生成された送信電文を秘匿通信開始応答電文として送信する。
【００３１】
次に図６に処理ＳＡ１のフローを示した。
情報制御装置１は、まずＳ６１で秘匿通信開始応答電文Ｋｐ＋Ｋｔ（ＲＮｎ）を受信する。これによりＳ６２で公開鍵Ｋｐを取得する。そして、Ｓ６３にて、自身が記憶部に保持している暗号化情報Ｋｓ（Ｋｔ）を復号化、すなわちＫｐ（Ｋｓ（Ｋｔ））して、Ｓ６４にて共通鍵Ｋｔを得る。Ｓ６５にて、受信した秘匿通信開始応答電文のうちのＫｔ（ＲＮｎ）を復号化Ｋｔ（Ｋｔ（ＲＮｎ））し、ＲＮｎを得る。Ｓ６６にて、送信したデータＤｎと取得したＲＮｎを共通鍵Ｋｔにて暗号化し、Ｋｔ（Ｄｎ＋ＲＮｎ）を得る。Ｓ６７にて、データＤｎと取得したＲＮｎに不可逆演算処理を施しＨ［Ｄｎ＋ＲＮｎ］を取得して、Ｓ６８にて、送信電文Ｋｔ（Ｄｎ＋ＲＮｎ）＋Ｈ［Ｄｎ＋ＲＮｎ］を生成する。その後、Ｓ６９にて一次的な記憶領域に記憶された共通鍵Ｋｔ、公開鍵ＫｐおよびＲＮｎを消去し、処理を終了する。
【００３２】
次に図７に処理ＳＢ１のフローを示した。処理ＳＢ１は処理ＳＡ１のＳ６５までと同一であるので、詳細な説明はここでは省略する。
次に図８に処理ＳＢ２のフローを示した。情報制御装置２は、Ｓ８１で秘匿通信電文Ｋｔ（Ｄｎ＋ＲＮｎ）＋Ｈ［Ｄｎ＋ＲＮｎ］を受信すると、Ｓ８２で共通鍵ＫｔにてＫｔ（Ｄｎ＋ＲＮｎ）を復号化Ｋｔ（Ｋｔ（Ｄｎ＋ＲＮｎ））し、復号化情報（Ｄｎ＋ＲＮｎ）’を取得する。Ｓ８３で、既に保持していたＲＮｎとＲＮｎ’が一致するか否か判断し、一致するなら（Ｙｅｓ）Ｓ８４に進み、一致しない（Ｎｏ）のであれば改ざん等のされた不正なデータを受信したとしてＳ８７に進む。Ｓ８４で、復号化情報（Ｄｎ＋ＲＮｎ）’をハッシュ演算処理Ｈ［（Ｄｎ＋ＲＮｎ）’］し、Ｓ８５でＨ［（Ｄｎ＋ＲＮｎ）’］と秘匿通信電文として受信したＨ［Ｄｎ＋ＲＮｎ］が一致するか否かを判断する。一致するなら（Ｙｅｓ）Ｓ８６に進み、一致しない（Ｎｏ）なら改ざん等のされた不正なデータを受信したとしてＳ８７に進む。Ｓ８６では、（Ｄｎ＋ＲＮｎ）からＲＮｎを引いてＤｎを取得し、Ｓ８７に進む。Ｓ８７では、一次的な記憶領域に記憶された共通鍵Ｋｔ、公開鍵ＫｐおよびＲＮｎを消去し、処理を終了する。
【００３３】
以上のように本発明を構成する情報制御装置および認証制御装置の動作等を詳細に説明したが、本発明に関わる情報制御装置のハードウェア構成のうち主な部分を図９に示す。情報制御装置の主な部分は、カード番号などの情報を読み取り入力としたり、画面などに情報を表示したり、入出力に関わるデバイスを制御する入出力部９１と、中央演算ユニットＣＰＵ９２と、他の装置との有線・無線通信に関わる制御を行う通信制御部９３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９４、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９５、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｏｎｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９６とがバス９７で接続された構成をとる。システム全体のアプリケーション、たとえばそのシステムがポイントサービス用のものなのか、入退出管理用なのか、などによって情報制御装置の構成は異なってくるが、最低限図９に示したハードウェアを備えることになる。図２（ａ）、図２（ｂ）に示した情報入力部１１、情報出力部２１は入出力部９１に対応し、通信部１３、２３は通信制御部９３に対応する。そして、制御部１２、２２及び暗号／復号処理部１４、２４及び不可逆演算処理部１６、２６はＲＯＭ９５に格納されたプログラムをＣＰＵ９２がＲＡＭ９４を利用して実行されることで実現される。また、秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）が格納される記憶部２５は、ＥＥＰＲＯＭ９６もしくはＲＯＭ９５などに対応し、ここに暗号化情報Ｋｓ（Ｋｔ）が格納される。
【００３４】
ところで、従来の秘匿通信を行うための情報制御装置では、暗号化鍵を格納するための耐タンパ性を備えるＩＣチップなどの高価なハードウェアを搭載する必要があった。一方本発明の情報制御装置では図９に示したように、耐タンパ機能を備えるハードウェアを備える必要がなく、その分、装置コストを低く抑えることが可能である。また、通常の情報をやりとりする情報制御装置に新たなハードウェアを追加する必要がなく、容易に実現が可能である。
【００３５】
以上のように本発明の秘匿通信を行うための認証方法および通信制御方法について詳細に説明したが、本発明は以上に述べたことに限定されるものではなく、本発明の要旨を逸脱しない範囲で様々の構成、または形状をつくることができることはいうまでもない。
【００３６】
本発明の秘匿通信を行うための認証方法および通信制御方法によれば、あらかじめ信頼される環境にて、秘密鍵Ｋｓで共通鍵Ｋｔを暗号化した暗号化情報Ｋｓ（Ｋｔ）を情報制御装置内の記憶領域に格納するため、たとえ情報制御装置の情報が不正者によって読み取られたとしても不正者は暗号化鍵そのものを入手することができない。また、情報制御装置に耐タンパ機能を備える必要がなく、これによって装置のコストを低く抑えることができ、また、既存の装置に新たなハードウェアを追加することなく、安全で秘匿な通信を実現することが可能である。
【図面の簡単な説明】
【００３７】
【図１】本発明の構成例を示す図である。
【図２Ａ】入力側の情報制御装置の機能ブロック図を示す図である。
【図２Ｂ】出力側の情報制御装置の機能ブロック図を示す図である。
【図２Ｃ】認証制御装置の機能ブロック図を示す図である。
【図３】本発明の概要を示す図である。
【図４】本発明のシーケンスを示す図である。
【図５】図４における処理ＳＣ１のフローを示す図である。
【図６】図４における処理ＳＡ１のフローを示す図である。
【図７】図４における処理ＳＢ１のフローを示す図である。
【図８】図４における処理ＳＢ２のフローを示す図である。
【図９】本発明に関わる情報制御装置のハードウェア構成のうち主な部分を示す図である。
【符号の説明】
【００３８】
１      情報制御装置（入力側）
２      情報制御装置（出力側）
３      認証制御装置
１１      情報入力部
１２      制御部
１３      通信部
１４      暗号／復号処理部
１５      記憶部
１６      不可逆演算処理部
２１      情報出力部
２２      制御部
２３      通信部
２４      暗号／復号処理部
２５      記憶部
２６      不可逆演算処理部
３１      制御部
３２      通信部
３３      記憶部
３４      乱数生成部
９１      入出力部
９２      ＣＰＵ
９３      通信制御部
９４      ＲＡＭ
９５      ＲＯＭ
９６      ＥＥＰＲＯＭ
【図１】
2007251437.tif 000003
【図２Ａ】
2007251437.tif 000004
【図２Ｂ】
2007251437.tif 000005
【図２Ｃ】
2007251437.tif 000006
【図３】
2007251437.tif 000007
【図４】
2007251437.tif 000008
【図５】
2007251437.tif 000009
【図６】
2007251437.tif 000010
【図７】
2007251437.tif 000011
【図８】
2007251437.tif 000012
【図９】
2007251437.tif 000013