JP3895243B2 - Key distribution method and key distribution system based on user identification information capable of updating key - Google Patents

Key distribution method and key distribution system based on user identification information capable of updating key Download PDF

Info

Publication number
JP3895243B2
JP3895243B2 JP2002274113A JP2002274113A JP3895243B2 JP 3895243 B2 JP3895243 B2 JP 3895243B2 JP 2002274113 A JP2002274113 A JP 2002274113A JP 2002274113 A JP2002274113 A JP 2002274113A JP 3895243 B2 JP3895243 B2 JP 3895243B2
Authority
JP
Japan
Prior art keywords
key
user terminal
user
secret key
secret
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.)
Expired - Fee Related
Application number
JP2002274113A
Other languages
Japanese (ja)
Other versions
JP2004112538A (en
Inventor
裕都子 花岡
悟一郎 花岡
順司 四方
秀樹 今井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2002274113A priority Critical patent/JP3895243B2/en
Publication of JP2004112538A publication Critical patent/JP2004112538A/en
Application granted granted Critical
Publication of JP3895243B2 publication Critical patent/JP3895243B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、例えば電子メールアドレスや電話番号等の利用者に固有の識別情報(ID)に基づく鍵配送方法及び鍵配送システムに関する。
【0002】
【従来の技術】
従来から利用されている鍵配送方式では、利用者が公開鍵の値を自由に指定することができないため、利用者と公開鍵の結びつきを認証局が保証する形態を採っている。また、このような鍵配送方式では、利用者が秘密鍵を漏洩もしくは紛失してしまった場合、利用者は、認証局にその旨を申請し、新たな公開鍵、秘密鍵のペアを作成しなければならない。認証局は、新たに発行された公開鍵と利用者の関係を確認した後、新たな鍵証明書を発行する。さらに、認証局は、これまで利用者が使用していた公開鍵の鍵証明書を無効化する旨を鍵証明書無効化リスト(CRL)に記載し、当該リストをすべての利用者に通知する。
【0003】
このような鍵配送方式では、鍵配送を行う者は、まず、鍵配送の相手の公開鍵と、認証局によって発行される電子的な鍵証明書とを取得する。次に、鍵配送を行う者は、当該鍵証明書の正当性を検証した上で、鍵配送を行う。このため、認証局と鍵配送を行う者との間において余分な通信コストが発生するとともに、鍵配送を行う者による鍵証明書等の計算コストが発生する。特に、鍵証明書の検証には、通常、大きな計算コストが掛かることが問題となっていた。
【0004】
このような問題を解決するため、利用者に固有の識別情報(ID)そのものを公開鍵とすることが可能な方式(IDに基づく鍵配送方式)の必要性が、1984年に提唱され、それ以降、具体的な実現方式が提案されてきた。IDに基づく鍵配送方式においては、まず、秘密鍵の発行及び管理を行うセンタが、マスター鍵mstを生成し、mstに対応する公開情報pubを公開する。次に、任意の文宇列charとmstを作用させ当該文字列に対する秘密鍵dcharを生成することができる(便宜上、このような秘密鍵dcharを「charに基づく秘密鍵」と呼ぶ)。通常、charとして、利用者の電子メールアドレスなどが利用される。次に、例えば、charに基づく秘密鍵dcharを保持する利用者1と、char’に基づく秘密鍵dchar を保持する利用者2とが共通鍵を用いて通信を行う際、dcharを保持する利用者1は、dcharとchar’とpubとを用いて、また、dchar を保持する利用者2は、dchar とcharとpubとを用いて、利用者1と利用者2との間において使用できる共通鍵の生成を行うことが可能となる。このようなIDに基づく鍵配送方式は、実際には、通信を行う相手に対して共通鍵を送信する必要がない、いわゆる「交信を必要としない」鍵配送(鍵共有)方式である。
【0005】
このような機能を提供する具体的な方式として、例えば、Blom方式(非特許文献1参照)が知られている。以下、Blom方式の概要について説明する。
【0006】
秘密鍵の発行及び管理を行うセンタは、有限体GF(q)上の二変数の対称多項式f(x,y)を作成し、yをマスター鍵とする。また、センタは、任意の文字列をGF(q)に写す衝突困難な一方向性ハッシュ関数hを選択する。さらに、センタは、文字列charとマスター鍵yとを作用させ、charに基づく秘密鍵dchar(y)をf(char,y)により導出する。秘密鍵dchar(y)の保持者は、dchar(y)を用いて、char’に対応する秘密鍵dchar (y)を保持する利用者との共通鍵KをK:=dchar(char’)により導出する。
【0007】
このようなIDに基づく鍵配送方式においては、公開鍵の取得や正当性の検証にコストが掛からないという利点がある。
【0008】
【非特許文献1】
Proc. of CRYPTO’82, Plenum Press, pp.231-236, 1983
【0009】
【発明が解決しようとする課題】
しかしながら、上述した従来のIDに基づく鍵配送方式では、秘密鍵が利用者に固有のIDに基づいて生成されるため、当該IDを変更しない限り鍵を更新することができないといった問題があった。また、このような従来のIDに基づく鍵配送方式では、従来の鍵配送方式のようなCRLを用いて当該秘密鍵に対となる公開情報を無効化することができないといった問題があった。
【0010】
そこで、本発明は、以上の点に鑑みてなされたもので、鍵の更新を可能とするIDに基づく鍵配送方法及び鍵配送システムを提供することをその目的とする。
【0011】
【課題を解決するための手段】
本発明の第1の特徴は、利用者に固有の識別情報に基づく秘密鍵を用いた鍵配送方法であって、複数の利用者端末が所属する集団におけるセンタが、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、センタによって利用者端末の各々に対して発行された秘密鍵の更新回数とを集団に公開するステップAと、集団に所属する利用者端末が、利用者端末に対する秘密鍵の発行要求を送信するステップBと、センタが、利用者端末に対する秘密鍵の更新回数を更新するステップCと、センタが、発行要求に応じて利用者端末に対する秘密鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者端末の利用者に固有の識別情報とに基づいて、所定の方法により利用者端末に対する秘密鍵を発行するステップDと、センタが、ステップDにおいて発行された秘密鍵を利用者端末に送信するステップEと、利用者端末が、集団に所属する他の利用者端末に対する秘密鍵の更新回数に対応付けられた関数を選択し、選択された関数と他の利用者端末の利用者に固有の識別情報と利用者端末に対する秘密鍵とに基づいて、他の利用者端末との共通鍵を生成するステップFとを備えることを要旨とする。
【0012】
かかる特徴によれば、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、利用者端末の各々に対して発行された秘密鍵の更新回数とを用いて新たな秘密鍵を発行するため、利用者に固有のIDに基づく鍵配送において、鍵の更新を行うことができる。
【0013】
本発明の第2の特徴は、本発明の第1の特徴において、関数の族が、所定の誤り訂正符号によって符号化された利用者に固有の識別情報と誤り訂正符号によって誤り訂正の可能な(N+1)個の異なるランダムなノイズr0,…,rNとにより、式hi(x)=x+ri(ただし、xは利用者に固有の識別情報であり、iは0≦i≦N)を用いて構成されることが好ましい。
【0014】
かかる特徴によれば、関数として、hi(x)=x+riを用い、かつx及びriを所定の誤り訂正符号によって表現された値を用いるため、当該関数を用いて生成された利用者に固有のIDに基づく値と、他の利用者に用いられる値とが同一となることがないため、異なる利用者に対して同一の秘密鍵が発行されるような事態を避けることができ、より高い安全性を確保することができる。
【0015】
本発明の第3の特徴は、鍵管理サーバと利用者端末とを具備する、利用者に固有の識別情報に基づく秘密鍵を用いた鍵配送システムであって、鍵管理サーバが、複数の利用者端末が所属する集団に対して、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、利用者端末の各々に対して発行された秘密鍵の更新回数とを公開する情報公開手段と、集団に所属する利用者端末から、利用者端末に対する秘密鍵の発行要求を受信する発行要求受信手段と利用者端末に対する秘密鍵の更新回数を更新する更新手段と、発行要求に応じて、利用者端末に対する秘密鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者端末の利用者に固有の識別情報とに基づいて、所定の方法により利用者端末に対する秘密鍵を発行する秘密鍵発行手段と、秘密鍵発行手段によって発行された秘密鍵を利用者端末に送信する秘密鍵送信手段とを備え、利用者端末が、利用者端末に対する秘密鍵の発行要求を鍵管理サーバに送信する発行要求送信手段と、鍵管理サーバよって送信された利用者端末に対する秘密鍵を受信する鍵受信手段と、集団に所属する他の利用者端末に対する秘密鍵の更新回数に対応付けられた関数を選択し、選択された関数と他の利用者端末の利用者に固有の識別情報と利用者端末に対する秘密鍵とに基づいて、他の利用者端末との共通鍵を生成する共通鍵生成手段と
を備えることを要旨とする。
【0016】
本発明の第4の特徴は、本発明の第3の特徴において、関数の族が、所定の誤り訂正符号によって符号化された利用者に固有の識別情報と誤り訂正符号によって誤り訂正の可能な(N+1)個の異なるランダムなノイズr0,…,rNとにより、式hi(x)=x+ri(ただし、xは利用者に固有の識別情報であり、iは0≦i≦N)を用いて構成されることが好ましい。
【0017】
本発明の第5の特徴は、利用者に固有の識別情報に基づく秘密鍵を用いた鍵配送システムにおける鍵管理サーバであって、複数の利用者端末が所属する集団に対して、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、利用者端末の各々に対して発行された秘密鍵の更新回数とを公開する情報公開手段と、集団に所属する利用者端末から、利用者端末に対する秘密鍵の発行要求を受信する発行要求受信手段と、利用者端末に対する秘密鍵の更新回数を更新する更新手段と、発行要求に応じて、利用者端末に対する秘密鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者端末の利用者に固有の識別情報とに基づいて、所定の方法により利用者端末に対する秘密鍵を発行する秘密鍵発行手段と、秘密鍵発行手段によって発行された秘密鍵を利用者端末に送信する秘密鍵送信手段とを備えることを要旨とする。
【0018】
本発明の第6の特徴は、本発明の第5の特徴において、関数の族が、所定の誤り訂正符号によって符号化された利用者に固有の識別情報と誤り訂正符号によって誤り訂正の可能な(N+1)個の異なるランダムなノイズr0,…,rNとにより、式hi(x)=x+ri(ただし、xは利用者に固有の識別情報であり、iは0≦i≦N)を用いて構成されることが好ましい。
【0019】
本発明の第7の特徴は、秘密鍵の更新回数に対応付けられた関数と利用者に固有の識別情報とに基づいて、所定の方法により発行される秘密鍵を用いた鍵配送システムにおいて用いられる移動通信端末であって、移動通信端末に対する秘密鍵の発行要求を鍵管理サーバに送信する発行要求送信手段と、鍵管理サーバよって送信された移動通信端末に対する秘密鍵を受信する鍵受信手段と、集団に所属する他の移動通信端末に対する秘密鍵の更新回数に対応付けられた関数を選択し、選択された関数と他の移動通信端末の利用者に固有の識別情報と移動通信端末に対する秘密鍵とに基づいて、他の移動通信端末との共通鍵を生成する共通鍵生成手段とを備えたことを要旨とする。
【0020】
【発明の実施の形態】
(本実施形態に係る鍵配送システムの全体構成)
本発明の実施形態について図面を参照しながら説明する。図1は、本実施形態に係る鍵配送システムの全体構成図である。
【0021】
同図に示すように、本実施形態に係る鍵配送システムは、通信ネットワーク1と、データベース10と、鍵管理サーバ20と、利用者端末30aと、利用者端末30bとから構成されている。
【0022】
通信ネットワーク1は、鍵管理サーバ20と、データベース10と、利用者端末30aと、利用者端末30bとを接続するものである。通信ネットワーク1としては、例えばインターネットを用いることができる。なお、ここでいうインターネットとは、RFC791等において規定されるIPv4またはRFC2460等において規定されるIPv6であってもよい。
【0023】
データベース10は、本実施形態では、利用者端末30a,30bに対して発行された秘密鍵の更新回数及び関数の族を記憶するとともに、記憶した秘密鍵の更新回数及び関数の族を利用者端末30a,30bに対して公開するものである。
【0024】
鍵管理サーバ20は、本実施形態では、利用者端末30a,30bに対して秘密鍵を発行するとともに、利用者端末30a,30bに対して発行した秘密鍵の更新回数及び秘密鍵を生成するため等に用いられる関数の族を管理するものである。また、鍵管理サーバ20は、秘密鍵の更新回数や関数の族をデータベース10上に公開させる機能を有している。
【0025】
なお、本実施形態では、データベース10と鍵管理サーバ20とは、分離された形態となっているが、データベース10と鍵管理サーバ20とを一体のハードウェア・ソフトウェアによって実現してもよい。
【0026】
利用者端末30a,30bは、本実施形態では、鍵管理サーバ20によって発行される秘密鍵を用いて、利用者端末30aと利用者端末30bとの間において用いられる共通鍵を生成するものである。また、利用者端末30a,30bは、生成した共通鍵を用いて、暗号通信を行うものである。
【0027】
利用者端末30a,30bとしては、例えば、パーソナルコンピュータ、携帯情報端末(PDA)、携帯電話端末等を用いることができる。
【0028】
図2は、データベース10、鍵管理サーバ20、利用者端末30a,30bそれぞれの構成を示すブロック構成図である。
【0029】
データベース10は、本実施形態では、利用者端末30a,30bに対して、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、利用者端末30a,30bの各々に対して発行された秘密鍵の更新回数とを公開する情報公開手段を構成する。
【0030】
具体的には、データベース10上に公開される関数として、例えば、hi(x)=x+riを用いることができる。ここで、xは、誤り訂正符号によって符号化された利用者に固有のIDである。rは、当該誤り訂正符号によって訂正可能なランダムなノイズであり、秘密鍵の最大更新回数Nに対し、(N+1)個のr0,…,rNから構成される。また、iは、秘密鍵の更新回数であり、0≦i≦Nとする。よって、hi(x)は、IDがxである利用者の利用者端末に対するi回目の秘密鍵の更新する場合に用いられる関数を示している。
【0031】
なお、利用者に固有の識別情報としては、当該利用者の電子メールアドレスや電話番号等を用いることができる。また、上述した誤り訂正符号とは、ビット誤りを訂正できる符号であればよく、例えば、CRCやハミング符号等を用いることができる。また、上述した関数と異なる関数を用いて関数の族を構成してもよい。
【0032】
関数の族テーブル11は、上述した関数により表現される複数の関数{h0(・), h1(・),..., hN(・)}と、秘密鍵の更新回数との対応付けを示している。ここで、(・)は、各利用者のIDに対応することを示している。このように関数の族を構成することにより、例えば、電子メールアドレスがUである利用者端末30aの利用者Uに対して初めて秘密鍵が発行される場合には、鍵管理サーバ20は、h0(・)を選択し、h0(U)を取得する。また、鍵管理サーバ20は、利用者Uに対してi回目(1≦i≦N)の秘密鍵が発行される場合には、hi(・)を選択し、hi(U)を取得する。
【0033】
また、データベース10は、本実施形態では、利用者端末30aの利用者Uに対して発行された秘密鍵の更新回数を示す更新回数情報pを鍵管理サーバ20から受信し、更新回数情報pを利用者端末30a,30bに対して公開することができる。
【0034】
更新回数情報テーブル12は、更新回数情報pの内容の例を示しており、各々の利用者のIDと、当該利用者に対して発行された秘密鍵の更新回数とが対応付けられている。
【0035】
鍵管理サーバ20は、本実施形態では、発行要求受信部21と、秘密情報生成部22と、鍵発行部23と、鍵送信部24と、情報更新部25とから構成されている。
【0036】
以下、上述したblom方式(所定の方法)を用いた利用者に固有のIDに基づく鍵配送を例として各部の構成を説明する。
【0037】
発行要求受信部21は、本実施形態では、利用者端末30aから、利用者端末30aに対する秘密鍵の発行要求を受信するものである。具体的には、発行要求受信部21は、利用者端末30aの利用者Uから、利用者UのIDに基づく秘密鍵の発行要求を受信し、受信した当該発行要求を鍵発行部23へ送信するものである。
【0038】
秘密情報生成部22は、本実施形態では、所定の方法に基づいて秘密情報を生成するものである。
【0039】
具体的には、秘密情報生成部22は、有限体上GF(q)上の二変数の対称多項式f(x,y)を生成する。また、任意の文字列をGF(q)に写す衝突困難な一方向性ハッシュ関数hを選択する。秘密情報生成部22は、生成されたy(マスター鍵)を秘密情報とし、鍵発行部23に送信する。
【0040】
鍵発行部23は、本実施形態では、利用者端末30aからの秘密鍵の発行要求に応じて、利用者端末30aに対する秘密鍵の更新回数を示す更新回数情報pに対応付けられた関数を{h0(・), h1(・),…, hN(・)}の中から選択し、選択された関数と利用者端末30aの利用者Uの電子メールアドレスUとに基づいて、所定の方法により利用者端末30aに対する秘密鍵を発行する秘密鍵発行手段を構成する。
【0041】
本実施形態に係る鍵発行部23は、発行要求受信部21によって受信された利用者端末30aからの発行要求を受信する。さらに、鍵発行部23は、データベース10上に公開されている更新回数情報pを参照し、利用者端末30aに対する秘密鍵の更新回数と、更新回数に対応付けられた関数を{h0(・), h1(・),…, hN(・)}の中から選択する。具体的には、鍵発行部23は、例えば、利用者端末30aが初めての秘密鍵の発行を要求している場合、データベース10上に公開されている更新回数情報pに利用者端末30aに対する秘密鍵の更新記録がないため、h0(・)を選択し、利用者Uの電子メールアドレスUからh0(U)を取得する。
【0042】
さらに、本実施形態に係る鍵発行部23は、秘密鍵dcharをf(char,y)により生成する。ここで、charには、取得されたh0(U)が用いられる。yは、秘密情報生成部22によって生成されたマスター鍵(秘密情報)である。このようにして、鍵発行部23は、利用者のIDに基づく最初の秘密鍵を発行することができる。
【0043】
また、鍵発行部23は、例えば、利用者端末30aがi回目(1≦i≦N)の秘密鍵の更新を要求している場合、データベース10上に公開されている更新回数情報pから利用者端末30aに対する秘密鍵の更新回数を参照してhi(・)を選択し、利用者Uの電子メールアドレスUからhi(U)を取得することができる。さらに、鍵発行部23は、上述した秘密鍵と同様に、利用者Uの電子メールアドレスUに対応するi回目の秘密鍵を発行することができる。
【0044】
鍵発行部23は、利用者Uからの発行要求に基づいて発行した秘密鍵を鍵送信部24に送信するとともに、秘密鍵を発行したことを情報更新部25に通知することができる。
【0045】
鍵送信部24は、本実施形態では、鍵発行部23が発行した秘密鍵を利用者端末30aに送信する秘密鍵送信手段を構成する。
【0046】
情報更新部25は、本実施形態では、利用者端末30aに対する秘密鍵の更新回数を示す更新回数情報pを更新する更新手段を構成する。
【0047】
具体的には、情報更新部25は、鍵発行部23から通知された秘密鍵の更新回数を取得し、データベース10によって公開されている利用者Uの更新回数情報pを更新することができる。
【0048】
なお、発行要求受信部21、秘密情報生成部22、鍵発行部23、鍵送信部24、及び情報送信部25は、利用者端末30bに対しても同様の処理を行うことができる。鍵発行部23は、例えば、電子メールアドレスがSである利用者端末30bの利用者Sに対するj回目(1≦i≦N)の秘密鍵の更新要求に際しては、関数hj(S)に基づいて、利用者端末30bに対する秘密鍵dchar をf(char’,y)により生成することができる。ここで、char’には、取得されたhj(S)が用いられる。yは、秘密情報生成部22によって生成されたマスター鍵(秘密情報)である。
【0049】
利用者端末30aは、本実施形態では、発行要求送信部31aと、鍵受信部32aと、共通鍵生成部33aと、情報送信部34aと、情報受信部35aとから構成されている。
【0050】
発行要求送信部31aは、本実施形態では、利用者端末30aに対する秘密鍵の発行要求を鍵管理サーバ20に送信するものである。
【0051】
鍵受信部32aは、本実施形態では、利用者端末30aに対する秘密鍵を鍵管理サーバ20から受信するものである。具体的には、鍵受信部32aは、鍵管理サーバ20から秘密鍵を受信し、受信した秘密鍵を保存しておくことができる。また、鍵受信部32aは、共通鍵生成部33aと接続されている。
【0052】
共通鍵生成部33aは、利用者端末30bに対する秘密鍵の更新回数に対応付けられた関数を{h0(・), h1(・),…, hN(・)}の中から選択し、選択された関数と、利用者端末30bの利用者に固有のIDに基づいて、利用者端末30bとの共通鍵を生成するものである。
【0053】
具体的には、共通鍵生成部33aは、データベース10上に公開されている更新回数情報pを参照し、利用者端末30bに対する秘密鍵の更新回数に対応付けられた関数を{h0(・), h1(・),…, hN(・)}の中から選択する。共通鍵生成部33aは、例えば、更新回数情報pから、電子メールアドレスがSである利用者端末30bの利用者Sがj回の秘密鍵の更新を行っている場合、hj(・)を選択し、電子メールアドレスSに基づいてhj(S)を取得する。
【0054】
共通鍵生成部33aは、利用者端末30bとの共通鍵をK:=dchar(char’)により生成する。ここで、char’には、取得したhj(S)が用いられる。dcharは、鍵発行部23が生成した利用者端末30aに対する秘密鍵である。このようにして、共通鍵生成部33aは、利用者端末30bの利用者Sとの通信に用いることのできる共通鍵を生成することができる。また、共通鍵生成部33aは、情報送信部34a及び情報受信部35aと接続されている。
【0055】
情報送信部34aは、本実施形態では、共通鍵生成部33aによって生成された利用者端末30bとの共通鍵を用いて、利用者端末30bに対して暗号化された情報を送信するものである。
【0056】
情報受信部35aは、本実施形態では、利用者端末30bから暗号化された情報を受信し、共通鍵生成部33aによって生成された利用者端末30bとの共通鍵を用いて、受信した情報を復号するものである。
【0057】
なお、本実施形態では、利用者端末30bは、利用者端末30aと同様の機能を有する、発行要求送信部31bと、鍵受信部32bと、共通鍵生成部33bと、情報送信部34bと、情報受信部35bとを具備している。利用者端末30bに具備される共通鍵生成部33bは、本実施形態では、利用者端末30aとの共通鍵をK:=dchar (char)により生成する。ここで、charには、取得したhi(U)が用いられる。dchar は、鍵発行部23が生成した利用者端末30bに対する秘密鍵である。
【0058】
(本実施形態に係る鍵配送システムによる鍵配送方法)
次に、本実施形態に係る鍵配送システムによる鍵配送方法について説明する。図3乃至図5は、本実施形態に係る鍵配送方法のシーケンスを示している。
【0059】
まず、鍵管理サーバ20は、所定の方法(有限体上GF(q)上の二変数の対称多項式f(x,y)を生成等)に基づいて、秘密情報(y)を生成する(S1)。
【0060】
また、鍵管理サーバ20は、利用者端末30a,30bに対する秘密鍵の更新の回数を示す更新回数情報pをデータベース10上に公開する(S2)。さらに、鍵管理サーバ20は、例えば、所定の式(hi(x)=x+ri)によって求めることのできる関数の族{h0(・), h1(・),..., hN(・)}をデータベース10上に公開する(S3)。
【0061】
利用者端末30aは、秘密鍵の発行要求を鍵管理サーバ20に送信する(S4)。
【0062】
鍵管理サーバ20は、利用者端末30aから、初回の秘密鍵の発行要求を受信する(S5)。次いで、鍵管理サーバ20は、利用者Uの電子メールアドレスUに基づいて、データベース10によって公開されている関数の族の中からh0(・)を選択し、h0(U)を取得する(S6)。
【0063】
さらに、鍵管理サーバ20は、ステップS1において生成された秘密情報(d)とh0(U)を用いて、所定の式(dchar=f(char,y))により求めることのできる初回の秘密鍵(dcharまたはg0,U)を発行する(S7)。
【0064】
鍵管理サーバ20は、ステップS7において発行された秘密鍵(g0,U)を利用者端末30aに送信する(S8)。
【0065】
利用者端末30aは、ステップS7において発行された秘密鍵r0,Uを受信する(S9)。
【0066】
次いで、利用者端末30aは、i回目の秘密鍵の発行要求を鍵管理サーバ20に送信する(S10)。なお、利用者端末30aが、秘密鍵の更新を行う事由としては、例えば秘密鍵の漏洩や紛失等がある。
【0067】
鍵管理サーバ20は、利用者端末30aから、i回目の秘密鍵の発行要求を受信する(S11)。次いで、鍵管理サーバ20は、利用者端末30aの利用者Uがi回目の秘密鍵の更新を行うことに伴い、利用者Uの更新回数情報pを更新する(S12)。
【0068】
次いで、鍵管理サーバ20は、ステップS12において更新された更新回数情報pをデータベース10上に公開する(S13)。また、鍵管理サーバ20は、データベース10上に公開されている更新回数情報pを参照し、利用者Uに対する秘密鍵の更新回数と対応付けられた関数hi(・)を選択し、電子メールアドレスUに基づいてhi(U)を取得する(S14)。
【0069】
さらに、鍵管理サーバ20は、ステップS1において生成された秘密情報(y)とhi(U)とを用いて、所定の式(dchar=f(char,y))により求めることのできるi回目の秘密鍵(dcharまたはgi,u)を発行する(S15)。
【0070】
鍵管理サーバ20は、ステップS15において発行された秘密鍵(gi,u)を利用者端末30aに送信する(S16)。
【0071】
利用者端末30aは、ステップS15において発行された秘密鍵(gi,u)を受信する(S17)。
【0072】
次いで、利用者端末30bは、利用者端末30aとの共通鍵を生成するため、データベース10上に公開されている更新回数情報pを取得(S18)し、また、利用者端末30bは、ステップS18において取得された更新回数情報pから、利用者Uがこれまでに行った復号鍵の更新回数iを取得する(S19)。さらに、利用者端末30bは、利用者Uの電子メールアドレスU及び取得した更新回数iから値hi(U)を取得する(S20)。
【0073】
次いで、利用者端末30bは、ステップS20において取得した値hi(U)を用いて、所定の式(K:=dchar (char))により利用者端末30aとの共通鍵となる値(ks,u)を演算する(S21)。なお、利用者端末30bに対する秘密鍵dchar は、ステップS4〜S9またはステップS10〜S17において説明した内容と同様の方法により、利用者端末30bが鍵管理サーバから受信した秘密鍵を利用することができる。
【0074】
利用者端末30bは、所定の式(K:=dchar (char))により演算された値を利用者端末30aとの共通鍵として生成する(S22)。
【0075】
なお、利用者端末30aは、ステップS18〜S22において説明した内容と同様の方法により、利用者端末30bとの共通鍵を生成することができる。利用者端末30aと利用者端末30bとが、上述の方法により、それぞれ共通鍵を生成することにより、利用者端末30aと利用者端末30bとの間において、当該共通鍵を用いて暗号通信を行うことができる。
【0076】
以上、本実施形態に係る鍵配送システム及び鍵配送方法について、bolm方式(所定の方法)を用いた利用者に固有のIDに基づく鍵配送を例として説明したが、本実施形態に係る鍵配送システム及び鍵配送方法において用いることのできる鍵配送方式は、blom方式に限定されるものではなく、勿論他の方式を用いて、本実施形態において説明した利用者に固有のIDに基づく鍵配送を行うこともできる。
【0077】
(鍵配送システム及び鍵配送方法による作用・効果)
本実施形態に係る鍵配送システム及び鍵配送方法によれば、利用者Uの電子メールアドレスUと更新回数に対応付けられた関数の族{h0(・), h1(・),..., hN(・)}から求められる値(例えばhi(U))に基づいて秘密鍵を生成して発行するため、従来のIDに基づく鍵配送では困難であった鍵の更新を行うことができる。
【0078】
本実施形態によれば、鍵管理サーバ20が、利用者Uからの発行要求に応じて、利用者に固有のIDに対応する秘密鍵を更新するため、利用者端末30aの利用者Uは、当該IDを変更することなく、秘密鍵の漏洩や紛失に伴う秘密鍵の更新を随時かつ迅速に行うことができる。
【0079】
また、本実施形態によれば、データベース10上に公開される秘密鍵を生成するための関数として、hi(x)=x+riを用い、かつx(利用者に固有のID)及びri(ランダムノイズ)を所定の誤り訂正符号によって表現された値を用いることにより、利用者Uの電子メールアドレスUに基づく値hi(U)と、他の利用者に用いられる値とが同一となることがないため、異なる利用者に対して同一の秘密鍵が発行されるような事態を避けることができ、より高い安全性を確保することができる。
【0080】
【発明の効果】
以上説明したように本発明によれば、鍵の更新を可能とするIDに基づく鍵配送方法及び鍵配送システムを提供することができる。
【図面の簡単な説明】
【図1】本発明の実施形態に係る鍵配送システムの全体構成図である。
【図2】本発明の実施形態に係るデータベース、鍵管理サーバ及び利用者端末のブロック構成を示す図である。
【図3】本実施形態に係る鍵配送方法を示すシーケンス図である。
【図4】本実施形態に係る鍵配送方法を示すシーケンス図である。
【符号の説明】
1…通信ネットワーク
10…データベース
20…鍵管理サーバ
21…発行要求受信部
22…秘密情報生成部
23…鍵発行部
24…鍵送信部
25…情報更新部
30a,30b…利用者端末
31a,31b…発行要求送信部
32a,32b…鍵受信部
33a,33b…共通鍵生成部
34a,34b…情報送信部
35a,35b…情報受信部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a key distribution method and a key distribution system based on identification information (ID) unique to a user such as an e-mail address or a telephone number.
[0002]
[Prior art]
In the key distribution method used conventionally, since the user cannot freely specify the public key value, the certificate authority guarantees the connection between the user and the public key. In addition, in such a key distribution method, if a user leaks or loses a secret key, the user applies to that authority and creates a new public / private key pair. There must be. The certificate authority issues a new key certificate after confirming the relationship between the newly issued public key and the user. In addition, the certificate authority will state in the Key Certificate Revocation List (CRL) that the key certificate of the public key previously used by the user will be revoked, and notify all users of this list. .
[0003]
In such a key distribution method, a person who performs key distribution first acquires a public key of a key distribution partner and an electronic key certificate issued by a certificate authority. Next, a person who performs key distribution verifies the validity of the key certificate and then performs key distribution. For this reason, an extra communication cost is generated between the certificate authority and the person who distributes the key, and a calculation cost such as a key certificate by the person who performs the key distribution is generated. In particular, verification of a key certificate usually has a problem that a large calculation cost is required.
[0004]
In order to solve such problems, the necessity of a method (identity-based key distribution method) in which identification information (ID) unique to a user can be used as a public key was proposed in 1984. Since then, specific implementation methods have been proposed. In the key distribution method based on ID, first, a center that issues and manages a secret key generates a master key mst and publishes public information pub corresponding to mst. Next, an arbitrary sentence string char and mst are acted on to make the secret key d for the stringchar(For convenience, such a private key dcharIs called "a secret key based on char"). Usually, the user's e-mail address or the like is used as char. Next, for example, a private key d based on charcharAnd a secret key d based on char ’char 'When communicating with the user 2 holding the password using the common key, dcharUser 1 holdingcharAnd char ’and pub, and dchar 'User 2 holdingchar 'It is possible to generate a common key that can be used between the user 1 and the user 2 by using, char and pub. Such a key distribution method based on ID is actually a so-called “no communication required” key distribution (key sharing) method in which it is not necessary to transmit a common key to a communication partner.
[0005]
As a specific method for providing such a function, for example, the Blom method (see Non-Patent Document 1) is known. The outline of the Blom method will be described below.
[0006]
The center that issues and manages the secret key creates a two-variable symmetric polynomial f (x, y) on the finite field GF (q), and uses y as the master key. Further, the center selects a one-way hash function h that is difficult to collide and copies an arbitrary character string to GF (q). Further, the center operates the character string char and the master key y, and a secret key d based on char.char(y) is derived from f (char, y). Private key dcharThe holder of (y) is dcharUsing (y), the secret key d corresponding to char ’char 'The common key K with the user holding (y) is K: = dcharDerived by (char ′).
[0007]
Such an ID-based key distribution method has an advantage that no cost is required for obtaining a public key and verifying validity.
[0008]
[Non-Patent Document 1]
Proc. Of CRYPTO’82, Plenum Press, pp.231-236, 1983
[0009]
[Problems to be solved by the invention]
However, the above-described conventional key distribution method based on an ID has a problem that the key cannot be updated unless the ID is changed because the secret key is generated based on the ID unique to the user. In addition, such a conventional key distribution method based on an ID has a problem that public information paired with the secret key cannot be invalidated using a CRL as in the conventional key distribution method.
[0010]
Therefore, the present invention has been made in view of the above points, and an object of the present invention is to provide a key distribution method and key distribution system based on an ID capable of updating a key.
[0011]
[Means for Solving the Problems]
A first feature of the present invention is a key distribution method using a secret key based on identification information unique to a user, in which a center in a group to which a plurality of user terminals belong each A group of functions composed of functions uniquely associated with each other and step A in which the number of updates of the secret key issued to each user terminal by the center is disclosed to the group, and the use belonging to the group The user terminal transmits a secret key issuance request to the user terminal, step B, the center updates the secret key renewal count to the user terminal, and the center responds to the issuance request. A function associated with the number of times the secret key is updated is selected, and a secret key for the user terminal is issued by a predetermined method based on the selected function and identification information unique to the user of the user terminal. Step D, the center transmits the secret key issued in step D to the user terminal, and the user terminal is associated with the number of times the secret key is updated for other user terminals belonging to the group. Step F for generating a common key with another user terminal based on the selected function, identification information unique to the user of the other user terminal, and a secret key for the user terminal It is a summary to provide.
[0012]
According to such a feature, using a family of functions configured by a function uniquely associated with each of the secret key update counts, and the secret key update count issued to each of the user terminals Since a new secret key is issued, the key can be updated in the key distribution based on the unique ID of the user.
[0013]
The second feature of the present invention is that, in the first feature of the present invention, the family of functions is capable of error correction using identification information unique to a user encoded by a predetermined error correction code and the error correction code. (N + 1) different random noises r0, ..., rNAnd the expression hi(X) = x + ri(Where x is identification information unique to the user, and i is 0 ≦ i ≦ N).
[0014]
According to such a feature, h as a functioni(X) = x + riAnd x and riSince the value expressed by a predetermined error correction code is used, the value based on the ID unique to the user generated using the function is not the same as the value used by other users Therefore, a situation in which the same secret key is issued to different users can be avoided, and higher security can be ensured.
[0015]
A third feature of the present invention is a key distribution system using a secret key based on identification information unique to a user, comprising a key management server and a user terminal, wherein the key management server includes a plurality of uses. For a group to which a user terminal belongs, a family of functions configured by a function uniquely associated with each number of times the secret key has been updated, and the number of times the secret key has been issued to each user terminal An information disclosing means for publishing, an issue request receiving means for receiving a request for issuing a secret key for the user terminal from a user terminal belonging to the group, and an updating means for updating the number of times the secret key is updated for the user terminal; In response to the issuance request, a function associated with the number of times the secret key is updated for the user terminal is selected, and a predetermined method is determined based on the selected function and identification information unique to the user of the user terminal. To the user terminal A secret key issuing means for issuing a secret key; and a secret key transmitting means for transmitting the secret key issued by the secret key issuing means to the user terminal. Issuance request transmitting means for transmitting the key to the key management server, key receiving means for receiving the secret key for the user terminal transmitted by the key management server, and the number of updates of the secret key for other user terminals belonging to the group. Select the associated function, and generate a common key with other user terminals based on the selected function, identification information unique to the user of the other user terminal, and the private key for the user terminal Common key generation means
It is a summary to provide.
[0016]
The fourth feature of the present invention is that, in the third feature of the present invention, the family of functions is capable of error correction using the identification information unique to the user encoded by the predetermined error correction code and the error correction code. (N + 1) different random noises r0, ..., rNAnd the expression hi(X) = x + ri(Where x is identification information unique to the user, and i is 0 ≦ i ≦ N).
[0017]
A fifth feature of the present invention is a key management server in a key distribution system using a secret key based on identification information unique to a user, wherein a secret key is assigned to a group to which a plurality of user terminals belong. Information disclosure means for disclosing the family of functions composed of functions uniquely associated with each of the update counts, and the update count of the secret key issued to each user terminal, and belonging to the group An issue request receiving means for receiving a request for issuing a secret key for the user terminal from the user terminal, an update means for updating the number of times the secret key is updated for the user terminal, and a secret for the user terminal in response to the issue request. A secret key that selects a function associated with the number of key updates and issues a secret key to the user terminal by a predetermined method based on the selected function and identification information unique to the user of the user terminal Issuing means , And summarized in that and a secret key transmitting means for transmitting the private key issued by the private key issuing means to the user terminal.
[0018]
According to a sixth aspect of the present invention, in the fifth aspect of the present invention, the family of functions is capable of error correction by means of identification information unique to a user encoded by a predetermined error correction code and the error correction code. (N + 1) different random noises r0, ..., rNAnd the expression hi(X) = x + ri(Where x is identification information unique to the user, and i is 0 ≦ i ≦ N).
[0019]
The seventh feature of the present invention is used in a key distribution system using a secret key issued by a predetermined method based on a function associated with the number of times the secret key is updated and identification information unique to the user. An issuance request transmitting means for transmitting a secret key issuance request for the mobile communication terminal to the key management server, and a key receiving means for receiving the secret key for the mobile communication terminal transmitted by the key management server. Selecting a function associated with the number of times the secret key has been updated for other mobile communication terminals belonging to the group, the selected function, identification information unique to the user of the other mobile communication terminal, and the secret for the mobile communication terminal The gist is provided with a common key generating means for generating a common key with another mobile communication terminal based on the key.
[0020]
DETAILED DESCRIPTION OF THE INVENTION
(Overall configuration of key distribution system according to this embodiment)
Embodiments of the present invention will be described with reference to the drawings. FIG. 1 is an overall configuration diagram of a key distribution system according to the present embodiment.
[0021]
As shown in the figure, the key distribution system according to the present embodiment includes a communication network 1, a database 10, a key management server 20, a user terminal 30a, and a user terminal 30b.
[0022]
The communication network 1 connects the key management server 20, the database 10, the user terminal 30a, and the user terminal 30b. As the communication network 1, for example, the Internet can be used. The Internet here may be IPv4 defined in RFC 791 or the like or IPv6 defined in RFC 2460 or the like.
[0023]
In this embodiment, the database 10 stores the secret key update count and function family issued to the user terminals 30a and 30b, and stores the stored secret key update count and function family. It is disclosed to 30a and 30b.
[0024]
In this embodiment, the key management server 20 issues a secret key to the user terminals 30a and 30b, and generates the number of updates and a secret key for the secret key issued to the user terminals 30a and 30b. It manages a family of functions used for the above. Further, the key management server 20 has a function of making the database 10 disclose the secret key update count and function family.
[0025]
In the present embodiment, the database 10 and the key management server 20 are separated from each other. However, the database 10 and the key management server 20 may be realized by integrated hardware and software.
[0026]
In the present embodiment, the user terminals 30a and 30b generate a common key used between the user terminal 30a and the user terminal 30b using a secret key issued by the key management server 20. . In addition, the user terminals 30a and 30b perform encrypted communication using the generated common key.
[0027]
As the user terminals 30a and 30b, for example, a personal computer, a personal digital assistant (PDA), a mobile phone terminal, or the like can be used.
[0028]
FIG. 2 is a block configuration diagram showing configurations of the database 10, the key management server 20, and the user terminals 30a and 30b.
[0029]
In the present embodiment, the database 10 includes a group of functions configured by functions uniquely associated with the number of times of updating the secret key for the user terminals 30a and 30b, and the user terminals 30a and 30b. An information disclosing means for disclosing the number of updates of the secret key issued to each is configured.
[0030]
Specifically, as a function disclosed on the database 10, for example, hi(X) = x + riCan be used. Here, x is an ID unique to the user encoded by the error correction code. r is random noise that can be corrected by the error correction code, and (N + 1) r is the maximum number N of secret key updates.0, ..., rNConsists of I is the number of times the secret key is updated, and 0 ≦ i ≦ N. Therefore, hi(X) indicates a function used when updating the i-th secret key for the user terminal of the user whose ID is x.
[0031]
As the identification information unique to the user, the user's e-mail address, telephone number, or the like can be used. The above-described error correction code may be any code that can correct a bit error, and for example, a CRC, a Hamming code, or the like can be used. Moreover, you may comprise the family of functions using a function different from the function mentioned above.
[0032]
The function family table 11 includes a plurality of functions {h0(・), H1(・), ..., hN(.)} Is associated with the number of times the secret key is updated. Here, (·) indicates that it corresponds to the ID of each user. By configuring the family of functions in this way, for example, when a secret key is issued for the first time to the user U of the user terminal 30a whose email address is U, the key management server 200Select (・) and h0Get (U). Further, the key management server 20 determines that the i-th (1 ≦ i ≦ N) private key is issued to the user U, hiSelect (・) and hiGet (U).
[0033]
Further, in this embodiment, the database 10 receives update number information p indicating the number of updates of the secret key issued to the user U of the user terminal 30a from the key management server 20, and receives the update number information p. It can be disclosed to the user terminals 30a and 30b.
[0034]
The update count information table 12 shows an example of the contents of the update count information p, and the ID of each user is associated with the update count of the secret key issued to the user.
[0035]
In the present embodiment, the key management server 20 includes an issue request receiving unit 21, a secret information generating unit 22, a key issuing unit 23, a key transmitting unit 24, and an information updating unit 25.
[0036]
Hereinafter, the configuration of each unit will be described by taking as an example key distribution based on an ID unique to a user using the above-described blom method (predetermined method).
[0037]
In the present embodiment, the issue request receiving unit 21 receives a request for issuing a secret key for the user terminal 30a from the user terminal 30a. Specifically, the issue request receiving unit 21 receives a request for issuing a secret key based on the ID of the user U from the user U of the user terminal 30a, and transmits the received issue request to the key issuing unit 23. To do.
[0038]
In the present embodiment, the secret information generation unit 22 generates secret information based on a predetermined method.
[0039]
Specifically, the secret information generation unit 22 generates a two-variable symmetric polynomial f (x, y) on GF (q) over a finite field. In addition, a one-way hash function h that is difficult to collide and copies an arbitrary character string to GF (q) is selected. The secret information generation unit 22 uses the generated y (master key) as secret information and transmits it to the key issuing unit 23.
[0040]
In this embodiment, the key issuing unit 23, in response to a request for issuing a secret key from the user terminal 30a, displays a function associated with update number information p indicating the number of updates of the secret key for the user terminal 30a { h0(・), H1(・),…, HN(•)}, and a secret key issuance for issuing a secret key to the user terminal 30a by a predetermined method based on the selected function and the email address U of the user U of the user terminal 30a Configure the means.
[0041]
The key issuing unit 23 according to the present embodiment receives the issue request from the user terminal 30a received by the issue request receiving unit 21. Further, the key issuing unit 23 refers to the update number information p published on the database 10, and determines the update number of the secret key for the user terminal 30a and the function associated with the update number {h0(・), H1(・),…, HNSelect from (•)}. Specifically, for example, when the user terminal 30a requests the issuance of a secret key for the first time, the key issuing unit 23 stores the secret for the user terminal 30a in the update count information p published on the database 10. Because there is no key update record, h0Select (・) and email address U from user U to h0Get (U).
[0042]
Furthermore, the key issuing unit 23 according to the present embodiment includes a secret key dcharIs generated by f (char, y). Where char is the acquired h0(U) is used. y is a master key (secret information) generated by the secret information generation unit 22. In this way, the key issuing unit 23 can issue the first secret key based on the user ID.
[0043]
For example, when the user terminal 30a requests the i-th (1 ≦ i ≦ N) update of the secret key, the key issuing unit 23 uses the update number information p published on the database 10. Referring to the number of times the private key has been updated for the user terminal 30aiSelect (・) and email address U from user U to hi(U) can be acquired. Further, the key issuing unit 23 can issue the i-th secret key corresponding to the electronic mail address U of the user U, similarly to the above-described secret key.
[0044]
The key issuing unit 23 can transmit the secret key issued based on the issuance request from the user U to the key transmitting unit 24 and can notify the information updating unit 25 that the secret key has been issued.
[0045]
In this embodiment, the key transmitting unit 24 constitutes a secret key transmitting unit that transmits the secret key issued by the key issuing unit 23 to the user terminal 30a.
[0046]
In this embodiment, the information update unit 25 constitutes update means for updating the update number information p indicating the number of updates of the secret key for the user terminal 30a.
[0047]
Specifically, the information update unit 25 can acquire the update count of the secret key notified from the key issuing unit 23 and update the update count information p of the user U disclosed by the database 10.
[0048]
The issue request receiving unit 21, the secret information generating unit 22, the key issuing unit 23, the key transmitting unit 24, and the information transmitting unit 25 can perform the same process on the user terminal 30b. For example, when issuing a j-th (1 ≦ i ≦ N) private key update request to the user S of the user terminal 30b whose e-mail address is S, the key issuing unit 23 sets the function hjBased on (S), the private key d for the user terminal 30bchar 'Can be generated by f (char ′, y). Where char ’is the acquired hj(S) is used. y is a master key (secret information) generated by the secret information generation unit 22.
[0049]
In this embodiment, the user terminal 30a includes an issue request transmission unit 31a, a key reception unit 32a, a common key generation unit 33a, an information transmission unit 34a, and an information reception unit 35a.
[0050]
In the present embodiment, the issue request transmission unit 31 a transmits a secret key issue request to the user terminal 30 a to the key management server 20.
[0051]
In this embodiment, the key receiving unit 32a receives a secret key for the user terminal 30a from the key management server 20. Specifically, the key receiving unit 32a can receive a secret key from the key management server 20 and store the received secret key. The key receiving unit 32a is connected to the common key generating unit 33a.
[0052]
The common key generation unit 33a calculates a function associated with the number of updates of the secret key for the user terminal 30b {h0(・), H1(・),…, HN(.)} Is selected, and a common key for the user terminal 30b is generated based on the selected function and an ID unique to the user of the user terminal 30b.
[0053]
Specifically, the common key generation unit 33a refers to the update count information p published on the database 10, and determines a function associated with the update count of the secret key for the user terminal 30b {h0(・), H1(・),…, HNSelect from (•)}. For example, when the user S of the user terminal 30b whose e-mail address is S has updated the secret key j times from the update count information p, the common key generation unit 33ajSelect (・) and h based on email address SjGet (S).
[0054]
The common key generation unit 33a generates a common key for the user terminal 30b with K: = dchar(char '). Where char ’is the acquired hj(S) is used. dcharIs a secret key for the user terminal 30 a generated by the key issuing unit 23. In this way, the common key generation unit 33a can generate a common key that can be used for communication with the user S of the user terminal 30b. The common key generation unit 33a is connected to the information transmission unit 34a and the information reception unit 35a.
[0055]
In the present embodiment, the information transmission unit 34a transmits encrypted information to the user terminal 30b using a common key with the user terminal 30b generated by the common key generation unit 33a. .
[0056]
In this embodiment, the information receiving unit 35a receives the encrypted information from the user terminal 30b, and uses the common key with the user terminal 30b generated by the common key generating unit 33a to receive the received information. Decrypt.
[0057]
In the present embodiment, the user terminal 30b has the same functions as the user terminal 30a. The issue request transmission unit 31b, the key reception unit 32b, the common key generation unit 33b, the information transmission unit 34b, And an information receiving unit 35b. In this embodiment, the common key generation unit 33b provided in the user terminal 30b uses the common key for the user terminal 30a as K: = d.char 'Generate by (char). Where char is the acquired hi(U) is used. dchar 'Is a secret key for the user terminal 30b generated by the key issuing unit 23.
[0058]
(Key distribution method by the key distribution system according to the present embodiment)
Next, a key distribution method by the key distribution system according to the present embodiment will be described. 3 to 5 show a sequence of the key distribution method according to the present embodiment.
[0059]
First, the key management server 20 generates secret information (y) based on a predetermined method (such as generating a two-variable symmetric polynomial f (x, y) on GF (q) over a finite field) (S1). ).
[0060]
Further, the key management server 20 publishes update number information p indicating the number of times the secret key is updated for the user terminals 30a and 30b on the database 10 (S2). Further, the key management server 20 may, for example, use a predetermined formula (hi(X) = x + ri) Family of functions {h0(・), H1(・), ..., hN(.)} Is published on the database 10 (S3).
[0061]
The user terminal 30a transmits a private key issuance request to the key management server 20 (S4).
[0062]
The key management server 20 receives the first private key issuance request from the user terminal 30a (S5). Next, the key management server 20 selects h from the family of functions disclosed by the database 10 based on the email address U of the user U.0Select (・) and h0(U) is acquired (S6).
[0063]
Furthermore, the key management server 20 uses the secret information (d) generated in step S1 and h0(U) is used to determine the predetermined formula (dchar= f (char, y)) The first secret key (dcharOr g0, U) Is issued (S7).
[0064]
The key management server 20 sends the secret key (g0, U) Is transmitted to the user terminal 30a (S8).
[0065]
The user terminal 30a uses the secret key r issued in step S7.0, UIs received (S9).
[0066]
Next, the user terminal 30a transmits an i-th private key issuance request to the key management server 20 (S10). Note that the reason why the user terminal 30a updates the secret key is, for example, leakage or loss of the secret key.
[0067]
The key management server 20 receives the i-th private key issuance request from the user terminal 30a (S11). Next, the key management server 20 updates the update count information p of the user U as the user U of the user terminal 30a updates the i-th secret key (S12).
[0068]
Next, the key management server 20 discloses the update number information p updated in step S12 on the database 10 (S13). Further, the key management server 20 refers to the update count information p published on the database 10 and refers to the function h associated with the update count of the private key for the user U.iSelect (・) and h based on email address Ui(U) is acquired (S14).
[0069]
Furthermore, the key management server 20 uses the secret information (y) generated in step S1 and hi(U) and the predetermined formula (dchar= f (char, y)) i-th secret key (dcharOr gi, u) Is issued (S15).
[0070]
The key management server 20 sends the secret key (gi, u) Is transmitted to the user terminal 30a (S16).
[0071]
The user terminal 30a receives the secret key (gi, u) Is received (S17).
[0072]
Next, in order to generate a common key with the user terminal 30a, the user terminal 30b obtains the update count information p published on the database 10 (S18), and the user terminal 30b performs step S18. The update count i of the decryption key performed so far by the user U is acquired from the update count information p acquired in step S19 (S19). Furthermore, the user terminal 30b calculates the value h from the email address U of the user U and the acquired number of updates i.i(U) is acquired (S20).
[0073]
Next, the user terminal 30b obtains the value h acquired in step S20.i(U) is used to determine the predetermined formula (K: = dchar '(char)), a value (k) that becomes a common key with the user terminal 30as, u) Is calculated (S21). Note that the private key d for the user terminal 30bchar 'Can use the secret key received from the key management server by the user terminal 30b by the same method as described in steps S4 to S9 or steps S10 to S17.
[0074]
The user terminal 30b uses a predetermined formula (K: = dchar '(char)) is generated as a common key with the user terminal 30a (S22).
[0075]
The user terminal 30a can generate a common key with the user terminal 30b by the same method as described in steps S18 to S22. The user terminal 30a and the user terminal 30b each generate a common key by the above-described method, thereby performing encrypted communication between the user terminal 30a and the user terminal 30b using the common key. be able to.
[0076]
The key distribution system and the key distribution method according to this embodiment have been described above by taking, as an example, the key distribution based on the ID unique to the user using the bolm method (predetermined method). The key distribution method that can be used in the system and the key distribution method is not limited to the blom method, and of course, other methods can be used to distribute the key based on the user-specific ID described in this embodiment. It can also be done.
[0077]
(Operations and effects of key distribution system and key distribution method)
According to the key distribution system and the key distribution method according to the present embodiment, a family of functions {h0(・), H1(・), ..., hN(·)} Value obtained from (eg hiSince the secret key is generated and issued based on (U)), it is possible to update the key, which was difficult in the conventional key distribution based on the ID.
[0078]
According to the present embodiment, since the key management server 20 updates the secret key corresponding to the ID unique to the user in response to the issuance request from the user U, the user U of the user terminal 30a Without changing the ID, it is possible to update the secret key as soon as the secret key is leaked or lost.
[0079]
Further, according to the present embodiment, as a function for generating a secret key published on the database 10, hi(X) = x + riAnd x (user-specific ID) and riThe value h based on the email address U of the user U by using the value represented by (random noise) by a predetermined error correction codeiSince (U) and the value used by other users are not the same, it is possible to avoid the situation where the same secret key is issued to different users, and higher security Can be secured.
[0080]
【The invention's effect】
As described above, according to the present invention, it is possible to provide a key distribution method and a key distribution system based on an ID that can update a key.
[Brief description of the drawings]
FIG. 1 is an overall configuration diagram of a key distribution system according to an embodiment of the present invention.
FIG. 2 is a diagram showing a block configuration of a database, a key management server, and a user terminal according to the embodiment of the present invention.
FIG. 3 is a sequence diagram showing a key distribution method according to the present embodiment.
FIG. 4 is a sequence diagram showing a key distribution method according to the present embodiment.
[Explanation of symbols]
1. Communication network
10 ... Database
20 ... Key management server
21 ... Issuance request receiving part
22 ... Secret information generator
23 ... Key issuing department
24: Key transmission unit
25. Information update part
30a, 30b ... User terminal
31a, 31b ... Issuance request transmitter
32a, 32b ... key receiving unit
33a, 33b ... Common key generation unit
34a, 34b ... information transmission unit
35a, 35b ... Information receiver

Claims (7)

鍵管理サーバと第1の利用者端末と第2の利用者端末とを具備し、利用者に固有の識別情報に基づく秘密鍵を用いた鍵配送方法であって、
前記鍵管理サーバが、複数の利用者端末が所属する集団に対して、データベースを用いて、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、前記利用者端末の各々に対して発行された前記秘密鍵の更新回数とを前記集団に公開するステップAと、
前記集団に所属する前記第1の利用者端末が、発行要求送信部を用いて、前記利用者端末に対する秘密鍵の発行要求を前記鍵管理サーバに送信するステップBと、
前記鍵管理サーバが、情報更新部を用いて、前記第1の利用者端末に対する秘密鍵の更新回数を更新するステップCと、
前記鍵管理サーバが、鍵発行部を用いて、前記発行要求に応じて前記第1の利用者端末に対する秘密鍵の更新回数に対応付けられた前記関数を選択し、当該選択した前記関数と前記第1の利用者端末の利用者に固有の識別情報とに基づいて、利用者に個別の識別情報に基づく鍵配送を行うことができる所定の方法により前記利用者端末に対する秘密鍵を発行するステップDと、
前記鍵管理サーバが、鍵送信部を用いて、前記ステップDにおいて発行された前記秘密鍵を前記第1の利用者端末に送信するステップEと、
前記第1利用者端末が、共通鍵生成部を用いて、前記第2の利用者端末に対する秘密鍵の更新回数に対応付けられた前記関数を選択し、当該選択した前記関数と前記第2の利用者端末の利用者に固有の識別情報と前記第1の利用者端末に対する秘密鍵とに基づいて、前記第2の利用者端末との共通鍵を生成するステップFと
を備えることを特徴とする鍵配送方法。
A key distribution method comprising a key management server, a first user terminal, and a second user terminal, and using a secret key based on identification information unique to the user,
The key management server uses a database for a group to which a plurality of user terminals belong, and a group of functions configured by functions uniquely associated with each of the number of updates of the secret key, and the use A step A for releasing the number of updates of the secret key issued to each of the subscriber terminals to the group;
Step B in which the first user terminal belonging to the group transmits a request for issuing a secret key for the user terminal to the key management server using an issue request transmission unit ;
Step C where the key management server updates the number of updates of the secret key for the first user terminal using an information update unit ;
Wherein the key management server, using the key issuing unit to select the function associated with the number of updates of the secret key for the first user terminal in response to the issue request, and the function that the selected Issuing a secret key to the user terminal by a predetermined method capable of performing key distribution based on the individual identification information to the user based on the identification information unique to the user of the first user terminal D,
Step E in which the key management server transmits the secret key issued in Step D to the first user terminal using a key transmission unit ;
It said first user terminal, using the common key generation unit, the second selecting the function associated with the number of updates of the private key to the user terminal, the function and the second was the selected And a step F of generating a common key with the second user terminal based on identification information unique to the user of the user terminal and a secret key for the first user terminal. Key distribution method to be used.
前記関数の族は、所定の誤り訂正符号によって符号化された前記利用者に固有の識別情報と前記誤り訂正符号によって誤り訂正の可能な(N+1)個の異なるランダムなノイズr,…,rとにより、式h(x)=x+r(ただし、xは前記利用者に固有の識別情報であり、iは0≦i≦N)を用いて構成されることを特徴とする請求項1に記載の鍵配送方法。The family of functions includes identification information unique to the user encoded by a predetermined error correction code and (N + 1) different random noises r 0 ,..., R that can be corrected by the error correction code. And N is an expression h i (x) = x + r i (where x is identification information unique to the user and i is 0 ≦ i ≦ N). The key distribution method according to 1. 鍵管理サーバと第1の利用者端末と第2の利用者端末とを具備、利用者に固有の識別情報に基づく秘密鍵を用いた鍵配送システムであって、
前記鍵管理サーバは、
複数の利用者端末が所属する集団に対して、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、前記利用者端末の各々に対して発行された前記秘密鍵の更新回数とを公開する情報公開手段と、
前記集団に所属する前記第1の利用者端末から、前記第1の利用者端末に対する秘密鍵の発行要求を受信する発行要求受信手段と、
前記第1の利用者端末に対する秘密鍵の更新回数を更新する更新手段と、
前記発行要求に応じて、前記第1の利用者端末に対する秘密鍵の更新回数に対応付けられた前記関数を選択し、当該選択した前記関数と前記第1の利用者端末の利用者に固有の識別情報とに基づいて、利用者に個別の前記識別情報に基づく鍵配送を行うことができる所定の方法により前記第1の利用者端末に対する秘密鍵を発行する秘密鍵発行手段と、
前記秘密鍵発行手段によって発行された前記秘密鍵を前記第1の利用者端末に送信する秘密鍵送信手段と
を備え、
前記第1の利用者端末は、
前記第1の利用者端末に対する秘密鍵の発行要求を前記鍵管理サーバに送信する発行要求送信手段と、
前記鍵管理サーバよって送信された前記第1の利用者端末に対する秘密鍵を受信する鍵受信手段と
前記集団に所属する第2の利用者端末に対する秘密鍵の更新回数に対応付けられた前記関数を選択し、当該選択した前記関数と前記第2の利用者端末の利用者に固有の識別情報と前記第1の利用者端末に対する秘密鍵とに基づいて、前記第2の利用者端末との共通鍵を生成する共通鍵生成手段と
を備えることを特徴とする鍵配送システム。
A key distribution system comprising a key management server, a first user terminal, and a second user terminal, and using a secret key based on identification information unique to the user,
The key management server
For a group to which a plurality of user terminals belong, a family of functions configured by a function uniquely associated with each of the number of times of update of the secret key, and the issued to each of the user terminals An information disclosing means for disclosing the number of updates of the private key;
Issuance request receiving means for receiving a secret key issuance request for the first user terminal from the first user terminal belonging to the group;
Updating means for updating the number of updates of the secret key for the first user terminal;
In response to the issuance request, the first select the function associated with the number of updates of the private key to the user terminal, the selected said function and said first and user terminal user to the specific A secret key issuing means for issuing a secret key for the first user terminal by a predetermined method capable of performing key distribution based on the individual identification information based on the identification information ;
A secret key transmitting means for transmitting the secret key issued by the secret key issuing means to the first user terminal,
The first user terminal is
An issuance request transmitting means for transmitting a secret key issuance request for the first user terminal to the key management server;
A key receiving means for receiving a secret key for the first user terminal transmitted by the key management server; and the function associated with the number of updates of the secret key for the second user terminal belonging to the group. select, based on the secret key for said unique identification information to the user of the said function to said selected second user terminal the first user terminal, the common and the second user terminal A key distribution system comprising: a common key generation unit that generates a key.
前記関数の族は、所定の誤り訂正符号によって符号化された前記利用者に固有の識別情報と前記誤り訂正符号によって誤り訂正の可能な(N+1)個の異なるランダムなノイズr,…,rとにより、式h(x)=x+r(ただし、xは前記利用者に固有の識別情報であり、iは0≦i≦N)を用いて構成されることを特徴とする請求項3に記載の鍵配送システム。The family of functions includes identification information unique to the user encoded by a predetermined error correction code and (N + 1) different random noises r 0 ,..., R that can be corrected by the error correction code. And N is an expression h i (x) = x + r i (where x is identification information unique to the user and i is 0 ≦ i ≦ N). 3. The key distribution system according to 3. 第1の利用者端末の利用者に固有の識別情報に基づく秘密鍵を用いた鍵配送システムにおける鍵管理サーバであって、
複数の利用者端末が所属する集団に対して、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、前記利用者端末の各々に対して発行された秘密鍵の更新回数とを公開する情報公開手段と、
前記集団に所属する前記第1の利用者端末から、前記第1の利用者端末に対する秘密鍵の発行要求を受信する発行要求受信手段と、
前記第1の利用者端末に対する秘密鍵の更新回数を更新する更新手段と、
前記発行要求に応じて、前記第1の利用者端末に対する秘密鍵の更新回数に対応付けられた前記関数を選択し、当該選択した前記関数と前記第1の利用者端末の利用者に固有の識別情報とに基づいて、利用者に個別の前記識別情報に基づく鍵配送を行うことができる所定の方法により前記利用者端末に対する秘密鍵を発行する秘密鍵発行手段と、
前記秘密鍵発行手段によって発行された前記秘密鍵を前記第1の利用者端末に送信する秘密鍵送信手段と
を備えることを特徴とする鍵管理サーバ。
A key management server in a key distribution system using a secret key based on identification information unique to a user of a first user terminal ,
For a group to which a plurality of user terminals belong, a family of functions configured by a function uniquely associated with each of the number of times the secret key is updated, and a secret issued to each of the user terminals An information disclosing means for disclosing the number of key updates;
Issuance request receiving means for receiving a secret key issuance request for the first user terminal from the first user terminal belonging to the group;
Updating means for updating the number of updates of the secret key for the first user terminal;
In response to the issuance request, the first select the function associated with the number of updates of the private key to the user terminal, the selected said function and said first and user terminal user to the specific A secret key issuing means for issuing a secret key for the user terminal by a predetermined method capable of performing key distribution based on the individual identification information to the user based on the identification information ;
A key management server, comprising: a secret key transmitting unit configured to transmit the secret key issued by the secret key issuing unit to the first user terminal.
前記関数の族は、所定の誤り訂正符号によって符号化された前記利用者に固有の識別情報と前記誤り訂正符号によって誤り訂正の可能な(N+1)異なるランダムなノイズr,…,rとにより、式h(x)=x+r(ただし、xは前記利用者に固有の識別情報であり、iは0≦i≦N)を用いて構成されることを特徴とする請求項5に記載の鍵管理サーバ。The function family includes identification information unique to the user encoded by a predetermined error correction code and (N + 1) different random noises r 0 ,..., R N that can be corrected by the error correction code. The expression h i (x) = x + r i (where x is identification information unique to the user and i is 0 ≦ i ≦ N). The key management server described. 秘密鍵の更新回数に対応付けられた関数と利用者に固有の識別情報とに基づいて、前記利用者に個別の前記識別情報に基づく鍵配送を行うことができる所定の方法により発行される秘密鍵を用いた鍵配送システムにおいて用いられる移動通信端末であって、
前記移動通信端末に対する秘密鍵の発行要求を前記鍵管理サーバに送信する発行要求送信手段と、
前記鍵管理サーバよって送信された前記移動通信端末に対する秘密鍵を受信する鍵受信手段と、
前記移動通信端末が所属する集団に所属する他の移動通信端末に対する秘密鍵の更新回数に対応付けられた前記関数を選択し、当該選択した前記関数と前記他の移動通信端末の利用者に固有の識別情報と前記移動通信端末に対する秘密鍵とに基づいて、前記他の移動通信端末との共通鍵を生成する共通鍵生成手段と
を備えたことを特徴とする移動通信端末。
A secret issued by a predetermined method capable of performing key distribution based on individual identification information to the user based on a function associated with the number of times the secret key is updated and identification information unique to the user A mobile communication terminal used in a key distribution system using a key,
An issuance request sending means for sending a secret key issuance request to the mobile communication terminal to the key management server;
Key receiving means for receiving a secret key for the mobile communication terminal transmitted by the key management server;
Unique to the mobile communication terminal selects the function associated with the number of updates of the private key to other mobile communication terminals belonging to a group belonging user with the function that the selected said another mobile communication terminal And a common key generating means for generating a common key with the other mobile communication terminal based on the identification information of the mobile communication terminal and a secret key for the mobile communication terminal.
JP2002274113A 2002-09-19 2002-09-19 Key distribution method and key distribution system based on user identification information capable of updating key Expired - Fee Related JP3895243B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002274113A JP3895243B2 (en) 2002-09-19 2002-09-19 Key distribution method and key distribution system based on user identification information capable of updating key

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002274113A JP3895243B2 (en) 2002-09-19 2002-09-19 Key distribution method and key distribution system based on user identification information capable of updating key

Publications (2)

Publication Number Publication Date
JP2004112538A JP2004112538A (en) 2004-04-08
JP3895243B2 true JP3895243B2 (en) 2007-03-22

Family

ID=32270679

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002274113A Expired - Fee Related JP3895243B2 (en) 2002-09-19 2002-09-19 Key distribution method and key distribution system based on user identification information capable of updating key

Country Status (1)

Country Link
JP (1) JP3895243B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006040806A1 (en) * 2004-10-08 2006-04-20 Softbankbb Corp. Cryptographic key distribution system
US7826619B2 (en) * 2005-08-23 2010-11-02 Ntt Docomo, Inc. Key-updating method, encryption processing method, key-insulated cryptosystem and terminal device
EP1955472B1 (en) * 2005-12-01 2016-06-29 Telefonaktiebolaget LM Ericsson (publ) Key management

Also Published As

Publication number Publication date
JP2004112538A (en) 2004-04-08

Similar Documents

Publication Publication Date Title
KR100568233B1 (en) Device Authentication Method using certificate and digital content processing device using the method
US6868160B1 (en) System and method for providing secure sharing of electronic data
JP3791464B2 (en) Access authority management system, relay server and method, and computer program
JP3897613B2 (en) Operation method of registration authority server, registration authority server, and program in public key cryptosystem
US20140244998A1 (en) Secure publishing of public-key certificates
JP5138775B2 (en) Method and system for generating implicit credentials and applications for ID-based encryption (IBE)
CN101960814B (en) IP address delegation
JP2002099211A (en) System and method for processing public key certificate issuing request
JP5297529B2 (en) Authentication system
JP2002207426A (en) System and method for issuing public key certificate, electronic certification device, and program storage medium
JP2005537711A (en) Certificate-based encryption and public key structure infrastructure
CN111865988B (en) Certificate-free key management method, system and terminal based on block chain
JP5264548B2 (en) Authentication system and authentication method
JP3895243B2 (en) Key distribution method and key distribution system based on user identification information capable of updating key
JP3895245B2 (en) Encryption method and encryption system based on user identification information capable of updating key
CN116827584A (en) Method for certificateless anonymous cross-domain authentication of Internet of things equipment based on blockchain
CN107395364B (en) Combined key cross-domain authentication method based on identification
TWI761243B (en) Encryption system and encryption method for group instant massaging
CN116232568A (en) SM 9-based attribute-based encryption block chain access control method
JP3895244B2 (en) Electronic signature method and electronic signature system based on identification information of user capable of updating key
CN113918971A (en) Block chain based message transmission method, device, equipment and readable storage medium
KR100654933B1 (en) System and its method for authenticating dynamically created certificate by user's password input
CN109412815B (en) Method and system for realizing cross-domain secure communication
KR101042834B1 (en) A Self-Certified Signcryption Method for Mobile Communications
WO2010045885A1 (en) Method and apparatus for the content management

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050411

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060703

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060905

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061106

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061213

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121222

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees