JP6573600B2 - エンドツーエンド暗号化通信を許可するために第1のコンピューティングデバイスから第2のコンピューティングデバイスへのデータパケットを処理するための少なくとも1つのサーバによって実行される方法 - Google Patents

エンドツーエンド暗号化通信を許可するために第1のコンピューティングデバイスから第2のコンピューティングデバイスへのデータパケットを処理するための少なくとも1つのサーバによって実行される方法 Download PDF

Info

Publication number
JP6573600B2
JP6573600B2 JP2016510656A JP2016510656A JP6573600B2 JP 6573600 B2 JP6573600 B2 JP 6573600B2 JP 2016510656 A JP2016510656 A JP 2016510656A JP 2016510656 A JP2016510656 A JP 2016510656A JP 6573600 B2 JP6573600 B2 JP 6573600B2
Authority
JP
Japan
Prior art keywords
encrypted
server
computing device
encryption key
encryption
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
JP2016510656A
Other languages
English (en)
Other versions
JP2016517248A (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 JP2016517248A publication Critical patent/JP2016517248A/ja
Application granted granted Critical
Publication of JP6573600B2 publication Critical patent/JP6573600B2/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
    • 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)
    • 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
    • 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/045Network 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 wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • 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/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

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

Description

本発明は、エンドツーエンド暗号化通信を許可するために第1のコンピューティングデバイスから第2のコンピューティングデバイスへのデータパケットを処理するための少なくとも1つのサーバによって実行される方法、および対応するシステムに関する。
現在、あるメッセージングソリューションは、たとえば通信ネットワーク内の2つのコンピューティングデバイス、送信者と受信者との間にサーバが配置構成されたシナリオにおいて、2つの異なる暗号化-復号方法を実行する。送信者は、ランダムに生成された対称鍵を使用してメッセージを暗号化する。次いで送信者は、サーバの公開鍵を使用して対称鍵を暗号化した後、暗号化されたメッセージおよび対称鍵を含むデータパッケージをサーバに伝送する。サーバは、暗号化された対称鍵をそれ独自の秘密鍵を使用して復号した後、受信者の公開鍵を用いて対称鍵を再暗号化し、再フォーマットされたデータパッケージは受信者に転送される。しかしながら、サーバは対称鍵を有するため、暗号化されたメッセージにアクセスできることを理解されよう。受信者はデータパッケージを受信すると、暗号化されたメッセージを復号するために使用される対称鍵を取り出すために、暗号化された対称鍵をそれ独自の秘密鍵を用いて復号する。こうしたシナリオのために、サーバは対称鍵のコピーを有し、監査目的または復号されたメッセージの保管のために、暗号化されたメッセージを復号することができる。しかしながら、サーバはメッセージの内容にアクセスできるため、これは真のエンドツーエンドの暗号化通信とはみなされない。
他の従来の実装では、サーバは新しい対称鍵を再生成し、新しい対称鍵を用いてメッセージを再暗号化し、受信者の公開鍵を用いて新しい対称鍵を暗号化するように構成することができる。この状況において、それでもなおサーバは暗号化されたメッセージにアクセスできるため、真のエンドツーエンド暗号化通信を実行することはできない。
したがって本発明の一目的は、従来技術の問題のうちの少なくとも1つに対処すること、および/または、当分野で有用な選択肢を提供することである。
本発明の第1の態様によれば、第1のコンピューティングデバイスから第2のコンピューティングデバイスに伝送されることになるデータパケットを処理するための、少なくとも1つのサーバによって実行される方法が提供され、データパケットは、暗号化されたメッセージを形成するために第1の暗号化鍵を使用して暗号化されるメッセージと、暗号化された識別データを形成するために第2の暗号化鍵を使用して暗号化される第2のコンピューティングデバイスの識別データと、暗号化された第1および第2の暗号化鍵とを含む。方法は、暗号化された第2の暗号化鍵を復号すること、復号された第2の暗号化鍵を使用して暗号化された識別データを復号すること、および、復号された識別データに基づいてデータパケットを伝送することを含む。暗号化されたメッセージおよび第1の暗号化鍵は、第1と第2のコンピューティングデバイス間でのエンドツーエンド暗号化通信を許可するために、サーバによる復号が不可能なように配置構成される。
方法は、有利なことに、データパケットの再ルーティングを実行するために暗号化されたメッセージを中間サーバを介して転送することによって、送信者が暗号化されたメッセージを受信者に送信できるようにする、複数鍵暗号化方式の実現を可能にするが、サーバは、この能力を用いて暗号化されたメッセージを復号することはできない。これにより、送信者と受信者の間に真のエンドツーエンド暗号化が達成されることが有利に保証される。
好ましくは、暗号化された第2の暗号化鍵を復号することは、復号を実行するためにサーバの秘密鍵を使用することを含み得る。また、データパケットを伝送することは、SMS、MMS、インスタントメッセージング、電子メール、添付または電子文書送達サービスを介して伝送することを含み得る。メッセージは、テキスト、イメージ、アニメーション、ビデオ、またはオーディオを含むことができる。第1の暗号化鍵が第2のコンピューティングデバイスの公開鍵を使用して暗号化され得るか、または代替として、第1の暗号化鍵がサーバの公開鍵を使用して暗号化され得ることを理解されよう。より好ましくは、第2の暗号化鍵はサーバの公開鍵を使用して暗号化され得る。さらに好ましくは、データパケットは初期化ベクトル、および暗号化されたメッセージに基づいて生成されたデジタル署名を、さらに含むことができる。
本発明の第2の態様によれば、第1と第2のコンピューティングデバイス間でのエンドツーエンド暗号化通信を許可するために、少なくとも1つのサーバを介して第2のコンピューティングデバイスに伝送されることになる情報を処理するための、第1のコンピューティングデバイスによって実行される方法が提供される。方法は、第1および第2の暗号化鍵を使用して第2のコンピューティングデバイスのメッセージおよび識別データをそれぞれ暗号化すること、第1および第2の暗号化鍵を暗号化すること、および、暗号化されたメッセージ、識別データ、第1および第2の暗号化鍵をまとめて、データパケットとして伝送することを含む。
好ましくは、メッセージは、テキスト、イメージ、アニメーション、ビデオ、またはオーディオを含むことができる。さらに、データパケットを伝送することは、SMS、MMS、インスタントメッセージング、電子メール、添付または電子文書送達サービスを介して伝送することを含むことができる。より好ましくは、第1の暗号化鍵を暗号化することは、第2のコンピューティングデバイスの暗号化鍵またはサーバの暗号化鍵を使用して暗号化することを含むことができる。加えて、第2のコンピューティングデバイスの暗号化鍵はその公開鍵を含むことができ、サーバの暗号化鍵はその公開鍵を含むことができる。第2の暗号化鍵を暗号化することは、サーバの暗号化鍵を使用して暗号化することを含むことができる。サーバの暗号化鍵は、その公開鍵を含むことができる。
好ましくは、方法は、第1のコンピューティングデバイスのユーザが、複数のメッセージからメッセージを、およびデータパケットを受信できる複数のコンピューティングデバイスから第2のコンピューティングデバイスを、選択することを可能にするためのインターフェースを表示することをさらに含むことができる。データパケットは、初期化ベクトル、および暗号化されたメッセージに基づいて生成されたデジタル署名を、さらに含むことができる。
本発明の第3の態様によれば、第1と第2のコンピューティングデバイス間でのエンドツーエンド暗号化通信を許可するために、少なくとも1つのサーバを介して転送された第2のコンピューティングデバイスからのデータパケットを処理するための、第1のコンピューティングデバイスによって実行される方法が提供され、データパケットは、暗号化されたメッセージを形成するために第1の暗号化鍵を使用して暗号化されるメッセージと、暗号化された識別データを形成するために第2の暗号化鍵を使用して暗号化される第1のコンピューティングデバイスの識別データと、暗号化された第1および第2の暗号化鍵とを含む。方法は、暗号化された第1の暗号化鍵を復号すること、および、メッセージを取得するために復号された第1の暗号化鍵を使用して暗号化されたメッセージを復号することを含む。
好ましくは、暗号化された第1の暗号化鍵を復号することは、復号を実行するために第1のコンピューティングデバイスの秘密鍵を使用することを含むことができる。
本発明の第4の態様によれば、第1と第2のコンピューティングデバイス間でのエンドツーエンド暗号化通信を許可するために、少なくとも1つのサーバを介して第1と第2のコンピューティングデバイス間でデータパケットを交換するためのシステムが提供される。システムは、第1および第2のコンピューティングデバイスと、サーバとを備える。第1のコンピューティングデバイスは、第1および第2の暗号化鍵を使用して、メッセージおよび第2のコンピューティングデバイスの識別データをそれぞれ暗号化するため、ならびに第1のおよび第2の暗号化鍵を暗号化するための、暗号化モジュールと、暗号化されたメッセージ、識別データ、ならびに第1のおよび第2の暗号化鍵をまとめて、データパケットとしてサーバに伝送するための、伝送モジュールとを含む。サーバは、第1のコンピューティングデバイスから受信したデータパケットを処理するように構成され、データパケットの暗号化された第2の暗号化鍵を復号するため、および復号された第2の暗号化鍵を使用してデータパケットの暗号化された識別データを復号するための、復号モジュールと、復号された識別データに基づいて第2のコンピューティングデバイスにデータパケットを伝送するための伝送モジュールとを含み、暗号化されたメッセージおよび第1の暗号化鍵は、サーバによる復号が不可能なように配置構成される。第2のコンピューティングデバイスは、サーバから受信したデータパケットを処理するように構成され、データパケットの暗号化された第1の暗号化鍵を復号するため、およびメッセージを取得するために復号された第1の暗号化鍵を使用してデータパケットの暗号化されたメッセージを復号するための、復号モジュールを含む。
好ましくは、サーバの復号モジュールは、暗号化された第2の暗号化鍵を復号するために、サーバの秘密鍵を使用するように構成されることを含むことができる。他方で、サーバの伝送モジュールは、SMS、MMS、インスタントメッセージング、電子メール、添付または電子文書送達サービスを使用してデータパケットを伝送するように構成されることを含むことができる。メッセージは、テキスト、イメージ、アニメーション、ビデオ、またはオーディオを含むことができる。第1の暗号化鍵を暗号化するために第1のコンピューティングデバイスの暗号化モジュールによって使用される第2のコンピューティングデバイスの暗号化鍵は、好ましくは第2のコンピューティングデバイスの公開鍵を含むことができる。
好ましくは、第1のコンピューティングデバイスの暗号化モジュールは、第2のコンピューティングデバイスの暗号化鍵またはサーバの暗号化鍵を使用して、第1の暗号化鍵を暗号化するようにさらに構成され得る。加えて、第1のコンピューティングデバイスの暗号化モジュールは、サーバの暗号化鍵を使用して、第2の暗号化鍵を暗号化するようにさらに構成され得る。
好ましくは、第2の暗号化鍵を暗号化するために第1のコンピューティングデバイスの暗号化モジュールによって使用されるサーバの暗号化鍵は、サーバの公開鍵を含むことができる。データパケットは、初期化ベクトルと、暗号化されたメッセージに基づいて生成されたデジタル署名とを、さらに含むことができる。
本発明の第5の態様によれば、暗号化デバイスとコンピューティングデバイスとの間でのエンドツーエンド暗号化通信を許可するために、少なくとも1つのサーバを介してコンピューティングデバイスに伝送されることになる情報を処理するための、暗号化デバイスが提供される。暗号化デバイスは、第1および第2の暗号化鍵を使用して、メッセージおよびコンピューティングデバイスの識別データをそれぞれ暗号化するため、ならびに、第1および第2の暗号化鍵を暗号化するための、暗号化モジュールと、暗号化されたメッセージ、識別データ、第1および第2の暗号化鍵をまとめて、データパケットとして伝送するための、伝送モジュールとを備える。
本発明の第6の態様によれば、復号デバイスとコンピューティングデバイスとの間でのエンドツーエンド暗号化通信を許可するために、少なくとも1つのサーバを介して転送されたコンピューティングデバイスからのデータパケットを処理するための、復号デバイスが提供され、データパケットは、暗号化されたメッセージを形成するために第1の暗号化鍵を使用して暗号化されるメッセージと、暗号化された識別データを形成するために第2の暗号化鍵を使用して暗号化される第1のコンピューティングデバイスの識別データと、暗号化された第1および第2の暗号化鍵とを含む。復号デバイスは、暗号化された第1の暗号化鍵を復号するため、および、メッセージを取得するために復号された第1の暗号化鍵を使用して暗号化されたメッセージを復号するための、復号モジュールを備える。
本発明の第7の態様によれば、第2のコンピューティングデバイスに伝送されることになる第1のコンピューティングデバイスからのデータパケットを処理するために、少なくとも1つのサーバによって実行される方法が提供され、データパケットは、暗号化されたメッセージを形成するために第1の暗号化鍵を使用して暗号化されるメッセージと、暗号化された識別データを形成するために第2の暗号化鍵を使用して暗号化される第2のコンピューティングデバイスの識別データと、第2のコンピューティングデバイスに関連付けられた第3の暗号化鍵を使用して第1の暗号化鍵を暗号化することによって形成される、暗号化された第1の暗号化鍵と、サーバに関連付けられた暗号化鍵を使用して第2の暗号化鍵を暗号化することによって形成される、暗号化された第2の暗号化鍵とを含む。方法は、暗号化された第2の暗号化鍵を復号すること、復号された第2の暗号化鍵を使用して暗号化された識別データを復号すること、および、復号された識別データに基づいてデータパケットを伝送することを含む。暗号化された第1の暗号化鍵は、第2のコンピューティングデバイスに関連付けられた第4の暗号化鍵を使用してのみ復号され得るように配置構成され、第2のコンピューティングデバイスの第3および第4の暗号化鍵は、非対称鍵のペアとして構成される。
好ましくは、サーバに関連付けられた暗号化鍵はサーバの公開鍵を含むことができる。続いて、暗号化された第2の暗号化鍵を復号することは、復号を実行するためにサーバの秘密鍵を使用することを含むことができる。さらに、データパケットを伝送することは、SMS、MMS、インスタントメッセージング、電子メール、添付または電子文書送達サービスを介して伝送することを含むことができる。メッセージは、テキスト、イメージ、アニメーション、ビデオ、またはオーディオを含むことができる。さらに好ましくは、第3および第4の暗号化鍵は、それぞれ、第2のコンピューティングデバイスの公開鍵および秘密鍵を含むことができる。データパケットは、初期化ベクトル、および暗号化されたメッセージに基づいて生成されたデジタル署名を、さらに含むことができる。
本発明の一態様に関する機能は、本発明の他の態様にも適用可能であり得ることが明らかとなろう。
本発明のこれらおよび他の態様は、以下で説明する実施形態に関して明らかとなり、解明されるであろう。
本発明の実施形態は、添付の図面に関して以下で開示される。
本発明の実施形態に従った、エンドツーエンド暗号化通信を許可するために、サーバを介して第1と第2のコンピューティングデバイス間でデータパケットを交換するためのシステムを示す、概略図である。 図1の第1および第2のコンピューティングデバイスならびにサーバの構成を示す、図2aから図2cを含む図である。 データパケットとして第2のコンピューティングデバイスに伝送されることになる情報を処理するための、図1の第1のコンピューティングデバイスによって実行される方法を示すフロー図である。 データパケットのフォーマットを示す図である。 第1のコンピューティングデバイスから受信したデータパケットを処理するための、図1のサーバによって実行される方法を示すフロー図である。 サーバから受信したデータパケットを処理するための、図1の第2のコンピューティングデバイスによって実行される方法を示すフロー図である。
第1の実施形態に従い、エンドツーエンド暗号化通信を許可するために、少なくとも1つのサーバ108を介して第1と第2とのコンピューティングデバイス104、106(すなわち2つのパーティ)間でデータパケット102を交換するための、システム100(すなわち図1を参照)および対応する方法500(すなわち図5を参照)が開示される。システム100は、第1および第2のコンピューティングデバイス104、106、ならびに、第1および第2のコンピューティングデバイス104、106の中間に立体的に配置構成されたサーバ108を含む。サーバ108は、公開鍵インフラストラクチャ(すなわち非対称鍵暗号化)用語のように、公開鍵および秘密鍵に関連付けて構成されることを理解されよう。同様に、第2のコンピューティングデバイス106も、公開鍵および秘密鍵に関連付けて構成される。図1との関連において、第1のコンピューティングデバイス104はデータパケット102の送信者であり、第2のコンピューティングデバイス106はデータパケット102の最終的に意図された受信者である。しかし他の例では、反対の関係、すなわち第2のコンピューティングデバイス106が送信者になり、第1のコンピューティングデバイス104が受信者になることが可能であることも理解されよう。特に、システム100は、送信者と受信者との間での真のエンドツーエンド暗号化通信を可能にし、さらにサーバ108がデータパケット102をセキュアにルーティングできるようにするが、メッセージのコンテンツにアクセスするためにデータパケット102に埋め込まれたセキュアメッセージを復号することはできない。また、図示および説明を簡略化するために、図1には1つのサーバ102のみが示されているが、データパケット102は、第2のコンピューティングデバイス106によって受信される前に、複数のサーバ108(すなわちサーバクラスタ)を介して転送され得ることを理解されよう。複数のサーバ108の当該シナリオでは、サーバ108の各々が、公開鍵および秘密鍵の共通セット(たとえば、各サーバ108上にローカルに記憶され得るか、またはすべての複数のサーバ108によって等しくアクセス可能なストレージサーバ上に記憶され得る)にアクセスできるように構成されることを理解されよう。具体的に言えば、公開鍵および秘密鍵の共通セットは、以下で詳述される、第2のコンピューティングデバイス106の識別データを暗号化および復号する目的で使用されることになる。第1および第2のコンピューティングデバイス104、106、ならびにサーバ108は、通信ネットワーク内に常駐することをさらに理解されよう。
第1および第2のコンピューティングデバイス104、106の例は、モバイルコンピューティングデバイス(たとえばiPhone(商標)などのスマートフォンまたはiPad(商標)などのタブレット)、ワイヤードコンピュータ(たとえばデスクトップパーソナルコンピュータ)などを含む。しかしながら、本実施形態では、第1および第2のコンピューティングデバイス104、106は、所定の好適なモバイルオペレーティングシステム(たとえばApple Inc(商標)からのiOS(商標))上で実行するモバイルコンピューティングデバイスである。以下で参照しやすくするために、特に明示的に示されていない限り、第1および第2のコンピューティングデバイス104、106は、(真のエンドツーエンド暗号化通信関係との関連において)それぞれ暗号化デバイス104および復号デバイス106と呼ばれる。互いに異なるデータパケット102を交換するために、通信ネットワークのシステム100内に複数の暗号化デバイス104および復号デバイス106が配置され得るが、簡潔にするために、このインスタンスでは図1内に具体的に示されていないことも理解されよう。サーバ108に関して、例は、暗号化デバイス104と復号デバイス106との間でデータパケット102のルーティングのタスクを実行するために好適に構成された、任意のタイプのサーバを含む。
図2を参照すると、暗号化デバイス104は、復号デバイス106に提供されることになるデータパケット102内に情報を処理するための暗号化プログラムコード(図示せず)を実行するように構成され、復号デバイス106は、受信したデータパケット102を処理するための復号プログラムコード(図示せず)を実行するように構成される。他方で、サーバ108は、暗号化デバイス104によって復号デバイス106に送信されたデータパケット102を処理するために、図5の方法500に基づく、データパケット処理コード(図示せず)を実行するように構成される。本実施形態において、暗号化および復号のプログラムコードは、暗号化デバイスおよび復号デバイス104、106上にローカルにインストールされ、さらに暗号化および復号のプログラムコードは、ネイティブなモバイルアプリケーションとして(たとえばユーザによる使用が可能なソフトウェアとして)具体化されることを理解されよう。具体的に言えば、暗号化デバイス104は、暗号化モジュール1042、表示モジュール1046、伝送モジュール1048、およびプロセッサモジュール10410の、モジュールを含み、復号デバイス106は、受信側モジュール1062および復号モジュール1064の、モジュールを含む。同様に、データパケット処理コードは、特定用途向けプログラム(背景プロセスとして実行するように構成され得る)として実装され、サーバ108上にローカルにインストールされる。サーバ108については、受信側モジュール1082、復号モジュール1084、および伝送モジュール1086の、モジュールが内部に配置構成される。この例において、暗号化デバイス204および復号デバイス206のそれぞれの当該モジュールはソフトウェア内に実装され、したがってそれぞれが暗号化プログラムコードおよび復号プログラムコード内に組み込まれることを理解されよう。これは、サーバ108の当該モジュールに準用する。
次に、図3および図4を参照して、エンドツーエンド暗号化通信を許可するために、サーバ108を介して復号デバイス106(すなわち受信者)に伝送されることになる情報を処理するための、暗号化デバイス104(すなわち送信者)によって実行される方法300を説明する。方法300のステップ302で、表示モジュール1046は、暗号化デバイス104のユーザ(図示せず)が、復号デバイス106に送信されることになる複数のメッセージから所望のメッセージ(すなわち入力データ)を選択できるようにするための、ソフトウェアインターフェース(図示せず)を表示するように配置構成される。メッセージは、テキスト、イメージ、アニメーション、ビデオ、オーディオなどを含むことを理解されよう。加えて、ステップ302で、ユーザはソフトウェアインターフェースを使用して、選択されたメッセージの受信者も(複数のデバイスから)選択するが、この状況では復号デバイス106である。さらに、インターフェースは、エンドツーエンド暗号化をユーザが所望しているかどうかに関するオプションも表示する。ユーザがエンドツーエンド暗号化オプションを選択すると、暗号化デバイス104は図4に示されるようなセキュアなパケットフォーマット400に基づいて、選択されたメッセージを埋め込むためのデータパケット102の準備に進む。また、エンドツーエンド暗号化通信を進めるために、次いで暗号化デバイス104は、対称型メッセージ暗号化鍵(図示せず)および受信者情報暗号化鍵(図示せず)をランダムに生成するように構成され、その目的は以下で詳述する。加えて、メッセージ暗号化鍵および受信者情報暗号化鍵の新しい固有セットが、暗号化デバイス104によって伝送されるように各データパケット102に対して生成される。データパケット102は標準IPパケットのペイロードとして埋め込まれ得ることを、さらに理解されよう。
図4を参照すると、パケットフォーマット400は、合計で7つのデータフィールド401〜407を含むが、必要であれば、追加の必要データフィールドを追加することができる。具体的に言えば、7つのデータフィールド401〜407は(パケットフォーマット400内のデータシーケンスの配置構成された順序に基づいて)、バージョン数フィールド401、暗号化されたメッセージ鍵フィールド402、暗号化された受信者情報鍵フィールド403、初期化ベクトルフィールド404、暗号化された受信者情報フィールド405、暗号化されたメッセージフィールド406、およびデジタル署名フィールド407を含む。簡潔に言えば、バージョン数フィールド401は、使用中のパケットフォーマット400の現在のバージョンを定義し、暗号化されたメッセージ鍵フィールド402は、復号デバイス106の公開鍵を使用して暗号化されたメッセージ暗号化鍵を記憶するが、暗号化された受信者情報鍵フィールド403は、サーバ108の公開鍵を使用して暗号化された受信者情報暗号化鍵を記憶する。複数サーバ108を含むシナリオの場合、暗号化された受信者情報鍵フィールド403は、前述のように、すべてのサーバ108によるアクセスが可能な共通公開鍵を代わりに使用して暗号化された、受信者情報暗号化鍵を記憶する。初期化ベクトルフィールド404は、(当業者によって理解されるような)暗号化に使用される初期変数を定義し、暗号化された受信者情報フィールド405は、受信者情報暗号化鍵を使用して暗号化された復号デバイス106の識別データを記憶するが、暗号化されたメッセージフィールド406は、メッセージ暗号化鍵を使用して暗号化された選択されたメッセージを記憶し、デジタル署名フィールド407は、(暗号化されたメッセージフィールド406内に記憶されたような)暗号化されたメッセージに基づいて生成された認証チェックサムを記憶する。復号デバイス106の識別データは、サーバ108が、データパケット102を識別し、暗号化デバイス104から復号デバイス106へと転送およびルーティングできるようにする、復号デバイス106のIPアドレスなどの、関連付けられた位置情報を指すことを理解されよう。したがって、この例では復号デバイス106はデータパケット102の受信者であるため、識別データは受信者に関連付けられた位置情報である。暗号化デバイス104は、別々の通信チャネル/手段を介してサーバ108によって配布されるような、復号デバイス106の識別データを取得するが、これは本発明の考察の焦点ではないことを理解されよう。
暗号化デバイス104の表示モジュール1046によって表示されるソフトウェアインターフェースは、識別データがメッセージ(同じく暗号化される)とは別に暗号化され得るようにするために、メッセージから識別データを(なんらのユーザ介入も必要とせずに)自動的に分離することを理解されよう。次にこれについて、以下で詳述する。
図3の方法300について再度説明すると、ステップ304で、(暗号化デバイス104の)暗号化モジュール1042は、メッセージ暗号化鍵および受信者情報暗号化鍵を使用して、選択されたメッセージおよび復号デバイス106の識別データをそれぞれ暗号化し、暗号化されたメッセージおよび識別データをそれぞれ、(データパケット102の)暗号化されたメッセージフィールド406および暗号化された受信者情報フィールド405内に記憶する。(任意の好適な既存のチェックサムアルゴリズムを使用して)暗号化されたメッセージに基づき、(暗号化デバイス104の)プロセッサモジュール10410によって、対応する認証チェックサムも生成され、デジタル署名フィールド407に記憶される。その後、ステップ306で、(暗号化デバイス104の)暗号化モジュール1042は、復号デバイス106の公開鍵およびサーバ108の公開鍵をそれぞれ使用して、メッセージ暗号化鍵および受信者情報暗号化鍵を暗号化する。複数のサーバ108を備えるシナリオの場合、受信者情報暗号化鍵は代わりに、前述のように、すべてのサーバ108によるアクセスが可能な共通公開鍵を使用して暗号化されることを理解されよう。暗号化されたメッセージ暗号化鍵および受信者情報暗号化鍵は、次に、(データパケット102の)暗号化されたメッセージ鍵フィールド402および暗号化された受信者情報鍵フィールド403内に、それぞれ記憶される。データパケット102は、次に、暗号化デバイス104によって完全な形にアセンブルされる。ステップ308で、(暗号化デバイス104の)伝送モジュール1048は、(アセンブルされた)データパケット102をサーバ108に伝送する。データパケットは、SMS、MMS、インスタントメッセージング(IM)、電子メール、添付、電子文書送達サービスを使用するなど、好適なデジタルメッセージング方式を介して伝送され得ることを理解されよう。
サーバ108は、次に、暗号化デバイス104と復号デバイス106との間での真のエンドツーエンド暗号化通信を許可する、暗号化デバイス104から受信したデータパケット102を処理するための(図5に示されたような)方法500を実行する。特に、サーバ108は第1に、ステップ502で、(サーバ108の)受信側モジュール1082を介してデータパケット102を受信する。サーバ108は、暗号化されたメッセージフィールド406内の暗号化されたメッセージが、暗号化デバイス104からサーバ108への移行中に、いかなる地点でも改ざんされていないことを保証するために、受信したデータパケット102のデジタル署名フィールド407から取り出したデータを使用して、認証チェックを実行する。次に、ステップ504で、サーバ108の復号モジュール1084は、受信したデータパケット102の暗号化された受信者情報鍵フィールド403内に記憶されたような、暗号化された受信者情報暗号化鍵を、サーバ108の秘密鍵を使用して復号するように構成される。これにより、受信者情報暗号化鍵の「プレーンテキストでの」(すなわち、暗号化されていない形での)取り出しが可能になる。複数のサーバ108を備えるシナリオの場合、暗号化された受信者情報暗号化鍵は、代わりに、上記で既に説明したように、すべてのサーバ108によるアクセスが可能な共通秘密鍵を使用して復号されることを理解されよう。その後、サーバ108の復号モジュール1084は、ステップ504で取得された受信者情報暗号化鍵を使用する、データパケット102の暗号化された受信者情報フィールド405内に記憶されたような、暗号化された識別データの復号に進む。これにより、「プレーンテキストでの」識別データの取り出しが可能になる。サーバ108が、前述のステップ506で取得された識別データに基づいて、データパケット102が次にどこにルーティングされる必要があるかを決定すると、次にサーバ108の伝送モジュール1086は、データパケット102を、識別データ内に指定された宛先に伝送および転送する。もちろん、本考察との関連において、識別データは復号デバイス106に関連付けられているため、データパケットは復号デバイス106に転送されることになる。重要なことに、データパケット102は、サーバ108によって逐語的に復号デバイス106に転送されること、すなわちサーバ108は、暗号化デバイス104から受信するデータパケット102を(いかなる方法でも)変更、再暗号化、または再フォーマット化しないことを理解されよう。
図5の方法500の実行中、サーバ108は、データパケット102の暗号化されたメッセージフィールド406および暗号化されたメッセージ鍵フィールド402を復号できないことを理解されよう。これは、サーバ108が、暗号化されたメッセージ鍵フィールド402を復号するために必要な、復号デバイス106の秘密鍵のコピーを有するように構成されていないためである。「プレーンテキストでの」メッセージ暗号化鍵の取り出しによってのみ、暗号化されたメッセージフィールド406を復号し、「プレーンテキストでの」メッセージを取得することが可能となる。すなわち、サーバ108は、復号デバイス106に向けられたメッセージを復号およびアクセスすることはできず、これは有利なことに、送信者と所期の受信者との間でのセキュアなエンドツーエンド暗号化通信を許可する。
次に、図6は、サーバ108から受信したデータパケット102を処理するために復号デバイス106によって実行される方法600を示す。ステップ602で、(復号デバイス106の)受信側モジュール1062は、サーバ108によって転送されたデータパケット102を受信し、ステップ604で、(復号デバイス106の)復号モジュール1064は、「プレーンテキストでの」メッセージ暗号化鍵を取得するために、データパケット102の暗号化されたメッセージ鍵フィールド402を復号するように構成される。復号されたメッセージ暗号化鍵を正常に取り出すと、次いで(復号デバイス106の)復号モジュール1064は、ステップ606で、(ステップ604で取得された)メッセージ暗号化鍵を使用して、復号されたメッセージを取得するためにデータパケット102の暗号化されたメッセージフィールド406を復号するように配置構成される。その後、復号デバイス106は、暗号化デバイス104によって伝送されたメッセージにアクセスし、これを読み取ることができる。
以下で、本発明の他の実施形態について説明する。簡潔にするために、実施形態間で共通の同様の要素、機能、および動作の説明は反復しない代わりに、関連する実施形態の同様の部分には言及する。
第2の実施形態によれば、複数の復号デバイス106(すなわち、グループ通信用の複数の受信者)が存在するシナリオにおいて、(暗号化デバイス104の)暗号化モジュール1042は、対応する復号デバイス106に関連付けられた受信者情報暗号化鍵を使用して、各復号デバイス106の識別データを暗号化した後、暗号化された識別データのすべてを、伝送されることになる新しいデータパケット102の暗号化された受信者情報フィールド405内に記憶する。特に、暗号化された識別データのすべては、新しいデータパケット102の暗号化された受信者情報フィールド405内に記憶されるデータ文字列に連結される。その後、複数の復号デバイス106のすべての受信者情報暗号化鍵は、サーバ108の公開鍵を使用して(暗号化デバイス104の暗号化モジュール1042によって)暗号化されるように配置構成され、データパケット102の暗号化された受信者情報鍵フィールド403内にまとめて記憶される。さらに、(暗号化デバイス104の)暗号化モジュール1042は、各復号デバイス106の公開鍵を使用してメッセージ暗号化鍵を暗号化もし、これがその後、データパケット102の暗号化されたメッセージ鍵フィールド402内に記憶される。より具体的に言えば、メッセージ暗号化鍵は、関連付けられた暗号化されたメッセージ暗号化鍵を形成するために、各復号デバイス106の対応する公開鍵を使用して、独立および単独に暗号化される。理解されるように、このプロセスは、すべての復号デバイス106の公開鍵に対して実行され、結果として生成される暗号化されたメッセージ暗号化鍵は、その後、データ文字列に連結され、これがデータパケット102の暗号化されたメッセージ鍵フィールド402内に記憶される。この実施形態において、図3の方法300におけるステップ302〜ステップ308は依然として暗号化デバイス104によって同様に実行され、データパケット102内に記憶されるデータのタイプおよび量のみが、第1の実施形態について変化することを理解されよう。
サーバ108が暗号化デバイス104によって伝送されたデータパケット102を受信すると、次いでサーバ108の復号モジュール1084は、サーバ108の秘密鍵を使用して、受信したデータパケット102の暗号化された受信者情報鍵フィールド403に記憶されたような、暗号化された受信者情報暗号化鍵を復号する。これによってサーバ108は、複数の復号デバイス106のすべての復号された受信者情報暗号化鍵を取り出すことが可能になり、その後これらはそれぞれ、複数の復号デバイス106のすべての復号された識別データを取得するために、データパケット102の暗号化された受信者情報フィールド405に記憶されたようなデータ文字列の対応するセグメントを復号するためにさらに使用される。その後サーバ108は、復号された識別データを用いて、データパケット102を所期の復号デバイス106の各々に再ルーティングすることができる。データパケット102が各々の復号デバイス106に送達されると、それぞれの復号デバイス106は、メッセージ暗号化鍵のコピーを取得するために、それぞれの復号デバイス106の関連付けられた秘密鍵を使用して、(受信されたデータパケット102の暗号化されたメッセージ鍵フィールド402内のデータ文字列に記憶された)対応する暗号化されたメッセージ暗号化鍵を復号する。メッセージ暗号化鍵を用いて、各復号デバイス106は、復号されたメッセージを取得するために、データパケット102の暗号化されたメッセージフィールド406を復号することができる。本実施形態において、図5の方法500におけるステップ502〜ステップ508は、依然としてサーバ108によって同様に実行されることを理解されよう。サーバ108はメッセージを再暗号化する必要がなく、第1の実施形態で既に述べられ、簡潔にするために反復されない理由により、サーバ108はメッセージを再暗号化することもできないことを、またさらに理解されよう。
第1の実施形態のわずかな変形である第3の実施形態によれば、復号デバイス106の公開鍵の代わりにサーバ108の公開鍵をここで使用して、(暗号化デバイス104のユーザによって選択されるような)図3の方法300内のステップ306で、メッセージ暗号化鍵が暗号化される。これは、サーバ108がその後、サーバ108の秘密鍵を使用して、暗号化されたメッセージ暗号化鍵を復号できるため、その後サーバ108は暗号化されたメッセージにアクセスできることを意味する。実際に、メッセージ暗号化鍵の取り出しにより、サーバ108は暗号化されたメッセージを復号して、これにアクセスすることができる。すなわちこれは、(セキュリティ検証の目的で)暗号化されたメッセージのコンテンツへのアクセスをサーバ108に認めることも、暗号化デバイス104のユーザが希望し得ることを意味する。上記の変形以外に、第1の実施形態の詳細な説明の残りの部分が、その他の変更なしに第3の実施形態に適用されることを理解されよう。
要約すると、提案されたシステム100(および対応する方法)は、送信者が、再ルーティングを実行するために、少なくとも1つの(中間)サーバを介して暗号化されたメッセージを転送することにより、暗号化されたメッセージを1人または複数の受信者に送信できるようにするが、サーバには暗号化されたメッセージを復号する能力を有することを許可しない、複数鍵暗号化方式の具体化および実装が可能である。これは有利なことに、暗号化されたメッセージの復号を実際にサーバに許可することなく、送信者と受信者との間での真のエンドツーエンド暗号化が保持および達成されることを保証する。
また、提案されたシステム100は、暗号化されたメッセージへのサーバのアクセスを可能にすることを送信者が希望するかどうかに関して、送信者が決定できるように構成される。送信者が、当該暗号化されたメッセージへのサーバのアクセスを希望する場合、送信者は、メッセージ暗号化鍵を暗号化するためにサーバの公開鍵が代わりに使用され得るオプション(すなわち第3の実施形態)を、選択することができる。しかしながら、代わりに送信者が、暗号化されたメッセージをサーバが復号できない真のエンドツーエンド暗号化を希望する場合、第1および第2の実施形態が適用される。
繰り返し述べると、提案されたシステム100および方法は、(少なくとも1つの)サーバを介して送信者と複数の受信者との間での真のエンドツーエンド暗号化通信を可能にし、サーバは、複数の暗号化フィールドを有するカスタマイズされたセキュアなパケットフォーマットを用いて配置構成されたデータパケットをルーティング(および保管)するように構成される。暗号化フィールドのうちの1つが、送信者による受信者向けの暗号化されたメッセージを記憶し、サーバは、暗号化された(受信者の公開鍵を使用して暗号化された)メッセージを復号およびアクセスすることができない。具体的に言えば、セキュアなパケットフォーマットは、保管、再ルーティング、または実際に意図される受信者のいずれかの目的で、異なるパーティによって求められる情報を定義する。受信者の識別データは、受信者の識別情報への未許可のアクセスを防止するために暗号化される。特に、データパケットは、カスタマイズされた暗号化ソフトウェアアプリケーションを使用する提案された複数鍵暗号化方式を使用して暗号化され、デジタルメッセージングプラットフォームを介して受信者に送信され、同じタイプのデジタルメッセージングプラットフォーム上で受信者によって受信される。メッセージにアクセスするために、その後受信者は、メッセージを見るために(受信者独自の秘密鍵を使用して)暗号化されたメッセージを復号する。サーバは、データパケットを受信者に転送するプロセスにおいて同じデータパケットを受信し、データパケットを再ルーティングするかまたはデータパケットを保管するかを決定するために、データパケットの特定の暗号化フィールド、すなわちデータパケットの暗号化された受信者情報フィールド405を復号できることを理解されよう。しかしながらサーバは、データパケット内に記憶された暗号化されたメッセージを復号するための暗号化鍵(すなわち受信者の秘密鍵)を用いて構成されていない。これにより、(中間転送)サーバが送信者と受信者との間でメッセージをルーティングするための重要な役割を実行する、デジタルメッセージングシステムにおいて、サーバは、暗号化されたメッセージを復号すること、および関連付けられたコンテンツにアクセスすることができないことが保証される。したがって、提案されたシステムは、送信者および受信者のための真のエンドツーエンド暗号化システムおよび方式を可能にするが、依然としてサーバは、送信者によって受信者に伝送される暗号化されたメッセージのコンテンツのセキュリティおよび信頼性を損なうことなく、通信の転送/ルーティングに関与することができる。
提案された方法を広義に要約するためにも、第1のコンピューティングデバイスから第2のコンピューティングデバイスに伝送されることになるデータパケットを処理するために、少なくとも1つのサーバによって実行される方法が開示され、データパケットは、暗号化されたメッセージを形成するために第1の暗号化鍵を使用して暗号化されるメッセージと、暗号化された識別データを形成するために第2の暗号化鍵を使用して暗号化される第2のコンピューティングデバイスの識別データと、第2のコンピューティングデバイスに関連付けられた第3の暗号化鍵を使用して第1の暗号化鍵を暗号化することによって形成される暗号化された第1の暗号化鍵と、サーバに関連付けられた暗号化鍵を使用して第2の暗号化鍵を暗号化することによって形成される暗号化された第2の暗号化鍵とを含む。方法は、暗号化された第2の暗号化鍵を復号すること、復号された第2の暗号化鍵を使用して暗号化された識別データを復号すること、および、復号された識別データに基づいてデータパケットを伝送することを含む。具体的に言えば、暗号化された第1の暗号化鍵は、第2のコンピューティングデバイスに関連付けられた第4の暗号化鍵を使用してのみ復号可能なように配置構成され、第2のコンピューティングデバイスの第3および第4の暗号化鍵は、非対称鍵のペアとして構成される。すなわち、非対称鍵のペアは、確立された公開鍵暗号化方式の概念に従って、公開鍵(すなわち第3の暗号化鍵)および秘密鍵(すなわち第4の暗号化鍵)を含む。
しかしながら、説明した実施形態は限定的なものとして解釈されるべきではない。たとえば、暗号化および復号のデバイス104、106は、モバイルコンピューティングデバイス以外の任意の他のタイプの好適なデバイスとできることが理解されよう。また、暗号化デバイス104および復号デバイス106のそれぞれのモジュール(ソフトウェア内に実装されている場合)は、プログラムで統合され、それぞれ、データパケット102を処理するように想定され得る同様のコンピューティングデバイスにインストールされ得、これによって実行可能な、単一の完全なソフトウェアアプリケーションとして提供され得る。オプションとして、単一の完全なソフトウェアアプリケーションは、ハードウェア内に全体として実装され得、こうした実装されたハードウェアのコピーが、暗号化デバイス104および復号デバイス106の各々に組み込まれる。直前の2文で説明した代替の構成は、サーバ108の当該モジュールにも準用可能である。さらに代替として、暗号化および復号のプログラムコードは外部記憶デバイス上に記憶することが可能であり、必要な場合に、それぞれ暗号化デバイスおよび復号デバイス104、106上で実行するために「オンデマンド」でダウンロードすることが可能である。さらに、ソフトウェアインターフェースにおいて、暗号化デバイス104の表示モジュール1046によって表示されるように、ユーザが復号デバイス106の代わりにサーバ108を受信者として選択できるようにするオプションも、表示することができる。複数のサーバ108のシナリオの場合、サーバ108は、データパケット102が転送されることになる場所を決定するロードバランシング規則のセットと共に、集合的に構成され得ることも理解されよう。さらに、図4に示されるようなパケットフォーマット400は、必要に応じて、所期のアプリケーションの要件に基づき、新しいデータフィールドを含むかまたは既存のデータフィールドを除去するように修正することができる。
本発明を図面および上記の説明で詳細に例示および説明してきたが、こうした例示および説明は例示的または典型例であって、制限的ではないものとみなされ、本発明は開示された実施形態に限定されない。当業者であれば、請求された本発明を実施する際に、開示された実施形態に対する他の変形が理解および実行可能であろう。
100 システム
102 データパケット
104 第1のコンピューティングデバイス、暗号化デバイス
106 第2のコンピューティングデバイス、復号デバイス
108 サーバ
1042 暗号化モジュール
1046 表示モジュール
1048 伝送モジュール
10410 プロセッサモジュール
1062 受信側モジュール
1064 復号モジュール
1082 受信側モジュール
1084 復号モジュール
1086 伝送モジュール
204 暗号化デバイス
206 復号デバイス
400 パケットフォーマット
401 バージョン数フィールド
402 暗号化されたメッセージ鍵フィールド
403 暗号化された受信者情報鍵フィールド
404 初期化ベクトルフィールド
405 暗号化された受信者情報フィールド
406 暗号化されたメッセージフィールド
407 デジタル署名フィールド

Claims (13)

  1. 第1のコンピューティングデバイスから第2のコンピューティングデバイスに伝送されることになるデータパケットを処理するための、少なくとも1つのサーバによって実行される方法であって、前記方法は、
    データパケットを前記第1のコンピューティングデバイスから受信するステップであって、前記データパケットは、暗号化されたメッセージを形成するために第1の暗号化鍵を使用して暗号化されたメッセージと、暗号化された識別データを形成するために第2の暗号化鍵を使用して暗号化された前記第2のコンピューティングデバイスの識別データと、前記第2のコンピューティングデバイスに関連付けられた第3の暗号化鍵を使用して前記第1の暗号化鍵を暗号化することによって形成された暗号化された第1の暗号化鍵と、前記サーバの公開鍵を使用して暗号化された第2の暗号化鍵と、前記暗号化されたメッセージに基づいて生成された認証チェックサムとを備える、ステップと、
    前記サーバによって前記認証チェックサムを認証するステップと、
    前記サーバの秘密鍵を使用して、前記暗号化された第2の暗号化鍵を復号するステップと、
    前記復号された第2の暗号化鍵を使用して前記暗号化された識別データを復号するステップと、
    前記復号された識別データに基づいて前記データパケットを前記第2のコンピューティングデバイスに伝送するステップとを含み、
    前記暗号化されたメッセージおよび第1の暗号化鍵は、前記第1と前記第2のコンピューティングデバイス間でのエンドツーエンド暗号化通信を許可するために、前記サーバによる復号が不可能なように配置構成され、
    前記暗号化された第1の暗号化鍵は、前記第2のコンピューティングデバイスに関連付けられた第4の暗号化鍵を使用するだけで復号が可能なように配置構成され、
    前記第3および第4の暗号化鍵はそれぞれ、前記第2のコンピューティングデバイスの公開鍵および秘密鍵である、方法。
  2. 前記データパケットを伝送するステップは、SMS、MMS、インスタントメッセージング、電子メール、添付、または電子文書送達サービスを介して伝送するステップを含む、請求項1に記載の方法。
  3. 前記メッセージは、テキスト、イメージ、アニメーション、ビデオ、またはオーディオを含む、請求項1または2に記載の方法。
  4. 前記データパケットは初期化ベクトルをさらに含む、請求項1から3のいずれか一項に記載の方法。
  5. 第1と第2のコンピューティングデバイス間でのエンドツーエンド暗号化通信を許可するために、少なくとも1つのサーバを介して前記第2のコンピューティングデバイスに伝送されることになる情報を処理するための、前記第1のコンピューティングデバイスによって実行される方法であって、
    第1および第2の暗号化鍵を使用して前記第2のコンピューティングデバイスのメッセージおよび識別データをそれぞれ暗号化するステップと、
    前記第2のコンピューティングデバイスの公開鍵を使用して前記第1の暗号化鍵を暗号化するステップと、
    前記サーバの公開鍵を使用して前記第2の暗号化鍵を暗号化するステップと、
    暗号化されたメッセージに基づいて認証チェックサムを生成するステップと、
    前記暗号化されたメッセージ、識別データ、第1および第2の暗号化鍵、ならびに前記認証チェックサムをまとめて、データパケットとして伝送するステップとを含む、方法。
  6. 前記メッセージは、テキスト、イメージ、アニメーション、ビデオ、またはオーディオを含む、請求項5に記載の方法。
  7. 前記データパケットを伝送するステップは、SMS、MMS、インスタントメッセージング、電子メール、添付、または電子文書送達サービスを介して伝送するステップを含む、請求項5または6に記載の方法。
  8. 前記第1のコンピューティングデバイスのユーザが、複数のメッセージから前記メッセージを、および前記データパケットを受信できる複数のコンピューティングデバイスから前記第2のコンピューティングデバイスを、選択することを可能にするためのインターフェースを表示するステップをさらに含む、請求項5から7のいずれか一項に記載の方法。
  9. 前記データパケットは、初期化ベクトルをさらに含む、請求項5から8のいずれか一項に記載の方法。
  10. 第1と第2のコンピューティングデバイス間でのエンドツーエンド暗号化通信を許可するために、少なくとも1つのサーバを介して前記第1と第2のコンピューティングデバイス間でデータパケットを交換するためのシステムであって、
    前記第1のコンピューティングデバイスであって、
    第1および第2の暗号化鍵を使用して、メッセージおよび前記第2のコンピューティングデバイスの識別データをそれぞれ暗号化するため、
    前記第1および第2の暗号化鍵を暗号化するため、および
    暗号化されたメッセージに基づいて認証チェックサムを生成するための
    暗号化モジュールと、
    前記暗号化されたメッセージ、識別データ、第1および第2の暗号化鍵、ならびに前記認証チェックサムをまとめて、前記データパケットとして前記サーバに伝送するための、伝送モジュールと
    を含み、
    前記暗号化された第1の暗号化鍵は、前記第2のコンピューティングデバイスに関連付けられた第3の暗号化鍵を使用して前記第1の暗号化鍵を暗号化することによって形成され、前記暗号化された第2の暗号化鍵は、前記サーバの公開鍵を使用して前記第2の暗号化鍵を暗号化することによって形成される、前記第1のコンピューティングデバイスと、
    前記サーバであって、前記第1のコンピューティングデバイスから受信した前記データパケットを処理するように構成され、
    前記認証チェックサムを認証するため、
    前記サーバの秘密鍵を使用して、前記データパケットの前記暗号化された第2の暗号化鍵を復号するため、および、
    前記復号された第2の暗号化鍵を使用して前記データパケットの前記暗号化された識別データを復号するための、
    復号モジュールと、
    前記復号された識別データに基づいて前記第2のコンピューティングデバイスに前記データパケットを伝送するための伝送モジュールと
    を含み、前記暗号化されたメッセージおよび第1の暗号化鍵は、前記サーバによる復号が不可能なように配置構成される、前記サーバと、
    前記第2のコンピューティングデバイスであって、前記サーバから受信した前記データパケットを処理するように構成され、
    前記データパケットの前記暗号化された第1の暗号化鍵を復号するため、および
    前記メッセージを取得するために前記復号された第1の暗号化鍵を使用して前記データパケットの前記暗号化されたメッセージを復号するための、
    復号モジュールを含む、前記第2のコンピューティングデバイスとを含み、
    前記暗号化された第1の暗号化鍵は、前記第2のコンピューティングデバイスに関連付けられた第4の暗号化鍵を使用するだけで復号が可能なように配置構成され、
    前記第3および第4の暗号化鍵はそれぞれ、前記第2のコンピューティングデバイスの公開鍵および秘密鍵である、システム。
  11. 前記サーバの前記伝送モジュールは、SMS、MMS、インスタントメッセージング、電子メール、添付、または電子文書送達サービスを使用して前記データパケットを伝送するように構成されることを含む、請求項10に記載のシステム。
  12. 前記メッセージは、テキスト、イメージ、アニメーション、ビデオ、またはオーディオを含む、請求項10または11に記載のシステム。
  13. 前記データパケットは、初期化ベクトルをさらに含む、請求項10から12のいずれか一項に記載のシステム。
JP2016510656A 2013-04-25 2014-04-23 エンドツーエンド暗号化通信を許可するために第1のコンピューティングデバイスから第2のコンピューティングデバイスへのデータパケットを処理するための少なくとも1つのサーバによって実行される方法 Active JP6573600B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
SG2013032602 2013-04-25
SG201303260-2 2013-04-25
PCT/SG2014/000181 WO2014175830A1 (en) 2013-04-25 2014-04-23 Method performed by at least one server for processing a data packet from a first computing device to a second computing device to permit end-to-end encryption communication

Publications (2)

Publication Number Publication Date
JP2016517248A JP2016517248A (ja) 2016-06-09
JP6573600B2 true JP6573600B2 (ja) 2019-09-11

Family

ID=54771484

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016510656A Active JP6573600B2 (ja) 2013-04-25 2014-04-23 エンドツーエンド暗号化通信を許可するために第1のコンピューティングデバイスから第2のコンピューティングデバイスへのデータパケットを処理するための少なくとも1つのサーバによって実行される方法

Country Status (7)

Country Link
US (1) US10009321B2 (ja)
JP (1) JP6573600B2 (ja)
CN (1) CN105164968A (ja)
AU (1) AU2014257953B2 (ja)
GB (1) GB2528226B (ja)
SG (1) SG11201508725SA (ja)
WO (1) WO2014175830A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024186173A1 (ko) * 2023-03-09 2024-09-12 주식회사 애브체인 스마트 계약 기반 신뢰실행환경을 이용한 개인정보 처리 방법 및 시스템

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9285981B1 (en) 2012-07-16 2016-03-15 Wickr Inc. Discouraging screen capture
US9735967B2 (en) * 2014-04-30 2017-08-15 International Business Machines Corporation Self-validating request message structure and operation
US11665145B1 (en) * 2014-05-02 2023-05-30 Navroop Mitter Method of providing end to end encryption with auditability
US10491399B2 (en) * 2015-01-07 2019-11-26 Cyph, Inc. Cryptographic method for secure communications
US10038675B2 (en) * 2015-10-13 2018-07-31 Google Llc Storing decrypted body of message and key used to encrypt and decrypt body of message
CN106599698B (zh) * 2015-10-19 2019-09-20 腾讯科技(深圳)有限公司 一种加密图片、解密图片的方法和装置
CN107623625A (zh) * 2016-07-14 2018-01-23 忻宏德 具有隐藏内容的通信系统及其通信方法
US20180063105A1 (en) * 2016-09-01 2018-03-01 AtCipher.com Limited Management of enciphered data sharing
US20180124063A1 (en) * 2016-11-03 2018-05-03 Motorola Mobility Llc Composite security identifier
FR3061823B1 (fr) 2017-01-10 2020-04-24 Wallix Procede de transmission d’une information numerique chiffree de bout en bout, application de ce procede et objet connecte mettant en œuvre ce procede.
FR3067546A1 (fr) * 2017-06-19 2018-12-14 Orange Procedes d’identification operateur de trames a emettre, et de verification d’appartenance operateur, un dispositif de communication et une passerelle de communication
CN108011879B (zh) * 2017-11-30 2020-10-16 广州酷狗计算机科技有限公司 文件加密、解密的方法、装置、设备和存储介质
CN110557738B (zh) * 2019-07-12 2022-06-07 安徽中科美络信息技术有限公司 一种车辆监测信息安全传输方法及系统
CN112448808B (zh) * 2019-08-29 2024-09-20 斑马智行网络(香港)有限公司 通信方法、设备、接入点、服务器、系统及存储介质
US12126603B2 (en) 2019-08-30 2024-10-22 Henry Verheyen Secure data exchange network
EP4022841A4 (en) * 2019-08-30 2023-10-04 Thunderport, Inc. SECURE DATA EXCHANGE NETWORK
US11317288B2 (en) * 2019-10-21 2022-04-26 Jpmorgan Chase Bank, N.A. Systems and methods for securing communication between a native application and an embedded hybrid component on an electronic device
US11347895B2 (en) * 2019-12-03 2022-05-31 Aptiv Technologies Limited Method and system of authenticated encryption and decryption
US11159497B2 (en) * 2020-01-29 2021-10-26 Citrix Systems, Inc. Secure message passing using semi-trusted intermediaries
US11349644B1 (en) 2020-04-29 2022-05-31 Wells Fargo Bank, N.A. Database exclusion (DBX) for multi party access (MPA) to sensitive personal information (SPI)
US11729154B2 (en) * 2021-02-25 2023-08-15 Comcast Cable Communications, Llc Systems and methods for network privacy
US11539671B1 (en) 2021-11-17 2022-12-27 Uab 360 It Authentication scheme in a virtual private network
US12003487B2 (en) 2021-11-28 2024-06-04 Uab 360 It Authentication procedure in a virtual private network
CN114302258A (zh) * 2021-12-21 2022-04-08 广东纬德信息科技股份有限公司 一种智能燃气表安全抄表方法及系统
US11601401B1 (en) 2022-03-29 2023-03-07 Uab 360 It Secure configuration of a virtual private network server
US11463412B1 (en) * 2022-03-29 2022-10-04 Uab 360 It Protected configuration of a virtual private network server
TWI840837B (zh) * 2022-06-16 2024-05-01 莊連豪 加密式多媒體資訊管理系統及其實施方法
CN115426187B (zh) * 2022-09-02 2025-03-28 数界(深圳)科技有限公司 一种报文转发控制方法、装置、设备和介质
US20240146726A1 (en) * 2022-10-26 2024-05-02 Whatsapp Llc Accessing an encrypted platform
CN117336100B (zh) * 2023-11-27 2024-02-23 湖南湘科智慧科技有限公司 基于押运服务多方扁平化沟通的数据处理方法及装置

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5237610A (en) * 1990-02-01 1993-08-17 Scientific-Atlanta, Inc. Independent external security module for a digitally upgradeable television signal decoder
GB9605472D0 (en) * 1996-03-15 1996-05-15 Digi Media Vision Ltd A secure method and apparatus for data transmission in digital video broadcast data services
US5751813A (en) * 1996-04-29 1998-05-12 Motorola, Inc. Use of an encryption server for encrypting messages
JPH10126406A (ja) 1996-10-23 1998-05-15 Toyo Commun Equip Co Ltd ネットワークにおけるデータの暗号方式
US6009173A (en) * 1997-01-31 1999-12-28 Motorola, Inc. Encryption and decryption method and apparatus
JP3604264B2 (ja) * 1997-10-06 2004-12-22 株式会社東芝 発信者用端末装置及びネットワークシステム並びに発信情報監視方法
WO2000068814A1 (en) * 1999-05-06 2000-11-16 General Dynamics Information Systems, Inc. Transient network architecture
JP2001274786A (ja) * 2000-01-21 2001-10-05 Victor Co Of Japan Ltd コンテンツ情報伝送方法、コンテンツ情報記録方法、コンテンツ情報伝送装置、コンテンツ情報記録装置、伝送媒体、及び記録媒体
US7039190B1 (en) * 2000-08-18 2006-05-02 Nortel Networks Limited Wireless LAN WEP initialization vector partitioning scheme
SE522794C2 (sv) * 2001-02-23 2004-03-09 Ericsson Telefon Ab L M Anordning och förfarande för kommunicerande av elektroniska data via en nätverksinfrastruktur som har en unicast-mekanism och multicast-mekanism
US20030046534A1 (en) * 2001-08-31 2003-03-06 Alldredge Robert L. Method and apparatus for secured electronic commerce
JP2003244122A (ja) * 2002-02-14 2003-08-29 Sony Corp 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
JP2004201038A (ja) * 2002-12-18 2004-07-15 Internatl Business Mach Corp <Ibm> データ記憶装置、これを搭載した情報処理装置及びそのデータ処理方法並びにプログラム
US20050108523A1 (en) * 2003-02-22 2005-05-19 Earle West Method and apparatus for collecting remote data
JP2005236728A (ja) * 2004-02-20 2005-09-02 Matsushita Electric Ind Co Ltd サーバ装置、要求発行機器、要求受諾機器、通信システム及び通信方法
JP2006301887A (ja) * 2005-04-19 2006-11-02 Toshiba Corp 情報記憶再生システムとその情報端末及び情報バックアップ装置
JP4762991B2 (ja) * 2005-08-08 2011-08-31 パナソニック株式会社 情報管理システム、情報管理方法、情報提供サーバ、情報提供方法、再生装置、再生方法、再生プログラム、再生プログラムを記録したコンピュータ読み取り可能な記録媒体、再生制御回路、記録装置、記録方法、記録プログラム、記録プログラムを記録したコンピュータ読み取り可能な記録媒体及び記録制御回路
JP4909668B2 (ja) * 2006-07-24 2012-04-04 Kddi株式会社 ハイブリッド暗号化装置およびハイブリッド暗号化方法
US8412947B2 (en) * 2006-10-05 2013-04-02 Ceelox Patents, LLC System and method of secure encryption for electronic data transfer
US20090138714A1 (en) * 2007-11-26 2009-05-28 Kabushiki Kaisha Toshiba Communication apparatus, key server, management server, communication server, content distribution system, communication method, and recording medium
WO2010016163A1 (ja) * 2008-08-07 2010-02-11 株式会社Icon 一括停止処理/決済代行処理サーバ装置及びプログラム
JP5390844B2 (ja) * 2008-12-05 2014-01-15 パナソニック株式会社 鍵配布システム、鍵配布方法
JP4519935B2 (ja) * 2008-12-26 2010-08-04 株式会社東芝 情報通信方法、通信端末装置および情報通信システム
WO2011024298A1 (ja) * 2009-08-28 2011-03-03 リプレックス株式会社 サービスシステム
US8775794B2 (en) * 2010-11-15 2014-07-08 Jpmorgan Chase Bank, N.A. System and method for end to end encryption
JP5930030B2 (ja) * 2012-06-29 2016-06-08 富士通株式会社 通信プログラム、通信装置、および通信方法
DE102012111903B4 (de) * 2012-12-06 2015-11-19 Deutsche Post Ag Verfahren zum Aufbau einer sicheren Verbindung zwischen Clients
US9767299B2 (en) * 2013-03-15 2017-09-19 Mymail Technology, Llc Secure cloud data sharing
JP6199730B2 (ja) * 2013-12-25 2017-09-20 株式会社東芝 電流センサ及び電流センサモジュール
WO2018031702A1 (en) * 2016-08-10 2018-02-15 Nextlabs, Inc. Sharing encrypted documents within and outside an organization

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024186173A1 (ko) * 2023-03-09 2024-09-12 주식회사 애브체인 스마트 계약 기반 신뢰실행환경을 이용한 개인정보 처리 방법 및 시스템

Also Published As

Publication number Publication date
GB201520329D0 (en) 2015-12-30
HK1213108A1 (zh) 2016-06-24
WO2014175830A1 (en) 2014-10-30
GB2528226B (en) 2021-02-03
GB2528226A (en) 2016-01-13
CN105164968A (zh) 2015-12-16
SG11201508725SA (en) 2015-11-27
US10009321B2 (en) 2018-06-26
JP2016517248A (ja) 2016-06-09
AU2014257953A1 (en) 2015-12-10
AU2014257953B2 (en) 2018-05-10
US20160134594A1 (en) 2016-05-12

Similar Documents

Publication Publication Date Title
JP6573600B2 (ja) エンドツーエンド暗号化通信を許可するために第1のコンピューティングデバイスから第2のコンピューティングデバイスへのデータパケットを処理するための少なくとも1つのサーバによって実行される方法
US9426126B2 (en) Method and system for automatic generation of context-aware cover message
US9590951B2 (en) One-time pad communications network
US11621835B2 (en) Relay network for encryption system
CN113508563A (zh) 基于区块链的安全电子邮件系统
US20140355757A1 (en) Encryption / decryption of data with non-persistent, non-shared passkey
US20230040769A1 (en) Secure content routing using one-time pads
US20240039899A1 (en) System and method for web-browser based end-to-end encrypted messaging and for securely implementing cryptography using client-side scripting in a web browser
US20160359822A1 (en) Sovereign share encryption protocol
JP2025061093A (ja) ワンタイムパッド暗号化ハブ
Isobe et al. Breaking message integrity of an end-to-end encryption scheme of LINE
CN106605419A (zh) 用于安全的sms通信的方法和系统
US9825920B1 (en) Systems and methods for multi-function and multi-purpose cryptography
CN112637230B (zh) 一种即时通信方法及系统
US9832179B2 (en) Stateless server-based encryption associated with a distribution list
KR20170084802A (ko) 단말기들 간의 보안 데이터 송수신 방법 및 시스템
US9577995B1 (en) Systems and methods for enabling secure communication between endpoints in a distributed computerized infrastructure for establishing a social network
CN104243291A (zh) 一种可保障用户通讯内容安全的即时通讯方法及其系统
US9178855B1 (en) Systems and methods for multi-function and multi-purpose cryptography
US9571462B1 (en) Extensible personality-based messaging system in a distributed computerized infrastructure for establishing a social network
JP6167598B2 (ja) 情報処理装置、情報処理方法、および、コンピュータ・プログラム
KR20150034591A (ko) 암호화된 데이터를 재암호화하는 클라우드 서버 및 그것의 재암호화 방법
US9189638B1 (en) Systems and methods for multi-function and multi-purpose cryptography

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170421

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180305

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180524

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180905

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190614

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20190701

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190813

R150 Certificate of patent or registration of utility model

Ref document number: 6573600

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