(57)【要約】      （修正有）【課題】電子情報をある特定のグループの複数の利用者が利用したり共有する場合、この特定のグループの複数の利用者に対して、相異なる復号鍵（秘密鍵）を生成し配布する。また、利用者が所有する秘密鍵が紛失、盗難になどの不測の事態に遭遇した場合、当該秘密鍵の利用を物理的に停止させることにより、安全な暗号化、復号化、電子署名データ作成、検証などの暗号処理機能を提供する。【解決手段】楕円曲線の、公開鍵、秘密鍵の暗号システムを利用し、秘密鍵と同等の復号機能を有する相異なる復号鍵（秘密鍵）を生成し、秘密鍵と生成される復号鍵（秘密鍵）との間には、楕円曲線の離散対数問題と不定方程式の関係しか成立せず、秘密鍵を算出できないようにする。公開鍵を2個以上の複数の秘密鍵で生成するようにし、この複数の秘密鍵を物理的に別の場所に保管し、これらを連動して、復号化や電子署名データ作成などの暗号処理を実施する。【選択図】図１
2007235659.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークシステムシステムにおいて、ある電子情報を、提供者がある特定の複数の利用者に提供する、またはある特定の複数の利用者と共有するとき、この特定の複数の利用者以外から、当該電子情報を秘匿するために鍵をかけて暗号化し、この特定の複数の利用者だけが、復号化の鍵を所有して当該電子情報を利用するとき、暗号化、復号化の鍵を楕円曲線を利用して定め、各利用者が相異なる復号鍵を所有するように鍵を生成して配布する。
【請求項２】
請求項1に記載の通信ネットワークシステムの暗号処理方法、鍵管理方法において、暗号化、復号化の鍵を楕円曲線を利用して定めるものとし、この鍵を定めるため、楕円曲線上の相異なる巡回群の生成元Go、Geを定め、巡回群Goの位数以下の正の整数f , 巡回群Geの位数以下の正の整数g の組{ f , g } を秘密鍵とし、公開鍵をQ= f・Go + g・Geとして、電子情報を暗号化し復号化する。
【請求項３】
請求項2に記載の通信ネットワークシステムの暗号処理方法、鍵管理方法において、暗号化、復号化の鍵を楕円曲線を利用して定めるものとし、この鍵を定めるため、まず、大きな数の要素を持つ楕円曲線上の大きな素数位数sを持つ相異なる巡回群の生成元Go、Geを定め、0以上s-1以下の2つの正の整数f、g の組を秘密鍵とし、公開鍵をQ= f・Go + g・Geとして、電子情報を暗号化し復号化する。
【請求項４】
請求項2に記載の通信ネットワークシステムの暗号処理方法において、特定の複数の利用者には、この秘密鍵{ f , g }と同等の復号機能を有する情報データを秘密鍵 f , g をもとに生成し、利用者の相異なる秘密鍵として配布して与え、提供者の暗号化された電子情報の利用者は配布された秘密鍵で復号化して利用するものとし、このとき、特定の複数の利用者の所有する秘密鍵の情報データをいくつか組み合わせても、提供者の秘密鍵f、gを、有意の時間内に求められないような関係が成立するものとする。
【請求項５】
請求項3に記載の、通信ネットワークシステムの暗号処理方法、鍵管理方法において, 0以上s-1以下の正の整数、f , g , c , d を定めて固定し、0 以上s-1以下の2個の正の整数ui, viの組を、
u= f*d ( mod s )
v = g*c ( mod s )
の関係を満足するものとし、｛ f , g , c , d , u , v ｝を管理者側の秘密鍵の組として定め、楕円曲線上の点Q、W を Q = f・Go +g・Ge 、W = c・Go + d・Ge と定める。特定の複数の利用者の所有する秘密鍵を定める4個の正の整数の組{ ai , bi , ci , di } には、
ai*di = u( mod s )
bi*ci = v( mod s ) の関係式を満足し、楕円曲線上の点Qi , Si を、Qi = ai・Go +bi・Ge 、Si = ci・Go + di・Ge と定め、利用者の所有する秘密鍵の組を { ai , bi , Si } とし、電子情報提供者が｛ Q , W ｝で暗号化した電子情報を、複数の各利用者は秘密鍵の組 { ai , bi Qi , Si } をもとに復号化して利用する。
【請求項６】
請求項2に記載の、通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法において、暗号化の公開鍵をQ = Q1 + Q2 , Q1 = f・Go , Q2 = g・Geと2つの鍵の和に分け、Q1に対応する秘密鍵ｆを特定の複数の利用者に配布し、Q2に対応する秘密鍵gは、通信ネットワークシステム上の信頼できる第３者の鍵管理装置に保管して管理し、利用者が、Qで暗号化された電子情報を復号化して利用するとき、自分が所有しているQ1に対応する秘密鍵fと、鍵管理装置に保管されているQ2に対応する秘密鍵gとを連動させて、当該電子情報を復号化して利用するが、連動して復号化する処理の過程に得た情報から、利用者は、Q2に対応する秘密鍵gの値を求めることはできない仕組みを有する。
【請求項７】
請求項2に記載の、通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法において, 公開鍵Q = f・Go + g・Ge 、秘密鍵 { f , g }を利用し、電子情報mの電子署名データSを、電子情報のハッシュ値、2組の乱数Ku、Kv、秘密鍵f、g、（またはおよび楕円曲線上の点Go, Geをもとに作成し、この電子署名データSをQ, Go, Ge をもとに検証する。
【請求項８】
請求項6に記載の、通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法、電子署名方法において、公開鍵Q = f・Go + g・Geの秘密鍵{ f ,g }のうち、一方の秘密鍵fを、電子情報提供者が所有し、もう片方の秘密鍵gを、通信ネットワークシステム上の信頼できる第3者、もしくは自宅の鍵管理装置に保管して管理し、電子情報mに関する電子署名データSを作成するとき、電子情報提供者は、当該電子情報mのハッシュ値e、秘密鍵f, 乱数Ku、楕円曲線上の点Goをもとに電子署名データS1を作成し、鍵管理装置は、当該電子情報mのハッシュ値e、秘密鍵g、 乱数Kv、楕円曲線上の点Geをもとに並行して電子署名データS2を作成し、それぞれが作成したデータS1、S2を合成して当該電子情報の電子署名データSとして、作成して利用し、情報提供者の秘密鍵fが、紛失、盗難にあうなどの不測の事態が発生した場合は、鍵管理装置側で、電子署名データS2の作成を停止する。
【請求項９】
請求項7に記載の通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法、電子署名方法において, 秘密鍵{ f , g }に対応する公開鍵Q = f・Go + g・Geに対して、単独の秘密鍵fに対応する公開鍵Q1 = f・Go, を定め、利用条件を設定して、秘密鍵f、g に関する公開鍵Qで暗号化、電子署名データ作成等の暗号処理を実施するか、公開鍵Q1単独で、暗号化、電子署名データ作成等の暗号処理を実施するか、公開鍵Q、Q1使い分ける。
【請求項１０】
請求項8に記載の通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法、電子署名方法において, 電子情報を共有する利用者を階層化するなど、複数のグループに分け、各グループで共通に利用する暗号化の公開鍵を定め、各グループの構成員には、当該グループに定められた暗号化の公開鍵に対応する相異なる復号鍵を配布する。
【請求項１１】
請求項9に記載の通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法、電子署名方法において, 公開鍵Q = f・Go + g・Geの秘密鍵{ f , g }のうち、一方の秘密鍵fを、情報提供者が所有し、もう片方の秘密鍵gを、通信ネットワークシステム上の信頼できる第3者、もしくは自宅の鍵管理装置に保管して管理し、電子情報mに関する電子署名データSを作成するとき、当該電子情報mをm1、m2の2個の電子情報に分割し、情報提供者は、電子情報m1のハッシュ値e1、秘密鍵f, 乱数Ku、楕円曲線上の点Goをもとに電子署名データS1を作成し、鍵管理装置は、電子情報m2のハッシュ値e2、秘密鍵g、 乱数Kv、楕円曲線上の点Geをもとに電子署名データS2を並行して作成し、それぞれが作成したデータS1、S2を合成して当該電子情報mの電子署名データSとして利用し、情報提供者の秘密鍵fが紛失盗難にあうなどの不測の事態に遭遇した場合は、鍵管理装置側で、電子署名データS2の作成を停止する。
【請求項１２】
請求項10に記載の通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法、電子署名方法において, 特定のＮ人の各利用者が所有する相異なる秘密鍵を、
当該通信ネットワークの管理者側が、2次元バーコード、ICカード、またはICタグなどの電子媒体に記載して配布し、もう片方の秘密鍵を当該管理者側で保管し、当該利用者が、使用する端末装置を当該通信ネットワークシステムに接続したとき、当該管理者側で、当該利用者の所有する秘密鍵によって作成された電子情報と、管理者側で保管している当該利用者の秘密鍵によって作成された電子情報とを合成して、当該利用者の正当性を確認し、当該管理者側が、当該利用者の端末装置が、当該通信ネットワークシステムを利用するのに必要なIPアドレスを割り当て配布する。
【請求項１３】
請求項11に記載の通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法、電子署名方法において、当該通信ネットワークシステムの利用者の秘密鍵が盗難にあうなど不測の事態が発生した場合は、当該管理者側で保管している当該利用者の秘密鍵を使用した電子情報の作成を停止し、不当な利用者による当該通信ネットワークシステムへの接続を防止する。
【請求項１４】
請求項12に記載の通信ネットワークシステムにおいて、情報の提供者が製品情報などを2次元バーコードなどに変換し、カタログなどの印刷媒体に記載して提供し、利用者は、提供される印刷媒体から必要な製品情報を、カメラなどの光学装置で読み込み、電子情報に変換し、この電子情報と製品の契約に必要な、利用者に関する固有の情報とを組み合わせて、決済用の電子情報mを作成し、この電子情報を、利用者に配布されたた2個の秘密鍵を連動させて電子署名データSを作成し、情報の提供者に送信し、商取引などの電子決済を行う。
【請求項１５】
請求項2,3に記載の通信ネットワークシステムの暗号処理法方法、鍵管理方法において、Go , Geの生成する楕円曲線上の部分加法群をEとし、外積空間Ｅ(X)Ｅ
( ここで、（X）は、外積を示す。)の元Go(X)Geが生成する空間とし
とし、外積空間Ｅ(X)ＥからZへの射影をPzとする。請求項4において、Q(X)Wとし、乱数をKu , Kv とし、楕円曲線上の点R1=Ku・Ge , R2 = Kv・Go
により、Ru = f・R1+g・R2 より、Ru(X)W をもとに、情報データを暗号化し、
R1 , R2 より、Rs = ai・R1＋bi・R2 を計算し、Rs(X)Siをもとに、暗号化された情報を復号化する。
【請求項１６】
請求項2,3に記載の通信ネットワークシステムの暗号処理法方法、鍵管理方法において、平文ｍを平文m1, m2に分割するか、同一の平文m=m1, m=m2とし、ハシュ値をe1= H(m1), e2=H(m2) とし、乱数Ku,Kvを生成し、R1=Ku・Go、R2=Kv・Geとし、
R1,R2のｘ座標の成分から、r1, r2 をもとめ、電子署名S1 として、｛ e1, R1, e1*f/Ku, e1*r1/Ku ｝電子署名S2 として、｛ e2, R2, e2*g/Kv, e2*r2/Kv ｝とし、電子署名の検証は、
Ｑ＝ f・Go+ g・Ge、Ｒ＝ R1+R2, R1, R2, e1・Go 、e2・Geより、weil-paring を用いて実施する。
【請求項１７】
請求項１６に記載のweil-paringを用いた、電子署名を、請求項１５で記載した鍵システムで実施し、グループで同一の暗号で共有するデータに対して、個別に電子署名を作成し、検証する。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークシステムで利用される、秘匿した電子情報の送受信、共有、および電子情報の決済に関するものであり、特に電子情報の提供者が、ある定まった通信相手、もしくは特定の複数の利用者を定めて、提供者が電子情報を暗号化し、利用者が、復号化して利用すること、および提供者が当該電子情報に対して電子署名データを作成し、利用者が検証するのに好適な、暗号処理方法、鍵生成方法、鍵管理方法、電子署名方法、電子データ管理方法、通信ネットワークシステムに関する。
【背景技術】
【０００２】
現代の情報社会において、通信ネットワークシステムにセキュリティを構築することは必須の基盤技術となっている。電子政府などにおいて、利用可能な暗号技術の評価を目的として、暗号技術評価委員会が設立され、その活動報告書である暗号技術評価報告書  CRYPTREC Report(非特許文献１) には、セキュリティシステム構築に必要な暗号技術がまとめられている。なかでも公開鍵暗号システムは必須の基盤技術となっており、RSAシステムや、楕円曲線を利用したものが実用化され、ほぼ同等の機能が実現可能となっている。
ネットワークセキュリティシステムは、特定の情報の送信者がある定まった通信相手に対して、情報データを暗号化して送信し、受信者がこれを復号し、必要に応じて相手を認証して利用する１対１の暗号化通信が基本である。
公開鍵暗号システムの場合、公開鍵Ｑと秘密鍵ｄとが１対１に対応する。この２組の鍵には、秘密鍵ｄから容易に公開鍵Ｑを求めることはできるが、公開鍵Ｑから、秘密鍵ｄが有意の時間内では、容易に求められないという関係を持つ。このため、公開鍵Ｑは、広く公開することができる。
楕円曲線暗号の場合、非特許文献２に示すように
【０００３】
【数１】
2007235659.tif 000003
有限体を定義体とする楕円曲線上の点は、アーベル群を構成し、高い素数位数sの点を持楕円曲線が存在する場合、この点Gをベースポイントとして設定する。楕円曲線上のアーベル群は、離散対数問題を構成しており、ｓ−１以下の正の整数をdとし、 Q = d・G (・は楕円曲線上の加法演算)とすると、Qからdを有意の時間内では、容易に求められないという性質を持つ。このため、公開鍵をＱ、秘密鍵をｄとすることができる。
利用者(ユーザ)の利用する鍵として、１個の秘密鍵d と１個の公開鍵Qを割り当て、1個の秘密鍵dは、当該利用者(ユーザ)が秘匿して管理し、暗号化する公開鍵Qはその名の通り公開することができる。公開鍵Qで暗号化された電子情報は、秘密鍵dを所有する当該利用者(ユーザ)のみが復号することができ、これにより暗号化通信の秘匿性を確保している。
暗号化された電子情報を復号化するのに用いられる秘密鍵dは、この秘密鍵を所有している利用者(ユーザ)がただ一人であることを利用して、この利用者(ユーザ)が提供する電子情報の電子署名データを作成するのに使用される。秘密鍵を所有している利用者(ユーザ) がただ一人であるため、別の利用者(ユーザ)が同じ電子署名データを作成することはできないため、当該利用者(ユーザ)が電子署名データの作成者であることを保証することができる。
しかし、秘密鍵は１個であり、この鍵を紛失したり盗まれたりすると、悪用される可能性がある。このを防止するため、利用者(ユーザ)が使用できない公開鍵Qoなどは棄却リストに載せるなどの防止策がとられるが、もっと物理的に積極的に、鍵の悪用を防止するより安全で確実な方法をとることが望まれる。
暗号論的に利用できる安全な楕円曲線とは、先に述べたとおり、高い素数位数sの点を持つ楕円曲線である。安全な楕円曲線を定めることは、暗号システムを構築するうえで重要な課題である。非特許文献３には、虚数乗法論を用いるなどいくつかの安全な楕円曲線を
生成する方法が示されている。
楕円曲線は、アーベル群を構成することから、安全性を確保するため、楕円曲線上の１個のベースポイントＧではなく、例えば、特許文献１では、楕円曲線上の異なる２個の点
G1,G2をもとに、電子署名を作成する方法が提案されている。
アーベル群の構造定理より、楕円曲線には、複数個の生成元が存在する。楕円曲線上の異なる２個の点G1,G2が、アーベル群の異なる生成元である場合、G1,G2から生成される
群は、巡回群とはならないが、この群も離散対数問題を構成している。
たとえば、特許文献２では、G1,G2から生成される巡回群とはならないアーベル群に対して、暗号システムを構成する方式が提案されている。
これらの暗号方式は、いずれも暗号を構成する離散対数問題の安全性を高める方式に関するものである。
暗号システムの安全性を考慮した場合、暗号解読を困難にするため、離散対数問題の安全性を高めることは、非常に重要であるが、さらに、鍵の紛失や盗難に対する安全な対応方式を構築することも重要である。
暗号システムを構成する場合、システム運用の利便性を考慮した場合、電子情報の暗号化、復号化を処理する鍵で、電子署名を処理することがのぞましい。
また、セキュリティ面では、複数のものがある格納された電子情報を利用した場合、だれが当該電子情報を利用したか、確実な利用履歴管理を実施することも必要となる。
利用履歴管理を実施することで、当該電子情報を利用することを許可されたユーザだけが、当該電子情報を利用を許可し、許可されないユーザからの不正アクセスを防止することができる。
不正に秘密鍵が盗まれた場合は、対応する公開鍵で暗号化された電子情報の復号化を
物理的に防止できれば、より安全である。
【０００４】
電子媒体に格納された電子情報を利用する場合、一人の個人だけでなく、ある特定のグループ、即ちある特定のＮ人で当該電子情報を安全に共有するという状況が一般的である。
ある特定のN人で電子情報を共有する必要が生じた場合、この１対１の暗号化通信の繰り返しによる１対Nのシステムを構成することができる。この繰り返しによる方式は、電子情報を暗号化する暗号化鍵と復号化する復号化鍵を一組用意し、Ｎ人の通信相手に対してこの同一の復号鍵を配布して通信する方法である。復号鍵を配布するには、秘匿するなどの工夫がなされるが、配布される復号鍵は、Ｎ人の通信相手に対して共通である。
このときの、Ｎ人の通信相手の復号鍵がＮ個相異なれば、N人のどのユーザが当該電子情報を利用しているか識別でき、また直接N人のユーザに対して暗号化通信が可能になるなど効率的であり、セキュリティシステムには、このような１対Ｎの暗号化通信の仕組みをかね備えていることが望ましい。
【特許文献１】特許出願公開番号  特開平11-212453  楕円曲線を用いたディジタル署名方法、その装置およびプログラム記録媒体
【特許文献２】特許出願公開番号  特開  2000-221880  暗号システム
【非特許文献１】暗号技術評価報告書 ( 2002  年度版 )CRYPTOREC Report 2002平成15年3月  情報処理振興事業協会  通信・放送機構
【非特許文献２】筑波大学集中講義資料  宮地  充子  北陸先端科学技術大学院大学    http://www.risk.sie.tsukuba.ac.jp/~kame/topics_1/risk_eng_topics1_2001.pdf
【非特許文献３】「楕円曲線暗号」  ピアソン・エデユケーション          （イアン・F・ブラケ、カデイエル・セロッシ            ナイジェル・P・スマート  =著  鈴木  治朗  ＝  訳
【非特許文献４】「The Arithmetic of Elliptic Curves」Joseph H.Silverman GTM 106, Springer-Verlag New York 1986
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ある特定のグループのN人のが電子情報利用システムを利用しこのシステムのなかで、特定の電子情報を共有し、この特定のＮ人以外の者から当該電子情報を秘匿するために、当該電子情報を暗号化する場合、この暗号化された電子情報を特定のＮ人が、効率良く復号化して利用するには、N人に対して、相異なる復号鍵を配布する必要がある。
本発明では、電子情報利用システムにおいて信頼のおける管理者を設定し、当該グループにおいて共有する電子情報を暗号化するために使用する暗号鍵（公開鍵）、および復号化するのに使用する復号鍵（秘密鍵）作成するとともに、各ユーザにＮ個の相異なる復号鍵を生成し提供するが、このとき最も問題となるのは、複数の利用者であるユーザが結託することで、共有する電子情報を復号化するのに使用する別の秘密鍵を構成しようとすることである。この秘密鍵が求められれば、電子情報利用システムの管理者以外の者が、別の秘密鍵を生成して配布することが可能となり、システムの管理者の鍵管理が出来なくなる。
また、次に問題となるのは、共通に利用するユーザ数Ｎが増大するにつれて、異なる復号鍵（秘密鍵）の生成効率が劣化する可能性を生じることである。本発明では、Ｎ人が電子情報を共有する暗号システムにおいて、利用者(ユーザ)の結託による攻撃を受けない、かつ個別の復号鍵（秘密鍵）を効率よく生成する方式を提供することを課題とする。
本発明では、この暗号システムを、有限体上の楕円曲線のアーベル群を利用して構成するが、このとき、公開鍵をQ = f・G o+ g・Ge ( f , g ; ある有限体の要素  、Go , Ge ;  楕円曲線上の点 ) と鍵の和で表現する方法を利用している。これは、1個の公開鍵に2個の秘密鍵を対応させたものと考えられる。電子情報は、公開鍵Ｑをもとに暗号化するが、復号化に使用する秘密鍵、f, gを別の場所に格納し、f, gを連動させて復号処理を実施するようにする。常識的には、2個の秘密鍵が必要となると、利用者の鍵管理が複雑となり、不便さが増すと考えられる。しかし、成りすましを目的として、鍵を盗むことを考えた場合、物理的に別の場所に保管されている秘密鍵の両方を盗むことは難しく、鍵管理の安全性はきわめて高くすることができる。
本発明では、このように１個の公開鍵に２個の秘密鍵を持たせることを利用して、より安全なセキュリティシステムを構築することを課題とする。
近年、移動体端末がかなり普及するようになったが、たとえば、1個の秘密鍵d1を移動体端末で使用し、もう１個の秘密鍵d2を自宅または信頼できる第3者の端末装置に保管し、2つの秘密鍵d1,d2を通信ネットワーク上で、連携して電子署名データを作成する場合を考える。屋外で使用する移動端末は、盗まれたり紛失するなど不測の事態に遭遇する機会が高くなるが、このような不測の事態に遭遇した場合、利用者(ユーザ)は、自宅または信頼できる第3者の端末装置に保管しているもう1個の秘密鍵d2の使用を停止することができる。こうすることにより、移動体端末が盗難にあったとき秘密鍵d1だけでは、電子署名を作成できないため不法な電子署名データの作成を防止することが可能となる。
秘密鍵f, gで電子署名データを作成する場合、作成の対象とする電子情報mを、m1,
m2の2つの部分に分け、秘密鍵fで電子情報ｍ１に対する電子署名データをS1を作成し、秘密鍵gで電子情報ｍ2に対する電子署名データをS2を作成し、S1,S2を合成して、
電子情報mに対する電子署名データをＳを作成できれば、下記に示す通り情報漏洩などに対応でき、安全性を高めることができる。
m2を、たとえば銀行番号などの、固定した秘匿性の高いデータとすると、移動体端末端末を紛失したりした場合、盗まれるのは、m1に関する電子情報だけであり、秘匿性の高い個人情報に対する安全性を高めることができる。
同様に、1個の秘密鍵d1を利用者（ユーザ）が所有し、もう1個の秘密鍵d2を信頼できる第3者の端末装置で管理し、公開鍵Qoで暗号化された電子情報を復号化することを考える。本発明が提供する楕円曲線暗号の場合、2個の秘密鍵d1,d2をもとに、電子情報を復号化するので、復号する際、第3者の端末に保管している秘密鍵d1に関する操作が必要となり、確実にどの利用者(ユーザ）が、暗号化されているデータにアクセスしているか特定し管理することが可能と考えられる。このとき、ユーザが関与せずにデータがアクセスされていれば、ユーザの鍵の漏洩を感知することができる。また、ユーザが所有している秘密鍵d1が紛失したり、盗まれたりした場合、第3者の端末に保管している秘密鍵d2に関する使用操作を停止することにより、利用者（ユーザ）が公開鍵Qで暗号化した情報の不法な復号化を防止することが可能と考えられる。このように、本発明は、2つの秘密鍵を、別の場所に保管して管理することにより、鍵の紛失、盗難などの不測の事態に対して、より安全に対応可能な、暗号化、復号化、電子署名データ作成、検証、およびデータアクセスなどのセキュリティシステムを提供することを課題とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、
本発明の請求項1に記載の様態によれば、暗号化、復号化の鍵を楕円曲線を利用して定め、特定の複数の利用者が、所有する復号鍵を相異なるものとして配布することが可能となる、通信ネットワークシステムの暗号処理方法、鍵管理方法が提供される。
本発明の請求項2に記載の様態によれば、楕円曲線上の相異なる巡回群の生成元となるGo、Geを定め、巡回群Goの位数以下の正の整数f , 巡回群Geの位数以下の正の整数g の組{ f , g} を秘密鍵とし、公開鍵をQ = f・Go + g・Geとし、電子情報をQ = Q1 + Q2 
( Q1 = f・Go 、Q2 = g・Ge ) で暗号化し、{ f , g }で復号化する通信ネットワークシステムの暗号処理方法が提供される。
本発明の請求項3に記載の様態によれば、大きな数の要素を持つ楕円曲線上の大きな素数位数sを持つ、相異なる巡回群の生成元となるGo、Geを定め、0以上s-1以下の正の整数の組{ f , g} を秘密鍵とし、公開鍵をQ = f・Go + g・Geとし、電子情報をQ = Q1 + Q2 
( Q1 = f・Go 、Q2 = g・Ge ) で暗号化し、{ f , g }で復号化し、大きな素数sで、安全性を確保する通信ネットワークシステムの暗号処理方法が提供される。
本発明の請求項4に記載の様態によれば、通信ネットワークシステムの暗号処理方法において、特定の複数の利用者は、この秘密鍵{ f , g } と同等の復号機能を有する、相異なる情報データの秘密鍵を所有し、複数の利用者の所有する秘密鍵の情報データをいくつか組み合わせても、提供者の秘密鍵f、gを、求めることができない、より安全で効率的な通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法が提供される。
本発明の請求項5に記載の様態によれば, 通信ネットワークシステムの暗号処理方法、鍵管理方法において, 0以上s-1以下の正の整数、f , g , c , d を定めて固定し、0 以上s-1以下の2個の正の整数u, vの組を、
u= f*d ( mod s )
v = g*c ( mod s )
の関係を満足するものとし、｛ f , g , c , d , u , v ｝を管理者側の秘密鍵の組として定め、楕円曲線上の点Q、W を Q = f・Go + g・Ge 、W = c・Go + d・Ge と定める。特定の複数の利用者の所有する秘密鍵を定める4個の正の整数の組{ ai , bi , ci , di } には、
ai*di = u( mod s )
bi*ci = v( mod s ) の関係式を満足し、楕円曲線上の点Qi , Si を、Qi = ai・Go +bi・Ge 、Si = ci・Go + di・Ge と定め、利用者の所有する秘密鍵の組を { ai , bi , Si } とし、電子情報提供者が｛ Q , W ｝で暗号化した電子情報を、複数の各利用者は秘密鍵の組 { ai , bi , Si } をもとに復号化して利用する方式の、通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法、データ共有方法が提供される。
本発明の請求項6に記載の様態によれば、公開鍵をQo = Q1 + Q2と2つに分け、Q1に対応する秘密鍵を特定の複数の利用者に配布し、Q2に対応する秘密鍵は、通信ネットワークシステム上の信頼えきる第3者の鍵管理装置に保管して管理し、公開鍵Q1、Q2それぞれに対応する秘密鍵を連動させて、電子情報を復号化する暗号処理を実施するが、利用者は、Q2に対応する秘密鍵を求めることはできず、公開鍵Q1の利用者の所有する秘密鍵が、紛失、盗難などの不測の事態が発生した場合には、Q2に関する暗号処理機能を停止させることにより、Qに関する不法な暗号処理を防止するよりことが可能で、逆にユーザが知らぬ間にデータのアクセスが発生したときは、ユーザーの鍵が漏洩したこを感知できる、安全な通信ネットワークシステムの暗号処理方法、鍵管理方法が提供される。
本発明の請求項7に記載の様態によれば、通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法において, 公開鍵Q = f・Go + g・Ge 、秘密鍵 { f , g }を利用し、電子情報mの電子署名データSを、電子情報のハッシュ値、2組の乱数Ku、Kv、秘密鍵f、g、（またはおよび楕円曲線上の点Go, Geをもとに作成し、この電子署名データSをQ, Go, Ge をもとに検証する方式の通信ネットワークシステムの電子署名方法が提供される。
本発明の請求項8に記載の様態によれば、通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法、電子署名方法において、公開鍵Q = f・Go + g・Geの秘密鍵{ f ,g }のうち、一方の秘密鍵fを、電子情報提供者が所有し、もう片方の秘密鍵gを、通信ネットワークシステム上の信頼できる第3者、もしくは自宅の鍵管理装置に保管して管理し、電子情報mに関する電子署名データSを作成するとき、電子情報提供者は、当該電子情報mのハッシュ値e、秘密鍵f, 乱数Ku、楕円曲線上の点Goをもとに電子署名データS1を作成し、鍵管理装置は、当該電子情報mのハッシュ値e、秘密鍵g、 乱数Kv、楕円曲線上の点Geをもとに並行して電子署名データS2を作成し、それぞれが作成したデータS1、S2を合成して当該電子情報の電子署名データSとして、作成して利用し、情報提供者の秘密鍵fが、紛失、盗難にあうなどの不測の事態が発生した場合は、鍵管理装置側で、電子署名データS2の作成を停止するより安全な通信ネットワークシステムの電子署名方法が提供される方式の、より安全な通信ネットワークシステムの電子署名方法が提供される。
本発明の請求項9に記載の様態によれば, 公開鍵Qo = f・Go + g・Geに対して、秘密鍵fに対応するもうひとつの公開鍵Q1 = f・Goを定め、利用条件を設定して、公開鍵 Qo、Q1による、暗号化、電子署名データ作成等の暗号処理を使い分けることが可能な、より利便性の高い、通信ネットワークシステムの暗号処理方法、電子署名方法が提供される。
本発明の請求項10に記載の様態によれば, 電子情報を共有する利用者を階層化するなど、複数のグループに分け、各グループで共通に利用する暗号化の公開鍵を定め、各グループの構成員には、当該グループに定められた暗号化の公開鍵に対応する相異なる復号鍵を配布する方式の、効率よく利便性の高い鍵管理が可能な、通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法が提供される。
本発明の請求項11に記載の様態によれば, 公開鍵Qo = f・Go + g・Geの秘密鍵f 、gのうち、一方の秘密鍵fを、情報提供者が所有し、もう片方の秘密鍵gを、通信ネットワークシステム上の信頼できる第3者、もしくは自宅の鍵管理装置に保管して管理し、電子情報mに関する電子署名データSを作成するとき、当該電子情報mをm1、m2の2個の電子情報に分割し、情報提供者は、電子情報m1に関する電子署名データS1を作成し、鍵管理装置は、電子情報m2に関する電子署名データS2を並行して作成し、それぞれが作成したデータS1、S2を合成して当該電子情報mの電子署名データSとして利用し、情報提供者の秘密鍵fが紛失盗難にあうなどの不測の事態に遭遇した場合は、鍵管理装置側で、電子署名データS2の作成を停止することにより、情報提供者の秘密鍵を使用する不法な電子署名データの作成を防止する方式の、より安全な、通信ネットワークシステムの暗号処理方法、鍵管理方法、鍵生成方法が提供される。
本発明の請求項12に記載の様態によれば, 特定のＮ人の各利用者が所有する相異なる秘密鍵を、当該通信ネットワークの管理者側が、2次元バーコード、ICカード、またはICタグなどの電子媒体に記載して配布するため、秘匿性の高い安全な鍵管理方法が提供される。また、もう片方の秘密鍵を当該管理者側で保管し、当該利用者が、使用する端末装置を当該通信ネットワークシステムに接続したとき、当該管理者側で、当該利用者の所有する秘密鍵によって作成された電子情報と、管理者側で保管している当該利用者の秘密鍵によって作成された電子情報とを合成して、当該利用者の正当性を確認し、当該管理者側が、当該利用者の端末装置が、当該通信ネットワークシステムを利用するのに必要なIPアドレスを割り当てて配布するため、通信ネットワークシステムのより安全なアクセス管理方法が提供される。
本発明の請求項13に記載の様態によれば、当該通信ネットワークシステムの利用者の秘密鍵が盗難にあうなど不測の事態が発生した場合は、当該管理者側で保管している当該利用者の秘密鍵を使用した電子情報の作成を停止し、不当な利用者による当該通信ネットワークシステムへの接続を防止することができるため、通信ネットワークシステムのより安全なアクセス管理方法が提供される。
本発明の請求項14に記載の様態によれば、利用者は、提供されるカタログなど２次元バーコードの記載された印刷媒体から必要な製品情報を、カメラなどの光学装置と接続する端末装置で読み込み、この電子情報と製品の契約に必要な、利用者に関する固有の情報とを組み合わせて、決済用の電子情報mを作成し、この電子情報を、利用者に配布された2個の秘密鍵を連動させて電子署名データSを作成し、情報の提供者に送信し、商取引などの電子決済実施することが可能となるが、利用者に関する固有の情報は、利用者が移動端末に格納して携帯する必要がなく、また、カメラなどの光学装置と接続する端末装置を紛失盗難などの不測の事態に遭遇した場合は、利用者に配布された2個の秘密鍵のうち、片方の秘密鍵による電子署名データの作成を停止し、不法な電子署名データの作成を防止できるため、より安全な、通信ネットワークシステムの鍵管理方法、電子署名作成方法が提供される。
請求項15請求項2,3に記載の通信ネットワークシステムの暗号処理法方法、鍵管理方法において、Go , Geの生成する楕円曲線上の部分加法群をEとし、外積空間Ｅ(X)Ｅ
( ここで、（X）は、外積を示す。)の元Go(X)Geが生成する空間とし
とし、外積空間Ｅ(X)ＥからZへの射影をPzとする。請求項4において、Q(X)Wとし、乱数をKu , Kv とし、楕円曲線上の点R1=Ku・Ge , R2 = Kv・Go
により、Ru = f・R1+g・R2 より、Ru(X)W をもとに、情報データを暗号化し、
R1 , R2 より、Rs = ai・R1＋bi・R2 を計算し、Rs(X)Siをもとに、暗号化された情報を復号化する、複数のユーザでデータを共有するための暗号処理方法が提供される。
請求項16 請求項2,3に記載の通信ネットワークシステムの暗号処理法方法、鍵管理方法において、平文ｍを平文m1, m2に分割するか、同一の平文m=m1, m=m2とし、ハシュ値をe1= H(m1), e2=H(m2) とし、乱数Ku,Kvを生成し、R1=Ku・Go、R2=Kv・Geとし、
R1,R2のｘ座標の成分から、r1, r2 をもとめ、電子署名S1 として、｛ e1, R1, e1*f/Ku, e1*r1/Ku ｝電子署名S2 として、｛ e2, R2, e2*g/Kv, e2*r2/Kv ｝とし、電子署名の検証は、
Ｑ＝ f・Go+ g・Ge、Ｒ＝ R1+R2, R1, R2, e1・Go 、e2・Geより、weil-paring を用いて実施する、データの電子署名作成、および電子署名検証方法が提供される。
請求項17に記載の発明によれば、請求項１６に記載のweil-paringを用いて、電子情報ｍに対する電子署名を、請求項１５で記載した公開鍵と秘密鍵｛f、g｝のシステムおいて署名するため、グループで共有する情報データに対して、利用ユーザ個別に電子署名を作成し検証する処理方法が提供される。
【発明の効果】
【０００７】
本発明は、以上に説明した構成により次のような効果を奏する。
請求項1に記載されている発明は、電子情報を楕円曲線を利用して暗号化し、当該電子情報を復号化するため鍵をおのおの相異なるものとして生成し、当該電子情報の利用者の数を生成して配布することが出来る。利用者には特定の１個しか存在しない復号鍵が配布されるため、このことを利用して、どの利用者が当該電子情報を利用しているかアクセス管理が可能となる効果が得られる。
また、利用者の復号鍵が紛失したり盗難にあったとき、どの復号鍵が紛失または盗難に遭ったか、追跡できる効果が得られる。
請求項2に記載の発明は、秘密鍵を{ f , g }とし、公開鍵を Q = f・Go+g・Geと表現されるが、楕円曲線上の点Go , Ge は異なる巡回群の生成元としたため、請求項2に記載のGo １個で生成される公開鍵よりも、Go 、Ge  2個で生成される公開鍵Qに対する秘密鍵は、{ f , g }ただ一組であり、公開鍵暗号の仕組みを組み込める効果が得られる。
請求項3に記載の発明は、秘密鍵を{ f , g }とし、公開鍵を Q = f・Go+g・Geと表現されるが、有限体を定義体とする楕円曲線上の点Go , Ge は大きな素数位数sの異なる巡回群の生成元としたため、本方式の暗号処理をソフトウェア化したばあい、整数で処理するため、丸めの誤差など不安定な計算処理を除去でき、大きな素数位数sを用いることにより、運用上の安全性を確保できる効果が得られる。
請求項4に記載の発明は、楕円曲線暗号を利用し、暗号化の鍵を秘密鍵{ f , g } に対応する公開鍵を Q = f・Go + g・Geとし、複数の利用者には、秘密鍵{ f , g } と同等の復号機能を有する、相異なる復号鍵が配布される。複数の利用者に配布される相異なる復号鍵の情報データを組み合わせても、秘密鍵{ f , g } を求めることは出来ないため、秘密鍵{ f , g } は、安全であり、秘密鍵{ f , g } の所有者が、管理者として電子署名データを実施したり、秘密鍵f、gをもとに複数の利用者に配布する相異なる復号鍵の管理を実施でき、特定のユーザが知らない間に、データのアクセスが発生した場合は、この特定のユーザの鍵が漏洩したことを感知できる効果が得られる。
請求項5に記載の発明は、ユーザに配布する鍵の組を、{ ai , bi , Si }
Qi = ai・Go +bi・Ge, 
Si = ci・Go + di・Ge,
で与え、センター側に秘密鍵u , vに対応して、u = ai*di ( mod s ) , v = bi*ci ( mod s ) の
関係が成立するように鍵の組みをわりあてられる。
楕円曲線の離散対数問題から、Siから、ci , di は求めることはできず、複数のユーザが｛ ai , bi ｝の鍵を持ち寄っても、センター側の秘密鍵、u , vを求めることはできず、ユーザが、異なる鍵で暗号化されたデーたを共有する効果が得られるとともに、｛ ai , bi ｝の鍵を持っているユーザが知らぬ間に、データアクセスされたときは、ユーザの鍵｛ ai , bi ｝が漏洩したことを感知できる効果が得られる。
請求項6に記載の発明は、暗号化の公開鍵をQo = Q1 + Q2 と２つの鍵に分け、Q1の秘密鍵を利用者が所有し、Q2の秘密鍵は、第３者が管理し、連動して復号化の処理を実施するが、利用者は、連動する復号化の処理過程において、Q2に関する秘密鍵の情報を取得することは出来ず、利用者単独で、Qoで暗号化された情報を復号化することは出来ない。このことを利用して、利用者のQ1に関する秘密鍵が紛失したり盗難したり不測の事態が生じた場合、第３者の鍵管理装置のQ2に関する処理を停止させることにより、利用者の秘密鍵の不正な使用を防止する効果が得られるとともに、ユーザが知らぬ間にデータアクセスが発生したときは、ユーザの鍵が漏洩したことを感知する効果が得られる。
請求項7に記載の発明は、公開鍵  Q = f・Go + g・Geの秘密鍵{ f , g } を用いて、電子情報mに対する電子署名データSの作成方法を定めており、秘密鍵{ f , g } で表示される公開鍵Qが、暗号化、復号化の暗号処理だけでなく、電子署名データの作成、検証の機能を有し、通常の公開鍵と同様に使用できる効果が得られる。
請求項8記載の発明は、公開鍵  Qo= f・Go + g・Geの秘密鍵{ f , g } のうち、秘密鍵fを電子情報の提供者が所有し、片方の秘密鍵gを信頼できる第3者または、自宅で所有し、電子情報mの電子署名データSを作成するとき、秘密鍵fの所有者と秘密鍵gの所有者がそれぞれ並行して別々に、電子署名データS1、S2を作成し、これを合成して電子署名データSとするため、情報提供者の秘密鍵fが、盗難、紛失などの不測の事態が発生した場合、第３者が所有している秘密鍵gを使用した、電子署名データS2の作成を停止させることができるため、公開鍵Qに対する不正な電子署名データSの作成を、物理的に防止できる効果が得られる。
請求項9に記載の発明によれば、公開鍵Q = f・Go + g・Geに対して、秘密鍵ｆ単独の公開鍵Q1 = f・Goを定め、利用条件に応じて、複雑な処理が必要な公開鍵Qを使用するか、処理の単純な公開鍵Q1を使用するか、公開鍵Q、Q1を使い分けて暗号処理を実施するため、利用者の利便性が向上する効果が得られる。
請求項10に記載の発明によれば、電子情報を共有する利用者をグループ化して階層化し、各階層のグループごとに、暗号化する公開鍵を設定するため、共有する情報データを効率的に管理できる効果が得られる。
請求項11に記載の発明によれば、公開鍵Q = f・Go + g・Geの秘密鍵f、gのうち、秘密鍵fを電子情報の提供者が所有し、片方の秘密鍵gを信頼できる第３者、または自宅の鍵管理装置に所有し、電子情報mの電子署名データSを作成するとき、まず、当該電子情報mを、m1、m2と２個の部分に分割し、秘密鍵fの所有者と秘密鍵gの所有者がそれぞれ並行して別々に、電子署名データS1、S2を作成し、これを合成して電子署名データSを作成するため、情報提供者の秘密鍵fが、盗難、紛失などの不測の事態が発生した場合、第3者、または自宅で所有している秘密鍵gを使用した、電子署名データS2の作成を停止させることができるため、公開鍵Qoに対する不正な電子署名データSの作成を、物理的に防止できる効果が得られる。また、m2を秘匿性の高い情報提供者の情報とした場合、m2を秘密鍵gと共に信頼できる第３者、または自宅で管理するものとすれば、電子情報の提供者は、m2に関する情報を携帯する必要がなく、情報m2を紛失や盗難にさらす機会が少なくなる効果が得られる。
請求項12に記載の発明によれば、通信ネットワークの利用者に配布する秘密鍵が、2次元バーコード、ICカード、ICタグなどに、記載して、当該通信ネットワークを経由せずに配布されるため、秘密鍵の秘匿性を高める効果が得られる。また、利用者のIPアドレスとメールアドレスは、利用者の秘密鍵の情報をもとにDNSが更新されるので、利用者が当該通信ネットワークの接続、切り離しが繰り返されても利用者は、同じメールアドレスを利用する効果が得られる。
請求項13に記載の発明によれば、利用者が端末装置を当該通信ネットワークに接続したとき、当該利用者の正当性を、利用者の秘密鍵、および管理者側の秘密鍵の2つの秘密鍵から得られる情報をもとに、確認するため、利用者の秘密鍵が、盗難、紛失などの不測の事態が発生した場合、管理者側の秘密鍵に関する機能を停止させれば、不当な利用者の当該通信ネットワークへの接続を物理的に防止する効果が得られる。
請求項14に記載の発明によれば、利用者がカメラなどの光学装置の付いた携帯端末などを利用して、製品情報の記載された2次元バーコードのを読み込み、製品の購入などの電子決済を行う場合、利用者の携帯端末が盗難、紛失などの不測の事態が発生した場合、管理者側に保管されている利用者の秘密鍵に関する情報作成の機能を停止すれば、利用者の携帯端末の不当な使用を防止する効果が得られる。
また、電子決済等の契約に必要な、利用者固有の情報は、携帯端末に保管されず、信頼される第3者の管理装置に保管されるため、盗難、紛失などの不測の事態に遭遇する機会が少ないという効果が得られる。
請求項15に記載の発明によれば、センター側の鍵とユーザ側の鍵が、Q(X)W＝ Qi(X)Si
（ここで、(X)は、外積を示す。）という関係が成立するように定められるため、センター側の鍵と同等の復号機能を有するユーザの鍵を、相異なる値で任意に複数個生成できる効果が得られる。
請求項16に記載の発明によれば、請求項2,3に記載の通信ネットワークシステムの暗号処理法方法、鍵管理方法において、平文ｍを平文m1, m2に分割するか、同一の平文m=m1, m=m2とし、ハシュ値をe1= H(m1), e2=H(m2) とし、乱数Ku,Kvを生成し、R1=Ku・Go、R2=Kv・Geとし、
R1,R2のｘ座標の成分から、r1, r2 をもとめ、電子署名S1 として、｛ e1, R1, e1*f/Ku, e1*r1/Ku ｝電子署名S2 として、｛ e2, R2, e2*g/Kv, e2*r2/Kv ｝とし
Ｑ＝ f・Go+ g・Ge、Ｒ＝ R1+R2, R1, R2, e1・Go 、e2・Geより、weil-paring を用いて署名検証できる効果が得られる。
請求項17に記載の発明によれば、請求項１６に記載のweil-paringを用いて、電子情報ｍに対する電子署名を、請求項１５で記載した公開鍵と秘密鍵｛f、g｝のシステムおいて署名するため、グループで共有する情報データに対して、利用ユーザ個別に電子署名を作成し検証する効果が得られる。
【発明を実施するための最良の形態】
【０００８】
以下、図を参照して、本発明の実施形態について説明する。
【実施例１】
【０００９】
1. 暗号化通信ネットワークシステムの構成
まず、図1を参照して本発明を適用した通信ネットワークシステムの構成について説明する。利用者(ユーザ) は通信ネットワークシステムと接続するさまざまの情報処理端末装置を使用する。この情報処理端末装置は、携帯電話、PDA（携帯端末）、モバイルPC（パーソナルコンピュータ）、デスクトップPC（パーソナルコンピュータ）などさまざまであり、また、伝送媒体の通信ネットワークである地上回線も携帯網、PHS、ADSL、無線LAN、インターネットなどさまざまのものがある。この通信ネットワークにおいて、図2に示すように、ある情報提供者（発信者）が発信する情報データをＭとし、ある特定の複数の利用者（ユーザ ; 1≦i≦N ）に当該情報を提供するか、または当該情報を共有するものとする。このとき、この特定の複数の利用者以外の者から、当該情報データＭを秘匿するため、電子的に鍵をかけてＭを暗号化し、暗号データE(M)を作成する。この特定の複数の利用者（ユーザ ; 1 ≦i≦N）は、暗号データE(M)の復号化の秘密鍵aiを所有し、当該電子情報を利用するとき、復号化してＭを利用する。
図1の構成例では、ネットワーク管理サーバが、利用者（ユーザ）に配布する復号化の秘密鍵aiを生成して利用者に配布し、これにより各利用者（ユーザ）は配布された復号化の秘密鍵aiを所有している。
【００１０】
図3は、特定の複数の利用者（ユーザ）の所有する復号鍵の配布形態の例を示している。
(a) は、電子情報を暗号化する鍵と復号化する鍵を共通の鍵Kとする共通鍵暗号の方式であり、複数の利用者（ユーザ ; 1 ≦i≦N）に対して共通の鍵Kが配布される。この場合、情報データＭに鍵Kで暗号化した同一の電子情報Ek(M)が利用者に提供される。利用者は配布された共通の鍵Kで復号化して当該電子情報Mを利用する。
(b)は、本発明を適用した方式を示しており、情報データを暗号化する鍵Qに対して、相異なる復号鍵(秘密鍵)ai (1≦i≦N）をN個生成して、特定の複数の利用者（ユーザ ; 1 ≦i≦N）に配布する。情報データＭに対して、鍵Qで暗号化された同一の情報データ EQ(M)が利用者に提供され、利用者は配布された相異なる復号鍵(秘密鍵)aiで当該情報データMを復号化して利用する。
(a)と比較すると本発明の(b)では、情報データの復号鍵（秘密鍵）が、Ｎ個個別に作成されるため、データ秘匿の暗号処理の安全性を高めることが出来る。たとえば、利用者の復号鍵(秘密鍵)aiが盗まれた場合、この復号鍵(秘密鍵)aiは１個しかないため、どの復号鍵(秘密鍵)が盗まれたか、追跡する機能なども組み込むことが可能であり、また、復号鍵(秘密鍵)が1個しか存在しないことを利用して、どのユーザが情報データMを復号化して利用しているか特定する機能を組み込むことが可能となる。確実なデータアクセス履歴管理を実施し、ユーザiが復号化処理をしていないのに、データアクセスが発生した場合は、このユーザiの所有する秘密鍵が漏洩されたことを発見することができる。
【実施例２】
【００１１】
2. 本発明の暗号システムを構築する楕円曲線暗号
本発明の暗号化処理システムは、楕円曲線暗号上に構築される。
そこで、まず、従来利用され実用化されている暗号システムを構成する楕円曲線について説明する。楕円曲線の記号については、非特許文献１のCRYPTOREC  Report、および非特許文献２の筑波大学集中講義資料などを参考にした。
(1) 従来利用され実用化されている暗号に使用する楕円曲線
まず、従来利用され実用化されている暗号論的に安全な有限体上の楕円曲線について説明する。暗号論的に安全な楕円曲線を生成する方式としては、虚数乗法論を利用した方法等が知られている。ここで生成される楕円曲線は、非特許文献3 に述べられているように、MOV攻撃や、anomalous攻撃等に耐えるものとして定められる。
【００１２】
【数２】
2007235659.tif 000004
次にこの有限体を定義体とする楕円曲線上で組み立てられる公開鍵暗号方式による暗号化、復号化の処理方式について説明する。ここでは、図4 を参照し非特許文献２の筑波大学集中講義資料に示されている、楕円ElGamal暗号の暗号化および復号化の仕組みについて述べる。
(2) 暗号化通信の方式
【００１３】
【数３】
2007235659.tif 000005
【００１４】
(3) 電子署名データの構成方式
以上、公開鍵Qで平文mを暗号化して暗号文cを作成し、秘密鍵dで暗号文cを復号化して平文mを取得する暗号化通信について説明した。
公開鍵暗号はこのような、情報データの秘匿性を確保するための暗号化通信に利用されるばかりでなく、ユーザーが所有する秘密鍵がただひとつしか存在しない性質を利用し、ユーザが作成した文書に対して署名を作成することにも利用される。
次に、ECDSA（非特許文献１ CRYPTOREC Report 2002  p48）に従って、送信者が平文mに対して、所有する秘密鍵dを使用して電子署名データSの作成する方式について下記に説明する。
【００１５】
【数４】
2007235659.tif 000006
【実施例３】
【００１６】
3. 2個の生成元を持つ楕円曲線
以上、楕円曲線上の高い素数位数sの点Gをベースポイントとして設定し、ｓ−１以下の正の整数d を秘密鍵とし、公開鍵をQ = d・G (・は楕円曲線上の加法演算)とする、鍵構成で、暗号化、復号化、電子署名作成、および電子署名検証の方式について述べた。
次に本発明の暗号化通信方式の実施例について説明する。
本発明では、秘密鍵をさらに、{ｆ, ｇ} の2個の組とし、秘密鍵を２個持たせることにより、より安全なセキュリティシステムを構成している。この2個の秘密鍵f , g に対応する公開鍵Qは、楕円曲線上に設定された２組の点 Go , Ge をもとに、Q = f・Go + g・Geという関係で設定される。
【００１７】
(1）楕円曲線上の異なる2組の巡回群の生成元の導出
楕円曲線上の点は、アーベル群を構成するが、この群はアーベル群の構造定理が示すように、相異なる巡回群の直和として構成される。公開鍵Qを定める楕円曲線上の点Go、Geは、同じ巡回群の要素ではなく、相異なる巡回群の生成元として定めるほうが、楕円曲線の点を多く含み、暗号論的強度の観点から望ましいと考えられる。
そこで、楕円曲線上の相異なる巡回群の生成元Go,Geとして、暗号論的に安全な点Gを定める方法について説明する。
2.(1)項では、有限体Fq上に大きな素数位数sの点を持つ、暗号論的に安全な楕円曲線について定めた。ここで、位数sのねじれ群（等分点）をＥ[s] = { A Ｅ E(Fq) ; s・Ａ = O } とする。
非特許文献４に述べられているとおり、有限体Fqの代数的閉体Ｌを定義体とする楕円曲線上には、等分点として、位数sの巡回群の直和となるものが存在する。
r=p^k = 1 ( mod s ) となる最小の整数をrとし、有限体Frを定義体とする楕円曲線に対してＥ[s] ≡ ( Z/sZ ) X ( Z/sZ ) ∈ E(Fr) ⊆ Ｅ(L) 
ここで、n<k であれば、楕円曲線E(Fq)上の点Goは、楕円曲線上の加法演算の性質からE(Fr)の点としても、素数位数sの巡回群の生成元である。そこで、E(Fr)のGoとは独立の素数位数sの生成元をGeとする。
【００１８】
(2) 等分点を持つ暗号論的に利用可能な楕円曲線について
(1)項で導入した有限体Fq上の楕円曲線の位数は、
#E(Fq) = u*s ( s; 大きな素数 u ; 小さな整数)
であった。一方、有限体Fr上の楕円曲線は、等分点#E[s] = s^2を含み、
#E(Fr) = v*(s^2) ( v ; 整数 ) となる。
有限体上の楕円曲線に対して、ハッセの定理を適応すると、
1 + q  2√ｑ ≦ #E(Fq) ≦ 1 + q + 2√ｑ
1 + r  2√r  ≦ #E(Fr)  ≦ 1 + r + 2√r
(ここで、有限体Fq, Fr の位数は、q = p^n , r = p^k ; n<k )
楕円曲線E(Fr)が、暗号論的に利用可能とした場合、整数vは小さな値
となるから、ほぼ、
#E(Fr) ≒ #E(Fq) * #E(Fq)
となっている必要がある。
従って、暗号論的に利用可能な楕円曲線の条件として、
#E(Fr) = v*(s^2) ; 
r = q^2 = p^(2n)
p^(2n) = 1 ( mod s )
が与えられる。
r = q^2 より、Fr は、Fqの2次の代数拡大となっていることがわかる。
【００１９】
(3) 楕円曲線の等分点E[s]上の異なる２組のベースポイントの生成
2項(1)では、有限体Fq上に暗号論的に安全な楕円曲線を定めた。この楕円曲線上のベースポイントGoから、楕円曲線E(Fr)上にGoとは異なる巡回群の生成元Geを定める方法について説明する。
有限体Fq上の楕円曲線を定める関数f(x)を
Y2 ＝ f(x) = X3 + aX2 + bx + c    a , b , c ∈ Fq
とし、これより次の性質をもつ Tau ∈ Fq を定める。
xe ∈ Fq  より  Tau = f( xe ) 
Tau = t^2 となる  t ∈ Fq は存在しない。
即ち、Tauは、あるFqの要素の平方とはならない要素とする。この要素Tauにより、有限体Fqに√Tauを付加して得られる代数拡大体Fq(√Tau)を考える。
Tauの定め方から、2 次の多項式 ( X^2  Tau ) は、多項式環Fq[X]の既約多項式となり従って、Fq(√Tau)は、剰余環Fq[x]／(X^2  Tau ) と同型となる。
Pau = X mod ( X^2  Tau ) とすると、
Fq(√Tau)の要素は、s = a * Pau + b ( a , b ∈ Fq ) と表示される。
このようにして、Fqの2次の代数拡大体、Fq(√Tau)が得られる。
位数は、＃Fq(√Tau) = q^2となる。
また、Pau = √Tauであり、Pau^2 = Tau = f( xe ) であるから、Ge = ( xe , Pau ) は、拡大された体Fq( Pau ) を定義体とする楕円曲線上の点と考えることができる。
次に、この点Geの整数倍について考える。任意の整数m ∈ Fq （m > 0 ）に対して、m倍は、m・Ge = ( xem , Pau*sm ) (  ここで、xem , sm ∈ Fq ) 
という表現となることを帰納的に確認することができる。
一方、Goは、定義体Fqとする楕円曲線上の点であるから、任意の整数n ∈ Fq ( n>0)に対して、n・Go = ( xon , yn ) ( ここで、xon , yn ∈ Fq ) と表現される。
この整数倍の点の座標構造から、n・Go ≠ m・Ge
となっていることがわかる。これは、Go , Ge が定義体をFq( Pau ) とする楕円曲線上のアーベル群の異なる巡回群の生成元であることを示している。
任意に設定したTauから、ただちに暗号論的に使用可能な高位数の生成元Geが求められるとは限らないが、Tau = f( xe ) を計算し、試行錯誤的に位数を評価すれば、高位数の生成  元Geが求められるものと考えられる。
以降、Go , Ge は、定義体Fq( Pau )の楕円曲線上において大きな同じ素数位数sを持つ異なる巡回群の生成元とする。
【００２０】
4. 2次元ベクトル空間上での暗号化通信方式の構成
Go , Ge は3項で求めた、定義体Fq(Pau)上の楕円曲線において大きな同じ素数位数sを持つ、相異なる巡回群の生成元とする。
Ｅ ＝｛  Q  ｜  Q = m・Go + n・Ge  ；  m,n ∈  Zs ｝
とすると、Eは、楕円曲線の有限部分群を構成するが、Go , Ge が素数位数s なので、Eを有限体Zs上のGo , Ge を１次独立な基底とする2次元ベクトル空間と考えることができる。このとき、Go , Geは、おのおの単独で使用した場合も、暗号論的に十分な強度を持つものと考えることができる。またGo, Ge の点のｙ座標の構造を同じくするため、Zs 上の1次結合m・Go + n・Ge により、基底Go, Geを取り直しても良い。
次ぎに、図5を参照し、本発明のこの2次元ベクトル空間Ｅ上の点を公開鍵とする暗号化通信システムの構成について説明する。
【００２１】
【数５】
2007235659.tif 000007
【実施例４】
【００２２】
5  電子署名方式
4項で、2次元ベクトル空間E上の公開鍵による暗号処理の方式について説明した。ユーザには、秘密鍵 { f , g } と対応する公開鍵Qが割り当てられている。この公開鍵と秘密鍵をもとに、平文mの電子署名データを作成することができる。電子署名データは、平文mのハッシュ値を用いて作成するが、この平文mを平文m1と平文m2の2つの部分に分割し、それぞれの個別のハッシュ値を用いて作成することも可能である。
次に本発明の2次元ベクトル空間E上の電子署名データの作成方式、および電子署名データの検証方式について、図6を参照し説明する。
(1) 情報データ（平文m1 , 平文m2）の電子署名データの作成
【００２３】
【数６】
2007235659.tif 000008
【００２４】
【数７】
2007235659.tif 000009
(2) 情報データ（平文m1 , 平文m2）の電子署名データの検証
【００２５】
【数８】
2007235659.tif 000010
従って、（ e1・Go , e2・Ge ）C + ( Q , R ) Cの電子署名検証演算結果が、
( R1 , R2 ) = (Ku・Go , Kv・Ge ) に一致すれば、平文m（もしくは、平文m1,m2）
の正当性を確認したこととする。
【実施例５】
【００２６】
(3) 分割による電子署名データの作成
4項の2次元のベクトル空間上において、秘密鍵{ f , g } を用いて、平文m( m1,m2) に対して電子署名を与える2行2列のマトリックスSを与えた。このマトリックスSを以下の通り、S1 , S2の2行に分けて考える。
【００２７】
【数９】
2007235659.tif 000011
各S1 , S2は、
S1 ; 秘密鍵f , ハッシュ値e1 , ベースポイントGo , 乱数Ku で作成される。
S2 ; 秘密鍵g , ハッシュ値e2 , ベースポイントGe , 乱数Kv で作成される。
これは、S1、S2それぞれ、独立に作成できることを示している。
このことは、秘密鍵f、gを別の場所に格納して管理し、そこで個別に情報データm1 , m2に関する電子署名データS1、S2を作成し、作成したS1、S2を合成することで、電子署名データを与えるマトリックスSが作成できることを示している。
(4) 分割された公開鍵の単独での使用
(1) 項では、秘密鍵f,gで構成される公開鍵Q = f・Go + g・Geの電子署名データS1、S2を別々に作成する方法について述べた。秘密鍵fには、公開鍵 Qo = f・Goを対応して考えることもできるため、秘密鍵fだけで、電子署名データを作成することも可能である。
従って、秘密鍵f単独、または、秘密鍵{ f , g }を組み合わせる2通りの電子署名データが、作成可能であり必要に応じた使い分けが可能となる。
【実施例６】
【００２８】
6. 1対Nのデータの共有方式
3項において、素数をsとする有限体Ｚs上の2次元ベクトル空間Eを導入した。Go , Geは素数位数sの異なる巡回群の生成元であり、有限体Zs上のベクトル空間の一次独立な基底となっている。Eは、有限体上の楕円曲線の等分点E[s]であり、非特許文献４に示すとおり、楕円曲線上の等分点には、交代の双線型形式としてweil-paring の演算Faisが存在する。この交代の双線型形式Faisを利用した暗号化、復号化の方式について述べる。
(1) weil-paring の演算Fais
非特許文献４に従って、weil-paring の演算Faisを示す。
【００２９】
【数１０】
2007235659.tif 000012
(2) システム側の鍵の構成
まずシステム側の鍵の構成について説明する。
【００３０】
【数１１】
2007235659.tif 000013
これより、｛ f , g , c , d , u , v ｝をシステム側（管理者側）で鍵として保管し管理するものとする。
(3) ユーザiに配布する鍵の構成
次にシステム側の鍵に基づいて、各ユーザi ( 1 ≦ i ≦N ) に配布する鍵の
構成について説明する。
【００３１】
【数１２】
2007235659.tif 000014
これより図7に示す通り、ユーザiには、鍵の組として、
｛ ai , bi , Si ｝を割り当てて配布する。
なお、公開鍵は、Qi = ai・Go + bi・Geとなり、
公開鍵Qiと秘密鍵{ ai , bi }とを対応させて単独で運用する
ことも可能である。
(4) 情報データ（平文m）の暗号化
次に、情報データ（平文m）の暗号化の方式について説明する。
【００３２】
【数１３】
2007235659.tif 000015
(5) 情報データの復号化
次に、情報データ（平文m）の各ユーザでの復号化の方式について説明する。
【００３３】
【数１４】
2007235659.tif 000016
【００３４】
(6) 不定方程式によるユーザの結託攻撃からの安全性
次にこの１対Nのデータ共有方式に対するユーザの結託攻撃からの安全性について説明する。楕円曲線の離散対数問題より、ユーザに配布される鍵
Si = ci・Go + di・Ge 
より、ci , di を求めることは出来ない。
ここで、
【００３５】
【数１５】
2007235659.tif 000017
この１対Nの暗号システムでの結託攻撃とは、複数のユーザの秘密鍵{ ai , bi }の組から未知数としてu , v, ci , di を求めることである。
未知数u , v , xi , yi の4個に対して、方程式 <1> , <2> , <3> の3個が定まっている。結託するユーザの数が増加しても、未知数の数が方程式の数より１個多くなり、u , v の値を求めることはできない。
このように、ユーザの結託攻撃によって、u , v を求めることは出来ず、ユーザが所有する以外の新しい鍵を生成することはできない。
つぎに、線型和による結託攻撃について検討する。
（7) ユーザの線型和による結託攻撃について
公開鍵をQ、１個の秘密鍵をd とし、Q = d・Go  
（Go ; ベースポイント ）に対する、簡単な、1対Nの暗号方式から説明する。
まず、秘密鍵dに関して、d , a , b を定数（固定要素）とし、x , y を未知数とする1次元の極めて単純な不定方程式を考える。
d = a*x + b*y   ( a , b , x , y ∈ Zs )
この解は多数存在するが、この解の組のひとつを
x = Wx, y =Wy(即ち d=  a*Wx + b*Wy )とし、G1 = a・Go , G2 = b・Goとすると、
Wx・G1 +Wy・G2 =  ( a*Wx+ b*Wy)・Go
=  d・Go  =  Q
となる、これは、G1 , G2と組み合わせれば、{Wx,Wy}の値を用いて、公開鍵Qで暗号化されたデータを復号化できることを示している。この解の組｛ Wxi , Wyi ｝( 1≦ i ≦N )をNのユーザの、それぞれ異なる秘密鍵｛ Wxi , Wyi ｝とすると、公開鍵Qで暗号化されたデータを復号化し共有することが可能となる。
しかし、この方式には簡単な結託攻撃が存在する。
｛Vx,Vy｝を他のユーザの鍵とする。この不定法方程式の解の定めかたより、
d = a*Ｗx+ b*Ｗy  ；  d = a*Vx＋b*Vy
これより、｛Ra,Rb｝を 
Ra = u*Wx+v*Vx , Rb = u*Wy+v*Vy 
(ここで、u , vは、u＋v = 1を満足するものとする。)
と定めれば、d = a＊Ra＋b＊Rb  なる。このように、2ユーザが結託により、a , b の値は求めなくとも、公開鍵Qを復号する別の秘密鍵の組｛Ra, Rb ｝を構成することができる。このように、秘密鍵dとユーザに配布される秘密鍵｛ x , y ｝とが、共通に固定されたa,bの値による線型関係を持つため、このように簡単な結託攻撃が存在する。
【００３６】
(8) 本方式の結託攻撃からの安全性について
ユーザに配布する鍵の構成法から、
Fais( Qi , Si ) = Fais( Qj , Sj ) ( i ≠j ) となっている。
ar , br ∈ Ｚs とすると、
｛ ( ar・Qi＋br・Qj ) , ( ar・Si＋br・Sj ) ｝が、線型和による攻撃法の組合せとなる。
｛ ( ar・Qi＋br・Qj ) , ( ar・Si＋br・Sj ) ｝で
Fais(Qi , Si ) = Fais(  Qj , Sj ) の値を構成できれば、結託攻撃は成功するが、Faisのはそう線型形式のため、求めるFaisにar*brの項に存在するため、Qi , Qj の線型和を用いただけでは、Fais(Qi , Si )を構成することはできず、線型和による簡単な結託攻撃を構成することはできない。
なお、｛( ar・Qi ) , ( ar−１・Si ) ｝の組は、双線型形式
の性質から、別の鍵の組を複製し定めることができる。そこで、ユーザの秘密鍵を構成する場合、任意の
ar∈ Zsに対して（ ai , bi ）≠ ar*( aj , bj ）
即ち、2次元の射影平面で考えた場合、秘密鍵｛ai , bi｝が異なる点となるように定めれば、このような複製を判定することができ悪用を防止することができる。
【実施例７】
【００３７】
7. weil-paringを用いた署名作成演算、および署名検証演算
5.(1)(2)において、公開鍵Q=f・Go + g・Geに対して、秘密鍵｛ｆ, g ｝ により、
電子署名作成、電子署名検証の方式を説明した。
つぎに、本発明のweil-paring を用いた、電子署名作成、電子署名検証の方式について説明する。
分割による電子署名データの作成
【００３８】
【数１６】
2007235659.tif 000018
電子署名検証演算
【００３９】
【数１７】
2007235659.tif 000019
【実施例８】
【００４０】
8. ネットワークセキュリティシステムへの応用
以上、楕円曲線上において公開鍵をQ = f・Go＋g・Geと2個の秘密鍵f , gを用いて表現し、1対1で通信する場合の、暗号化、復号化、電子署名の作成、および検証の方式について述べ、また公開鍵Q , Rの双線型形式を利用した1対Nの暗号化通信の方式について述べた。
次に、セキュリティシステムへの応用として、秘密鍵f , gを分散して管理する方式、1対Nの暗号通信方式によるデータの共有方式、および電子署名を分割して作成する方式の利用法について述べる。
ネットワーク上のアクセス管理システム
ユーザのアクセス管理 
本提案の暗号化通信方式を通信ネットワーク上のユーザアクセス管理に適用した例について、図8を参照し説明する。この図8は、(無線)LANなどの一般的なネットワークを示している。ユーザN人がPCなどの端末で接続し、ネットワーク管理サーバが、秘密鍵等ユーザのアクセス管理を実施しているものとする。
各ユーザi (1≦i≦N)に割り当てられる秘密鍵の組を
｛ai, bi｝とし、対応する公開鍵をQi = Qi1 + Qi2
( Qi1 =ai・Go , Qi2 = bi・Ge )とする。Qi で暗号化された情報データcは、秘密鍵 { ai, bi }で復号化され平文mを取得することが出来る。
本システムでは、各ユーザiに、両方の秘密鍵を配布するのではなく、一方の秘密鍵ai だけを配布し、もう片方の秘密鍵biは、ネットワーク管理サーバが管理するものとする。次に、各ユーザiが、公開鍵Qiで暗号化された情報データを復号化する手順について説明する。
なお、暗号化データは、｛平文mの暗号文c , R1= Ku・Go , R2 = Kv・Ge (Ku ,Kv；乱数) ｝の構成とする。
(i) ユーザiは、所有している秘密鍵aiにより、ai・R1
を計算するとともに、ネットワーク管理サーバに秘密
鍵操作要求を送出する。
(ii) ネットワーク管理サーバは、ある条件、たとえばユ
ーザiの秘密鍵が紛失されるなどの不正がなく有効
であると確認できる場合、bi・R2を計算し、ユーザi
に配送する。また、bi・R2を発行するイベントによ
り、確実なユーザのアクセス履歴管理を実施することができる。
また、ユーザiが知らない間に、データアクセスが発生した場合は、
ユーザiの鍵が漏洩したものと判断することができる。
(iii) ユーザiは、取得したai・R1、bi・R2をもとに
Ti = ai・R1＋bi・R2 を求め、暗号文cから平文mを復号し取得する。
通常、公開鍵Qiに関して、不正が発生した場合、棄却リストに載せて、公開鍵Qiの使用を防止するが、本システムでは、ユーザiにbi・R2の計算値の配送を停止することにが可能であり、物理的に公開鍵Qiで暗号化されたデータの復号を停止することが可能である。
【００４１】
階層構造を持たせたアクセス管理
(i) ユーザに配布する鍵の構成
6項の方式によるシステム側の鍵をQ、Wとし、
Fais( Q , W ) = Lg^(u-v)とする。
ユーザiには ai*di = u ,  bi*ci = v を満足する｛ci , di ｝の組で定められる公開鍵{ Si = ci・Go + di・Ge  } が配布されており、(1)項で配布された秘密鍵と組み合わせた｛ai , bi , Si ｝により、システム側の鍵Q、Wで暗号化されたデータを復号化することができる。このようにして、複数のユーザi (1≦i≦N)が、相異なる秘密鍵を有し、システム側の一組の鍵Q, Wで暗号化されたデータを共有することができる。
(ii) 階層化した鍵の構成
システム側の鍵は、任意に複数個設定することができる。これを例えば、{ Qar , War }｛ Qbt , Wbt ｝｛ Qgm , Wgm ｝の3組、および対応するGaiの値をGai-ar Gai-bt , Gai-gm , とし、ar , bt , gmの記号で識別するものとする。
Gai-ar = Lg^( uar-var )
Gai-bt = Lg^( ubt-vbt ) 
Gai-gm = Lg^( ugm-vgm )
とすると、ユーザiには、配布する秘密鍵 ｛ai, bi｝は共通とし、｛ uar , var ｝{ ubt , vbt ｝{ ugm , vgm ｝の値をもとに、ar , bt , gmそれぞれを復号する鍵の組{ Sar-i },{ Sbt-i  }, { Sgm-i } を設定することができる。これは、ネットワーク上で暗号化するデータをar , bt, gmの3階層に分類し、arのデータを共有するユーザーに、鍵{ Sar-i  }を配布し、同様に、bt , gmのユーザに対応する鍵を配布することにより、図8に示すようにユーザを重複を許してグループ化し階層化できることを示している。
【実施例９】
【００４２】
分割して作成する電子署名の応用
5項において、公開鍵Q = f・Go + g・Ge、に対応する秘密鍵 {f , g}を用い、平文m( 平文 m1 , m2 ) に対して、電子署名を構成するマトリックスSの要素を別々に作成し合成する方法について示した。ここでは、図9を参照し、移動体端末での電子決済の運用例について示す。
この例では、ユーザiの秘密鍵を{ fi , gi }, 公開鍵をQi = fi・Go + gi・Ge、とし平文mは、m1、m2と2つの部分に分割されているものとする。
7.1項と同様、インターネット上にネットワーク管理サーバを設置し、ユーザiには一方の秘密鍵fiのみが配布され、もう片方の秘密鍵giはネットワーク管理サーバ側で運用管理するものとする。また平文m1は移動端末側に、平文m2は、当該サーバ側で保有するものとする。
(i)  ユーザ側での電子署名の作成
電子署名のマトリックスS1を、秘密鍵fi、ハッシュ値e1 = H(m1)、ベースポイントGo、乱数κで作成する。
(ii)  ネットワーク管理サーバ側での電子署名の作成
ユーザからの電子署名作成要求により、電子署名のマトリックスS2を秘密鍵gi、ハッシュ値e2 = H(m2)、ベースポイントGe 乱数τで作成する。
ここで、m2は秘匿性の高い個人の共通情報、たとえば個人の銀行口座のなどが、適用できると考えるが、ユーザの証明書の代行として利用することも可能ではないかと考えられる。
このようにすれば、m2の情報は移動体端末に保管する必要がなく、またこの端末が盗難に会った場合、ネットワーク管理サーバ側での電子署名S2の作成を停止すれば、電子署名の悪用を物理的に防止することができる。
別の運用例として、移動体端末側をA社、サーバ側をB社など、異なる組織とし、何らかの契約書、文書などを別々に承認する場合も、A社B社別々に電子署名S1、S2を作成し、これらを合成することができる。
このように、本署名方式は分散して存在する情報データに対して、関連付けの正当性を確認する有効な手段を与えるものと考えられる。
【実施例１０】
【００４３】
8. ネットワークアクセス管理によるIPアドレスの割り充て
最近は、移動端末の接続が便利な無線LANが、多く利用されるようになると考えられる。
こうした状況では、移動端末とネットワークとの接続は、固定ではなく、接続と切り離しが、頻繁に繰り返されることになる。指定されたネットワークに端末装置を接続するときは、ネットワークを管理の管理者から、当該端末装置用のIPアドレスを配布される必要がある。DHCPサーバを利用する場合、ユーザが使用している端末装置をDHCPクライアントとし、当該ネットワークに接続するだけで、IPアドレスが配布され、端末に設定されるため非常に便利であるが、逆にだれでも当該ネットワークに接続することができ、当該ネットワークの利用を許可しないユーザを識別することはできない。
本発明では、電子署名データ分割作成方式を利用して、より安全なネットワーク管理のためのIPアドレス配布方式を提供することができる。次に、図10を参照しこのIPアドレス配布方式の実施例について説明する。当該ネットワークにおいて、情報データを共通に暗号化して使用する公開鍵をQaとする。
このネットワークを利用するユーザをN人とし、ネットワーク管理者が、ユーザの秘密鍵、およびIPアドレスの発行、配布の管理を実施しているものとする。このネットワークにおいて、ユーザi ( 1≦  i ≦ N ) に配布する秘密鍵を{ ai , bi }とし、
Qa =ai・Go +bi・Ge とする。ユーザiには、片方の秘密鍵aiのみを配布し、もう片方の秘密鍵  bi   ( 1≦  i ≦ N ) は、ネットワーク管理サーバのデータベースに保管し管理するものとする。
ユーザには、秘匿性を保って秘密鍵を配布する必要がある。ユーザに秘密鍵が配布されていない状態では、ネットワークを利用して暗号化して送付することは出来ない。本発明の実施例では、ユーザi の識別子zi、および秘密鍵aiを、ICカードに格納するか、2次元バーコードに印刷して、ネットワークを利用せずに秘匿性を確保して配布している。
IPアドレスを持たない端末装置が、当該ネットワークに接続されると、ネットワーク管理サーバは、当該端末のMACアドレスを取得する。ネットワーク管理サーバは、ランダムなデータで構成されるチャレンジコードを平文mとして、当該MACアドレスの端末装置に送信する。平文mは、当該ネットワーク管理サーバに保管する。
端末装置は、乱数Kuを生成し、R1 = Ku・Go、ハッシュ値  e = H(m) より、電子署名データS1を作成し、ユーザ識別子zi を公開鍵Qaで暗号化して、ネットワーク管理サーバに送信する。ネットワーク管理サーバは、まず暗号化されたユーザ識別子ziを復号化して、ユーザ識別子を求め、ziをもとにデータベースを検索し、ユーザiの秘密鍵bi  を取得する。また、チャレンジコードの平文mのハッシュ値H(m)と、乱数Kvを生成し、
R2 = Kv・Geと、電子署名データS2を作成する。
これより、端末装置から送信された、R1、S1およびネットワーク管理サーバが生成したR2,、S2を取得し、これをもとに、電子署名データSを合成して作成し、電子署名検証演算を実施する。ユーザiの正当性を確認できたら、ユーザiに割り当てるIPアドレスを生成し、端末装置のMACアドレスに向かって、このIPアドレスをQi = ai・Goで暗号化して送信する。ユーザiは、復号化してIPアドレスを取得し、端末装置に設定し登録する。
以上、本発明の電子署名データの作成と検証方式によりユーザiを確認し、IPアドレスを配布する方式を示した。
ユーザiが、端末装置を当該ネットワークから、切り離せば、ネットワーク管理サーバは、ユーザiに割り当てたIPアドレスを棄却する。ユーザiに配布した秘密鍵が、盗難、紛失などの不測の事態が発生した場合は、ネットワーク管理サーバ側でユーザiの秘密鍵ηiの電子署名作成機能を停止させる。このことにより、ユーザiへのIPアドレスの不法な発行を防止することが可能となる。公開鍵Qi = ai・Goを棄却リストに登録して、不法な発行を防止することも可能であるが、この方式では、棄却リストとその検索が必要となる。
本発明は、公開鍵の棄却リストを検索せず、直接物理的に不法な発行を防止する、安全で効率的な方法を与えている。
【実施例１１】
【００４４】
この平文mをm1、m2の２つに分割し、それぞれ電子署名データを作成して合成する方式も、移動端末などの電子決済に有効と考えられる。そこで、図11を参照し、本発明を移動端末の電子決済に適応した実施例について説明する。
ネットワーク管理サーバが利用者のユーザi の公開鍵Qi および秘密鍵の管理する内容は同じである。
本実施例では、雑誌などの印刷メディアに、カタログや製品情報とともに、この製品情報を2次元のバーコードに変換し記載して提供されているものとし、利用者(ユーザ)が、欲しいものを選択し、携帯端末で注文する電子決済の実施例を示している。
契約に必要な電子情報は、製品情報、製品提供者の情報、契約者（利用ユーザ）氏名、
契約者情報、支払いのための金融機関などの口座番号などである。
印刷メディアには、製品情報、発注先（メールアドレス）などの製品提供者の情報が、2次元バーコードにより、記載されている。利用者(ユーザ)は、欲しい製品があった場合、カメラ接続PC、カメラ付携帯電話、カメラ付きPDAなどの携帯端末で光学的に読み込み、電子情報に変換させる。この読み込んだ電子情報に、契約者（利用ユーザ）氏名、住所などの契約者情報、支払いのための金融機関などの口座番号などを付加して契約文を作成し、この契約文に電子署名データを作成して送信することにより注文することができる。
本実施例では、契約文をmとし、この契約文をm1、m2の2つの部分の情報データに分けるものとする。m1は、製品情報、発注先（メールアドレス）などの製品提供者の情報などの2次元バーコードで読み込んだ情報、および契約者（利用ユーザ）氏名とする。m2は、住所などの契約者情報、支払いのための金融機関などの口座番号など電子情報とする。
m2は個人の金融機関の情報など秘匿性の高いものが含まれているため、携帯端末には
格納しないものとする。自宅のパソコンなどに保管しても良いが、本実施例では、信頼あるネットワーク管理サーバに保管するものとして説明する。
まず、ユーザiは、携帯端末側で平文（契約文）m1に関する電子署名データS1を作成する。平文m1 のハッシュ値 e1 = H(m1) , 乱数Kuにより、R1= Ku・Ｇo、および秘密鍵aiによる電子署名データS1を作成し、( m1、R1、S1 )を通信相手ユーザに送信する。並行して、もう片方の秘密鍵biに関する、電子署名データを作成するため、ユーザiは、ネットワーク管理サーバに、電子署名作成要求を送出する。ネットワーク管理サーバ側では、格納されている利用ユーザi の契約情報m2のハッシュ値e2 = H(m2)と乱数τにより、
R2 = Kv・Ge、および秘密鍵biによる電子署名データS2を作成し、(m2、R2、S2)を同じ通信相手ユーザに送信する。
通信相手ユーザは、受け取ったS1、S2、R1、R2,および公開鍵Qiをもとに電子署名データSを作成し、契約文m1、m2の電子署名検証を行う。これが、2つの秘密鍵{ f , g }を有する公開鍵に対する電子署名データ作成、検証の手順である。ユーザiが、モバイルPC、携帯電話などの移動端末を使用している場合は、移動端末自体を紛失したり、盗難にあったりする可能性が高くなる。このように、ユーザiの移動端末が紛失や、盗難にあった場合、ユーザiは、ネットワーク管理サーバに連絡し（この場合、ユーザiの個人情報などによるユーザ特定の方法が必要となるが）片方の秘密鍵biに関する電子署名データS2の作成機能を停止させる。このようにすれば、移動端末が紛失や、盗難にあった場合の電子署名データ作成の悪用を物理的に防止することが可能となる。また、利用ユーザi の契約情報m2は、携帯端末に保管されず、ネットワーク管理サーバ側に格納されているので、紛失したり盗難にあう可能性は少なくなる。契約文m1、m2を通信相手ユーザに送信する際、暗号化しておけば、さらに安全性は高まるものと考えられる。
また、ネットワーク管理サーバが、ユーザiの個人情報などをデータベースに保存し、電子署名作成要求があった場合、電話などにより個人情報を確認して、電子署名データを発行するようにすれば、電子署名発行の安全性を高めることも可能と考えられる。
【産業上の利用可能性】
【００４５】
秘密鍵を2個別々の場所に保管し、これを連動させることによって電子署名データを作成するため、例えば、2つの装置で１組の装置を構成するようなものに対して、指定した2つの装置の組み合わせで1組の装置が構成されているか、確認が必要な用途に適用可能である。PC（パソコン）とICカードで1組の装置を構成する場合、指定されたPC（パソコン）とICカードに、それぞれ、秘密鍵を格納し、連動して作成された電子署名で、指定した組み合わせかどうかを判定することができる。
ICカードではなく、指紋などの生体認証と連動させるような用途にも適用可能である。
また、複数の利用者間で、共通のデータを暗号化して共有することが可能なため、グッリドコンピュータのような、複数の装置で同一の電子情報を処理するような用途に適用可能である。
【図面の簡単な説明】
【００４６】
【図１】は、本発名を適用する暗号化通信ネットワークシステムの構成を示す説明図。
【図２】は、本発明を適用し、通信ネットワークシステム上において、情報データを暗号化し、ある特定の複数の利用者（ユーザ）に対して提供する、もしくは共有する利用形態を示す説明図である。
【図３】は、通信ネットワークシステムにおいて、利用者（ユーザ）に対する暗号化情報データの復号鍵の配布形態を示す説明図である。
【図４】は、本発明を適用し、システムを構築するために使用する楕円曲線暗号の暗号化通信の運用処理形態を示す説明図である。([＋]の記号は、排他的論理和を示す。)
【図５】は、本発明を適用し、楕円曲線上の相異なる巡回群の生成元Go、Geで生成される2次元ベクトル空間で鍵を構成した、暗号化通信の暗号化、復号化の仕組みを示す説明図である。([＋]の記号は、排他的論理和を示す。)
【図６】は、本発明を適用し、楕円曲線上2個の秘密鍵 { f , g } を有する公開鍵Qに対応し、平文mを平文m1, 平文m2に分割し、2行2列の行列で電子署名データSを作成し、これを検証する仕組みを示す説明図である。
【図７】は、本発明を適用した、１対Nのデータ共有システムにおいて、各ユーザiに配布する鍵の構成を示す説明図である。
【図８】は、本発明を適用し、ネットワーク上でユーザのアクセス管理を実施形態を示すシステムの説明図である。
【図９】は、本発明を適用し、移動体端末でm1、m2別々に電子署名データを作成し電子決済を運用する実施形態その１を示す説明図である。
【図１０】は、本発明を適用し、電子署名データを利用して、利用者（ユーザ）にIPアドレスの配布するネットワークアクセス管理の実施形態を示す説明図である。
【図１１】は、本発明を適用し、契約に使用する製品の情報、個人が所有する固有の情報などの情報mをm1、m2に分割し、m2には秘匿することの必要な個人が所有する固有の情報を含むものとし、m1、m2別々に電子署名データを作成し電子決済を行う実施形態その２を示す説明図である。
【図１】
2007235659.tif 000020
【図２】
2007235659.tif 000021
【図３】
2007235659.tif 000022
【図４】
2007235659.tif 000023
【図５】
2007235659.tif 000024
【図６】
2007235659.tif 000025
【図７】
2007235659.tif 000026
【図８】
2007235659.tif 000027
【図９】
2007235659.tif 000028
【図１０】
2007235659.tif 000029
【図１１】
2007235659.tif 000030