JP2007251437A - 認証方法及び安全な通信制御方法 - Google Patents
認証方法及び安全な通信制御方法 Download PDFInfo
- Publication number
- JP2007251437A JP2007251437A JP2006070009A JP2006070009A JP2007251437A JP 2007251437 A JP2007251437 A JP 2007251437A JP 2006070009 A JP2006070009 A JP 2006070009A JP 2006070009 A JP2006070009 A JP 2006070009A JP 2007251437 A JP2007251437 A JP 2007251437A
- Authority
- JP
- Japan
- Prior art keywords
- control device
- information
- authentication
- information control
- common key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Abstract
【課題】耐タンパ機能を備えない情報制御装置間であっても、安全で秘匿な通信を実現するための認証方法および通信制御方法を提供すること。
【解決手段】信頼される環境にて、秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)を情報制御装置内の記憶領域に格納する。更に、(1)入力側情報制御装置からの認証要求に対して認証制御装置がKp+Kt(RN)を各情報制御装置に送信、(2)各情報制御装置でKs(Kt)を復号化して共通鍵Ktを得て、Kt(RN)をKtで復号化してRNを得る、(3)入力側の情報制御装置がKt(D+RN)+H[D+RN]を送信、(4)Kt(D+RN)をKtで復号化して(D+RN)’ を得て、該(D+RN)’に不可逆演算処理したH[(D+RN)’]を取得して、受信したもののうちのH[D+RN]と該H[(D+RN)’]を比較して、一致した場合には受信したデータDが正常であると判断する。
【選択図】図3
【解決手段】信頼される環境にて、秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)を情報制御装置内の記憶領域に格納する。更に、(1)入力側情報制御装置からの認証要求に対して認証制御装置がKp+Kt(RN)を各情報制御装置に送信、(2)各情報制御装置でKs(Kt)を復号化して共通鍵Ktを得て、Kt(RN)をKtで復号化してRNを得る、(3)入力側の情報制御装置がKt(D+RN)+H[D+RN]を送信、(4)Kt(D+RN)をKtで復号化して(D+RN)’ を得て、該(D+RN)’に不可逆演算処理したH[(D+RN)’]を取得して、受信したもののうちのH[D+RN]と該H[(D+RN)’]を比較して、一致した場合には受信したデータDが正常であると判断する。
【選択図】図3
Description
本発明は、複数の情報制御装置間で電子的な価値をやり取りする場合において、耐タンパ機能がない情報制御装置間であっても、認証を行いながら安全に情報を伝達することを可能とする認証方法及び通信制御方法に関わる。
近年、電子チケットやポイントサービスなどの電子的な価値を利用したシステムが普及してきている。このようなシステムでは、複数の装置間において電子的な価値を送受信する必要があり、データを送受信する装置間でユーザの認証が必要となる。これらの認証処理には、公開鍵暗号方式による電子署名や、共通鍵を利用した相互認証方式などが用いられてきた。公開鍵暗号方式や、共通鍵を利用した相互認証方式では、それぞれの装置に、公開鍵や共通鍵を安全に格納するための耐タンパ機能を備えた領域、例えばICカードモジュールなどを備え、該領域に公開鍵や共通鍵を格納して不正者などから情報を守るように構成されている。
しかし、これらの認証方式では前述のように公開鍵や共通鍵を格納するための耐タンパ性を備えた領域やその他の特殊な機能を備える必要があり、装置がコストアップしてしまうという課題があった。
このような課題を解決するために、例えば特許文献1では、耐タンパ機能のない携帯端末であっても、ユーザを安全に認証できるような認証システムを提案している。該認証システムでは、まず認証要求装置が、暗号化第一情報と第二情報を認証装置に向けて送信する。次に、暗号化第一情報と第二情報を受信した認証装置は、暗号化第一情報と第二情報が所定の関係であるかどうかを判断し、もし、所定の関係であれば、認証要求装置は認証装置により認証される。その結果、例えば、認証要求装置のユーザに対して決済処理が行われたり、鍵の解除がなされたりなどが行われるように構成されている。該文献には「認証要求装置側に暗号鍵などの秘密情報を格納しておく必要がなく、また暗号化を行う処理も必須ではない〔0050〕」と記載されているが、該システムの暗号化第一情報は暗号化された情報であり、暗号化するためにはなんらかの暗号化鍵が必要であると考えられ、これをどのように保持するかが明示されておらず、認証が確実に機能しているのかどうか疑問が残る。
特開2004−304751号公報
そこで、本発明の課題は、耐タンパ機能を備えない情報制御装置間であっても、安全で秘匿な通信を実現するための認証方法および通信制御方法を提供することにある。
上述の課題を解決するために本発明では、あらかじめ信頼される環境にて、秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)を情報制御装置内の記憶領域に格納するようにした。よって耐タンパ機能を備えない情報制御装置であっても、共通鍵を秘密鍵で暗号化して格納するため、例え情報制御装置の情報が不正者によって読み取られたとしても不正者は暗号化鍵そのものを入手することができない。
また、本発明では更に次のような手順を備えるように構成し、入力側の情報制御装置から出力側の情報制御装置への通信の際の認証と通信を実現するようにした。
(1)入力側の情報制御装置からの認証要求に応じて、認証制御装置はそれぞれの情報制御装置に、秘密鍵Ksの公開鍵ペアであるKpと乱数RNを共通鍵Ktで暗号化したKt(RN)、すなわちKp+Kt(RN)を送信する。
(2)各情報制御装置は、認証制御装置から送られた公開鍵Kpによって、自身が保持している暗号化情報Ks(Kt)を復号化して共通鍵Ktを得、更に認証制御装置から送られたKt(RN)を得られた共通鍵Ktで復号化してRNを得る。
(3)入力側の情報制御装置は、送信したいデータDに乱数RNを追加したD+RNを共通鍵Ktで暗号化したKt(D+RN)に、D+RNを不可逆演算処理したH[D+RN]を追加したもの、すなわちKt(D+RN)+H[D+RN]を送信する。
(4)出力側の情報制御装置で、受信したもののうちKt(D+RN)を自身が保持するKtで復号化して(D+RN)’ を得て、該(D+RN)’に不可逆演算処理したH[(D+RN)’]を取得して、受信したもののうちのH[D+RN]と該H[(D+RN)’]を比較して、一致した場合には受信したデータDが正常であると判断して、該データを利用しその後のアプリケーション処理などを実行する。
(1)入力側の情報制御装置からの認証要求に応じて、認証制御装置はそれぞれの情報制御装置に、秘密鍵Ksの公開鍵ペアであるKpと乱数RNを共通鍵Ktで暗号化したKt(RN)、すなわちKp+Kt(RN)を送信する。
(2)各情報制御装置は、認証制御装置から送られた公開鍵Kpによって、自身が保持している暗号化情報Ks(Kt)を復号化して共通鍵Ktを得、更に認証制御装置から送られたKt(RN)を得られた共通鍵Ktで復号化してRNを得る。
(3)入力側の情報制御装置は、送信したいデータDに乱数RNを追加したD+RNを共通鍵Ktで暗号化したKt(D+RN)に、D+RNを不可逆演算処理したH[D+RN]を追加したもの、すなわちKt(D+RN)+H[D+RN]を送信する。
(4)出力側の情報制御装置で、受信したもののうちKt(D+RN)を自身が保持するKtで復号化して(D+RN)’ を得て、該(D+RN)’に不可逆演算処理したH[(D+RN)’]を取得して、受信したもののうちのH[D+RN]と該H[(D+RN)’]を比較して、一致した場合には受信したデータDが正常であると判断して、該データを利用しその後のアプリケーション処理などを実行する。
以上のような手順を備えることにより、耐タンパ機能を備えない情報制御装置間の認証、通信を実現することが可能である。また、更に、
(5)データの送受信やアプリケーション処理等の一連の処理が終了したのちは、情報制御装置において上記手順の(1)〜(4)によって得られた共通鍵Kt、公開鍵Kpを情報制御装置の記憶領域から消去する。
という手順を加えることで、情報制御装置にはデータの送受信を実行するとき以外には暗号化鍵そのものが存在することがないため、不正を防止することが可能である。
(5)データの送受信やアプリケーション処理等の一連の処理が終了したのちは、情報制御装置において上記手順の(1)〜(4)によって得られた共通鍵Kt、公開鍵Kpを情報制御装置の記憶領域から消去する。
という手順を加えることで、情報制御装置にはデータの送受信を実行するとき以外には暗号化鍵そのものが存在することがないため、不正を防止することが可能である。
本発明の一態様によれば、複数の情報制御装置及び認証制御装置からなるシステムにおいて、情報制御装置間の秘匿通信を実現させるための認証方法であって、あらかじめ信頼される環境にて、秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)を前記情報制御装置内の記憶領域に格納し、該暗号化情報Ks(Kt)を用いて認証処理を行うことを特徴とする。これにより、耐タンパ機能を備えない情報制御装置であっても、共通鍵を秘密鍵で暗号化して格納するため、例え情報制御装置の情報が不正者によって読み取られたとしても不正者は暗号化鍵そのものを入手することができない。
本発明の一態様によれば、複数の情報制御装置及び認証制御装置からなるシステムにおいて、入力側の情報制御装置と出力側の情報制御装置の間の秘匿通信を実現するための認証方法であって、あらかじめ信頼される環境にて、秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)を前記各情報制御装置内の記憶領域に格納し、前記入力側の情報制御装置からの認証要求に応じて、前記認証制御装置は入力側、出力側それぞれの情報制御装置に、秘密鍵Ksの公開鍵ペアであるKpと乱数RNを共通鍵Ktで暗号化したKt(RN)、すなわちKp+Kt(RN)を送信し、前記各情報制御装置は、前記認証制御装置から送られた公開鍵Kpによって、自身が保持している暗号化情報Ks(Kt)を復号化して共通鍵Ktを得、更に該共通鍵Ktで前記認証制御装置から送られたKt(RN)を復号化してRNを得、
前記入力側の情報制御装置は、送信したいデータDに乱数RNを追加したD+RNを共通鍵Ktで暗号化したKt(D+RN)及びD+RNを不可逆演算処理したH[D+RN]、すなわちKt(D+RN)+H[D+RN]を、前記認証制御装置を介して前記出力側の情報制御装置に送信し、前記出力側の情報制御装置で、受信したもののうちKt(D+RN)を自身が保持する前記Ktで復号化して(D+RN)’ を得て、該(D+RN)’に不可逆演算処理したH[(D+RN)’]を取得して、受信したもののうちのH[D+RN]と該H[(D+RN)’]を比較して、一致した場合には認証する、ことを特徴とする。これにより、耐タンパ機能を備えない情報制御装置間の認証を実現することが可能で、安全な秘匿通信を行うことができる。
前記入力側の情報制御装置は、送信したいデータDに乱数RNを追加したD+RNを共通鍵Ktで暗号化したKt(D+RN)及びD+RNを不可逆演算処理したH[D+RN]、すなわちKt(D+RN)+H[D+RN]を、前記認証制御装置を介して前記出力側の情報制御装置に送信し、前記出力側の情報制御装置で、受信したもののうちKt(D+RN)を自身が保持する前記Ktで復号化して(D+RN)’ を得て、該(D+RN)’に不可逆演算処理したH[(D+RN)’]を取得して、受信したもののうちのH[D+RN]と該H[(D+RN)’]を比較して、一致した場合には認証する、ことを特徴とする。これにより、耐タンパ機能を備えない情報制御装置間の認証を実現することが可能で、安全な秘匿通信を行うことができる。
本発明の一態様によれば、複数の情報制御装置及び認証制御装置からなるシステムにおいて、入力側の情報制御装置と出力側の情報制御装置の間の秘匿通信を実現するための通信制御方法であって、信頼される環境にて、秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)を前記各情報制御装置内の記憶領域に格納し、前記入力側の情報制御装置からの認証要求に応じて、前記認証制御装置は入力側、出力側それぞれの情報制御装置に、秘密鍵Ksの公開鍵ペアであるKpと乱数RNを共通鍵Ktで暗号化したKt(RN)、すなわちKp+Kt(RN)を送信し、前記各情報制御装置は、前記認証制御装置から送られた公開鍵Kpによって、自身が保持している暗号化情報Ks(Kt)を復号化して共通鍵Ktを得、更に該共通鍵Ktで前記認証制御装置から送られたKt(RN)を復号化してRNを得、前記入力側の情報制御装置は、送信したいデータDに乱数RNを追加したD+RNを共通鍵Ktで暗号化したKt(D+RN)及びD+RNを不可逆演算処理したH[D+RN]、すなわちKt(D+RN)+H[D+RN]を、前記認証制御装置を介して前記出力側の情報制御装置に送信し、前記出力側の情報制御装置で、受信したもののうちKt(D+RN)を自身が保持する前記Ktで復号化して(D+RN)’ を得て、該(D+RN)’に不可逆演算処理したH[(D+RN)’]を取得して、受信したもののうちのH[D+RN]と該H[(D+RN)’]を比較して、一致した場合には受信したデータDが正常であるものとし、該当する処理を行う、ことを特徴とする。これにより、耐タンパ機能を備えない情報制御装置間でも、安全な秘匿通信を実現することができる。
本発明によれば、信頼される環境にて、秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)を情報制御装置内の記憶領域に格納するため、たとえ情報制御装置の情報が不正者によって読み取られたとしても不正者は暗号化鍵そのものを入手することができない。また、耐タンパ機能を備えない情報制御装置間であっても、安全で秘匿な通信を実現することが可能である。すなわち本発明の認証方法および通信制御方法によれば、情報制御装置に耐タンパ機能を備える必要がないため、装置を低コストに抑えることができる。また、既存の装置に新たなハードウェアを追加することなく、安全で秘匿な通信を実現することが可能である。
以下、図面を参照して、本発明の実施の形態について説明する。
尚、以下の説明において用いる記号に関する定義を行う。
X(Y)は、情報YをXにて暗号化した情報を示す。
尚、以下の説明において用いる記号に関する定義を行う。
X(Y)は、情報YをXにて暗号化した情報を示す。
X+Yは、情報Xに情報Yを付加した情報を示す。
X[Y]は、情報Yに対して特定の処理Xを行ったことを示す。例えば、H[D]は、情報Dに不可逆演算であるハッシュ演算処理Hを施したことを示す。
X[Y]は、情報Yに対して特定の処理Xを行ったことを示す。例えば、H[D]は、情報Dに不可逆演算であるハッシュ演算処理Hを施したことを示す。
以上から、例えば、Kp(D1+D2)であれば、情報D1に情報D2を付加したデータを、Kpにて暗号化したものを示すことになる。
また、暗号化をするための鍵である、公開鍵ペアの一方を公開鍵Kpと言い、もう一方を秘密鍵Ksと言うことにする。また、共通鍵をKtと表し、乱数値をRNと表すことにする。
また、暗号化をするための鍵である、公開鍵ペアの一方を公開鍵Kpと言い、もう一方を秘密鍵Ksと言うことにする。また、共通鍵をKtと表し、乱数値をRNと表すことにする。
さて、図1に本発明の構成例を示す。
情報制御装置1は、例えば、カード番号やパスワード、書き込みデータなどが入力される情報入力装置である。以下、入力側の情報制御装置、または、単に情報制御装置1と呼ぶ。情報制御装置2は、情報入力装置にて入力された情報をカードなどへ書き込む情報出力装置である。以下、出力側の情報制御装置、または、単に、情報制御装置2と呼ぶ。認証制御装置3は、入力側の情報制御装置と、出力側の情報制御装置の間で情報のやり取りを行うための装置である。図では、これら3つの装置がそれぞれ独立しているが、有線または無線などの通信手段により接続されている構成となる。また、情報制御装置は図では2台示しているが3台以上の複数台で構成されてもよい。またそれぞれの装置は、固定端末であってもよいし、持ち運びの可能な携帯端末であってもよい。
情報制御装置1は、例えば、カード番号やパスワード、書き込みデータなどが入力される情報入力装置である。以下、入力側の情報制御装置、または、単に情報制御装置1と呼ぶ。情報制御装置2は、情報入力装置にて入力された情報をカードなどへ書き込む情報出力装置である。以下、出力側の情報制御装置、または、単に、情報制御装置2と呼ぶ。認証制御装置3は、入力側の情報制御装置と、出力側の情報制御装置の間で情報のやり取りを行うための装置である。図では、これら3つの装置がそれぞれ独立しているが、有線または無線などの通信手段により接続されている構成となる。また、情報制御装置は図では2台示しているが3台以上の複数台で構成されてもよい。またそれぞれの装置は、固定端末であってもよいし、持ち運びの可能な携帯端末であってもよい。
次に、図2に入力側、出力側の情報制御装置、及び認証制御装置の機能ブロック図を示す。
図2(a)に示すように、入力側の情報制御装置は、情報が入力される情報入力部11と、装置における情報処理や装置全体の制御を行う制御部12と、他の装置との通信を担う通信部13と、暗号化/復号化処理を行う暗号/復号処理部14と、情報を格納する記憶部15と、不可逆演算処理を行う不可逆演算処理部16とから構成される。
図2(a)に示すように、入力側の情報制御装置は、情報が入力される情報入力部11と、装置における情報処理や装置全体の制御を行う制御部12と、他の装置との通信を担う通信部13と、暗号化/復号化処理を行う暗号/復号処理部14と、情報を格納する記憶部15と、不可逆演算処理を行う不可逆演算処理部16とから構成される。
同様に図2(b)に示すように、出力側の情報制御装置は、情報をカードなどに書き込む情報出力部21、装置における情報処理や装置全体の制御を行う制御部22、他の装置との通信を担う通信部24と、暗号化/復号化処理を行う暗号/復号処理部24、情報を格納する記憶部25、不可逆演算処理を行う不可逆演算処理部26とから構成される。
入力側および出力側の情報制御装置の記憶部15、25には秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)が格納される。この格納のタイミングは、製品出荷時やシステムを最初に起動するときなど、あらかじめ信頼された環境や空間にて行われるものである。
また、図2(c)に示すように、認証制御装置は、装置における情報処理や全体の制御を行う制御部31と、他の装置との通信を担う通信部32と、情報を格納する記憶部33と、乱数を生成する乱数生成部34とから構成される。
以上のように構成されるシステムにおいて、入力側の情報制御装置と、出力側の情報制御装置が秘匿通信を行う場合の概要を図3に示す。すなわち、図3は本発明の認証方法及び通信制御方法の概要を示す図である。
以下、図中の(0)〜(5)の順に述べる。
(0)情報制御装置1、2の出荷時、初起動時など信頼される環境にて、情報制御装置1,2の記憶部15、25に秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)が格納される。
(1)入力側の情報制御装置1に、カード番号が入力されるなどの秘匿通信が必要な入力がなされると、情報制御装置1から秘匿通信開始要求が認証制御装置3に送信される。そして、認証制御装置3が該要求を受信すると、認証制御装置3はそれぞれの情報制御装置1,2に、秘密鍵Ksの公開鍵ペアであるKpと乱数RNを共通鍵Ktで暗号化したKt(RN)、すなわちKp+Kt(RN)を送信する。
(2)各情報制御装置1,2は、認証制御装置3から送られた公開鍵Kpによって、自身が保持している暗号化情報Ks(Kt)を復号化して共通鍵Ktを得、更に認証制御装置3から送られたKt(RN)を得られた共通鍵Ktで復号化してRNを得る。
(3)入力側の情報制御装置は1、送信したいデータDに乱数RNを追加したD+RNを共通鍵Ktで暗号化したKt(D+RN)に、D+RNを不可逆演算処理したH[D+RN]を追加したもの、すなわちKt(D+RN)+H[D+RN]を送信する。
(4−1)出力側の情報制御装置2で、受信したもののうちKt(D+RN)を自身が保持するKtで復号化して(D+RN)’ を得て、該(D+RN)’に不可逆演算処理したH[(D+RN)’]を取得して、受信したもののうちのH[D+RN]と該H[(D+RN)’]を比較して、一致するか否か判断する。
(4−2)一致した場合、受信したデータDが正常であると判断して、該データを利用しその後のアプリケーション処理などを実行する。
(5)データの送受信やアプリケーション処理などの一連の処理が終了した後は、情報制御装置1、2において一時的な記憶部に格納された共通鍵Kt、公開鍵KpおよびRNを消去する。
(0)情報制御装置1、2の出荷時、初起動時など信頼される環境にて、情報制御装置1,2の記憶部15、25に秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)が格納される。
(1)入力側の情報制御装置1に、カード番号が入力されるなどの秘匿通信が必要な入力がなされると、情報制御装置1から秘匿通信開始要求が認証制御装置3に送信される。そして、認証制御装置3が該要求を受信すると、認証制御装置3はそれぞれの情報制御装置1,2に、秘密鍵Ksの公開鍵ペアであるKpと乱数RNを共通鍵Ktで暗号化したKt(RN)、すなわちKp+Kt(RN)を送信する。
(2)各情報制御装置1,2は、認証制御装置3から送られた公開鍵Kpによって、自身が保持している暗号化情報Ks(Kt)を復号化して共通鍵Ktを得、更に認証制御装置3から送られたKt(RN)を得られた共通鍵Ktで復号化してRNを得る。
(3)入力側の情報制御装置は1、送信したいデータDに乱数RNを追加したD+RNを共通鍵Ktで暗号化したKt(D+RN)に、D+RNを不可逆演算処理したH[D+RN]を追加したもの、すなわちKt(D+RN)+H[D+RN]を送信する。
(4−1)出力側の情報制御装置2で、受信したもののうちKt(D+RN)を自身が保持するKtで復号化して(D+RN)’ を得て、該(D+RN)’に不可逆演算処理したH[(D+RN)’]を取得して、受信したもののうちのH[D+RN]と該H[(D+RN)’]を比較して、一致するか否か判断する。
(4−2)一致した場合、受信したデータDが正常であると判断して、該データを利用しその後のアプリケーション処理などを実行する。
(5)データの送受信やアプリケーション処理などの一連の処理が終了した後は、情報制御装置1、2において一時的な記憶部に格納された共通鍵Kt、公開鍵KpおよびRNを消去する。
次に、図4に図3に示した本発明の概要をシーケンス図として示した。
入力側の情報制御装置1にカード番号等が入力されると、情報制御装置1から認証制御装置3に秘匿通信開始要求が送信される。これを受信した認証制御装置3は、処理SC1を行う。処理SC1の処理フローは図5で後に詳述するが、処理概要は次のようになる。まず、乱数生成部34にて乱数RNnを生成し、共通鍵Ktにより乱数RNnを暗号化して、Kt(RNn)を取得する。尚、乱数値RNnは一連の処理ごとに必ず変化する値である。そして、公開鍵KpとKt(RNn)をあわせたKp+Kt(RNn)を送信電文として生成する。
入力側の情報制御装置1にカード番号等が入力されると、情報制御装置1から認証制御装置3に秘匿通信開始要求が送信される。これを受信した認証制御装置3は、処理SC1を行う。処理SC1の処理フローは図5で後に詳述するが、処理概要は次のようになる。まず、乱数生成部34にて乱数RNnを生成し、共通鍵Ktにより乱数RNnを暗号化して、Kt(RNn)を取得する。尚、乱数値RNnは一連の処理ごとに必ず変化する値である。そして、公開鍵KpとKt(RNn)をあわせたKp+Kt(RNn)を送信電文として生成する。
認証制御装置3はその後、情報制御装置1、2に秘匿通信開始応答電文Kp+Kt(RNn)を送信する。尚、Kpは公開鍵用公開鍵であるため、あえて秘匿する必要はないものである。
秘匿通信開始応答電文を受信した情報制御装置1、2はそれぞれ、処理SA1,SB1を行う。処理SA1,処理SB1は、それぞれ図6、図7に詳述するが、概要としては次のような処理を行う。
処理SA1では、受信した公開鍵Kpにて、自身が保持する暗号化情報Ks(Kt)を復号化し、得られた共通鍵Ktにて、受信したKt(RNn)を復号化してRNnを取得する。更に、出力側の情報制御装置2へ送信したいデータDn及びRNnを共通鍵Ktにて暗号化したKt(Dn+RNn)を取得し、更に、例えばハッシュ演算処理などの不可逆演算処理により署名情報(データの正当性を保証するために付けられる情報の意)H[Dn+RNn]を取得して、送信電文Kt(Dn+RNn)+H[Dn+RNn]を取得する。
また、処理SB1では、受信した公開鍵Kpにて、自身が保持する暗号化情報Ks(Kt)を復号化し、得られた共通鍵Ktにて、受信したKt(RNn)を復号化してRNnを取得しておく。
次に、入力側の情報制御装置1から送信電文Kt(Dn+RNn)+H[Dn+RNn]が認証制御装置3を介して出力側の情報制御装置2に送信されると、情報制御装置2では処理SB2が行われる。
処理SB2の処理フローは図8で後に詳述するが、概要としては次のような処理を行う。
受信した電文Kt(Dn+RNn)+H[Dn+RNn]のうち、共通鍵KtにてKt(Dn+RNn)を復号化した復号化情報(Dn+RNn)’を取得し、このRNn‘と先にSB1の処理で取得していたRNnを比較して同じであれば次の処理へ進む。次の処理では、復号化情報(Dn+RNn)’の不可逆演算処理を行い、演算結果H[(Dn+RNn)’]を取得する。そして、この演算結果H[(Dn+RNn)’]と受信したH[Dn+RNn]を比較して、同じ値であれば改ざんなどがされていない正常なデータDnであると判断し、(Dn+RNn)からRNnを引くことでデータDnを取得し、その後のアプリケーション処理などを実行する。
受信した電文Kt(Dn+RNn)+H[Dn+RNn]のうち、共通鍵KtにてKt(Dn+RNn)を復号化した復号化情報(Dn+RNn)’を取得し、このRNn‘と先にSB1の処理で取得していたRNnを比較して同じであれば次の処理へ進む。次の処理では、復号化情報(Dn+RNn)’の不可逆演算処理を行い、演算結果H[(Dn+RNn)’]を取得する。そして、この演算結果H[(Dn+RNn)’]と受信したH[Dn+RNn]を比較して、同じ値であれば改ざんなどがされていない正常なデータDnであると判断し、(Dn+RNn)からRNnを引くことでデータDnを取得し、その後のアプリケーション処理などを実行する。
以下、処理SC1,SA1,SB1,SB2の処理をフローを用いて詳細に説明する。
まず図5に処理SC1のフローを示した。
S51にて、秘匿通信開始要求が受信され、S52にて乱数生成部34で乱数RNnが生成される。S53で生成された乱数RNnを共通鍵Ktにより暗号化して、Kt(RNn)を取得し、S54で送信電文Kp+Kt(RNn)を生成する。その後、S55,S56にて情報制御装置1または情報制御装置2へ生成された送信電文を秘匿通信開始応答電文として送信する。
まず図5に処理SC1のフローを示した。
S51にて、秘匿通信開始要求が受信され、S52にて乱数生成部34で乱数RNnが生成される。S53で生成された乱数RNnを共通鍵Ktにより暗号化して、Kt(RNn)を取得し、S54で送信電文Kp+Kt(RNn)を生成する。その後、S55,S56にて情報制御装置1または情報制御装置2へ生成された送信電文を秘匿通信開始応答電文として送信する。
次に図6に処理SA1のフローを示した。
情報制御装置1は、まずS61で秘匿通信開始応答電文Kp+Kt(RNn)を受信する。これによりS62で公開鍵Kpを取得する。そして、S63にて、自身が記憶部に保持している暗号化情報Ks(Kt)を復号化、すなわちKp(Ks(Kt))して、S64にて共通鍵Ktを得る。S65にて、受信した秘匿通信開始応答電文のうちのKt(RNn)を復号化Kt(Kt(RNn))し、RNnを得る。S66にて、送信したデータDnと取得したRNnを共通鍵Ktにて暗号化し、Kt(Dn+RNn)を得る。S67にて、データDnと取得したRNnに不可逆演算処理を施しH[Dn+RNn]を取得して、S68にて、送信電文Kt(Dn+RNn)+H[Dn+RNn]を生成する。その後、S69にて一次的な記憶領域に記憶された共通鍵Kt、公開鍵KpおよびRNnを消去し、処理を終了する。
情報制御装置1は、まずS61で秘匿通信開始応答電文Kp+Kt(RNn)を受信する。これによりS62で公開鍵Kpを取得する。そして、S63にて、自身が記憶部に保持している暗号化情報Ks(Kt)を復号化、すなわちKp(Ks(Kt))して、S64にて共通鍵Ktを得る。S65にて、受信した秘匿通信開始応答電文のうちのKt(RNn)を復号化Kt(Kt(RNn))し、RNnを得る。S66にて、送信したデータDnと取得したRNnを共通鍵Ktにて暗号化し、Kt(Dn+RNn)を得る。S67にて、データDnと取得したRNnに不可逆演算処理を施しH[Dn+RNn]を取得して、S68にて、送信電文Kt(Dn+RNn)+H[Dn+RNn]を生成する。その後、S69にて一次的な記憶領域に記憶された共通鍵Kt、公開鍵KpおよびRNnを消去し、処理を終了する。
次に図7に処理SB1のフローを示した。処理SB1は処理SA1のS65までと同一であるので、詳細な説明はここでは省略する。
次に図8に処理SB2のフローを示した。情報制御装置2は、S81で秘匿通信電文Kt(Dn+RNn)+H[Dn+RNn]を受信すると、S82で共通鍵KtにてKt(Dn+RNn)を復号化Kt(Kt(Dn+RNn))し、復号化情報(Dn+RNn)’を取得する。S83で、既に保持していたRNnとRNn’が一致するか否か判断し、一致するなら(Yes)S84に進み、一致しない(No)のであれば改ざん等のされた不正なデータを受信したとしてS87に進む。S84で、復号化情報(Dn+RNn)’をハッシュ演算処理H[(Dn+RNn)’]し、S85でH[(Dn+RNn)’]と秘匿通信電文として受信したH[Dn+RNn]が一致するか否かを判断する。一致するなら(Yes)S86に進み、一致しない(No)なら改ざん等のされた不正なデータを受信したとしてS87に進む。S86では、(Dn+RNn)からRNnを引いてDnを取得し、S87に進む。S87では、一次的な記憶領域に記憶された共通鍵Kt、公開鍵KpおよびRNnを消去し、処理を終了する。
次に図8に処理SB2のフローを示した。情報制御装置2は、S81で秘匿通信電文Kt(Dn+RNn)+H[Dn+RNn]を受信すると、S82で共通鍵KtにてKt(Dn+RNn)を復号化Kt(Kt(Dn+RNn))し、復号化情報(Dn+RNn)’を取得する。S83で、既に保持していたRNnとRNn’が一致するか否か判断し、一致するなら(Yes)S84に進み、一致しない(No)のであれば改ざん等のされた不正なデータを受信したとしてS87に進む。S84で、復号化情報(Dn+RNn)’をハッシュ演算処理H[(Dn+RNn)’]し、S85でH[(Dn+RNn)’]と秘匿通信電文として受信したH[Dn+RNn]が一致するか否かを判断する。一致するなら(Yes)S86に進み、一致しない(No)なら改ざん等のされた不正なデータを受信したとしてS87に進む。S86では、(Dn+RNn)からRNnを引いてDnを取得し、S87に進む。S87では、一次的な記憶領域に記憶された共通鍵Kt、公開鍵KpおよびRNnを消去し、処理を終了する。
以上のように本発明を構成する情報制御装置および認証制御装置の動作等を詳細に説明したが、本発明に関わる情報制御装置のハードウェア構成のうち主な部分を図9に示す。情報制御装置の主な部分は、カード番号などの情報を読み取り入力としたり、画面などに情報を表示したり、入出力に関わるデバイスを制御する入出力部91と、中央演算ユニットCPU92と、他の装置との有線・無線通信に関わる制御を行う通信制御部93、RAM(Random Access Memory)94、ROM(Read Only Memory)95、EEPROM(Electronically Erasable and Programmable Read Only Memory)96とがバス97で接続された構成をとる。システム全体のアプリケーション、たとえばそのシステムがポイントサービス用のものなのか、入退出管理用なのか、などによって情報制御装置の構成は異なってくるが、最低限図9に示したハードウェアを備えることになる。図2(a)、図2(b)に示した情報入力部11、情報出力部21は入出力部91に対応し、通信部13、23は通信制御部93に対応する。そして、制御部12、22及び暗号/復号処理部14、24及び不可逆演算処理部16、26はROM95に格納されたプログラムをCPU92がRAM94を利用して実行されることで実現される。また、秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)が格納される記憶部25は、EEPROM96もしくはROM95などに対応し、ここに暗号化情報Ks(Kt)が格納される。
ところで、従来の秘匿通信を行うための情報制御装置では、暗号化鍵を格納するための耐タンパ性を備えるICチップなどの高価なハードウェアを搭載する必要があった。一方本発明の情報制御装置では図9に示したように、耐タンパ機能を備えるハードウェアを備える必要がなく、その分、装置コストを低く抑えることが可能である。また、通常の情報をやりとりする情報制御装置に新たなハードウェアを追加する必要がなく、容易に実現が可能である。
以上のように本発明の秘匿通信を行うための認証方法および通信制御方法について詳細に説明したが、本発明は以上に述べたことに限定されるものではなく、本発明の要旨を逸脱しない範囲で様々の構成、または形状をつくることができることはいうまでもない。
本発明の秘匿通信を行うための認証方法および通信制御方法によれば、あらかじめ信頼される環境にて、秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)を情報制御装置内の記憶領域に格納するため、たとえ情報制御装置の情報が不正者によって読み取られたとしても不正者は暗号化鍵そのものを入手することができない。また、情報制御装置に耐タンパ機能を備える必要がなく、これによって装置のコストを低く抑えることができ、また、既存の装置に新たなハードウェアを追加することなく、安全で秘匿な通信を実現することが可能である。
1 情報制御装置(入力側)
2 情報制御装置(出力側)
3 認証制御装置
11 情報入力部
12 制御部
13 通信部
14 暗号/復号処理部
15 記憶部
16 不可逆演算処理部
21 情報出力部
22 制御部
23 通信部
24 暗号/復号処理部
25 記憶部
26 不可逆演算処理部
31 制御部
32 通信部
33 記憶部
34 乱数生成部
91 入出力部
92 CPU
93 通信制御部
94 RAM
95 ROM
96 EEPROM
2 情報制御装置(出力側)
3 認証制御装置
11 情報入力部
12 制御部
13 通信部
14 暗号/復号処理部
15 記憶部
16 不可逆演算処理部
21 情報出力部
22 制御部
23 通信部
24 暗号/復号処理部
25 記憶部
26 不可逆演算処理部
31 制御部
32 通信部
33 記憶部
34 乱数生成部
91 入出力部
92 CPU
93 通信制御部
94 RAM
95 ROM
96 EEPROM
Claims (6)
- 複数の情報制御装置及び認証制御装置からなるシステムにおいて、情報制御装置間の秘匿通信を実現させるための認証方法であって、
あらかじめ信頼される環境にて、秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)を前記情報制御装置内の記憶領域に格納し、
該暗号化情報Ks(Kt)を用いて認証処理を行うことを特徴とする認証方法。 - 複数の情報制御装置及び認証制御装置からなるシステムにおいて、入力側の情報制御装置と出力側の情報制御装置の間の秘匿通信を実現するための認証方法であって、
あらかじめ信頼される環境にて、秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)を前記各情報制御装置内の記憶領域に格納し、
前記入力側の情報制御装置からの認証要求に応じて、前記認証制御装置は入力側、出力側それぞれの情報制御装置に、秘密鍵Ksの公開鍵ペアであるKpと乱数RNを共通鍵Ktで暗号化したKt(RN)、すなわちKp+Kt(RN)を送信し、
前記各情報制御装置は、前記認証制御装置から送られた公開鍵Kpによって、自身が保持している暗号化情報Ks(Kt)を復号化して共通鍵Ktを得、更に該共通鍵Ktで前記認証制御装置から送られたKt(RN)を復号化してRNを得、
前記入力側の情報制御装置は、送信したいデータDに乱数RNを追加したD+RNを共通鍵Ktで暗号化したKt(D+RN)及びD+RNを不可逆演算処理したH[D+RN]、すなわちKt(D+RN)+H[D+RN]を、前記認証制御装置を介して前記出力側の情報制御装置に送信し、
前記出力側の情報制御装置で、受信したもののうちKt(D+RN)を自身が保持する前記Ktで復号化して(D+RN)’ を得て、該(D+RN)’に不可逆演算処理したH[(D+RN)’]を取得して、受信したもののうちのH[D+RN]と該H[(D+RN)’]を比較して、一致した場合には認証する、
ことを特徴とする認証方法。 - 更に、認証が終了した後、前記各情報制御装置において、前記共通鍵Kt、前記公開鍵Kpを記憶領域から消去する、ことを特徴とする請求項2記載の認証方法。
- 複数の情報制御装置及び認証制御装置からなるシステムにおいて、入力側の情報制御装置と出力側の情報制御装置の間の秘匿通信を実現するための通信制御方法であって、
あらかじめ信頼される環境にて、秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)を前記各情報制御装置内の記憶領域に格納し、
前記入力側の情報制御装置からの認証要求に応じて、前記認証制御装置は入力側、出力側それぞれの情報制御装置に、秘密鍵Ksの公開鍵ペアであるKpと乱数RNを共通鍵Ktで暗号化したKt(RN)、すなわちKp+Kt(RN)を送信し、
前記各情報制御装置は、前記認証制御装置から送られた公開鍵Kpによって、自身が保持している暗号化情報Ks(Kt)を復号化して共通鍵Ktを得、更に該共通鍵Ktで前記認証制御装置から送られたKt(RN)を復号化してRNを得、
前記入力側の情報制御装置は、送信したいデータDに乱数RNを追加したD+RNを共通鍵Ktで暗号化したKt(D+RN)及びD+RNを不可逆演算処理したH[D+RN]、すなわちKt(D+RN)+H[D+RN]を、前記認証制御装置を介して前記出力側の情報制御装置に送信し、
前記出力側の情報制御装置で、受信したもののうちKt(D+RN)を自身が保持する前記Ktで復号化して(D+RN)’ を得て、該(D+RN)’に不可逆演算処理したH[(D+RN)’]を取得して、受信したもののうちのH[D+RN]と該H[(D+RN)’]を比較して、一致した場合には受信したデータDが正常であるものとし、該当する処理を行う、
ことを特徴とする通信制御方法。 - 更に、前記該当する処理を終了した後、前記各情報制御装置において、前記共通鍵Kt、前記公開鍵Kpを記憶領域から消去する、ことを特徴とする請求項4記載の通信制御方法。
- あらかじめ信頼される環境にて、秘密鍵Ksで共通鍵Ktを暗号化した暗号化情報Ks(Kt)を格納する記憶部と、
暗号化鍵を用いて暗号化または復号化を実行する暗号/復号処理部と、
不可逆演算を行う不可逆演算を実行する不可逆演算処理部と、
他の装置と通信する通信部と、
を備え、
認証要求を前記通信部から送信し、
前記認証要求に対応して認証制御装置から送信された秘密鍵Ksの公開鍵ペアであるKpと乱数RNを共通鍵Ktで暗号化したKt(RN)であるKp+Kt(RN)を前記通信部にて受信し、
前記受信した公開鍵Kpを用いて前記暗号/復号処理部にて、前記記憶部に格納されている暗号化情報Ks(Kt)を復号化して共通鍵Ktを得、更に該共通鍵Ktで前記認証制御装置から送られたKt(RN)を復号化してRNを得、
入力側である場合、前記暗号/復号処理部にて送信したいデータDに乱数RNを追加したD+RNを共通鍵Ktで暗号化したKt(D+RN)を生成し、また前記不可逆演算処理部にてD+RNを不可逆演算処理したH[D+RN]を生成し、Kt(D+RN)+H[D+RN]として前記通信部から出力側に送信し、
出力側である場合、前記通信部にて受信したもののうち、前記暗号/復号処理部にてKt(D+RN)を自身が保持する前記Ktで復号化して(D+RN)’ を得て、前記不可逆演算処理部にて該(D+RN)’に不可逆演算処理してH[(D+RN)’]を取得して、受信したもののうちのH[D+RN]と該H[(D+RN)’]を比較して、一致した場合には認証成立とし、受信したデータDが正常であるとして該当する処理を行う、
ことを特徴とする情報制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006070009A JP2007251437A (ja) | 2006-03-14 | 2006-03-14 | 認証方法及び安全な通信制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006070009A JP2007251437A (ja) | 2006-03-14 | 2006-03-14 | 認証方法及び安全な通信制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007251437A true JP2007251437A (ja) | 2007-09-27 |
Family
ID=38595295
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006070009A Withdrawn JP2007251437A (ja) | 2006-03-14 | 2006-03-14 | 認証方法及び安全な通信制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007251437A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017005712A (ja) * | 2015-06-12 | 2017-01-05 | イーエム・ミクロエレクトロニク−マリン・エス アー | 腕時計の集積回路に銀行データをプログラミングする方法 |
-
2006
- 2006-03-14 JP JP2006070009A patent/JP2007251437A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017005712A (ja) * | 2015-06-12 | 2017-01-05 | イーエム・ミクロエレクトロニク−マリン・エス アー | 腕時計の集積回路に銀行データをプログラミングする方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4615601B2 (ja) | コンピュータセキュリティシステムおよびコンピュータセキュリティ方法 | |
US6230272B1 (en) | System and method for protecting a multipurpose data string used for both decrypting data and for authenticating a user | |
CA2545015C (en) | Portable security transaction protocol | |
US11063749B2 (en) | Cryptographic key management based on identity information | |
CN1985466B (zh) | 使用分发cd按签署组向设备传递直接证据私钥的方法 | |
US8281132B2 (en) | Method and apparatus for security over multiple interfaces | |
US20080059797A1 (en) | Data Communication System, Agent System Server, Computer Program, and Data Communication Method | |
EP0865695A1 (en) | An apparatus and method for cryptographic companion imprinting | |
CN102077213A (zh) | 用于确保通信的认证和完整性的技术 | |
JP2008269610A (ja) | リモートアプリケーションを対象とした機密データの保護 | |
CN110868291B (zh) | 一种数据加密传输方法、装置、系统及存储介质 | |
US8181869B2 (en) | Method for customizing customer identifier | |
KR102234825B1 (ko) | 암호 동작들의 안전한 수행 | |
CN110431803B (zh) | 基于身份信息管理加密密钥 | |
KR20220086135A (ko) | 블록체인 기반의 전력 거래 운영 시스템 | |
CN107409043B (zh) | 基于中央加密的存储数据对产品的分布式处理 | |
JP5380368B2 (ja) | Icチップ発行システム、icチップ発行方法およびicチップ発行プログラム | |
JP2007251437A (ja) | 認証方法及び安全な通信制御方法 | |
JP2002247021A (ja) | アクセス制限付コンテンツ表示方法およびその装置 | |
JP2000232442A (ja) | 情報処理方法及びシステム | |
JP2001118038A (ja) | 計算装置、計算機システム及び記録媒体 | |
JP2015015542A (ja) | 情報処理システム | |
KR101006803B1 (ko) | 인증 기능을 갖는 rfid 인증 장치 및 방법 | |
JP2008306685A (ja) | セキュリティ情報設定システム、そのマスタ端末、一般端末、プログラム | |
JP2002217895A (ja) | データ・アプリケーション格納方法及び、コマンド実行方法及びシステム及びデータ・アプリケーション格納プログラム及びデータ・アプリケーション格納プログラムを格納した記憶媒体及びコマンド実行プログラム及びコマンド実行プログラムを格納した記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20090602 |