JP5784833B2 - セキュアグループメッセージング - Google Patents

セキュアグループメッセージング Download PDF

Info

Publication number
JP5784833B2
JP5784833B2 JP2014520376A JP2014520376A JP5784833B2 JP 5784833 B2 JP5784833 B2 JP 5784833B2 JP 2014520376 A JP2014520376 A JP 2014520376A JP 2014520376 A JP2014520376 A JP 2014520376A JP 5784833 B2 JP5784833 B2 JP 5784833B2
Authority
JP
Japan
Prior art keywords
computing device
key
identity
group
messaging
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.)
Active
Application number
JP2014520376A
Other languages
English (en)
Other versions
JP2014523206A (ja
Inventor
サンダラム,ガナパテイー・エス
ブロウステイス,イオアニス
ケークレフ,ビオレータ
Original Assignee
アルカテル−ルーセント
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 アルカテル−ルーセント filed Critical アルカテル−ルーセント
Publication of JP2014523206A publication Critical patent/JP2014523206A/ja
Application granted granted Critical
Publication of JP5784833B2 publication Critical patent/JP5784833B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • 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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • 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/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0847Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving identity based encryption [IBE] 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/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本出願は、(1)2011年7月15日に出願された、「Secure Group Messaging」という名称の第61/508,168号、および(2)2011年7月26日に出願された、「Secure Group Messaging」という名称の第61/511,845号として識別される米国仮出願の優先権を主張するものであり、それらの仮出願の開示は両方とも、それらの全体が本明細書に引用により組み込まれている。
本出願は、一般には通信セキュリティに関し、より詳細には、通信システムにおけるセキュアグループメッセージングに関する。
今日知られているようなメッセージングサービスは、ワールドワイドウェブの出現より前に始まったインスタントメッセージング(IM)がその起源である。その時からメッセージングの概念は、多くの通信システムにわたる非常に広く普及したアプリケーションプログラムとしてのその地位を維持しながら、健全かつ継続的な進化を経てきた。より最近の拡張は、ソーシャルネットワークの態様を伴うチャットルームおよびマイクロブログ(例えばTwitter)を含む。これらのメッセージングサービスの拡張は、企業環境の内部でも採用されている。モバイルネットワークについては、従来のメッセージングサービスは、ショートメッセージサービス(SMS)およびマルチメディアメッセージサービス(MMS)を含む。同時にメッセージングサービスは、着信音および壁紙のダウンロードなどの様々な付加価値サービスを供与するためのプラットフォームとしても働いてきた。スマートフォンの前例のない発展および採用を考慮に入れると、モバイルメッセージングサービスもまた、マイクロブログ、企業モバイルメッセージングサービス、およびグループメッセージングサービスのモバイル版を含む、急速な進化を経つつある。
すべての上記の例では、参加者およびメッセージングプロバイダ(通信ネットワーク基盤のプロバイダとは異なる場合がある、すなわち、その内部でメッセージングサービスがホストされるネットワークプロバイダ)が存在する。その上すべてのメッセージは、メッセージが配送前に様々なサーバに格納される場合でも、セキュリティに関するサポートをほとんど、または全く伴わずにネットワークを往来する。特に、メッセージは暗号化または認証されることがほとんどない。利用可能であり得るセキュリティの唯一の形式は、(モバイルワイヤレスなどの)アクセスリンクを介した暗号化および/または完全性保護である。これらの限定された設定においてでさえ、アクセスネットワークプロバイダは、計算能力を浪費しないためにセキュリティの特徴的機能を「オフにする」ことが多い。
Dan Boneh、Matthew K.Franklin、「Identity−Based Encryption from the Weil Pairing」Advances in Cryptology−Proceedings of CRYPTO2001(2001) X.Boyenら、「Identity−Based Cryptography Standard(IBCS)#1:Supersingular Curve Implementations of the BF and BB1 Cryptosystems」、2007年12月、IETF RFC5091 G.Appenzellerら、「Identity−Based Encryption Architecture and Supporting Data Structures」、2009年1月、IETF RFC5408 V.Cakulevら、「IBAKE:Identity−Based Authentication Key Exchange」、2011年4月20日、IETFインターネットドラフト V.Cakulevら、「MIKEY−IBAKE:Identity−Based Authenticated Key Exchange(IBAKE) Mode of Key Distribution in Multimedia Internet KEYing(MIKEY)」、2011年6月、IETF RFC6267
本発明の実施形態は、通信システムにおいて使用するための識別情報ベースの(identity based)暗号化を用いるセキュアグループメッセージング技法を提供する。
例えば第1の実施形態では、方法は以下のステップを含む。方法は、ピアツーピア様式で第1のコンピューティングデバイスから第2のコンピューティングデバイスに、通信システム内で転送される少なくとも1つのメッセージをセキュアにするためのものである。第1のコンピューティングデバイスで、識別情報ベースの認証された鍵交換セッションが、ピア認証者として動作する第3のコンピューティングデバイスと確立される。識別情報ベースの認証された鍵交換セッションは、識別情報ベースの認証された鍵交換セッションに関連する識別情報ベースの認証されたセッション鍵を有する。第1のコンピューティングデバイスは、第2のコンピューティングデバイスのランダム鍵構成要素を第3のコンピューティングデバイスから取得し、第2のコンピューティングデバイスのランダム鍵構成要素が、第1のコンピューティングデバイスに第2のコンピューティングデバイスのランダム鍵構成要素を送出する前に、識別情報ベースの認証されたセッション鍵を使用して第3のコンピューティングデバイスにより暗号化される。ピアツーピアメッセージング鍵が、第2のコンピューティングデバイスのランダム鍵構成要素を使用して第1のコンピューティングデバイスで計算される。少なくとも1つのメッセージが、メッセージングサーバとして動作する第4のコンピューティングデバイスを介して、第2のコンピューティングデバイスに向けて第1のコンピューティングデバイスから送出され、少なくとも1つのメッセージが、送出の前にピアツーピアメッセージング鍵を使用して暗号化される。
第2の実施形態では、方法は以下のステップを含む。方法は、第1のコンピューティングデバイスから第2のコンピューティングデバイスおよび少なくとも第3のコンピューティングデバイスに、通信システム内で転送される少なくとも1つのメッセージをセキュアにするためのものであり、第1、第2、および第3のコンピューティングデバイスが、あらかじめ定められたグループを形成する。第1のコンピューティングデバイスで、識別情報ベースの認証された鍵交換セッションが、グループ認証者として動作する第4のコンピューティングデバイスと確立される。識別情報ベースの認証された鍵交換セッションは、識別情報ベースの認証された鍵交換セッションに関連する識別情報ベースの認証されたセッション鍵を有する。第1のコンピューティングデバイスは、第2のコンピューティングデバイスのランダム鍵構成要素および第3のコンピューティングデバイスのランダム鍵構成要素を第4のコンピューティングデバイスから取得し、第2および第3のコンピューティングデバイスのランダム鍵構成要素が、第1のコンピューティングデバイスにランダム鍵構成要素を送出する前に、識別情報ベースの認証されたセッション鍵を使用して第4のコンピューティングデバイスにより暗号化される。第1のコンピューティングデバイスで、グループ鍵構成要素が、第2および第3のコンピューティングデバイスのランダム鍵構成要素を使用して、第1のコンピューティングデバイスに対して計算される。第1のコンピューティングデバイスに対するグループ鍵構成要素が、第4のコンピューティングデバイスに向けて第1のコンピューティングデバイスから送出される。それぞれのグループ鍵構成要素が、第4のコンピューティングデバイスから第2および第3のコンピューティングデバイスに対して取得される。グループメッセージング鍵が、第1、第2、および第3のコンピューティングデバイスのグループ鍵構成要素を使用して第1のコンピューティングデバイスで計算される。少なくとも1つのメッセージが、メッセージングサーバとして動作する第5のコンピューティングデバイスを介して、第2および第3のコンピューティングデバイスに向けて第1のコンピューティングデバイスから送出され、少なくとも1つのメッセージが、送出の前にグループメッセージング鍵を使用して暗号化される。
有利には、ピアツーピア関係にあるコンピューティングデバイス、またはあらかじめ定められたグループ内のコンピューティングデバイスのみが、少なくとも1つのメッセージを解読可能である。さらにセキュアメッセージは、受信者のうちの1人または複数が通信システムからオフラインである場合でも生成かつ送出され得る。
本発明のこれらおよび他の、目的、特徴的機能、および利点は、添付する図面とともに読まれることになる、本発明の例示的な実施形態の以下の詳細な説明から明らかとなろう。
本発明の実施形態によるセキュアグループメッセージングを実装する通信システムを例示する図である。 本発明の実施形態による識別情報ベースの暗号化を用いるセキュアグループメッセージング方法論を例示する図である。 本発明の別の実施形態による識別情報ベースの暗号化を用いるセキュアグループメッセージング方法論を例示する図である。 本発明の実施形態によるプロトコルのうちの1つまたは複数を実装するのに適した、データネットワークおよび通信(コンピューティング)デバイスの一般化されたハードウェアアーキテクチャを例示する図である。
語句「通信システム」は、本明細書では一般に、テキストベースのデータ、グラフィックベースのデータ、ボイスベースのデータ、およびビデオベースのデータを含む、ただしそれらに限定されない、1つまたは複数のタイプのメディアを移送可能な、任意の通信システムまたはネットワークと定義される。
用語「鍵」は、本明細書では一般に、エンティティ認証、プライバシー、メッセージ完全性、暗号化/解読等のような、ただしそれらに限定されない目的での、暗号プリミティブおよび/またはプロトコルに対する入力と定義される。
さらに語句「セキュリティアソシエーション」は、本明細書では一般に、通信システムに対してエンティティを認証する目的で生成される暗号またはセキュリティのデータ(例えば1つまたは複数の鍵)と定義される。
さらに本明細書では、「サーバ」は一般に、通信ネットワーク、クライアント、および/または別のサーバからの要求によって、1つまたは複数の機能(例えばサービス)を遂行する、1つもしくは複数のコンピューティングデバイス、および/または、それらのコンピューティングデバイス上のソフトウェアプログラムと定義される。「ノード」が、通信システム内の専用コンピューティングデバイスを指す場合があり、または「ノード」が、1つもしくは複数の他の機能を遂行するコンピューティングデバイスの機能部分を指す場合があることをさらに理解されたい。
「クライアント」は、本明細書では一般に、通信ネットワーク、サーバ、および/または別のクライアントに、1つまたは複数の機能(例えばサービス)を要求する、1つもしくは複数のコンピューティングデバイス、および/または、それらのコンピューティングデバイス上のソフトウェアプログラムと定義される。クライアントデバイスの例は、セルラー電話、スマートフォン、卓上電話、携帯情報端末、ラップトップコンピュータ、パーソナルコンピュータ等を含み得るが、それらに限定されない。さらにコンピューティングデバイスは、ある目的ではサーバであり、別の目的ではクライアントである場合がある。
用語「メッセージ」は、本明細書では一般に、ある当事者が別の当事者に伝達することを望む任意の形式のデータまたは情報と定義される。データまたは情報は、テキストベースのデータ、グラフィックベースのデータ、ボイスベースのデータ、およびビデオベースのデータを含む、ただしそれらに限定されない、1つまたは複数のタイプのメディアを含み得る。他の形式のデータもまた、メッセージの一部であり得る。メッセージの文脈は、個人の、業務の、それらの組み合わせの、または何か他の文脈であり得る。
用語「オフライン」は、コンピューティングデバイスに関して本明細書では一般に、通信システムに接続されていない、および/または、通信システムにアクセスしていないと定義される。したがって用語「オンライン」は、コンピューティングデバイスに関して本明細書では一般に、通信システムに接続されている、および/または、通信システムにアクセスしていると定義される。
参照を容易にするために、詳細な説明が以下のように分けられている。セクションIでは、識別情報ベースの暗号化(IBE)および識別情報ベースの認証された鍵交換(IBAKE)動作の一般原理を説明する。セクションIIでは、本発明の例示的な実施形態によるセキュアグループメッセージング解決策を説明する。セクションIIIでは、本発明による1つまたは複数のセキュアグループメッセージングプロトコルを実装するための例示的なコンピューティングシステムを説明する。
I.識別情報ベースの暗号化(IBE)および識別情報ベースの認証された鍵交換(IBAKE)
本発明のセキュアグループメッセージング技法の例示的な実施形態の解説の前に、IBEおよびIBAKEの一般原理が説明される。
A.識別情報ベースの暗号化
識別情報ベースの暗号化(IBE)プロトコルは、BonehおよびFranklinにより提示されたものであり、Dan Boneh、Matthew K.Franklin、「Identity−Based Encryption from the Weil Pairing」Advances in Cryptology−Proceedings of CRYPTO2001(2001)を参照されたい、なお、その文献の開示は、本明細書に引用により組み込まれている。この非対称暗号の暗号化プロトコルによって、参加者が公開鍵として「ID」(例:電子メールid、またはドメイン名)を使用することが可能になり、RSA(リベスト、シャミア、およびエーデルマン)などの公開鍵暗号化法に関連することが多い大規模な公開鍵基盤に対する必要性がなくなる。この問題に対するBonehおよびFranklinの手法は、有限体上の楕円曲線上の双線形写像を使用し、双線形判定ディフィ−ヘルマン問題に依拠する。
IBEは、以下の数学的なツールおよびパラメータを必然的に含む:
Eを有限体F上の楕円曲線とし、Pを大きな素数位数の点とする。
e:E×E−→GをE上の双線形写像とする。典型的な例がヴェイユペアリングであり、したがってGは1のn乗根の群となり、ただしnはF上のE上の点の数の関数である。
sを非ゼロの正の整数とし、鍵生成関数(KGF)に格納された秘密とする。これはシステム全体の秘密であり、KGFの外部では明らかにされない。
pub=sPを、すべての参加者に知られているシステムの公開鍵とする。Eは群であるので、sPはE内の点を示すことを想起されたい。
を、文字列をとり、その文字列を楕円曲線上の点に割り当てる、知られているハッシュ関数とする、すなわち、H(A)=E上のQであり、ただしAは通常は識別情報であり、H(A)はさらにAの公開鍵である。
=sQを、KGFにより計算され、Aにのみ配送される秘密鍵とする。
を、Gの要素をとり、その要素を文字列に割り当てる、知られているハッシュ関数とする。
mを、暗号化されAに送出されなければならないメッセージとする。BonehおよびFranklinにより説明されている暗号化関数は、以下の通りである:
=e(Q,Ppub)とし、rを乱数とする。
暗号化(m)=(rP,m xor H(g ))であり、換言すれば、mの暗号化出力は2つの座標uおよびvを有し、ただしu=rP、およびv=m xor H(g )である。「xor」が排他的OR論理関数を指すことに留意されたい。
(u,v)を解読するために、Aは、以下の式を使用してmを復元する:
m=v xor H(e(d,u))。
この式の証明は、双線形写像、および、Aが秘密d(Aにのみ知られているが他の参加者には知られていない秘密鍵)を有するという事実においての複雑ではない演習である。さらに、そもそもdを計算したKGFはメッセージを解読することも可能であり、結果としてKGFが事実上の鍵供託サーバとなる場合があることに注意されたい。
IBEプロトコルのさらなる詳細は、X.Boyenらにより著わされた、「Identity−Based Cryptography Standard(IBCS)#1:Supersingular Curve Implementations of the BF and BB1 Cryptosystems」という名称の2007年12月のインターネットエンジニアリングタスクフォース(IETF)リクエストフォーコメント(RFC)5091、および、G.Appenzellerらにより著わされた、「Identity−Based Encryption Architecture and Supporting Data Structures」という名称の2009年1月のIETF RFC5408において説明されており、それらの文献の開示は両方とも、それらの全体が本明細書に引用により組み込まれている。
B.識別情報ベースの認証された鍵交換
識別情報ベースの認証された鍵交換(IBAKE)は、2009年2月17日に出願された、第12/372,242号により識別される米国特許出願において説明されており、その出願の開示は、その全体が本明細書に引用により組み込まれている。IBAKEプロトコルによってデバイスが、互いに相互認証し、完全な順方向および逆方向の秘密性を提供する鍵を導出することが可能になる。
ここで説明されるIBAKE実施形態では、このプロトコルに関する基本的な構図は、上記でサブセクションAにおいて考察された数学的な構成物およびパラメータを必然的に含む。このプロトコルは非対称であるが、いかなる公開鍵基盤(PKI)サポートも必要とせず、代わりにプロトコルは、鍵生成関数として働くオフラインサーバを用いることに留意されたい。プロトコルの詳細が下記に概説される:
A、Bが、鍵を認証し、鍵に関して合意することを試みている2つのエンティティ(または当事者、ただしAは第1の当事者のコンピュータシステムを表し、Bは第2の当事者のコンピュータシステムを表す)であるものとする。
AおよびBを使用して、定義によりAおよびBの公開鍵もまた表す、AおよびBの対応する識別情報を表すことにする。
(A)=QおよびH(B)=Qを、公開鍵に対応する楕円曲線上のそれぞれの点であるとする。実際、識別情報と、Hを適用することにより取得される曲線上の点との間に1対1の対応関係が存在するので、QおよびQを公開鍵と呼ぶことも可能である。
xをAにより選定される乱数とし、yをBにより選定される乱数とする。
AとBとの間のプロトコル交換は、以下のステップを含む:
Aは、第1のステップにおいて、xP(すなわち、E上の加算法則を使用して、E上の点としてx回それ自体に加算されたP)を計算し、Bの公開鍵を使用してxPを暗号化し、BにxPを送信する。このステップにおいて暗号化は、上記でサブセクションAにおいて説明された識別情報ベースの暗号化を指す。
暗号化されたメッセージを受信すると、Bはメッセージを解読し、xPを取得する。引き続きBは、第2のステップにおいて、Aの公開鍵を使用してペア{xP,yP}を暗号化し、次いでAにそのペアを送信する。
このメッセージを受信すると、Aはメッセージを解読し、yPを取得する。引き続きAは、第3のステップにおいて、Bの公開鍵を使用してyPを暗号化し、BにyPを返送する。
これに続いて、AとBの両方がセッション鍵としてxyPを計算する。
Aがランダムにxを選定し、プロトコル交換の第2のステップにおいてyPを受信したことに注意されたい。このことによってAは、yPをそれ自体にx回加算することによりxyPを計算することが可能になる。逆にBは、ランダムにyを選定し、プロトコル交換の第1のステップにおいてxPを受信した。このことによってBは、xPをそれ自体にy回加算することによりxyPを計算することが可能になる。プロトコルのいかなる適用でも、識別情報とともにヘッダデータを利用して、プロトコルを適正に機能させることを確実にすることが可能であることに留意されたい。このことは比較的標準的であり、鍵合意のためのほとんどすべてのプロトコル交換に適用可能である。
xはランダムであるが、xPはxに関する情報を提供しないことにもまた留意されたい。したがってxPは、Aにより選定されたランダムな秘密に基づく鍵の構成要素である。同様にyはランダムであるが、yPはyに関する情報を提供しない。したがってyPは、Bにのみ知られているランダムな秘密に基づく鍵の構成要素である。
xyPがセッション鍵として働き得ることにさらに留意されたい。さらにセッション鍵は、xyPの任意の知られている関数であり得る。すなわち、セッション鍵はf(xyP)と等しくあり得るものであり、ただしfは、両方の当事者に知られており、秘密であることは求められていない(すなわち世界に知られている)。fに関する1つの実際的な要件は、f(xyP)が、xまたはyを知ることなしに計算するのが難しく、出力が、例えばおよそ128ビット以上の、暗号の観点から申し分のない長さのものであるということであるべきである。
IBAKEプロトコルの特性のいくつかには、以下のものがある:
− 鍵供託の免除:プロトコル交換においてのすべてのステップがIBEを使用して暗号化されることに注意されたい。そのため明らかにKGFは、すべての交換を解読することが可能である。しかしながらKGFは、セッション鍵を計算することは可能でない。これは、楕円曲線ディフィ−ヘルマン問題の困難性のためである。換言すればxPおよびyPを与えられても、xyPを計算することは計算論的に困難である。
− 相互認証された鍵合意:プロトコル交換においてのすべてのステップがIBEを使用して暗号化されることに注意されたい。詳細には、Bのみが、第1および第3のステップにおいてAにより送出されるメッセージの内容を解読することが可能であり、同様にAのみが、第2のステップにおいてBにより送出されるメッセージの内容を解読することが可能である。その上第2のステップの最後では、Aは、Bによる第1のステップにおいての内容の解読の後にのみ、xPが第2のステップにおいて送出されている場合があるので、Bの真正を確認することが可能である。同様に第3のステップの最後では、Bは、第2のステップの内容を正しく解読することの後にのみ、yPが第3のステップにおいて返送されている場合があり、このことはAによってのみ可能であるので、Aの真正を確認することが可能である。最終的にAとBの両方は、同じセッション鍵に関して合意することが可能である。換言すればプロトコルは、IBEに基づく相互認証された鍵合意プロトコルである。上記の説明がプロトコルのセキュリティに関する動機をもたらす一方で、セキュリティの暗号の証明が容易にもたらされる場合がある。プロトコルの困難性は、楕円曲線ディフィ−ヘルマン問題の困難性に依拠し、そのことは、楕円曲線を選定したことの影響を受けている。
− 完全な順方向および逆方向の秘密性:xおよびyはランダムであるので、xyPは常に新規であり、AとBとの間のいかなる過去または未来のセッションとも無関係である。
− パスワードがない:IBAKEプロトコルは、AとBとの間のパスワードも秘密鍵の何らかのオフライン交換も必要としない。実際この方法は、任意の通信ネットワークを介して初めて通信する任意の2人の当事者に明らかに適用可能である。唯一の要件は、AとBの両方が、例えばディレクトリサービスによって互いの公開鍵を認識していることを確実にすることである。
IBAKEプロトコルのさらなる詳細は、V.Cakulevらにより著わされた、「IBAKE:Identity−Based Authentication Key Exchange」という名称の2011年4月20日のIETFインターネットドラフト、および、V.Cakulevらにより著わされた、「MIKEY−IBAKE:Identity−Based Authenticated Key Exchange(IBAKE) Mode of Key Distribution in Multimedia Internet KEYing(MIKEY)」という名称の2011年6月のIETF RFC6267において説明されており、それらの文献の開示は両方とも、それらの全体が本明細書に引用により組み込まれている。
II.セキュアグループメッセージング
本明細書で詳細に解説されるように、本発明の実施形態は、参加者がエンドツーエンドでメッセージを暗号化することを可能にし、一方で同時に、中間のネットワークが鍵材料にアクセスできないことを確実にする、識別情報ベースの暗号化を利用するエンドツーエンドの鍵管理解決策を提供する。例えば上記で説明されたIBAKEプロトコルが、本明細書において以下で説明される例示的な実施形態において使用される。
本明細書で提供される解決策は、ネットワーク内で必要とされる計算リソースの環境においてきわめて最適でもあり、具体的にはメッセージングプロバイダは、メッセージごとの単位でのセキュリティサービスをサポートするために、ネットワーク内で何らかの暗号処理を行う要件を伴わない、控え目に使用されることになる(したがって自動的にきわめて利用可能となる)鍵管理サーバ(KMS)を設ける。KMSは中でも、上記でセクションIにおいて説明されたKGFの動作を遂行することを理解されたい。その上この解決策は、ピアツーピア(P2P)メッセージング、グループメッセージング、メッセージボード、マルチメディアメッセージング等を含む、ただしそれらに限定されないシナリオのホストに適用される。
次に、本明細書で説明される例示的な実施形態に関するいくつかの想定を説明する。しかしながら、これらの想定は限定的であることは意図されておらず、したがって、代替の実施形態が1つまたは複数の代替の想定を用いて実現され得ることを理解されたい。
通信システム内の1組のN人のユーザを含む友人グループ(GoF)を考える。ここで「友人」は、広範な含意を有する、すなわち、企業(例えば店、会社、投機的企業、団体等)または非企業環境(例えばソーシャルネットワーキング)内の個人を選択することが意図されることに留意されたい。このグループは、前もって知られているか、またはアドホックの様式で生成されるかのいずれかである。このGoFの各々の構成員が、このGoFの任意の他の構成員とメッセージをセキュアに交換すること、および、このGoFの構成員のみが読み応答することが可能なメッセージボードにメッセージを掲示することを望むということを想定する。この例示的な説明に関するセキュリティ想定は、以下のことを含む:
・所与のグループの構成員は、自分たち自身の間でのP2Pまたはグループの通信に先立って(アウトオブバンドで)何らかの鍵材料を交換することは求められていない。「アウトオブバンド」が、P2Pまたはグループのメッセージングセッションの前の、ピアまたは参加者の間だけの別個の専用のセッションを意味することを理解されたい。単に例として、アリスおよびボブがピアとして、何らかの形式でパスワードを使用してメッセージを暗号化する前に、電話を介して話し合い、パスワードに関して合意することが可能である。その電話のやり取りはアウトオブバンドとなる。
・セキュリティを可能にするために、メッセージングプロバイダが供与する任意の基盤サポートは、既存のネットワークセキュリティ解決策と比較してスケーラブルかつ軽量である。
・所与のグループの任意の構成員は、誰が他にオンラインであるかに無関係にメッセージを送出または掲示することが可能である。したがって、メッセージはサーバ(またはネットワーク要素)に格納され得るが、メッセージを格納するサーバはメッセージを解読可能ではない。より一般的にはメッセージングプロバイダは、任意のグループ内の加入者間で交換されるメッセージを暗号解読することは可能でない。
・グループの任意の2人の構成員間のセキュリティアソシエーションおよびP2P鍵は、それらの2人の構成員に一意的である。このことによってグループ構成員は、グループと無関係に「セキュアプライベートメッセージング」に携わることが容易になる。
・グループ通信に関係するセキュリティアソシエーションおよび関係するグループ鍵は、グループが拡大または縮小する際に鍵を修正するプロビジョニングを伴って、そのグループに一意的である。実際は、鍵は、グループ構成員が変えられていない場合でも(セキュリティポリシーに基づいて、例えば日単位で)「定期的に」更新される場合がある。
・認証され権限を与えられた構成員のみが、メッセージを送受信することが可能である。その上メッセージの受信者は誰でも、メッセージの作成者を「確認」することが可能である。
P2Pメッセージング:グループ鍵がP2P鍵と同じである、2人の構成員のグループからなるグループメッセージングの特別なケースとしてP2Pメッセージングを扱う。
以下のユースケースは、下記の対処される問題および提案される解決策を理解するためのフレームワークを提供する。しかしながらこれらのユースケースは、決して限定的ではなく、例示的な実施形態の理解を容易にすることのみが意図される。
1.一般的なユースケース:友人グループが企業内で、メッセージボードにメッセージを掲示し、無関係に互いに通信することを想定する。本明細書の実施形態は、メッセージボードがメッセージの内容を知得しないように、セキュアにメッセージングをどのように行うかに対処する。その上任意の2人のグループ構成員は、他のグループ構成員がメッセージを暗号解読することが可能でないような形で、グループとは無関係に互いにメッセージを送受信することが可能である。この後者の要件は、「セキュアプライベートサイドバー」メッセージング交換に相当する。
2.例示的な用途:サービスプロバイダが、病院環境内でメッセージングサービスをホストする、すなわち、ナースステーションが、特定の患者に関して対応を行う1組の医師(すべての医師ではない)にグループメッセージを送出することを想定する。このメッセージは、(オンラインである)記録への「リンク」を必然的に含む場合がある。このケースでは、グループを形成する医師のグループは、個々の患者がシステムに収容されるときに構成されることになる。患者が治療される際に、看護師および医師のグループは拡大または縮小する場合がある。患者が治療され退院させられると、そのグループはもはや存在しない。
3.アドホックメッセージング:2人の友人が、互いにメッセージを交換し、アドホックの様式で会話に他の友人を招くことを決心する。この設定ではすべてのメッセージが、グループの拡大を受け入れるように鍵を更新する用意を伴うグループ鍵を使用してセキュアにされる。これをアドホックグループメッセージングと呼ぶ。
次に、本発明の例示的な実施形態によるセキュアグループメッセージングのフレームワークおよび解決策を説明する。問題の形式的な説明から始め、それに続いて、識別情報ベースの暗号フレームワーク、および、その問題に対処することに向けて行う関係する想定を説明する。引き続き、セキュアグループメッセージングのフレームワークおよび解決策を提示する。
「友人グループ」を形成する1組のN人のユーザ
Figure 0005784833
を考える。各々のユーザUは、「友人」のみとメッセージを交換することを望み、ただし友人は、Uと親しくされ、Uのメッセージング情報をセキュアに受信する権限を与えられている任意のユーザ
Figure 0005784833
であると考えられ、Uおよび友人が友人グループ(GoF)を形成すると考えられる。メッセージは、GoFの構成員の間でセキュリティアソシエーション確立サポートを提供するメッセージングサービス基盤を利用することにより交換される。友人は、任意の時点ではオンラインまたはオフラインであり得る。換言すれば、必ずしもGoFのすべての構成員が、起こり得るグループベースのセキュリティアソシエーション確立処理手順に参加するために同時にオンラインであるとは限らない。この構図を考慮に入れて、本発明の実施形態は、GoFの構成員の間で交換されるメッセージをセキュアにする方法論/プロトコルを提供する。すなわち上記の表記でいえば、実施形態によって、Uにより共有される情報が、セキュアに交換され、認証された1組の(友人)ユーザのみにより取得されることが確実になる。さらに実施形態によって、(必要とされるならば)友人が、受信される情報が確かにUにより提供されることを確認することが可能になる。
上記で述べられたように、例示的な実施形態によるセキュアグループメッセージングプロトコルは、有利には参加者に、通信に先立って参加者自身の間で、アウトオブバンドで何らかのセキュリティ証明データを交換していることを求めず、プロバイダにより供与される鍵管理基盤サポートは、軽量かつスケーラブルである。
これらの利点を提供するために、例示的な実施形態は、上記でセクションIにおいて説明された識別情報ベースの暗号プロトコルに基づく識別情報ベースの暗号フレームワークを使用する。IBEフレームワークの態様は、以下のことを含む:
1.あらゆる参加者(すなわち、発明者らのケースでのクライアント)は、公開鍵および対応する秘密鍵を有する。
2.すべての公開鍵は、識別情報(電話番号、ログイン識別子、セッション開始プロトコル(SIP)ハンドルなど)に基づき、そのことにより、費用のかかる登録局(RA)および認証局(CA)に対する必要性がなくなる。
3.秘密鍵は、典型的にはプロバイダにより所有かつ運用される鍵管理サーバ(KMS)により計算される。KMSは、セキュア管理サービスを提供する第三者プロバイダにより所有される場合もある。その上KMSは、暗号演算において使用され、プロバイダとの結び付きを生成する公開パラメータを発行する。
4.公開鍵は、公開鍵(および対応する秘密鍵)が自動的に期限切れで無効になることを可能にする「日付」をさらに含む。このことによって、失効および関係する基盤に対する必要性が実際的になくなる。例えば公開鍵は、規定によりその日の終わりで、期限切れで無効になる「ID|本日の日付」と同様に単純である場合がある。
5.あらゆる参加者は、周期的に(例えばひと月に1回)KMSと連絡し、延長された期間(例えば次の30日、または加入の継続期間)に対する1組の鍵を取得する。
6.参加者は誰でも、その日付に対する受信者の公開鍵、および受信者のKMSの公開パラメータを使用することにより、他の誰に対しても情報を暗号化することが可能である。逆に受信者は、その日付に対する秘密鍵に基づいて情報を解読する。送出者は、受信者のみが、送出された情報を暗号解読することが可能であることが保証される。この識別情報ベースの暗号化フレームワークでは、受信者およびKMSのみが解読可能である。
7.上記のIBEフレームワークは、スケーラブルかつ軽量な公開鍵暗号化を考えに入れたものであるが、短所には、クライアント間の相互認証がないこと、および、KMSがあらゆる暗号化されたメッセージを解読可能である(すなわち、KMSが本来的な未処置の供託点である)という事実がある。
8.これらの短所は、相互認証、および受動的な鍵供託からの保護を提供する、上記で説明されたIBAKEプロトコルにおいて対処される。
本発明の実施形態は、次に説明するセキュアグループメッセージングプロトコルにおいてIBAKEプロトコルを採用する。この実施形態では、発明者らが対処することを望む問題の記述に関係する以下の想定を行う:
1.すべてのN人のユーザは、特定のユーザ識別情報に対応する鍵のペア(IBE秘密鍵およびIBE公開鍵)を有することが想定される。ユーザUのIBE秘密鍵KPRiは、Uにより秘密に保たれ、一方で対応する公開鍵KPUBiは、すべてのN人のユーザに利用可能にされる。
2.それによってGoFが形成されるオフライン機構が存在すると想定する。
3.メッセージングネットワーク事業者は、GoF形成(複数可)を認識している。一般的なケースにおいて、システム内のすべてのユーザを必然的に含む単一のGoFのみが存在する場合があることに留意されたい。
4.GoF構成員は、メッセージングネットワーク事業者が、交換されるメッセージ内部に包含される情報を取得可能であることを所望しない。
5.GoF構成員は、メッセージングネットワーク事業者を信頼し、IBE秘密鍵を含むプライベートのユーザ情報を開示しないと確信されるメッセージングプロバイダにより供与されるKMSを使用する。
セキュアグループメッセージングフレームワークのこの実施形態では、まず第1に、GoFが2人の構成員アリスおよびボブ(ただしアリスは、当事者Aのコンピューティングデバイスまたはクライアントデバイスを指し、ボブは、当事者Bのコンピューティングデバイスまたはクライアントデバイスを指す)を含むケースを説明する。引き続き、3人以上のユーザがGoFを構成するシナリオを含むように説明を拡大する。
下記では、E(k,A)は、情報Aが公開鍵kを用いて暗号化されることを示し、s||tは、文字列sおよびtの連結を示す。
A.GoFが2人の構成員を含むケース(P2Pメッセージングのケース)
図1は、本発明の実施形態によるセキュアグループメッセージングを実装する通信システム100を例示する。示されるようにシステム100は、第1のコンピューティングデバイス(アリス)102、第2のコンピューティングデバイス(ボブ)104、鍵管理サーバ(KMS)106、鍵管理エージェント(KMA)108、およびメッセージングサーバ114を示す。
KMS106およびKMA108は別個のサーバとして示されるが、それらは、同じサーバ上に、または3つ以上のサーバ上に実装される場合がある。例えばKMSおよびKMAの機能性は、同じサーバ複合体で、ただし地理的に分散された方式で実装される場合がある。例えばクライアントは、月単位の秘密鍵に関して(クライアントの請求先住所のために)ニューヨークにおいてKMS機能性に接続される場合がある。しかし所与の日付に、クライアントは移動しており、したがってカリフォルニアにおいてKMA機能性に接続される場合がある。本明細書の詳細な説明を考慮に入れると、様々な他の実装形態が実現されることになる。
さらに、ただ1つのメッセージングサーバがシステム100に示されているが、1つまたは複数のメッセージングプロバイダにより運用される2つ以上のメッセージングサーバが存在し得ることを理解されたい。その上さらに、図1は2人の参加者/構成員(アリスおよびボブ)のみを示すが、システム100は、典型的には多数の参加者/構成員を含むことになる。したがって本明細書で述べられるように、P2PメッセージングのシナリオはGoF内の2人の構成員だけを含み、一方でグループメッセージングのシナリオはGoF内の2人以上の構成員を含む。
この実施形態では、楕円曲線暗号化(ECC)が、1つまたは複数のGoFの構成員の間でセキュリティアソシエーションを確立するための機構として用いられる。その限りで、各々のユーザUは、IBE公開鍵を使用して1つの情報の識別情報ベースの暗号化を遂行することが可能であり、対応するIBE秘密鍵を使用して、Uに向けられたIBEで暗号化されたメッセージを解読することが可能であると考える。これらの算出は、有限体上の知られている超特異楕円曲線上で遂行される演算を必然的に含む。加えてこの構図は、鍵合意を遂行するために使用される、超特異でない、知られている楕円曲線E上の知られている点Pの使用を含む。
図1に示されるように、GoFがアリス102およびボブ104を含む、すなわち、アリスおよびボブが、セキュアメッセージングサービスに加入したユーザの組であることが想定されている。
KMS106は、特定の公開識別情報が与えられると、エンドユーザに対するIBE秘密鍵をセキュアに算出かつ配布するサーバである(例えば上記で組み込まれたRFC267を参照)。システム内のすべての参加者が、KMS106の公開パラメータを認識していることもまた想定されている。一例としての方法は、(認証局の公開鍵と同様に)クライアントにそのようなパラメータをプリロードするための、または、公開データベースからそれらのパラメータを取得するためのものであり得る。その上KMS106は、下記でさらに解説されるように、異なるユーザ識別情報および日付に関係がある様々な鍵構成要素を保存するリポジトリとしても働く。この構図を考慮に入れると、(セキュアメッセージングの環境での)クライアント(アリス102またはボブ104)とKMS106との間の基本的な対話は、以下の通りである。
クライアント(アリス102またはボブ104)は、周期的に(例えばひと月に1回、または加入継続期間ごとに1回)KMS106に秘密鍵を要求し取得する。そのような秘密鍵の数は、所与のセキュリティポリシーによって決まり、失効に対する必要性を実際的になくすことを確実にするために、有用な例は、1日ごとに1つの鍵(例えば、1つのトランザクションにおいてひと月の間にすべてが取得される30個の鍵)を使用することである。しかしながら本発明の実施形態は、いかなるそのような周期性にも限定されない。線110−Aは、アリス102に対するIBE秘密鍵プロビジョニングを示し、線110−Bは、ボブ104に対するIBE秘密鍵プロビジョニングを示す。
加えてあらゆるクライアントは、暗号法的にセキュアな擬似乱数「x」を(例えば1日ごとに1つ)生成し、知られている非超特異楕円曲線E上で(上記でセクションIにおいて説明されたように)xPの値を計算し、それらをKMS106に寄託する。この値xPは、その日に対するそのユーザの鍵構成要素として働く。例えば、セキュリティポリシーが、セッション鍵が1日ごとに1回リフレッシュされることを必然的に含み、KMSとのクライアントの対話がひと月ごとに1回であるとき、クライアントはxPの30個の値を算出し、それらをKMSに寄託する。KMSがxPおよびPを有する場合でも、楕円曲線離散対数は解くのが困難であるので、xを計算することは計算論的に困難であることに留意されたい。xPは、所与のクライアントのディフィ−ヘルマン鍵構成要素であることにも留意されたい。さらに、xPの値はセキュアな様式でKMSと共有されなければならないことに留意されたい。このことは、すべての参加者がプロキシベースの相互認証を遂行可能であることを確実にするために必要とされる。1つのKMSが図1に示されているが、各々のクライアント(アリス102およびボブ104)は異なるKMSと通信可能であり、2つのKMSが、必要とされるならば互いにセキュアな様式で通信可能であることを理解されたい。
1つまたは複数の実施形態においてKMA108は、すべての鍵合意トランザクションに対するプロキシである、論理ネットワーク要素(またはサーバ内で現実化されるソフトウェアコンポーネント)である。具体的にはこのプロキシエージェントは、IBAKEトランザクション(上記のセクションIBを参照)において「レスポンダ」の役割を遂行し、レスポンダが必ずしもオンラインでない場合でも、エンドツーエンドの鍵の確立を可能にする。この機能性は、以下のように達成される。
このエージェント108は、個々の日に対してGoF内のすべての構成員のすべての「xP」値を取得する(ただしPは、NIST楕円曲線E上の共通に合意された点であり、一方で「x」は大きな乱数である(例えば上記で組み込まれたRFC5091を参照))。所与のクライアントに対して、xPの同じ値が、所与の日付に対して(P2Pメッセージングのケースではアドレス帳であり得る)GoFのすべての構成員にわたって使用されることに留意されたい。さらに、このことは例にすぎず、一般にはxPの所与の値の効力の継続期間は、セキュリティポリシーであり、メッセージングプロバイダにより決定される。
KMA108は、すでに形成されたGoFを認識していることが想定される。換言すればKMA108は、ユーザ、およびそれらのユーザの様々なグループの構成員数を認識しており、それらのユーザは、セキュアメッセージサービスに加入しており、そのことにより、他のGoF構成員とセキュリティアソシエーションを確立するために使用される暗号材料を受信する権限を与えられている。
KMA108は、GoF内の各々の構成員とともにIBAKEプロトコルを遂行する、IBAKEレスポンダクライアントの機能性を遂行する。具体的にはGoFの各々の構成員は、1日に1回KMA108とセキュアに通信し、所与のイニシエータクライアントが構成員であるすべてのグループにわたって特定の日付に対するすべての他のGoF構成員の「xP」値を取得する。P2Pメッセージングの環境では、所与のイニシエータクライアントがKMA108から誰の「xP」の値を取得すべきかを決定するための機構として「アドレス帳」を使用することが可能である。
図1に図示されるシナリオでは、アリス102およびボブ104は、KMA108とともにIBAKEを別個に遂行する。線112−Aは、アリス102に対するIBAKE認証を示し、線112−Bは、ボブ104に対するIBAKE認証を示す。確立されたセキュリティアソシエーションによって、特定の日(例えば「本日」)に対して、アリスはボブの「bP」値を取得し、同様にボブはアリスの「aP」値をセキュアに取得する。「xP」値(図1ではx={a,b})が1日の持続期間に対して有効であることを考慮に入れると、各々のGoF構成員は、多くても1日ごとに1回KMA108とセキュアに連絡する必要がある。アリス102およびボブ104は、同時にオンラインである必要はなく、KMA108とのアリス102およびボブ104のそれぞれのトランザクションは、時間の異なる段階で起こる場合があることに留意されたい。
上記で解説されたように、アリス102およびボブ104は各々、(例えば上記で組み込まれたRFC6267にしたがって)2つの別個のIBAKE処理手順を使用して確立される、KMA108との個別のセキュアな接続によって、KMA108から互いの「xP」値を取得する。さらには、アリス102は値「abP」を計算し、一方でボブ104は(abPと同一である)「baP」を計算し、それらの値は、特定の日付に対する(以下でGoF鍵とも呼ばれる)「セッション」鍵である。結果としてアリス102およびボブ104は、アリス102およびボブ104にのみ知られているGoF鍵を最終的に導出することになる。図1に示される他のどのエンティティも、アリスおよびボブが各々計算するGoF鍵の値を取得することは可能でない。セッション鍵は、上記でセクションIBにおいて解説されたように、abP(baP)の関数として導出される場合もあることを理解されたい。
アリス102は、ボブ104とともにIBAKEを遂行しないことに留意されたい。アリスおよびボブの各々は、1日(またはあらかじめ定められた期間であるものすべて)ごとに1回、KMA108のみとともにIBAKEを遂行する。このことを考慮に入れると、アリス102およびボブ104は、信頼されるエージェント(KMA108)によって互いに相互認証される。エージェントに対する信頼は、(識別情報ベースの暗号化のすべてに対する基礎である)KMS106によって実際に確立されることに留意されたい。アリス102はKMA108を信頼して、対応するIBAKE処理手順によってボブ104を認証する。同様にボブ104は、アリス102がIBAKEを介してKMA108により認証されていることを想定する。1つのKMAが図1に示されているが、各々のクライアント(アリス102およびボブ104)が異なるKMAと通信可能であり、2つのKMAが互いにセキュアな様式で通信可能であることを理解されたい。
アリス102およびボブ104により共通に計算されるGoF鍵(「abP」)は、1つまたは複数のメッセージングサーバ(図1での114)を介してアリスとボブとの間で転送されるメッセージをさらに保護するために使用される。ボブが、共通GoF鍵を使用してアリスにより暗号化されているメッセージを何とか解読するならば、(再び、KMA108が信頼されるエンティティであることを考慮に入れると)アリスはGoF鍵を所有していることになっている唯一のものであるので、ボブはアリスのアイデンティティを(暗黙に)確認する。特に、イブ(図1に示されない、別のコンピューティングデバイス)が、所与のGoFの一員でないならば、イブは、グループ構成員のいずれに対してのものでもあるECDH(楕円曲線ディフィヘルマン)鍵構成要素の値を取得することはできない。
有利には、この解決策によってユーザは、絶えずオンラインである必要なしに、共有GoF鍵導出処理に携わる。確かにアリス102およびボブ104は、1日に1回、KMA108と連絡しGoF鍵を計算する。その後アリス102およびボブ104は、それらの都合でオフラインに移行し、オンラインに復帰することが可能である。一実装形態では、クライアントとKMAとの間のIBAKEセッションは、ユーザがトランザクションに介在することなく「1日に1回」走らされる(またはセキュリティ要件を満たすように適合される)場合があり、自動化される場合がある。ボブ104がオンラインになるときはいつでも、ボブ104は、ボブ104がオフラインであった間のアリス102からの受信されたメッセージがあればそれらを解読するために、個々の日付に対する計算されたGoF鍵を使用することが可能である。ボブは、場合によっては多くの日の間オフラインに移行することを決心する場合があることにも留意されたい。ボブがオンラインになると直ちに、ボブは、すべてのGoF構成員(または、P2Pメッセージングのための自分のアドレス帳内の人々)に対してKMA108に「xP」値を要求し、対応するGoF鍵を算出し、引き続きすべての入来するメッセージを解読することが可能である。アリス102が、自分のアドレス帳内にないデイビッド(示されない、さらに別のコンピューティングデバイス)と連絡することを所望するとき、アリスは、ネットワークによって、必要性に基づいてKMA108と連絡することにより、デイビッドが格納したxPの値を取得しに行くことが可能であることに注意されたい。解決策は、デイビッドがブラックリストを生成可能であり、ブラックリスト内の誰も、その日付に対するデイビッドの鍵構成要素xPを取得することが可能でない場合があるユースケースをサポートするように拡張される場合がある。
この解決策は、受動的な鍵供託の問題に対処する。換言すればこの解決策によって、メッセージングネットワーク事業者は、(事業者が場合によってはKMS106およびKMA108を所有するために)事業者がユーザのIBEプライベート/公開鍵をたとえ知っても、GoF構成員の間で交換される個別のメッセージに包含される情報を解読することは可能でない。アリス102およびボブ104が互いにメッセージを送っているとき、アリス102およびボブ104はセッション鍵abPを使用することに注意されたい。本明細書で解説されているように、KMS106およびKMA108は、aPおよびbPを認識しているが、E上のディフィ−ヘルマン問題に鑑みると、いずれのエンティティもabPを計算することは可能でない。
B.GoFが3人以上の構成員を含むケース
GoFが3人以上の構成員から構成されるケースは、2人の構成員のみの上記のケースと非常に類似している。主な違いは、KMA108と各々のGoF構成員との間で交換される情報のタイプに、および、GoF鍵の導出にある。グループメッセージングによって、すべてのGoF構成員は同じ鍵を導出し、したがって、グループ構成員(例えばアリス102)により暗号化されるメッセージは、あらゆる他のグループ構成員により解読され得ることに留意されたい。公開鍵は、日付との連結の前に、クライアント識別情報に加えてグループ識別情報を含み得る。
より具体的には、GoF構成員がKMS106およびKMA108と通信するときはいつでも、以下の情報が取得される:
・各々のグループ構成員は、P2PメッセージングのケースでのようにZ=xPの値を計算し、ただしPは、上記で説明されたようなNIST楕円曲線E上の共通に一致された点である。P、E、および他の公開パラメータは自由に利用可能であり、一方でxは、その日付に対する特定のGoF構成員に対応する乱数であることを想起されたい。P2Pメッセージングの状況でのように、あらゆるグループ構成員が、(例では1日ごとに1つ)これらのDH鍵構成要素の複数の値を寄託する。このことによっていずれの構成員も、KMA108と連絡し、すべてのGoF構成員のDH鍵構成要素値を取得することが可能になる。このステップは、P2Pメッセージングのケースにおいて説明されたケースと同一である。
・Z=xP(ただし下付き文字は第iのユーザを表す)に加えて、各々の構成員はさらに、KMS106からxi+1Pおよびxi−1Pの値を取得した後、X=x(xi+1P−xi−1P)の値を算出し、その値を(一般には、1日ごとに1つ、または複数の値を)KMS106に格納することになる。あるいはこれらのトランザクションは、クライアントが1日に1回KMA108に「ログインする」とき、直接KMA108によって遂行される場合があり、クライアントとKMAとの間のセキュリティアソシエーションは、(P2Pメッセージングの構図でのように)IBAKEトランザクションを含むことになる。
・Xiの1つまたは複数の値が、KMA108では新しくないときの状況が存在し得ることに留意されたい。そのような事例においては、(更新値が提供されるまでは)より古い値が使用される。しかしながら、すべての参加者が、自分の個人識別情報とともに「グループ識別情報」を使用することを考慮に入れると、Xiの1つまたは複数の値が古くなっている確率は、(所与のグループ内の)あらゆるグループ構成員に強制的に、KMS106と通信させ、すべての関連性があるトランザクションをおおよそ同時くらいに(例えば、お互いの1日または2日以内に、および新規の秘密鍵の使用に十分先立って)遂行させることにより劇的に最小限に抑えられる場合がある。あるいは追加的なグループ構成員が、誰でもオンラインである者によって、オンラインの構成員と新しい構成員との間に存在するP2P鍵を使用して、現在のグループ鍵を新しい構成員と共有することにより、GoF内に一時的に参加が許される場合がある。
・日単位(または、セキュリティ要件により指示されたような周期単位)で、KMA108は、各々のGoF構成員に、あらゆる他の構成員のZiおよびXの格納された値を提供する。より具体的には、アリス102がKMA108と連絡するときはいつでも、アリス102は、あらゆる他のGoF構成員のZおよびXの両方の値をセキュアに取得する。
このことを考慮に入れると、GoF構成員Uは、以下の式にしたがって導出される鍵Kを使用してメッセージDを暗号化する(ただしNはグループ内のユーザの数、すなわちGoFの濃度である):
=Nx(Z)+(N−1)X+(N−2)X+…+XN−1
そのような暗号化のために、任意の対称暗号(高度暗号化標準、すなわちAESなど)が使用され得ることに留意されたい。Dを暗号化することにより、Uは暗号テキストCD1を生成し、(例えば図1でのメッセージングサーバ114を介して)アクセスネットワークによってすべての他のGoF構成員に暗号テキストCD1を送出する。GoFに属するユーザU、…、Uは、それらのユーザの各々によりローカルに算出される鍵を使用することによりCD1を解読することが可能である。具体的には、N−1人のユーザからの各々のユーザUが、次式のように同じ鍵Kを算出する:
=Nx(Zi−1)+(N−1)X+(N−2)Xi+1+…+Xi−2
この鍵は、暗号化のために使用されたものと同じ暗号を使用してメッセージを解読するために、対応するGoF構成員によりさらに使用される。
次に図2に目を向けると、識別情報ベースの暗号化を用いるセキュアグループメッセージング方法論(プロトコル)200が、本発明の実施形態によって例示されている。方法論は、1つのクライアント202(例えばアリス102またはボブ104)、KMS204、およびKMA206の観点から例示されている(KMS204がKMS106に関して上記で説明されたように機能し、一方でKMA206がKMA108と同じに動作することに留意されたい)。図2は、(3人以上のGoF構成員を伴う)グループメッセージングのシナリオを例示する。
まず第1に、GoFが生成または規定されていることが想定される。GoFの各々の構成員は、自分たちの一意的な識別情報およびグループ識別情報(生成されたGoFの識別情報)を日付とともに(すべてが連結された状態で)使用して、公開鍵を導出する。したがってグループ構成員の公開鍵(公開id)は、グループid|ユーザid|日付のように算出され得る。
ステップ210において、クライアント202は、KMS204にクライアント202の公開鍵を送出し、KMS204から1つまたは複数の秘密鍵を取得する。このステップは、図1において線110−Aまたは110−Bによって図示される秘密鍵プロビジョニングに対応する。一実施形態では秘密鍵は、トランスポート層セキュリティ(TLS)セッションによってKMS204からクライアントにより取得され得る。
ステップ212において、クライアント202は、KMS204にDH鍵構成要素(Z)を寄託する。これらの構成要素は、クライアントが上記で説明されたように計算するxP(または上記で述べられたaPもしくはbP)値である。それらの値は、(周期性に応じて)ひと月の中のすべての日に対して計算され寄託される場合がある。すなわちユーザ「i」は、(1日ごとに1つ)j=1から30に対してのZij=aijPを寄託することになる。
次いでステップ214において、クライアント202は、KMA206と(その日付に対するZ値を用いて)IBAKEセッションを確立する。
KMA206から、ステップ216において、クライアント202は、GoF内の他の構成員に対するその日付に対するZ値を取得する。すなわちKMA206は、すべての日付「j」に対して、ユーザ「i」にZi−1,jおよびZi+1,jを返送する。
ステップ218において、クライアント202は、その日付に対してクライアント202のX値(クライアント202のセッション鍵寄与またはグループ鍵構成要素)を計算し、KMA206にその値を寄託する(このことはKMS204によって代替的に行われる場合があることに留意されたい)。すなわちユーザ「i」は、KMA206にXij=ai(Zi+1−Zi−1)を返送する。
ステップ220において、クライアント202は、他のユーザに対するその日付に対するX値をKMA206から受信する(すなわちクライアント202は、各々の他のユーザのセッション鍵寄与またはグループ鍵構成要素を受信する)。
次いでクライアント202は、ステップ222において、各々の他の参加ユーザが行うように、グループセッション鍵を計算し(例えば、グループ鍵=Nx(Zi−1)+(N−1)X+(N−2)Xi+1+…+Xi−2)、次いでグループセッション鍵を使用して他のユーザに対するメッセージを暗号化することが可能である。このように例えば、グループ構成員間のSMS/MMSメッセージが、グループセッション鍵を使用してAESを用いて暗号化される。これらのメッセージは、メッセージングサーバ114(図1)を介して構成員間で伝達される。グループセッション鍵はKMA206またはKMS204に知られていない、すなわち、権限を与えられたグループ構成員のみがグループ鍵を算出可能であることに留意されたい。さらにグループ構成員は、他者がオンラインになるのを待つことなく、任意の所与の日に、暗号化されたメッセージを送出することが可能である。このシナリオにおいて導出されるグループセッション鍵(GoF鍵としても知られている)は、「グループメッセージング鍵」とみなされ得ることに留意されたい。
図2に示される非限定的な例では、KMS204のトランザクションはひと月に1回遂行され得る。KMA206のトランザクションは1日に1回であり得るものであり、そのことにより、グループ構成員数が毎日更新されることを確実にする。さらにステップ216からステップ220に関して、この実施形態では、転送されるメッセージはIBAKEセッション鍵を使用してAESで暗号化されることを理解されたい。その上さらにステップ220は、ステップ216および218よりはるかに遅い時間に起こる場合がある。最適化が実装される場合がある。単に例として、KMAのトランザクションは、それらの最適化を現実に使用する前の日に遂行される場合がある。
図3は、本発明の別の実施形態による識別情報ベースの暗号化を用いるセキュアグループメッセージング方法論(プロトコル)300を例示する。図3は、P2Pメッセージング(GoF内の2人の構成員)を例示することを十分認識されたい。したがって方法論300は、方法論200の特別なケースとみなされ得る。図2と同じように方法論300は、1つのクライアント302(例えばアリス102またはボブ104)、KMS304、およびKMA306の観点から例示されている(KMS304がKMS106に関して上記で説明されたように機能し、一方でKMA306がKMA108と同じに動作することに留意されたい)。
ステップ310、312、および314は、図2でのステップ210、212、および214と同じに動作し、したがってさらには説明されないことに留意されたい。
P2PのケースではGoF内に唯一の他の構成員が存在するので、クライアント302、および他の構成員すなわちピアは、所与のピアツーピアセッションにおいて、他の当事者のZ値(xP値)からセッション鍵(GoF鍵)を計算する。この計算は、上記でセクションIBにおいて解説されているものと同じであり、すなわち、各々のピアがxyPを計算し、このxyPがセッション鍵として使用される(または上記で解説されたように、関数への入力として、セッション鍵を導出するために使用される)。
したがって図3のプロトコル300では、IBAKEセッションがクライアント302とKMA304との間で確立された後、クライアント302は、ステップ314において、クライアント302のアドレス帳内のユーザに対してその日付に対してKMA304からZ値を取得することが可能である。おそらくは、クライアント302がメッセージを送ることを望むピア(例えばボブ)は、クライアント302のデバイスに格納されているクライアント302のアドレス帳に記載されている。そうでないならばステップ318において、クライアント302は、クライアント302のアドレス帳内にないユーザに対してその日付に対してKMA304から値を取得することが可能である。
次いでステップ320において、クライアント302は、他のピアとのP2Pセッションのためのセッション鍵(GoF鍵)、すなわちこのケースではxyPを計算する。他のピアは、同じことを行うことになる。次いで、クライアント302と他のピアとの間のSMS/MMSメッセージが、P2Pセッション鍵を使用してAESなどの暗号化アルゴリズムを用いて暗号化される。これらのメッセージは、メッセージングサーバ114(図1)を介して構成員間で伝達される。P2Pセッション鍵はKMA306またはKMS304に知られていない、すなわち、クライアント302および他のピアのみがセッション鍵を算出可能であることに留意されたい。さらにクライアント302および他のピアは、他者がオンラインになるのを待つことなく、任意の所与の日に、暗号化されたメッセージを送出することが可能である。このシナリオにおいて導出されるGoF鍵は、「P2Pメッセージング鍵」とみなされ得ることに留意されたい。
一例としてのユースケースは以下の通りである。任意の所与の日に、アリスは何人かの人々にメッセージを送出していることになる。メッセージを送出することは連絡情報を必要とし、最適化の事情としてアドレス帳は重要性をもつので、アリスの電話が1日の中で初めてウェイクアップするとき、セキュアメッセージングクライアントは容易に、KMAに登録し、アリスのアドレス帳内のすべての構成員に対してxPのすべての値を取得することが可能である。それらの値の一部は、人は常に毎日自分のアドレス帳内のすべての人にメッセージを送出するとは限らないので、所与の日には使用されない場合がある。逆に人は確かに、自分のアドレス帳内にない人々にもメッセージを送出する。IBAKEベースのセキュアにされたメッセージングを用いると、このことは、アドレス帳内にない人に対するxP値を必要とすることになる。これに対して、メッセージングサービスのすべてのユーザが、自分のZ値を(それらのZ値をKMAに提供する)KMSに寄託することが想定されているので、その後所与のクライアントは、サービスのユーザの誰ともセキュアに通信することが可能である。
有利には詳細に上記で説明されたように、本発明の例示的な実施形態は、以下の解決策および特徴的機能を提供する:
(i)何らかのメッセージング交換の前にアウトオブバンドで互いに何らかのセキュリティ証明データを交換することなく、2人以上のユーザがセキュアにメッセージを交換することを可能にする、アクセス技術に関して不可知である、2人以上のエンドユーザの間でのエンドツーエンドのセキュアグループメッセージングに対する軽量の識別情報ベースの暗号解決策。
(ii)SMS、MMS、およびIMなどの標準的なP2Pメッセージング環境に加えて、上記で説明された解決策は、グループ鍵を使用して、ソーシャルネットワーキング環境において、および企業メッセージング環境において、グループメッセージング用途に適用される。
(iii)とりわけ、(P2Pおよびグループのメッセージング用途に対する)セッション鍵の算出は、メッセージ(複数可)の受信者に、メッセージが創始されているときにオンラインであることを求めない。
(iv)上記で説明された解決策は、メッセージングプロバイダのネットワークに内在する鍵管理エージェント(KMA)であって、エージェントがメッセージング通信を漏れ聞くことが可能でないような形で、ユーザから鍵材料を取得し、ユーザに鍵材料を広める、鍵管理エージェント(KMA)の概念を導入する。より一般的には、メッセージングプロバイダは、(鍵管理のサーバおよびエージェント、ならびに、他のバックエンドのデータベースおよびサーバの組み合わせによって)鍵管理のためのプラットフォームを提供するが、任意のメッセージを暗号化するために使用される鍵を知得する立場にはない。
(v)加えて上記で説明された解決策は、完全な順方向および逆方向の秘密性を達成し、KMAは、エンドツーエンドでプライバシーを保ちながら認証プロキシとして働く。
III.例示的なコンピューティングシステム
図4は、本発明の実施形態による2つ以上のエンティティ(当事者)間のセキュアグループメッセージング方法論(プロトコル)を実装するのに適した、ネットワーク環境、およびコンピューティングデバイスの形式での通信デバイスの一般化されたハードウェアアーキテクチャ400を例示する。図4は2つのエンティティのみを示すが、他のエンティティが同じ構成を有し得ることを理解されたい。したがって上記で説明されたセキュアグループメッセージングプロトコルでいえば、2つのエンティティは、アリス102(第1の当事者またはA)およびボブ104(第2の当事者またはB)であり得る。これに対してKMA、KMS、メッセージングサーバ、機能要素、追加的なクライアントデバイス(当事者)、および追加的なサーバは、図4のコンピューティングデバイスにおいて示されるのと同じアーキテクチャによって実装され得るものであり、したがって図4でのコンピューティングデバイスは、これらのシステム要素のうちの1つを表し得る。したがって簡単のために、本発明のプロトコルに参加し得るすべてのコンピューティングデバイス(通信デバイス)が図4に示されるわけではない。
示されるように、402と指定されたAのコンピューティングデバイス、および404と指定されたBのコンピューティングデバイスは、ネットワーク406を介して結合される。ネットワークは、例えば上記で説明された実施形態でのように、その両端でデバイスが通信可能である任意のネットワークであってよく、ネットワーク406は、ネットワーク事業者(例えばVerizon、AT&T、Sprint)により運営されるセルラー通信ネットワークなどの公衆アクセス可能な広域通信ネットワークを含み得る。しかしながら本発明の実施形態は、個々のタイプのネットワークに限定されない。典型的には、デバイスはクライアントマシンであり得る。本明細書で説明されるプロトコルに参加するために当事者により用いられ得るクライアントデバイスの例は、セルラー電話、スマートフォン、卓上電話、携帯情報端末、ラップトップコンピュータ、パーソナルコンピュータ等を含み得るが、それらに限定されない。これに対して、デバイスのうちの1つまたは複数はサーバであり得る。したがって、本発明の実施形態の通信プロトコルは、コンピューティングシステムがそれぞれクライアントおよびサーバであるケースに限定されるのではなく、代わりに、2つのネットワーク要素を備える任意のコンピューティングデバイスに適用可能であることを理解されたい。
当業者には容易に明白となるように、サーバおよびクライアントは、コンピュータプログラムコードの制御のもとで動作する、プログラムされたコンピュータとして実装され得る。コンピュータプログラムコードは、コンピュータ可読記憶媒体(例えばメモリ)に記憶されることになり、コードは、コンピュータのプロセッサにより実行されることになる。そのようなコンピュータ可読記憶媒体は、非一時的なコンピュータ可読媒体とみなされる場合もある。本明細書の本開示を考慮に入れれば、当業者は、本明細書で説明されたプロトコルを実装するために、適切なコンピュータプログラムコードを容易に生み出すことが可能である。
それでも図4は、ネットワークを介して通信する各々のコンピュータシステムに対する一例としてのアーキテクチャを一般的に例示する。示されるようにデバイス402は、I/Oデバイス408−A、プロセッサ410−A、およびメモリ412−Aを備える。デバイス404は、I/Oデバイス408−B、プロセッサ410−B、およびメモリ412−Bを備える。用語「プロセッサ」は、本明細書では、1つまたは複数の信号プロセッサ、1つまたは複数の集積回路等々を含むがそれらに限定されない、中央処理装置(CPU)または他の処理回路網を含む、1つまたは複数の処理デバイスを含むことが意図されることを理解されたい。さらに用語「メモリ」は、本明細書では、RAM、ROM、固定メモリデバイス(例えばハードドライブ)、またはリムーバブルメモリデバイス(例えばディスケットまたはCDROM)などの、プロセッサまたはCPUに関連するメモリを含むことが意図される。加えて用語「I/Oデバイス」は、本明細書では、処理装置にデータを入力するための1つまたは複数の入力デバイス(例えばキーボード、マウス)、および、処理装置に関連する結果を提供するための1つまたは複数の出力デバイス(例えばCRTディスプレイ)を含むことが意図される。
したがって、本明細書で説明された、本発明の方法論を遂行するためのソフトウェア命令またはコードは、関連するメモリデバイス、例えばROM、固定メモリ、またはリムーバブルメモリのうちの1つまたは複数に記憶され得るとともに、利用される準備ができたときに、RAMにロードされ、CPUにより実行され得る。
本発明の例示的な実施形態が、付随する図面を参照して本明細書で説明されたが、本発明はそれらの精密な実施形態に限定されないこと、ならびに、様々な他の変更および修正が、本発明の範囲または趣旨から逸脱することなく、当業者により行われ得ることを理解されたい。

Claims (27)

  1. ピアツーピア様式で第1のコンピューティングデバイスから第2のコンピューティングデバイスに、通信システム内で転送される少なくとも1つのメッセージをセキュアにするための方法であって、
    第1のコンピューティングデバイスで、識別情報ベースの認証された鍵交換セッションを、ピア認証者として動作する第3のコンピューティングデバイスと確立するステップであり、識別情報ベースの認証された鍵交換セッションが、識別情報ベースの認証された鍵交換セッションに関連する識別情報ベースの認証されたセッション鍵を有する、確立するステップと、
    第1のコンピューティングデバイスで、第2のコンピューティングデバイスのランダム鍵構成要素を第3のコンピューティングデバイスから取得するステップであり、第2のコンピューティングデバイスのランダム鍵構成要素が、第1のコンピューティングデバイスに第2のコンピューティングデバイスのランダム鍵構成要素を送出する前に、識別情報ベースの認証されたセッション鍵を使用して第3のコンピューティングデバイスにより暗号化される、取得するステップと、
    ピアツーピアメッセージング鍵を、第2のコンピューティングデバイスのランダム鍵構成要素を使用して第1のコンピューティングデバイスで計算するステップと、
    少なくとも1つのメッセージを、メッセージングサーバとして動作する第4のコンピューティングデバイスを介して、第2のコンピューティングデバイスに向けて第1のコンピューティングデバイスから送出するステップであり、少なくとも1つのメッセージが、送出の前にピアツーピアメッセージング鍵を使用して暗号化される、送出するステップと
    を含む、方法。
  2. 確立するステップ、取得するステップ、計算するステップ、および送出するステップが、第2のコンピューティングデバイスが通信システムからオフラインである間に、第1のコンピューティングデバイスにより遂行される、請求項1に記載の方法。
  3. 第2のコンピューティングデバイスが、通信システムにオンラインに戻った後に、メッセージを取得し、メッセージを解読する、請求項2に記載の方法。
  4. 第3のコンピューティングデバイスが鍵管理エージェントである、請求項1に記載の方法。
  5. 第1のコンピューティングデバイスが、第3のコンピューティングデバイス、または鍵管理サーバとして動作する第5のコンピューティングデバイスに、少なくとも1つのランダム鍵構成要素を計算して寄託するステップであり、第1のコンピューティングデバイスのランダム鍵構成要素が、第2のコンピューティングデバイスにより取得され、第1のコンピューティングデバイスが計算した同じピアツーピアメッセージング鍵を計算するために使用される、計算して寄託するステップをさらに含む、請求項1に記載の方法。
  6. 第1のコンピューティングデバイスが、第3のコンピューティングデバイスまたは第5のコンピューティングデバイスに、複数のランダム鍵構成要素を計算して寄託し、複数のランダム鍵構成要素の各々が所与の時間期間に対応する、請求項5に記載の方法。
  7. 第3のコンピューティングデバイスおよび第5のコンピューティングデバイスが、単一のサーバ上に併置される、請求項5に記載の方法。
  8. 第3のコンピューティングデバイスおよび第5のコンピューティングデバイスが、別個のサーバ上に配置される、請求項5に記載の方法。
  9. 第1のコンピューティングデバイスが、第1のコンピューティングデバイスに関連する公開識別情報に基づいて、第5のコンピューティングデバイスから少なくとも1つの秘密鍵を取得するステップをさらに含む、請求項5に記載の方法。
  10. ランダム鍵構成要素がディフィ−ヘルマン鍵構成要素である、請求項1に記載の方法。
  11. 第1のコンピューティングデバイスに関連するプロセッサにより実行されるときに、請求項1に記載の方法のステップを遂行する、1つまたは複数のソフトウェアプログラムを記憶するプロセッサ可読記憶媒体。
  12. 第1のコンピューティングデバイスから第2のコンピューティングデバイスおよび少なくとも第3のコンピューティングデバイスに、通信システム内で転送される少なくとも1つのメッセージをセキュアにするための方法であって、第1、第2、および第3のコンピューティングデバイスが、あらかじめ定められたグループを形成し、方法が、
    第1のコンピューティングデバイスで、識別情報ベースの認証された鍵交換セッションを、グループ認証者として動作する第4のコンピューティングデバイスと確立するステップであり、識別情報ベースの認証された鍵交換セッションが、識別情報ベースの認証された鍵交換セッションに関連する識別情報ベースの認証されたセッション鍵を有する、確立するステップと、
    第1のコンピューティングデバイスで、第2のコンピューティングデバイスのランダム鍵構成要素および第3のコンピューティングデバイスのランダム鍵構成要素を第4のコンピューティングデバイスから取得するステップであり、第2および第3のコンピューティングデバイスのランダム鍵構成要素が、第1のコンピューティングデバイスにランダム鍵構成要素を送出する前に、識別情報ベースの認証されたセッション鍵を使用して第4のコンピューティングデバイスにより暗号化される、取得するステップと、
    第1のコンピューティングデバイスで、グループ鍵構成要素を、第2および第3のコンピューティングデバイスのランダム鍵構成要素を使用して、第1のコンピューティングデバイスに対して計算するステップと、
    第1のコンピューティングデバイスに対するグループ鍵構成要素を、第4のコンピューティングデバイスに向けて第1のコンピューティングデバイスから送出するステップと、
    それぞれのグループ鍵構成要素を、第4のコンピューティングデバイスから第2および第3のコンピューティングデバイスに対して取得するステップと、
    グループメッセージング鍵を、第1、第2、および第3のコンピューティングデバイスのグループ鍵構成要素を使用して第1のコンピューティングデバイスで計算するステップと、
    少なくとも1つのメッセージを、メッセージングサーバとして動作する第5のコンピューティングデバイスを介して、第2および第3のコンピューティングデバイスに向けて第1のコンピューティングデバイスから送出するステップであり、少なくとも1つのメッセージが、送出の前にグループメッセージング鍵を使用して暗号化される、送出するステップと
    を含む、方法。
  13. 確立するステップ、取得するステップ、計算するステップ、および送出するステップが、第2のコンピューティングデバイスおよび第3のコンピューティングデバイスのうちの少なくとも1つが通信システムからオフラインである間に、第1のコンピューティングデバイスにより遂行される、請求項12に記載の方法。
  14. 第2のコンピューティングデバイスおよび第3のコンピューティングデバイスが、通信システムにオンラインに戻った後に、メッセージを取得し、メッセージを解読する、請求項13に記載の方法。
  15. 第4のコンピューティングデバイスが鍵管理エージェントである、請求項12に記載の方法。
  16. 第1のコンピューティングデバイスが、第4のコンピューティングデバイス、または鍵管理サーバとして動作する第5のコンピューティングデバイスに、少なくとも1つのランダム鍵構成要素を計算して寄託するステップであり、第1のコンピューティングデバイスのランダム鍵構成要素が、第2および第3のコンピューティングデバイスにより取得され、第1のコンピューティングデバイスが計算した同じグループメッセージング鍵を計算するために使用される、計算して寄託するステップをさらに含む、請求項12に記載の方法。
  17. 第1のコンピューティングデバイスが、第4のコンピューティングデバイスまたは第5のコンピューティングデバイスに、複数のランダム鍵構成要素を計算して寄託し、複数のランダム鍵構成要素の各々が所与の時間期間に対応する、請求項16に記載の方法。
  18. 第4のコンピューティングデバイスおよび第5のコンピューティングデバイスが、単一のサーバ上に併置される、請求項16に記載の方法。
  19. 第4のコンピューティングデバイスおよび第5のコンピューティングデバイスが、別個のサーバ上に配置される、請求項16に記載の方法。
  20. 第1のコンピューティングデバイスが、第1のコンピューティングデバイスに関連する公開識別情報に基づいて、第5のコンピューティングデバイスから少なくとも1つの秘密鍵を取得するステップをさらに含む、請求項16に記載の方法。
  21. 第2および第3のコンピューティングデバイスのランダム鍵構成要素の各々がディフィ−ヘルマン鍵構成要素である、請求項12に記載の方法。
  22. 第1のコンピューティングデバイスが、第2のコンピューティングデバイスおよび第3のコンピューティングデバイスのうちの1つのランダム鍵構成要素を使用して、ピアツーピアメッセージング鍵を計算することにより、第2のコンピューティングデバイスおよび第3のコンピューティングデバイスのうちの1つとピアツーピアセッションを確立するステップをさらに含む、請求項12に記載の方法。
  23. 第1のコンピューティングデバイスに関連するプロセッサにより実行されるときに、請求項12に記載の方法のステップを遂行する、1つまたは複数のソフトウェアプログラムを記憶するプロセッサ可読記憶媒体。
  24. ピアツーピア様式で第1のコンピューティングデバイスから第2のコンピューティングデバイスに転送される少なくとも1つのメッセージをセキュアにするための、通信システムの第1のコンピューティングデバイス内の装置であって、メモリに動作可能に結合されるプロセッサデバイスを備え、
    第1のコンピューティングデバイスで、識別情報ベースの認証された鍵交換セッションを、ピア認証者として動作する第3のコンピューティングデバイスと確立し、識別情報ベースの認証された鍵交換セッションが、識別情報ベースの認証された鍵交換セッションに関連する識別情報ベースの認証されたセッション鍵を有し、
    第1のコンピューティングデバイスで、第2のコンピューティングデバイスのランダム鍵構成要素を第3のコンピューティングデバイスから取得し、第2のコンピューティングデバイスのランダム鍵構成要素が、第1のコンピューティングデバイスに第2のコンピューティングデバイスのランダム鍵構成要素を送出する前に、識別情報ベースの認証されたセッション鍵を使用して第3のコンピューティングデバイスにより暗号化され、
    ピアツーピアメッセージング鍵を、第2のコンピューティングデバイスのランダム鍵構成要素を使用して第1のコンピューティングデバイスで計算し、
    少なくとも1つのメッセージを、メッセージングサーバとして動作する第4のコンピューティングデバイスを介して、第2のコンピューティングデバイスに向けて第1のコンピューティングデバイスから送出し、少なくとも1つのメッセージが、送出の前にピアツーピアメッセージング鍵を使用して暗号化される
    ように構成される、装置。
  25. 第1のコンピューティングデバイスから第2のコンピューティングデバイスおよび少なくとも第3のコンピューティングデバイスに転送される少なくとも1つのメッセージをセキュアにするための、通信システムの第1のコンピューティングデバイス内の装置であって、第1、第2、および第3のコンピューティングデバイスが、あらかじめ定められたグループを形成し、装置が、メモリに動作可能に結合されるプロセッサデバイスを備え、
    第1のコンピューティングデバイスで、識別情報ベースの認証された鍵交換セッションを、グループ認証者として動作する第4のコンピューティングデバイスと確立し、識別情報ベースの認証された鍵交換セッションが、識別情報ベースの認証された鍵交換セッションに関連する識別情報ベースの認証されたセッション鍵を有し、
    第1のコンピューティングデバイスで、第2のコンピューティングデバイスのランダム鍵構成要素および第3のコンピューティングデバイスのランダム鍵構成要素を第4のコンピューティングデバイスから取得し、第2および第3のコンピューティングデバイスのランダム鍵構成要素が、第1のコンピューティングデバイスにランダム鍵構成要素を送出する前に、識別情報ベースの認証されたセッション鍵を使用して第4のコンピューティングデバイスにより暗号化され、
    第1のコンピューティングデバイスで、グループ鍵構成要素を、第2および第3のコンピューティングデバイスのランダム鍵構成要素を使用して、第1のコンピューティングデバイスに対して計算し、
    第1のコンピューティングデバイスに対するグループ鍵構成要素を、第4のコンピューティングデバイスに向けて第1のコンピューティングデバイスから送出し、
    それぞれのグループ鍵構成要素を、第4のコンピューティングデバイスから第2および第3のコンピューティングデバイスに対して取得し、
    グループメッセージング鍵を、第1、第2、および第3のコンピューティングデバイスのグループ鍵構成要素を使用して第1のコンピューティングデバイスで計算し、
    少なくとも1つのメッセージを、メッセージングサーバとして動作する第5のコンピューティングデバイスを介して、第2および第3のコンピューティングデバイスに向けて第1のコンピューティングデバイスから送出し、少なくとも1つのメッセージが、送出の前にグループメッセージング鍵を使用して暗号化される
    ように構成される、装置。
  26. ピアツーピア様式で第1のコンピューティングデバイスから第2のコンピューティングデバイスに、通信システム内で転送される少なくとも1つのメッセージをセキュアにするための方法であって、
    ピア認証者として動作する第3のコンピューティングデバイスで、識別情報ベースの認証された鍵交換セッションを、第1のコンピューティングデバイスと確立するステップであり、識別情報ベースの認証された鍵交換セッションが、識別情報ベースの認証された鍵交換セッションに関連する識別情報ベースの認証されたセッション鍵を有する、確立するステップと、
    第2のコンピューティングデバイスのランダム鍵構成要素を、第3のコンピューティングデバイスから第1のコンピューティングデバイスに送出するステップであり、第2のコンピューティングデバイスのランダム鍵構成要素が、第1のコンピューティングデバイスに第2のコンピューティングデバイスのランダム鍵構成要素を送出する前に、識別情報ベースの認証されたセッション鍵を使用して第3のコンピューティングデバイスにより暗号化される、送出するステップと
    を含み、
    次いで第1のコンピューティングデバイスが、第2のコンピューティングデバイスのランダム鍵構成要素を使用してピアツーピアメッセージング鍵を計算すること、および、少なくとも1つのメッセージを、メッセージングサーバとして動作する第4のコンピューティングデバイスを介して、第2のコンピューティングデバイスに向けて第1のコンピューティングデバイスから送出することが可能であり、少なくとも1つのメッセージが、送出の前にピアツーピアメッセージング鍵を使用して暗号化される、方法。
  27. 第1のコンピューティングデバイスから第2のコンピューティングデバイスおよび少なくとも第3のコンピューティングデバイスに、通信システム内で転送される少なくとも1つのメッセージをセキュアにするための方法であって、第1、第2、および第3のコンピューティングデバイスが、あらかじめ定められたグループを形成し、方法が、
    グループ認証者として動作する第4のコンピューティングデバイスで、識別情報ベースの認証された鍵交換セッションを、第1のコンピューティングデバイスと確立するステップであり、識別情報ベースの認証された鍵交換セッションが、識別情報ベースの認証された鍵交換セッションに関連する識別情報ベースの認証されたセッション鍵を有する、確立するステップと、
    第2のコンピューティングデバイスのランダム鍵構成要素および第3のコンピューティングデバイスのランダム鍵構成要素を、第4のコンピューティングデバイスから第1のコンピューティングデバイスに送出するステップであり、第1のコンピューティングデバイスが、第2および第3のコンピューティングデバイスのランダム鍵構成要素を使用して、第1のコンピューティングデバイスに対するグループ鍵構成要素を計算することが可能であるように、第2および第3のコンピューティングデバイスのランダム鍵構成要素が、第1のコンピューティングデバイスにランダム鍵構成要素を送出する前に、識別情報ベースの認証されたセッション鍵を使用して第4のコンピューティングデバイスにより暗号化される、送出するステップと、
    第4のコンピューティングデバイスで、第1のコンピューティングデバイスに対するグループ鍵構成要素を第1のコンピューティングデバイスから取得するステップと、
    第1のコンピューティングデバイスが、第1、第2、および第3のコンピューティングデバイスのグループ鍵構成要素を使用してグループメッセージング鍵を計算すること、および、少なくとも1つのメッセージを、メッセージングサーバとして動作する第5のコンピューティングデバイスを介して、第2および第3のコンピューティングデバイスに向けて第1のコンピューティングデバイスから送出することが可能であるように、第2および第3のコンピューティングデバイスに対するそれぞれのグループ鍵構成要素を、第4のコンピューティングデバイスから第1のコンピューティングデバイスに送出するステップであり、少なくとも1つのメッセージが、送出の前にグループメッセージング鍵を使用して暗号化される、送出するステップと
    を含む、方法。
JP2014520376A 2011-07-15 2012-07-13 セキュアグループメッセージング Active JP5784833B2 (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201161508168P 2011-07-15 2011-07-15
US61/508,168 2011-07-15
US201161511845P 2011-07-26 2011-07-26
US61/511,845 2011-07-26
US13/548,835 US9166778B2 (en) 2011-07-15 2012-07-13 Secure group messaging
PCT/US2012/046704 WO2013012734A1 (en) 2011-07-15 2012-07-13 Secure group messaging
US13/548,835 2012-07-13

Publications (2)

Publication Number Publication Date
JP2014523206A JP2014523206A (ja) 2014-09-08
JP5784833B2 true JP5784833B2 (ja) 2015-09-24

Family

ID=46545534

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014520376A Active JP5784833B2 (ja) 2011-07-15 2012-07-13 セキュアグループメッセージング

Country Status (6)

Country Link
US (1) US9166778B2 (ja)
EP (1) EP2732578B1 (ja)
JP (1) JP5784833B2 (ja)
KR (2) KR101574030B1 (ja)
CN (1) CN103765810B (ja)
WO (1) WO2013012734A1 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101574030B1 (ko) 2011-07-15 2015-12-02 알까뗄 루슨트 안전한 그룹 메시징
US9419933B2 (en) * 2012-05-18 2016-08-16 University Of Florida Research Foundation, Incorporated Maximizing circle of trust in online social networks
KR20140041226A (ko) * 2012-09-27 2014-04-04 삼성전자주식회사 이동 통신 시스템에서 그룹 통신을 위한 보안 관리 방법 및 장치
IN2014MU00771A (ja) * 2014-03-06 2015-09-25 Tata Consultancy Services Ltd
US10504200B2 (en) 2014-03-13 2019-12-10 Verance Corporation Metadata acquisition using embedded watermarks
WO2015138798A1 (en) 2014-03-13 2015-09-17 Verance Corporation Interactive content acquisition using embedded codes
US9474095B2 (en) * 2014-03-26 2016-10-18 Intel IP Corporation Systems, methods, and devices for distributed setup for a device-to-device session
US9805434B2 (en) 2014-08-20 2017-10-31 Verance Corporation Content management based on dither-like watermark embedding
WO2016086047A1 (en) 2014-11-25 2016-06-02 Verance Corporation Enhanced metadata and content delivery using watermarks
US9942602B2 (en) 2014-11-25 2018-04-10 Verance Corporation Watermark detection and metadata delivery associated with a primary content
US9602891B2 (en) 2014-12-18 2017-03-21 Verance Corporation Service signaling recovery for multimedia content using embedded watermarks
KR101731161B1 (ko) * 2015-03-01 2017-04-28 이재규 모바일 디바이스를 이용한 정보제공 방법
CN106452770B (zh) * 2015-08-12 2020-10-13 深圳市腾讯计算机系统有限公司 一种数据加密方法、解密方法、装置和系统
US9590956B1 (en) 2015-12-18 2017-03-07 Wickr Inc. Decentralized authoritative messaging
CN114826673A (zh) 2016-07-06 2022-07-29 华为技术有限公司 一种传输数据的保护系统、方法及装置
JP6468567B2 (ja) 2016-09-01 2019-02-13 日本電信電話株式会社 鍵交換方法、鍵交換システム
US9722803B1 (en) * 2016-09-12 2017-08-01 InfoSci, LLC Systems and methods for device authentication
US10419226B2 (en) 2016-09-12 2019-09-17 InfoSci, LLC Systems and methods for device authentication
US10581781B1 (en) * 2016-09-27 2020-03-03 Ca, Inc. Systems and methods for facilitating negotiation and exchange of information between parties
US11012428B1 (en) * 2017-03-02 2021-05-18 Apple Inc. Cloud messaging system
US11128452B2 (en) * 2017-03-25 2021-09-21 AVAST Software s.r.o. Encrypted data sharing with a hierarchical key structure
US11463439B2 (en) 2017-04-21 2022-10-04 Qwerx Inc. Systems and methods for device authentication and protection of communication on a system on chip
EP3664005B1 (en) * 2017-06-07 2021-12-08 Nchain Holdings Limited Credential generation and distribution method and system for a blockchain network
US11196830B2 (en) * 2018-02-12 2021-12-07 International Business Machines Corporation Delivering messages to offline devices using peer-to-peer communication
TWI827906B (zh) * 2021-01-29 2024-01-01 銓安智慧科技股份有限公司 訊息傳輸系統以及應用其中之使用者裝置與資訊安全硬體模組
US11722741B2 (en) 2021-02-08 2023-08-08 Verance Corporation System and method for tracking content timeline in the presence of playback rate changes

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5159632A (en) * 1991-09-17 1992-10-27 Next Computer, Inc. Method and apparatus for public key exchange in a cryptographic system
EP0693836A1 (en) * 1994-06-10 1996-01-24 Sun Microsystems, Inc. Method and apparatus for a key-management scheme for internet protocols.
US6769060B1 (en) * 2000-10-25 2004-07-27 Ericsson Inc. Method of bilateral identity authentication
EP1425874B1 (en) * 2001-08-13 2010-04-21 Board Of Trustees Of The Leland Stanford Junior University Systems and methods for identity-based encryption and related cryptographic techniques
US7353395B2 (en) * 2002-03-21 2008-04-01 Ntt Docomo Inc. Authenticated ID-based cryptosystem with no key escrow
CN1633776A (zh) * 2002-04-15 2005-06-29 美国多科摩通讯研究所股份有限公司 利用双线性映射的签名方案
JP2004227042A (ja) * 2003-01-20 2004-08-12 Matsushita Electric Ind Co Ltd ライセンス配信サーバ、及びこれに接続されるライセンス再発行装置、並びに店頭サーバ
KR20040068499A (ko) * 2003-01-24 2004-07-31 마쯔시다덴기산교 가부시키가이샤 공유키 교환방법과 통신기기
US8422681B2 (en) * 2008-03-06 2013-04-16 International Business Machines Corporation Non-interactive hierarchical identity-based key-agreement
US8510558B2 (en) 2009-02-17 2013-08-13 Alcatel Lucent Identity based authenticated key agreement protocol
US8301883B2 (en) * 2009-08-28 2012-10-30 Alcatel Lucent Secure key management in conferencing system
US8644510B2 (en) * 2011-05-11 2014-02-04 Alcatel Lucent Discovery of security associations for key management relying on public keys
KR101574030B1 (ko) 2011-07-15 2015-12-02 알까뗄 루슨트 안전한 그룹 메시징

Also Published As

Publication number Publication date
EP2732578B1 (en) 2019-04-03
CN103765810B (zh) 2018-03-13
CN103765810A (zh) 2014-04-30
EP2732578A1 (en) 2014-05-21
US9166778B2 (en) 2015-10-20
KR20150091188A (ko) 2015-08-07
KR101574030B1 (ko) 2015-12-02
JP2014523206A (ja) 2014-09-08
KR20140024049A (ko) 2014-02-27
WO2013012734A1 (en) 2013-01-24
US20130182848A1 (en) 2013-07-18

Similar Documents

Publication Publication Date Title
JP5784833B2 (ja) セキュアグループメッセージング
US8769259B2 (en) Methods and apparatuses for secure information sharing in social networks using randomly-generated keys
JP5349619B2 (ja) アイデンティティベースの認証鍵共有プロトコル
EP2471212B1 (en) Secure key management in multimedia communication system
JP5775210B2 (ja) セキュリティアソシエーションの発見法
US8301883B2 (en) Secure key management in conferencing system
JP5727093B2 (ja) 公開鍵を利用した鍵管理のためのセキュリティアソシエーションの発見
Abobeah et al. Public-key cryptography techniques evaluation
Cakulev et al. MIKEY-IBAKE: Identity-Based Authenticated Key Exchange (IBAKE) Mode of Key Distribution in Multimedia Internet KEYing (MIKEY)
Cakulev et al. RFC 6267: MIKEY-IBAKE: Identity-Based Authenticated Key Exchange (IBAKE) Mode of Key Distribution in Multimedia Internet KEYing (MIKEY)

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150310

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150529

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150722

R150 Certificate of patent or registration of utility model

Ref document number: 5784833

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250