JP5279824B2 - 情報処理装置及びプログラム - Google Patents

情報処理装置及びプログラム Download PDF

Info

Publication number
JP5279824B2
JP5279824B2 JP2010509022A JP2010509022A JP5279824B2 JP 5279824 B2 JP5279824 B2 JP 5279824B2 JP 2010509022 A JP2010509022 A JP 2010509022A JP 2010509022 A JP2010509022 A JP 2010509022A JP 5279824 B2 JP5279824 B2 JP 5279824B2
Authority
JP
Japan
Prior art keywords
information
order information
communication devices
group
secret information
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
JP2010509022A
Other languages
English (en)
Other versions
JPWO2009130795A1 (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2009130795A1 publication Critical patent/JPWO2009130795A1/ja
Application granted granted Critical
Publication of JP5279824B2 publication Critical patent/JP5279824B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/065Network architectures or network communication protocols for network security for supporting key management in a packet data network for group communications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、暗号技術を利用して、例えばサーバ装置(以下、サーバともいう)から複数の正当な端末装置(以下、端末ともいう)だけに情報を同報送信(マルチキャスト)する技術に関する。
セキュアマルチキャストシステムは、暗号技術を利用して、サーバから複数の正当な端末だけに情報を同報送信(マルチキャスト)し、失効した端末(群)には、たとえ失効端末同士で結託があったとしても情報が一切漏れないようにする通信システムである。
ここで、正当な端末とは、サーバから送信される暗号化メッセージの復号が許される端末であり、失効した端末(群)とは、サーバから送信される暗号化メッセージの復号が禁止される端末(群)である。
このようなセキュアマルチキャストシステムに関して、端末が保持するデバイス鍵の数・マルチキャストの通信オーバーヘッド・端末が鍵を導出するための演算オーバーヘッドをできるだけ小さくする様々な技術が提案されている。
非特許文献1にて開示されているComplete Subtree法(CS法)やSubset Difference法(SD法)は、サーバが各端末を木構造の葉(最下層)に配置し、葉を含む各ノードに秘密情報を割り当て、各端末が自分のノードから根ノードまでのパス上にある各ノードに対応する秘密情報を保持する方式である。
これらの方式では、サーバがマルチキャストを行う際に、複数の正当な端末を、適切な方法で、端末の部分集合の和S1+S2+…+Sjで表現する。その後、S1に属する端末だけが保持する(もしくは導出可能である)暗号鍵K1、S2に属する端末だけが保持する暗号鍵K2、…、Sjに属する端末だけが保持する暗号鍵Kjを用いて、送信メッセージ(もしくは送信メッセージを暗号化するためのセッション鍵K)(本明細書では、送信メッセージ及びセッション鍵Kをまとめて送信メッセージと表記する)を暗号化する。
つまり、サーバは、失効した端末は保持していない(導出できない)が、正当な端末は保持している(導出できる)鍵を抽出し、抽出した鍵の各々を用いてメッセージを暗号化し、暗号化メッセージを同報送信する。
上記のように暗号化を行うことで、正当な端末だけが情報を取得することができるセキュアマルチキャストが実現できる。
このとき、通信オーバーヘッドは和で表現した際の要素数jに比例する値となるが、CS法やSD法では、各端末に持たせる秘密情報を工夫することによって、jの値を小さくすることを実現している。
また、特許文献1では、CS法やSD法で用いる木構造を、サーバが複数保持することで、通信オーバーヘッドを低減する方式が開示されている。
特開2006−13790号公報 D.Naor, M.Naor, and J.Lostpiech, "Revocation and tracing schemes for stateless receivers," Advances in Cryptology − CRYPTO’01, LNCS vol.2139, pp.41−62, 2001.
n個の端末があるとき、そのうちr個を失効させた残りに対してセキュアマルチキャストを行うための通信オーバーヘッドはCS法でO(r log(n/r))、SD法でO(r)である(Oはランダウの記法、logは底を2とする対数を表す。以下においても同様)。
いずれもrにほぼ比例する形で通信オーバーヘッドが大きくなるため、特に狭帯域の通信を行う際に通信帯域を圧迫してしまうという課題がある。
上述したように、セキュアマルチキャストにおいては、正当な端末に対して抽出された鍵の各々を用いて送信メッセージを暗号化し、暗号化した全メッセージをマルチキャスト送信する。このため、サーバからマルチキャストされる暗号化メッセージの数は、抽出された鍵数に一致することになる。
従って、通信オーバーヘッドを小さくするためには、抽出される鍵の数をできるだけ小さくすることが必要である。
特許文献1ではサーバが複数の木構造を保持することで通信オーバーヘッドを低減する方法が開示されているが、複数木構造の構成法とその効果については、装置・利用者の特性に基づいて構成するとの記述に留まっており、構成法とその効果との関係を明白に開示しているものではない。
本発明は、上記の課題を解決することを主な目的としており、セキュアマルチキャストにおいて使用する秘密情報の数を抑制し、通信オーバーヘッドを小さくすることを主な目的とする。
本発明に係る情報処理装置は、複数の通信装置に接続され、前記複数の通信装置の中から選択された2つ以上の通信装置に、秘密情報を用いて送信メッセージを暗号化した暗号化メッセージをマルチキャスト送信する情報処理装置であって、
前記複数の通信装置に対して複数種の順序付けを行い、各々の順序付けにおいて近接して順序付けられている2つ以上の通信装置同士をグループ化し、各々の順序付け及びグループ化の内容を示す複数の順序情報を生成する順序情報生成部と、
順序情報ごとに、各々の通信装置において暗号化メッセージの復号に利用される装置別秘密情報を通信装置単位で割り当てるとともに同じグループに分類される2つ以上の同一グループ通信装置において共通に暗号化メッセージの復号に利用できるグループ別秘密情報をグループ単位で割り当てる秘密情報割り当て部と、
前記複数の通信装置の中からマルチキャスト送信の送信先となる2つ以上の通信装置が送信先通信装置として選択された際に、各順序情報に示されるグループごとに、同一グループ通信装置と前記送信先通信装置とを比較して、送信メッセージの暗号化に用いる秘密情報の組合せを導出する組合せ導出部とを有することを特徴とする。
前記組合せ導出部は、
全ての送信先通信装置が暗号化メッセージを復号できる秘密情報の組合せであって、最も数の少ない秘密情報の組合せを導出することを特徴とする。
前記組合せ導出部は、
各順序情報に示されるグループごとに、同一グループ通信装置と前記送信先通信装置とを比較して、全ての同一グループ通信装置が前記送信先通信装置として選択されている場合に、そのグループに割り当てられているグループ別秘密情報を抽出し、1つ以上の同一グループ通信装置が前記送信先通信装置として選択されていない場合に、同一グループ通信装置の各々に割り当てられている装置別秘密情報を抽出して、順序情報ごとに、全ての送信先通信装置が暗号化メッセージを復号できるように暗号化するために必要な秘密情報を抽出し、抽出した秘密情報の数を計数し、
前記複数の順序情報の中から秘密情報の数が最も少ない順序情報を判別し、判別した順序情報について抽出された秘密情報を送信メッセージの暗号化に用いる秘密情報とすることを特徴とする。
前記順序情報生成部は、
近接して順序付けられている2つ以上の通信装置同士を複数階層にてグループ化し、複数階層にて通信装置のグループが示される順序情報を生成し、
前記組合せ導出部は、
順序情報ごとに、上位の階層のグループから順に同一グループ通信装置と前記送信先通信装置とを比較して、全ての同一グループ通信装置が前記送信先通信装置として選択されている場合に、そのグループに割り当てられているグループ別秘密情報を抽出し、1つ以上の同一グループ通信装置が前記送信先通信装置として選択されていない場合に、下位の階層のグループの同一グループ通信装置と前記送信先通信装置とを比較し、最下位階層のグループにおいて1つ以上の同一グループ通信装置が前記送信先通信装置として選択されていない場合に、最下位階層のグループの同一グループ通信装置の各々に割り当てられている装置別秘密情報を抽出して、順序情報ごとに、全ての送信先通信装置が暗号化メッセージを復号できるように暗号化するために必要な秘密情報を抽出することを特徴とする。
前記組合せ導出部は、
各順序情報に示されるグループごとに、同一グループ通信装置と前記送信先通信装置とを比較して、全ての同一グループ通信装置が前記送信先通信装置として選択されている場合に、そのグループに割り当てられているグループ別秘密情報を抽出し、
前記複数の順序情報について抽出されたグループ別秘密情報を組み合わせて、全ての送信先通信装置が暗号化メッセージを復号できるように暗号化するために必要な秘密情報の組合せであって、秘密情報の数が最も少なくなる組合せを導出することを特徴とする。
前記順序情報生成部は、
近接して順序付けられている2つ以上の通信装置同士を複数階層にてグループ化し、複数階層にて通信装置のグループが示される順序情報を生成し、
前記組合せ導出部は、
順序情報ごとに、上位の階層のグループから順に同一グループ通信装置と前記送信先通信装置とを比較して、全ての同一グループ通信装置が前記送信先通信装置として選択されている場合に、そのグループに割り当てられているグループ別秘密情報を抽出し、1つ以上の同一グループ通信装置が前記送信先通信装置として選択されていない場合に、下位の階層のグループの同一グループ通信装置と前記送信先通信装置とを比較することを特徴とする。
前記順序情報生成部は、
前記情報処理装置に接続している通信装置の数が2個(m≧2)である場合に、m種の順序付け及びグループ化を示すm個の順序情報を生成することを特徴とする。
前記順序情報生成部は、
前記情報処理装置に接続している通信装置の数が2個(m≧2)に満たない場合に、不足数分の仮想通信装置を補充してm種の順序付け及びグループ化を示すm個の順序情報を生成することを特徴とする。
前記順序情報生成部は、
m(m≧2)種の順序付け及びグループ化を示すm個の順序情報を1セットとし、t(t≧2)セット分の順序情報を生成し、
前記情報処理装置は、更に、
順序情報のセットごとに、そのセットに含まれるm個の順序情報を用いて送信メッセージを暗号化する場合に必要な秘密情報の数の期待値を算出し、算出した期待値に基づいてtセットの中から特定のセットを選択する順序情報選択部を有し、
前記組合せ導出部は、
送信先通信装置が選択された際に、前記順序情報選択部により選択されたセットに含まれるm個の順序情報を用いて、送信メッセージの暗号化に用いる秘密情報の組合せを導出することを特徴とする。
前記順序情報選択部は、
tセットの中から、期待値が最も小さいセットを選択することを特徴とする。
前記順序情報選択部は、
所定数の送信先通信装置数に対して前記複数の通信装置を組み合わせて、通信装置の組合せパターンを複数導出し、
順序情報のセットごとに、そのセットに含まれるm個の順序情報の中から、組合せパターンごとに送信メッセージを暗号化するために必要な秘密情報の数が最も少ない順序情報を抽出し、組合せパターンごとに抽出した順序情報における秘密情報の数に基づいて、セットごとの期待値を算出することを特徴とする。
前記順序情報選択部は、
所定数の送信先通信装置数に対して前記複数の通信装置を組み合わせて、通信装置の組合せパターンを複数導出し、
順序情報のセットごとに、そのセットに含まれるm個の順序情報に示される各グループの同一グループ通信装置と組合せパターンに含まれる通信装置とを比較して、組合せパターンごとに送信メッセージを暗号化するために必要な秘密情報の数が最も少なくなるグループの組合せを抽出し、組合せパターンごとに抽出したグループの組合せにおける秘密情報の数に基づいて、セットごとの期待値を算出することを特徴とする。
前記順序情報生成部は、
m(m≧2)段階の各段階において、t(t≧2)種の順序付け及びグループ化を示すt個の順序情報を生成し、
前記情報処理装置は、更に、
m段階の各段階において、順序情報ごとに、送信メッセージを暗号化するために必要な秘密情報の数の期待値を算出し、算出した期待値に基づいてt個の順序情報の中から特定の順序情報を選択する順序情報選択部を有し、
前記組合せ導出部は、
送信先通信装置が選択された際に、前記順序情報選択部によりm段階の各段階において選択されたm個の順序情報を用いて、送信メッセージの暗号化に用いる秘密情報の組合せを導出することを特徴とする。
前記順序情報選択部は、
m段階の各段階において、t個の順序情報の中から、期待値が最も小さい順序情報を選択することを特徴とする。
前記順序情報生成部は、
前記順序情報選択部によりt個の順序情報の中から特定の順序情報が選択された後に、選択された順序情報と異なる順序付け及びグループ化を示すt個の順序情報を次の段階のt個の順序情報として生成することを特徴とする。
本発明に係るプログラムは、複数の通信装置に接続され、前記複数の通信装置の中から選択された2つ以上の通信装置に、秘密情報を用いて送信メッセージを暗号化した暗号化メッセージをマルチキャスト送信するコンピュータに、
前記複数の通信装置に対して複数種の順序付けを行い、各々の順序付けにおいて近接して順序付けられている2つ以上の通信装置同士をグループ化し、各々の順序付け及びグループ化の内容を示す複数の順序情報を生成する順序情報生成処理と、
順序情報ごとに、各々の通信装置において暗号化メッセージの復号に利用される装置別秘密情報を通信装置単位で割り当てるとともに同じグループに分類される2つ以上の同一グループ通信装置において共通に暗号化メッセージの復号に利用できるグループ別秘密情報をグループ単位で割り当てる秘密情報割り当て処理と、
前記複数の通信装置の中からマルチキャスト送信の送信先となる2つ以上の通信装置が送信先通信装置として選択された際に、各順序情報に示されるグループごとに、同一グループ通信装置と前記送信先通信装置とを比較して、送信メッセージの暗号化に用いる秘密情報の組合せを導出する組合せ導出処理とを実行させることを特徴とする。
本発明によれば、通信装置に対して複数種の順序付けを行い複数種の順序情報を生成するとともに、複数種の順序情報における秘密情報の割り当て状況に基づき、送信メッセージの暗号化に用いる秘密情報の組合せを導出するため、全ての送信先通信装置が暗号化メッセージを復号できる秘密情報の組合せであって、最も数の少ない秘密情報の組合せを導出することが可能であり、このため暗号化メッセージの送信時の通信オーバーヘッドを抑制することができる。
実施の形態1.
本実施の形態及び以降の実施の形態では、複数の構造の構成法を工夫することで、通信オーバーヘッドを小さくするセキュアマルチキャストシステムについて説明する。
図1は、本実施の形態に係るセキュアマルチキャストシステムのシステム構成例を示す。
図1において、サーバ装置201(以下、単にサーバともいう)と複数の端末装置301(以下、単に端末ともいう)がネットワーク101を介して接続されている。
本実施の形態に係るセキュアマルチキャストシステムにおいても、暗号技術を利用して、サーバ装置201から複数の正当な端末装置301だけに情報を同報送信(マルチキャスト)し、失効した端末(群)には、たとえ失効端末同士で結託があったとしても情報が一切漏れないようにする。
なお、サーバ装置201は情報処理装置の例であり、端末装置301は通信装置の例である。
図2は、サーバ装置201の構成例を表すブロック図である。
図2において、アルゴリズム記憶領域211は、セキュアマルチキャストにおける鍵割り当て、正当な端末へのメッセージ送信などのアルゴリズムを記憶するデータ記憶手段である。
本実施の形態では、端末を木構造で管理するアルゴリズムを用いる。
例えば、前記のCS法やSD法などのアルゴリズムが記憶される。
攪拌部212は、全ての端末を並べ替え、その順序付けを出力する手段である。
また、構造情報生成部219は、攪拌部212による端末の順序付けに従い、端末間に構造を与え、端末の順序付けを所定の構造で表す構造情報(順序情報)を複数種生成する。
本実施の形態では、木構造の構造情報を生成する。
より具体的には、攪拌部212は、複数の端末装置301に対して複数種の順序付けを行い、構造情報生成部219は、各々の順序付けにおいて近接して順序付けられている2つ以上の端末装置301を複数階層にてグループ化し、各々の順序付け及び複数階層におけるグループ化の内容を示す複数の構造情報を生成する。
また、サーバ装置201に接続している端末装置301の数が2個(m≧2)である場合に、攪拌部212はm種の順序付けを行い、また、構造情報生成部219はm種の順序付け及びグループ化を示すm個の構造情報を生成する。
攪拌部212及び構造情報生成部219は、順序情報生成部の例である。
鍵割り当て部213は、アルゴリズム記憶領域211に記憶されているアルゴリズムに従い、順序付けられた端末が示される構造情報を入力し、当該構造情報に示される構造上の各ノードに秘密情報を割り当てる手段である。
より具体的には、鍵割り当て部213は、構造情報生成部219により生成された構造情報ごとに、各々の端末装置において暗号化メッセージの復号に利用される端末別秘密情報(装置別秘密情報)を端末装置単位で割り当てるとともに同じグループに分類される2つ以上の同一グループ端末装置(同一グループ通信装置)において共通に暗号化メッセージの復号に利用できるグループ別秘密情報をグループ単位で割り当てる。
鍵割り当て部213は、秘密情報割り当て部の例である。
詳細は後述するが、図4が各端末及びグループに秘密情報が割り当てられた木構造の構造情報の例である。
図4の例では、木構造1及び木構造2の二つの構造情報が示される。
木構造1、木構造2ともに、端末0から端末7の8台の端末を対象としており、これら8台の端末が木構造の葉部分のノード(以下、葉ノードともいう)に配列されている。木構造1と木構造2では、端末の配列順序が異なっている。
また、木構造1、木構造2ともに、階層ごとに隣合う2つのノードずつグループ化され、最終的にルートノードに至る。
なお、構造情報生成部219は2台の端末に対してm個の構造情報を生成するため、8台の端末に対しては3個の構造情報が生成されるが、図4では作図上の理由から2つの構造情報を示している。
また、図4に示すk0_1、ka_1、k0_2、ka_2等は、各端末又は各グループに割り当てられた秘密情報である。秘密情報は例えば鍵、もしくは鍵導出の元となる情報である。葉ノードに割り当てられている端末ごとの秘密情報が端末別秘密情報(装置別秘密情報)であり、kd_1、ke_1、kf_1、kg_1、kb_1、kc_1及びka_1は端末のグループごとに割り当てられたグループ別秘密情報である。
図4では、各端末は、葉ノードに割り当てられている端末別秘密情報及び葉ノードに連結する上位のノードに割り当てられているグループ別秘密情報を用いることができる。
例えば、木構造1において、端末0は秘密情報k0_1、kd_1、kb_1、ka_1を利用することができる。
構造情報生成部219では、攪拌部212による複数種の端末の順序付けに従って、木構造の葉ノードに各端末を配置するとともに、2つのノードごとにグループ化する処理を行い、図4に示す秘密情報(k0_1等)が各ノードに割り当てられていない状態の構造情報を生成する。前述したように、構造情報生成部219は、複数の構造情報を生成するが、攪拌部212による複数種の端末の順序付けに対応して、構造情報ごとに、葉ノードにおける端末の配置順序は異なる。
そして、鍵割り当て部213は、構造情報生成部219で生成された各構造情報の各ノードに秘密情報を割り当てて図4に示す状態とする。各ノードに割当てる秘密情報は相互に異なる。
秘密情報記憶領域214は、秘密情報が割り当てられた構造情報を複数個記憶するデータ記憶手段である。
本実施の形態では、前述したように、全ての端末は木構造で管理される。
秘密情報記憶領域214は、図4に例示した構造情報を記憶する。
集合導出部215は、アルゴリズム記憶領域211に記憶されているアルゴリズムに従い、端末に与えられた構造と、正当な端末の集合とを入力として、正当な端末の集合が、端末の部分集合の和S1+S2+…+Sjとして表されるよう、各部分集合Siを導出する手段である。
集合決定部216は、秘密情報記憶領域214に記憶されている複数の構造情報に対する集合導出部215の出力に従い、セキュアマルチキャストの送信に利用する部分集合の組合せを決定する手段である。
つまり、集合導出部215と集合決定部216は、複数の端末装置301の中からセキュアマルチキャスト送信の送信先となる2つ以上の端末装置301が送信先端末装置(送信先通信装置)として選択された際に、各構造情報に示されるグループごとに、同一グループ端末装置と送信先端末装置とを比較して、全ての送信先端末装置が暗号化メッセージを復号できる秘密情報の組合せであって、最も数の少ない秘密情報の組合せを導出し、決定する。
集合導出部215と集合決定部216は、組合せ導出部の例である。
通信部217は、端末装置301と通信を行う手段である。
暗号部218は、共通鍵・公開鍵暗号の鍵生成・暗号化、乱数生成などを行う手段である。
図3は、セキュアマルチキャストシステム(図1)において、サーバ装置201からのマルチキャストを受信する端末装置301の構成例を表すブロック図である。
図3において、アルゴリズム記憶領域311は、セキュアマルチキャストにおける鍵導出・復号などのアルゴリズムを記憶するデータ記憶手段である。
本実施の形態では、端末を木構造で管理するアルゴリズムを用いる。例えば、前記のCS法やSD法などのアルゴリズムが記憶される。
秘密情報記憶領域312は、サーバ装置201が管理するある構造に対応付けられた秘密情報(暗号鍵、もしくは暗号鍵導出の元となる情報)を複数個記憶するデータ記憶手段である。
本実施の形態では、全ての端末は木構造に対応付けられた秘密情報を記憶する。
図5は、秘密情報記憶領域312が記憶するデータの一例を表す。
より具体的には、図5は、図4に示す端末0が保有するデータの例を示している。
すなわち、端末0は図4の木構造1の構造情報では、秘密情報k0_1、kd_1、kb_1、ka_1を利用できることが示されるが、図5では、これに対応して、端末0はこれらk0_1、kd_1、kb_1、ka_1を保有していることを示している。
木構造2についても同様に、図4では端末0は秘密情報k0_2、kd_2、kb_2、ka_2を利用できることが示されるが、図5では、これに対応して、端末0はこれらk0_2、kd_2、kb_2、ka_2を保有していることを示している。
鍵導出部313は、アルゴリズム記憶領域311に記憶されているアルゴリズムに従い、サーバ装置201から受信した暗号化メッセージの復号に必要な暗号鍵を、秘密情報記憶領域312に記憶されている秘密情報から導出する手段である。
通信部314は、サーバ装置201と通信を行う手段である。
暗号部315は、共通鍵・公開鍵暗号の復号、乱数生成などを行う手段である。
セキュアマルチキャストにおける手続きは、サーバが各端末に秘密情報を配布する部分と、その秘密情報を用いてサーバから各端末への暗号通信を行う部分の2つに大別される。
図6は、本実施の形態における、サーバから各端末への秘密情報の配布処理を説明するためのフローチャートである。
配布処理における動作について、図6のフローチャートを参照しながら説明する。
なお、簡単のため、端末数nは2のべき乗で表される値とし、各端末には0からn−1までの端末IDが与えられているものとする。
また、サーバが保持・管理する木構造の数mを定めておく。本実施の形態では、m=log nとする。
配布処理を行う前に、あらかじめサーバ装置201と各端末装置301とで、セキュアマルチキャストのアルゴリズムを共有しておく(ステップS601)。
ここでは、アルゴリズム記憶領域211、アルゴリズム記憶領域311に、対応するアルゴリズムが格納されているものとする。
まず、サーバ装置201の攪拌部212が、端末数nを入力として、0からn−1までの端末IDを並べ替えた順列を出力する(ステップS602)。
本処理の詳細については後述する。
ステップS602で得られた順列を入力として、構造情報生成部219が、アルゴリズム記憶領域211に記憶されているアルゴリズムに従い、端末間に木構造を与えて構造情報を生成し、また、鍵割り当て部213および暗号部218が、アルゴリズム記憶領域211に記憶されているアルゴリズムに従い、木構造の各ノードに秘密情報を割り当て、秘密情報が割り当てられた構造情報を秘密情報記憶領域214に格納する(ステップS603)。
同時に、アルゴリズム記憶領域211に記憶されているアルゴリズムに従い、各端末に必要な秘密情報を格納する(ステップS604)。ステップS603、S604の詳細は、アルゴリズム記憶領域211に記憶されているアルゴリズム(CS法やSD法など)に依存する。
以上の処理を行い、m個の木構造の構造情報が構成・格納された場合は処理を終了する。
そうでない場合は、ステップS602に戻って処理を繰り返す(ステップS605)。
この結果、ステップS602はm回実行されるが、攪拌部212は実行のたびに異なる順列を出力するため、秘密情報記憶領域214にはm個の異なる木構造が格納されることになる。
図7は、本実施の形態における、攪拌部212の端末ID並べ替え処理(ステップS602)を説明するためのフローチャートである。
端末ID並べ替え処理における動作について、図7のフローチャートを参照しながら説明する。
まず、攪拌部212は、端末ID並べ替え処理の呼び出しが初回であるかを判断する(ステップS701)。
初回である場合、端末IDの順列として、0からn−1までのIDを順に並べたものを設定し(ステップS702)、その結果を出力する(ステップS704)。
例えばn=8の場合、(0,1,2,3,4,5,6,7)が出力される。
2回目以降の呼び出しである場合、前回の出力の各端末IDに対し、これらをlog nビットで2進表示したものを考え、右に1ビットずつ巡回シフトを行ったものを設定し(ステップS703)、その結果を出力する(ステップS704)。
例えばn=8で2回目の呼び出しの場合、前回出力(0,1,2,3,4,5,6,7)に対し、各端末IDを右に1ビットずつ巡回シフトした(0,4,1,5,2,6,3,7)が出力される。
以上のように端末ID並べ替え処理を行った結果、鍵割り当てアルゴリズム適用(ステップS603)後の秘密情報記憶領域214には例えば図4のような、複数の異なる木構造が格納されることになる。
次に、サーバから各端末への暗号通信処理について説明する。
図8は、本実施の形態における、事前共有した秘密情報を用いた、サーバから各端末への暗号通信処理を説明するためのフローチャートである。
暗号通信処理における動作について、図8のフローチャートを参照しながら説明する。
暗号通信処理を行う前に、あらかじめサーバ装置201と各端末装置301とで、セキュアマルチキャストのアルゴリズムを共有しておく。
ここでは、アルゴリズム記憶領域211、アルゴリズム記憶領域311に、対応するアルゴリズムが格納されているものとする。
また、サーバ装置201の秘密情報記憶領域214にはm個の木構造が、端末装置301の秘密情報記憶領域312にはこれに対応する秘密情報が格納されている。端末装置301の秘密情報記憶領域312への秘密情報の格納は、秘密情報を暗号化してサーバ装置201から端末装置301に送信してもよいし、秘密情報をメモリカード等の記憶媒体に格納し、オフラインにて端末装置301に供給するようにしてもよい。
また、サーバ装置201への入力として、失効端末の集合が与えられる(ステップS801、S802)。
まず、サーバ装置201では、集合導出部215が、秘密情報記憶領域214から1番目の木構造の構造情報を読み出し、この木構造と、アルゴリズム記憶領域211に記憶されているアルゴリズムに従い、正当な端末の集合を、端末の部分集合の和S1+S2+…+Sjとして表す(ステップS803、S804、S805)。
ステップS805の詳細は、アルゴリズム記憶領域211に記憶されているアルゴリズム(CS法やSD法など)に依存する。
この処理を、m個全ての木構造について行う(ステップS806)。
その後、集合決定部216が、m個の木構造のうち通信オーバーヘッドが最小になるもの、すなわち部分集合の和で表した際の要素数jが最小になるものを決定する(ステップS807)。
そして、決定された木構造と、アルゴリズム記憶領域211に記憶されているアルゴリズムに従い、暗号部218がメッセージの暗号化を行い(ステップS808)、通信部217が端末装置301に、決定された木構造の番号および暗号化メッセージをマルチキャストする(ステップS809)。
ステップS808の詳細は、アルゴリズム記憶領域211に記憶されているアルゴリズム(CS法やSD法など)に依存する。
正当な(=失効されていない)端末装置301の通信部314はメッセージを受信し(ステップS810)、鍵導出部313と暗号部315が、アルゴリズム記憶領域311に記憶されているアルゴリズムに従い、秘密情報記憶領域312に記憶されている秘密情報から導出した暗号鍵で受信メッセージを復号する(ステップS811)。
ステップS811の詳細は、アルゴリズム記憶領域311に記憶されているアルゴリズム(CS法やSD法など)に依存する。
一方、失効された端末装置301は、マルチキャストのメッセージを受信しても、復号に必要な暗号鍵を導出できないため、情報を得ることができない。
以上の処理を行うことで、セキュアマルチキャストを実現することができる。
次に、図11を参照して、図8のS806及びS807の具体例を説明する。
なお、前述したように、CS法やSD法等のアルゴリズムによって具体的な処理内容は異なるため、ここでは処理の概要を説明するにとどめる。
図11は、図4に示した木構造1及び木構造2の構造情報を示す。
例えば、端末0、端末1、端末3、端末7が正当な端末であり、端末2、端末4、端末5、端末6が失効した端末であるとする。
ここでは、構造情報ごとに、上位の階層のグループから順に同一グループ端末装置と送信先端末装置とを比較して、全ての同一グループ端末装置が送信先端末装置として選択されている場合に、そのグループに割り当てられているグループ別秘密情報を抽出し、1つ以上の同一グループ端末装置が送信先端末装置として選択されていない場合(同一グループ端末装置に失効端末が含まれている場合)に、下位の階層のグループの同一グループ端末装置と送信先端末装置とを比較する。
そして、最下位階層のグループにおいて1つ以上の同一グループ端末装置が送信先端末装置として選択されていない場合(同一グループ端末装置に失効端末が含まれている場合)に、最下位階層のグループの同一グループ端末装置の各々に割り当てられている装置別秘密情報(葉ノードの秘密情報)を抽出して、構造情報ごとに、全ての送信先端末装置が暗号化メッセージを復号できるように暗号化するために必要な秘密情報を抽出する。
木構造1では、端末2、端末4、端末5、端末6が失効端末であるため、これらが同一グループ端末装置に含まれてしまう最上位階層のka_1は選択することができない。
また、kb_1についても、失効端末である端末2が含まれてしまうので選択できない。同様に、kc_1についても、失効端末である端末4、端末5、端末6が含まれてしまうので選択できない。
一方、端末0と端末1に対しては同じ秘密情報を利用できるので、グループ別秘密情報であるkd_1を選択することができる。
また、端末2が失効端末であるので、ke_1は選択できない。このため、端末3の端末別秘密情報であるk3_1が選択される。
同様に、端末4、端末5、端末6が失効端末であるので、kf_1及びkg_1は選択できない。このため、端末7の端末別秘密情報であるk7_1が選択される。
以上、木構造1では、kd_1、k3_1、k7_1の組合せが導出される。
また、同様の手順にて、木構造2では、k0_2、k1_2、kg_2の組合せが導出される。
図11の例では、木構造1、木構造2のいずれにおいても3つの秘密情報になるので、木構造1及び木構造2のいずれが選択されてもよい。
木構造1、木構造2のどちらかの秘密情報が少なければ、少ない方が選択される。
なお、図11の例のように複数の構造情報において秘密情報の数が同数の場合には、予め設定している優先順位(木構造のID順、LRU(Least Recently Used)等)に基づいて、利用する構造情報を選択する。
一般に、CS法やSD法を始めとする鍵割り当て方式では、木構造が変化することで、部分集合の和で表した際の要素数が変化する。
従って、上記のようにm個の木構造から最適なものを用いることで、単一の木構造だけを用いる場合に比べ、秘密情報の記憶容量はm倍になるものの、通信オーバーヘッドを低減することができるため、狭帯域でセキュアマルチキャストを行う際に有効である。
さらに、SD法などの鍵割り当て方式では、例えば失効端末数r=2の場合、失効した2つの端末が木構造の左半分、右半分に1個ずつ存在する方が通信オーバーヘッドが少ない。前述した端末ID並べ替え処理(ステップS602)を行うと、1番目の木では端末IDの最上位ビットが0であるものが左半分、1であるものが右半分となる。同様に、i番目の木では端末IDの上からiビット目が0であるものが左半分、1であるものが右半分となる。従って、m(=lon n)個の木構造を使用する場合、どの2端末が失効した場合でも、1個が左半分、1個が右半分にあるような木構造が必ず存在し、通信オーバーヘッドの少ないセキュアマルチキャストを確実に行うことが可能となる。
また、失効端末が3個以上の場合でも同様の効果が得られる。
さらに、本実施の形態における端末ID並べ替え処理(ステップS602)によると、端末の順列は確定的に与えられるため、各端末がそれぞれの木構造を記憶する必要がない。
なお、本実施の形態では、各端末に格納する鍵の決定と、各端末へのメッセージ送信を同一のサーバ装置が行っているが、これらを別々の装置で行っても良い。
また、本実施の形態では、端末数nを2のべき乗で表される値としているが、そうでない場合でも、2のべき乗になるまで仮想的な端末を追加するなどして、本方式を適用することが可能である。
つまり、攪拌部212は、サーバ装置201に接続している端末装置301の数が2個(m≧2)に満たない場合に、不足数分の仮想端末を補充してm種の順序付けを行い、構造情報生成部219はm種の順序付け及びグループ化を示すm個の順序情報を生成する。
また、本実施の形態では、サーバが保持・管理する木構造の値mをm=log nとしているが、サーバや各端末の性能を考慮して、これより小さい値を利用しても良い。
また、本実施の形態では、ステップS702で端末IDを0からn−1まで順に並べた決まった順列を出力しているが、ここで確定的もしくは確率的に並べ替えた順列を出力しても良い。
つまり、ステップS702における端末IDの並べ方は、必ずしも端末IDを0からn−1まで順に並べる必要はなく、任意の並べ方が可能である。
また、本実施の形態では、ステップS807でm個の木構造から最適な1個を選択し、これに基づいて部分集合の和S1+S2+…+Sjを決定しているが、複数の木構造にまたがって各部分集合Siを決定することも可能であり、このようにすると、1個だけを選択する場合に比べ、要素数jをさらに削減できる可能性がある。
この場合、各部分集合について、どの木構造のものかを表す付加情報が必要になる。
複数の木構造にまたがって各部分集合Siを決定することにより、例えば、図12に示すように、木構造1のkd_1と木構造2のkg_2とを組み合わせて、利用する秘密情報を2つとすることができる。
図11の例では、木構造1単独では3つの秘密情報となり、木構造2単独でも3つの秘密情報であったが、木構造1と木構造2とを組み合わせることにより2つの秘密情報にすることができる。
木構造1のkd_1は、端末0と端末1において共通に利用することができ、木構造2のkg_2は、端末3と端末7に利用することができる。
なお、このような部分集合を組み合わせる方式の実現方法としては、部分集合を総当りで組み合わせることにより最適な組合せを探索することが考えられる。
また、本実施の形態では、各端末の管理を木構造の構造情報に基づいて行っているが、端末の順列を変えることによって通信オーバーヘッドが異なるセキュアマルチキャストアルゴリズムであれば、各端末がどのような構造で管理されていたとしても効果がある。
例えば、木構造の代わりに、線構造の構造情報を用いてもよい。
この場合、鍵管理アルゴリズムとして、例えば線上で連続している端末が1個の鍵を共通に保持するようなものが考えられる。また、木構造、線構造以外に円状、格子状、グラフ状などの任意の構造を用いることができる。
このように、本実施の形態によれば、端末装置の順序付けを変化させて複数種の構造情報を生成するとともに、複数種の構造情報における秘密情報の割り当て状況に基づき、最も数の少ない秘密情報の組合せを導出することが可能であり、このためセキュアマルチキャスト送信時の通信オーバーヘッドを抑制することができる。
以上、本実施の形態では、セキュアマルチキャストシステムにおいて、情報を送信するサーバが、情報を受信する複数の端末を管理するために、端末同士の関係をある構造で表したものを複数保持し、マルチキャストの際にこれらのうち最適な構造を利用することで、マルチキャストの際に生じる通信オーバーヘッドを削減する方式について説明した。
また、本実施の形態では、端末同士の関係を木構造で表した方式について説明した。
また、本実施の形態では、複数の木構造を、各端末のIDに基づいて系統的に決定する方式について説明した。
実施の形態2.
図9は、本実施の形態に係るサーバ装置201の構成例を表すブロック図である。
図9において、アルゴリズム記憶領域211から構造情報生成部219までについては、図2のものと同様であるので、説明は省略する。
構造決定部220は、端末を管理する複数の構造情報の組を多数生成し、これらの中から、通信オーバーヘッドの期待値が最も小さくなる組合せを決定する手段である。
効率算出部221は、端末を管理する複数の構造、および失効端末数rを入力とし、r個の端末が失効した際のセキュアマルチキャストの通信オーバーヘッドの期待値を算出する手段である。
構造決定部220及び効率算出部221は、順序情報選択部の例である。
本実施の形態では、構造情報生成部219は、m(m≧2)種の順序付け及びグループ化を示すm個の構造情報を1セットとし、t(t≧2)セット分の構造情報を生成する。
効率算出部221は、構造情報のセットごとに、そのセットに含まれるm個の構造情報を用いて送信メッセージを暗号化する場合に必要な秘密情報の数の期待値を算出する。
また、構造決定部220は、効率算出部221により算出された期待値に基づいてtセットの中から期待値が最も小さいセットを選択する。
そして、集合導出部215及び集合決定部216は、セキュアマルチキャスト送信の送信先となる端末装置が選択された際に、構造決定部220により選択されたセットに含まれるm個の構造情報を用いて、実施の形態1と同様の手順にて、送信メッセージの暗号化に用いる秘密情報の組合せを導出する。
また、効率算出部221は、期待値の算出において、所定数の送信先端末数(セキュアマルチキャストの対象となる端末数)に対して接続端末を組み合わせて、端末装置の組合せパターンを複数導出する。詳細は後述するが、例えば、サーバ装置201に端末0から端末7の8台の端末装置が接続され、送信先端末数が5台(失効端末数が3台)の場合に、効率算出部221は、送信先端末数である5台(又は失効端末数である3台)に対して端末0から端末7を割り当てて、組合せパターンを複数導出する。
そして、効率算出部221は、構造情報のセットごとに、そのセットに含まれるm個の構造情報の中から、組合せパターンごとに送信メッセージを暗号化するために必要な秘密情報の数が最も少ない構造情報を抽出し、組合せパターンごとに抽出した構造情報における秘密情報の数に基づいて、セットごとの期待値を算出する。
端末装置301については、図3に示した構成と同様であるので、説明は省略する。
また、本実施の形態に係るセキュアマルチキャストシステムの構成例は、図1に示したものと同様である。
図10は、本実施の形態における、サーバから各端末への秘密情報の配布処理を説明するためのフローチャートである。
配布処理における動作について、図10のフローチャートを参照しながら説明する。
なお、サーバが保持・管理する構造情報の数m、構造決定の試行回数tをあらかじめ定めておく。
配布処理を行う前に、あらかじめサーバ装置901と各端末装置301とで、セキュアマルチキャストのアルゴリズムを共有しておく(ステップS1001)。
ここでは、アルゴリズム記憶領域211、アルゴリズム記憶領域311に、対応するアルゴリズムが格納されているものとする。
まず、攪拌部212が、端末数nを入力として、0からn−1までの端末IDをランダムに並べ替えた順列をm個出力する(ステップS1002)。
次に、ステップS1002で得られたm個の順列それぞれを入力として、構造情報生成部219が、アルゴリズム記憶領域211に記憶されているアルゴリズムに従い、端末間に木構造を与えてm個の構造情報を生成する(ステップS1003)。
ステップS1003で得られたm個の構造情報を入力として、効率算出部221が、あらかじめ定めておいた特定の失効端末数rに対する通信オーバーヘッドの期待値を算出する(ステップS1004)。
具体的には、特定の失効端末数rに対する全ての失効パターンについて、m個のうち最適な構造を用いた場合の通信オーバーヘッドを求め、これらを平均することによって期待値を算出する。
つまり、例えば、サーバ装置201に端末0から端末7の8台の端末装置が接続され、失効端末数が3台の場合に、効率算出部221は、失効端末数rである3台に対して端末0から端末7を割り当てて、失効パターン1:(端末0、端末1、端末2が失効)、失効パターン2:(端末0、端末1、端末3が失効)という形で、端末0から端末7の組合せから得られる全ての失効パターンを導出する。
なお、「特定の失効端末数」は複数定めておいても良い。
また、ここでは失効端末数に対して端末0から端末7を組み合わせて失効パターンを生成しているが、送信先端末数に対して端末0から端末7を組み合わせて送信パターンを生成してもよい。
そして、効率算出部221は、失効パターンごとに、その失効パターンに含まれる失効端末以外の端末にセキュアマルチキャストを行う場合に、送信メッセージを暗号化するために必要な秘密情報の数が最も少ない構造情報をm個の構造情報の中から抽出する。
m=3の場合に、効率算出部221は、例えば、失効パターン1に対しては最も秘密情報の数が少ないのが構造情報3、失効パターン2に対しては最も秘密情報の数が少ないのが構造情報2、失効パターン3に対しては最も秘密情報の数が少ないのが構造情報1という形で、失効パターンごとに構造情報を抽出する。
そして、効率算出部221は、抽出した構造情報における秘密情報の数の平均値を求め、求めた平均値を当該m個の構造情報についての期待値とする。
そして、S1002からS1004の試行がt回繰り返された後(ステップS1005)、構造決定部220が、通信オーバーヘッドの期待値が最も小さいセット、すなわち通信オーバーヘッドの期待値が最も小さいm個の構造情報を決定する(ステップS1006)。
そして、選択されたm個の構造情報に対して、鍵割り当て部213が各ノードに秘密情報を割り当て、秘密情報記憶領域214に、秘密情報が割り当てられたm個の構造情報を格納し、各端末の秘密情報記憶領域312に、対応する秘密情報を格納する(ステップS1007)。
サーバ装置201から各端末301への暗号通信処理については、図8で説明したものと同様であるので、説明は省略する。
図13は、図10の処理の概要を示した図である。
図13では、m=3、t=5としている。
各回の試行において、S1002及びS1003で、m個の構造情報(m1−1、m1−2、m1−3等)が生成され、S1004で、m個の構造情報に対する期待値(期待値e1等)が算出され、t回試行されると(S1005)、tセットのm個の構造情報が生成されるとともに、各セットの期待値(期待値e1からe5)が生成される。
なお、各構造情報(m1−1、m1−2、m1−3等)は、例えば、図4に示すような木構造の構造情報である(但し、S1004までの段階では、図4のように各ノードに秘密情報は割り当てられていない)。
そして、構造決定部220が、期待値の最も少ないセット(m個の構造情報)を選択し(S1006)、鍵割り当て部213が選択されたセットのm個の構造情報に対して秘密情報を割当てる(S1007)。
以上のように、ランダムに決定した構造から最適なm個の構造を決定することで、任意のセキュアマルチキャストアルゴリズム・任意の鍵管理構造について、通信オーバーヘッドが小さくなるような構造を自動的に(人手を介することなく)決定することが可能となる。
なお、本実施の形態では、一度にm個の構造を生成し、m個全部を用いた場合の通信オーバーヘッド期待値が最小になるように構造を決定しているが、1個ずつ構造を生成し、1個の構造追加ごとに期待値が最小になるものを選ぶようにしても良い。
例えば、図14に示すように、m段階の各段階において、t個の構造情報の中から期待値が最も小さい構造情報を選択して、各段階で選択された構造情報を組み合わせてm個の構造情報とする。
より具体的には、m=3、t=5の場合に、構造情報生成部219は、m個の構造情報の1つ目(m1)の候補として、5個の構造情報(t1−1、t1−2、t1−3、t1−4、t1−5)を生成し、効率算出部221が、失効パターンの各々を5個の構造情報の各々に対して適用して構造情報ごとに通信オーバーヘッドの期待値(e1からe5)を算出する。
構造情報の生成手順、期待値の算出手順は図10のフローにおいて説明したものと同様である。
そして、構造決定部220が、期待値が最も小さい構造情報を選択する。
図14では、t1−3が選択されている。
次に、構造情報生成部219は、m個の構造情報の2つ目(m2)の候補として、5個の構造情報(t2−1、t2−2、t2−3、t2−4、t2−5)を生成し、効率算出部221が、失効パターンの各々を、これまでに選択された構造情報(t1−3)と、m2の候補として生成された5個の構造情報の各々を組み合わせたものに対して適用して、組み合わせごとに通信オーバーヘッドの期待値(f1からf5)を算出する。そして、構造決定部220が、m2の候補から、期待値が最も小さくなる構造情報を選択する。図14では、t2ー2が選択されている。
以上の処理をm段階分行い、各段階で通信オーバヘッドの期待値(f1からf5、g1からg5)が最も小さい構造情報を選択し、m個の構造情報が得られる。
図14の例では、t1−3、t2−2、t3−1が選択されている。
そして、上述したのと同様に、集合導出部215及び集合決定部216は、セキュアマルチキャスト送信の送信先となる端末装置が選択された際に、構造決定部220により選択されたm個の構造情報を用いて、実施の形態1と同様の手順にて、送信メッセージの暗号化に用いる秘密情報の組合せを導出する。
また、本実施の形態では、効率算出部221が失効端末数rに対する全ての失効パターンに基づいて通信オーバーヘッドの期待値を算出しているが、r個の端末をランダムに選択して通信オーバーヘッドを求めるシミュレーションを繰り返し行うことで、期待値の概算値を算出しても良い。
端末数nおよび失効端末数rが大きい場合、このようにすることで計算量を小さく抑えることが可能である。
つまり、端末数nと失効端末数rが大きいと、失効パターン数が非常に大きくなるため、全ての失効パターンについて通信オーバーヘッドを求めると、演算処理に長時間を要することになる。このため、標本調査を行い、一部について通信オーバーヘッドを求めることで、全体の期待値を見積り、処理時間を短縮することができる。
また、本実施の形態では、各端末に格納する鍵の決定と、各端末へのメッセージ送信を同一のサーバ装置が行っているが、これらを別々の装置で行っても良い。
また、本実施の形態では、ステップS1004、および暗号通信処理のステップS807でm個の木構造から最適な1個を選択し、これに基づいて部分集合の和S1+S2+…+Sjを決定しているが、複数の木構造にまたがって各部分集合Siを決定することも可能であり、このようにすると、1個だけを選択する場合に比べ、要素数jをさらに削減できる可能性がある。この場合、各部分集合について、どの木構造のものかを表す付加情報が必要になる。詳細については、実施の形態1において、図12を参照して説明した手順と同様である。
また、本実施の形態では、図10のS1004において、セットごとにm個の構造情報の通信オーバーヘッドの期待値を算出しているが、m個の構造情報のセットをtセット生成した後に、m×t個の構造情報の中から通信オーバーヘッドの期待値が最も小さくなるm個の組合せを抽出するようにしてもよい。
例えば、図13に示すようなm=3、t=5の場合に、図10では、セットごと(3つの構造情報ごと)に通信オーバーヘッドの期待値を算出しているが、m1−1からm5−3の15個の構造情報の中から通信オーバーヘッドの期待値がもっとも小さくなる3個の構造情報を選択してもよい。
このようなm×t個の構造情報の中から通信オーバーヘッドの期待値が最も小さくなるm個の組合せを抽出する具体的方法としては、m×t個の構造情報を総当りで組み合わせて最適な組合せを探索することが考えられる。
また、本実施の形態においても、端末の順列を変えることによって通信オーバーヘッドが異なるセキュアマルチキャストアルゴリズムであれば、木構造以外の構造を用いることができる。
以上、本実施の形態では、複数の木構造を、乱数によって決定することを繰り返し、そのうち最適な組み合わせに関して、それら複数の木構造を保持する方式について説明した。
最後に、実施の形態1、2に示したサーバ装置201及び端末装置301のハードウェア構成例について説明する。
図15は、実施の形態1、2に示すサーバ装置201及び端末装置301のハードウェア資源の一例を示す図である。
なお、図15の構成は、あくまでもサーバ装置201及び端末装置301のハードウェア構成の一例を示すものであり、サーバ装置201及び端末装置301のハードウェア構成は図15に記載の構成に限らず、他の構成であってもよい。
図15において、サーバ装置201及び端末装置301は、プログラムを実行するCPU911(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
通信ボード915、キーボード902、マウス903、スキャナ装置907、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
通信ボード915は、図1に示すように、ネットワークに接続されている。例えば、通信ボード915は、LAN(ローカルエリアネットワーク)、インターネット、WAN(ワイドエリアネットワーク)などに接続されていても構わない。
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
サーバ装置201及び端末装置301の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
上記プログラム群923には、実施の形態1、2の説明において「・・・部」として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
ファイル群924には、実施の形態1、2の説明において、「・・・の判断」、「・・・の計算」、「・・・の算出」、「・・・の比較」、「・・・の生成」、「・・・の順序付け」、「・・・の抽出」、「・・・の更新」、「・・・の設定」、「・・・の登録」、「・・・の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「・・・ファイル」や「・・・データベース」の各項目として記憶されている。
「・・・ファイル」や「・・・データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1、2で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
また、実施の形態1、2の説明において「・・・部」として説明しているものは、「・・・回路」、「・・・装置」、「・・・機器」であってもよく、また、「・・・ステップ」、「・・・手順」、「・・・処理」であってもよい。すなわち、「・・・部」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、実施の形態1、2の「・・・部」としてコンピュータを機能させるものである。あるいは、実施の形態1、2の「・・・部」の手順や方法をコンピュータに実行させるものである。
このように、実施の形態1、2に示すサーバ装置201及び端末装置301は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「・・・部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
実施の形態1に係るセキュアマルチキャストシステムの構成例を示す図。 実施の形態1に係るサーバ装置の構成例を示す図。 実施の形態1に係る端末装置の構成例を示す図。 実施の形態1に係る木構造の構造情報の例を示す図。 実施の形態1に係る端末装置が記憶するデータの例を示す図。 実施の形態1に係る秘密情報の配布処理の例を示すフローチャート図。 実施の形態1に係る端末ID並べ替え処理の例を示すフローチャート図。 実施の形態1に係る暗号通信処理の例を示すフローチャート図。 実施の形態2に係るサーバ装置の構成例を示す図。 実施の形態2に係る秘密情報の配布処理の例を示すフローチャート図。 実施の形態1に係る秘密情報の選択手順の例を示す図。 実施の形態1に係る秘密情報の選択手順の例を示す図。 実施の形態2に係る構造情報の選択手順の例を示す図。 実施の形態2に係る構造情報の選択手順の例を示す図。 実施の形態1、2に係るサーバ装置及び端末装置のハードウェア構成例を示す図。
符号の説明
101 ネットワーク、201 サーバ装置、211 アルゴリズム記憶領域、212 攪拌部、213 鍵割り当て部、214 秘密情報記憶領域、215 集合導出部、216 集合決定部、217 通信部、218 暗号部、219 構造情報生成部、220 構造決定部、221 効率算出部、301 端末装置、311 アルゴリズム記憶領域、312 秘密情報記憶領域、313 鍵導出部、314 通信部、315 暗号部。

Claims (14)

  1. 複数の通信装置に接続され、前記複数の通信装置の中から選択された2つ以上の通信装置に、秘密情報を用いて送信メッセージを暗号化した暗号化メッセージをマルチキャスト送信する情報処理装置であって、
    前記複数の通信装置に対して複数種の順序付けを行い、各々の順序付けにおいて近接して順序付けられている2つ以上の通信装置同士をグループ化し、各々の順序付け及びグループ化の内容を示す複数の順序情報を生成する順序情報生成部と、
    順序情報ごとに、各々の通信装置において暗号化メッセージの復号に利用される装置別秘密情報を通信装置単位で割り当てるとともに同じグループに分類される2つ以上の同一グループ通信装置において共通に暗号化メッセージの復号に利用できるグループ別秘密情報をグループ単位で割り当てる秘密情報割り当て部と、
    前記複数の通信装置の中からマルチキャスト送信の送信先となる2つ以上の通信装置が送信先通信装置として選択された際に、各順序情報に示されるグループごとに、同一グループ通信装置と前記送信先通信装置とを比較して、全ての同一グループ通信装置が前記送信先通信装置として選択されている場合に、そのグループに割り当てられているグループ別秘密情報を抽出し、1つ以上の同一グループ通信装置が前記送信先通信装置として選択されていない場合に、同一グループ通信装置の各々に割り当てられている装置別秘密情報を抽出して、順序情報ごとに、全ての送信先通信装置が暗号化メッセージを復号できるように暗号化するために必要な秘密情報を抽出し、抽出した秘密情報の数を計数し、前記複数の順序情報の中から秘密情報の数が最も少ない順序情報を判別し、判別した順序情報について抽出された秘密情報の組合せを、送信メッセージの暗号化に用いる秘密情報の組合せとして導出する組合せ導出部とを有し、
    前記順序情報生成部は、
    近接して順序付けられている2つ以上の通信装置同士を複数階層にてグループ化し、複数階層にて通信装置のグループが示される順序情報を生成し、
    前記組合せ導出部は、
    順序情報ごとに、上位の階層のグループから順に同一グループ通信装置と前記送信先通信装置とを比較して、全ての同一グループ通信装置が前記送信先通信装置として選択されている場合に、そのグループに割り当てられているグループ別秘密情報を抽出し、1つ以上の同一グループ通信装置が前記送信先通信装置として選択されていない場合に、下位の階層のグループの同一グループ通信装置と前記送信先通信装置とを比較し、最下位階層のグループにおいて1つ以上の同一グループ通信装置が前記送信先通信装置として選択されていない場合に、最下位階層のグループの同一グループ通信装置の各々に割り当てられている装置別秘密情報を抽出して、順序情報ごとに、全ての送信先通信装置が暗号化メッセージを復号できるように暗号化するために必要な秘密情報を抽出し、
    前記複数の順序情報について抽出されたグループ別秘密情報を組み合わせて、全ての送信先通信装置が暗号化メッセージを復号できるように暗号化するために必要な秘密情報の組合せであって、秘密情報の数が最も少なくなる組合せを導出することを特徴とする情報処理装置。
  2. 前記順序情報生成部は、
    近接して順序付けられている2つ以上の通信装置同士を複数階層にてグループ化し、複数階層にて通信装置のグループが示される順序情報を生成し、
    前記組合せ導出部は、
    順序情報ごとに、上位の階層のグループから順に同一グループ通信装置と前記送信先通信装置とを比較して、全ての同一グループ通信装置が前記送信先通信装置として選択されている場合に、そのグループに割り当てられているグループ別秘密情報を抽出し、1つ以上の同一グループ通信装置が前記送信先通信装置として選択されていない場合に、下位の階層のグループの同一グループ通信装置と前記送信先通信装置とを比較することを特徴とする請求項に記載の情報処理装置。
  3. 前記順序情報生成部は、
    前記情報処理装置に接続している通信装置の数が2個(m≧2)である場合に、m種の順序付け及びグループ化を示すm個の順序情報を生成することを特徴とする請求項1に記載の情報処理装置。
  4. 前記順序情報生成部は、
    前記情報処理装置に接続している通信装置の数が2個(m≧2)に満たない場合に、不足数分の仮想通信装置を補充してm種の順序付け及びグループ化を示すm個の順序情報を生成することを特徴とする請求項1に記載の情報処理装置。
  5. 前記順序情報生成部は、
    m(m≧2)種の順序付け及びグループ化を示すm個の順序情報を1セットとし、t(t≧2)セット分の順序情報を生成し、
    前記情報処理装置は、更に、
    順序情報のセットごとに、そのセットに含まれるm個の順序情報を用いて送信メッセージを暗号化する場合に必要な秘密情報の数の期待値を算出し、算出した期待値に基づいてtセットの中から特定のセットを選択する順序情報選択部を有し、
    前記組合せ導出部は、
    送信先通信装置が選択された際に、前記順序情報選択部により選択されたセットに含まれるm個の順序情報を用いて、送信メッセージの暗号化に用いる秘密情報の組合せを導出することを特徴とする請求項1に記載の情報処理装置。
  6. 前記順序情報選択部は、
    tセットの中から、期待値が最も小さいセットを選択することを特徴とする請求項に記載の情報処理装置。
  7. 前記順序情報選択部は、
    所定数の送信先通信装置数に対して前記複数の通信装置を組み合わせて、通信装置の組合せパターンを複数導出し、
    順序情報のセットごとに、そのセットに含まれるm個の順序情報の中から、組合せパターンごとに送信メッセージを暗号化するために必要な秘密情報の数が最も少ない順序情報を抽出し、組合せパターンごとに抽出した順序情報における秘密情報の数に基づいて、セットごとの期待値を算出することを特徴とする請求項に記載の情報処理装置。
  8. 前記順序情報選択部は、
    所定数の送信先通信装置数に対して前記複数の通信装置を組み合わせて、通信装置の組合せパターンを複数導出し、
    順序情報のセットごとに、そのセットに含まれるm個の順序情報に示される各グループの同一グループ通信装置と組合せパターンに含まれる通信装置とを比較して、組合せパターンごとに送信メッセージを暗号化するために必要な秘密情報の数が最も少なくなるグループの組合せを抽出し、組合せパターンごとに抽出したグループの組合せにおける秘密情報の数に基づいて、セットごとの期待値を算出することを特徴とする請求項に記載の情報処理装置。
  9. 前記順序情報生成部は、
    m(m≧2)段階の各段階において、t(t≧2)種の順序付け及びグループ化を示すt個の順序情報を生成し、
    前記情報処理装置は、更に、
    m段階の各段階において、順序情報ごとに、送信メッセージを暗号化するために必要な秘密情報の数の期待値を算出し、算出した期待値に基づいてt個の順序情報の中から特定の順序情報を選択する順序情報選択部を有し、
    前記組合せ導出部は、
    送信先通信装置が選択された際に、前記順序情報選択部によりm段階の各段階において選択されたm個の順序情報を用いて、送信メッセージの暗号化に用いる秘密情報の組合せを導出することを特徴とする請求項1に記載の情報処理装置。
  10. 前記順序情報選択部は、
    m段階の各段階において、t個の順序情報の中から、期待値が最も小さい順序情報を選択することを特徴とする請求項に記載の情報処理装置。
  11. 前記順序情報生成部は、
    前記順序情報選択部によりt個の順序情報の中から特定の順序情報が選択された後に、選択された順序情報と異なる順序付け及びグループ化を示すt個の順序情報を次の段階のt個の順序情報として生成することを特徴とする請求項に記載の情報処理装置。
  12. コンピュータを、請求項1に記載された情報処理装置として機能させることを特徴とするプログラム。
  13. 前記情報処理装置は、
    IDが各々に与えられている複数の通信装置に接続されており、
    前記順序情報生成部は、
    各通信装置のIDの2進表示値を所定ビット分巡回シフトし、各通信装置のIDの巡回シフト後の2進表示値に基づいて、前記複数の通信装置の順序付けを行うことを特徴とする請求項1に記載の情報処理装置。
  14. 前記順序情報生成部は、
    各通信装置のIDの巡回シフト後の2進表示値を更に所定ビット分巡回シフトし、各通信装置のIDの更なる巡回シフト後の2進表示値に基づいて、前記複数の通信装置の順序付けを行うことを特徴とする請求項13に記載の情報処理装置。
JP2010509022A 2008-04-26 2008-04-26 情報処理装置及びプログラム Expired - Fee Related JP5279824B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2008/058153 WO2009130795A1 (ja) 2008-04-26 2008-04-26 情報処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2009130795A1 JPWO2009130795A1 (ja) 2011-08-11
JP5279824B2 true JP5279824B2 (ja) 2013-09-04

Family

ID=41216544

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010509022A Expired - Fee Related JP5279824B2 (ja) 2008-04-26 2008-04-26 情報処理装置及びプログラム

Country Status (2)

Country Link
JP (1) JP5279824B2 (ja)
WO (1) WO2009130795A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6474741B2 (ja) * 2016-01-18 2019-02-27 日本電信電話株式会社 秘匿決定木計算システム、装置、方法及びプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002281013A (ja) * 2000-12-18 2002-09-27 Matsushita Electric Ind Co Ltd 著作権保護のための鍵管理装置、記録媒体、再生装置、記録装置、鍵管理方法、再生方法、鍵管理プログラム及び鍵管理プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2006013790A (ja) * 2004-06-24 2006-01-12 Internatl Business Mach Corp <Ibm> 複数の復号化装置に対し選択的にメッセージを配信する暗号化通信システム、暗号化装置、復号化装置、暗号化方法、復号化方法、暗号化プログラム、及び復号化プログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004229128A (ja) * 2003-01-24 2004-08-12 Sony Corp 暗号データ配信システム、および情報処理装置、情報処理方法、並びにコンピュータ・プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002281013A (ja) * 2000-12-18 2002-09-27 Matsushita Electric Ind Co Ltd 著作権保護のための鍵管理装置、記録媒体、再生装置、記録装置、鍵管理方法、再生方法、鍵管理プログラム及び鍵管理プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2006013790A (ja) * 2004-06-24 2006-01-12 Internatl Business Mach Corp <Ibm> 複数の復号化装置に対し選択的にメッセージを配信する暗号化通信システム、暗号化装置、復号化装置、暗号化方法、復号化方法、暗号化プログラム、及び復号化プログラム

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CSNG200600569001; 舩山徹雄,他: '通信頻度情報を用いた鍵配送の効率化' 情報処理学会研究報告 Vol. 2006,No. 43, 20060512, pp. 1-6, 社団法人情報処理学会 *
CSNG200900173159; 伊藤隆,他: 'セキュアマルチキャストの通信量効率化' マルチメディア,分散,協調とモバイル(DOCOMO2008)シンポジウム論文集,情報処理学会シンポジウムシリーズ Vol. 2008,No. 1, 20080702, pp. 1266-1269, 社団法人情報処理学会 *
JPN6012047972; 伊藤隆,他: 'セキュアマルチキャストの通信量効率化' マルチメディア,分散,協調とモバイル(DOCOMO2008)シンポジウム論文集,情報処理学会シンポジウムシリーズ Vol. 2008,No. 1, 20080702, pp. 1266-1269, 社団法人情報処理学会 *
JPN6012047973; 舩山徹雄,他: '通信頻度情報を用いた鍵配送の効率化' 情報処理学会研究報告 Vol. 2006,No. 43, 20060512, pp. 1-6, 社団法人情報処理学会 *

Also Published As

Publication number Publication date
JPWO2009130795A1 (ja) 2011-08-11
WO2009130795A1 (ja) 2009-10-29

Similar Documents

Publication Publication Date Title
Kumar et al. Attribute based encryption in cloud computing: A survey, gap analysis, and future directions
Sookhak et al. Attribute-based data access control in mobile cloud computing: Taxonomy and open issues
US7340054B2 (en) Information processing method, decrypting method, information processing apparatus, and computer program
Snoeyink et al. A lower bound for multicast key distribution
Asano A revocation scheme with minimal storage at receivers
Xu et al. Dynamic user revocation and key refreshing for attribute-based encryption in cloud storage
US7739492B2 (en) Encrypted communication for selectively delivering a message to multiple decrypting devices
US20070133806A1 (en) Information processing method, decryption method, information processing device, and computer program
Nguyen et al. Server-aided revocable identity-based encryption from lattices
Lin et al. Multicast key management without rekeying processes
Seo et al. Revocable hierarchical identity-based encryption
JP5400395B2 (ja) データ配信システム、鍵管理装置および鍵管理方法
KR20090127716A (ko) 브로드캐스트 암호화에서 디바이스 키를 추적하는 방법
WO2006030635A1 (ja) 情報処理方法、復号処理方法、および情報処理装置、並びにコンピュータ・プログラム
Kumar et al. An efficient and scalable distributed key management scheme using ternary tree for secure communication in dynamic groups
JP5279824B2 (ja) 情報処理装置及びプログラム
Chang et al. Secret sharing with access structures in a hierarchy
JP4561074B2 (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
US7860255B2 (en) Content distribution server, key assignment method, content output apparatus, and key issuing center
Snoeyink et al. A lower bound for multicast key distribution
Varalakshmi et al. Huddle hierarchy based group key management protocol using gray code
JP2007189597A (ja) 暗号化装置および暗号化方法、並びに復号化装置および復号化方法
KR20180113323A (ko) 와일드 카드를 포함하는 키 발급, 암호화 및 복호화 방법
Pal et al. Key management scheme for secure group communication
WO2009157050A1 (ja) 情報処理装置及びプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120918

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121113

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130521

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees