(57)【要約】【課題】  ＫＥＭ−ＤＥＭハイブリッド暗号を使用した同報通信に適した暗号方法がなかった。【解決手段】本発明では、送信側の装置で、同報通信を行う装置間で共通に用いる共通セッション鍵ｒを生成し、共通セッション鍵ｒを記録し、共通セッション鍵ｒを同報通信先の装置ごとの秘密鍵ａｉを用いて暗号化するとともに、平文ｍを共通セッション鍵ｒを用いて暗号化し、受信側へ暗号化された秘密鍵ｅｉ、暗号化した共通暗号鍵ｙｉ、暗号文ｃの組を送信する。受信側の装置では、暗号化された共通セッション鍵ｙｉを秘密鍵ａｉを用いて復号し、共通セッション鍵ｒを記録し、暗号文ｃを共通セッション鍵ｒを用いて復号して平文ｍを得る。  ２回目以降の同報通信では、送信側の装置で、記録した共通セッション鍵ｒを用いて平文ｍを暗号化し、受信側の装置で記録した共通セッション鍵ｒを用いて暗号文ｃの復号を行う。【選択図】図６
2006203739.tif 000002
【特許請求の範囲】
【請求項１】
公開鍵暗号での鍵配送によって共有された秘密鍵を用いて情報を暗号化する暗号化方法において、
鍵生成手段で、２台以上の装置間で共通に用いる共通セッション鍵を生成し、
記録手段で、上記共通セッション鍵を記録し、
鍵暗号化手段で、上記共通セッション鍵を送信先の装置ごとの秘密鍵を用いて暗号化し、
情報暗号化手段で、通信対象の情報を共通セッション鍵を用いて暗号化する
ことを特徴とする暗号化方法。
【請求項２】
請求項1記載の暗号化方法において、
上記記録手段に、上記共通セッション鍵がすでに記録されている場合に、
上記情報暗号化手段で、通信対象の情報を上記記録手段に記録された上記共通セッション鍵を用いて暗号化する
ことを特徴とする暗号化方法。
【請求項３】
請求項１または２記載の暗号化方法において、
上記共通セッション鍵を共通に用いる装置が追加された場合に、
上記鍵暗号化手段で、上記記録手段に記録された上記共通セッション鍵を、追加された送信先の装置ごとの秘密鍵を用いて暗号化する
ことを特徴とする暗号化方法。
【請求項４】
請求項１〜３のいずれかに記載の暗号化方法において、
上記記録手段に送信先の装置ごとの秘密鍵を記録しておき、
上記共通セッション鍵を共通に用いる装置が削除された場合に、
上記鍵生成手段で、残った装置間で共通に用いる新たな共通セッション鍵を生成し、
記録手段で、上記共通セッション鍵を記録し、
上記鍵暗号化手段で、上記共通セッション鍵を、残った装置ごとの上記記録手段に記録された秘密鍵を用いて暗号化する
ことを特徴とする暗号化方法。
【請求項５】
請求項１〜４のいずれかに記載の暗号化方法において、
送信先の装置ごとに用意した情報暗号化手段で、通信対象の情報を共通セッション鍵を用いて暗号化する
ことを特徴とする暗号化方法。
【請求項６】
請求項1〜５のいずれかに記載の暗号化方法と組み合わせる復号方法において、
上記記録手段に、上記共通セッション鍵がすでに記録されている場合に、
情報復号手段で、暗号化された通信対象の情報を、上記記録手段に記録された上記共通セッション鍵を用いて復号する、
ことを特徴とする復号方法。
【請求項７】
公開鍵暗号での鍵配送によって共有された秘密鍵を用いて暗号化された情報を復号する復号方法において、
鍵復号手段で、暗号化された２台以上の装置間で共通に用いる共通セッション鍵を当該装置の秘密鍵を用いて復号し、
記録手段で、上記共通セッション鍵を記録し、
情報復号手段で、暗号化された通信対象の情報を上記共通セッション鍵を用いて復号する、
ことを特徴とする復号方法。
【請求項８】
請求項７記載の復号方法において、
上記記録手段に、上記共通セッション鍵がすでに記録されている場合に、
上記情報復号手段で、暗号化された通信対象の情報を、上記記録手段に記録された上記共通セッション鍵を用いて復号する、
ことを特徴とする復号方法。
【請求項９】
請求項７または８記載の復号方法において、
上記記録手段で、上記共有された秘密鍵を記録しておき、
上記共通セッション鍵を共通に用いる装置が削除された場合に、
上記鍵復号手段で、暗号化された新たな共通セッション鍵を、上記記録手段に記録された当該装置の秘密鍵を用いて復号し、
上記記録手段で、上記共通セッション鍵を記録し、
上記情報復号手段で、暗号化された通信対象の情報を上記共通セッション鍵を用いて復号する、
ことを特徴とする復号方法。
【請求項１０】
請求項７または８記載の復号方法において、
上記記録手段で、暗号化された上記共有された秘密鍵を記録しておき、
上記共通セッション鍵を共通に用いる装置が削除された場合に、
秘密鍵復号手段で、暗号化された上記共有された秘密鍵を、当該装置の私有鍵を用いて復号し、
上記鍵復号手段で、暗号化された新たな共通セッション鍵を、上記記録手段に記録された当該装置の秘密鍵を用いて復号し、
上記記録手段で、上記共通セッション鍵を記録し、
上記情報復号手段で、暗号化された通信対象の情報を上記共通セッション鍵を用いて復号する、
ことを特徴とする復号方法。
【請求項１１】
請求項７〜１０のいずれかに記載の復号方法と組み合わせる暗号化方法において、
上記記録手段に、上記共通セッション鍵がすでに記録されている場合に、
情報暗号化手段で、通信対象の情報を、上記記録手段に記録された上記共通セッション鍵を用いて暗号化する
ことを特徴とする暗号化方法。
【請求項１２】
公開鍵暗号での鍵配送によって共有された秘密鍵を用いて情報を暗号化する暗号化装置において、
２台以上の装置間で共通に用いる共通セッション鍵を生成する鍵生成手段と、
上記共通セッション鍵を記録する記録手段と、
上記共通セッション鍵を送信先の通信装置ごとの秘密鍵を用いて暗号化する鍵暗号化手段と、
通信対象の情報を共通セッション鍵を用いて暗号化する情報暗号化手段と、
を備える暗号化装置。
【請求項１３】
公開鍵暗号での鍵配送によって共有された秘密鍵を用いて暗号化された情報を復号する復号装置において、
暗号化された２台以上の通信装置間で共通に用いる共通セッション鍵を当該通信装置の秘密鍵を用いて復号する鍵復号手段と、
上記共通セッション鍵を記録する記録手段と、
暗号化された通信対象の情報を、上記共通セッション鍵を用いて復号する情報復号手段と、
を備える復号装置。
【請求項１４】
公開鍵暗号での鍵配送によって共有された秘密鍵を用いて情報を暗号化または復号する暗号装置において、
２台以上の装置間で共通に用いる共通セッション鍵を生成する鍵生成手段と、
上記共通セッション鍵を記録する記録手段と、
上記共通セッション鍵を送信先の通信装置ごとの秘密鍵を用いて暗号化する鍵暗号化手段と、
通信対象の情報を共通セッション鍵を用いて暗号化する情報暗号化手段と、
暗号化された通信対象の情報を、上記共通セッション鍵を用いて復号する情報復号手段と、
を備える暗号装置。
【請求項１５】
公開鍵暗号での鍵配送によって共有された秘密鍵を用いて情報を暗号化または復号する暗号装置において、
暗号化された２台以上の通信装置間で共通に用いる共通セッション鍵を当該通信装置の秘密鍵を用いて復号する鍵復号手段と、
上記共通セッション鍵を記録する記録手段と、
通信対象の情報を共通セッション鍵を用いて暗号化する情報暗号化手段と、
暗号化された通信対象の情報を、上記共通セッション鍵を用いて復号する情報復号手段と、
を備える暗号装置。
【請求項１６】
公開鍵暗号での鍵配送によって共有された秘密鍵を用いて情報を暗号化または復号する暗号装置において、
２台以上の装置間で共通に用いる共通セッション鍵を生成する鍵生成手段と、
暗号化された２台以上の通信装置間で共通に用いる共通セッション鍵を当該通信装置の秘密鍵を用いて復号する鍵復号手段と、
上記共通セッション鍵を記録する記録手段と、
上記共通セッション鍵を送信先の通信装置ごとの秘密鍵を用いて暗号化する鍵暗号化手段と、
通信対象の情報を共通セッション鍵を用いて暗号化する情報暗号化手段と、
暗号化された通信対象の情報を、上記共通セッション鍵を用いて復号する情報復号手段と、
を備える暗号装置。
【請求項１７】
請求項１〜１１のいずれかに記載の方法をコンピュータで実行するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハイブリッド暗号方法とその方法を利用した装置に関する。
【背景技術】
【０００２】
まず、本明細書中で使用する用語について説明する。「暗号化する」とは、データ（ビット列、以下「平文」とも呼ぶ）をある鍵（ビット列）を用いて他の（通常元のデータとはまったく異なる）ビット列（以下「暗号文」とも呼ぶ）に変換することを言う。ただし、暗号文だけからでは平文に関する情報を得ることが困難なこと、対応する平文と暗号文の組だけからでは鍵に関する情報を得ることが困難なことなど、状況によって様々な安全性が要求される。「暗号化装置」とは、データを暗号化する装置を指す。また、「復号する」とは、鍵を用いて暗号文を元のデータ（平文）に復元することを言い、「復号装置」とは、暗号化されたデータを復号する装置を指す。さらに、単に「暗号」、「暗号技術」、「暗号アルゴリズム」、「暗号装置」というときは、暗号化と復号の両方を含むものとする。
【０００３】
一般に、暗号は公開鍵暗号と共通鍵暗号の２種類に類別できる。公開鍵暗号は、送信側が受信側の（秘密ではない）公開鍵を使ってデータ（平文）を暗号化して送信するために利用される。一方、共通鍵暗号は、送信側と受信側が同じ鍵を秘密に保持しているときデータ（平文）を暗号化して送信するために利用される。通常、公開鍵暗号は共通鍵暗号より低速なため、暗号化通信を行う際には、共通鍵暗号で問題となる秘密鍵の共有問題（鍵配送問題）の解決に公開鍵暗号を利用し、秘密鍵が共有された後の通信秘匿には共通鍵暗号を用いることが多い。公開鍵暗号システムは、公開鍵を登録する公開鍵簿、送信装置、および受信装置からなるシステムである。公開鍵暗号システムは公開鍵暗号のみでも実装できるが、公開鍵暗号で鍵配送をし、その時共有された秘密鍵で、共通鍵暗号を使って平文を暗号化通信するのが一般的な公開鍵暗号（ハイブリッド暗号）システムである。
【０００４】
標準化が進められているハイブリッド暗号の実現方法として、ＫＥＭ（Key Encapsulation Mechanism）−ＤＥＭ（Data Encapsulation Mechanism）による構成がある（非特許文献１）。この構成について以下に説明する。
図１に鍵カプセル化装置Ｋ１００（ＫＥＭ）の機能構成を示す。本装置は、鍵ビット長パラメータＫＬ１１０、鍵生成装置ＫＧ１２０、暗号化アルゴリズム装置ＫＥ１３０、復号アルゴリズム装置ＫＤ１４０から構成される。鍵ビット長パラメータＫＬ１１０は、セキュリティパラメータλから秘密鍵のビット長パラメータｋｌを出力する確定的アルゴリズム装置である。記号では、ｋｌ＝ＫＬ（λ）と表すこととする。ここで、セキュリティパラメータλとは、０以上の整数であって、送信者と受信者の間であらかじめ定まっているものとする。セキュリティパラメータλは理論上必要なパラメータであって、これを引数に取る各アルゴリズムが、λに関する多項式時間内で終了することを規定するために設けてあるものである。鍵生成装置ＫＧ１２０は、セキュリティパラメータλから公開鍵ｐｋと私有鍵ｓｋの組を出力する確率的アルゴリズム装置である。記号では、（ｐｋ，ｓｋ）←ＫＧ（λ）と表すこととする。暗号化アルゴリズム装置ＫＥ１３０は、公開鍵ｐｋから秘密鍵ａと暗号化した秘密鍵ｅの組を出力する確率的アルゴリズム装置である。記号では、（ａ，ｅ）←ＫＥ（ｐｋ）と表すこととする。ここで秘密鍵ａは、ビット長がｋｌの０または１からなり、記号ではａ∈{０，１}ｋｌと表す。また暗号化した秘密鍵は、ビット長が任意の０または１からなり、記号ではｅ∈{０，１}＊と表す。復号アルゴリズム装置ＫＤ１４０は、私有鍵ｓｋを用いて暗号化された秘密鍵ｅを復号し、秘密鍵ａを出力する確定的アルゴリズム装置である。記号では、ａ＝ＫＤｓｋ（ｅ）と表すこととする。鍵カプセル化装置Ｋ１００では、任意の（ｐｋ，ｓｋ）←ＫＧ（λ）と（ａ，ｅ）←ＫＥ（ｐｋ）に対して、常にａ＝ＫＤｓｋ（ｅ）が成り立つ。
【０００５】
図２にデータカプセル化装置Ｄ２００（ＤＥＭ）の機能構成を示す。本装置は、鍵ビット長パラメータＤＬ２１０、暗号化アルゴリズム装置ＤＥ２２０、復号アルゴリズム装置ＤＤ２３０から構成される。鍵ビット長パラメータＤＬ２１０は、セキュリティパラメータλから秘密鍵のビット長パラメータｄｌを出力する確定的アルゴリズム装置である。記号では、ｄｌ＝ＤＬ（λ）と表すこととする。暗号化アルゴリズム装置ＤＥ２２０は、秘密鍵ａを用いて平文ｍを暗号化し、暗号文ｃを出力する確定的アルゴリズム装置である。記号では、ｃ＝ＤＥａ（ｍ）と表すこととする。ここで秘密鍵ａは、ビット長がｄｌの０または１からなるビット列である（ａ∈{０，１}ｄｌ）。また平文ｍおよび暗号文ｃは、ビット長が任意の０または１からなるビット列である（ｍ∈{０，１}＊、ｃ∈{０，１}＊）。復号アルゴリズム装置ＤＤ２３０は、秘密鍵ａを用いて暗号文ｃを復号し、平文ｍを出力する確定的アルゴリズム装置である。記号では、ｍ＝ＤＤａ（ｃ）と表すこととする。データカプセル化装置Ｄ２００では、任意のａ∈{０，１}ｄｌとｍ∈{０，１}＊に対して、常にＤＤａ（ＤＥａ（ｍ））＝ｍが成り立つ。
【０００６】
図３にハイブリッド暗号システムＨの機能構成を示す。ハイブリッド暗号システムＨは、鍵カプセル化装置Ｋ１００内の構成装置とデータカプセル化装置Ｄ２００内の構成装置とを組み合わせた、暗号化装置ＨＥ４００と復号装置ＨＤ５００から構成される。また、鍵カプセル化装置Ｋ１００とデータカプセル化装置Ｄとの両方で暗号鍵ａは使用されることから、このシステム内ではｋｌ＝ｄｌが成立することが必要である。
暗号化装置ＨＥ４００は、暗号化アルゴリズム装置ＫＥ１３０によって、受信者の公開鍵ｐｋから秘密鍵ａと暗号化した秘密鍵ｅ（ｅ∈{０，１}＊）の組を得る（（ａ，ｅ）←ＫＥ（ｐｋ））。次に、暗号化アルゴリズム装置ＤＥ２２０で、秘密鍵ａを用いて平文ｍ（ｍ∈{０，１}＊）を暗号化し、暗号文ｃ（ｃ∈{０，１}＊）を得る（ｃ＝ＤＥａ（ｍ））。このようにして暗号化装置ＨＥ４００は、復号装置ＨＤ５００への出力として、暗号化した秘密鍵ｅと暗号文ｃの組（ｅ，ｃ）を得る。
【０００７】
復号装置ＨＤ５００は、あらかじめ鍵生成装置ＫＧ１２０で、セキュリティパラメータλから公開鍵ｐｋと私有鍵ｓｋの組を得る（（ｐｋ，ｓｋ）←ＫＧ（λ））。公開鍵ｐｋは、あらかじめ公開され、暗号化装置ＨＥ４００によって上記のように使用される。また私有鍵ｓｋは、あらかじめ復号装置内の記録装置に記録される。暗号化装置ＨＥからの暗号化された秘密鍵ｅと暗号文ｃとの組を受信すると、復号アルゴリズム装置ＫＤ１４０は、私有鍵ｓｋを用いて暗号化された秘密鍵ｅを復号し、秘密鍵ａを得る（ａ＝ＫＤｓｋ（ｅ））。次に、復号アルゴリズム装置ＤＤ２３０が、秘密鍵ａを用いて暗号文ｃを復号し、平文ｍを得る（ｍ＝ＤＤａ（ｃ））。
また、同報通信に特化した暗号方法の提案としては、例えば特許文献１がある。
【非特許文献１】V. Shoup, ”FCD 18033-2 Encryption algorithms - Part2: Asymmetric ciphers," ISO/IEC JTC 1/SC 27, Berlin, 2004.
【特許文献１】特公平０８−００４２６５号
【発明の開示】
【発明が解決しようとする課題】
【０００８】
従来から同報通信に特化した暗号方法の提案はされていたが（例えば特許文献１）、これらは固有の暗号アルゴリズムを用いて行うものであり、ＫＥＭ−ＤＥＭハイブリッド暗号の枠組みを使用した同報通信に適した暗号方法は提案されていない。したがって、複数の受信者に対して送信側が同一のデータ（平文）を暗号化して一斉送信したい場合（暗号化同報通信を行いたい場合）、従来のハイブリッド暗号装置による方法では、送信側が各受信者の公開鍵と鍵カプセル化装置を用いて各受信者毎に秘密鍵を生成し、それぞれの秘密鍵を用いてデータ（平文）の暗号化を（データカプセル化装置の暗号化装置を使用して）行う必要があった。
【０００９】
その結果、送信側は受信者の人数分の回数だけ同じデータ（平文）の暗号化を行わなければならないという問題点が生じていた。また、送信する暗号文のデータ量も受信者の人数に比例して増大してしまうという問題点も含んでいた。そしてさらに、第1回目の同報通信が終了した後に、受信者の中の１人が同じ団体に対して新たなデータ（平文）を暗号化して一斉送信する（返信する）場合には、その第２回目の送信者が新たに秘密鍵生成プロセスを最初から繰り返さなければならない（第1回目の秘密鍵の情報を再利用することができない）という問題点を抱えていた。
本発明では上記問題点を解消することを目的としている。
【課題を解決するための手段】
【００１０】
本発明では、送信側の装置で、鍵生成装置ＭＧで同報通信を行いたい装置間で共通に用いる共通セッション鍵ｒを生成し、記録装置に当該共通セッション鍵ｒを記録し、暗号化アルゴリズム装置ＭＥで当該共通セッション鍵ｒを同報通信先の装置ごとの秘密鍵ａｉを用いて暗号化するとともに、暗号化アルゴリズム装置ＤＥで平文ｍを共通セッション鍵ｒを用いて暗号化する。送信側から受信側へは、暗号化された秘密鍵ｅｉ、暗号化した共通暗号鍵ｙｉ、暗号文ｃの組が送信される。受信側の装置では、復号アルゴリズム装置ＭＤで暗号化された共通セッション鍵ｙｉを秘密鍵ａｉを用いて復号し、記録装置に共通セッション鍵ｒを記録し、復号アルゴリズム装置ＤＤで暗号文ｃを共通セッション鍵ｒを用いて復号して平文ｍを得る。
２回目以降の同報通信では、記録装置に記録した共通セッション鍵ｒを用いて暗号化アルゴリズム装置ＤＥで平文ｍを暗号化、復号アルゴリズム装置ＤＤで暗号文ｃの復号を行う。
【発明の効果】
【００１１】
本発明は、ＫＥＭ−ＤＥＭハイブリッド暗号を使用する場合でも暗号化同報通信を可能としており、平文の暗号化回数を同報通信ごとに１回のみ行えばよいという効果がある。また、送信する暗号文のデータ量も、１回の同報通信のみとなる効果がある。さらに、第１回目の同報通信が終了した後も共通セッション鍵を記録しておくことで、同じ装置間で第２回目以降の同報通信を行う場合にも第１回目に作成した秘密鍵を再利用できるという効果がある。
【発明を実施するための最良の形態】
【００１２】
以下にこの発明の実施形態を図面を参照して説明するが、同一の機能を有する部分は、各図中に同一参照番号を付けて重複説明を省略する。
［第１実施形態］
図４に本発明の鍵共有化装置Ｍ３００の機能構成例を示す。鍵共有化装置Ｍ３００は、鍵ビット長パラメータＭＬ３１０、鍵生成装置ＭＧ３２０、暗号化アルゴリズム装置ＭＥ３３０、復号アルゴリズム装置ＭＤ３４０からなる。鍵ビット長パラメータＭＬ３１０は、セキュリティパラメータλから共通セッション鍵のビット長ｍｌを出力する確定的アルゴリズム装置である。記号では、ｍｌ＝ＭＬ（λ）と表すこととする。鍵生成装置ＭＧ３２０は、入力の無い確率的アルゴリズム装置として、もしくは秘密鍵ａ１，…，ａｎの全部または一部を入力する確定的アルゴリズム装置として、共通セッション鍵ｒ（ｒ∈{０，１}ｍｌ）を出力する。記号では、確率的アルゴリズムの場合はｒ←ＭＧ（）、確定的アルゴリズムの場合はｒ＝ＭＧ（ａ１，…，ａｎ）と表すこととする。暗号化アルゴリズム装置ＭＥ３３０は、共通セッション鍵ｒを各装置の秘密鍵ａｉを用いて暗号化し、暗号化された共通セッション鍵ｙｉを出力する確定的アルゴリズム装置である。記号としては、ｙｉ＝ＭＥａｉ（ｒ）と表すこととする。復号アルゴリズム装置ＭＤ３４０は、暗号化された共通セッション鍵ｙｉを秘密鍵ａｉを用いて復号し、共通セッション鍵ｒを出力する確定的アルゴリズム装置である。記号としては、ｒ＝ＭＤａｉ（ｙｉ）と表すこととする。鍵共有化装置Ｍ３００では、任意のａｉ∈{０，１}ｋｌｉと任意のｒ←ＭＧ（）または確定的なｒ＝ＭＧ（ａ１，…，ａｎ）に対して、常にＭＤａｉ（ＭＥａｉ（ｒ））＝ｒが成り立つ。
【００１３】
図５に本発明の暗号化同報通信を行うシステムの例を示す。この例はｎ＋１個の送受信装置１０００−ｉ（ｉ＝０，１，２，…，ｎ）から構成されている。各送受信装置１０００−ｉは、鍵カプセル化装置Ｋ１００内の構成装置、データカプセル化装置Ｄ２００内の構成装置、および鍵共有化装置Ｍ３００内の構成装置を組み合わせた、送信装置ＨＥｉ６００−ｉ、受信装置ＨＤｉ７００−ｉ、記録装置８００−ｉから構成されている。
図６に本発明の第１回目の同報通信での送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す。送信装置ＨＥ０６００−０は、暗号化アルゴリズム装置ＫＥ１３０−ｉ（ｉ＝１〜ｎ）によって、受信装置の公開鍵ｐｋｉから秘密鍵ａｉと暗号化した秘密鍵ｅｉの組を得る（（ａｉ，ｅｉ）←ＫＥ（ｐｋｉ））。次に、鍵生成装置ＭＧ３２０−０によって、共通セッション鍵ｒ（ｒ∈{０，１}ｍｌ）を得る出力する（ｒ←ＭＧ（）、またはｒ＝ＭＧ（ａ１，…，ａｎ））。当該共通セッション鍵ｒは、記録装置８００−０内の記録部８１０−０に記録される。次に、暗号化アルゴリズム装置ＭＥ３３０−０によって、共通セッション鍵ｒを各装置の秘密鍵ａｉを用いて暗号化し、暗号化された共通セッション鍵ｙｉを得る（ｙｉ＝ＭＥａｉ（ｒ））とともに、暗号化アルゴリズム装置ＤＥ２２０−０によって、共通セッション鍵ｒを用いて平文ｍを暗号化し、暗号文ｃを得る（ｃ＝ＤＥｒ（ｍ））。このように送信装置ＨＥ０６００−０は、受信装置ＨＤｉ７００−ｉへの出力として、暗号化した秘密鍵ｅｉと暗号化した共通セッション鍵ｙｉ、暗号文ｃの組（ｅ１，ｙ１，…，ｅｎ，ｙｎ，ｃ）を得る。
【００１４】
受信装置ＨＤｉ７００−ｉ（ｉ＝１〜ｎ）は、あらかじめ鍵生成装置ＫＧ１２０−ｉで、セキュリティパラメータλから公開鍵ｐｋｉと私有鍵ｓｋｉの組を得る（（ｐｋｉ，ｓｋｉ）←ＫＧ（λ））。公開鍵ｐｋｉは、あらかじめ公開され、送信装置ＨＥ０６００−０によって上記のように使用される。また私有鍵ｓｋｉは、あらかじめ記録装置８００−ｉ内の記録部４１０−ｉに記録される。送信装置ＨＥ０６００−０からの暗号化した秘密鍵ｅｉと暗号化した共通セッション鍵ｙｉ、暗号文ｃの組（ｅ１，ｙ１，…，ｅｎ，ｙｎ，ｃ）を受信すると、復号アルゴリズム装置ＫＤ１４０は、私有鍵ｓｋｉを用いて暗号化された秘密鍵ｅｉを復号し、秘密鍵ａｉを得る（ａｉ＝ＫＤｓｋｉ（ｅｉ））。次に、復号アルゴリズム装置ＭＤ３４０−ｉによって、暗号化された共通セッション鍵ｙｉを秘密鍵ａｉを用いて復号し、共通セッション鍵ｒを得る（ｒ＝ＭＤａｉ（ｙｉ））。当該共通セッション鍵ｒは、記録装置８００−ｉ内の記録部８１０−ｉに記録される。次に、復号アルゴリズム装置ＤＤ２３０−ｉが、共通セッション鍵ｒを用いて暗号文ｃを復号し、平文ｍを得る（ｍ＝ＤＤｒ（ｃ））。
【００１５】
図７に、本発明の第１回目の暗号化同報通信と同じ装置間で第２回目以降の暗号化同報通信を行う場合の送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す。第１回目の暗号化同報通信と同じ装置間で第２回目以降の暗号化同報通信を行う場合には、第１回目の暗号化同報通信で使用した共通セッション鍵ｒを全装置が記録しておくことにより、以下の手順で簡略化された暗号化同報通信を行う。送信装置ＨＥｉ６００−ｉでは、暗号化アルゴリズム装置ＤＥ２２０−ｉによって、記録装置８００−ｉ内の記録部８１０−ｉに記録された共通セッション鍵ｒを用いて平文ｍを暗号化し、暗号文ｃを得る（ｃ＝ＤＥｒ（ｍ））。また、受信装置ＨＤｊ７００−ｊ（ｊ＝０〜ｎ  ただし、ｊ＝ｉを除く）は、復号アルゴリズム装置ＤＤ２３０−ｊによって、記録装置８００−ｊ内の記録部８１０−ｊに記録された共通セッション鍵ｒを用いて暗号文ｃを復号し、平文ｍを得る（ｍ＝ＤＤｒ（ｃ））。
【００１６】
図８に、本発明の第２回目以降の暗号化同報通信で第１回目の暗号化同報通信より装置が増えた場合の送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す。第２回目以降に暗号化同報通信を行う装置が増えた場合には、第１回目と同じ装置間では図７に示した方法で暗号化同報通信を行う一方、増加した受信装置７００−ｉ（ｉ＝ｎ＋１〜ｎ’）では図６に示した第１回目の同報通信と同じ方法での暗号化同報通信を行う。ただし、共通セッション鍵ｒは、すでに記録装置８００内の記録部８１０−ｊに記録された共通セッション鍵ｒを使用するので、図６の鍵生成装置ＭＧ３２０−ｊは用いない。
［変形例１］
【００１７】
本変形例は、各受信装置ＨＤｉ７００−ｉの鍵カプセル化装置Ｋｉ１００−ｉ（ｉ＝０〜ｎ）の鍵ビット長がすべてデータカプセル化装置Ｄ２００の鍵ビット長に等しい場合、すなわちｋｌ１＝ｋｌ２＝…＝ｋｌｎ＝ｄｌ（＝ｍｌ）の場合に適用できる。この方法はビットごとの排他的論理和を用いるものである。本変形例では、図４に示す鍵共有化装置Ｍは以下のように構成される。
鍵ビット長パラメータＭＬ３１０は、第１実施形態と同じである。鍵生成装置ＭＧ３２０は、セキュリティパラメータを入力とする確率的アルゴリズム装置として、もしくは秘密鍵ａ１，…，ａｎの全部または一部を入力する確定的アルゴリズム装置として、共通セッション鍵ｒ（ｒ∈{０，１}ｄｌ）を出力する。記号では、確率的アルゴリズムの場合はｒ←ＭＧ（λ）、確定的アルゴリズムの場合はｒ＝ＭＧ（ａ１，…，ａｎ）と表すことができる。暗号化アルゴリズム装置ＭＥ３３０は、次式のように共通セッション鍵ｒと各装置の秘密鍵ａｉの排他的論理和を取ることで暗号化された共通セッション鍵ｙｉを得る。
【数１】
2006203739.tif 000003
復号アルゴリズム装置ＭＤ３４０は、次式のように暗号化された共通セッション鍵ｙｉと秘密鍵ａｉの排他的論理和を取ることで復号し、共通セッション鍵ｒを得る。
【数２】
2006203739.tif 000004
通常、ビットごとの排他的論理和の計算は極めて高速に実行することができるので、この変形例による構成法も高速実行が可能であるという点で優れている。また、この変形例でも実用上は十分安全と考える。
［変形例２］
【００１８】
本変形例は、各受信装置ＨＤｉ７００−ｉの鍵カプセル化装置Ｋｉ１００−ｉ（ｉ＝０〜ｎ）の鍵ビット長がすべて等しい場合、すなわちｋｌ１＝ｋｌ２＝…＝ｋｌｎの場合に適用できる。この方法は、ｋｌ１＝ｋｌ２＝…＝ｋｌｎ＝ｄｌ’であるようなデータカプセル化装置Ｄ’を用意し、これをそのまま鍵共有化装置Ｍ３００に転用するものである。本変形例では、図４に示す鍵共有化装置Ｍは以下のように構成される。
【００１９】
鍵ビット長パラメータＭＬ３１０は、第１実施形態と同じである。鍵生成装置ＭＧ３２０は、セキュリティパラメータを入力とする確率的アルゴリズム装置として、共通セッション鍵ｒ（ｒ∈{０，１}ｄｌ）を出力する。記号では、ｒ←ＭＧ（λ）と表すことができる。暗号化アルゴリズム装置ＭＥ３３０は、従来から普及しているデータカプセル化装置Ｄの暗号化アルゴリズム装置ＤＥを使用する。記号としては、ｙｉ＝ＭＥａｉ（ｒ）＝ＤＥ’ａｉ（ｒ）と表すことができる。復号アルゴリズム装置ＭＤ３４０は、従来から普及しているデータカプセル化装置Ｄの復号アルゴリズム装置ＤＤを使用する。記号としては、ｒ＝ＭＤａｉ（ｙｉ）＝ＤＤ’ａｉ（ｙｉ）と表すことができる。
【００２０】
この変形例において、特にｋｌ１＝ｋｌ２＝…＝ｋｌｎ＝ｄｌの場合には、Ｄ’＝Ｄとして、鍵共有化装置Ｍに普及しているデータカプセル化装置Ｄをそのまま利用することができるので、別途新たに鍵共有化装置Ｍを準備する必要がないという点で優れている。また、この変形例の構成法は、理論的にも安全である。
［変形例３］
【００２１】
本変形例は、各受信装置ＨＤｉ７００−ｉの鍵カプセル化装置Ｋｉ１００−ｉ（ｉ＝０〜ｎ）の鍵ビット長が異なっている場合にも適用できる。この方法は、ビットごとの排他的論理和に加えて一方向ハッシュ関数Ｈａｓｈ：{０，１}＊→{０，１}ｄｌを用いるものである。本変形例では、図４に示す鍵共有化装置Ｍは以下のように構成される。
鍵ビット長パラメータＭＬ３１０は、第１実施形態と同じである。鍵生成装置ＭＧ３２０は、セキュリティパラメータを入力とする確率的アルゴリズム装置として、もしくは秘密鍵ａ１，…，ａｎの全部または一部を入力する確定的アルゴリズム装置として、共通セッション鍵ｒ（ｒ∈{０，１}ｄｌ）を出力する。記号では、確率的アルゴリズムの場合はｒ←ＭＧ（λ）、確定的アルゴリズムの場合は一例としてｒ＝ＭＧ（ａ１，…，ａｎ）＝Ｈａｓｈ（ａ１）∈{０，１}ｄｌと表すことができる。暗号化アルゴリズム装置ＭＥ３３０は、次式のように共通セッション鍵ｒと秘密鍵ａｉのハッシュ値の排他的論理和を取ることで暗号化された共通セッション鍵ｙｉを得る。
【数３】
2006203739.tif 000005
復号アルゴリズム装置ＭＤ３４０は、次式のように暗号化された共通セッション鍵ｙｉと秘密鍵ａｉのハッシュ値の排他的論理和を取ることで復号し、共通セッション鍵ｒを得る。
【数４】
2006203739.tif 000006
ビットごとの排他的論理和およびハッシュ値の計算は極めて高速に実行することができるので、この変形例による構成法も高速実行が可能であるという点と、各受信装置ＨＤｉ７００−ｉの鍵カプセル化装置Ｋｉ１００−ｉ（ｉ＝０〜ｎ）の鍵ビット長が異なっている場合にも適用できる点で優れている。また、この変形例でも実用上は十分安全と考える。
［変形例４］
【００２２】
図９は、第１実施形態の変形例であって、送信装置ＨＥｉ６００−ｉ内の暗号化アルゴリズム装置ＭＥ３３０−ｉ−ｊ（ｉ，ｊ＝０〜ｎ  ただし、ｊ≠ｉ）を対向する受信装置ＨＤｊ６００−ｊ（ｊ＝０〜ｎ  ただし、ｊ≠ｉ）ごとに備えた例を示している。このようにすることによって、受信装置ごとに秘密鍵ａｉのビット長を変えるなど、個別の送受信装置に対応した暗号化同報通信が可能となる。
［第２実施形態］
【００２３】
暗号化同報通信を行う装置が減少する場合へも対応できるＫＥＭ−ＤＥＭハイブリッド暗号を使用した暗号化同報通信の方法を示す。本発明では、第１実施形態の方法に加え、暗号鍵ａｉを記録装置８００に記録する。本発明は、第２回目以降の送信側の装置が、第１回目と同じである場合にかぎり適用できる。しかし、電子チケットを顧客に同時に配布する場合など、送信側の装置が第１回目と第２回目以降で同じとなる応用例は多いと考えられるため、実用的価値は十分にあると考える。ここで、説明の簡略化のために、第２回目以降の暗号化同報通信の時に残っている装置を１０００−０および｛ｇ１，ｇ２，…，ｇｆ｝⊂｛１，２，…，ｎ｝とする。
【００２４】
図１０に本発明の第１回目の同報通信での送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す。第１実施形態の第１回目の同報通信での送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す図６との違いは、送信装置ＨＥ０６００−０の暗号化アルゴリズム装置ＫＥｉ１３０−ｉ（ｉ＝１〜ｎ）で生成される秘密鍵ａｉを記録装置８００内の記録部８２０−０に記録すること、および受信装置ＨＤｉ７００−ｉ（ｉ＝１〜ｎ）でも復号アルゴリズム装置ＫＤ１４０−ｉ（ｉ＝１〜ｎ）で当該受信装置ＨＤｉ７００−ｉの秘密鍵ａｉを記録装置８００内の記録部８２０−ｉに記録することである。その他の方法については、第１実施形態と同じである。
【００２５】
図１１に、本発明の第２回目以降の暗号化同報通信で装置が減少した場合の送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す。送信装置ＨＥ０６００−０は、鍵生成装置ＭＧ３２０−０によって、共通セッション鍵ｒ（ｒ∈{０，１}ｍｌ）を得る出力する（ｒ←ＭＧ（）、またはｒ＝ＭＧ（ａｉ））。鍵生成装置ＭＧ３２０−０で秘密鍵ａｉ（ｉ∈｛ｇ１，ｇ２，…，ｇｆ｝）を使用する場合は記録装置８００内の記録部８２０−０に記録されている秘密鍵ａｉを用いる。また、新しく生成された当該共通セッション鍵ｒは、記録装置８００−０内の記録部８１０−０に記録される。次に、暗号化アルゴリズム装置ＭＥ３３０−０によって、新しく生成された共通セッション鍵ｒを各装置の秘密鍵ａｉを用いて暗号化し、暗号化された共通セッション鍵ｙｉを得る（ｙｉ＝ＭＥａｉ（ｒ），ｉ∈｛ｇ１，ｇ２，…，ｇｆ｝）とともに、暗号化アルゴリズム装置ＤＥ２２０−０によって、新しく生成された共通セッション鍵ｒを用いて平文ｍを暗号化し、暗号文ｃを得る（ｃ＝ＤＥｒ（ｍ））。このように送信装置ＨＥ０６００−０は、受信装置ＨＤｉ７００−ｉ（ｉ∈｛ｇ１，ｇ２，…，ｇｆ｝）への出力として、暗号化した共通セッション鍵ｙｉと暗号文ｃの組（ｙｇ１，…，ｙｇｆ，ｃ）を得る。
【００２６】
受信装置ＨＤｉ７００−ｉ（ｉ∈｛ｇ１，ｇ２，…，ｇｆ｝）は、送信装置ＨＥ０６００−０からの暗号化した共通セッション鍵ｙｉと暗号文ｃの組（ｙｇ１，…，ｙｇｆ，ｃ）を受信すると、復号アルゴリズム装置ＭＤ３４０−ｉは、暗号化された共通セッション鍵ｙｉを、記録装置８００内の記録部８２０−０に記録されている秘密鍵ａｉを用いて復号し、共通セッション鍵ｒを得る（ｒ＝ＭＤａｉ（ｙｉ））。当該共通セッション鍵ｒは、記録装置８００−ｉ内の記録部８１０−ｉに記録される。次に、復号アルゴリズム装置ＤＤ２３０−ｉが、共通セッション鍵ｒを用いて暗号文ｃを復号し、平文ｍを得る（ｍ＝ＤＤｒ（ｃ））。
［変形例］
【００２７】
図１２と図１３に第２実施形態の変形例を示す。図１２は、本発明の第１回目の同報通信での送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す図である。図１２と図１０との違いは、受信装置ＨＤｉ７００−ｉで記録装置に記録する情報を、秘密鍵ａｉではなく暗号化された秘密鍵ｅｉとすることである。
図１３に、本発明の第２回目以降の暗号化同報通信で装置が減少した場合の送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す。送信装置ＨＥ０６００−０は、第２実施形態と同じである。受信装置ＨＤｉ７００−ｉ（ｉ∈｛ｇ１，ｇ２，…，ｇｆ｝）は、送信装置ＨＥ０６００−０からの暗号化した共通セッション鍵ｙｉと暗号文ｃの組（ｙｇ１，…，ｙｇｆ，ｃ）を受信すると、復号アルゴリズム装置ＫＤ１４０−ｉは、私有鍵ｓｋｉを用いて、記録装置８００−ｉ内の記録部８３０−ｉに記録された暗号化された秘密鍵ｅｉを復号し、秘密鍵ａｉを得る（ａｉ＝ＫＤｓｋｉ（ｅｉ））。次に、復号アルゴリズム装置ＭＤ３４０−ｉによって、暗号化された共通セッション鍵ｙｉを秘密鍵ａｉを用いて復号し、共通セッション鍵ｒを得る（ｒ＝ＭＤａｉ（ｙｉ））。その他は第２実施形態と同じである。
【図面の簡単な説明】
【００２８】
【図１】鍵カプセル化装置Ｋ１００（ＫＥＭ）の機能構成を示す図。
【図２】データカプセル化装置Ｄ２００（ＤＥＭ）の機能構成を示す図。
【図３】ハイブリッド暗号システムＨの機能構成を示す図。
【図４】鍵共有化装置Ｍ３００の機能構成例を示す図。
【図５】暗号化同報通信を行うシステムの例を示す図。
【図６】第１回目の同報通信での送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す図。
【図７】第１回目の暗号化同報通信と同じ装置間で第２回目以降の暗号化同報通信を行う場合の送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す図。
【図８】第２回目以降の暗号化同報通信で第１回目の暗号化同報通信より装置が増えた場合の送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す図。
【図９】送信装置ＨＥｉ６００−ｉ内の暗号化アルゴリズム装置ＭＥ３３０−ｉ−ｊ（ｉ，ｊ＝０〜ｎ  ただし、ｊ≠ｉ）を対向する受信装置ＨＤｊ６００−ｊ（ｊ＝０〜ｎ  ただし、ｊ≠ｉ）ごとに備えた例を示す図。
【図１０】第１回目の同報通信での送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す図。
【図１１】第２回目以降の暗号化同報通信で装置が減少した場合の送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す図。
【図１２】本発明の第１回目の同報通信での送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す図。
【図１３】第２回目以降の暗号化同報通信で装置が減少した場合の送信装置ＨＥ０と受信装置ＨＤｉとの関係を示す図。
【図１】
2006203739.tif 000007
【図２】
2006203739.tif 000008
【図３】
2006203739.tif 000009
【図４】
2006203739.tif 000010
【図５】
2006203739.tif 000011
【図６】
2006203739.tif 000012
【図７】
2006203739.tif 000013
【図８】
2006203739.tif 000014
【図９】
2006203739.tif 000015
【図１０】
2006203739.tif 000016
【図１１】
2006203739.tif 000017
【図１２】
2006203739.tif 000018
【図１３】
2006203739.tif 000019