JP3864247B2 - ネットワークシステム、端末装置、情報の配信方法及び復号方法 - Google Patents

ネットワークシステム、端末装置、情報の配信方法及び復号方法 Download PDF

Info

Publication number
JP3864247B2
JP3864247B2 JP2001322742A JP2001322742A JP3864247B2 JP 3864247 B2 JP3864247 B2 JP 3864247B2 JP 2001322742 A JP2001322742 A JP 2001322742A JP 2001322742 A JP2001322742 A JP 2001322742A JP 3864247 B2 JP3864247 B2 JP 3864247B2
Authority
JP
Japan
Prior art keywords
information
terminal
key
group
encrypted
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
JP2001322742A
Other languages
English (en)
Other versions
JP2003143121A (ja
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2001322742A priority Critical patent/JP3864247B2/ja
Priority to US10/271,809 priority patent/US7346171B2/en
Publication of JP2003143121A publication Critical patent/JP2003143121A/ja
Application granted granted Critical
Publication of JP3864247B2 publication Critical patent/JP3864247B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/3013Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the discrete logarithm problem, e.g. ElGamal or Diffie-Hellman systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ネットワーク上の端末装置のうちで、受信グループとして選択されたサブセットに属する端末装置だけが復号できるような暗号化を施した情報をマルチキャストするための暗号化方法及び復号方法に関する。
【0002】
【従来の技術】
ネットワークにおけるデータ配信技術に、同じデータを複数の特定された宛先アドレスに配信するマルチキャストと呼ばれる技術がある。インターネットに代表されるようなネットワーク環境が広く普及している今日、このマルチキャストにおいてもデータを暗号化して配信することが要求されることがある。例えば、ネットワーク上の端末装置のうち、特定のサブセットを受信グループとして特定し、当該受信グループに属する端末装置でのみ復号可能な暗号化によりデータ配信を行う場合がある。
【0003】
従来、この種のマルチキャストにおける暗号技術としては、暗号を復号するための鍵を所定のディーラが一元的に管理する手法や、個々の端末が公開鍵暗号方式による公開鍵と秘密鍵とを生成して管理する手法、暗号を復号可能な受信グループを動的に変更可能な手法など、種々の暗号技術が提案されている。この種の従来技術の代表的なものに、次の文献に開示されているBroadcast Encryptionがある。
文献:Fiat, A. and Naor, M.,"Broadcast Encryption,"Crypto93, LNCS, 1993.
【0004】
このBroadcast Encryptionでは、所定のユーザグループのうち、任意のサブセットを受信グループとし、そのメンバーだけが復号できるような暗号鍵の構成法を提案している。すなわち、ユーザ間の結託閾値を設定し、その人数までの結託に耐えられるような(その人数が結託しなければ破られないような)グループ秘密鍵の生成法を提案している。また、暗号化されたデータの復号は、受信グループのメンバーであれば、単独で復号できるものである。
上記Broadcast Encryptionに限らず、従来のこの種の暗号技術は、暗号化されたデータの復号は、一般に、受信グループに属する端末装置が単独で行えるものであった。
【0005】
【発明が解決しようとする課題】
ところで、上記のマルチキャストが必要とされる場面は、ネットワーク上のサーバからクライアントへ一方的に情報(コンテンツ)を配信するクライアントサーバモデルだけでなく、端末装置間で相互に情報を交換する機能を実現するピア・ツー・ピアモデルでも存在する。例えば、ネットワーク上の所定の端末装置がグループを形成し、当該グループに属する端末装置間で、保有する情報を交換する場合などである。
【0006】
このような環境下で安全なマルチキャストを実現するための暗号技術の1つとして、暗号化されたデータが、グループに属する端末装置の全部または一部が結託することによって初めて復号可能となるような技術が考えられる。
この場合、上述したBroadcast Encryptionなどの従来技術で前提とされている、幾つかの端末が結託して暗号化データを復号することを排除しようとするような暗号技術は、当然ながら適用できない。
【0007】
そこで、本発明は、受信グループとして選択されたサブセットに属する端末装置が協力することにより復号できるような暗号化方法及びその復号方法を提供することを目的とする。
また、本発明は、この暗号化方法及び復号方法を用いて、安全なマルチキャストによるデータ配信を実現することを目的とする。
【0008】
【課題を解決するための手段】
上記の目的を達成する本発明は、次のように構成されたことを特徴とするネットワークシステムとして実現することができる。すなわち、ネットワークを介して情報を送受する発信者端末及び受信者端末を備え、発信者端末は、発信情報を、任意の数の受信者端末のID情報の集合に基づくグループ鍵を用いて暗号化して受信者端末に配信する。一方、受信者端末は、発信者端末から暗号化データを受信し、複数の受信者端末間でこの暗号化データを復号するための各受信者端末固有の部分情報を交換することにより暗号化データを復号する復号情報を求め、この復号情報を用いて発信情報を復号する。
ここで、発信者端末及び受信者端末は、必ずしも特定のハードウェア(端末装置)を指すものではなく、システム上の役割を意味するに過ぎない。すなわち、発信者たるユーザが使用する端末装置が発信者端末であり、受信者たるユーザが使用する端末装置が受信者端末である。
また、ID情報には、各端末や端末の使用者(受信者)に付されたID、秘密鍵及び公開鍵などを含むものとする。
さらにここで、部分情報とは、各受信者端末の秘密鍵自体とすることもできるし、公開鍵暗号方式を用いる場合は、秘密鍵そのものを交換することを避けるため、暗号化データを秘密鍵にて処理した部分的な復号情報(部分復号情報)とすることができる。
復号情報は、部分情報に応じて内容が異なる。部分情報が秘密鍵である場合は、これに基づいて発信情報を暗号化したグループ鍵を復元し、これを復号情報とすることができる。一方、部分情報が上述した部分復号情報である場合は、公開暗号方式が用いられ、かつ秘密鍵自体は交換されないため、グループ鍵に対応する復号用の鍵を生成することができない。しかしながら、所定のセッション鍵を用いて発信情報を暗号化しグループ鍵を用いてセッション鍵を暗号化するといった2重の暗号化を施すと共に有限体上の暗号系(例えばElGamal暗号)にてセッション鍵を暗号化することにより、部分復号情報の集合からセッション鍵を復元することが可能な情報を計算することができ、これを復号情報とすることができる。この場合、発信情報を復号する過程において、グループ鍵に対応する復号用の鍵は常に隠された状態で使用されることとなる。
【0009】
また、上記の発信者端末は、暗号化された発信情報を復号するために共同することが必要な受信者端末の数を示す閾値を設定し、暗号化された発信情報と共にこの閾値を受信者端末に配信する。これに対し、受信者端末は、この閾値に相当する数の受信者端末間で暗号化データに関する情報をやり取りすることによりグループ鍵に関する情報を求める。
このような構成とすることにより、情報の発信先である受信者端末(受信グループ)の中の一部が協力することにより暗号化データを復号することが可能となる。
【0010】
また、本発明は、クライアント/サーバシステムとして構成し、第1の鍵を用いて発信情報を暗号化しネットワークを介して発信する発信者端末と、この発信者端末から発信された暗号化データを受信し、第2の鍵を用いて前記発信情報を復号する受信者端末と、この受信者端末に対して端末ごとに固有の第2の鍵を配布し、発信者端末に対して複数の第2の鍵を用いることによって復号可能な暗号化を行う第1の鍵を配布するディーラとを備えることを特徴とするネットワークシステムとして実現することができる。
ここで、このディーラは、受信者端末のID情報に基づいて第2の鍵を生成すると共に、この第2の鍵を値とする点を通る多項式を構成し、この多項式の定数項を第1の鍵として発信者端末及び受信者端末に配布することができる。
また、発信者端末は、受信グループを決定し、この受信グループに属する受信者端末における第2の鍵にて復号可能な第1の鍵をディーラに対して要求することができる。
【0011】
さらにまた、本発明は、ネットワークを介して情報を送受する発信者端末及び受信者端末とを備えたピア・ツー・ピア方式のシステムとして構成し、発信者端末は、所定のセッション鍵を用いて発信情報を暗号化し、この発信情報の送信先である任意の数の受信者端末の公開鍵を用いて生成したグループ鍵によりセッション鍵を暗号化する暗号化手段と、この暗号化手段により暗号化されたセッション鍵及びこのセッション鍵によって暗号化された発信情報を送信先の受信者端末に送信する通信手段とを備え、受信者端末は、暗号化データを受信すると共に、他の受信者端末との間でデータの送受信を行う通信手段と、自装置固有の秘密鍵とこの秘密鍵に基づく公開鍵とを生成する鍵生成手段と、暗号化されたセッション鍵を秘密鍵にて処理し、得られた部分復号情報を複数の受信者端末間で交換することにより前記セッション鍵を復号するための復号情報を求め、求めた復号情報を用いてセッション鍵を復号し、復号されたセッション鍵を用いて発信情報を復号する復号手段とを備えることを特徴とするネットワークシステムとして実現することができる。
ここで、発信者端末の暗号化手段は、当該発信情報の送信先である各受信者端末の公開鍵を値とする点を通る多項式を構成し、この多項式の定数項をグループ鍵とする。
また、発信者端末の暗号化手段は、有限体上の暗号系によりグループ鍵を用いたセッション鍵の暗号化を行う。
【0012】
また、本発明は、上述したネットワークシステムにおける暗号方法を、例えば次のような具体的なサービスを目的とするシステムに適用することができる。すなわち、合議を求める議題を提供する議題提供者端末と、ネットワークを介して議題提供者から提供された議題を取得し、この議題に対する議決を行う参加者端末とを備えた合議システムとして実現できる。また、ネットワークを介してコンテンツを取得し利用するコンテンツ利用者端末と、このコンテンツ利用者端末によるコンテンツの取得を監視するメータリングサーバとを備えたメータリングシステム、あるいは、ネットワークを介してコンテンツを提供するコンテンツ提供者端末と、所定の端末装置によるコンテンツの取得を監視するメータリングサーバとを備えたメータリングシステムとして実現することができる。さらに、秘密情報を提供する秘密保持者端末と、ネットワークを介して秘密保持者端末から秘密情報を取得し分散して保持する複数の秘密分散対象者端末とを備えた秘密分散システムとして実現することができる。
【0013】
さらにまた、本発明は、ネットワークを介して情報を配信する端末装置として実現することができる。この端末装置は、情報の配信先となる任意の数の受信者端末を含む受信グループを決定する受信グループ決定手段と、この受信グループに属する受信者端末のID情報の集合に基づくグループ鍵を用いて、前記受信グループに属する前記受信者端末の一定数が情報を交換することにより復号可能となるように配信情報を暗号化する暗号化手段と、ネットワークを介して暗号化された配信情報を受信者端末に送信する送信手段とを備えることを特徴とする。
ここで、この端末装置にて情報を配信するシステムにおいて、受信者端末のID情報を管理するディーラ(サーバ)が存在する場合には、このディーラにグループ鍵の生成を要求して取得する構成とすることができる。そのようなディーラが存在せず、受信グループに属する受信者端末に暗号化用の公開鍵と復号用の秘密鍵とが設定されている場合は、情報を配信する端末装置自身がID情報である公開鍵を用いてグループ鍵を生成する構成とすることができる。また、暗号化の方法として、まず所定のセッション鍵を用いて前記配信情報を暗号化し、さらにグループ鍵を用いて当該セッション鍵を暗号化することができる。このとき、有限体上の暗号系によってセッション鍵の暗号化を行うことが可能である。有限体上の暗号系としては、例えばElGamal暗号を用いることができる。
【0014】
また、本発明は、ネットワークを介して配信された情報を受信する端末装置として実現することもできる。この端末装置は、ネットワークを介してデータの送受信を行う通信手段と、受信した暗号化データから、この暗号化データを復号するために共同することが必要な端末装置の数を示す閾値を取得し、通信手段を介してこの閾値に相当する数の他の端末装置との間で暗号化データを復号するための各端末装置固有の部分情報を交換し、この情報交換により得られた各端末装置の部分情報から暗号化データを復号する復号情報を求め、この復号情報を用いて暗号化データを復号する復号手段とを備えることを特徴とする。
ここで、この復号手段は、自装置の秘密鍵で暗号化データを処理することにより前記部分情報を取得し、他の端末装置との間で交換する。そして、情報交換により得られた部分情報から復号情報を求める。
また、この復号手段は、受信した暗号化データに付加されている配信情報の配信先である端末装置のリストを参照し、このリストに含まれる端末装置との間で暗号化データに関する情報の交換を行う。
【0015】
さらに本発明は、情報の配信先となる任意の数の受信者を含む受信グループを決定する受信グループ決定ステップと、受信グループに属する受信者のID情報に基づいてグループ鍵を生成するグループ鍵生成ステップと、生成されたグループ鍵を用いて、受信グループに属する受信者の一定数が情報を交換することにより復号可能な暗号化を配信情報に施す暗号化ステップとを含むことを特徴とする暗号化方法として実現することができる。
ここで、このグループ鍵生成ステップは、受信者のID情報を値とする点を通る多項式を構成し、この多項式の定数項をグループ鍵とするステップを含む。さらに、この多項式上で、受信者のID情報と重ならない仮想点を設定し、この仮想点に関する情報をグループ鍵に付加するステップを含むことができる。
また、暗号化ステップは、有限体上の暗号系によりグループ鍵を用いた暗号化を行うステップを含む。
【0016】
また、本発明は、ネットワークを介して受信した暗号化データから、暗号化されている情報を復号するために共同することが必要な端末装置の数を示す閾値を取得する閾値取得ステップと、閾値に相当する数の他の端末装置との間で暗号化データを復号するための各端末装置固有の部分情報を交換する情報交換ステップと、交換により得られた各端末装置の部分情報から暗号化データを復号する復号情報を求め、この復号情報に基づいて暗号化データを復号する復号ステップとを含むことを特徴とする復号方法として実現することができる。
【0017】
さらにまた、本発明は、コンピュータを上述した端末装置として動作させ、上述した暗号化方法あるいは復号方法をコンピュータに実行させるプログラムとして実現することができる。このプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供することができる。
【0018】
【発明の実施の形態】
以下、添付図面に示す実施の形態に基づいて、この発明を詳細に説明する。
本発明は、ネットワーク上に存在する複数の端末装置の中から任意のサブセットを受信グループとして選択し、当該受信グループに属する端末装置の全部または一部が協力することにより復号できるような暗号技術を提案する。
本発明では、多項式補間法を用い、受信グループに属する端末装置またはその使用者のID情報(秘密鍵)を値とする点を通る多項式を構成し、その定数項を秘密鍵とすることにより、当該受信グループにおける複数の端末装置(メンバー)が共同することによって解読可能となる暗号法を構成する。
この暗号法では、後述するように、閾値を導入し、受信グループのメンバーの一部が欠けていても復号可能とすることができる。
また、この暗号法を離散対数ベースの公開暗号に適用することによって、各端末装置(使用者)の秘密鍵を何度でも使用可能にし、さらに、この暗号を用いる情報配信システムにおいて秘密鍵を配るサーバを不要とすることができる。
【0019】
〔第1の実施の形態〕
第1の実施の形態として、ディーラが発行した鍵を用いて配信情報の暗号化及び復号を行う情報配信システムについて説明する。
まず、問題を定義するために、参加者として次の3者を定義する。図1は、この3者の関係を説明する図である。
発信者:受信グループGi、Gjとなる端末装置のサブセットを選択し、当該受信グループGi、Gj用のグループ鍵を用いて情報を暗号化して発信する。
受信者:暗号化された情報を受信し、秘密鍵を用いて復号する。
ディーラ:受信者のための秘密鍵を生成し配布する。受信者の秘密鍵を知っているので、通常は、信頼された第三者機関(TTP:Trusted Third Party)が運営する。また、グループ鍵を生成することもある。
【0020】
図2は、第1の実施の形態を実現する情報配信システムのシステム構成を示す図である。
図2を参照すると、本実施の形態の情報配信システムは、上記発信者が使用する発信者端末210と、上記受信者が使用する受信者端末220と、これらの端末装置を管理し、暗号化及び復号に用いられる鍵の生成、配布を行うサーバであるディーラ230とを備えるネットワークシステムである。
【0021】
発信者端末210及び受信者端末220は、パーソナルコンピュータやワークステーション、その他のコンピュータ装置、ネットワーク機能を備えたPDA(Personal Digital Assistant)、携帯電話などの情報端末にて実現される。また、ディーラ230は、パーソナルコンピュータやワークステーションなどのコンピュータ装置にて実現される。ここで、上述したように、発信者端末210と受信者端末220とは、所定の情報配信における役割を意味しており、当該ネットワークを介して接続された各端末装置が、発信者端末210及び受信者端末220になり得る。
ディーラ230は、当該ネットワークを介して接続されている端末装置のうち、本実施の形態における情報配信先となり得る(例えば本実施の形態による情報配信システムのメンバーとして登録された)全ての端末装置を管理している。また、情報配信を行う際は、ディーラ230に管理されている端末装置の中から任意のサブセットを受信グループとして選択し、当該受信グループに対して行う。すなわち、ディーラ230に管理されている端末装置のうち、発信者端末210によって受信グループに選択されたサブセットに含まれる端末装置が受信者端末220となる。受信グループは、最大で、ディーラ230に管理されている全ての端末装置にて形成されることとなる。
【0022】
図2に示すように、発信者端末210は、受信者端末220に配信する配信情報などを格納したデータ記憶部211と、ディーラ230に対してグループ鍵の発行を要求するグループ鍵要求部212と、ディーラ230から配布されたグループ鍵を用いてデータ記憶部211に格納されている配信情報を暗号化する暗号化部213とを備える。データ記憶部211はRAMなどのメモリで、グループ鍵要求部212及び暗号化部213はプログラム制御されたCPUで実現することができる。かかるプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供することができる。また、発信者端末210は、図示しない通信制御手段及びネットワークインターフェイスにより、ネットワークを介して受信者端末220及びディーラ230とデータ通信を行う。なお、図2において、1つの発信者端末210においてのみ、その構成を記載しているが、図中の他の発信者端末210も同様の構成であることは言うまでもない。
ここで、グループ鍵要求部212は、ディーラ230に管理されている端末装置の全体集合の中から、情報の配信先となる端末装置のサブセットを選択し、受信グループとする。そして、当該受信グループを構成する受信者端末220のIDの集合をディーラ230に送信し、当該受信グループに対するグループ鍵の発行を要求する。
【0023】
受信者端末220は、ディーラ230から配布された秘密鍵を用いて、発信者端末210から配信された配信情報を復号する復号部221と、復号した情報などを格納するデータ記憶部222とを備える。復号部221はプログラム制御されたCPUで、データ記憶部222はRAMなどのメモリで実現することができる。CPUを制御するプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供することができる。また、受信者端末220は、図示しない通信制御手段及びネットワークインターフェイスにより、ネットワークを介して発信者端末210及びディーラ230とデータ通信を行う。さらに、受信者端末220は、復号された情報を、データ記憶部222に格納する他に、図示しないディスプレイ装置や音声出力装置などの出力デバイスにて出力することもできる。なお、図2において、1つの受信者端末220においてのみ、その構成を記載しているが、図中の他の受信者端末220も同様の構成であることは言うまでもない。
【0024】
ディーラ230は、発信者端末210において配信情報を暗号化するためのグループ鍵と、受信者端末220において暗号化された受信情報を復号するための秘密鍵とを生成する鍵生成部231を備える。鍵生成部231はプログラム制御されたCPUにて実現することができる。かかるプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供することができる。また、ディーラ230は、図示しない通信制御手段及びネットワークインターフェイスにより、ネットワークを介して発信者端末210及び受信者端末220とデータ通信を行う。
鍵生成部231は、乱数生成器を有し、この乱数生成器にて生成した乱数を用いて各端末装置の秘密鍵を生成する。生成された秘密鍵は、秘密チャネルを介して各端末装置に配布される。また、鍵生成部231は、発信者端末210からの要求に応じ、受信グループを構成する受信者端末220のIDの集合を用いて、当該受信グループに対するグループ鍵を生成し、発信者端末210に返送する。
【0025】
図3は、上記のように構成された本実施の形態の情報配信システムにおける情報配信の手順を説明する図である。
図3を参照すると、本実施の形態による情報配信は、大別して1.秘密鍵の生成と配布、2.発信者のグループ決定とグループ鍵の生成、3.情報の暗号化と発信、4.情報受信と復号処理の4つのフェーズからなる。次に、各フェーズについて詳細に説明する。
なお、以下の説明において、pは大きな素数、qはp−1を割り切るような素数、gは有限体Zp上の位数qの元とする。
【0026】
1.秘密鍵の生成と配布
ディーラ230が、鍵生成部231により、ネットワークにアクセスするN人のユーザの端末装置Si,i=1,・・・,Nに対して秘密鍵siを生成し、一般的な秘密チャンネルを使用して各ユーザの端末装置に配布する。ここで、端末装置SiのIDをiとする。
【0027】
2.発信者のグループ決定とグループ鍵の生成
発信者端末210が、ディーラ230に管理されている端末装置の全体集合の中から情報の配信先となる端末装置を選び、受信グループGU={Sg1,・・・,Sgm}とする。また、当該受信グループGUを構成する受信者端末220のIDの集合をG={g1,・・・,gm}とする。このとき、受信グループGUのメンバー、すなわち受信者端末220の数はmである。次に、何人のメンバーが集まれば復号できるかを指定する閾値kを決定する。受信グループGUにおけるIDの集合G及び閾値kは、データ記憶部211に一時的に保持される。そして、グループ鍵要求部212が、データ記憶部211からIDの集合G及び閾値kを読み出してディーラ230に送信し、当該受信グループGUに対するグループ鍵sGの発行を要求する。
ディーラ230は、発信者端末210からの要求に応じて、鍵生成部231により受信グループGUに対するグループ鍵sGを生成し、発信者端末210に返送する。
【0028】
ここで、グループ鍵sGの生成方法について、さらに詳細に説明する。
ディーラ230の鍵生成部231は、まず、次数m−1の多項式f(x)を、次の数1式のように構成する。
【数1】
Figure 0003864247
【0029】
次に、グループ鍵sGをsG=f(0)とする。そして、m−k個の点p1,・・・,pm-kを、他のユーザIDと重ならないように選び、その点上での多項式f(x)の値xj=f(pj)を計算する。この点と計算値のリストとを、次のようにメッセージヘッダMHとする。
MH=<(p1,x1),・・・,(pm-k,xm-k)>
最後に、グループ鍵sGとメッセージヘッダMHとを発信者端末210に返送する。
【0030】
3.情報の暗号化と発信
発信者端末210が、ディーラ230からグループ鍵sGを受け取り、暗号化部213により配信情報の暗号化を行う。グループ鍵sGと共にディーラ230から受信したメッセージヘッダMHは、データ記憶部211に一時的に保持される。暗号化部213は、配信情報であるデータをデータ記憶部211から読み出してグループ鍵sGで暗号化し、メッセージボディMBとする。メッセージボディMBはデータ記憶部211に一時的に保持される。そして、図示しない通信制御手段が、メッセージヘッダMH及びメッセージボディMBの全体と受信グループGUにおけるIDの集合Gとをデータ記憶部211から読み出し、受信グループGUに属する受信者端末220に対してマルチキャストする。
【0031】
4.情報受信と復号処理
受信者端末220が、発信者端末210から送信された暗号化情報を受信し、復号部221により情報の復号を行う。復号部221は、まず、図示しない通信制御手段にて受信した暗号化情報をデータ記憶部222に格納し、当該データ記憶部222のメッセージヘッダMH及び受信グループGUのIDの集合Gから閾値kを取得する。具体的には、メッセージヘッダMHの要素数をhとすれば、これと受信グループGUの要素数mとから、閾値k(=m−h)が算出される。そして、当該閾値kに相当するk人の受信者の受信者端末220との間でディーラ230から配布された秘密鍵siを交換して多項式f(x)を復元し、グループ鍵sGを求める。次に、データ記憶部222から暗号化情報を読み出し、求めたグループ鍵sGを用いてメッセージボディMBのデータを復号する。
【0032】
以上のようにして、発信者端末210がマルチキャストで配信した暗号化された情報を、受信者端末220のうち、閾値kを満足する数の受信者端末220が共同することによって復号し、取得することができる。復号された情報は、受信者端末220のデータ記憶部222に格納され、必要に応じてディスプレイ装置などにより出力される。また、本実施の形態では、各受信者端末220の秘密鍵siを交換して暗号化データを復号するため、一度データの復号を行うと協力した受信者端末220の間で互いの秘密鍵siが知られてしまう。したがって、ディーラ230から配布された秘密鍵siは一度の復号あるいは単一のデータに対する復号というように限定的に使用され、データの復号を行う場合あるいは他のデータを復号する場合に、その都度ディーラ230から受信者端末220へ新たな秘密鍵siを配布することが必要である。
【0033】
〔第2の実施の形態〕
次に、第2の実施の形態として、ディーラを設置しないピア・ツー・ピアモデルにおいて、各ユーザの端末装置が生成した公開鍵と秘密鍵とを用いて配信情報の暗号化及び復号を行う情報配信システムについて説明する。
第2の実施の形態では、第1の実施の形態で定義した参加者のうち、ディーラを除く発信者及び受信者において暗号方法が実現される。
【0034】
図4は、第2の実施の形態を実現する情報配信システムのシステム構成を示す図である。
図4を参照すると、本実施の形態の情報配信システムは、上記発信者が使用する発信者端末410と、上記受信者が使用する受信者端末420とを備えるネットワークシステムである。
【0035】
発信者端末410及び受信者端末420は、パーソナルコンピュータやワークステーション、その他のコンピュータ装置、ネットワーク機能を備えたPDA(Personal Digital Assistant)、携帯電話などの情報端末にて実現される。また、発信者端末410と受信者端末420とは、所定の情報配信における役割を意味しており、ネットワークを介して接続された各端末装置が、発信者端末410及び受信者端末420になり得る。なお、情報配信を行う際は、本実施の形態における情報配信先となり得る(例えば本実施の形態による情報配信システムのメンバーとして登録された)全ての端末装置の中から任意のサブセットを受信グループとして選択し、当該受信グループに対して行う。すなわち、情報配信システムを構成する全ての端末装置のうちで、発信者端末410によって受信グループに選択されたサブセットに含まれる端末装置が受信者端末420となる。受信グループは、最大で、ネットワークを介して接続されている全ての端末装置にて形成されることとなる。
【0036】
図5は、発信者端末410及び受信者端末420の機能構成を示す図である。図5を参照すると、発信者端末410は、受信者端末420に配信する配信情報や受信グループのメンバーリストなどを格納したデータ記憶部411と、受信者端末420の公開鍵を格納する公開鍵データベース412と、情報配信の宛先となる受信者端末420の公開鍵を用いてグループ公開鍵を生成するグループ公開鍵生成部413と、生成したグループ公開鍵を用いて配信情報を暗号化する暗号化部414とを備える。データ記憶部411及び公開鍵データベース412はRAMなどのメモリで、グループ公開鍵生成部413及び暗号化部414はプログラム制御されたCPUで実現することができる。かかるプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供することができる。また、発信者端末410は、図示しない通信制御手段及びネットワークインターフェイスにより、ネットワークを介して受信者端末420とデータ通信を行う。
【0037】
受信者端末420は、自装置の公開鍵及び秘密鍵を生成する鍵生成部421と、生成した秘密鍵を用いて発信者端末410から配信された配信情報を復号する復号部422と、復号された情報などを格納するデータ記憶部423とを備える。鍵生成部421及び復号部422はプログラム制御されたCPUで、データ記憶部423はRAMなどのメモリで実現することができる。CPUを制御するプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供することができる。また、受信者端末420は、図示しない通信制御手段及びネットワークインターフェイスにより、ネットワークを介して発信者端末410とデータ通信を行う。さらに、受信者端末420は、復号された情報を、データ記憶部423に格納する他に、図示しないディスプレイ装置や音声出力装置などの出力デバイスにて出力することもできる。なお、鍵生成部421は、実際には、本実施の形態の情報配信システムを構成する全ての端末装置に設けられているが、ここでは、情報の送受信に関する構成を考慮して、受信者端末420の構成要素として説明した。
【0038】
図6は、上記のように構成された本実施の形態の情報配信システムにおける情報配信の手順を説明する図である。
図6を参照すると、本実施の形態による情報通信は、大別して1.秘密鍵と公開鍵の生成、2.発信者のグループ決定とグループ公開鍵の生成、3.情報の暗号化と発信、4.情報受信と復号処理の4つのフェーズからなる。次に、各フェーズについて詳細に説明する。
なお、第1の実施の形態の場合と同様に、以下の説明において、pは大きな素数、qはp−1を割り切るような素数、gは有限体Zp上の位数qの元とする。
【0039】
1.秘密鍵と公開鍵の生成
本実施の形態による情報配信システムを構成するN台の端末装置Si,i=1,・・・,Nが、鍵生成部421により、秘密鍵と公開鍵とを生成する。
図7は、鍵生成部421による秘密鍵及び公開鍵の生成手順を説明するフローチャートである。
図7を参照すると、鍵生成部421は、まず、乱数生成器にて生成した乱数を用いて秘密鍵siを生成する(ステップ701)。次に、
y=gSi,(mod p)
を計算して公開鍵yを求める(ステップ702)。以上のようにして生成された秘密鍵siはデータ記憶部423に格納され、公開鍵yは公開される(ステップ703)。公開鍵yの公開方法は、マルチキャストにより情報配信システムにおける他のN−1台の端末装置に配信しても良いし、ネットワーク上に公開鍵yの保管用のサーバを設けておいて登録するようにしても良い。
【0040】
2.発信者のグループ決定とグループ公開鍵の生成
発信者端末410が、ネットワークを構成する端末装置の全体集合の中から情報の配信先となる端末装置を選び、受信グループGU={Sg1,・・・,Sgm}とする。また、当該受信グループGUを構成する受信者端末420のIDの集合をG={g1,・・・,gm}とする。このとき、受信グループGUのメンバー、すなわち受信者の数はmである。次に、何人のメンバーが集まれば復号できるかを指定する閾値kを決定する。そして、グループ公開鍵生成部413により、この受信グループGUに対するグループ公開鍵yGを生成する。
【0041】
ここで、グループ公開鍵yGの生成方法について、さらに詳細に説明する。
図8は、発信者端末410のグループ公開鍵生成部413によるグループ公開鍵yGの生成方法を説明するフローチャートである。
初期動作として、発信者端末410は、情報配信システムを構成する各端末装置の公開鍵yを取得し、公開鍵データベース412に格納しておく。また、受信グループGUのメンバーリスト及び閾値kをデータ記憶部411に格納する。なお、受信グループGUのメンバーリストは、当該受信グループGUに属する各受信者端末420に対しても送信され、データ記憶部423に格納される。
図8に示すように、発信者端末410のグループ公開鍵生成部413は、まず、公開鍵データベース412から各端末装置の公開鍵yを入力し、データ記憶部411から受信グループGUのメンバーリスト及び閾値kを入力する(ステップ801)。そして、次の数2式によりグループ公開鍵yGを算出する(ステップ802)。
【数2】
Figure 0003864247
【0042】
次に、グループ公開鍵生成部413は、m−k個の仮想点の集合P=p1,・・・,pm-kを、他のユーザIDと重ならないように選び(ステップ803)、その仮想点上での公開鍵ypxを、次の数3式にて算出する(ステップ804)。
【数3】
Figure 0003864247
そして、これらm−k個の仮想点の公開鍵のリストを生成し(ステップ805)、グループ公開鍵yGと共にデータ記憶部411に格納する(ステップ806)。
【0043】
3.情報の暗号化と発信
発信者端末410が、暗号化部414により配信情報の暗号化を行う。
図9は、配信情報の暗号化の手順を説明するフローチャートである。
図9を参照すると、暗号化部414は、まず、データ記憶部411からグループ公開鍵yGと、仮想点の公開鍵のリストと、配信情報であるデータを入力する(ステップ901)。そして、セッション鍵Kを生成し(ステップ902)、このセッション鍵KをElGamal暗号によってグループ公開鍵yGで暗号化する(ステップ903)。
Enck=(A,B)=(gr,KyG r
ここで、rは任意の乱数である。
【0044】
次に、暗号化部414は、メッセージヘッダMHとして、先に算出した仮想点上での公開鍵ypxを使ったリストを作る(ステップ904)。
MH=<(p1,yp1 r),・・・,(pm-k,ypm-k r)>
次に、配信情報であるデータをセッション鍵Kで次のように暗号化し、メッセージボディMBとする(ステップ905)。
EncData=EK(data)
そして、以上のように生成されたメッセージヘッダMHとメッセージボディMBの全体を、データ記憶部411に格納する。この後、図示しない通信制御手段が、データ記憶部411に格納されているメッセージヘッダMHとメッセージボディMBの全体を読み出し、受信グループGUに属する受信者端末420に対してマルチキャストする(ステップ906)。
なお、本実施の形態では、セッション鍵Kに対するグループ公開鍵yGを用いた暗号化の手法としてElGamal暗号による手法を用いたが、他の有限体上の暗号系、例えば楕円暗号による暗号化手法を用いることもできる。
【0045】
4.情報受信と復号処理
受信者端末420が、発信者端末410から送信された暗号化情報を受信し、復号部422により情報の復号を行う。
図10は、受信情報の復号手順を説明するフローチャートである。
図10を参照すると、復号部422は、まず、予め発信者端末410から受信してデータ記憶部423に格納されている受信グループGUのメンバーリストと、同じくデータ記憶部423に保持されている自装置の秘密鍵siとを入力し、さらに発信者端末410から配信された暗号化情報を入力する(ステップ1001)。
【0046】
次に、復号部422は、自装置の秘密鍵siを用いて部分的な復号結果である部分復号情報ASiを計算し、データ記憶部423に格納する(ステップ1002)。これは、後述のように、セッション鍵Kを復元可能なグループ公開鍵yGに関する情報である。そして、発信者端末410から受信した暗号化情報のメッセージヘッダMHを参照して閾値kを確認し、受信グループGUのメンバーリストを参照してk−1台の受信者端末420との間で、先に算出した部分復号情報ASiを交換する(ステップ1003)。k−1台の受信者端末420(自装置を含む)の部分復号情報ASiが得られると、データ記憶部423に格納されている自装置の部分復号情報ASiと合わせて、次の数4式によって復号情報Af(0)が求まる。
【数4】
Figure 0003864247
【0047】
ここで、yG=gf(0)となっているので、算出された復号情報Af(0)を用い、次の数5式によりセッション鍵Kを復元することができる。
【数5】
Figure 0003864247
最後に、復元されたセッション鍵Kを用いてメッセージボディMBのデータを復号する(ステップ1004)。
【0048】
以上のようにして、マルチキャストで配信した暗号化された情報を、受信者端末420のうち、閾値kを満足する数の受信者端末420が共同することによって復号し、取得することができる。すなわち、本実施の形態によれば、鍵の生成、配布を行うディーラを設けることなく、複数の受信者端末420が共同して暗号化情報を復号するような情報配信システムを実現することが可能となる。復号された情報は、受信者端末420のデータ記憶部423に格納され、必要に応じてディスプレイ装置などにより出力される。なお、第1の実施の形態と同様に、閾値kを受信グループGUに属する全ての受信者端末420の数に設定すれば、当該受信グループGUの受信者端末420の全てが共同して初めて復号されるような暗号化による情報配信が可能となる。
【0049】
本実施の形態によれば、情報配信に用いられる鍵を管理するディーラが不要であるため、ディーラが攻撃されたり、秘密鍵がユーザに配送される際に盗まれたりすることによって鍵に関する情報が漏洩する危険がない。
また、ネットワークを介して相互に接続された端末装置において、任意の端末装置が発信者端末410となり、任意の端末装置のサブセットを受信グループGUとして選択して情報配信を行うことができるため、大規模なネットワークなど、ユーザの全体数の変化を把握することが困難な場合にも対応できるという利点もある。
なお、上記の動作例では、発信者端末410が、受信グループGUのメンバーリストを作成した際に自装置のデータ記憶部411に格納すると共に、配信情報とは別に予め当該受信グループGUに属する各受信者端末420に送信することにより、発信者端末410と受信グループGUの各受信者端末420におけるメンバーリストの同期を取ることとしたが、配信情報と共に送信するなど、他の方法を用いて同期を取ることも可能である。
【0050】
また、上述した各実施の形態では、説明の簡単のため、ネットワークシステムを構成する端末装置に対してIDや鍵(秘密鍵、公開鍵)を設定することとしたが、端末装置を使用するユーザに対してIDや鍵を設定することも可能である。この場合、ユーザが使用する任意の端末装置において自分のIDや鍵を入力(あるいは生成)することにより、当該端末装置が上述した発信者端末410や受信者端末420として動作することとなり、ハードウェアに拘泥しないネットワークシステムが実現される。
【0051】
次に、本実施の形態の適用例について説明する。なお、以下の例は、サービスの提供形態によって第1の実施の形態または第2の実施の形態のいずれを適用することもできるが、ここでは第2の実施の形態を適用した例について説明する。
〔適用例1〕
インターネットなどにおけるコンテンツ配信システムへの適用について説明する。
今日、Gnutellaなどのように、インターネット上でピア・ツー・ピアモデルによるコンテンツ配信システムが構築されている。そこで、この種のコンテンツ配信システムに上記第2の実施の形態による暗号手法を適用すれば、配信情報が所定の配信先以外に盗まれることのない安全なシステムを実現することができる。
【0052】
図11は、第2の実施の形態による暗号手法を適用したコンテンツ配信システムの構成を示す図である。
図11において、コンテンツ供給者111(図11には、コンテンツ供給者111a、111bが記載されているが、特に区別する必要がない場合はコンテンツ供給者111と表記する)は、第2の実施の形態の発信者端末410に相当し、コンテンツ利用者112は、受信者端末420に相当する。
【0053】
コンテンツ供給者111は、システムのユーザ(端末装置)のうち、任意のサブセットを受信グループとして定義し、当該受信グループのメンバーだけが復号化できるようなグループ暗号鍵を構成する。グループ暗号鍵は、コンテンツ利用者112の公開鍵のみから構成できるので、TTPのような信頼機関(ディーラ)は必要ない。
コンテンツ利用者112は、自分の秘密鍵を生成し、この秘密鍵に対応する公開鍵を公開する。上記のように、この公開鍵がグループ暗号鍵の生成に用いられるため、当該公開鍵の公開のみを条件として、本コンテンツ配信システムによるコンテンツの配信を受けることが可能となる。すなわち、ユーザは、ネットワークに接続し公開鍵を公開するだけで、コンテンツ利用者112となることができる。
【0054】
なお、公開鍵を公開したユーザのうち、どのようなサブセットを受信グループとしてコンテンツを配信するかは、コンテンツ供給者111の任意である。したがって、図11に示すように、コンテンツ供給者111aがコンテンツを配信する受信グループの構成メンバーと、コンテンツ供給者111bがコンテンツを配信する受信グループの構成メンバーとが異なる場合もある。また、コンテンツ供給者111aが、1回目のコンテンツ配信と2回目のコンテンツ配信とにおける受信グループの構成メンバーを変更することもできる。
【0055】
このコンテンツ配信システムを使った典型的な運用シナリオは、以下のようになる。
(1)コンテンツ供給者111は、自らのウェブサイトを立ち上げ、利用者を募る。
(2)ネットワークにアクセスしたユーザは、コンテンツ供給者111のサイトに登録することにより、コンテンツ利用者112となる。登録を行うには、少なくとも自分の秘密鍵を生成し、これに対応する公開鍵をコンテンツ供給者111が管理するウェブサイトのメンバーリストに登録することが条件となる。
(3)コンテンツ供給者111は、メンバーリストに登録された公開鍵に基づいて、グループ暗号鍵を生成し、当該グループ鍵でコンテンツを暗号化してマルチキャストする。
(4)コンテンツ利用者112は、メンバーリストを参照しながら、他のグループメンバーと協力してコンテンツを復号し、利用する。
【0056】
登録料が設定されている場合やサービスを有料で提供する場合、例えば、上記シナリオの(2)の段階で、これらの料金の支払いを登録条件に加えても良い。
なお、上記の運用シナリオでは、システムのメンバーとして登録されたコンテンツ利用者112の全てにコンテンツが配信されるが、上述したように、サーバのメンバーリストに登録されたコンテンツ利用者112の一部に対してのみコンテンツを配信することも可能である。例えば、支払われた料金に応じて、配信するコンテンツを変更(コンテンツ全部とサンプルなど)するような運用も可能である。
【0057】
〔適用例2〕
本実施の形態は、受信グループのサイズ(受信者端末420の数)をmとしたとき、1≦k≦mで指定された閾値kの数のメンバーが集まらないと配信された情報を復号することができない。これを積極的に利用することにより、ネットワーク上で一定の人数の合議による議決を伝達するようなアプリケーションを提供することができる。
図12は、第2の実施の形態による暗号手法を適用した合議システムの構成を示す図である。
図12において、議題提供者121は、第2の実施の形態の発信者端末410に相当し、会議の参加者122は、受信者端末420に相当する。
【0058】
図12に示すようなシステムにおいて、閾値kを議決に必要な参加者122の数(例えば過半数)に設定して、議題を送信すると、k人の参加者122がネットワーク上で集まらなければ、議題を読むことができない。一方、この議題に対して議決がなされた場合、当該議題を読むことができた、すなわちk人の参加者122が集まって議題を復号したことを意味している。したがって、当該議決はk人以上の参加者122による合議の結果であり、有効なものとみなすことができる。
【0059】
この合議システムを使った典型的な運用シナリオは、以下のようになる。
(1)議題提供者121は、まず、参加者122宛のグループ鍵を作り、閾値kを議決定数に設定し、配信情報である議題をグループ鍵で暗号化してマルチキャストする。
(2)閾値k以上の参加者122が共同して、配信された議題を復号し、当該議題について合議を行う。
(3)議題に対する返答(議決)が議題提供者121に返送される。これは、k人以上の参加者122による合議の結果であることを意味する。
なお、本適用例では、議題提供者121が議決を受け取ることとしたが、議題提供者121とは別に議決を取得する議決取得者を設け、参加者122による議決を当該議決取得者に送信することもできる。
【0060】
〔適用例3〕
本実施の形態は、単独の受信者端末420では暗号化された配信情報を復号することができない。これを利用して、課金やアクセス回数のカウント(メータリング)を行うシステムを提供することができる。
図13は、第2の実施の形態による暗号手法を適用したメータリングシステムの構成を示す図である。
図13において、コンテンツ提供者131は、第2の実施の形態の発信者端末410に相当し、コンテンツ利用者132は、受信者端末420に相当する。また、メータリングサーバ133は、受信者端末420と共同で暗号化されたコンテンツを復号するために設けられた、受信者として振る舞うサーバである。
【0061】
図13に示すようなシステムにおいて、例えば、受信グループのサイズ(受信者端末420の数)を2とし、受信者の一方をコンテンツ利用者132、もう一方をメータリングサーバ133とする。そして、閾値を2として暗号化された情報を配信すると、コンテンツ利用者132は、配信情報を復号するために、メータリングサーバ133にコンタクトしてセッション鍵の復元に必要な情報を取得することが必須となる。したがって、コンテンツ利用者132がメータリングサーバ133にアクセスした際に、課金やアクセス回数のカウントといった処理を行うことができる。
【0062】
このメータリングシステムを課金システムとして用いた場合の典型的な運用シナリオは、以下のようになる。
(1)コンテンツ提供者131は、コンテンツ利用者132(1人)とメータリングサーバ133の公開鍵からグループ鍵を作り、このグループ鍵でコンテンツを暗号化し、コンテンツ利用者132に送付する。
(2)コンテンツ利用者132は、メータリングサーバ133にアクセスし、その協力によってコンテンツを復号し取得する。ここで、コンテンツ利用者132がメータリングサーバ133にアクセスした際に、課金処理が行われる。
【0063】
〔適用例4〕
本実施の形態は、暗号化された情報を復号するために複数の受信者端末420が協力しなければならない。これを利用して、情報の秘密分散を実現することができる。
図14は、第2の実施の形態による暗号手法を適用した秘密分散システムの構成を示す図である。
図14において、秘密保持者141は、第2の実施の形態の発信者端末410に相当し、秘密分散対象者(図では対象者と表記)142は、受信者端末420に相当する。
【0064】
図14に示すようなシステムにおいて、暗号化情報を配信された受信グループの秘密分散対象者142は、当該暗号化情報の秘密を分散保管しているということになる。すなわち、受信グループに属する秘密分散対象者142のうち、閾値kに相当する数の秘密分散対象者142が集まることによって当該情報の秘密が解除されることとなる。
【0065】
この秘密分散システムを使った典型的なシナリオは、以下のようになる。
(1)秘密保持者141は、秘密分散対象者142の公開鍵からグループ鍵を作り、このグループ鍵で秘密情報を暗号化し配信する。このとき、閾値kを秘密解除に必要な最低人数として設定する。
(2)配信された情報の秘密を解除する必要が生じたときは、k人の分散値保持者が集まることによって、秘密を解除し、情報を取得することができる。
【0066】
〔適用例5〕
本実施の形態は、複数の受信者端末420が協力することによって、各受信者端末420が暗号化された情報を取得することが可能となる。これを利用して、複数のユーザが組となることを条件に、ネットワーク上で提供されるサービスやイベントへの参加権利を付与するシステムを実現することができる。
例えば、ネットワークゲームにおいて、k人の参加者からなる組(パーティ)を単位として参加できるイベントを設定しておき、ゲームサイト(第2の実施の形態の発信者端末410に相当)は、ゲーム参加者(第2の実施の形態の受信者端末420に相当)に対し、k人が協力することによってイベントへの参加権利となる情報を復元できるようなアイテムを配信する。ここで、当該アイテムは、ゲーム参加者の公開鍵から生成されたグループ鍵により暗号化されている。ゲーム参加者は、取得したアイテムに基づき、k人の組を作って情報を復元し、イベントへの参加権利を取得して当該イベントに参加する。
【0067】
【発明の効果】
以上説明したように、本発明によれば、受信グループとして選択されたサブセットに属する端末装置が協力することにより復号できるような暗号化方法及びその復号方法を提供することができる。
また、本発明によれば、この暗号化方法及び復号方法を用いて、安全なマルチキャストによるデータ配信を実現することができる。
【図面の簡単な説明】
【図1】 第1の実施の形態における発信者、受信者及びディーラの関係を説明する図である。
【図2】 第1の実施の形態を実現する情報配信システムのシステム構成を示す図である。
【図3】 第1の実施の形態の情報配信システムにおける情報配信の手順を説明する図である。
【図4】 第2の実施の形態を実現する情報配信システムのシステム構成を示す図である。
【図5】 第2の実施の形態における発信者端末及び受信者端末の機能構成を示す図である。
【図6】 第2の実施の形態の情報配信システムにおける情報配信の手順を説明する図である。
【図7】 第2の実施の形態における鍵生成部による秘密鍵及び公開鍵の生成手順を説明するフローチャートである。
【図8】 第2の実施の形態における発信者端末のグループ公開鍵生成部によるグループ公開鍵の生成方法を説明するフローチャートである。
【図9】 第2の実施の形態における配信情報の暗号化の手順を説明するフローチャートである。
【図10】 第2の実施の形態における受信情報の復号手順を説明するフローチャートである。
【図11】 第2の実施の形態による暗号手法を適用したコンテンツ配信システムの構成を示す図である。
【図12】 第2の実施の形態による暗号手法を適用した合議システムの構成を示す図である。
【図13】 第2の実施の形態による暗号手法を適用したメータリングシステムの構成を示す図である。
【図14】 第2の実施形態による暗号手法を適用した秘密分散システムの構成を示す図である。
【符号の説明】
210、410…発信者端末、211…データ記憶部、212…グループ鍵要求部、213…暗号化部、220、420…受信者端末、221…復号部、222…データ記憶部、230…ディーラ、231…鍵生成部、411…データ記憶部、412…公開鍵データベース、413…グループ公開鍵生成部、414…暗号化部、421…鍵生成部、422…復号部、423…データ記憶部

Claims (13)

  1. ネットワークを介して情報を発信する発信者端末と、
    データを暗号化するための公開鍵と当該公開鍵にて暗号化されたデータを復号するための秘密鍵とを有し、前記ネットワークを介して前記情報を受信する受信者端末とを備え、
    前記発信者端末は、
    情報の配信先となる2以上の受信者端末を含む受信グループを決定し、当該受信グループに属する受信者端末の公開鍵の値を解に持つ多項式の定数項を含む暗号処理用のグループ鍵を生成してデータ記憶手段に格納するグループ鍵生成手段と、
    所定のセッション鍵を用いて送信データを暗号化し、前記グループ鍵を用いて有限体上の離散対数問題を用いる暗号系により当該セッション鍵を暗号化し、かつ暗号化された当該セッション鍵を復号するために共同することが必要な前記受信者端末の数である閾値を設定し、前記受信グループに属する受信者端末の数から当該閾値を引いた数の前記多項式の解を含むメッセージヘッダを生成し、暗号化された前記送信データおよび前記セッション鍵を含む発信情報に当該メッセージヘッダを付加する暗号化手段と、
    暗号化され前記メッセージヘッダが付加された前記発信情報を前記受信グループに属する受信者端末に送信する通信手段とを備え、
    前記受信者端末は、
    前記発信者端末から送信された前記発信情報を受信し、かつ他の受信者端末との間でデータの送受信を行う通信手段と、
    受信した前記発信情報から自装置の前記秘密鍵を用いて前記セッション鍵の復号情報を計算し、前記受信グループに属する他の受信者端末から当該他の受信者端末において計算された復号情報を取得し、取得した当該他の受信者端末の復号情報と自装置の復号情報とを用いて当該セッション鍵を復元し、復元された当該セッション鍵を用いて暗号化された前記送信データを復号する復号手段と
    を備えることを特徴とするネットワークシステム。
  2. 前記発信者端末の前記暗号化手段は、前記有限体上の離散対数問題を用いる暗号系としてElGamal暗号により前記セッション鍵を暗号化することを特徴とする請求項1に記載のネットワークシステム。
  3. 前記発信者端末は、暗号化された前記発信情報を復号するために共同することが必要な前記受信者端末の数である閾値を設定し、前記受信グループに属する受信者端末の数から前記閾値を引いた数の前記多項式の解を含むメッセージヘッダを生成し、当該メッセージヘッダを前記暗号化された発信情報に付加して前記受信グループに属する受信者端末に送信し、
    前記受信者端末は、受信した前記メッセージヘッダから前記閾値を算出し、前記受信グループに属する当該閾値に相当する数の前記他の受信者端末から前記復号情報を取得し、取得した当該他の受信者端末の当該復号情報と自装置の前記復号情報とを用いて前記セッション鍵を復元することを特徴とする請求項1に記載のネットワークシステム。
  4. ネットワークを介して情報を配信する端末装置において、
    情報の配信先となる2以上の受信者端末を含む受信グループを決定し、当該受信グループに属する受信者端末の公開鍵の値を解に持つ多項式の定数項を含む暗号処理用のグループ鍵を生成してデータ記憶手段に格納するグループ鍵生成手段と、
    所定のセッション鍵を用いて送信データを暗号化し、前記グループ鍵を用いて有限体上の離散対数問題を用いる暗号系により当該セッション鍵を暗号化し、かつ暗号化された当該セッション鍵を復号するために共同することが必要な前記受信者端末の数である閾値を設定し、前記受信グループに属する受信者端末の数から当該閾値を引いた数の前記多項式の解を含むメッセージヘッダを生成し、暗号化された前記送信データおよび前記セッション鍵を含む発信情報に当該メッセージヘッダを付加して前記データ記憶手段に格納する暗号化手段と、
    前記データ記憶手段から暗号化され前記メッセージヘッダが付加された前記発信情報を読み出し、前記ネットワークを介して前記受信グループに属する前記受信者端末に送信する送信手段と
    を備えることを特徴とする端末装置。
  5. 前記暗号化手段は、暗号化された前記発信情報を復号するために共同することが必要な前記受信者端末の数である閾値を設定し、前記受信グループに属する受信者端末の数から当該閾値を引いた数の前記多項式の解を含むメッセージヘッダを生成し、当該メッセージヘッダを前記暗号化された発信情報に付加し、
    前記送信手段は、前記メッセージヘッダの付加された前記暗号化された発信情報を、前記受信グループに属する受信者端末に送信することを特徴とする請求項4に記載の端末装置。
  6. ネットワークを介して配信された情報を受信する端末装置において、
    前記ネットワークを介してデータの送受信を行い、受信グループに属する2以上の前記端末装置の公開鍵の値を解に持つ多項式の定数項を含む暗号処理用のグループ鍵を用いて有限体上の離散対数問題を用いる暗号系により暗号化されたセッション鍵と、暗号化前の当該セッション鍵を用いて暗号化された送信データとを含む暗号化データ受信する通信手段と、
    前記通信手段にて受信した暗号化データをデータ記憶手段に格納し、当該暗号化データから自装置の秘密鍵を用いて前記セッション鍵の復号情報を計算し、前記受信グループに属する他の端末装置から当該他の端末装置において計算された復号情報を取得し、取得した当該他の端末装置の復号情報と自装置の復号情報とを用いて当該セッション鍵を復元し、復元された当該セッション鍵を用いて暗号化された前記送信データを復号する復号手段と
    を備えることを特徴とする端末装置。
  7. 前記復号手段は、前記受信グループに属する端末装置の数から、暗号化された前記暗号化データを復号するために共同することが必要な前記端末装置の数である閾値を引いた数の前記多項式の解を含むメッセージヘッダが当該暗号化データに付加されている場合に、受信した前記メッセージヘッダから前記閾値を算出し、受信グループに属する当該閾値に相当する数の前記他の受信者端末から前記復号情報を取得し、取得した当該他の受信者端末の当該復号情報と自装置の前記復号情報とを用いて前記セッション鍵を復元することを特徴とする請求項6に記載の端末装置。
  8. コンピュータによる情報の配信方法であって、
    前記コンピュータのグループ鍵生成部が、情報の配信先となる2以上の受信者のID情報である公開鍵をメモリから読み出し、当該公開鍵の値を解に持つ多項式の定数項を含む暗号処理用のグループ鍵を生成するステップと、
    前記コンピュータの暗号化部が、所定のセッション鍵を用いて送信データを暗号化し、前記グループ鍵を用いて有限体上の離散対数問題を用いる暗号系により当該セッション鍵を暗号化するステップと
    前記暗号化部が、前記暗号化部により暗号化された前記セッション鍵を復号するために共同することが必要な前記受信者の数である閾値を設定し、前記受信者の数から当該閾値を引いた数の前記多項式の解を含むメッセージヘッダを生成するステップと、
    前記コンピュータが、当該メッセージヘッダを前記暗号化された発信情報に付加し、前記受信者の端末装置へ送信するステップと
    を含むことを特徴とする情報の配信方法。
  9. コンピュータによるデータの復号方法であって、
    前記コンピュータが、受信グループに属する2以上の端末装置の公開鍵の値を解に持つ多項式の定数項を含む暗号処理用のグループ鍵を用いて有限体上の離散対数問題を用いる暗号系により暗号化されたセッション鍵と、暗号化前の当該セッション鍵を用いて暗号化された送信データとを含む暗号化データを受信して記憶装置に格納するステップと、
    前記コンピュータの復号部が、前記暗号化データから自装置の秘密鍵を用いて前記セッション鍵の復号情報を計算するステップと、
    前記復号部が、前記受信グループに属する他の端末装置から当該他の端末装置において計算された復号情報を取得するステップと、
    前記復号部が、取得した前記他の端末装置の復号情報と自装置の復号情報とを用いて当該セッション鍵を復元し、復元された当該セッション鍵を用いて暗号化された前記送信データを復号するステップと
    を含むことを特徴とするデータの復号方法。
  10. コンピュータを、
    情報の配信先となる2以上の受信者端末を含む受信グループを決定し、当該受信グループに属する受信者端末の公開鍵の値を解に持つ多項式の定数項を含む暗号処理用のグループ鍵を生成してデータ記憶手段に格納するグループ鍵生成手段と、
    所定のセッション鍵を用いて送信データを暗号化し、前記グループ鍵を用いて有限体上の離散対数問題を用いる暗号系により当該セッション鍵を暗号化し、かつ暗号化された当該セッション鍵を復号するために共同することが必要な前記受信者端末の数である閾値を設定し、前記受信グループに属する受信者端末の数から当該閾値を引いた数の前記多項式の解を含むメッセージヘッダを生成し、暗号化された前記送信データおよび前記セッション鍵を含む発信情報に当該メッセージヘッダを付加して前記データ記憶手段に格納する暗号化手段と、
    前記データ記憶手段から暗号化され前記メッセージヘッダが付加された前記発信情報を読み出し、ネットワークを介して前記受信グループに属する前記受信者端末に送信する送信手段として
    機能させることを特徴とするプログラム。
  11. 前記暗号化手段の機能として、暗号化された前記発信情報を復号するために共同することが必要な前記受信者端末の数である閾値を設定し、前記受信グループに属する受信者端末の数から当該閾値を引いた数の前記多項式の解を含むメッセージヘッダを生成し、当該メッセージヘッダを前記暗号化された発信情報に付加する処理を前記コンピュータに実行させ、
    前記送信手段の機能として、前記メッセージヘッダの付加された前記暗号化された発信情報を、前記受信グループに属する受信者端末に送信する処理を前記コンピュータに実行させることを特徴とする請求項10に記載のプログラム。
  12. コンピュータを、
    ネットワークを介してデータの送受信を行い、受信グループに属する2以上の端末装置の公開鍵の値を解に持つ多項式の定数項を含む暗号処理用のグループ鍵を用いて有限体上の離散対数問題を用いる暗号系により暗号化されたセッション鍵と、暗号化前の当該セッション鍵を用いて暗号化された送信データとを含む暗号化データを受信する通信手段と、
    前記通信手段にて受信した暗号化データをデータ記憶手段に格納し、当該暗号化データから自装置の秘密鍵を用いて前記セッション鍵の復号情報を計算し、前記受信グループに属する他の端末装置から当該他の端末装置において計算された復号情報を取得し、取得した当該他の端末装置の復号情報と自装置の復号情報とを用いて当該セッション鍵を復元し、復元された当該セッション鍵を用いて暗号化された前記送信データを復号する復号手段として
    機能させることを特徴とするプログラム。
  13. 前記復号手段の機能として、前記受信グループに属する端末装置の数から、暗号化された前記暗号化データを復号するために共同することが必要な前記端末装置の数である閾値を引いた数の前記多項式の解を含むメッセージヘッダが当該暗号化データに付加されている場合に、受信した前記メッセージヘッダから前記閾値を算出し、前記受信グループに属する当該閾値に相当する数の前記他の受信者端末から前記復号情報を取得し、取得した当該他の受信者端末の当該復号情報と自装置の前記復号情報とを用いて前記セッション鍵を復元する処理を前記コンピュータに実行させることを特徴とする請求項12に記載のプログラム。
JP2001322742A 2001-10-19 2001-10-19 ネットワークシステム、端末装置、情報の配信方法及び復号方法 Expired - Fee Related JP3864247B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001322742A JP3864247B2 (ja) 2001-10-19 2001-10-19 ネットワークシステム、端末装置、情報の配信方法及び復号方法
US10/271,809 US7346171B2 (en) 2001-10-19 2002-10-15 Network system, terminal, and method for encryption and decryption

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001322742A JP3864247B2 (ja) 2001-10-19 2001-10-19 ネットワークシステム、端末装置、情報の配信方法及び復号方法

Publications (2)

Publication Number Publication Date
JP2003143121A JP2003143121A (ja) 2003-05-16
JP3864247B2 true JP3864247B2 (ja) 2006-12-27

Family

ID=19139740

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001322742A Expired - Fee Related JP3864247B2 (ja) 2001-10-19 2001-10-19 ネットワークシステム、端末装置、情報の配信方法及び復号方法

Country Status (2)

Country Link
US (1) US7346171B2 (ja)
JP (1) JP3864247B2 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030235309A1 (en) * 2002-03-08 2003-12-25 Marinus Struik Local area network
EP1565830A4 (en) 2002-11-18 2008-03-12 America Online Inc LISTS OF PEOPLE
US7610485B1 (en) * 2003-08-06 2009-10-27 Cisco Technology, Inc. System for providing secure multi-cast broadcasts over a network
KR100567822B1 (ko) 2003-10-01 2006-04-05 삼성전자주식회사 공개 키 기반 구조를 이용한 도메인 형성 방법
US7860243B2 (en) * 2003-12-22 2010-12-28 Wells Fargo Bank, N.A. Public key encryption for groups
US8139770B2 (en) 2003-12-23 2012-03-20 Wells Fargo Bank, N.A. Cryptographic key backup and escrow system
US8051489B1 (en) * 2005-03-18 2011-11-01 Oracle America, Inc. Secure configuration of a wireless sensor network
US8295492B2 (en) * 2005-06-27 2012-10-23 Wells Fargo Bank, N.A. Automated key management system
EP1839405B1 (en) * 2005-10-27 2013-04-24 NDS Limited Network security system
EP1971072A4 (en) * 2005-12-01 2012-07-25 Nec Corp SYSTEM AND METHOD FOR ELECTRONIC AUCTIONS
US20080016357A1 (en) * 2006-07-14 2008-01-17 Wachovia Corporation Method of securing a digital signature
CA2706182A1 (en) * 2007-12-13 2009-06-18 Pgp Corporation Apparatus and method for processing fragmented cryptographic keys
CN103186720B (zh) * 2011-12-28 2016-03-09 北大方正集团有限公司 一种数字版权管理方法、设备及系统
JP6265783B2 (ja) * 2014-03-06 2018-01-24 キヤノン株式会社 暗号化/復号化システム及びその制御方法、並びにプログラム
DE102014011687B3 (de) * 2014-08-04 2016-02-04 Giesecke & Devrient Gmbh Kommunikationssystem mit PKI-Schlüsselpaar für mobiles Endgerät
US9639687B2 (en) * 2014-11-18 2017-05-02 Cloudfare, Inc. Multiply-encrypting data requiring multiple keys for decryption
CN106452770B (zh) * 2015-08-12 2020-10-13 深圳市腾讯计算机系统有限公司 一种数据加密方法、解密方法、装置和系统
WO2017207057A1 (en) * 2016-06-02 2017-12-07 Kobil Systems Gmbh Secure messaging
US10367792B2 (en) * 2016-08-25 2019-07-30 Orion Labs End-to end encryption for personal communication nodes
US11025596B1 (en) * 2017-03-02 2021-06-01 Apple Inc. Cloud messaging system
US10374808B2 (en) 2017-03-08 2019-08-06 Bank Of America Corporation Verification system for creating a secure link
US10361852B2 (en) 2017-03-08 2019-07-23 Bank Of America Corporation Secure verification system
US10425417B2 (en) 2017-03-08 2019-09-24 Bank Of America Corporation Certificate system for verifying authorized and unauthorized secure sessions
US10432595B2 (en) * 2017-03-08 2019-10-01 Bank Of America Corporation Secure session creation system utililizing multiple keys
JP7301039B2 (ja) 2017-08-15 2023-06-30 エヌチェーン ライセンシング アーゲー 閾値デジタル署名方法及びシステム
US11646877B2 (en) * 2019-05-14 2023-05-09 Samsung Sds Co., Ltd. Apparatus and method for generating secret key, apparatus and method for generating evaluation key
US11398916B1 (en) 2019-12-18 2022-07-26 Wells Fargo Bank, N.A. Systems and methods of group signature management with consensus
US11509484B1 (en) 2019-12-18 2022-11-22 Wells Fargo Bank, N.A. Security settlement using group signatures
US11611442B1 (en) 2019-12-18 2023-03-21 Wells Fargo Bank, N.A. Systems and applications for semi-anonymous communication tagging
US11765143B2 (en) * 2021-05-21 2023-09-19 Zoom Video Communications, Inc. Systems and methods for securing videoconferencing meetings

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5475757A (en) * 1994-06-07 1995-12-12 At&T Corp. Secure data transmission method
US5768391A (en) * 1995-12-22 1998-06-16 Mci Corporation System and method for ensuring user privacy in network communications
US5974151A (en) * 1996-11-01 1999-10-26 Slavin; Keith R. Public key cryptographic system having differential security levels
JPH10260903A (ja) 1997-03-19 1998-09-29 Hitachi Ltd グループ暗号方法、及びファイル暗号システム
US6295361B1 (en) * 1998-06-30 2001-09-25 Sun Microsystems, Inc. Method and apparatus for multicast indication of group key change
US6502135B1 (en) * 1998-10-30 2002-12-31 Science Applications International Corporation Agile network protocol for secure communications with assured system availability
JP2000151573A (ja) 1998-11-11 2000-05-30 Matsushita Electric Ind Co Ltd グループ鍵復元システム
US6820204B1 (en) * 1999-03-31 2004-11-16 Nimesh Desai System and method for selective information exchange
US6549935B1 (en) * 1999-05-25 2003-04-15 Silverbrook Research Pty Ltd Method of distributing documents having common components to a plurality of destinations
US6263435B1 (en) * 1999-07-06 2001-07-17 Matsushita Electric Industrial Co., Ltd. Dual encryption protocol for scalable secure group communication
US6240188B1 (en) * 1999-07-06 2001-05-29 Matsushita Electric Industrial Co., Ltd. Distributed group key management scheme for secure many-to-many communication
JP4002380B2 (ja) * 2000-03-15 2007-10-31 日本電気株式会社 マルチキャストシステム、認証サーバ端末、マルチキャスト受信者端末管理方法、並びに記録媒体

Also Published As

Publication number Publication date
JP2003143121A (ja) 2003-05-16
US7346171B2 (en) 2008-03-18
US20030081789A1 (en) 2003-05-01

Similar Documents

Publication Publication Date Title
JP3864247B2 (ja) ネットワークシステム、端末装置、情報の配信方法及び復号方法
US6941457B1 (en) Establishing a new shared secret key over a broadcast channel for a multicast group based on an old shared secret key
US7181014B1 (en) Processing method for key exchange among broadcast or multicast groups that provides a more efficient substitute for Diffie-Hellman key exchange
CN109756329B (zh) 基于私钥池的抗量子计算共享密钥协商方法和系统
US6987855B1 (en) Operational optimization of a shared secret Diffie-Hellman key exchange among broadcast or multicast groups
WO2019158209A1 (en) Methods and systems for secure data exchange
TWI704793B (zh) 物件共享系統及方法
JPH10301491A (ja) 暗号通信方法とシステム
CN103534975A (zh) 根据公开密钥发现用于密钥管理的安全关联
Bilal et al. A secure key agreement protocol for dynamic group
JP4156588B2 (ja) 暗号通信システム、その鍵配布サーバ、端末装置及び鍵共有方法
KR100670017B1 (ko) 조합에 기반한 브로드캐스트 암호화 방법
WO2009143766A1 (zh) 一种密钥分配方法及系统和在线更新公钥的方法及系统
Pal et al. P3S: A privacy preserving publish-subscribe middleware
US20040073790A1 (en) Intermediated delivery scheme for asymmetric fair exchange of electronic items
Just et al. On key distribution via true broadcasting
Wang et al. Proxy re-encryption in access control framework of information-centric networks
US20030007645A1 (en) Method and system for allowing a sender to send an encrypted message to a recipient from any data terminal
CN111656728B (zh) 一种用于安全数据通信的设备、系统和方法
JP2007060213A (ja) 鍵配布装置及び鍵配布方法
Onieva et al. Non-repudiation protocols for multiple entities
Onieva et al. Enhancing certified email service for timeliness and multicasting
JPH11187008A (ja) 暗号鍵の配送方法
Di Crescenzo et al. Efficient kerberized multicast in a practical distributed setting
JP4349724B2 (ja) メールサーバ及びメーリングリストシステム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060613

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060807

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: 20060829

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20060831

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060912

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: 20091013

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101013

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101013

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111013

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees