JP7212697B2 - 通信端末、通信システム、及びプログラム - Google Patents

通信端末、通信システム、及びプログラム Download PDF

Info

Publication number
JP7212697B2
JP7212697B2 JP2020553203A JP2020553203A JP7212697B2 JP 7212697 B2 JP7212697 B2 JP 7212697B2 JP 2020553203 A JP2020553203 A JP 2020553203A JP 2020553203 A JP2020553203 A JP 2020553203A JP 7212697 B2 JP7212697 B2 JP 7212697B2
Authority
JP
Japan
Prior art keywords
key
message
ciphertext
shared
message key
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
JP2020553203A
Other languages
English (en)
Other versions
JPWO2020085151A1 (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2020085151A1 publication Critical patent/JPWO2020085151A1/ja
Application granted granted Critical
Publication of JP7212697B2 publication Critical patent/JP7212697B2/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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • 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
    • H04L63/0471Network 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 applying encryption by an intermediary, e.g. receiving clear information at the intermediary and encrypting the received information at the intermediary before forwarding
    • 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
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage

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)
  • Information Transfer Between Computers (AREA)

Description

本発明は、サーバ装置に対しメッセージを秘匿したまま通信端末間でメッセージをやりとりする技術に関連するものである。
スマートフォン・タブレットの普及に伴い、メールにとって変わるメッセージングシステムとして近年、簡易な操作でメッセージ交換を行うことができるシステムが一般に使われるようになってきた。
そこで、情報共有が気軽にかつ即座に行えるという利点から、ビジネスでの使用を前提とするグループチャットシステム(例えば非特許文献1)も登場してきた。このようなグループチャットシステムは、企業の機密情報漏えいを考慮し、通信端末にデータを残さないクラウドベースのシステムになっている。
このようなグループチャットシステムにおけるデータはクラウドに保存されるため、グループから途中参加した場合や、通信端末を変更した場合であっても、それ以前の過去のデータをすべて閲覧することができる。これによって、例えば、人事異動等によって新たな部署に異動したり、プロジェクトに途中参加したりした場合でも、過去のやりとりされたデータを見ることで所属グループの状況把握が容易になる。
このようなクラウドベースのグループチャットシステムにおいては、通信路を暗号化することで通信経路上の盗聴防止がなされていたり、既に述べたように、通信端末にデータを残さないことによって通信端末の紛失や不正な持ち出しに起因する情報漏えい防止がなされていたりする。このように、従来のグループチャットシステムは「通信経路」と「通信端末」に対する脅威に対処している一方、サーバ装置に対する脅威への対処は不十分である。
ここでいうサーバ装置に対する脅威として「サーバ装置に対する外部からの攻撃」や「サーバ管理者等による内部不正」等が挙げられる。これらの脅威に対し、メッセージを暗号化して保存する、という対策が考えられる。しかしながら、サーバ装置側でメッセージを復号可能である以上、前述の脅威に対してサーバ装置からのメッセージ漏えいの可能性が依然として存在する。送受信・保存を行うサーバ装置に送られてくるメッセージがサーバ装置に対して秘匿化されている(サーバ装置側で盗聴されない)ことが重要である。
1つの方法として、サーバ装置に対してメッセージを秘匿し、通信端末でのみ復号可能なエンドツーエンドの暗号化通信を実現することが考えられる。この場合、通信端末間で用いる鍵をどのように共有するかが問題となる。この問題の解決策として例えば非特許文献2が開示されている。非特許文献2では中央に認証サーバをもつスター型のネットワークにおいて、認証サーバに対していかなる情報ももらさずに利用者間で鍵(以下、共有鍵)を共有するプロトコルが提案されている。
これによって、サーバ装置に対しメッセージを秘匿したまま通信端末間でやりとりすることができる。また、現在参加している通信端末でのみメッセージが読めるよう共有鍵の共有を行うため、ユーザの追加・削除等のイベントにより共有鍵が更新される。
NTTソフトウェア、"ビジネス向けグループチャットTopicRoom"、[online]、NTTソフトウェア、[平成29年9月28日検索]、インターネット<URL:https://www.ntt-yx.co.jp/products/topicroom/index.html> 小林鉄太郎、米山一樹、吉田麗生、川原祐人、冨士仁、山本具英「スケーラブルな動的多者鍵配布プロトコル」、SCIS2016-暗号と情報セキュリティシンポジウム-講演論文集、一般社団法人電子情報通信学会、平成28年1月、4E2-3
上記非特許文献2の技術によれば、サーバ装置に知られないよう、通信端末間で共有鍵を共有することで、サーバ装置に対しメッセージを秘匿したままやりとりすることができる。しかし、上記のような通信システムにおいては、共有鍵の更新に連動して、サーバ装置上で他の処理が発生する場合があり、サーバ装置の負荷が増大するおそれがある。特にグループチャットシステムのような、リアルタイム性が求められるシステムにおいて、サーバ装置上の処理に時間がかかるのは望ましくない。
本発明は、上記の点に鑑みてなされたものであり、サーバ装置に対しメッセージを秘匿したまま通信端末間でメッセージをやりとりするシステムにおいて、サーバ装置の負荷を軽減する技術を提供することを目的とする。
開示の技術によれば、グループ識別子が割り当てられたグループを形成する複数の通信端末間で、サーバ装置に対しメッセージを秘匿したまま、当該サーバ装置を介してメッセージの送受信を実行する通信システムにおいて使用される通信端末であって、
前記グループに属する複数の通信端末において共有される共有鍵と前記グループ識別子とからメッセージ鍵を生成するメッセージ鍵生成部と、
前記メッセージ鍵を、共有鍵を用いて再暗号化可能なように暗号化することによりメッセージ鍵暗号文を生成するメッセージ鍵暗号化部と、
前記メッセージ鍵の識別子であるメッセージ鍵識別子を生成するメッセージ鍵識別子生成部と、
メッセージを前記メッセージ鍵により暗号化することでメッセージ暗号文を生成するメッセージ暗号化部と、
前記メッセージ鍵暗号文、前記メッセージ鍵識別子、及び前記メッセージ暗号文を前記サーバ装置に送信する送信部と
を備えることを特徴とする通信端末が提供される。
開示の技術によれば、サーバ装置に対しメッセージを秘匿したまま通信端末間でメッセージをやりとりするシステムにおいて、サーバ装置の負荷を軽減する技術を提供することが可能となる。
関連技術を説明するための図である。 関連技術を説明するための図である。 関連技術を説明するための図である。 本発明に係る技術の概要を説明するための図である。 本発明に係る技術の概要を説明するための図である。 本発明に係る技術の概要を説明するための図である。 実施例における通信システムの構成を示すブロック図である。 実施例におけるサーバ装置の構成を示すブロック図である。 メッセージ暗号文記憶部におけるデータテーブルの例を示す図である。 メッセージ鍵暗号文記憶部におけるデータテーブルの例を示す図である。 実施例における通信端末の構成を示すブロック図である。 各装置のハードウェア構成の例を示す図である。 実施例の動作を説明するためのシーケンス図である。 実施例の動作を説明するためのフローチャートである。 実施例の動作を説明するためのフローチャートである。 実施例の動作を説明するためのシーケンス図である。
以下、図面を参照して本発明の実施の形態を説明する。以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。
(関連技術について)
本発明の実施例を説明するにあたり、まず、想定される関連技術とその課題を説明する。ただし、本発明が解決しようとする課題は、以下で説明する関連技術の課題に限られるわけではない。
前述した非特許文献2の技術によれば、サーバ装置に知られないよう、通信端末間で鍵を共有することで、サーバ装置に対しメッセージを秘匿したままやりとりすることができる。しかし、非特許文献2では、現在の参加メンバのみで共有鍵を共有するため、共有鍵はログイン・ログアウトイベントのようなユーザの追加・削除に伴って更新されたり、それ以外にも定期的に更新されたりすることがある。従って、現在参加している通信端末でのみ過去に蓄積されたメッセージを読めるようにするために、以前にサーバ装置に保存されたデータをサーバ装置側で復号することなく、更新された共有鍵を用いて通信端末側で復号可能なデータに更新する必要がある。これを再暗号化と呼ぶ。
この再暗号化を実現するために想定される関連技術を図1~図3を参照して説明する。本関連技術では、図1の右側部分に示すように、共有鍵が鍵1から鍵2に更新された後、鍵1と鍵2の両方を持つ通信端末が再暗号化鍵(「鍵1→2」)を生成し、当該再暗号化鍵をサーバ装置に送信する。サーバ装置は、当該再暗号化鍵を用いて再暗号化を実施する。再暗号化後のデータは、更新後の鍵2により復号可能である。より詳細な例を図2、図3を参照して説明する。
本関連技術では、図2に示すように、Camellia等の共通鍵暗号方式により、メッセージ鍵でメッセージを暗号化するとともに、そのメッセージ鍵を共有鍵で暗号化し、暗号化したメッセージ鍵と暗号化したメッセージを合わせた暗号文とする。そして、復号時には、共有鍵でメッセージ鍵を復号し、復号したメッセージ鍵でメッセージを復号する。
図3に示すように、再暗号化鍵による再暗号化は、暗号化したメッセージ鍵のみに対して実施される。これにより、再暗号化処理を効率的に行うことができる。
本関連技術において、メッセージ鍵が漏えいした際の安全性の観点から、メッセージ鍵をユーザの使う通信端末毎に生成することが想定される。しかしながら、メッセージ鍵をユーザの使う通信端末毎に生成すると、サーバ装置での再暗号化処理時間は共有鍵の更新回数×ユーザ数に比例する。従って、サーバ装置の負荷が大きくなるという課題がある。特に、チャットグループの人数が多い場合、サーバ装置の負荷増大の影響が大きくなる。
(本発明に係る技術の概要)
本発明に係る技術では、共有鍵の生存期間に合わせて、メッセージ鍵を同じチャットグループのユーザ全員で使い回すことを可能としている。これにより、再暗号化対象となる暗号文を削減でき、サーバ装置の負荷を軽減することができる。
そのために、メッセージ鍵を、チャットグループ間で共有した共有鍵と、サーバ装置+チャットグループ間で共有するグループ識別子groupIDとを混ぜ合わせて生成する。より具体的には、一例として、図4に示すように、共有鍵とgroupIDのうちの一方が漏えいしてもメッセージ鍵が漏えいしないようにするために、ねじれ疑似ランダム関数(あるいは疑似ランダム関数)を用いて混ぜ合わせる。
本発明に係る技術ではメッセージ鍵は共有鍵の更新に合わせて、グループ共通で生成される。したがって、関連技術では、再暗号化処理時間が「現時点までの共有鍵の更新回数×ユーザ数」に依存していたが、本発明に係る技術により再暗号化処理時間が「現時点までの共有鍵の更新回数」に依存することになり、再暗号化処理時間が格段に減少する。
すなわち、関連技術では、図5に例示しているように、メッセージの暗号文とメッセージ鍵暗号文とが一対一に対応しており、メッセージの数のメッセージ鍵暗号文が再暗号化の対象となり負荷が大きい。
一方、本発明に係る技術では、図6に例示しているように、同じ共有鍵における複数メッセージに1つのメッセージ鍵(鍵IDで識別)が対応するので、再暗号化の対象となるメッセージ鍵暗号文を大幅に減少させることができる。
以下、本発明の実施例を説明する。
(事前準備)
まず、実施例で説明する動作を実現するための事前準備について説明する。
集合Nを正の整数全体の集合とする。Kspace、Kspaceを鍵空間とする。実施例で使用する共通鍵ベースの再暗号可能な暗号方式は次の4つのアルゴリズム(KEM.Enc,KEM.Dec,KEM.ReKeyGen,KEM.ReEnc)からなる。以下、各アルゴリズムを説明する。なお、アルゴリズムを「関数」と呼んでもよい。
KEM.Enc(SKi1,K)→C (i1)
このアルゴリズムは、Kspaceの元SKi1とKspaceの元Kを入力とし、暗号文C (i1)を出力するアルゴリズムである。
KEM.Dec(SK,C (i))→K´
このアルゴリズムは、Kspaceの元SKと暗号文C (i)を入力とし、Kspaceの元Kを出力するアルゴリズムである。
KEM.ReKeyGen(SKi1,SKi2)→RKi1,i2
このアルゴリズムは、Kspaceの2つの元SKi1、SKi2を入力とし、再暗号化鍵RKi1,i2を出力するアルゴリズムである。
KEM.ReEnc(RKi1,i2,C (i1))→C (i2)
このアルゴリズムは、再暗号化鍵RKi1,i2と暗号文C (i1)を入力とし、再暗号化暗号文C (i2)を出力するアルゴリズムである。
なお、明細書における文字の記載の都合上、「SKi1」のように、添字を「i1」と記載しているが、これは「i」のことである。本明細書において、添字の添字に関しては、同様の記載方法を使用している。例えば、後述する「IDK1」の添字「K1」は「K」を意図している。
上記のアルゴリズムは以下の2条件を満たすものとする。
条件1.Kspaceの任意の元SKとKspaceの任意の元Kに対し、KEM.Dec(SK,KEM.Enc(SK,K))=K
条件2.任意の整数n>1とKspaceの任意の鍵の列SK,…,SKと任意のi∈{1,…,n-1}に対してKEM.ReKeyGen(SK,SKi+1)によって出力される再暗号化鍵の列RK1,2,…,RKn-1,nとKspaceの任意の元K,1≦i<i≦nを満たす任意のi,iに対して、
KEM.Dec(SKi2,KEM.ReEnc(RKi2-1,i2,…KEM.ReEnc(RKi1,i1+1,KEM.Enc(SKi1,K))))=K
上記を満たす再暗号方式の例として参考文献1での方式が挙げられる。なお、参考文献名は明細書の最後にまとめて記載した。
これは以下のようにして構成される。まず、qを素数とし、Zを整数環Zに対する、qを法とする剰余環とする。Gを位数qの巡回群とし、Kspace=Gとする。ここでは、巡回群Gを乗法群で考えるが、加法群と考えてもよい。また、Kspace=Zとする。さらに、Randを乱数空間とし、H:Rand→GをRandの定義域とし、Gを値域とするハッシュ関数とする。Kspace=ZとRandとの直積を定義域とし、Gを値域とする関数F:Kspace×Rand→GをF(SK,r)=H(r)SKで定義する。
KEM.Enc(SKi1,K)→C (i1)
r∈Randを一様ランダムに抽出し、C (i1)=(r,K+F(SK,r))を出力する。
KEM.Dec(SK,C (i))→K´
(i)=(r,C)と分解し、K´=C-F(SK,r)を出力する。
KEM.ReKeyGen(SKi1,SKi2)→RKi1,i2
RKi1,i2=SKi2-SKi1を出力する。
KEM.ReEnc(RKi1,i2,C (i1))→C (i2)
(i1)=(r,C)と分解し、C (i2)=(r,C+F(RKi1,i2,r))を出力する。
なお、再暗号可能な暗号方式(KEM.Enc,KEM.Dec,KEM.ReKeyGen,KEM.ReEnc)の例として参考文献1に開示された技術を挙げたが、上記以外の方法によって再暗号可能な暗号方式を実現してもよく、再暗号可能な暗号方式の実現方法は特定の方法に限定されない。
実施例で使用される共通鍵暗号方式は次の2つのアルゴリズム(Enc,Dec)からなり、それぞれ、以下の入出力をもつアルゴリズムである。
Enc(K,m)→C
このアルゴリズムは、Kspaceの元Kとメッセージmを入力とし、暗号文Cを出力するアルゴリズムである。
Dec(K,C)→m
このアルゴリズムは、Kspaceの元Kと暗号文Cを入力とし、メッセージmを出力するアルゴリズムである。
上記のアルゴリズムは以下の条件を満たすものとする。
Kspaceの任意の元Kと任意のメッセージmに対して、Dec(K,Enc(K,m))=m
上記を満たす暗号方式の例として、AESやCamellia等が挙げられるが、特定の方法に限定されない。
kをセキュリティパラメータとする。Dom、Rngをkに依存するサイズの空間とする。F={F:Dom→Rngs∈{0,1}kを関数族とする。任意の多項式時間識別器Dに対して、この関数族とランダム関数族RF={f:Dom→Rng}が識別困難であるとき、関数族Fを疑似ランダム関数族とよび、その元を疑似ランダム関数と呼
ぶ。疑似ランダム関数の例については参考文献2に記載されている。
FSをkに依存するサイズの鍵空間とし、疑似ランダム関数F:{0,1}×FS→Rngに対して、ねじれ疑似ランダム関数tPRF:{0,1}×FS ×{0,1}→Rng
Figure 0007212697000001
で定義する。なお、
Figure 0007212697000002
は排他的論理和である。参考文献3で挙げられるように、ねじれ疑似ランダム関数は入力(a,a´)か(b,b´)が漏えいしたとしても出力値が一様ランダムに選ばれた数と識別不可能であることがわかっている。
(システム構成)
次に、実施例のシステム構成を説明する。図7は、本実施例における通信システムの構成を示す図である。
図7に示すように、この通信システムは、サーバ装置100と、通信端末11、12、13を含む。これらの装置は、ネットワーク1を介して通信可能に接続されている。通信端末11、通信端末12、通信端末11はそれぞれ、例えば、パソコンやスマートフォン等であるが、特定の種類の装置に限定されない。図7に示すように、ユーザAが通信端末11を使用し、ユーザBが通信端末12を使用し、ユーザCが通信端末13を使用することを想定している。
本実装例の通信システムにおいては、通信端末11、通信端末12、通信端末11は、チャットメッセージをやり取りするユーザのグループを形成することができる。なお、やり取りするメッセージが「チャット」のメッセージであることは一例であり、「チャット」以外のアプリケーションのメッセージを対象としてもよい。
(装置構成)
以下、各装置の機能構成を説明する。各装置を構成する機能部の具体的な処理動作については、後の動作例のところでシーケンス図及びフローチャートを参照して説明する。
図8は、サーバ装置100の構成を示すブロック図である。図8に示すように、サーバ装置100は、メッセージ暗号文とメッセージ鍵識別子の組を保存するメッセージ暗号文記憶部101、メッセージ鍵暗号文とメッセージ鍵識別子の組を保存するメッセージ鍵暗号文記憶部102、グループ毎のユーザ情報を記憶するグループユーザ記憶部103、再暗号化処理部104、暗号文受信部105、暗号文送信部106を有する。
再暗号化処理部104は、通信端末から再暗号化鍵を受信すると、メッセージ鍵暗号文と再暗号化鍵から、更新後の共有鍵でメッセージ鍵暗号文を復号できるような新しいメッセージ鍵暗号文を生成する処理部である。
サーバ装置100のメッセージ暗号文記憶部101には、図9に示すとおり、メッセージ暗号文とメッセージ鍵識別子(1つのメッセージ鍵が複数のメッセージに使用される)が対応付けて格納される。また、メッセージ鍵暗号文記憶部102には、図10に示すとおり、メッセージ鍵識別子とメッセージ鍵暗号文が対応付けて格納される。なお、図10は、再暗号化前後の状態を示している。
図11は、通信端末11、12、13の構成を示すブロック図である。図11に示すように、通信端末11、12、13は、共有鍵を保存する共有鍵記憶部111、メッセージ鍵を保存するメッセージ鍵記憶部112、メッセージ鍵識別子を保存するメッセージ鍵識別子記憶部113、共有鍵とグループ識別子からメッセージ鍵を生成するメッセージ鍵生成部121、メッセージ鍵からメッセージ鍵識別子を生成するメッセージ鍵識別子生成部122、共有鍵更新後の最初のメッセージ送信かを判定するメッセージ鍵管理部123、共有鍵が更新された際に、更新前の共有鍵と更新後の共有鍵から再暗号化鍵を生成する再暗号化鍵生成部124、共通鍵暗号方式に基づいてメッセージ鍵とメッセージからメッセージ暗号文を生成するメッセージ暗号化部125、共通鍵暗号方式に基づいてメッセージ鍵とメッセージ暗号文からメッセージを復号するメッセージ復号部126、再暗号可能な共通鍵暗号方式に基づいて共有鍵とメッセージ鍵からメッセージ鍵暗号文を生成するメッセージ鍵暗号化部127、再暗号可能な共通鍵暗号方式に基づいて共有鍵とメッセージ鍵暗号文からメッセージ鍵を復号するメッセージ鍵復号部128、暗号文送信部129、暗号文受信部130を有する。
本実施例では、通信端末11、12、13は同じ機能構成を有することを想定している。ただし、ある通信端末は再暗号化鍵生成部124を持たず、別の通信端末は再暗号化鍵生成部124を持つようなシステム構成であってもよい。
サーバ装置100、通信端末11、12、13はいずれも、コンピュータに内蔵されるCPUやメモリ等のハードウェア資源を用いて、当該装置で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メール等、ネットワークを通して提供することも可能である。
図12は、上記コンピュータのハードウェア構成例を示す図である。図12のコンピュータは、それぞれバスBで相互に接続されているドライブ装置150、補助記憶装置152、メモリ装置153、CPU154、インタフェース装置155、表示装置156、及び入力装置157等を有する。
当該コンピュータでの処理を実現するプログラムは、例えば、CD-ROM又はメモリカード等の記録媒体151によって提供される。プログラムを記憶した記録媒体151がドライブ装置150にセットされると、プログラムが記録媒体151からドライブ装置150を介して補助記憶装置152にインストールされる。但し、プログラムのインストールは必ずしも記録媒体151より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置152は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置153は、プログラムの起動指示があった場合に、補助記憶装置152からプログラムを読み出して格納する。CPU154は、メモリ装置153に格納されたプログラムに従って、当該装置に係る機能を実現する。インタフェース装置155は、ネットワークに接続するためのインタフェースとして用いられ、ネットワークを介した入力手段及び出力手段として機能する。表示装置156はプログラムによるGUI(Graphical User Interface)等を表示する。表示装置156は出力手段の例でもある。入力装置157はキーボード及びマウス、ボタン、又はタッチパネル等で構成され、様々な操作指示を入力させるために用いられる。
以下、本実施例に係る通信システムの動作について詳細に説明する。
(システムの動作)
<グループ識別子と共有鍵について>
前述したように、本実施例の通信端末は、チャットメッセージをやり取りするユーザのグループを形成する。各グループには識別子が与えられている。
図7に示したように、通信端末11、通信端末12、通信端末13の利用者をそれぞれユーザA、ユーザB、ユーザCとする。ユーザA、ユーザB、ユーザCはグループ識別子groupIDを持つグループに属しているものとし、各通信端末はgroupIDをメモリ等に記憶しているものとする。
なお、groupIDの生成方法は特定の方法に限定されないが、groupIDはサーバ装置10が擬似乱数生成器によって生成したものであることが望ましい。また、groupIDはこのグループに属するユーザ(A、B、C含む)とサーバ装置10以外には知られないようにすることが望ましい。そのために、例えば、サーバ装置10が各通信端末にgroupIDを共有する際、TLS等の暗号通信プロトコルを使って秘匿化して送信する。
次に、実施例で使用される共有鍵について説明する。共有鍵は、グループ毎で、そのグループに属するユーザが利用する通信端末間で共有される鍵のことをいう。その通信端末以外の、例えばサーバ装置10に対して共有鍵に関していかなる情報ももらさずに鍵を共有するプロトコルとして、例えば参考文献3に記載された方法が挙げられるが、共有鍵共有方法については特定の方法に限定されるわけではない。
なお、本実施例では、共有鍵を安全に共有するために、グループにユーザが追加される、グループからユーザが離脱する、一定時間が経過する、ユーザがログイン/ログアウトする度に共有鍵が生成されるものとする。ただし、これも一例であり、共有鍵が生成されるタイミングはこれら以外のタイミングであってもよい。以降、グループ識別子groupIDの集合をGIDと記載する。
以下、Kspace=Kspace=Kspace=GIDとする。
(動作シーケンス)
以下、図13~図16のシーケンス図及びフローチャートに示す手順に沿って、本実施例の通信システムの動作を説明する。
<共有鍵とメッセージ鍵の生成>
図13に示す動作の前提として、ユーザA,B,Cはそれぞれ通信端末11、通信端末12、通信端末13を使ってグループチャットシステムにログインしているとする。また、通信端末11、通信端末12、通信端末13が属するグループgroupIDにおいて共有鍵SKが生成されたとする。共有鍵の空はKspace=Kspaceであるとする。通信端末11、12、13は共有鍵SKをそれぞれ共有鍵記憶部111に保存しているものとする。
ここで、F:Kspace→Kspaceを疑似ランダム関数とする。シードs∈{0,1}は通信端末11、12、13であらかじめ共有されているものとする。なお、{0,1}はkビット長のバイナリ系列の集合を表す。
図13のS101において、通信端末11、12、13ではそれぞれ、メッセージ鍵生成部121が、メッセージ鍵K:=F(groupID,SK)を計算する。メッセージ鍵Kはメッセージ鍵記憶部112に記憶される。
このメッセージ鍵は疑似ランダム関数でなく、ねじれ疑似ランダム関数で生成してもよい。例えば、K:=tPRF(groupID,groupID,SK,SK)として生成する。
S102において、通信端末11、12、13ではそれぞれ、メッセージ鍵識別子生成部122が、Kに対するメッセージ鍵識別子IDK1を生成する。IDK1は各通信端末において同じ値を生成するものとする。IDK1の生成方法として、例えば、SHA256ハッシュ関数を用いて、KをSHA256ハッシュ関数に入力した際の出力値をIDK1とする方法がある。ただし、IDK1の生成方法は特定の方法に限定されない。
通信端末11、12、13はIDK1をそれぞれメッセージ鍵識別子記憶部113に保存する。
<メッセージ送信>
本実施例では、ユーザAが通信端末11を用いて、グループgroupIDにメッセージmを送るものとする(図13のS103、S104)。なお、この時点で通信端末11は、メッセージ鍵Kとその識別子IDK1を生成しているものとする。
図13のS103、S104の処理内容を図14のフローチャートを参照して説明する。
通信端末11がメッセージmを送信する際、まず、S201において、メッセージ鍵管理部123が、この送信しようとするメッセージが、共有鍵SK生成後、通信端末11における最初のメッセージ送信であるか否かを判定する。
S201の判定結果がYesである場合、S202に進み、通信端末11のメッセージ暗号化部125は、メッセージmの暗号文C2,m←Enc(K,m)を生成する。
また、S203において、メッセージ鍵暗号化部127は、メッセージ鍵の暗号文C(1) 1,K1←KEM.Enc(SK,K)を生成する。
そして、S204において、暗号文送信部129が、サーバ装置10に(groupID,IDK1,C(1) 1,K1,C2,m)を送信する。送信された(groupID,IDK1,C(1) 1,K1,C2,m)は、サーバ装置10の暗号文受信部105が受信する。(C(1) 1,K1,C2,m)に関して、他のメッセージや他のメッセージ鍵の暗号文との区別をつけるため、便宜上K1,mを記しているだけであり、暗号文からK1,mがただちに推測されるわけではない。
S201の判定結果がNoである場合、S211に進み、通信端末11のメッセージ暗号化部125が、メッセージの暗号文C2,m←Enc(K,m)を生成する。通信端末11の暗号文送信部129は、メッセージ鍵識別子記憶部113からメッセージ鍵識別子IDK1を取り出し(S212)、サーバ装置10に(groupID,IDK1,C2,m)を送信する(S213)。送信された(groupID,IDK1,C2,m)は、サーバ装置10の暗号文受信部105が受信する。
<メッセージ配信>
サーバ装置10が通信端末11から上述した暗号化メッセージを受信すると、配信のための処理を実行する(図13のS105~S107)。なお、ここでは、メッセージ受信をトリガーにして他の通信端末への配信動作を行うこととしているが、これは一例に過ぎない。ユーザの追加やログイン、その他通信端末からの要求に応じて、サーバは保存された暗号化メッセージを当該通信端末に配信することもある。
図13のS105~S107の動作を、図15のフローチャートを参照して説明する。
まず、サーバ装置10は、通信端末11から送信され、サーバ装置10の暗号文受信部105が受信したメッセージの形式を判断する。
通信端末11から送信されたメッセージの形式が(groupID,IDK1,C(1) 1,K1,C2,m)である場合、S302に進み、メッセージ暗号文記憶部101に(IDK1,C2,m)を保存する。
また、S303において、サーバ装置10は、メッセージ鍵暗号文記憶部102に(IDK1,C(1) 1,K1)を保存する。なお、他の通信端末からのメッセージを受信し、(IDK1,C(1) 1,K1)を既に保存していた場合は、ここでの保存は行わない。
S304(図13のS106、S107)において、サーバ装置10の暗号文送信部106は、グループユーザ記憶部103に保存されている、groupIDのグループに所属するユーザ(ユーザB、Cを含む)の情報(例:宛先アドレス)を取り出し、当該情報を用いて、各ユーザに向けて(C(1) 1,K1,C2,m)を送信する。なお、本実施例では、サーバ装置10の暗号文送信部106は通信端末12、通信端末13に(C(1) 1,K1,C2,m)を送信する。
S301の判断の結果、通信端末11から送信されたメッセージの形式が(groupID,IDK1,C2,m)である場合、S311に進む。S311において、サーバ装置10は、メッセージ暗号文記憶部101に(IDK1,C2,m)を保存する。
続いて、サーバ装置10の暗号文送信部106は、メッセージ鍵暗号文記憶部102から、IDK1に紐付くメッセージ鍵暗号文C(1) 1,K1を取り出し(S312)、グループユーザ記憶部103に保存されている、groupIDのグループに所属するユーザ(ユーザB、Cを含む)の情報を取り出し、当該情報を用いて各ユーザに向けて(C(1) 1,K1,C2,m)を送信する(S313)。なお、本実施例では、サーバ装置10は通信端末12、通信端末13に(C(1) 1,K1,C2,m)を送信する。
<メッセージ受信>
次に、メッセージの受信について説明する。この時点でチャットグループで共有されている共有鍵をSKとする。通信端末12、13のそれぞれがメッセージ鍵暗号文とメッセージ暗号文の組(C(2) 1,K1,C2,m)を受信するが、ここでは、通信端末12の動作のみを図13を参照して説明する。通信端末13においても同様の動作が実施される。なお、ここで使用されるメッセージ鍵Kは必ずしも共有鍵SKで生成されたメッセージ鍵であるとは限らない。
図13のS106により、通信端末12の暗号文受信部130が、サーバ装置10から(C(2) 1,K1,C2,m)を受信すると、S108において、メッセージ鍵復号部128は、共有鍵記憶部111から最新の共有鍵SKを取り出し、K←KEM.Dec(SK,C(2) 1,K1)を計算してメッセージ鍵Kを復号する。
その後、S109において、メッセージ復号部126が、S108で復号したメッセージ鍵Kを用いて、m←Dec(K,m)を計算してメッセージmを復号する。これによって、通信端末12は通信端末11から送信されたメッセージmを正しく表示できる。
<共有鍵更新と再暗号化鍵生成>
共有鍵更新と再暗号化鍵生成の動作を図16のシーケンス図を参照して説明する。ここでは、更新前後の共有鍵がSK、SKであるとする。
S401において、通信端末11、通信端末12、通信端末13が属するグループgroupIDにおいて、メッセージ鍵の暗号化に使用される共有鍵がSKからSKに更新されたとする。このとき、通信端末11、通信端末12、通信端末13は最新の共有鍵SKを共有しており、各通信端末の共有鍵記憶部111に共有鍵SKを保持している。
また、通信端末13は、共有鍵記憶部11において更新前の共有鍵SKも保持しているものとする。なお、共有鍵SK,SKはサーバ装置10は知らない。
また、サーバ装置10は、メッセージ鍵暗号文記憶部102において、groupIDに付随する暗号文、すなわち、グループgroupID向けに送信されたメッセージ鍵暗号文、C(a) 1,Ki1,....,C(a) 1,Kinを保持しているものとする。なお、i,....,iは本実施例を記述する上で用いた、メッセージ鍵を区別する添字である。例えば、図10に示す例では、メッセージ鍵としてK、K、Kが使用されたことが示されている。
S402において、通信端末13の再暗号化鍵生成部124は、RKa,b←KEM.ReKeyGen(SK,SK)を計算して再暗号化鍵RKa,bを生成する。S403において、通信端末13の暗号文送信部129(他の送信機能が実施してもよい)は、グループ識別子と再暗号化鍵の組(groupID,RKa,b)をサーバ装置10に送信する。
<再暗号化>
S403において、サーバ装置10の暗号文受信部105(他の受信機能が実施してもよい)が通信端末13からグループ識別子と再暗号化鍵の組(groupID,RKa,b)を受信する。
続いて、再暗号化処理部104が、各j∈{i,....,i}に対して、以下のS404~S406の処理を繰り返し実行する。
再暗号化処理部104は、メッセージ鍵暗号文記憶部102からメッセージ鍵暗号文C(a) 1,Kjを取り出し(S404)、C(b) 1,Kj←KEM.ReEnc(RKa,b,C(a) 1,Kj)を実行して、再暗号化後のメッセージ鍵暗号文C(b) 1,Kjを算出する(S405)。
再暗号化処理部104は、メッセージ鍵暗号文記憶部102において、メッセージ鍵暗号文C(a) 1,Kjに対して再暗号化後のメッセージ鍵暗号文C(b) 1,Kjを上書き保存する(S405)。図10に、再暗号化後のメッセージ鍵暗号文C(b) 1,Kjが上書き保存されることが示されている。
図10に示すとおり、この処理後、各メッセージ鍵識別子には変更はない。そのため、メッセージ暗号文記憶部101にあるメッセージ暗号文とメッセージ鍵暗号文記憶部102にあるメッセージ鍵暗号文の対応関係に変化はない。上記処理後、サーバ装置10から配信されたgroupIDに付随する暗号文を受信した通信端末は、最新の共有鍵SKを保持していれば、メッセージ受信時と同じ動作によって、各メッセージを正しく復号することができる。
(実施例の効果等)
以上、説明したように、本実施例では、グループごとに一意のIDであるグループ識別子が存在し、グループ識別子は、サーバ装置とそのグループに存在するユーザ間であらかじめ共有されている。
メッセージの暗号化には共通鍵暗号方式を利用し、メッセージの暗号化に利用した鍵であるメッセージ鍵は、共通鍵ベースの再暗号可能な暗号方式を利用して共有鍵で暗号化する。本実施例では、メッセージ鍵を各メッセージの暗号化ごとに生成するのではなく、共有鍵とグループ識別子を擬似ランダム関数またはねじれ疑似ランダム関数に入力して得た出力をメッセージ鍵として、そのグループで共通に使用する。これにより、共有鍵とグループ識別子の一方が漏えいしてもメッセージ鍵は漏えいしないので、グループのユーザ全員で安全にメッセージ鍵を共有できる。
サーバ装置ではメッセージの暗号文とメッセージ鍵の暗号文とを別テーブル(例:図9、図10)で保存するが、その際、サーバ装置側でどのメッセージに対してどの鍵が使いまわされているかを知ることができるようにするために鍵の識別子(鍵ID)を付加し、これをキーに別テーブルに保存する。
既に説明したとおり、再暗号化処理が行われる際、サーバ装置はメッセージ鍵の暗号文を保存しているテーブル(例:図10)のみを更新する。再暗号化処理が行われる対象であるメッセージ鍵の暗号文の数は、現在までの共有鍵の更新回数に等しいため、関連技術と比べて、再暗号化処理のためのサーバ装置の負荷が軽減される。
すなわち、再暗号化処理が効率化されるため、ユーザのログイン時の複数メッセージダウンロードや、複数ユーザが短い間隔で行うときのログアウト処理時間が削減され、ユーザの体感時間の軽減が実現される。
また、メッセージ鍵をメッセージ毎に生成するのではなく、複数メッセージに使いまわすため、メッセージ投稿時の暗号化処理時間も減少する。
よって、本技術を実装した暗号ビジネスチャットにおけるログイン/ログアウト/メッセージ投稿におけるユーザの体感時間を、エンドツーエンド暗号化のされていない従来のビジネスチャットでのログイン/ログアウト/メッセージ投稿に関する体感時間に近づけることができ、安全かつ効率的な暗号ビジネスチャットを実現できる。
(まとめ)
本明細書には、少なくとも、以下の事項が開示されている。
(第1項)
グループ識別子が割り当てられたグループを形成する複数の通信端末間で、サーバ装置に対しメッセージを秘匿したまま、当該サーバ装置を介してメッセージの送受信を実行する通信システムにおいて使用されるサーバ装置であって、
前記グループに属する複数の通信端末において共有される共有鍵と前記グループ識別子とから生成されたメッセージ鍵によりメッセージを暗号化して生成されたメッセージ暗号文を、当該メッセージ鍵の識別子であるメッセージ鍵識別子をキーにして保存するメッセージ暗号文記憶部と、
前記メッセージ鍵を、共有鍵を用いて再暗号化可能なように暗号化して生成されたメッセージ鍵暗号文を、前記メッセージ鍵識別子をキーにして保存するメッセージ鍵暗号文記憶部と、
前記共有鍵が更新された後、前記共有鍵と更新後の共有鍵を用いて再暗号化鍵を生成した通信端末から当該再暗号化鍵を受信し、当該再暗号化鍵を用いて、再暗号化したメッセージ鍵暗号文を生成し、前記メッセージ鍵暗号文記憶部において、再暗号化したメッセージ鍵暗号文を、再暗号化前のメッセージ鍵暗号文に上書きして保存する再暗号化処理部と
を備えることを特徴とするサーバ装置。
(第2項)
前記メッセージ鍵は、前記共有鍵と前記グループ識別子とをねじれ疑似ランダム関数または疑似ランダム関数に入力することにより生成された鍵である
ことを特徴とする第1項に記載のサーバ装置。
(第3項)
グループ識別子が割り当てられたグループを形成する複数の通信端末間で、サーバ装置に対しメッセージを秘匿したまま、当該サーバ装置を介してメッセージの送受信を実行する通信システムにおいて使用される通信端末であって、
前記グループに属する複数の通信端末において共有される共有鍵と前記グループ識別子とからメッセージ鍵を生成するメッセージ鍵生成部と、
前記メッセージ鍵を、共有鍵を用いて再暗号化可能なように暗号化することによりメッセージ鍵暗号文を生成するメッセージ鍵暗号化部と、
前記メッセージ鍵の識別子であるメッセージ鍵識別子を生成するメッセージ鍵識別子生成部と、
メッセージを前記メッセージ鍵により暗号化することでメッセージ暗号文を生成するメッセージ暗号化部と、
前記メッセージ鍵暗号文、前記メッセージ鍵識別子、及び前記メッセージ暗号文を前記サーバ装置に送信する送信部と
を備えることを特徴とする通信端末。
(第4項)
前記共有鍵が更新された後、前記共有鍵と更新後の共有鍵を用いて再暗号化鍵を生成する再暗号化鍵生成部を更に備え、
前記送信部は、前記再暗号化鍵を前記サーバ装置に送信する
ことを特徴とする第3項に記載の通信端末。
(第5項)
グループ識別子が割り当てられたグループを形成する複数の通信端末間で、サーバ装置に対しメッセージを秘匿したまま、当該サーバ装置を介してメッセージの送受信を実行する通信システムであって、
前記グループに属する各通信端末は、
前記グループに属する複数の通信端末において共有される共有鍵と前記グループ識別子とからメッセージ鍵を生成するメッセージ鍵生成部と、
前記メッセージ鍵を、共有鍵を用いて再暗号化可能なように暗号化することによりメッセージ鍵暗号文を生成するメッセージ鍵暗号化部と、
前記メッセージ鍵の識別子であるメッセージ鍵識別子を生成するメッセージ鍵識別子生成部と、
メッセージを前記メッセージ鍵により暗号化することでメッセージ暗号文を生成するメッセージ暗号化部と、
前記メッセージ鍵暗号文、前記メッセージ鍵識別子、及び前記メッセージ暗号文を前記サーバ装置に送信する送信部と、を備え、
前記サーバ装置は、
前記メッセージ暗号文を、前記メッセージ鍵識別子をキーにして保存するメッセージ暗号文記憶部と、
前記メッセージ鍵暗号文を、前記メッセージ鍵識別子をキーにして保存するメッセージ鍵暗号文記憶部と、
前記メッセージ鍵暗号文と前記メッセージ暗号文を、前記グループに属する通信端末に送信する送信部と、
前記共有鍵が更新された後、前記共有鍵と更新後の共有鍵を用いて再暗号化鍵を生成した通信端末から当該再暗号化鍵を受信し、当該再暗号化鍵を用いて、再暗号化したメッセージ鍵暗号文を生成し、前記メッセージ鍵暗号文記憶部において、再暗号化したメッセージ鍵暗号文を、再暗号化前のメッセージ鍵暗号文に上書きして保存する再暗号化処理部と、を備える
ことを特徴とする通信システム。
(第6項)
コンピュータを、第1項又は第2項に記載のサーバ装置における各部として機能させるためのプログラム。
(第7項)
コンピュータを、第3項又は第4項に記載の通信端末における各部として機能させるためのプログラム。
以上、本実施の形態について説明したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
(参考文献)
参考文献1.D. Boneh, K. Lewi, H. Montgomery, and A. Raghunathan. 2015.Key Homomorphic PRFs and Their Applications. CryptologyePrint Archive, Report 2015/220. (2015). http://eprint.iacr.org/2015/220.
参考文献2.森山大輔,西巻陵,岡本龍明.公開鍵暗号の数理.共立出版,2011年.
参考文献3.YONEYAMA, K.,YOSHIDA, R., KAWAHARA, Y., KOBAYASHI, T., FUJI, H., and YAMAMOTO, T. (2018). Exposure-Resilient Identity-Based Dynamic Multi-Cast Key Distribution. IEICE TRANSACTIONS on Fundamentals of Electronics, Communications and Computer Sciences, 101(6), 929-944.
本特許出願は2018年10月24日に出願した日本国特許出願第2018-200333号に基づきその優先権を主張するものであり、日本国特許出願第2018-200333号の全内容を本願に援用する。
1 ネットワーク
11、12、13 通信端末
100 サーバ装置
101 メッセージ暗号文記憶部
102 メッセージ鍵暗号文記憶部
103 グループユーザ記憶部
104 再暗号化処理部
105 暗号文受信部
106 暗号文送信部
111 共有鍵記憶部
112 メッセージ鍵記憶部
113 メッセージ鍵識別子記憶部
121 メッセージ鍵生成部
122 メッセージ鍵識別子生成部
123 メッセージ鍵管理部
124 再暗号化鍵生成部
125 メッセージ暗号化部
126 メッセージ復号部
127 メッセージ鍵暗号化部
128 メッセージ鍵復号部
129 暗号文送信部
130 暗号文受信部
150 ドライブ装置
151 記録媒体
152 補助記憶装置
153 メモリ装置
154 CPU
155 インターフェース装置
156 表示装置
157 入力装置

Claims (4)

  1. グループ識別子が割り当てられたグループを形成する複数の通信端末間で、サーバ装置に対しメッセージを秘匿したまま、当該サーバ装置を介してメッセージの送受信を実行する通信システムにおいて使用される通信端末であって、
    前記グループに属する複数の通信端末において共有される共有鍵と前記グループ識別子とからメッセージ鍵を生成するメッセージ鍵生成部と、
    前記メッセージ鍵を、共有鍵を用いて再暗号化可能なように暗号化することによりメッセージ鍵暗号文を生成するメッセージ鍵暗号化部と、
    前記メッセージ鍵の識別子であるメッセージ鍵識別子を生成するメッセージ鍵識別子生成部と、
    メッセージを前記メッセージ鍵により暗号化することでメッセージ暗号文を生成するメッセージ暗号化部と、
    前記メッセージ鍵暗号文、前記メッセージ鍵識別子、及び前記メッセージ暗号文を前記サーバ装置に送信する送信部と
    を備えることを特徴とする通信端末。
  2. 前記共有鍵が更新された後、前記共有鍵と更新後の共有鍵を用いて再暗号化鍵を生成する再暗号化鍵生成部を更に備え、
    前記送信部は、前記再暗号化鍵を前記サーバ装置に送信する
    ことを特徴とする請求項に記載の通信端末。
  3. グループ識別子が割り当てられたグループを形成する複数の通信端末間で、サーバ装置に対しメッセージを秘匿したまま、当該サーバ装置を介してメッセージの送受信を実行する通信システムであって、
    前記グループに属する各通信端末は、
    前記グループに属する複数の通信端末において共有される共有鍵と前記グループ識別子とからメッセージ鍵を生成するメッセージ鍵生成部と、
    前記メッセージ鍵を、共有鍵を用いて再暗号化可能なように暗号化することによりメッセージ鍵暗号文を生成するメッセージ鍵暗号化部と、
    前記メッセージ鍵の識別子であるメッセージ鍵識別子を生成するメッセージ鍵識別子生成部と、
    メッセージを前記メッセージ鍵により暗号化することでメッセージ暗号文を生成するメッセージ暗号化部と、
    前記メッセージ鍵暗号文、前記メッセージ鍵識別子、及び前記メッセージ暗号文を前記サーバ装置に送信する送信部と、を備え、
    前記サーバ装置は、
    前記メッセージ暗号文を、前記メッセージ鍵識別子をキーにして保存するメッセージ暗号文記憶部と、
    前記メッセージ鍵暗号文を、前記メッセージ鍵識別子をキーにして保存するメッセージ鍵暗号文記憶部と、
    前記メッセージ鍵暗号文と前記メッセージ暗号文を、前記グループに属する通信端末に送信する送信部と、
    前記共有鍵が更新された後、前記共有鍵と更新後の共有鍵を用いて再暗号化鍵を生成した通信端末から当該再暗号化鍵を受信し、当該再暗号化鍵を用いて、再暗号化したメッセージ鍵暗号文を生成し、前記メッセージ鍵暗号文記憶部において、再暗号化したメッセージ鍵暗号文を、再暗号化前のメッセージ鍵暗号文に上書きして保存する再暗号化処理部と、を備える
    ことを特徴とする通信システム。
  4. コンピュータを、請求項又はに記載の通信端末における各部として機能させるためのプログラム。
JP2020553203A 2018-10-24 2019-10-15 通信端末、通信システム、及びプログラム Active JP7212697B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018200333 2018-10-24
JP2018200333 2018-10-24
PCT/JP2019/040512 WO2020085151A1 (ja) 2018-10-24 2019-10-15 サーバ装置、通信端末、通信システム、及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2020085151A1 JPWO2020085151A1 (ja) 2021-09-09
JP7212697B2 true JP7212697B2 (ja) 2023-01-25

Family

ID=70332009

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020553203A Active JP7212697B2 (ja) 2018-10-24 2019-10-15 通信端末、通信システム、及びプログラム

Country Status (4)

Country Link
US (1) US11902421B2 (ja)
EP (1) EP3836479A4 (ja)
JP (1) JP7212697B2 (ja)
WO (1) WO2020085151A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2019198516A1 (ja) * 2018-04-11 2021-04-01 日本電信電話株式会社 鍵配信システム、端末装置、鍵配信方法、及びプログラム
KR20220024210A (ko) * 2019-06-26 2022-03-03 광동 오포 모바일 텔레커뮤니케이션즈 코포레이션 리미티드 사물 인터넷 디바이스를 프로비저닝하는 방법 및 사물 인터넷 디바이스
JPWO2022153455A1 (ja) * 2021-01-14 2022-07-21

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009104445A (ja) 2007-10-24 2009-05-14 Seiko Epson Corp データ管理装置、データ管理システム及びプログラム
US20130315389A1 (en) 2010-12-08 2013-11-28 Lg Electronics Inc. Traffic encryption key management for machine to machine multicast group
JP2015033068A (ja) 2013-08-06 2015-02-16 日本電信電話株式会社 ファイル共有システム、情報提供装置、情報取得装置、及びその方法、プログラム
WO2018016330A1 (ja) 2016-07-19 2018-01-25 日本電信電話株式会社 通信端末、サーバ装置、プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3024533B1 (fr) * 2014-07-31 2016-08-26 Commissariat Energie Atomique Echangeur enthalpique ameliore
US9756024B2 (en) * 2015-09-18 2017-09-05 Trillium Incorporated Computer-implemented cryptographic method for improving a computer network, and terminal, system and computer-readable medium for the same
US9590956B1 (en) * 2015-12-18 2017-03-07 Wickr Inc. Decentralized authoritative messaging
JP6909637B2 (ja) 2017-05-25 2021-07-28 新光電気工業株式会社 光導波路装置及びその製造方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009104445A (ja) 2007-10-24 2009-05-14 Seiko Epson Corp データ管理装置、データ管理システム及びプログラム
US20130315389A1 (en) 2010-12-08 2013-11-28 Lg Electronics Inc. Traffic encryption key management for machine to machine multicast group
JP2015033068A (ja) 2013-08-06 2015-02-16 日本電信電話株式会社 ファイル共有システム、情報提供装置、情報取得装置、及びその方法、プログラム
WO2018016330A1 (ja) 2016-07-19 2018-01-25 日本電信電話株式会社 通信端末、サーバ装置、プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
岡野 裕樹, 他,セキュアビジネスチャットにおける代理人再暗号化付き検索可能暗号,2017年暗号と情報セキュリティシンポジウム(SCIS2017),2017年01月24日,3F3-4,pp. 1-8

Also Published As

Publication number Publication date
US20210391981A1 (en) 2021-12-16
US11902421B2 (en) 2024-02-13
CN112889240A (zh) 2021-06-01
JPWO2020085151A1 (ja) 2021-09-09
EP3836479A1 (en) 2021-06-16
WO2020085151A1 (ja) 2020-04-30
EP3836479A4 (en) 2022-05-04

Similar Documents

Publication Publication Date Title
US20220006627A1 (en) Quantum key distribution node apparatus and method for quantum key distribution thereof
US9819656B2 (en) Method for secure communication using asymmetric and symmetric encryption over insecure communications
US9426131B2 (en) Server apparatus and program to re-encrypt ciphertext data
JP7212697B2 (ja) 通信端末、通信システム、及びプログラム
US9130744B1 (en) Sending an encrypted key pair and a secret shared by two devices to a trusted intermediary
WO2016136024A1 (ja) 鍵付替え方向制御システムおよび鍵付替え方向制御方法
EP3490189B1 (en) Communication terminals, server devices, and programs
US11985250B2 (en) Anonymous broadcast method, key exchange method, anonymous broadcast system, key exchange system, communication device, and program
WO2014010202A1 (ja) 暗号化統計処理システム、復号システム、鍵生成装置、プロキシ装置、暗号化統計データ生成装置、暗号化統計処理方法、および、暗号化統計処理プログラム
CN113300999B (zh) 信息处理方法、电子设备和可读存储介质
CN114095170A (zh) 数据处理方法、装置、系统及计算机可读存储介质
Bakiras et al. Secure and anonymous communications over delay tolerant networks
Zhang et al. The security analysis of popular instant messaging applications
JP2005176144A (ja) 端末装置、通信システム及び通信方法
CN110321722B (zh) Dna序列相似率安全计算方法及系统
CN112889240B (zh) 服务器装置、通信终端、通信系统、以及记录介质
US11177949B2 (en) Data sharing method, data sharing system, data sharing server, communication terminal and program
JP6939897B2 (ja) 通信端末、プログラム
Schillinger et al. Recovering Private User Storages in Online Social Networks
JP7097581B2 (ja) 通信システム、サーバ装置、通信方法、及びプログラム
Adomey Introduction to cryptography
JP3622072B2 (ja) 暗号通信方法
Parsharamulu et al. A New Design of Algorithm for Enhancing Security in Bluetooth Communication with Triple DES
Limmanee et al. Hybrid Encryption Scheme for Digital Content with Key Partitioning and Secret Mixing: Design and Implementation
Saxena Theoretical Overview of various Encryption Techniques on Data Security

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220208

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220830

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221130

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20221130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20221201

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20221219

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20221220

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230113

R150 Certificate of patent or registration of utility model

Ref document number: 7212697

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150