JP2009296489A - 情報処理装置、暗号化通信システム、暗号化通信方法及びプログラム - Google Patents
情報処理装置、暗号化通信システム、暗号化通信方法及びプログラム Download PDFInfo
- Publication number
- JP2009296489A JP2009296489A JP2008150216A JP2008150216A JP2009296489A JP 2009296489 A JP2009296489 A JP 2009296489A JP 2008150216 A JP2008150216 A JP 2008150216A JP 2008150216 A JP2008150216 A JP 2008150216A JP 2009296489 A JP2009296489 A JP 2009296489A
- Authority
- JP
- Japan
- Prior art keywords
- data
- sender
- key
- public key
- receiver
- 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.)
- Pending
Links
Images
Abstract
【課題】IDベース暗号の送信者が誰であるのかを偽る事ができなくなり、また、IDベース暗号の受信者が署名文を横流しできなくなる情報処理装置、暗号化通信システム、暗号化通信方法及びプログラムを提供する。
【解決手段】送信者装置は、権限者装置で生成されたマスター公開鍵を基に送信者秘密鍵及び送信者公開鍵を生成し、送信者公開鍵を受信者装置へ送信する送信者鍵生成手段と、送信者秘密鍵、受信者装置の識別情報、通信対象データを基に暗号データを作成し、受信者装置へ送信する暗号データ作成手段と、を有する。受信者装置は、権限者装置で生成された受信者秘密鍵、送信者装置から受信した送信者公開鍵及び暗号データを基に暗号データを復号し、復号結果を出力する復号結果出力手段を有する。
【選択図】図1
【解決手段】送信者装置は、権限者装置で生成されたマスター公開鍵を基に送信者秘密鍵及び送信者公開鍵を生成し、送信者公開鍵を受信者装置へ送信する送信者鍵生成手段と、送信者秘密鍵、受信者装置の識別情報、通信対象データを基に暗号データを作成し、受信者装置へ送信する暗号データ作成手段と、を有する。受信者装置は、権限者装置で生成された受信者秘密鍵、送信者装置から受信した送信者公開鍵及び暗号データを基に暗号データを復号し、復号結果を出力する復号結果出力手段を有する。
【選択図】図1
Description
本発明は、暗号化通信システムに関し、特に、IDベース暗号を用いた情報処理装置、暗号化通信システム、暗号化通信方法及びプログラムに関する。
インターネット等における情報通信に用いられる暗号化方式として、公開鍵暗号化方式がある。公開鍵暗号化方式は、送信者の公開鍵により情報を暗号化し、受信者の秘密鍵で復号する。この公開鍵暗号化方式は、暗号化と復号を共通の秘密鍵で行う共通鍵暗号化方式と比べて、鍵の配布や管理が容易であるというメリットがある。しかしながら、公開鍵暗号化方式は、公開鍵を証明するための電子証明書が必要である上、その有効期限の管理も必要であるので、ユーザにとっては煩雑であった。さらに、送信者の公開鍵を受信者が予め取得しておく必要があり、情報配信の自由度が妨げられていた。
このような不都合を解決するものとして、IDベース暗号を用いた暗号化通信(以下、IDベース暗号又はIDベース暗号方式という)がある。このIDベース暗号について以下に説明する。
<IDベース暗号>
IDベース暗号は、公開鍵暗号方式の変種であり、公開鍵としてID自身を使える方式である。この方式は、例えば特許文献1に開示されている。IDベース暗号には、権限者、ユーザの2種類のエンティティがいる。
IDベース暗号は、公開鍵暗号方式の変種であり、公開鍵としてID自身を使える方式である。この方式は、例えば特許文献1に開示されている。IDベース暗号には、権限者、ユーザの2種類のエンティティがいる。
IDベース暗号には、マスター鍵生成、ユーザ鍵生成、暗号化、復号の4つの手順がある。
・マスター鍵生成は権限者によって行われ、マスター公開鍵とマスター秘密鍵を出力する。
・ユーザ鍵生成は権限者によって行われ、マスター秘密鍵とIDとを入力として受け取り、IDに対応するユーザ秘密鍵を出力する。
・暗号化はユーザによって行われ、受信者のIDと平文とを入力されると暗号文を出力する。
・復号はユーザによって行われ、暗号文とIDに対応するユーザ秘密鍵とを入力されると平文を出力する。
・マスター鍵生成は権限者によって行われ、マスター公開鍵とマスター秘密鍵を出力する。
・ユーザ鍵生成は権限者によって行われ、マスター秘密鍵とIDとを入力として受け取り、IDに対応するユーザ秘密鍵を出力する。
・暗号化はユーザによって行われ、受信者のIDと平文とを入力されると暗号文を出力する。
・復号はユーザによって行われ、暗号文とIDに対応するユーザ秘密鍵とを入力されると平文を出力する。
上記IDベース暗号以外の暗号化方式として、「Boneh-FranklinによるIDベース暗号方式」及び「指定検証者署名」について、それぞれ以下に説明する。なお、本明細書の記載においては、「_(アンダーバー)」で添え字を表す(例えば、a_1)。また、「^」でべき乗を表す(例えば、2^3=8)。また、「Z/qZ」で0以上q未満の整数全体の集合を表す。
<Boneh-FranklinによるIDベース暗号方式>
G、Tを位数qが素数である有限巡回群とし、<a,b>でGの元a、bのペアリングを表す。任意のa,bに対しペアリング<a,b>はTの元であるものとする。ペアリングに関する詳細は非特許文献1を参照されたい。
HをGに値をとるハッシュ関数とする。
非特許文献1においてBonehとFranklinはペアリングを利用してIDベース暗号を実現している。
・マスター鍵生成ではGの元gとZ/qZの元xをランダムに選び、h=g^xを計算する。そして(g,h)をマスター公開鍵とし、xをマスター秘密鍵とする。
・ユーザ鍵生成ではIDとマスター秘密鍵xとが入力されたらd=H(ID)^xを出力する。
・暗号化ではIDと平文Mが入力されたらZ/qZの元rをランダムに選び、(u,v)=(g^r,M<H(ID),h>^r)を出力する。
・復号ではユーザ秘密鍵dと暗号文(u,v)とが入力されたらv/<d,u>を出力する。
G、Tを位数qが素数である有限巡回群とし、<a,b>でGの元a、bのペアリングを表す。任意のa,bに対しペアリング<a,b>はTの元であるものとする。ペアリングに関する詳細は非特許文献1を参照されたい。
HをGに値をとるハッシュ関数とする。
非特許文献1においてBonehとFranklinはペアリングを利用してIDベース暗号を実現している。
・マスター鍵生成ではGの元gとZ/qZの元xをランダムに選び、h=g^xを計算する。そして(g,h)をマスター公開鍵とし、xをマスター秘密鍵とする。
・ユーザ鍵生成ではIDとマスター秘密鍵xとが入力されたらd=H(ID)^xを出力する。
・暗号化ではIDと平文Mが入力されたらZ/qZの元rをランダムに選び、(u,v)=(g^r,M<H(ID),h>^r)を出力する。
・復号ではユーザ秘密鍵dと暗号文(u,v)とが入力されたらv/<d,u>を出力する。
<指定検証者署名>
指定検証者署名(指定検証者署名方式)は非特許文献2で提案されている電子署名方式の1つであり、指定検証者のみが署名文を検証できる方式である。通常の電子署名方式は誰でも署名文を検証できてしまうので、検証者が署名文を見ず知らずの第三者に横流しすると、見ず知らずの第三者に署名文を検証されてしまう危険がある。それに対し指定検証者以外の人には署名文の正当性を検証できないので、指定検証者が第三者に署名文を横流ししても、第三者に署名文を検証される危険は無い。
指定検証者署名には、署名者と検証者の2種類のエンティティがいて、署名者鍵生成、検証者鍵生成、署名、検証の4つの手順がある。
・署名者鍵生成では、署名者公開鍵と署名者秘密鍵が生成される。
・検証者鍵生成では、検証者公開鍵と検証者秘密鍵が生成される。
・署名では、署名者公開鍵と署名者秘密鍵と検証者公開鍵と文書を受け取り、署名文を出力する。
・検証では署名者公開鍵と検証者公開鍵と検証者秘密鍵と文書と署名文が入力され、「受理」を表すビット列、もしくは「拒否」を表すビット列が出力される。
非特許文献2では非特許文献3のテクニックを利用して指定検証者署名を実現している。
特開2006−319457号公報
Dan Boneh, Matthew K. Franklin, "Identity-Based Encryption from the Weil Pairing", CRYPTO 2001, pp. 213-229
Markus Jakobsson, Kazue Sako, Russell Impagliazzo, "Designated Verifier Proofs and Their Applications", EUROCRYPT 1996, pp. 143-154
R.Cramer, I.Damgard, and B.Schoenmakers, "Proofs of Partial Knowledge and Simplified Design of Witness Hiding Protocols",In CRYPTO'94, pp. 174-187
指定検証者署名(指定検証者署名方式)は非特許文献2で提案されている電子署名方式の1つであり、指定検証者のみが署名文を検証できる方式である。通常の電子署名方式は誰でも署名文を検証できてしまうので、検証者が署名文を見ず知らずの第三者に横流しすると、見ず知らずの第三者に署名文を検証されてしまう危険がある。それに対し指定検証者以外の人には署名文の正当性を検証できないので、指定検証者が第三者に署名文を横流ししても、第三者に署名文を検証される危険は無い。
指定検証者署名には、署名者と検証者の2種類のエンティティがいて、署名者鍵生成、検証者鍵生成、署名、検証の4つの手順がある。
・署名者鍵生成では、署名者公開鍵と署名者秘密鍵が生成される。
・検証者鍵生成では、検証者公開鍵と検証者秘密鍵が生成される。
・署名では、署名者公開鍵と署名者秘密鍵と検証者公開鍵と文書を受け取り、署名文を出力する。
・検証では署名者公開鍵と検証者公開鍵と検証者秘密鍵と文書と署名文が入力され、「受理」を表すビット列、もしくは「拒否」を表すビット列が出力される。
非特許文献2では非特許文献3のテクニックを利用して指定検証者署名を実現している。
公開鍵暗号方式は暗号文の送信者が誰であるか分からないという欠点を持つ。この為、公開鍵暗号方式を電子署名方式と組み合わせる事で、送信者が誰であるかを偽れなくすることができる。また、署名文を横流しされては困る場合は、公開鍵暗号方式を指定検証者署名方式と組み合わせる事で、送信者が誰であるかを偽れなくすることができる。
しかし、IDベース暗号方式は、指定検証者署名方式と組み合わせる事で送信者が誰であるかを偽れなくする事はできない。その理由は、指定検証者署名方式は受信者の公開鍵を使わなければ作成できないが、IDベース暗号方式では受信者の公開鍵がそもそも存在しないからである。
本発明は、上記事情に鑑みてなされたものであり、IDベース暗号方式に指定検証者署名方式の機能を付加することにより、IDベース暗号の送信者が誰であるのかを偽る事ができなくなり、また、IDベース暗号の受信者が署名文を横流しできなくなる情報処理装置、暗号化通信システム、暗号化通信方法及びプログラムを提供することを目的とする。
かかる目的を達成するために、本発明の情報処理装置は、第1の態様として、通信対象データを暗号化して受信者装置へ送信する送信者装置として機能する情報処理装置であって、権限者装置によって生成されたマスター公開鍵に基づいて送信者秘密鍵及び送信者公開鍵を生成し、送信者公開鍵を受信者装置へ送信する送信者鍵生成手段と、送信者秘密鍵と、受信者装置の識別情報とに基づいてデータK1を作成した後、データK1と、通信対象データとに基づいて暗号データを作成し、暗号データを受信者装置へ送信する暗号データ作成手段と、を有することを特徴とする。
また、本発明の情報処理装置は、第1の態様において、暗号データ作成手段は、受信者装置の識別情報のハッシュ値を計算し、マスター公開鍵の一部でありかつ有限群の元である値hと、ハッシュ値とのペアリングを、送信者秘密鍵でべき乗したものをデータK1として作成することを特徴としてもよい。
また、本発明の情報処理装置は、第1の態様において、送信者鍵生成手段は、マスター公開鍵の一部でありかつ有限群の元である値gを、送信者秘密鍵でべき乗したものを送信者公開鍵として生成することを特徴としてもよい。
また、本発明の情報処理装置は、第1の態様において、暗号データ作成手段は、通信対象データに対して複数の0を連結したものを暗号データとして作成することを特徴としてもよい。
また、本発明の情報処理装置は、第1の態様において、マスター公開鍵は、有限群の元である値gを整数xでべき乗したものを値hとし、値gと値hとを含むデータであることを特徴としてもよい。
本発明の情報処理装置は、第2の態様として、本発明の第1の態様の情報処理装置で作成された暗号データを受信する受信者装置として機能する情報処理装置であって、権限者装置によって生成された受信者秘密鍵と、本発明の第1の態様の情報処理装置によって生成された送信者公開鍵とに基づいてデータK2を作成した後、データK2に基づいて暗号データを復号し、復号結果を出力する復号結果出力手段を有することを特徴とする。
また、本発明の情報処理装置は、第2の態様において、復号結果出力手段は、復号結果として、暗号データが通信対象データに対して複数の0を連結したものである場合には、通信対象データを出力し、復号結果として、暗号データが通信対象データに対して複数の0を連結したものではない場合には、不正である事を表すデータを出力することを特徴としてもよい。
また、本発明の情報処理装置は、第2の態様において、復号結果出力手段は、送信者公開鍵と、受信者秘密鍵とのペアリングをデータK2として作成することを特徴としてもよい。
また、本発明の情報処理装置は、第2の態様において、受信者秘密鍵は、受信者装置の識別情報のハッシュ値を整数xでべき乗したデータであることを特徴としてもよい。
本発明の暗号化通信システムは、本発明の第1の態様としての情報処理装置、及び、本発明の第2の態様としての情報処理装置のうち、少なくとも1つを備えることを特徴とする。
また、本発明の暗号化通信システムにおいて、送信者装置及び受信者装置と通信を行う権限者装置をさらに備え、権限者装置は、ランダムに選んだ有限群の元である値gを、ランダムに選んだ整数xでべき乗したものを値hとし、値gと値hとを含むデータをマスター公開鍵として生成し、マスター公開鍵を送信者装置及び受信者装置へ送信するとともに、整数xを含むデータをマスター秘密鍵として生成するマスター鍵生成手段と、受信者装置の識別情報のハッシュ値を計算し、ハッシュ値をマスター秘密鍵でべき乗したデータを受信者秘密鍵として生成し、受信者秘密鍵を受信者装置へ送信する受信者鍵生成手段と、を有することを特徴としてもよい。
本発明の暗号化通信方法は、通信対象データを暗号化して通信を行う暗号化通信方法であって、マスター公開鍵に基づいて送信者秘密鍵及び送信者公開鍵を生成し、送信者公開鍵を受信者装置へ送信する送信者鍵生成ステップと、送信者秘密鍵と、受信者装置の識別情報とに基づいてデータK1を作成した後、データK1と、通信対象データとに基づいて暗号データを作成し、暗号データを受信者装置へ送信する暗号データ作成送信ステップと、を有することを特徴とする。
また、本発明の暗号化通信方法において、暗号データを送信者装置から受信した場合に、受信者秘密鍵と、送信者公開鍵とに基づいてデータK2を作成した後、データK2に基づいて暗号データを復号する暗号データ復号ステップと、復号結果として、暗号データが通信対象データに対して複数の0を連結したものである場合には、通信対象データを出力し、復号結果として、暗号データが通信対象データに対して複数の0を連結したものではない場合には、不正である事を表すデータを出力する復号結果出力ステップと、を有することを特徴としてもよい。
また、本発明の暗号化通信方法において、マスター公開鍵は、ランダムに選んだ有限群の元である値gを、ランダムに選んだ整数xでべき乗したものを値hとし、値gと値hとを含むデータであり、受信者秘密鍵は、受信者装置の識別情報のハッシュ値を、整数xを含むデータであるマスター秘密鍵でべき乗したデータであることを特徴としてもよい。
本発明のプログラムは、本発明の暗号化通信方法をコンピュータに実行させることを特徴とする。
本発明によれば、IDベース暗号の送信者が誰であるのかを偽る事ができなくなる。またIDベース暗号の受信者が署名文を横流しできなくなる。
以下、本発明を実施するための最良の形態について添付図面を参照して詳細に説明する。
図1は、本発明の一実施形態である暗号化通信システムの構成を示す図である。図1に示すように、本実施形態の暗号化通信システムは、インターネット等のネットワークを介して接続される、権限者装置1と、送信者装置2と、受信者装置3とを有する。これら各装置は、プログラム制御により所定の情報処理を行う、本発明の一実施形態としての情報処理装置である。プログラムの例としては、上述したIDベース暗号方式や指定検証者署名方式を行うためのプログラムの他に、後述する本発明の一実施形態である暗号化通信方法を行うためのプログラムが挙げられる。また、送信者装置2と、受信者装置3とは複数存在してもよい。
図1に示す暗号化通信システムにおいて、送信者装置2は、受信者装置3に対して、所定の情報(電子データ、通信対象データ)を送信する。情報の例としては、電子メール等が挙げられる。
権限者装置1は、通信部11と、記憶部12と、制御部13とを有する。制御部13は、マスター鍵生成手段14と、受信者鍵生成手段15とを有する。
送信者装置2は、通信部21と、記憶部22と、制御部23とを有する。制御部23は、送信者鍵生成手段24と、署名暗号文作成手段25とを有する。
受信者装置3は、通信部31と、記憶部32と、制御部33とを有する。制御部33は、検証復号文作成手段34を有する。
通信部11、21、31は、通信用のインターフェースデバイスで実現される。例えば、インターネットに接続可能なモデム等が利用できる。記憶部12、22、32は、記憶デバイスや記憶媒体で実現される。例えばハードディスクやメモリ等が利用できる。制御部13、23、33は、制御デバイスで実現される。例えばCPU(Central Processing Unit)等が利用できる。各記憶部には、上述したプログラムが格納されており、各CPUは、各プログラムに従って各部(各手段)を制御し、本実施形態の暗号化通信方法を実行する。また、各記憶部には、その装置自身のID(識別情報)が予め格納されているものとする。
受信者装置3には、IDが振られていて、そのIDはシステム上の全ての装置に公知であるとする。
次に、図1を参照しながら、上記各制御部13、23、33における各手段の入出力を説明する。なお図1において、矢印の向かう方向が「出力先」となる。
権限者装置1において、マスター鍵生成手段14は、マスター公開鍵pkとマスター秘密鍵skとを出力する。また、受信者鍵生成手段15は、マスター秘密鍵skと受信者装置3のIDを入力として受け取り、そのIDに対応する受信者秘密鍵d_[ID]を出力する。
送信者装置2において、送信者鍵生成手段24は、マスター公開鍵pkを入力として受け取り、送信者公開鍵spkと送信者秘密鍵sskを出力する。また、署名暗号文作成手段25は、マスター公開鍵pk、送信者秘密鍵ssk、受信者装置3のID、平文M(通信対象データの一例)を入力として受け取り、署名暗号文C(暗号データの一例)を出力する。
受信者装置3において、検証復号文作成手段34は、マスター公開鍵pk、送信者公開鍵spk、受信者装置3自身のID、受信者秘密鍵d_[ID]、署名暗号文Cを入力として受け取り、復号結果として、平文Mを出力するか、あるいは、「拒否」を表すビット列(不正であることを示すデータ)を出力する。
なお、本実施形態では、説明の便宜上、送信者装置2と受信者装置3とを分け、各装置の構成を別々のものとしたが、送信者装置2が受信者装置に、また、受信者装置3が送信者装置になりうることは言うまでもない。従って、各制御部23、33はそれぞれ、送信者鍵生成手段24、署名暗号文作成手段25、検証暗号文作成手段34を全て有するように構成してもよい。
次に、本実施形態である暗号化通信システムの動作(本発明の一実施形態である暗号化通信方法)の流れについて、図2を参照して説明する。
権限者装置1において、マスター鍵生成手段14は、マスター公開鍵pkとマスター秘密鍵skを生成し、記憶部12に書き込む(ステップS1)。そして、マスター鍵生成手段14は、通信部11を介して、マスター公開鍵pkを送信者装置2及び受信者装置3に送信し、公開する(ステップS2、S3)。ここで、公開方法はどのようなものを用いてもよいが、例として、PKI(Public Key Infrastructure)を利用する、あるいは、公開掲示板に載せる、という方法が挙げられる。
送信者装置2において、通信部21がマスター公開鍵pkを受信すると、そのマスター公開鍵pkは記憶部22に書き込まれる(ステップS4)。同様に、受信者装置3において、通信部31がマスター公開鍵pkを受信すると、マスター公開鍵pkは記憶部32に書き込まれる(ステップS5)。
ここで、各々の受信者装置3にはIDが割り振られており、各IDは何らかの手段(方法)により他装置に公知になっているとする。受信者装置3において、通信部31を介して、受信者装置3自身のIDが権限者装置1に送信される(ステップS6)。
権限者装置1において、通信部11が受信者装置3のIDを受信すると、そのIDは記憶部12に書き込まれる(ステップS7)。また、受信者鍵生成手段15は、マスター秘密鍵sk及び受信者装置3のIDを記憶部12から読み出す。そして、受信者鍵生成手段15は、マスター秘密鍵sk及び受信者装置3のIDに基づいて、受信者秘密鍵d_[ID]を生成する(ステップS8)。生成された受信者秘密鍵d_[ID]は、通信部11を介して、受信者装置3に送られる(ステップS9)。
受信者装置3において、通信部31が受信者秘密鍵d_[ID]を受信すると、その受信者秘密鍵d_[ID]は記憶部32に書き込まれる(ステップS10)。
送信者装置2において、送信者鍵生成手段24は、記憶部22に書き込まれているマスター公開鍵pkを読み出す。そして、送信者鍵生成手段24は、読み出したマスター公開鍵pkに基づいて送信者公開鍵spkと送信者秘密鍵sskを生成し、記憶部22に書き込む(ステップS11)。また、送信者鍵生成手段24は、通信部21を介して、送信者公開鍵spkを受信者装置3に送信し、公開する(ステップS12)。
受信者装置3において、通信部31が送信者公開鍵spkを受信すると、その送信者公開鍵spkは記憶部32に書き込まれる(ステップS13)。
受信者装置3のIDと平文M(通信対象データの一例)とを送信者装置2に入力する事で、平文Mの署名暗号文Cを作成できる。送信者装置2において、受信者装置3のIDと平文Mが入力されると(ステップS14)、署名暗号文作成手段25は、マスター公開鍵pkと送信者秘密鍵sskを記憶部22から読み出す。署名暗号文作成手段25は、読み出したマスター公開鍵pk及び送信者秘密鍵sskと、入力された受信者装置3のID及び平文Mとに基づいて、署名暗号文Cを生成する(ステップS15)。そして、署名暗号文作成手段25は、通信部21を介して、署名暗号文Cを受信者装置3に送信する(ステップS16)。
受信者装置3において、通信部31が署名暗号文Cを受信すると、検証復号文作成手段34は、記憶部32から、マスター公開鍵pk、送信者公開鍵spk、受信者装置3自身のID、受信者秘密鍵d_[ID]を読み出す。そして、検証復号文作成手段34は、署名暗号文C、マスター公開鍵pk、送信者公開鍵spk、受信者装置3のID、受信者秘密鍵d_[ID]に基づいて、署名暗号文Cの復号を行う(ステップS17)。そして、検証復号文作成手段34は、復号結果を出力(例えば、画面表示や印刷)する(ステップS18)。復号結果は、平文Mそのまま、あるいは、不正であることを示すデータのいずれかである。また、検証復号文作成手段34は、復号結果を記憶部32に書き込むようにしてもよい。
次に、上述した本実施形態の暗号化通信システムの動作の具体例(上記各手段の詳細)について説明する。
G、Tを位数qが素数である有限巡回群とし、<a,b>でGの元a、bのペアリングを表す。任意のa,bに対しペアリング<a,b>はTの元であるものとする。ペアリングに関する詳細は非特許文献1を参照されたい。HをGに値をとるハッシュ関数し、E、Dをそれぞれ共通鍵暗号方式の暗号化関数と復号関数とする。安全性上の観点から言えば、qは160ビット以上にするのが望ましい。
本実施形態では共通鍵暗号を利用するが、安全性上の理由により、この共通鍵暗号は「不正な方法で鍵を作成した場合には、復号アルゴリズムが「不正」を表す文字列を出力する」という性質を満たすものでなければならない。
公開鍵系のプリミティブを共通鍵暗号と組み合わせるというテクニックはハイブリッド暗号や鍵共有で頻繁に使われているものだが、この「不正」を表す文字列を出力するという要件を要求するところが本実施形態の特徴である。本実施形態は、指定検証者署名の機能を持っているので、作成された署名が不正なものかどうかを判定する必要があり、復号アルゴリズムが「不正」を出力するかどうかによって署名が不正かどうかを判定する。
AESやDESのようなブロック暗号は「不正」を表す文字列を出力しないので、本実施形態ではこれらを改良したものを使う。E',D'を何らかの共通鍵暗号方式Π’の暗号化関数と復号関数とする。たとえばΠ’としてDESやAESを使えるが、どのようなものを用いてもよい。Πはnビット(nは自然数)の平文を暗号化できるとする。さらにkをn以下の自然数とする。kは大きければ大きいほど安全性が高まる。
暗号方式は、例えば次の方法で作成できる。E',D',kを用いて、n-kビットの平文Mを暗号化できる共通鍵暗号方式Πの暗号化関数Eと復号関数Dを作る。E(M,K)はMのあとに0をk個並べたビット列M'を作り、C=E'(M',K)を計算して署名暗号文Cを出力する。D(C,K)はM'=D'(C,K)を計算し、M'の後ろkビットが全て0であるならM'の前n-kビット、すなわち平文Mを出力し、そうでなければ⊥、すなわち「不正」を表す文字列を出力する。
マスター鍵生成手段14では、Gの元gとZ/qZの元xをランダムに選び、h=g^xを計算する。そして(g,h)をマスター公開鍵として出力し、xをマスター秘密鍵として出力する。すなわち、マスター鍵生成手段14は、有限群の元g及び整数xをランダムに選び、gをxでべき乗したものをhとし、gとhとを含むデータをマスター公開鍵(g,h)とし、また、xを含むデータをマスター秘密鍵xにする。
受信者鍵生成手段15では、マスター秘密鍵xと、受信者装置3のIDとが入力されたら、まず受信者装置3のIDのハッシュ値を計算する。次に、受信者鍵生成手段15は、d=H(ID)^xを計算し、dを受信者秘密鍵として出力する。上記受信者秘密鍵dは、受信者装置3のIDのハッシュ値をマスター秘密鍵xでべき乗したものである。
送信者鍵生成手段24は、マスター公開鍵(g,h)が入力されたら、qZの元yをランダムに選び、h_Y=g^yを計算し、h_Yを送信者公開鍵として出力し、yを送信者秘密鍵として出力する。
署名暗号文作成手段25では、マスター公開鍵(g,h)と、受信者装置3のIDと、送信者秘密鍵yと、平文Mとが入力されたら、まず受信者装置3のIDのハッシュ値を計算する。次に、署名暗号文作成手段25は、K1=<H(ID),h>^yを計算する。このK1は、マスター公開鍵(g,h)の一部でありかつ有限群の元であるhと、受信者装置3のIDのハッシュ値とのペアリングを、送信者秘密鍵yでべき乗したものである。次に、署名暗号文作成手段25は、C=E(M,K1)を計算し、Cを署名暗号文として出力する。
検証復号文作成手段34では、送信者公開鍵h_Yと、受信者秘密鍵dと、署名暗号文Cとが入力されたら、まずK2=<d,h_Y>を計算し、次にM=D(C,K2)を計算する。そして、復号結果として、M=⊥なら「不正(拒否)」を表す文字列を出力し、そうでなければ平文Mを出力する。すなわち、検証復号文作成手段34は、復号結果として、署名暗号文Cが平文Mに対して複数の0を連結したものである場合には平文Mを出力し、その一方で、署名暗号文Cが平文Mに対して複数の0を連結したものではない場合には、不正である事を表すデータを出力する。出力の例としては、上述したように画面表示や印刷等が挙げられる。また、復号結果を記憶部32等に記憶するようにしてもよい。
上述したBoneh-FranklinのIDベース暗号方式との違いの一つは、h_Y=g^yの作り方である。Boneh-FranklinのIDベース暗号方式では、暗号文作成者がg^yを作成するのに対し、本実施形態では受信者がg^yを作成する。しかもBoneh-FranklinのIDベース暗号方式では、yとh_Yはテンポラリなデータで暗号化のたびにyを選びなおしてh_Y=g^yを計算するのに対し、本実施形態では、yとh_Yはそれぞれ受信者の秘密鍵と公開鍵で一度h_Y=g^yを作成したらそれを使い続ける。
以上、本発明の実施形態について説明したが、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変形が可能である。
例えば、上述した本実施形態における各装置1〜3の動作は、ハードウェア、または、ソフトウェア、あるいは、両者の複合構成によって実行することも可能である。
ソフトウェアによる処理を実行する場合には、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれているコンピュータ内のメモリにインストールして実行させてもよい。あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させてもよい。
例えば、プログラムは、記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことが可能である。あるいは、プログラムは、CD−ROM(Compact Disc Read Only Memory)、MO(Magneto optical)ディスク、DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的、あるいは、永続的に格納(記録)しておくことが可能である。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することが可能である。
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送してもよい。または、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送してもよい。コンピュータでは、転送されてきたプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることが可能である。
また、上記実施形態で説明した処理動作に従って時系列的に実行されるのみならず、処理を実行する装置の処理能力、あるいは、必要に応じて並列的にあるいは個別に実行するように構築することも可能である。
また、上記実施形態で説明したシステムは、複数の装置の論理的集合構成にしたり、各装置の機能を混在させたりするように構築することも可能である。
1 権限者装置
2 送信者装置
3 受信者装置
11 通信部
12 記憶部
13 制御部
14 マスター鍵生成手段
15 受信者鍵生成手段
21 通信部
22 記憶部
23 制御部
24 送信者鍵生成手段
25 署名暗号文作成手段(暗号データ作成手段の一例)
31 通信部
32 記憶部
33 制御部
34 検証暗号文作成手段(復号結果出力手段の一例)
2 送信者装置
3 受信者装置
11 通信部
12 記憶部
13 制御部
14 マスター鍵生成手段
15 受信者鍵生成手段
21 通信部
22 記憶部
23 制御部
24 送信者鍵生成手段
25 署名暗号文作成手段(暗号データ作成手段の一例)
31 通信部
32 記憶部
33 制御部
34 検証暗号文作成手段(復号結果出力手段の一例)
Claims (15)
- 通信対象データを暗号化して受信者装置へ送信する送信者装置として機能する情報処理装置であって、
権限者装置によって生成されたマスター公開鍵に基づいて送信者秘密鍵及び送信者公開鍵を生成し、前記送信者公開鍵を前記受信者装置へ送信する送信者鍵生成手段と、
前記送信者秘密鍵と、前記受信者装置の識別情報とに基づいてデータK1を作成した後、前記データK1と、前記通信対象データとに基づいて暗号データを作成し、前記暗号データを前記受信者装置へ送信する暗号データ作成手段と、
を有することを特徴とする情報処理装置。 - 前記暗号データ作成手段は、
前記受信者装置の識別情報のハッシュ値を計算し、
前記マスター公開鍵の一部でありかつ有限群の元である値hと、前記ハッシュ値とのペアリングを、前記送信者秘密鍵でべき乗したものを前記データK1として作成することを特徴とする請求項1記載の情報処理装置。 - 前記送信者鍵生成手段は、
前記マスター公開鍵の一部でありかつ有限群の元である値gを、前記送信者秘密鍵でべき乗したものを前記送信者公開鍵として生成することを特徴とする請求項1または2記載の情報処理装置。 - 前記暗号データ作成手段は、
前記通信対象データに対して複数の0を連結したものを前記暗号データとして作成することを特徴とする請求項1から3のいずれか1項に記載の情報処理装置。 - 前記マスター公開鍵は、
有限群の元である値gを整数xでべき乗したものを値hとし、前記値gと前記値hとを含むデータであることを特徴とする請求項1から5のいずれか1項に記載の情報処理装置。 - 請求項1から5のいずれか1項に記載の情報処理装置で作成された暗号データを受信する受信者装置として機能する情報処理装置であって、
権限者装置によって生成された受信者秘密鍵と、前記情報処理装置によって生成された送信者公開鍵とに基づいてデータK2を作成した後、前記データK2に基づいて前記暗号データを復号し、復号結果を出力する復号結果出力手段を有することを特徴とする情報処理装置。 - 前記復号結果出力手段は、
前記復号結果として、前記暗号データが前記通信対象データに対して複数の0を連結したものである場合には、前記通信対象データを出力し、
前記復号結果として、前記暗号データが前記通信対象データに対して複数の0を連結したものではない場合には、不正である事を表すデータを出力することを特徴とする請求項6記載の情報処理装置。 - 前記復号結果出力手段は、
前記送信者公開鍵と、前記受信者秘密鍵とのペアリングを前記データK2として作成することを特徴とする請求項6または7記載の情報処理装置。 - 前記受信者秘密鍵は、
前記受信者装置の識別情報のハッシュ値を整数xでべき乗したデータであることを特徴とする請求項6から8のいずれか1項に記載の情報処理装置。 - 請求項1から5のいずれか1項に記載の情報処理装置である送信者装置、及び、請求項6から9のいずれか1項に記載の情報処理装置である受信者装置のうち、少なくとも1つを備えることを特徴とする暗号化通信システム。
- 前記送信者装置及び前記受信者装置と通信を行う権限者装置をさらに備え、
前記権限者装置は、
ランダムに選んだ有限群の元である値gを、ランダムに選んだ整数xでべき乗したものを値hとし、前記値gと前記値hとを含むデータをマスター公開鍵として生成し、前記マスター公開鍵を前記送信者装置及び前記受信者装置へ送信するとともに、前記整数xを含むデータをマスター秘密鍵として生成するマスター鍵生成手段と、
前記受信者装置の識別情報のハッシュ値を計算し、前記ハッシュ値を前記マスター秘密鍵でべき乗したデータを受信者秘密鍵として生成し、前記受信者秘密鍵を前記受信者装置へ送信する受信者鍵生成手段と、
を有することを特徴とする請求項10記載の暗号化通信システム。 - 通信対象データを暗号化して通信を行う暗号化通信方法であって、
マスター公開鍵に基づいて送信者秘密鍵及び送信者公開鍵を生成し、前記送信者公開鍵を受信者装置へ送信する送信者鍵生成ステップと、
前記送信者秘密鍵と、前記受信者装置の識別情報とに基づいてデータK1を作成した後、前記データK1と、前記通信対象データとに基づいて暗号データを作成し、前記暗号データを前記受信者装置へ送信する暗号データ作成送信ステップと、
を有することを特徴とする暗号化通信方法。 - 前記暗号データを送信者装置から受信した場合に、受信者秘密鍵と、前記送信者公開鍵とに基づいてデータK2を作成した後、前記データK2に基づいて前記暗号データを復号する暗号データ復号ステップと、
復号結果として、前記暗号データが前記通信対象データに対して複数の0を連結したものである場合には、前記通信対象データを出力し、前記復号結果として、前記暗号データが前記通信対象データに対して複数の0を連結したものではない場合には、不正である事を表すデータを出力する復号結果出力ステップと、
を有することを特徴とする請求項12記載の暗号化通信方法。 - 前記マスター公開鍵は、
ランダムに選んだ有限群の元である値gを、ランダムに選んだ整数xでべき乗したものを値hとし、前記値gと前記値hとを含むデータであり、
前記受信者秘密鍵は、
前記受信者装置の識別情報のハッシュ値を、前記整数xを含むデータであるマスター秘密鍵でべき乗したデータであることを特徴とする請求項12または13記載の暗号化通信方法。 - 請求項12から14のいずれか1項に記載の暗号化通信方法をコンピュータに実行させることを特徴とするプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008150216A JP2009296489A (ja) | 2008-06-09 | 2008-06-09 | 情報処理装置、暗号化通信システム、暗号化通信方法及びプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008150216A JP2009296489A (ja) | 2008-06-09 | 2008-06-09 | 情報処理装置、暗号化通信システム、暗号化通信方法及びプログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2009296489A true JP2009296489A (ja) | 2009-12-17 |
Family
ID=41544211
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008150216A Pending JP2009296489A (ja) | 2008-06-09 | 2008-06-09 | 情報処理装置、暗号化通信システム、暗号化通信方法及びプログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2009296489A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2018142013A (ja) * | 2014-01-31 | 2018-09-13 | グーグル エルエルシー | 関連付けられた秘密鍵部分を用いた高速公開鍵暗号化のためのシステムおよび方法 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005500470A (ja) * | 2001-08-20 | 2005-01-06 | ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング | 燃料噴射弁 |
| JP2006506908A (ja) * | 2002-11-14 | 2006-02-23 | ボルテージ セキュリティー インコーポレイテッド | 識別ベースの暗号化システム |
-
2008
- 2008-06-09 JP JP2008150216A patent/JP2009296489A/ja active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005500470A (ja) * | 2001-08-20 | 2005-01-06 | ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング | 燃料噴射弁 |
| JP2006506908A (ja) * | 2002-11-14 | 2006-02-23 | ボルテージ セキュリティー インコーポレイテッド | 識別ベースの暗号化システム |
Non-Patent Citations (1)
| Title |
|---|
| JPN6013024003; J. Jonsson et al.: 'Public-Key Cryptography Standards (PKCS) #1: RSA Cryptography Specifications Version 2.1' Request for Comments 3447 , 200302, pp. 23-27, The Internet Engineering Task Force (IETF) * |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2018142013A (ja) * | 2014-01-31 | 2018-09-13 | グーグル エルエルシー | 関連付けられた秘密鍵部分を用いた高速公開鍵暗号化のためのシステムおよび方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN113259329B (zh) | 一种数据不经意传输方法、装置、电子设备及存储介质 | |
| JP6042663B2 (ja) | signcryption方法と装置及び対応するsigncryption検証方法と装置 | |
| US7574596B2 (en) | Cryptographic method and apparatus | |
| CN102055760B (zh) | 消息发送/接收方法和系统 | |
| CN105024994B (zh) | 无对运算的安全无证书混合签密方法 | |
| CN104270249B (zh) | 一种从无证书环境到基于身份环境的签密方法 | |
| JP4546231B2 (ja) | Idベース署名及び暗号化システムおよび方法 | |
| CN110120939B (zh) | 一种基于异构系统的可否认认证的加密方法和系统 | |
| CN104301108B (zh) | 一种从基于身份环境到无证书环境的签密方法 | |
| US9698984B2 (en) | Re-encrypted data verification program, re-encryption apparatus and re-encryption system | |
| JP2017063432A (ja) | 証明書不要公開鍵基盤に基づく安全なクライアント・サーバ通信プロトコルを設計するシステムと方法 | |
| KR101516114B1 (ko) | 인증서 기반 프록시 재암호화 방법 및 이를 위한 시스템 | |
| JP2013207376A (ja) | 情報処理装置およびプログラム | |
| JP2006109107A (ja) | 署名生成方法、署名検証方法、公開鍵配布方法、及び情報処理装置 | |
| CN103493428B (zh) | 数据加密 | |
| CN101710879A (zh) | 一种新型的基于身份的保密邮件转发系统 | |
| JP5171787B2 (ja) | サインクリプションシステムおよびサインクリプション生成方法 | |
| KR20040009766A (ko) | 암호 시스템에서 송수신 장치 및 방법 | |
| US7986778B2 (en) | Cryptographic method and apparatus | |
| JP5633563B2 (ja) | 楕円曲線上のパラメータ化による暗号法 | |
| US20050021973A1 (en) | Cryptographic method and apparatus | |
| CN103873248B (zh) | 带有证书的基于身份的加密方法和装置 | |
| KR100453113B1 (ko) | 결정적 디피-헬만군에서id에 기반한 디지털 서명 및 그인증 방법 | |
| JP2009296489A (ja) | 情報処理装置、暗号化通信システム、暗号化通信方法及びプログラム | |
| KR101472312B1 (ko) | Id 기반 사인크립션 암호화 메시지의 안전성을 유지하는 시스템 및 방법 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110517 |
|
| RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20110920 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130528 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20131001 |