JP2023542824A - 場所データを使用した秘密鍵の作成 - Google Patents
場所データを使用した秘密鍵の作成 Download PDFInfo
- Publication number
- JP2023542824A JP2023542824A JP2023513896A JP2023513896A JP2023542824A JP 2023542824 A JP2023542824 A JP 2023542824A JP 2023513896 A JP2023513896 A JP 2023513896A JP 2023513896 A JP2023513896 A JP 2023513896A JP 2023542824 A JP2023542824 A JP 2023542824A
- Authority
- JP
- Japan
- Prior art keywords
- location
- request message
- signature
- authority
- signature request
- 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.)
- Pending
Links
- 238000004891 communication Methods 0.000 claims abstract description 36
- 238000000034 method Methods 0.000 claims description 52
- 230000004044 response Effects 0.000 claims description 36
- 238000013475 authorization Methods 0.000 claims description 35
- 230000001343 mnemonic effect Effects 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 15
- 238000012795 verification Methods 0.000 claims description 2
- 230000001172 regenerating effect Effects 0.000 claims 2
- 230000006870 function Effects 0.000 description 35
- 230000008569 process Effects 0.000 description 26
- 238000010586 diagram Methods 0.000 description 23
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 238000009795 derivation Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 150000003839 salts Chemical class 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000005534 acoustic noise Effects 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- APTZNLHMIGJTEW-UHFFFAOYSA-N pyraflufen-ethyl Chemical compound C1=C(Cl)C(OCC(=O)OCC)=CC(C=2C(=C(OC(F)F)N(C)N=2)Cl)=C1F APTZNLHMIGJTEW-UHFFFAOYSA-N 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0872—Generation of secret information including derivation or calculation of cryptographic keys or passwords using geo-location information, e.g. location data, time, relative position or proximity to other entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0877—Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Storage Device Security (AREA)
Abstract
ロケーションベースのデータを使用してマスタシードを生成するためのシステムは、乱数を生成するように構成される疑似乱数生成器及びシステムの場所を決定するように構成される全地球測位システムモジュールを含む。システムはまた、署名要求メッセージを生成するように構成される暗号化モジュールを含む。署名要求メッセージは、乱数及び場所を含む。システムはさらに、承認のために署名要求メッセージをロケーションオーソリティに送信するように構成される通信デバイスを含む。通信デバイスはさらに、署名要求メッセージの承認時にロケーションオーソリティから署名を受信するように構成される。システムはさらに、署名に基づいてマスタシードを生成するように構成される。
Description
本発明は、秘密暗号鍵の作成に関し、より詳細には、ロケーションオーソリティによって承認された所定の場所を使用して、ハードウェアセキュリティモジュール上でマスタシードを作成することに関する。
公開鍵暗号方式では、暗号化する鍵及び復号化する鍵の2つの鍵がある。暗号鍵は公開鍵と呼ばれ、一般に、暗号化されたメッセージを受領当事者に送信しようとする、任意の当事者に公開されていると見なされる。暗号化されたメッセージを復号化するために使用される復号鍵は、秘密鍵と呼ばれ、通常、当事者間で共有されることはない。
デジタル署名は、公開鍵暗号方式を使用してデジタルメッセージ又はドキュメントの信頼性を検証するための数学的スキームである。デジタル署名は、特定のデジタル署名に関連付けられた秘密鍵の所有者が何らかのメッセージに署名したこと、及びその署名が本物であることを証明することができる。必要条件が満たされている有効なデジタル署名は、メッセージが送信当事者で作成されたものであり、送信中にメッセージが変更されていないことを受領当事者に保証する。
本発明の一態様は、少なくとも1つのプロセッサ及び少なくとも1つのメモリ構成要素を含む、場所を使用してマスタシードを作成するロケーションベースのハードウェアセキュリティモジュール(Hardware Security Module:HSM)を対象とする。ロケーションベースのハードウェアセキュリティモジュールには、乱数を生成するように構成される疑似乱数生成器(Pseudo-Random Number Generator:PRNG)及びロケーションベースのHSMの場所を決定するように構成される全地球測位システム(Global Positioning System:GPS)モジュールも含まれる。ロケーションベースのハードウェアセキュリティモジュールには、署名要求メッセージを生成するように構成される暗号化モジュールも含まれる。署名要求メッセージには、乱数及び場所が含まれる。ロケーションベースのハードウェアセキュリティモジュールはさらに、承認のために署名要求メッセージをロケーションオーソリティに送信するように構成される通信デバイスを含む。通信デバイスはさらに、署名要求メッセージの承認時にロケーションオーソリティから署名を受信するように構成される。暗号化モジュールはさらに、署名に基づいてマスタシードを生成するように構成される。
別の態様は、場所データを使用してマスタシードを作成するコンピュータ実装方法を対象とする。コンピュータ実装方法は、ある場所に位置するロケーションベースのHSMを使用して署名要求メッセージを作成する段階を含む。コンピュータ実装方法はまた、場所の座標が添付された署名要求メッセージをロケーションオーソリティに送信する段階を含む。ロケーションオーソリティは、地理的に保証された場所に物理的に位置しており、その場所はロケーションオーソリティの承認ゾーン内にある。コンピュータ実装方法はさらに、座標に基づいて署名要求メッセージを承認し、署名を提供するロケーションオーソリティからの応答を受信する段階を含む。コンピュータ実装方法は、署名に基づいてマスタシードを作成する段階も含む。
さらに別の態様は、場所データを使用してマスタシードを作成するためのコンピュータプログラム製品を対象とし、これは、1つ又は複数のコンピュータ可読記憶媒体及び1つ又は複数のコンピュータ可読記憶媒体に記憶されたプログラム命令を含むことができる。プログラム命令は、ある場所に位置するロケーションベースのHSMを使用して署名要求メッセージを作成するためのプログラム命令を含む。プログラム命令はまた、場所の座標が添付された署名要求メッセージをロケーションオーソリティに送信するためのプログラム命令を含む。ロケーションオーソリティは、地理的に保証された場所に物理的に位置しており、所定の場所はロケーションオーソリティの承認ゾーン内にある。プログラム命令はさらに、座標に基づいて署名要求メッセージを承認し、署名を提供するロケーションオーソリティからの応答を受信するためのプログラム命令を含む。プログラム命令は、署名に基づいてマスタシードを作成するためのプログラム命令も含む。
本開示の実施形態のこれら及び他の特徴、態様、及び利点は、以下の説明、添付の特許請求の範囲、及び添付の図面に関してよりよく理解されるであろう。
本開示は様々な修正形態及び代替形態を受け入れることができるが、その具体例が例として図面に示されており、詳細に説明される。しかし、その意図は、記載された特定の実施形態に限定することではないことを理解されたい。それどころか、その意図は、本開示の範囲内にあるすべての改変物、等価物、及び代替物を網羅することである。添付の図面において、同様の参照番号は同様の部品を指定するために使用される。
本開示は、秘密暗号鍵の作成に関し、より詳細には、ロケーションオーソリティによって承認された所定の場所を使用して、ハードウェアセキュリティモジュール上でマスタシードを作成することに関する。本開示は必ずしもそのような用途に限定されないが、本開示の様々な態様は、この文脈を使用する様々な例の議論を通じて理解され得る。
ハードウェアセキュリティモジュールは、デジタル鍵を保護及び管理し、デジタル署名のための暗号化及び復号化関数を実行し、認証及び、その他の暗号化関数を実行できる物理的なコンピューティングデバイスである。典型的には、ハードウェアセキュリティモジュールは、コンピュータ又はネットワークサーバに直接接続するプラグインカード又は外部デバイスの形態で提供される。
ハードウェアセキュリティモジュールは、改ざんの明らかな兆候又はロギングなど、改ざんの証拠を提供する機能を有し得る。さらに、耐タンパ機構により、ハードウェアセキュリティモジュールを動作不能にすることなく、改ざんを困難にし得る。ハードウェアセキュリティモジュールは、ユーザの承認及び認証に使用できる秘密鍵を管理するように設計されている。
ハードウェアセキュリティモジュールの典型的な関数には、例えば、オンボードの安全な暗号鍵の生成、安全な暗号鍵の保管、鍵の管理、及び暗号化又はデジタル署名の関数の実行が含まれる。ハードウェアセキュリティモジュールは、対称暗号化及び非対称暗号化をサポートすることができる。証明書の承認及びデジタル署名などの一部のアプリケーションでは、ハードウェアセキュリティモジュールによって公開鍵暗号方式が使用される。
ビットコインなどの暗号通貨は、潜在的に安全でないデバイス(例えば、パーソナルコンピュータ)から暗号化の秘密(例えば、ビットコイン秘密鍵)を隔離するように設計されている、ハードウェアウォレット、又は個人用セキュリティデバイスとして、ハードウェアセキュリティモジュールを使用できる。これらのデバイスは、ユーザがデバイスに記憶されている秘密鍵を使用して安全に操作を実行することを可能にする。
一部のハードウェアセキュリティモジュールでは、単一のマスタシードから暗号化の秘密(例えば、秘密鍵)を導出するために、階層的決定論的鍵生成プロセスが使用される。これにより、マスタシードからハードウェアセキュリティモジュールによって秘密鍵をオンデマンドで生成することができる。
ビットコインのためのウォレットを作成/復元する一般的な方法として、ビットコイン改善提案(Bitcoin Improvement Proposal:BIP)0039、以下BIP39がある。BIP39は、決定性ウォレットを生成するためのニーモニックコード又はニーモニックセンテンスの実装について説明している。これは、ニーモニックを生成し、次いで、ニーモニックをマスタシードに変換することで構成される。ニーモニックワードは、12~24ワードのニーモニックにすることができる。
しかし、ハードウェアセキュリティモジュールを使用したマスタシードの復元には、依然としてセキュリティに制限がある。BIP39などの従来の復元技術を使用している場合、復元ニーモニックセンテンスが明らかになったり漏洩したりすると、ハードウェアセキュリティモジュールが完全に侵害されることになる。これにより、ユーザが暗号通貨などの機密情報にアクセスすること防いだり、機密情報が盗まれ得る可能性を防いだりすることができる。
本開示の実施形態は、ロケーションベースのハードウェアセキュリティモジュール(HSM)を使用することによって、上記及び他の問題を克服し得る。ロケーションベースのHSMは、ロケーションオーソリティによって承認された所定の場所を使用して、マスタシードを生成することができる。所定の場所は、ロケーションベースのHSMを操作するユーザだけが知っている非公開の場所である。さらに、マスタシードを再生成するために、24ワードのニーモニックが所定の場所と共にプロセスで使用される。マスタシードの生成はまた、場所に基づくロケーションオーソリティの承認ゾーン内でのみ行われ得る。例えば、場所がロケーションオーソリティの承認ゾーン内の場所である場合、ロケーションオーソリティは署名要求メッセージを承認することができる。しかし、所定の場所が承認ゾーンの外側にある場合、署名要求メッセージは承認されず、ロケーションベースのHSMで使用できない。
より具体的には、ロケーションベースのHSMは、ある場所に物理的に位置している間に署名要求メッセージを作成することにより、マスタシードを生成する。ロケーションベースのHSMは、HSM内にある全地球測位システム(GPS)モジュールを介して場所の座標を取得することができる。署名要求が生成されると、ロケーションベースのHSMは、署名要求を承認のために適切なロケーションオーソリティに送信できる。場所の座標がロケーションオーソリティの承認ゾーン内にある場合、ロケーションベースのHSMはロケーションオーソリティから返される応答を受信し、署名要求メッセージの承認を提供する。次いで、ロケーションベースのHSMは、承認された署名要求メッセージに基づいてマスタシードを生成する。
いくつかの実施形態では、ロケーションベースのHSMは、GPSモジュールを介して場所の場所データを取得することによって署名要求メッセージを作成する。ロケーションベースのHSMは、場所データのGPS座標を使用して、場所データが所定の場所と一致するかどうかを判定することができる。場所の経度及び緯度の値を抽出することができ、ロケーションベースのHSMによって乱数を生成することができる。これらの値を使用して、署名要求メッセージを生成することができる。いくつかの実施形態では、乱数は、ロケーションベースのHSMの現在時刻をエントロピ値として使用する疑似乱数生成器で生成される。
いくつかの実施形態では、場所データは地図アプリケーションを介して取得される。例えば、ロケーションベースのHSMのオペレータは、地図アプリケーション上で所定の場所を選択することができる。この場所の座標は、署名要求メッセージの作成に使用することができる。いくつかの実施形態では、複数の所定の場所が、地図アプリケーションを介して場所データとして選択される。例えば、オペレータは地図アプリケーションで4つの場所を選択することができ、次いで、これら4つの場所の座標を署名要求メッセージに追加することができる。さらに、場所が選択される順序も追加することができる。選択された各場所は、選択の順序だけでなく、ロケーションオーソリティによって検証され得る。マスタシードを再作成する場合は、場所が選択された順序だけでなく、各場所を検証しなければならない。
ここで図を参照すると、図1は、本開示の実施形態による承認環境100を示すブロック図である。承認環境100は、ロケーションベースのHSM105及びロケーションオーソリティ160を含む。ロケーションベースのHSM105は、暗号化モジュール120、疑似乱数生成器(PRNG)130、GPSモジュール140、及び通信デバイス150を含む。
ロケーションベースのHSM105は、その場所を使用してマスタシードを生成及び記憶するように構成される承認環境100の構成要素である。いくつかの実施形態では、ロケーションベースのHSM105は個人用セキュリティデバイスである。個人用セキュリティデバイスを使用して、マスタシードを生成し、安全でないデバイスからの隔離を維持することができる。マスタシードは、デジタル署名及び承認などの暗号化の目的で使用できる、秘密鍵などの他の暗号化の秘密を導出できる鍵である。
暗号化モジュール120は、マスタシードを作成する暗号化関数を実行するように構成されるロケーションベースのHSM105の構成要素である。暗号化モジュール120は、セキュアハッシュアルゴリズム2(Secure Hash Algorithm 2:SHA-2)を使用して署名要求を生成することができる。SHA-2は、224、256、384、又は512ビット(SHA-224、SHA-256、SHA-384、SHA-512)のダイジェスト(ハッシュ値)を有する6つのハッシュ関数のセットである。これらの関数は、32ビット及び64ビットのワードで計算を実行することができる。さらに、計算を実行するときに、様々なシフト量及び加法定数(例えば、場所データ)を使用することができる。
いくつかの実施形態では、暗号化モジュール120は、PRNG130によって生成された乱数及びGPSモジュール140によって検出された場所データを使用して、SHA-256関数を適用することによって署名要求を生成する。これは、以下で定義される式1を使用して示される。
SRM=sha256(ENT)+LD 式1
ここで、SRMは署名要求メッセージを表し、sha256は関数のSHA-2セットからのSHA-256暗号化ハッシュ関数を表し、ENTはエントロピ値として使用される乱数を表し、LDは生成時のロケーションベースのHSM105の場所データを表す。
SRM=sha256(ENT)+LD 式1
ここで、SRMは署名要求メッセージを表し、sha256は関数のSHA-2セットからのSHA-256暗号化ハッシュ関数を表し、ENTはエントロピ値として使用される乱数を表し、LDは生成時のロケーションベースのHSM105の場所データを表す。
暗号化モジュール120はさらに、ロケーションオーソリティ160によって提供される署名を使用してマスタシードを生成するように構成される。いくつかの実施形態では、暗号化モジュール120は、鍵導出関数を使用してマスタシードを作成する。鍵導出関数は、マスタ鍵などの秘密値から1つ又は複数の秘密鍵を導出する暗号化ハッシュ関数である。鍵導出関数は、例えば、パスワードベースの鍵導出関数1(Password-Based Key Derivation Function 1:PBKDF1)、PBKDF2、又はArgon2であり得る。
暗号化モジュールはさらに、チェックサム及びニーモニックセンテンスを生成するように構成される。チェックサムは、署名にSHA-2関数を適用することで生成することができる。その関数の最初の8ビットは、チェックサムを表し得る。また、チェックサムに付加された乱数を11ビット単位に分割することによって、ニーモニックセンテンスを生成することもできる。いくつかの実施形態では、11ビット単位のそれぞれに、BIP39ワードリストからのワードが与えられる。
暗号化モジュール120はさらに、ロケーションオーソリティ160によって受信された署名を検証するように構成される。暗号化モジュール120は、ロケーションオーソリティ160で利用可能な公開鍵を利用して、検証アルゴリズムを実行し、ロケーションオーソリティ160の有効性を保証することができる。
暗号化モジュール120はさらに、ニーモニックセンテンスを使用してマスタシードを復元するように構成される。いくつかの実施形態では、ニーモニックセンテンスは、ロケーションベースのHSM105によって受信される。受信すると、暗号化モジュール120は乱数とチェックサムをニーモニックセンテンスから分離して、現在の場所データが添付された新しい署名要求メッセージを作成することができる。
いくつかの実施形態では、マスタシードを復元するために、すぐ上で説明した情報だけでなく、場所データを囲む生成された区域に対して1つずつ増分された、又は減分された場所データを含む8つの他の署名メッセージも使用して、9つの署名要求メッセージが作成される。ロケーションオーソリティは、各場所データを検証することができ、各署名要求メッセージに対して署名操作を実行することができる。
PRNG130は、乱数を生成するように構成されるロケーションベースのHSM105の構成要素である。ロケーションベースのHSM105などの暗号システムは、PRNG130をシステム内の不確実性のソース又はエントロピのソースとして利用する。PRNG130は、暗号アルゴリズムを使用して、ランダム性のソースからランダムビットを生成する。ランダム性は、アナログで不確実、かつ予測不可能な環境から生じ得る。いくつかの実施形態では、PRNG130は、デジタルシステムで予測不可能なビットを生成するためにアナログ機構でエントロピを活用するソフトウェア又はハードウェア構成要素であるRNGを使用する。例えば、RNGは、温度、音響雑音、乱気流、又は静電気の測定値からビットを直接サンプリングし得る。
いくつかの実施形態では、PRNG130は、ロケーションベースのHSM105が署名要求メッセージを生成する現在時刻からエントロピを導出する。例えば、ロケーションベースのHSM105は、午後6時5分にマスタシードの生成を開始する。次いで、PRNG130は、乱数を生成するときに午後6時5分をエントロピとして使用することができる。分単位で示しているが、他の時間単位を使用し得る。例えば、時単位、秒単位、又はミリ秒単位も使用することができる。
PRNG130は、RNGから一定間隔でランダムビットを受信し、それらのビットを使用してエントロピプールの内容を更新することができる。PRNG130は、エントロピプールからのいくつかのビットをより長いシーケンスに拡張して、ロケーションベースのHSM105のための乱数を生成する決定論的ランダムビットジェネレータアルゴリズムを実行することができる。
GPSモジュール140は、そのGPS座標に基づいてロケーションベースのHSM105の場所を決定するように構成されるロケーションベースのHSM105の構成要素である。GPSモジュール140は、ロケーションベースのHSM105の場所情報を取得するためにGPSシステムと通信することができる。いくつかの実施形態では、GPSモジュール140は、所定の間隔で暗号化モジュール120に場所データ(例えば、GPSシステムへの定期的な場所ピング)を提供する。
通信デバイス150は、署名要求メッセージをロケーションオーソリティ160に送信するように構成されるロケーションベースのHSM105の構成要素である。通信デバイス150はさらに、ロケーションオーソリティ160から返される応答を受信するように構成される。通信デバイス150は、短距離有線通信(例えば、ユニバーサルシリアルバス(Universal Serial Bus:USB)、シリアルATアタッチメント(Serial AT Attachment:SATA)、サンダーボルト、USB-C)を介して、又は短距離無線通信(例えば、近距離無線通信(Near Field Communication:NFC)、Bluetooth(登録商標)、無線周波数識別(Radio frequency identification:RFID)、Bluetooth低エネルギ、QRコード(登録商標)、Wi-Fi(登録商標)、Z-Wave(登録商標)、Li-Fi、超音波)を介してメッセージを送信及び受信することができる。
通信デバイス150はさらに、マスタシードから生成された秘密鍵を使用して、有線通信又は無線通信を介して支払い、又は同様のもののための取引にデジタル署名するように構成される。
ロケーションオーソリティ160は、署名要求メッセージを承認し、署名を使用して応答するように構成される承認環境100の構成要素である。いくつかの実施形態では、ロケーションオーソリティ160は、場所に基づいてメッセージに署名できる固定された場所に配置される設備である。例えば、ロケーションオーソリティ160は、都市、町の公共建造物、又は記念建造物に配置することができる。ロケーションオーソリティ160には、承認ゾーンを割り当てることもできる。承認ゾーンは、ロケーションオーソリティ160がロケーションベースのHSM105によって送信された署名要求を承認する権限を有する、ロケーションオーソリティ160に指定された区域である。例えば、承認ゾーンは都市のその区域を含み得る。ロケーションベースのHSM105が承認ゾーン内で署名要求を生成する場合、ロケーションオーソリティ160は署名要求を承認することができる。しかし、署名要求が承認ゾーン内にない場合、ロケーションオーソリティ160は署名要求を承認することができない。
いくつかの実施形態では、複数のロケーションオーソリティ160が同じ承認ゾーン内に存在する。承認ゾーン内の各ロケーションオーソリティは、署名要求を承認するために同じ秘密鍵を有することができる。例えば、ロケーションオーソリティ160は、都市内のすべての公共建造物だけでなく、都市周囲の所定の場所にも配置することができる。
いくつかの実施形態では、ロケーションオーソリティ160は応答リミッタを含む。応答リミッタは、署名要求メッセージ内の特定のハッシュ関数からの署名要求の数を制限する。例えば、署名要求メッセージが同じハッシュ関数で複数回ロケーションオーソリティ160に送信された場合、所定回数の試行後、応答リミッタは要求を自動的に拒否する。要求の拒否は、無期限に、又は所定の時間(例えば、1時間、1日、1週間など)だけ遅延させることができる。応答リミッタは、大量の要求を送信する総当たり攻撃に対する対策と見なされ得る。
いくつかの実施形態では、ロケーションオーソリティ160は、ロケーションベースのHSM105の移動を検証する。ロケーションオーソリティ160は、署名要求で受信された場所データに基づいて、ロケーションベースのHSM105が実行した時間もしくは経路、又はその両方を評価することができる。例えば、場所データからロケーションオーソリティ160までの距離に対応する制限時間を設定することができる。ロケーションベースのHSM105が制限時間内に署名要求を送信できない場合、署名要求は拒否される。いくつかの実施形態では、ロケーションオーソリティ160は、署名要求メッセージが生成されたときから署名要求メッセージがロケーションオーソリティ160に送信されたときまで、ロケーションベースのHSM105によって取得された場所情報を受信することができる。ロケーションオーソリティ160は、場所情報を分析して、ロケーションベースのHSM105が通常の方法で移動したか(例えば、車道、電車、など)、又は場所情報が正確な移動経路を提供しないか(例えば、山を通り抜ける直線、不完全な情報、など)を判定することができる。
いくつかの実施形態では、ロケーションオーソリティ160は、承認ゾーン内の複数のロケーションオーソリティ160からの承認を必要とする。例えば、承認ゾーン内には、15個のロケーションオーソリティ160が存在し得る。それら15個のうち、ロケーションオーソリティ160は、ロケーションベースのHSM105が署名を受信する前に、3個から承認を受信することを要求し得る。いくつかの実施形態では、ロケーションオーソリティ160には、承認ゾーン内で異なる承認レベルが与えられる。例えば、都市レベルのロケーションオーソリティ160及び郡レベルのロケーションオーソリティ160が存在し得る。いくつかの実施形態では、ロケーションオーソリティ160は、異なる承認レベル160を有するロケーションオーソリティ160からの承認を要求する。例えば、ロケーションオーソリティ160は、承認署名を送信する前に、都市レベルのロケーションオーソリティ160及び郡レベルのロケーションオーソリティ160からの承認を要求し得る。
図1は、例示的な承認環境100の主な代表的な構成要素を示すことを意図していることに留意されたい。しかし、いくつかの実施形態では、個々の構成要素は、図1に表すよりも多かれ少なかれ複雑になり得たり、図1に示すもの以外の構成要素又はその構成要素に加えて構成要素が存在し得たり、そのような構成要素の数、タイプ、及び構成が変化し得たりする。
図2A及び図2Bは、本開示の実施形態による、承認領域を示す例示的なマップ200、205である。例示的なマップ200は、ロケーションオーソリティ210-1、210-2、210-3、210-4、210-5(総称して「ロケーションオーソリティ210」)を含む。図1に示すように、ロケーションオーソリティ210は、ロケーションオーソリティ160と同じ、又は同等であり得る。ロケーションオーソリティ210のそれぞれは、受入領域214-1、214-2、214-3、214-4、214-5(総称して「受入領域214」)及び承認ゾーン218-1、218-2、218-3、218-4、218-5(総称して「承認ゾーン218」)を含む。
ロケーションオーソリティ210は、領域、地域、国、及び同様のものの全体に分散することができる。さらに、ロケーションオーソリティ210は、承認ゾーン218内の固定された場所に位置され得る。いくつかの実施形態では、複数のロケーションオーソリティ210が同じ承認ゾーン218内に配置され、同じ承認ゾーン218内の各ロケーションオーソリティ210は、承認ゾーン218に基づいて承認することができる。
受入領域214は、ロケーションベースのHSM105が有線通信又は近距離無線通信を介して署名要求メッセージを送信できるロケーションオーソリティ210に近接した区域を示す。ロケーションオーソリティ210は、署名要求メッセージに含まれる場所データに基づいて、署名要求に対する応答をロケーションベースのHSM105に送り返すことができる。
承認ゾーン218は、ロケーションオーソリティ210が署名要求メッセージを承認することができる、ロケーションオーソリティ210の周囲の区域を示す。ロケーションオーソリティ210が署名要求を承認するためには、ロケーションオーソリティ210の承認ゾーン内の場所で署名要求メッセージを生成する必要がある。
図2Bは、ロケーションベースのHSM105とロケーションオーソリティ210-1との間の例示的な鍵生成プロセスのマップ205を示す。ロケーションベースのHSM105を有するエンティティ280は、承認ゾーン218-1内の場所で署名要求メッセージを生成することができる。生成されると、エンティティ280は、受入領域214-1内に移動することができる。受入領域において、ロケーションベースのHSM105は、元の場所の場所データを有する署名要求メッセージをロケーションオーソリティ210-1に送信することができる。ロケーションオーソリティ210-1は、署名要求メッセージ及び場所データを検証することができる。検証された場合、ロケーションオーソリティ210-1は、署名をロケーションベースのHSM105に送り返すことができる。
図3は、本開示の実施形態による、例示的な対策場所データ構成300を示す。GPS場所データは通常、約10メートル以内の精度である。したがって、場所データが特定のポイントで収集された場合、10メートルのポイント周囲で不正確になり得る。起こり得る不正確さを説明するために、ロケーションベースのHSM105は、最初に署名要求メッセージを生成及びマスタシードを作成するときに、対策場所データ構成300を実装することができる。
いくつかの実施形態では、ニーモニックセンテンスを使用してマスタシードを再生成するために、複数の署名要求メッセージが必要になり得る。ロケーションベースのHSM105は、最初に、元の署名要求メッセージが生成されたのと同じ場所LD1で署名要求メッセージを生成することができる。ロケーションベースのHSM105は、その場所データLD1を使用して、他の場所を導出することができる。構成300に示すように、場所データLD1は、場所データLD1の経度及び緯度の座標を調整することによって、LD2、LD3、LD4、LD5、LD6、LD7、LD8、及びLD9を生成することができる。
例えば、場所データLD2は、経度座標を所定量(例えば、1、2、5、など)ずつ増分し、緯度座標を同じ所定量ずつ減分することによって生成することができる。残りの場所のデータ場所LD3~9は、同様の方法で生成でき、対応する署名要求メッセージに含めることができる。この特定の構成では、ロケーションベースのHSM105は9個の署名要求メッセージを生成する。その各々は、署名を受信する前にロケーションオーソリティ160からの承認を必要とする。
図4は、本開示の実施形態による、ロケーションベースのHSMを使用してマスタシードを作成するプロセス400を示すフロー図である。プロセス400は、例えば、承認環境100内の1つ又は複数のエンティティ、コンピュータシステム800、プロセッサ、又はハードウェアもしくはソフトウェア、又はその両方の別の構成によって実装することができる。
プロセス400は、ロケーションベースのHSM105が署名要求メッセージを作成することによって開始される。これはステップ410に示す。暗号化モジュール120は、セキュアハッシュアルゴリズム2を使用して署名要求を生成することができる。いくつかの実施形態では、暗号化モジュール120は、PRNG130によって生成された乱数及びGPSモジュール140によって検出された場所データを使用して、SHA-256関数を適用することによって署名要求を生成する。
通信デバイス150は、署名要求メッセージをロケーションオーソリティ160に送信する。これはステップ420に示す。通信デバイス150は、ロケーションベースのHSM105の構成に応じて、短距離有線通信を介して、又は短距離無線通信を介して、署名要求メッセージを送信することができる。例えば、ロケーションベースのHSM105は、ロケーションオーソリティ160のUSBスロットに接続して、署名要求メッセージを送信し得る。いくつかの実施形態では、ロケーションベースのHSM105は、NFC又はBluetoothなどの短距離通信を介して、署名要求メッセージをロケーションオーソリティ160に送信する。
通信デバイス150は、ロケーションオーソリティ160から返される応答を受信する。これはステップ430に示す。ロケーションオーソリティ160から返される応答は、署名要求メッセージの送信と同じ方法又は同様の方法で受信することができる。例えば、署名要求メッセージがNFCを介して送信された場合、返す応答はNFCを介して受信される。しかし、いくつかの実施形態では、ロケーションオーソリティ160は、返す応答を一方向にのみ送信するように構成され得る。例えば、ロケーションオーソリティ160は、署名要求メッセージがロケーションベースのHSM105からどのように受信されたかに関係なく、Bluetoothを介して応答を送り返すだけでよい。
ロケーションベースのHSM105は、応答が署名応答又はエラー応答を含むかどうかを判定する。これはステップ440に示す。応答が署名を含むと判定された場合、暗号化モジュール120はマスタシードを生成できる。これはステップ450に示す。いくつかの実施形態では、暗号化モジュール120は、パスワードとしてニーモニックセンテンスを使用し、ソルト変数として署名のSHA-2ハッシュアルゴリズムを使用する鍵導出関数を使用してマスタシードを作成する。マスタシードを含めて、暗号化モジュール120は、マスタシードを再生成するために使用できるチェックサム及びニーモニックセンテンスを生成することができる。しかし、応答にエラーメッセージが含まれる場合、ロケーションベースのHSM105は、エラーメッセージを表示することができる。これはステップ460に示す。ロケーションベースのHSM105は、ロケーションベースのHSM105上に配置されたディスプレイを介して、インジケータライトを介して、エラーを示す雑音を介して、又は何らかの他の手段を介して、エラーメッセージを表示することができる。
図5は、本開示の実施形態による、署名要求メッセージを作成するプロセス500を示すフロー図である。プロセス500は、例えば、承認環境100内の1つ又は複数のエンティティ、コンピュータシステム800、プロセッサ、又はハードウェアもしくはソフトウェア、又はその両方の別の構成によって実装することができる。いくつかの実施形態では、プロセス500は、図4のステップ410のサブプロセスである。
プロセス500は、GPSモジュール140がロケーションベースのHSM105の場所データを取得することによって開始される。これはステップ510に示す。場所データは、署名要求メッセージ生成プロセス500が開始された時点のロケーションベースのHSM105の現在のGPS座標である。GPSモジュール140は、場所データから経度及び緯度の座標を抽出する。これはステップ520に示す。抽出された経度及び緯度の座標値は、小数点第4位で四捨五入され得る。例えば、経度及び緯度の座標が、35.658581°N、139.745438°Eの場合、結果の値は35.6585及び139.7454になる。
PRNG130は、乱数を生成する。これはステップ530に示す。PRNG130は、エントロピプールからのいくつかのビットをより長いシーケンスに拡張して、ロケーションベースのHSM105のための乱数を生成する決定論的ランダムビットジェネレータアルゴリズムを実行することができる。いくつかの実施形態では、PRNG130は、乱数を生成するためのエントロピとして現在時刻を使用する。例えば、PRNG130が乱数を生成するエントロピプールに追加するために、現在時刻が取得され得る。
暗号化モジュール120は、署名要求メッセージを作成する。これはステップ540に示す。暗号化モジュール120は、PRNG130によって生成された乱数を使用してSHA-256関数を適用し、GPSモジュール140によって抽出された経度及び緯度の座標を追加することによって、署名要求を生成することができる。
図6は、本開示の実施形態による、署名要求メッセージを承認するプロセス600を示すフロー図である。プロセス600は、例えば、承認環境100内の1つ又は複数のエンティティ、コンピュータシステム900、プロセッサ、又はハードウェアもしくはソフトウェア、又はその両方の別の構成によって実装することができる。
プロセス600は、ロケーションベースのHSM105から署名要求メッセージを受信することによって開始される。これはステップ610に示す。ロケーションオーソリティ160は、ロケーションベースのHSM105及びロケーションオーソリティ160の構成に応じて、短距離有線通信を介して、又は短距離無線通信を介して、署名要求メッセージを受信することができる。例えば、ロケーションベースのHSM105は、ロケーションオーソリティ160のUSBスロットに接続して、署名要求メッセージを送信し得る。いくつかの実施形態では、ロケーションオーソリティ160は、NFC又はBluetoothなどの短距離通信を介して、ロケーションベースのHSM105から署名要求メッセージを受信する。
ロケーションオーソリティ160は、署名要求に添付された場所データがロケーションオーソリティ105の承認ゾーン内の場所を表すかどうかを判定する。これはステップ620に示す。例えば、承認ゾーンは、ロケーションオーソリティ160の周囲の半径20マイル(32.19キロメートル)であり得る。署名要求メッセージに添付された場所データが半径20マイル(32.19キロメートル)以内の場所である場合、ロケーションオーソリティ160はステップ630に進むことができる。しかし、場所データがロケーションオーソリティ160に割り当てられた承認ゾーン内にない場合、ロケーションオーソリティ160はエラー応答をロケーションベースのHSM105に送り返す。これはステップ640に示す。
ロケーションオーソリティ160は、ロケーションベースのHSM105が署名要求メッセージにおいて所定の限界に達していないことを検証する。これはステップ630に示す。例えば、署名要求メッセージが同じハッシュ関数で複数回ロケーションオーソリティ160に送信された場合、所定回数(例えば、1時間、1日、1週間、1ヶ月に1回)の試行後、応答リミッタは要求を自動的に拒否する。要求の拒否は、無期限に、又は所定の時間(例えば、1時間、1日、1週間など)だけ遅延させることができる。ロケーションベースのHSM105がその所定の限界に達したとロケーションオーソリティ160が判定した場合、ロケーションオーソリティはエラー応答をロケーションベースのHSM105に送り返す。しかし、ロケーションベースのHSMがその限界に達していない場合、プロセス600はステップ650に進むことができる。
ロケーションオーソリティ160は、署名要求メッセージに対して署名操作を実行する。これはステップ650に示す。いくつかの実施形態では、ロケーションオーソリティ160はデジタル署名を生成する。デジタル署名は、デジタルメッセージ又はドキュメントの信頼性を検証するための数学的スキームである。完了すると、ロケーションオーソリティ160は、デジタル署名をロケーションベースのHSM105に送り返す。これはステップ660に示す。
図7は、本開示の実施形態による、マスタシードを再作成するプロセス700を示すフロー図である。プロセス700は、例えば、承認環境100内の1つ又は複数のエンティティ、コンピュータシステム800、プロセッサ、又はハードウェアもしくはソフトウェア、又はその両方の別の構成によって実装することができる。
プロセス700は、最初に乱数及び署名チェックサムから生成されたニーモニックセンテンスを受信することによって開始される。これはステップ710に示す。ロケーションベースのHSM105は、以前の署名要求メッセージと同じ場所に署名要求メッセージを作成する。これはステップ720に示す。暗号化モジュール120は、セキュアハッシュアルゴリズム2を使用して署名要求を生成することができる。いくつかの実施形態では、暗号化モジュール120は、ニーモニックセンテンスとは別の乱数、及びGPSモジュール140によって検出された場所データを使用して、SHA-256関数を適用することによって、署名要求を生成する。
通信デバイス150は、署名要求メッセージをロケーションオーソリティ160に送信する。これはステップ730に示す。通信デバイス150は、ロケーションベースのHSM105の構成に応じて、短距離有線通信を介して、又は短距離無線通信を介して、署名要求メッセージを送信することができる。例えば、ロケーションベースのHSM105は、ロケーションオーソリティ160のUSBスロットに接続して、署名要求メッセージを送信し得る。いくつかの実施形態では、ロケーションベースのHSM105は、NFC又はBluetoothなどの短距離通信を介して、署名要求メッセージをロケーションオーソリティ160に送信する。
通信デバイス150は、ロケーションオーソリティ160から返される応答を受信する。これはステップ740に示す。ロケーションオーソリティ160から返される応答は、署名要求メッセージの送信と同じ方法又は同様の方法で受信することができる。例えば、署名要求メッセージがNFCを介して送信された場合、返す応答はNFCを介して受信される。しかし、いくつかの実施形態では、ロケーションオーソリティ160は、返す応答を一方向にのみ送信するように構成され得る。例えば、ロケーションオーソリティ160は、署名要求メッセージがロケーションベースのHSM105からどのように受信されたかに関係なく、Bluetoothを介して応答を送り返すだけでよい。
ロケーションベースのHSM105は、応答が署名応答又はエラー応答を含むかどうかを判定する。これはステップ750に示す。応答が署名を含むと判定された場合、プロセス700はステップ770に進むことができる。しかし、応答にエラーメッセージが含まれる場合、ロケーションベースのHSM105は、エラーメッセージを表示することができる。これはステップ760に示す。ロケーションベースのHSM105は、ロケーションベースのHSM105上に配置されたディスプレイを介して、インジケータライトを介して、エラーを示す雑音を介して、又は何らかの他の手段を介して、エラーメッセージを表示することができる。
ロケーションベースのHSM105は、ニーモニックセンテンスとは別のチェックサムを、ロケーションオーソリティ160によって受信された署名と比較する。これはステップ770に示す。新しいチェックサムは、署名にSHA-2関数を適用することで生成することができる。その関数の最初の8ビットは、チェックサムを表し得る。ロケーションベースのHSM105は、チェックサムが一致するかどうかを判定する。これはステップ780に示す。チェックサムが新しいチェックサムと一致しない場合、ロケーションベースのHSM105はエラーを表示する。
チェックサムが一致すると、暗号化モジュールがマスタシードを生成する。これはステップ790に示す。いくつかの実施形態では、暗号化モジュール120は、パスワードとしてニーモニックセンテンスを使用し、ソルト変数として署名のSHA-2ハッシュを使用する鍵導出関数を使用してマスタシードを作成する。
ここで図8を参照すると、本開示の実施形態による、(例えば、コンピュータの1つ又は複数のプロセッサ回路又はコンピュータプロセッサを使用する)本明細書に記載の方法、ツール及びモジュールの1つ又は複数、ならびに任意の関連する機能を実装する際に使用され得る例示的なコンピュータシステム800(例えば、承認環境100、ロケーションベースのHSM105)の高レベルのブロック図が示されている。いくつかの実施形態では、コンピュータシステム800の主要な構成要素は、1つ又は複数のプロセッサ802、メモリ804、端末インターフェース812、I/O(入力/出力)デバイスインターフェース814、記憶ンターフェース816、及びネットワークインターフェース818を有し得、これらすべてが、メモリバス803、I/Oバス808、及びI/Oバスインターフェース810を介した構成要素間通信のために、直接的又は間接的に通信可能に結合され得る。
コンピュータシステム800は、本明細書では概してプロセッサ802と呼ばれる、1つ又は複数の汎用プログラマブル中央処理装置(CPU)802-1、802-2、802-3、及び802-Nを含み得る。いくつかの実施形態では、コンピュータシステム800は、比較的大規模なシステムに典型的な複数のプロセッサを備え得るが、他の実施形態では、コンピュータシステム800は、代替的に、単一のCPUシステムであり得る。各プロセッサ801は、メモリ804に記憶された命令を実行し得、1つ又は複数のレベルのオンボードキャッシュを含み得る。
システムメモリ804は、ランダムアクセスメモリ(RAM)822又はキャッシュメモリ824などの揮発性メモリの形態のコンピュータシステム可読媒体を含み得る。コンピュータシステム800は、他の取り外し可能/取り外し不可能、揮発性/不揮発性コンピュータシステム記憶媒体をさらに含み得る。単なる例として、記憶システム826は、「ハードドライブ」などの取り外し不可能な不揮発性磁気媒体からの読み取り及び、それへの書き込みのために提供できる。図示されていないが、取り外し可能な不揮発性磁気ディスク(例えば、「フロッピディスク」)からの読み取り及び、その媒体への書き込み用の磁気ディスクドライブ、又はCD-ROM、DVD-ROM又は他の光媒体などの取り外し可能な不揮発性光ディスクからの読み取り又は、それへの書き込み用の光ディスクドライブが提供可能である。さらに、メモリ804は、フラッシュメモリ、例えば、フラッシュメモリスティックドライブ又はフラッシュドライブを含み得る。メモリデバイスは、1つ又は複数のデータメディアインターフェースによってメモリバス803に接続できる。メモリ804は、様々な実施形態の機能を実行するように構成されるプログラムモジュール(例えば、少なくとも1つ)のセットを有する少なくとも1つのプログラム製品を含み得る。
メモリバス803は、プロセッサ802、メモリ804、及びI/Oバスインターフェース810の間の直接通信パスを提供する単一のバス構造として図8に示されているが、メモリバス803は、いくつかの実施形態では、階層構成、スター構成、又はウェブ構成のポイントツーポイントリンク、複数の階層バス、並列及び冗長パス、又は任意のその他の適切なタイプの構成など、様々な形態のいずれかに配置され得る、複数の異なるバス又は通信パスを含み得る。さらに、I/Oバスインターフェース810及びI/Oバス808は、単一のそれぞれのユニットとして示されているが、コンピュータシステム800は、いくつかの実施形態では、複数のI/Oバスインターフェースユニット、複数のI/Oバス、又はその両方を含み得る。さらに、I/Oバス808を様々なI/Oデバイスに向かう様々な通信経路から分離する複数のI/Oインターフェースユニットが示されているが、他の実施形態では、I/Oデバイスの一部又は全部が、1つ又は複数のシステムI/Oバスに直接接続され得る。
いくつかの実施形態では、コンピュータシステム800は、マルチユーザメインフレームコンピュータシステム、シングルユーザシステム、又は直接ユーザインターフェースをほとんど又は全く有していないが、他のコンピュータシステム(クライアント)からの要求を受信するサーバコンピュータ又は同様のデバイスであり得る。さらに、いくつかの実施形態では、コンピュータシステム800は、デスクトップコンピュータ、ポータブルコンピュータ、ラップトップ又はノートブックコンピュータ、タブレットコンピュータ、ポケットコンピュータ、電話、スマートフォン、ネットワークスイッチもしくはルータ、又は任意の他の適切なタイプの電子デバイスとして実装され得る。
図8は、例示的なコンピュータシステム800の主な代表的な構成要素を示すことを意図していることに留意されたい。しかし、いくつかの実施形態では、個々の構成要素は、図8に表すよりも多かれ少なかれ複雑になり得たり、図8に示すもの以外の構成要素又はその構成要素に加えて構成要素が存在し得たり、そのような構成要素の数、タイプ、及び構成が変化し得たりする。
少なくとも1つのセットのプログラムモジュール830(例えば、承認環境100、ロケーションベースのHSM105)をそれぞれが有する1つ又は複数のプログラム/ユーティリティ828は、メモリ804に記憶され得る。プログラム/ユーティリティ828は、ハイパーバイザ(仮想マシンモニタとも呼ばれる)、1つ又は複数のオペレーティングシステム、1つ又は複数のアプリケーションプログラム、他のプログラムモジュール、及びプログラムデータを含み得る。オペレーティングシステム、1つ又は複数のアプリケーションプログラム、他のプログラムモジュールのそれぞれ、及びプログラムデータ又はそれらのいくつかの組み合わせは、ネットワーク環境の実装を含み得る。プログラム828もしくはプログラムモジュール830、又はその両方は、一般に、様々な実施形態の機能又は方法論を実行する。
本発明は、任意の可能な技術的詳細レベルの統合におけるシステム、方法、もしくはコンピュータプログラム製品、又はその組み合わせであり得る。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読記憶媒体(又は複数の媒体)を含み得る。
コンピュータ可読記憶媒体は、命令実行デバイスが使用するための命令を保持及び記憶できる有形のデバイスであり得る。コンピュータ可読記憶媒体は、例えば、限定されないが、電子記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、又は前述の任意の適切な組み合わせであり得る。コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストには、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROM又はフラッシュメモリ)、静的ランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピディスク、その上に命令が記録されたパンチカード又は溝に浮き彫りされた構造などの機械的にエンコードされたデバイス、及び前述の任意の適切な組み合わせも含まれ得る。本明細書で使用されるコンピュータ可読記憶媒体は、電波又は他の自由に伝播する電磁波、導波管又は他の伝送媒体を通って伝播する電磁波(例えば、光ファイバケーブルを通過する光パルス)、又は電線を通じて伝送される電気信号など、一時的な信号それ自体であると解釈されるべきではない。
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理デバイスに、又はネットワーク、例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、もしくは無線ネットワーク、又はその組み合わせを介して外部コンピュータ又は外部記憶デバイスにダウンロードできる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、ワイヤレス伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、もしくはエッジサーバ、又はその組み合わせを有し得る。各コンピューティング/処理デバイス内のネットワークアダプタカード又はネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に記憶するためにコンピュータ可読プログラム命令を転送する。
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路の構成データ、又は、Smalltalk(登録商標)、C++、又は同様のものなどのオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語などの手続型プログラミング言語を含む、1つ又は複数のプログラミング言語の任意の組み合わせで記述されたソースコード又はオブジェクトコードのいずれかであり得る。コンピュータ可読プログラム命令は、全部がユーザのコンピュータ上で、一部がユーザのコンピュータ上で、スタンドアロンのソフトウェアパッケージとして、一部がユーザのコンピュータ上で一部がリモートコンピュータ上で、又は全部がリモートコンピュータ上でもしくはサーバ上で実行され得る。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを介してユーザのコンピュータに接続され得るか、又は、(例えば、インターネットサービスプロバイダを使用してインターネットを介して)外部コンピュータに接続され得る。いくつかの実施形態では、例えば、プログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)、又はプログラマブルロジックアレイ(PLA)を含む電子回路は、本発明の態様を実行するために、電子回路をパーソナライズするためのコンピュータ可読プログラム命令の状態情報を利用することによって、コンピュータ可読プログラム命令を実行し得る。
本発明の態様は、本発明の実施形態による方法、装置(システム)、及びコンピュータプログラム製品のフローチャート図もしくはブロック図又はその両方を参照して本明細書に記載されている。フローチャート図もしくはブロック図又はその両方の各ブロック、及びフローチャート図もしくはブロック図又はその両方のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装できることが理解されたい。
これらのコンピュータ可読プログラム命令は、コンピュータのプロセッサ、又は他のプログラマブルデータ処理装置に提供され、マシンを生成し得て、その結果、コンピュータ又は他のプログラマブルデータ処理装置のプロセッサを介して実行される命令が、フローチャートもしくはブロック図又はその両方の1つ又は複数のブロックで指定された機能/動作を実施するための手段を作成する。これらのコンピュータ可読プログラム命令はまた、コンピュータ、プログラマブルデータ処理装置もしくは他のデバイス又はその両方に特定の方法で機能するように指示できるコンピュータ可読記憶媒体内に記憶され得て、その結果、その中に記憶された命令を有するコンピュータ可読記憶媒体は、フローチャートもしくはブロック図又はその両方の1つ又は複数のブロックで指定された機能/動作の態様を実施する命令を含む製品を備える。
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブルデータ処理装置、又は他のデバイスにロードされ、コンピュータ、他のプログラマブル装置、又は他のデバイス上で一連の動作ステップを実行させて、コンピュータ実装プロセスを生成し得て、その結果、コンピュータ、他のプログラマブル装置、又は他のデバイス上で実行される命令が、フローチャートもしくはブロック図又はその両方の1つ又は複数のブロックで指定された機能/動作を実装する。
図中のフローチャート及びブロック図は、本発明の様々な実施形態によるシステム、方法、及びコンピュータプログラム製品の可能な実装のアーキテクチャ、機能、及び動作を示す。これに関して、フローチャート又はブロック図内の各ブロックは、指定された論理機能を実装するための1つ又は複数の実行可能命令を有する、モジュール、セグメント、又は命令の一部を表し得る。いくつかの代替的な実装では、ブロックに示される機能は、図に示される順序を外れて生じ得る。例えば、連続して示される2つのブロックは、実際には、1つのステップとして実行され、部分的又は全体的に時間的に重複する方法で、同時に、又は実質的に同時に実行され得るか、又は、関連する機能に応じてブロックが時に逆の順序で実行され得る。また、ブロック図もしくはフローチャート図、又はその両方の各ブロック、及びブロック図もしくはフローチャート図、又はその両方のブロックの組み合わせは、指定された機能又は動作を実行する、又は専用ハードウェアとコンピュータ命令との組み合わせを実行する専用ハードウェアベースシステムによって実装できることにも留意されたい。
本明細書に使用される用語は、特定の実施形態を説明することをだけを目的としており、様々な実施形態を限定することを意図するものではない。本明細書で使用される、単数形「a」、「an、」及び「the」は、文脈が明らかにそれ以外を示さない限り、複数形も同様に含むことが意図される。「含む(includes)」もしくは「含む(including)」又はその組み合わせの用語は、本明細書で使用されるとき、記載されている特徴、整数、ステップ、動作、要素もしくは構成要素又はその組み合わせの存在を指定するが、1つ又は複数の他の特徴、整数、ステップ、動作、要素、構成要素もしくはそれらの群、又はその組み合わせの存在又は追加を除外しないことがさらに理解されるであろう。様々な実施形態のうちの例示的な実施形態の以前の詳細な説明では、本明細書の一部を形成し、様々な実施形態が実施され得る特定の例示的な実施形態を例示として示す、(同様の番号が同様の要素を表す)添付の図面への参照が行われた。これらの実施形態は、当業者が当該実施形態を実施することを可能とするように十分に詳細に説明されているが、他の実施形態が使用され得、様々な実施形態の範囲から逸脱することなく、論理的変更、機械的変更、電気的変更及び他の変更が行われ得る。前述の説明では、多くの具体的な詳細が、様々な実施形態の完全な理解を提供するために記載された。しかし、様々な実施形態は、これらの具体的な詳細なしで実施され得る。他の事例において、周知の回路、構造及び技術は、実施形態を不明瞭にしないために、詳細に示されていない。
異なる参照番号が、後に異なる文字が続く共通の番号(例えば、100a、100b、100c)、又は後に異なる番号が続く句読点(例えば、100-1、100-2又は100.1、100.2)を有する場合、文字又は後続の番号を除いた参照記号のみ(例えば、100)の使用は、要素のグループ全体、グループの任意のサブセット、又はグループの例示的な標本を全体として指し得る。
さらに、「少なくとも1つ」という語句は、項目のリストと共に使用される場合、リストされた項目の1つ又は複数の異なる組み合わせが使用され、リスト内の項目の1つだけが必要であり得ることを意味する。言い換えると、「少なくとも1つ」は、リストの項目及び項目の数の任意の組み合わせが使用され得るが、リスト内のすべての項目が必要なわけではないということを意味する。項目は、特定のオブジェクト、物又はカテゴリであり得る。
例えば、限定することなく、「項目A、項目B又は項目Cの少なくとも1つ」は、項目A、項目A及び項目B、又は項目Bを含み得る。この例はまた、項目A、項目B及び項目C、又は、項目B及び項目Cを含み得る。もちろん、これらの項目の任意の組み合わせが存在し得る。いくつかの例示的な例では、「少なくとも1つ」は、例えば、限定することなく、項目Aの2個、項目Bの1個、項目Cの10個、項目Bの4個及び項目Cの7個、又は、他の好適な組み合わせであり得る。
本明細書内で使用される「実施形態」という単語の異なる例は、必ずしも同じ実施形態を指すわけではないが、それらは同じ実施形態を指す場合もある。本明細書に図示又は記載される任意のデータ及びデータ構造は、単なる例であり、他の実施形態では、異なる量のデータ、データのタイプ、フィールド、フィールドの数及びタイプ、フィールド名、データの行、レコード、エントリ、又は組織の数及びタイプが使用され得る。さらに、任意のデータはロジックと組み合わされ得、その結果、個別のデータ構造が必要でなくなり得る。したがって、以前の詳細な説明は、限定的な意味で捉えるべきものではない。
本発明の様々な実施形態の説明は、例示の目的で提示されているが、網羅的であること、又は開示された実施形態に限定することを意図するものではない。多くの修正及び変形は、記載する実施形態の範囲から逸脱することなく、当業者に明らかになるであろう。本明細書で使用される用語は、実施形態の原理、実際の適用、又は市場で見られる技術を超える技術的改善を最適に説明するため、又は他の当業者が本明細書に開示される実施形態を理解できるようにするために選択されたものである。
本発明は特定の実施形態に関して説明されてきたが、その変更及び修正は当業者に明らかになることが予想される。したがって、以下の特許請求の範囲は、本発明の真の範囲内にあるすべてのそのような変更及び修正を網羅するものとして解釈されることが意図されている。
Claims (20)
- ある場所に位置するロケーションベースのハードウェアセキュリティモジュール(HSM)を使用して署名要求メッセージを作成する段階;
前記場所の座標が添付された前記署名要求メッセージをロケーションオーソリティに送信する段階;
前記座標に基づいて前記署名要求メッセージを承認し、署名を提供する前記ロケーションオーソリティからの応答を受信する段階;及び
前記署名に基づいてマスタシードを作成する段階
を備える場所データを使用してマスタシードを作成するコンピュータ実装方法。 - 前記署名要求メッセージを作成する段階が、
前記ロケーションベースのHSMの場所データを取得する段階;
前記場所データが、所定の場所に位置すると判定する段階、前記所定の場所は、前記ロケーションベースのHSMのオペレータのみが知っている非公開の場所である;
前記場所データから経度及び緯度の値を抽出する段階;
乱数生成器を使用して乱数を生成する段階;及び
前記乱数を使用して前記署名要求メッセージを作成し、前記経度及び緯度の値を添付する段階を有する、請求項1に記載のコンピュータ実装方法。 - 前記乱数生成器は、前記ロケーションベースのHSMの現在時刻を使用して前記乱数を生成する、請求項2に記載のコンピュータ実装方法。
- 第2のマスタシードを再生成するための復元ニーモニックセンテンスを受信する段階;
前記場所で前記ロケーションベースのHSMを使用して署名要求メッセージを作成する段階;
前記場所の前記座標が添付された前記署名要求メッセージを前記ロケーションオーソリティに送信する段階;
前記署名要求メッセージを承認し、第2の署名を提供する前記ロケーションオーソリティから第2の応答を受信する段階;
前記復元ニーモニックセンテンスから導出されたチェックサムを、前記第2の署名から導出された第2のチェックサムで検証する段階;及び
前記復元ニーモニックセンテンス及び前記第2の署名及び前記チェックサムの前記検証に基づいて第2のマスタシードを作成する段階
をさらに備える、請求項1~3のいずれか1項に記載のコンピュータ実装方法。 - 前記署名要求メッセージは、前記場所の周囲の場所データを含む、請求項4に記載のコンピュータ実装方法。
- 前記場所は、前記ロケーションオーソリティの承認ゾーン内にある、請求項1~5のいずれか1項に記載のコンピュータ実装方法。
- 前記ロケーションオーソリティは、地理的に保証された場所に物理的に位置する、請求項1~5のいずれか1項に記載のコンピュータ実装方法。
- 場所データを使用してマスタシードを作成するためのコンピュータプログラムであって、コンピュータに、
ある場所に位置するロケーションベースのハードウェアセキュリティモジュール(HSM)を使用して署名要求メッセージを作成する手順;
前記場所の座標が添付された前記署名要求メッセージをロケーションオーソリティに送信する手順;
前記座標に基づいて前記署名要求メッセージを承認し、署名を提供する前記ロケーションオーソリティからの応答を受信する手順;及び
前記署名に基づいてマスタシードを作成する手順
を
実行させるためのコンピュータプログラム。 - 前記署名要求メッセージを作成するための前記手順は、
前記ロケーションベースのHSMの場所データを取得する手順;
前記場所データが、所定の場所に位置すると判定する手順、前記所定の場所は、前記ロケーションベースのHSMのオペレータのみが知っている非公開の場所である;
前記場所データから経度及び緯度の値を抽出する手順;
乱数生成器を使用して乱数を生成する手順;及び
前記乱数を使用して前記署名要求メッセージを作成し、前記経度及び緯度の値を添付する手順
を有する、請求項8に記載のコンピュータプログラム。 - 前記乱数生成器は、前記ロケーションベースのHSMの現在時刻を使用して前記乱数を生成する、請求項9に記載のコンピュータプログラム。
- 前記コンピュータに、
第2のマスタシードを再生成するための復元ニーモニックセンテンスを受信する手順;
前記場所で前記ロケーションベースのHSMを使用して署名要求メッセージを生成する手順;
前記場所の前記座標が添付された前記署名要求メッセージを前記ロケーションオーソリティに送信する手順;
前記署名要求メッセージを承認し、第2の署名を提供する前記ロケーションオーソリティから第2の応答を受信する手順;
前記復元ニーモニックセンテンスから導出されたチェックサムを、前記第2の署名から導出された第2のチェックサムで検証する手順;及び
前記復元ニーモニックセンテンス及び前記第2の署名及び前記チェックサムの前記検証に基づいて第2のマスタシードを作成する手順
をさらに実行させる、請求項8~10のいずれか1項に記載のコンピュータプログラム。 - 前記署名要求メッセージは、前記場所の周囲の場所データを含む、請求項11に記載のコンピュータプログラム。
- 前記場所は、前記ロケーションオーソリティの承認ゾーン内にある、請求項8~12のいずれか1項に記載のコンピュータプログラム。
- 前記ロケーションオーソリティは、地理的に保証された場所に物理的に位置する、請求項8~12のいずれか1項に記載のコンピュータプログラム。
- 乱数を生成するように構成された疑似乱数生成器(PRNG);
ロケーションベースのハードウェアセキュリティモジュール(HSM)の場所を決定するように構成された全地球測位システム(GPS)モジュール;
署名要求メッセージを生成するように構成された暗号化モジュール、前記署名要求メッセージは、前記乱数及び前記場所を含む;
承認のために前記署名要求メッセージをロケーションオーソリティに送信するように構成された通信デバイス、前記通信デバイスはさらに、前記署名要求メッセージの承認時に前記ロケーションオーソリティから署名を受信するように構成された;及び
前記暗号化モジュールはさらに、前記署名に基づいてマスタシードを生成するように構成された
を有する場所データを使用してマスタシードを生成するためのロケーションベースのHSM。 - 前記PRNGは、現在時刻をエントロピとして使用して前記乱数を生成する、請求項15に記載のロケーションベースのHSM。
- 前記場所は、前記ロケーションオーソリティの承認ゾーン内にある前記ロケーションベースのHSMの経度及び緯度の座標である、請求項15又は16に記載のロケーションベースのHSM。
- 前記暗号化モジュールはさらに、ニーモニックセンテンスに基づいて前記マスタシードを再作成するように構成された、請求項15から17のいずれか1項に記載のロケーションベースのHSM。
- 前記通信デバイスはさらに、前記署名を受信するために、前記署名要求メッセージを複数のロケーションオーソリティに送信するように構成された、請求項15から18のいずれか1項に記載のロケーションベースのHSM。
- 前記ロケーションオーソリティは、固定された場所にある設備である、請求項15から19のいずれか1項に記載のロケーションベースのHSM。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/028,573 US11588632B2 (en) | 2020-09-22 | 2020-09-22 | Private key creation using location data |
US17/028,573 | 2020-09-22 | ||
PCT/EP2021/075366 WO2022063655A1 (en) | 2020-09-22 | 2021-09-15 | Private key creation using location data |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023542824A true JP2023542824A (ja) | 2023-10-12 |
Family
ID=77924372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023513896A Pending JP2023542824A (ja) | 2020-09-22 | 2021-09-15 | 場所データを使用した秘密鍵の作成 |
Country Status (7)
Country | Link |
---|---|
US (2) | US11588632B2 (ja) |
EP (1) | EP4217894A1 (ja) |
JP (1) | JP2023542824A (ja) |
KR (1) | KR20230058647A (ja) |
CN (1) | CN116097261A (ja) |
AU (1) | AU2021349101B2 (ja) |
WO (1) | WO2022063655A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11588632B2 (en) * | 2020-09-22 | 2023-02-21 | International Business Machines Corporation | Private key creation using location data |
EP4344123A1 (en) * | 2022-09-20 | 2024-03-27 | Thales Dis Cpl Usa, Inc. | System and method supporting data residency requirement in cloud hosted hardware security modules |
CN115658014B (zh) * | 2022-12-26 | 2023-03-10 | 成都艺馨达科技有限公司 | 一种基于遗传算法的移动应用服务方法及*** |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7360248B1 (en) * | 1999-11-09 | 2008-04-15 | International Business Machines Corporation | Methods and apparatus for verifying the identity of a user requesting access using location information |
US8472627B2 (en) * | 2000-10-30 | 2013-06-25 | Geocodex Llc | System and method for delivering encrypted information in a communication network using location indentity and key tables |
JP2008172282A (ja) | 2005-04-22 | 2008-07-24 | Matsushita Electric Ind Co Ltd | 位置保証システム |
US20100278335A1 (en) | 2007-11-02 | 2010-11-04 | Per Enge | Arrangements for Location-Based Security Systems and Methods Therefor |
US8391488B2 (en) | 2008-01-18 | 2013-03-05 | Geocodex Llc | Method and apparatus for using navigation signal information for geoencryption to enhance security |
SG171730A1 (en) * | 2008-11-24 | 2011-07-28 | Certicom Corp | System and method for hardware based security |
US8266435B2 (en) * | 2010-01-25 | 2012-09-11 | Compugroup Holding Ag | Method for generating an asymmetric cryptographic key pair and its application |
US8560839B2 (en) * | 2010-12-20 | 2013-10-15 | Microsoft Corporation | Tamper proof location services |
US9621540B2 (en) * | 2012-12-21 | 2017-04-11 | Intel Corporation | Secure provisioning of computing devices for enterprise connectivity |
WO2016036858A1 (en) * | 2014-09-03 | 2016-03-10 | Virtustream, Inc. | Systems and methods for securely provisioning the geographic location of physical infrastructure elements in cloud computing environments |
US9923719B2 (en) | 2014-12-09 | 2018-03-20 | Cryptography Research, Inc. | Location aware cryptography |
US10541811B2 (en) * | 2015-03-02 | 2020-01-21 | Salesforce.Com, Inc. | Systems and methods for securing data |
US10601787B2 (en) * | 2016-06-06 | 2020-03-24 | Cisco Technology, Inc. | Root of trust of geolocation |
US10148668B2 (en) | 2017-01-25 | 2018-12-04 | Ca, Inc. | Geolocation-based authentication credentials |
US11539518B2 (en) | 2017-05-17 | 2022-12-27 | Apple Inc. | Time-based encryption key derivation |
CN107480986B (zh) * | 2017-08-14 | 2019-08-09 | 飞天诚信科技股份有限公司 | 一种利用硬件实现数字货币钱包的方法及硬件钱包 |
US11025429B2 (en) * | 2018-05-14 | 2021-06-01 | Skydio, Inc. | Trusted contextual content |
WO2020110079A1 (en) | 2018-11-29 | 2020-06-04 | Ceevo Blockchain Venture Ltd. | Secure cryptocurrency storage system and method |
GB201902470D0 (en) * | 2019-02-22 | 2019-04-10 | Secure Thingz Ltd | Security data processing device |
KR20210017083A (ko) * | 2019-08-06 | 2021-02-17 | 삼성전자주식회사 | 퓨즈된 키에 기반하여 증명 인증서를 생성하는 전자 장치 및 방법 |
US11522721B2 (en) * | 2020-04-07 | 2022-12-06 | Verizon Patent And Licensing Inc. | System and method for establishing dynamic trust credentials for network functions |
US11588632B2 (en) * | 2020-09-22 | 2023-02-21 | International Business Machines Corporation | Private key creation using location data |
-
2020
- 2020-09-22 US US17/028,573 patent/US11588632B2/en active Active
-
2021
- 2021-09-15 AU AU2021349101A patent/AU2021349101B2/en active Active
- 2021-09-15 CN CN202180055162.3A patent/CN116097261A/zh active Pending
- 2021-09-15 KR KR1020237009275A patent/KR20230058647A/ko active Search and Examination
- 2021-09-15 WO PCT/EP2021/075366 patent/WO2022063655A1/en unknown
- 2021-09-15 JP JP2023513896A patent/JP2023542824A/ja active Pending
- 2021-09-15 EP EP21778002.2A patent/EP4217894A1/en active Pending
-
2023
- 2023-01-26 US US18/159,750 patent/US12034843B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20230179412A1 (en) | 2023-06-08 |
AU2021349101B2 (en) | 2024-07-11 |
CN116097261A (zh) | 2023-05-09 |
WO2022063655A1 (en) | 2022-03-31 |
EP4217894A1 (en) | 2023-08-02 |
US11588632B2 (en) | 2023-02-21 |
AU2021349101A1 (en) | 2023-03-23 |
US12034843B2 (en) | 2024-07-09 |
US20220094537A1 (en) | 2022-03-24 |
KR20230058647A (ko) | 2023-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10154021B1 (en) | Securitization of temporal digital communications with authentication and validation of user and access devices | |
US11244054B2 (en) | Method and apparatus for trusted computing | |
CN110519260B (zh) | 一种信息处理方法及信息处理装置 | |
AU2021349101B2 (en) | Private key creation using location data | |
ES2835025T3 (es) | Sistema y procedimiento de acceso remoto, firma digital remota | |
CN110915183A (zh) | 经由硬/软令牌验证的区块链认证 | |
CN110033258A (zh) | 基于区块链的业务数据加密方法及装置 | |
CN109075976A (zh) | 取决于密钥认证的证书发布 | |
CN110061846A (zh) | 对区块链中用户节点进行身份认证的方法及相关设备 | |
US20200313875A1 (en) | Cryptographic key management based on identity information | |
CN103248476B (zh) | 数据加密密钥的管理方法、***及终端 | |
KR102135856B1 (ko) | 퍼블릭 블록체인의 노드 인증 방법과 이를 수행하기 위한 장치 및 시스템 | |
KR20190045753A (ko) | 암호 화폐의 전자 지갑 생성 및 백업 방법 및 이를 이용한 단말 장치와 서버 | |
KR20200008413A (ko) | 비밀 선거가 보장된 블록 체인 기반의 전자 투표를 수행하는 단말 장치 및 서버와, 전자 투표 방법 | |
Sudharson et al. | Secure Authentication scheme using CEEK technique for Trusted Environment | |
CN109981287A (zh) | 一种代码签名方法及其存储介质 | |
CN110716728A (zh) | Fpga逻辑的可信更新方法及装置 | |
CN110999254A (zh) | 安全地执行加密操作 | |
Roy et al. | UML based modeling of ECDSA for secured and smart E-Governance system | |
US20110145568A1 (en) | Handling of the usage of software in a disconnected computing environment | |
CN110431803A (zh) | 基于身份信息管理加密密钥 | |
CN109818965A (zh) | 个人身份验证装置及方法 | |
EP4191939A1 (en) | Knowledge proof method, knowledge proof program, and information processing apparatus | |
CN115865495A (zh) | 数据传输控制方法、装置、电子设备和可读存储介质 | |
Satybaldy et al. | A taxonomy of challenges for self-sovereign identity systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240215 |