(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-09-20
(54)【発明の名称】楕円曲線暗号を使用して対称鍵を作成するシステムおよび方法
(51)【国際特許分類】
H04L 9/08 20060101AFI20240912BHJP
【FI】
H04L9/08 C
H04L9/08 E
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024516387
(86)(22)【出願日】2022-09-14
(85)【翻訳文提出日】2024-05-02
(86)【国際出願番号】 US2022043462
(87)【国際公開番号】W WO2023043793
(87)【国際公開日】2023-03-23
(32)【優先日】2021-09-15
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】524001640
【氏名又は名称】セーフムーン・ユーエス・エルエルシー
(74)【代理人】
【識別番号】100114188
【氏名又は名称】小野 誠
(74)【代理人】
【識別番号】100119253
【氏名又は名称】金山 賢教
(74)【代理人】
【識別番号】100124855
【氏名又は名称】坪倉 道明
(74)【代理人】
【識別番号】100129713
【氏名又は名称】重森 一輝
(74)【代理人】
【識別番号】100137213
【氏名又は名称】安藤 健司
(74)【代理人】
【識別番号】100183519
【氏名又は名称】櫻田 芳恵
(74)【代理人】
【識別番号】100196483
【氏名又は名称】川嵜 洋祐
(74)【代理人】
【識別番号】100160749
【氏名又は名称】飯野 陽一
(74)【代理人】
【識別番号】100160255
【氏名又は名称】市川 祐輔
(74)【代理人】
【識別番号】100219265
【氏名又は名称】鈴木 崇大
(74)【代理人】
【識別番号】100203208
【氏名又は名称】小笠原 洋平
(74)【代理人】
【識別番号】100216839
【氏名又は名称】大石 敏幸
(74)【代理人】
【識別番号】100228980
【氏名又は名称】副島 由加里
(74)【代理人】
【識別番号】100146318
【氏名又は名称】岩瀬 吉和
(74)【代理人】
【識別番号】100127812
【氏名又は名称】城山 康文
(72)【発明者】
【氏名】スプラグス,リン・ディー
(72)【発明者】
【氏名】スプラグス,ロバート・ジェイ
(57)【要約】
対称鍵を生成して2つの事業体間の情報の共有を可能にするためのシステムであって、対称鍵が、第一のクライアントの秘密鍵および第二のクライアントの公開鍵から確立され、対称暗号化方法で使用して、第二の事業体への伝送のための情報を暗号化し、第二の事業体が、鍵伝送を必要とせずに同じ対称鍵を形成して情報を復号化することを可能にする、システム。
【選択図】
図1
【特許請求の範囲】
【請求項1】
第一のクライアントおよび第二のクライアントによって共有されるデータを暗号化するために使用される対称鍵を生成するためのシステムであって、システムが、
・ メモリ、プロセッサ、および関連するローカルストレージを有する第一のクライアント装置と、
・ メモリ、プロセッサ、および関連するストレージを有する第二のクライアント装置と、
・ それぞれが前記第一のクライアント装置のメモリおよび前記第二のクライアント装置のメモリ上に位置する、対称鍵生成アルゴリズムおよび対称鍵暗号化アルゴリズムと、を含み、
前記システムが、
1.第一のクライアントの秘密鍵および第二のクライアントの公開鍵を、前記第一のクライアント装置のメモリおよび前記第二のクライアント装置のメモリの各々の前記対称鍵生成アルゴリズムに入力して、各装置上で前記同じ対称鍵を独立して生成する工程と、
2.前記第二のクライアントの公開鍵をリモートリポジトリ上に安全に記憶する工程と、
3.前記第一のクライアント装置上の前記対称鍵暗号化アルゴリズムを使用してデータを暗号化する工程と、
4.前記暗号化されたデータを前記第一のクライアント装置から前記第二のクライアント装置に送信する工程と、
5.前記第二のクライアント装置上の前記対称鍵暗号化アルゴリズムを使用して、前記暗号化されたデータを復号化する工程と、を実行する、システム。
【請求項2】
前記対称鍵が、前記第一のクライアントの秘密鍵に前記第二のクライアントの公開鍵を乗じることによって生成される楕円曲線上の点から導出される、請求項1に記載のシステム。
【請求項3】
前記対称鍵が、前記点の連結xおよびy座標の32バイトハッシュである、請求項2に記載のシステム。
【請求項4】
工程4が、インターネット、イントラネット、有線転送もしくは無線転送、または同様の既知の電子データ伝送手段を使用して達成される、請求項1に記載のシステム。
【請求項5】
前記第二のクライアント装置がサーバーである、請求項1に記載のシステム。
【請求項6】
請求項1に記載の前記システムを使用する方法であって、前記システムが、
1.第一のクライアント装置を有する第一のクライアントのローカルストレージから第一のクライアントの秘密鍵および第二のクライアントの公開鍵を取得する工程と、
2.前記第一のクライアント装置のメモリに格納された対称鍵生成アルゴリズムを使用して、前記第一のクライアントの秘密鍵および前記第二のクライアントの公開鍵の前記積から対称鍵を生成することであって、前記対称鍵が、前記第一のクライアントの秘密鍵に前記第二のクライアントの公開鍵を乗じることによって生成される楕円曲線上の点から導出される、生成する工程と、
3.前記第一のクライアント装置のメモリに格納された対称暗号化アルゴリズムで前記対称鍵を使用してデータを暗号化する工程と、
4.前記暗号化されたデータを、インターネット、イントラネット、有線転送もしくは無線転送、または電子データ伝送の類似の公知の手段を介して、前記第一のクライアント装置から前記第二のクライアント装置に送信する工程と、
5.前記第二のクライアント装置を有する前記第二のクライアントのストレージから前記第二のクライアントの秘密鍵および前記第一のクライアントの公開鍵を取得する工程と、
6.前記導出の方法が前記第一のクライアントの方法と一致する、工程2と同様に、前記第二のクライアント装置で前記対称鍵を生成する工程と、
7.前記第二のクライアント装置上の前記対称鍵を使用して、前記第一のクライアントからの受信メッセージを復号化し、それ故に前記暗号化されたデータにアクセスする工程と、を実行する、方法。
【請求項7】
前記対称鍵が、前記点の連結xおよびy座標の32バイトハッシュである、請求項6に記載の方法。
【請求項8】
工程3が、前記対称鍵を使用してAESアルゴリズムのインスタンスを初期化し、それによってデータを暗号化するものとして具現化される、請求項6に記載の方法。
【請求項9】
前記第一のクライアント装置のメモリに記憶されたモバイルアプリケーションも備え、前記システムが、
1.第二のクライアントの公開鍵を前記第一のクライアント装置上の前記アプリケーションに埋め込む工程と、
2.ランダムな第一のクライアントの秘密鍵および関連付けられた楕円曲線の第二の公開鍵を、前記第一のクライアント装置上の前記アプリケーションを用いて計算する工程と、
3.前記第一のクライアント装置上の前記アプリケーションを用いて、前記埋め込まれた第二のクライアントの公開鍵および前記計算されたランダムな第一のクライアントの秘密鍵から対称鍵を計算する工程と、
4.前記対称鍵を使用して前記アプリケーションを用いてデータを暗号化する工程と、
5.前記計算された公開鍵および前記暗号化されたデータを、前記第二のクライアントの公開鍵に関連付けられた前記第二のクライアント装置に送信する工程と、
6.サーバー上に位置する前記アプリケーションのコピーを用いて、前記第二のクライアントの秘密鍵および前記受信する第一のクライアントの公開鍵から対称鍵を計算する工程と、
7.前記第二のクライアント装置上の前記計算された対称鍵を使用して前記暗号化されたデータを復号化する工程と、を実行する、請求項1に記載のシステムを使用する方法。
【請求項10】
前記モバイルアプリケーションが、前記第一のクライアント装置の前記メモリにダウンロードされる時点で、前記埋め込まれた第二のクライアントの公開鍵を含む、請求項9に記載の方法。
【請求項11】
工程5が、インターネット、イントラネット、有線転送もしくは無線転送、または同様の既知の電子データ伝送手段を使用して達成される、請求項9に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本出願は、2021年9月15日に出願された米国仮特許出願第63/244,605号に対する優先権を主張する。
【0002】
(連邦政府による資金提供を受けた研究開発の記載)
本発明の研究または開発に、連邦政府資金は使用されなかった。
【0003】
(共同研究契約のある当事者)
該当なし。
【0004】
(配列表の参照による組み込み)
該当なし。
【0005】
本開示は、商業活動のための秘密鍵および公開鍵の使用に関する。より具体的には、本開示は、楕円曲線方法論を使用した対称鍵の形成に関する。
【背景技術】
【0006】
クラウドコンピューティングとストレージにより、ユーザーは自身のデータを第三者のデータセンターに格納および処理することができる。ユーザーとサービスプロバイダーとの間のデータ通信は、すべての重要なデータ(例えば、クレジットカード番号)がマスクまたは暗号化され、許可されたユーザーのみがデータ全体にアクセスできることをプロバイダーが保証することを必要とする。さらに、デジタルアイデンティティおよび認証情報は、プロバイダーがクラウド内の顧客活動について収集または生成するデータと同様に保護されなければならない。
【0007】
クラウドデータサービスには、多くのセキュリティ面の脅威が伴う。これには、従来の脅威や非従来の脅威が含まれる。従来の脅威には、ネットワーク盗聴、違法な侵入、およびサービス拒否攻撃が含まれる。クラウドコンピューティング固有の脅威には、サイドチャネル攻撃、仮想化技術の脆弱性、およびクラウドサービスの不正利用も含まれる。これらの脅威を軽減するために、セキュリティコンロトールは多くの場合、機密性、完全性、アクセス可制御性という3つのエリアの監視に依存する。本開示はアクセスコントロールに関する。
【0008】
アクセス可制御性とは、データ所有者がクラウドに外部委託されたデータへのアクセスを選択的に制限できることを意味する。合法的なユーザーは、所有者によってデータへのアクセスを許可され得るが、他者が許可なくデータにアクセスすることはできない。アクセスコントロールは、可用性とも呼ばれ得る。不正なアクセスは厳密に禁止する必要があるが、管理上または消費者による使用のための部分的なアクセスを許可するが監視する必要もある。可用性とアクセスコントロールにより、適切なレベルの許可が適切な人物に付与されることを確実にする。
【0009】
サービスプロバイダーによって、またはサービスプロバイダーに代わって保存されたクラウドベースのまたはデータへの仮想アクセスをプライベートユーザーに与えるための仮想セキュリティキーの使用が、商業市場で知られている。これらのキーは、安全な方法で情報を交換するために使用され得る。ユーザーは多くの場合、第三者がデータを傍受し情報を回復することができる可能性なく、データを安全に交換することができることを望む。
【0010】
こうした状況の例は、財務情報をクライアントに送信する必要がある会計事務所である。機関はまず、クライアントとの信頼関係を確立し、その後、この信頼関係を利用して安全に情報を送信する必要がある。
【0011】
現在、ユーザーとサービスプロバイダーとの間で共有されるデータを暗号化および復号化するために、非対称鍵および対称鍵の2つのタイプの鍵が使用されている。各鍵は既知のタイプのアルゴリズムであるが、非対称鍵が秘密鍵と公開鍵のペアとして具体化されるという点で各タイプは実質的に異なり、その一方で対称鍵は暗号化および復号化の両方に対して同一である。秘密鍵は、すべての場合において秘密に保持する必要がある。秘密鍵は、典型的には、暗号化された機密情報の送信者と受信者の間で共有されない。現在、共有対称鍵は、公開鍵インフラストラクチャ(PKI)タイプの鍵など、大きな素数から導出された公開鍵および秘密鍵を使用して、システム内のデータを暗号化および復号化するために使用される。暗号化された情報の送信者および受信者はそれぞれ、対称鍵のコピーが同一であり、各当事者が秘密に保持し、第三者とは共有しない。
【0012】
これらのPKIシステムでは、鍵のうちの一つを使用してデータを暗号化し、他方を使用してデータを復号化する。従来、公開鍵は共有され、データを暗号化するために使用され、秘密鍵は秘密に保たれ、データを復号化するために使用される。問題は、暗号化され得るデータの量が、二つのキーの係数のサイズによって制限されることであり、鍵係数は鍵のペアを生成するために使用される二つの素数の積である。1024ビットの係数を有する公開鍵は、16バイトの長さの文字列のみを暗号化することができる。したがって、PKIシステムは対称鍵を共有するために使用されるが、対称鍵は、任意の量のデータを暗号化するために使用され得る。したがって、システムの強度は、共有され得る対称鍵の長さに相当することが明白である。より大きな対称鍵を生成したシステムを有することが好ましい。
【0013】
対称鍵を使用する場合、暗号化と復号化の両方に対して鍵は同じでなければならない。したがって、対称鍵を効果的に使用するためには、共有鍵を別の当事者に安全に伝送する必要がある。したがって、PKI秘密鍵の紛失は、主に公開鍵の必要な失効に関連する、多くの問題を引き起こす。ウェブ取引におけるこの問題を軽減するために、現在のプロトコルでは、公開鍵と秘密鍵を使用して、二者間で対称鍵を共有する必要がある。対称鍵を共有する例は、セキュアソケットレイヤー(SSL)である。
【0014】
共有対称鍵を使用すると、この制限が除去されるが、対称鍵を使用する場合、鍵を共有するために、二当事者間の信頼関係を確立することも必要になる。原則として、対称鍵はPKI関連システムを使用して共有される。
【0015】
現在の仮想鍵方法論は、2つの問題を解決する。第一に、信頼できる関係を設定する必要なく、当事者がデータを交換することを可能にするシステムに対するニーズがある。第二に、システムが、持続的かつ容易に再生される公開鍵および秘密鍵の両方を生成する必要性がある。本明細書に開示されるセキュリティシステムは、従来の暗号機能に関して強化されたレベルのセキュリティを提供し、認証局および証明書失効リストの必要性を含む、従来のセキュリティに関連する多くの障壁を除去する。この方法論は、許可されたユーザーのみがアクセスでき、従来の形態の侵害の試みに対して不浸透性であるような方法で、保存された運用データを安全に保護できるシステムを提供する。一部の事例では、システムによって使用される情報は、装置上に保存されたデータからではなく、装置上に保存された暗号化されたデータから導出される。
【発明の概要】
【0016】
好ましい実施形態では、第一のクライアントおよび第二のクライアントによって共有されるデータを暗号化するために使用される対称鍵を生成するためのシステムであって、システムは、
・ メモリ、プロセッサ、および関連するローカルストレージを有する第一のクライアント装置と、
・ メモリ、プロセッサ、および関連するストレージを有する第二のクライアント装置と、
・ それぞれが第一のクライアント装置メモリおよび第二のクライアント装置メモリ上に位置する、対称鍵生成アルゴリズムおよび対称鍵暗号化アルゴリズムと、を含み、
【0017】
システムは、
1.第一のクライアントの秘密鍵および第二のクライアントの公開鍵を、第一のクライアント装置メモリおよび第二のクライアント装置メモリの各々の対称鍵生成アルゴリズムに入力して、各装置上で同じ対称鍵を独立して生成する工程と、
2.第二のクライアントの公開鍵をリモートリポジトリ上に安全に記憶する工程と、
3.第一のクライアント装置上の対称鍵暗号化アルゴリズムを使用してデータを暗号化する工程と、
4.暗号化されたデータを第一のクライアント装置から第二のクライアント装置に送信する工程と、
5.第二のクライアント装置上の対称鍵暗号化アルゴリズムを使用して、暗号化されたデータを復号化する工程と、を実行する。
【0018】
別の好ましい実施形態では、対称鍵が、第一のクライアントの秘密鍵に第二のクライアントの公開鍵を乗じることによって生成される楕円曲線上の点から導出される、本明細書に記載のシステム。
【0019】
別の好ましい実施形態では、対称鍵が点の連結xおよびy座標の32バイトハッシュである、本明細書に記載のシステム。
【0020】
別の好ましい実施形態では、工程4が、インターネット、イントラネット、有線転送もしくは無線転送、または同様の既知の電子データ伝送手段を使用して達成される、本明細書に記載のシステム。
【0021】
別の好ましい実施形態では、第二のクライアント装置がサーバーである、本明細書に記載のシステム。
【0022】
別の好ましい実施形態では、本明細書に記載のシステムを使用する方法であって、システムは、
1.第一のクライアント装置を有する第一のクライアントのローカルストレージから第一のクライアントの秘密鍵および第二のクライアントの公開鍵を取得する工程と、
2.第一のクライアント装置メモリに格納された対称鍵生成アルゴリズムを使用して、第一のクライアントの秘密鍵および第二のクライアントの公開鍵の積から対称鍵を生成することであって、対称鍵が、第一のクライアントの秘密鍵に第二のクライアントの公開鍵を乗じることによって生成される楕円曲線上の点から導出される、生成する工程と、
3.第一のクライアント装置メモリに格納された対称暗号化アルゴリズムで対称鍵を使用してデータを暗号化する工程と、
4.暗号化されたデータを、インターネット、イントラネット、有線転送もしくは無線転送、または電子データ伝送の類似の公知の手段を介して、第一のクライアント装置から第二のクライアント装置に送信する工程と、
5.第二のクライアント装置を有する第二のクライアントストレージから第二のクライアントの秘密鍵および第一のクライアントの公開鍵を取得する工程と、
6.導出の方法が第一のクライアントの方法と一致する、工程2と同様に、第二のクライアント装置で対称鍵を生成する工程と、
7.第二のクライアント装置上の対称鍵を使用して、第一のクライアントから受信メッセージを復号化し、それ故に暗号化されたデータにアクセスする工程と、を実行する。
【0023】
別の好ましい実施形態では、対称鍵が点の連結xおよびy座標の32バイトハッシュである、本明細書に記載の方法。
【0024】
別の好ましい実施形態では、工程3が、対称鍵を使用してAESアルゴリズムのインスタンスを初期化し、それによってデータを暗号化するものとして具現化される、本明細書に記載の方法。
【0025】
代替的な好ましい実施形態では、本明細書に記載のシステムを使用する方法であって、第一のクライアント装置のメモリに記憶されたモバイルアプリケーションも備え、システムは、
1.第二のクライアントの公開鍵を第一のクライアント装置上のアプリケーションに埋め込む工程と、
2.ランダムな第一のクライアントの秘密鍵および関連付けられた楕円曲線の第二の公開鍵を、第一のクライアント装置上のアプリケーションを用いて計算する工程と、
3.第一のクライアント装置上のアプリケーションを用いて、埋め込まれた第二のクライアントの公開鍵および計算されたランダムな第一のクライアントの秘密鍵から対称鍵を計算する工程と、
4.対称鍵を使用してアプリケーションを用いてデータを暗号化する工程と、
5.計算された公開鍵および暗号化されたデータを、第二のクライアントの公開鍵に関連付けられた第二のクライアント装置に送信する工程と、
6.サーバー上に位置するアプリケーションのコピーを用いて、第二のクライアントの秘密鍵および受信する第一のクライアントの公開鍵から対称鍵を計算する工程と、
7.第二のクライアント装置上の計算された対称鍵を使用して暗号化されたデータを復号化する工程と、を実行する。
【0026】
別の好ましい実施形態では、モバイルアプリケーションが、第一のクライアント装置のメモリにダウンロードされる時点で、埋め込まれた第二のクライアントの公開鍵を含む、本明細書に記載の代替的な方法。
【0027】
別の好ましい実施形態では、工程5が、インターネット、イントラネット、有線転送もしくは無線転送、または類似の既知の電子データ伝送手段を使用して達成される、本明細書に記載の代替的な方法。
【図面の簡単な説明】
【0028】
【
図1】
図1は、本明細書に開示されるシステムおよび対称鍵の方法の一例の概要を示す概略図である。
【
図2】
図2は、点の連結xおよびy座標の32バイトハッシュとしての対称鍵を示すグラフである。
【発明を実施するための形態】
【0029】
本開示は、一般に、非対称鍵システムを対称鍵システムおよび楕円曲線システムに置き換えることによって、商業活動のための非対称鍵、秘密セキュリティ鍵および公開セキュリティ鍵を使用する暗号鍵システムに関する。
【0030】
暗号鍵は、暗号化された情報を安全な方法で交換するために使用され得る。ユーザーは多くの場合、第三者がデータを傍受し情報を回復することができる可能性なく、データを安全に交換することを望む。一例は、暗号化された財務情報をクライアントと共有する必要がある会計事務所である。機関はまず、クライアントとの信頼関係を確立し、その後、確立された信頼関係を利用して安全に情報を送信する必要がある。
【0031】
本発明のシステムは、複数の事業体および人物が暗号化された情報を安全に共有することができる特徴を含む。本実施形態は、楕円公開鍵を導出することができる秘密鍵の形成および使用に関する。設計されているシステムは、現在の公開鍵インフラストラクチャの使用を必要とせず、むしろ、ユーザーおよび企業のそれぞれに同一かつ対称の秘密鍵を提供するように設計されている。システムは、2つの事業体が、いかなる種類の対称鍵の交換機構を有することなく安全に情報を共有することができるという点で、独自かつ発明的である。
【0032】
一般的に知られているように、コンピュータ暗号は、鍵に整数を使用する。一部の事例では、鍵は、乱数発生器(RNG)または擬似乱数発生器(PRNG)を使用してランダムに生成される。PRNGは、分析下ではランダムに見えるが、所与の入力制限を再現可能であるデータを生成するコンピュータアルゴリズムである。
【0033】
公開鍵暗号では、認証局または証明機関(CA)は、非対称鍵のデジタル証明書を保存、署名、および発行する事業体である。デジタル証明書は、証明書の指名された主題による非対称の公開鍵の所有権を証明する。これにより、他者(依存する当事者)は、認証された公開鍵に対応する秘密鍵に関して行われた署名または主張に依拠することができる。CAは信頼できる第三者として作用し、証明書の主題(所有者)と証明書に依存する当事者の両方によって信頼される。
【0034】
CAのクライアントは、サーバーがユーザーに与える証明書を要求するサーバー監督者である。商業CAは、証明書を発行するために金銭を請求し、その顧客は、CAの証明書がウェブブラウザ内の大部分に含まれることを予想し、その結果、認定サーバーへの知覚される安全な接続が、追加設定なしで効率的に機能する。
【0035】
認証局の使用には、証明書失効リスト(CRL)の使用も要求され、デジタル証明書が発行CAによって実際のまたは割り当てられた有効期限前に失効された場合に使用される。オンライン証明書状態プロトコル(OCSP)は、証明書の失効を確認する待ち時間を短縮しようと試みるために使用されているが、ある人物の閲覧習慣に関する情報の漏洩に関するプライバシー問題が生じる可能性もある。事業体がポリシー要件を遵守しないことによって、ソフトウェア動作の虚偽表示によって、またはユーザーによるCAポリシーへの別の違反によって、秘密鍵が侵害された可能性があることをCAが認識した場合、関連する鍵は、鍵のセキュリティが確認されるまで失効されるか、または一時的な保留状態に置かれ得る。鍵の失効には、新しい秘密鍵の生成、保存、共有が必要であり、これはユーザーにとって不便である。
【0036】
秘密/公開の非対称鍵のペアとは異なり、対称鍵は、CAの使用を必要とせずに単一の共有鍵を作成するアルゴリズムによって生成される。対称システムはまた、ブルートフォース攻撃に抵抗する上で公開鍵アルゴリズムよりも実質的に低い鍵長を必要とし、したがって、非対称システムよりも実質的に高速に使用される。本発明のシステムでは、対称鍵は、クライアント/ユーザーの装置にダウンロードされたアルゴリズムによって直接生成され、したがってCAの必要性およびCRLの不便さがなくなる。
【0037】
AES(Advanced Encryption Standard:高度暗号化標準)は、米国立標準技術研究所が確立した電子データの暗号化の規格である。AES暗号化アルゴリズム(Rijndaelアルゴリズムとしても知られる)は、128ビットのブロック/チャンクサイズを有する対称ブロック暗号アルゴリズムである。このアルゴリズムは、128ビット、192ビット、および256ビットの鍵を使用して、これらの個々のブロックを変換する。これらのブロックが暗号化されると、それらは一緒に結合されて暗号文を形成する。
【0038】
本発明のシステムの一実施形態は、パーソナルモバイルデバイス、タブレット、またはパーソナルコンピュータのいずれかを備える第一のクライアント装置を使用して、第一のクライアントで開始し、第二のクライアントとの安全な取引をセットアップすることを望み、ここで、以下の工程が発生する。
・ 工程1では、第一のクライアントは、第一のクライアントの秘密鍵(P1)および第二のクライアントの公開鍵(K2)を第一のクライアントのストレージ装置から取得する。
・ 工程2では、第一のクライアントは、対称鍵生成アルゴリズム(G)を使用して、秘密鍵および公開鍵の積から対称鍵(S)を形成する。具体的には、対称鍵は、秘密鍵に公開鍵を乗じることによって生成される楕円曲線上の点から導出される。適切な対称鍵は、点の連結xおよびy座標の32バイトハッシュである。
・ 工程3では、対称鍵は、任意の対称暗号化アルゴリズムにおいて第一のクライアントによって使用される。一例として、鍵を使用してAESアルゴリズムのインスタンスを初期化し、次にこの実証を使用してデータ(d)を暗号化することができる。
・ 工程4では、暗号化されたデータは、利用可能な任意の手段によって受信者に送信される。インターネットの使用は、伝送の一例である。
・ 工程5では、受信者は秘密鍵と送信者の公開鍵を取得し、秘密鍵と送信者の公開鍵の積から対称鍵を生成する。導出の方法は、送信者の方法と一致していなければならない。
・ 工程6で、受信者はこの対称鍵を使用して、受信メッセージを復号化し、使用のみを目的としていた情報を回復する。
【0039】
クライアントという用語は、本明細書では、本発明のシステムを使用する任意の人物または事業体を説明するために使用される。クライアントは、システムを使用する個々のユーザー、民間または公共のサービスプロバイダー、またはその他の事業体、またはその他の個人または事業体であり得る。主な実施形態では、第一のクライアントは個々のユーザーであり、第二のクライアントは、第一のクライアントが暗号化されたデータを共有している法人である。
【0040】
開示されたシステムの1つの利点は、各クライアントが独立して同一の対称鍵を生成することができるため、ユーザーは、情報を安全に交換するために機密情報の共有秘密鍵または関連する断片を交渉または格納する必要がないことである。
【0041】
第二のクライアント装置/サーバーの公開鍵が第一のクライアント装置にダウンロードされたアプリケーションに埋め込まれる代替的な方法では、以下の工程が使用される。
1.サーバーの公開鍵は、サーバーと通信する必要があるアプリケーションに埋め込まれ、
2.クライアントは、ランダムな秘密鍵および関連する楕円曲線の公開鍵を形成し、
3.クライアントは、埋め込まれた公開鍵および計算された秘密鍵から鍵を計算し、
4.クライアントは対称鍵を使用してデータを暗号化し、
5.クライアントは、計算された公開鍵およびデータをサーバーに送信し、
6.サーバーは、その秘密鍵および受信する公開鍵から鍵を形成することができ、
7.サーバーは、計算された対称鍵を使用してデータを復号化する。
【0042】
この代替的な方法は、第二のクライアントの公開鍵をアプリケーションに埋め込むことによって、追加のセキュリティ面の利益を提供する。埋め込まれた公開鍵は、ロードされた時にアプリケーションによって取得され、その後、サーバーに固有の対称鍵を生成するために使用され得る。アプリに公開鍵を埋め込むことで、「フィッシング」攻撃や「中間者」攻撃の可能性が排除される。公開鍵が何らかの形でアプリで損なわれた場合、アプリの署名は変化して使用できなくなる。この実施形態は、プロセスが1つの単純な工程で達成され得ることを除いて、本明細書に記載の他の実施形態と機能的に同じである。
【0043】
本発明は、いくつかの実施形態の説明によって図示され、例示的な実施形態が詳述されるが、添付の特許請求の範囲をこうした詳細に制限する、またはいかなる方法でも限定することは、出願者の意図ではない。添付の特許請求の範囲内の追加的な利点および修正は、当業者には容易に現れるであろう。したがって、本発明は、そのより広範な態様において、特定の詳細、代表的な装置および方法、ならびに示され説明される例示的な実施例に限定されない。したがって、出願人の一般的概念の趣旨または範囲から逸脱することなく、このような詳細から逸脱することができる。本明細書に例示的に開示される本発明は、本明細書に具体的に開示されていない任意の要素がない中でも、適切に実施され得る。
【0044】
(図面の詳細な説明)
図1は、本明細書に開示されるシステムおよび対称鍵を作成する方法の一例の概要を示す概略図である。
図1では、第一のクライアント装置10は、第一のクライアントのローカルストレージ11から第一のクライアントの秘密鍵P1および第二のクライアントの公開鍵P2を取得する。第一のクライアントの秘密鍵P1および第二のクライアントの公開鍵K2を利用して、対称鍵Sが生成される。次に、対称鍵Sおよび対称鍵アルゴリズムTを利用して、データdが暗号化され、第二のクライアント装置12に送信される。
【0045】
図1は、第二のクライアントストレージ13から第二のクライアントの秘密鍵P2および第一のクライアントの公開鍵K1を取得する第二のクライアント装置12をさらに示す。第二のクライアントの秘密鍵P2および第一のクライアントの公開鍵K1を利用して、第二のクライアント装置12は対称鍵生成アルゴリズムGを実行して、第一のクライアント装置によって生成された鍵と同一である対称鍵Sを作成する。次に、第二のクライアント装置12は、対称鍵暗号化アルゴリズムTを使用して、データdを復号化する。
【0046】
図2は、点の連結xおよびy座標の32バイトハッシュとしての対称鍵を示すグラフである。
【0047】
図1の部品の索引:
10 第一のクライアント装置
11 第一のクライアントのローカルストレージ
12 第二のクライアント装置/サーバー
13 第二のクライアント/サーバーストレージ
P1 第一のクライアントの秘密鍵
K1 第一のクライアントの公開鍵
P2 第二のクライアントの秘密鍵
K2 第二のクライアントの公開鍵
S 対称鍵
d データ(暗号化済み)
G 対称鍵生成アルゴリズム
T 対称鍵暗号化アルゴリズム
【0048】
本明細書に列挙される参考文献は、特に、当業者のレベルの教示、および特許請求の対象である本発明の主題についての一般の人々の理解に必要な任意の開示に関連するため、その全体が本明細書に組み込まれる。当業者には、上記の実施形態を変更し得ること、または本発明の範囲から逸脱することなく実質的に変更され得ることが、明らかであろう。したがって、本発明の範囲は、以下の特許請求の範囲およびそれらの等価物によって決定される。
【国際調査報告】