JP2023525774A - Key Generation Method Using Controlled Corruption in Computer Networks - Google Patents
Key Generation Method Using Controlled Corruption in Computer Networks Download PDFInfo
- Publication number
- JP2023525774A JP2023525774A JP2022568446A JP2022568446A JP2023525774A JP 2023525774 A JP2023525774 A JP 2023525774A JP 2022568446 A JP2022568446 A JP 2022568446A JP 2022568446 A JP2022568446 A JP 2022568446A JP 2023525774 A JP2023525774 A JP 2023525774A
- Authority
- JP
- Japan
- Prior art keywords
- data
- key
- privacy
- server
- code
- 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
- 238000000034 method Methods 0.000 title claims abstract description 250
- 238000004891 communication Methods 0.000 claims abstract description 42
- 238000012545 processing Methods 0.000 claims description 194
- 150000003839 salts Chemical class 0.000 claims description 55
- 230000015654 memory Effects 0.000 claims description 28
- 230000009471 action Effects 0.000 claims description 11
- 230000008569 process Effects 0.000 abstract description 69
- 230000005540 biological transmission Effects 0.000 abstract description 9
- 238000012795 verification Methods 0.000 description 184
- 238000006243 chemical reaction Methods 0.000 description 36
- 230000009466 transformation Effects 0.000 description 29
- 238000007726 management method Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 17
- 230000003993 interaction Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 238000012790 confirmation Methods 0.000 description 12
- 238000012546 transfer Methods 0.000 description 11
- 230000004044 response Effects 0.000 description 10
- 238000013475 authorization Methods 0.000 description 9
- 230000008520 organization Effects 0.000 description 8
- 230000002123 temporal effect Effects 0.000 description 7
- 230000000873 masking effect Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000001010 compromised effect Effects 0.000 description 4
- 108700041286 delta Proteins 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000011143 downstream manufacturing Methods 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 239000002243 precursor Substances 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000001131 transforming effect Effects 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 102100024175 Centriole, cilia and spindle-associated protein Human genes 0.000 description 1
- 101000980796 Homo sapiens Centriole, cilia and spindle-associated protein Proteins 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000002207 retinal effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000007474 system interaction Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 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
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- 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/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key 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) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- 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/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- 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/12—Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
-
- 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/3226—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 using a predetermined code, e.g. password, passphrase or PIN
-
- 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/3226—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 using a predetermined code, e.g. password, passphrase or PIN
- H04L9/3231—Biological data, e.g. fingerprint, voice or retina
-
- 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/3271—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 using challenge-response
-
- 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
-
- 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/30—Compression, e.g. Merkle-Damgard construction
-
- 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/42—Anonymization, e.g. involving pseudonyms
Abstract
【解決手段】本発明は、データ、ドキュメント、デバイス、通信、及びトランザクションを保護するために動作可能なプラットフォーム及び/又はアグノスティックな方法及びシステムである。本発明の実施形態は、ユーザを認証するために動作可能であってよく、任意のクライアントシステムで動作可能であってよい。この方法及びシステムは、アノニマスな関連情報の固有部分を複数のデバイス間に配布するように動作する。これらのデバイスは、アノニマスな情報の固有部分を配布し、そして、機密データ伝送を保護し、ユーザ、データ、ドキュメント、デバイス、及びトランザクションを認証するためにソリューションによって利用される。認証に使用される場合、ログインに関連する情報はソリューションのどの部分に格納されず、ユーザとデバイスは匿名で認証される。このソリューションはまた、ユーザが半自律的なプロセスを通じて、ユーザのキーを明かすことなく、クライアントシステムの保護部分にアクセスすることを許す。【選択図】図31Kind Code: A1 The present invention is a platform and/or agnostic method and system operable to protect data, documents, devices, communications, and transactions. Embodiments of the present invention may be operable to authenticate users and may be operable with any client system. The method and system operate to distribute unique pieces of anonymous related information among multiple devices. These devices distribute a unique piece of anonymous information and are utilized by the solutions to protect sensitive data transmissions and authenticate users, data, documents, devices and transactions. When used for authentication, login-related information is not stored anywhere in the solution, and users and devices are authenticated anonymously. This solution also allows the user to access protected portions of the client system through a semi-autonomous process without revealing the user's key. [Selection drawing] Fig. 31
Description
本発明は概して、データセキュリティの分野に関しており、より具体的には、目的とする通信のセキュリティと、ネットワーク又はシステムのユーザの認証(authentication)とに関する。 The present invention relates generally to the field of data security, and more specifically to security of intended communications and authentication of users of networks or systems.
全ての組織では、起こり得るセキュリティ侵害からデータを保護することが課題となっている。データセキュリティがあってこそ、組織は、通信が安全であること、そして、許可された者のみが複数のテクノロジーにわたっている組織のシステムにアクセス許可されることを確保できる。故に、データセキュリティと許可されたシステムへのアクセスとは、今日、組織が取り組まなければならない2つの大きな課題となっている。 Protecting data from possible security breaches is a challenge for all organizations. Data security enables organizations to ensure that communications are secure and that only authorized personnel are allowed access to organizational systems across multiple technologies. Thus, data security and authorized system access are two major issues that organizations must contend with today.
現在、システムとネットワークのユーザに関する様々な種類の認証をもたらすある数のシステム及び方法が存在している。これらの様々な種類の認証は、セキュリティと信頼性のレベルで異なっている。以下に、システム及びネットワークのための従来技術の認証方法の種類を例示する。 A number of systems and methods currently exist that provide various types of authentication for users of systems and networks. These various types of authentication differ in their level of security and trust. The following are examples of types of prior art authentication methods for systems and networks.
2005年11月8日にIGTに付与された米国特許第6,962,530号は、ゲーム専用プラットフォームのためのアーキテクチャ及び方法を開示しており、当該アーキテクチャ及び方法は、ゲームコードやその他のデータを安全に格納及び検証することを特徴とする。この方法は更に、コンピュータ化された賭博ゲームシステムとの間でデータを安全に交換する能力をユーザにもたらす。この発明は、複数のデバイスの間においてログイン情報を広めることを含んでいない。 U.S. Pat. No. 6,962,530, issued Nov. 8, 2005 to IGT, discloses an architecture and method for a game-only platform, which architecture and method can process game code and other data. is securely stored and verified. The method further provides the user with the ability to securely exchange data with a computerized wagering gaming system. This invention does not involve disseminating login information among multiple devices.
2015年6月9日にNECソリューションイノベータ株式会社に付与された米国特許第9,053,306号は、ユーザが入力したログイン情報から第1のハッシュ値及び第2のハッシュ値を計算するように動作する認証システムを開示している。第1のハッシュ値と第2のハッシュ値とが一致する場合に、サーバと端末との間でセッションが確立される。この発明は、暗号化された詳細の一部を隠しておくことを含んでいない。 U.S. Patent No. 9,053,306, granted to NEC Solution Innovators, Ltd. on June 9, 2015, discloses a method for calculating a first hash value and a second hash value from login information entered by a user. An authentication system that works is disclosed. A session is established between the server and the terminal if the first hash value and the second hash value match. The invention does not involve hiding some of the encrypted details.
2015年3月24日にマイクロソフト社に付与された米国特許第8,989,706号は、デバイスのための自動化された安全なペアリングに関するシステム、方法及び/又は技術を開示しており、デバイスを使用したコンテンツの並列ダウンロードに関連している。デバイスをペアリングするためのツールは、アドレスに基づく認証プロトコルと、キーに基づく認証プロトコルとを実行し得る。この発明は、暗号化された詳細の一部を隠しておくことを含んでいない。 U.S. Pat. No. 8,989,706, granted March 24, 2015 to Microsoft Corporation, discloses systems, methods and/or techniques for automated secure pairing for devices, Related to parallel download of content using . Tools for pairing devices may implement address-based authentication protocols and key-based authentication protocols. The invention does not involve hiding some of the encrypted details.
2013年1月15日にKoninklijke Philips Electronics N.V.に付与された米国特許第8,356,180号は、深い共通セキュリティドメインでのセキュア通信に関した多次元識別、認証、承認、及びキー配布のための方法を開示している。本発明は、ユーザがシステムにユーザのキーを明かすことなくして、トランザクションを認証することはできない。 Koninklijke Philips Electronics N.V. V. U.S. Pat. No. 8,356,180 to , discloses a method for multi-dimensional identification, authentication, authorization, and key distribution for secure communications in deep common security domains. The present invention cannot authenticate transactions without the user revealing the user's key to the system.
2000年8月25日にUnited Devices,Inc.に付与された米国特許第6,847,995号は、分散処理システム内で安全な転送をもたらすためのセキュリティアーキテクチャ及び方法を開示している。この発明は、多層暗号化を含んでおらず、又は、暗号化された詳細の一部を隠しておくことを含んでいない。 United Devices, Inc. on August 25, 2000. U.S. Pat. No. 6,847,995 to , discloses a security architecture and method for providing secure transfers within a distributed processing system. The present invention does not involve multiple layers of encryption or hiding some of the encrypted details.
Yaron Gviliが2016年11月23日に出願した米国特許出願公開第2017/0149796号は、第三者の検証器が安全なデータの特徴を検証できるようにするためのシステム及び技術、又はその成功した通信を開示している。この発明は、多層暗号化を含んでおらず、又は、暗号化された詳細の一部を隠しておくことを含んでいない。 U.S. Patent Application Publication No. 2017/0149796, filed Nov. 23, 2016 by Yaron Gvili, describes systems and techniques for enabling third-party verifiers to verify features of secure data, or the success thereof. Disclosure of Communications The present invention does not involve multiple layers of encryption or hiding some of the encrypted details.
2011年6月6日に寺西勇によって出願された米国特許出願公開第2011/0246779号は、離散対数ゼロ知識証明を可能にするゼロ知識証明システムを開示している。この発明は、多層暗号化を含んでおらず、又は、暗号化された詳細の一部を隠しておくことを含んでいない。 US Patent Application Publication No. 2011/0246779, filed June 6, 2011 by Isamu Teranishi, discloses a zero-knowledge proof system that enables discrete logarithmic zero-knowledge proofs. The present invention does not involve multiple layers of encryption or hiding some of the encrypted details.
従来技術の暗号化方法及びシステムは、ユーザとシステム又はネットワークとの間のデータ及び情報の転送における第三者の介入に対して特に脆弱である。第三者は、転送中のデータにアクセスできる場合にはその情報からログイン詳細を推定できる。ユーザとシステムの間で転送されたデータからログイン詳細の全てが利用可能であるならば、第三者はユーザのログイン詳細を使用してシステムにログインすることができる。これは、既知の認証方法やシステムが利用されている場合には、現在のシステムのセキュリティ上の危険を生じる。 Prior art encryption methods and systems are particularly vulnerable to third party intervention in data and information transfers between users and systems or networks. A third party can deduce login details from that information if they have access to the data in transit. A third party can use the user's login details to login to the system, provided that all of the login details are available from the data transferred between the user and the system. This poses a security risk to current systems when known authentication methods and systems are used.
必要とされているものは、送られたデータに第三者が干渉することで、ユーザのログイン情報が取得されないようにする認証方法及びシステムである。 What is needed is an authentication method and system that prevents a user's login information from being obtained by a third party interfering with the data sent.
幾つかの実施形態では、制御されたコラプションを使用してキーを生成して配布する方法は、セキュリティエンジン及びアクションエンジンを備える1又は複数のサーバにて、第1のコンピュータデバイスを登録することと、前記1又は複数のサーバにて、前記第1のコンピュータデバイスから、第1のプライバシーコードと第1のデータに関連する1又は複数のパラメータとを受け取ることであって、前記第1のプライバシーコードは前記第1のコンピュータデバイスでの第1のユーザ入力に基づいており、前記第1のデータは前記第1のコンピュータデバイスでの第2のユーザ入力に基づいている、ことと、前記1又は複数のサーバにて、チャンクカウント及び公開キーを生成することであって、前記チャンクカウントは前記第1のデータに関連する1又は複数のパラメータに基づいており、前記公開キーは非対称暗号キーペアの一部である、ことと、前記チャンクカウント及び前記公開キーを前記1又は複数のサーバから前記第1のコンピュータデバイスに送ることと、前記1又は複数のサーバにて、前記第1のコンピュータデバイスから、ある数のプライバシーキーに関するデータと第2のプライバシーコードとを受け取ることであって、前記ある数のプライバシーキーは、前記第1のデータ、前記チャンクカウント、及び前記1又は複数のコラプタに基づいており、前記第2のプライバシーコードは、前記第1のプライバシーコードに基づいており、前記ある数のプライバシーキーの数は前記チャンクカウントに等しい、ことと、前記1又は複数のサーバにて前記ある量のプライバシーキーに基づく第2のデータを生成することであって、前記第2のデータを生成することは、前記ある数のプライバシーキーを連結して連結キーを生成することと、前記連結キーから前記1又は複数のコラプタを除去して前記第2のデータを生成することと、を含む、ことと、を含む。 In some embodiments, a method of generating and distributing keys using controlled corruption includes registering a first computing device with one or more servers comprising a security engine and an action engine. , receiving, at the one or more servers, from the first computing device a first privacy code and one or more parameters associated with first data; is based on a first user input at the first computing device, and the first data is based on a second user input at the first computing device; and the one or more generating a chunk count and a public key, at a server of sending the chunk count and the public key from the one or more servers to the first computing device; and at the one or more servers from the first computing device: receiving data relating to a number of privacy keys and a second privacy code, the number of privacy keys being based on the first data, the chunk count, and the one or more corruptors; the second privacy code is based on the first privacy code, the number of privacy keys equals the chunk count; and the amount of privacy at the one or more servers. Generating second data based on a key, wherein generating the second data comprises concatenating the certain number of privacy keys to generate a concatenated key; or removing a plurality of corruptors to generate the second data.
幾つかの実施形態では、制御されたコラプションを使用してキーを生成して配布する方法は、前記1又は複数のサーバにて2つ以上のチャンク名を生成することと、前記2つ以上のチャンク名を前記第1のコンピュータデバイスに送ることと、を更に含んでよい。 In some embodiments, the method of generating and distributing keys using controlled corruption includes generating two or more chunk names at the one or more servers; sending a chunk name to the first computing device.
幾つかの実施形態では、前記ある数のプライバシーキーは更に、前記2つ以上のチャンク名に基づいている。 In some embodiments, the number of privacy keys is further based on the two or more chunk names.
幾つかの実施形態では、前記ある数のプライバシーキーを連結して前記連結キーを生成することは、前記2つ以上のチャンク名に基づいている。 In some embodiments, concatenating the number of privacy keys to generate the concatenated key is based on the two or more chunk names.
幾つかの実施形態では、前記1又は複数のコラプタは3つのコラプタからなる。 In some embodiments, the one or more corruptors consist of three corruptors.
幾つかの実施形態では、前記1又は複数のコラプタの少なくとも1つは前記第1のプライバシーコードに基づく。 In some embodiments, at least one of said one or more corruptors is based on said first privacy code.
幾つかの実施形態では、前記第2のデータを生成するために前記1又は複数のコラプタを除去することは、前記連結キーから1又は複数の第1のコラプタを除去して、第1のクリーンなデータを生成することと、前記第1のクリーンなデータから1又は複数の第2のコラプタを除去して、第2のクリーンなデータを生成することと、前記第2のクリーンなデータから1又は複数の第3のコラプタを除去し、圧縮データのベース64を生成することと、前記圧縮された第2のデータのベースを復号して前記圧縮データを生成することと、前記圧縮データを解凍して前記第2のデータを生成することと、を含んでおり、
前記プライバシーコードが使用されて、前記1又は複数の第1のコラプタ、前記1又は複数の第2のコラプタ、及び前記1又は複数の第3のコラプタのうちの少なくとも1つが除去される。
In some embodiments, removing the one or more corruptors to generate the second data includes removing one or more first corruptors from the concatenated key to create a first clean removing one or more second corruptors from the first clean data to generate second clean data; and removing one from the second clean data. or removing a plurality of third corruptors to produce a base of compressed data 64; decoding said compressed second base of data to produce said compressed data; and decompressing said compressed data. and generating the second data by
The privacy code is used to remove at least one of the one or more first corruptors, the one or more second corruptors, and the one or more third corruptors.
幾つかの実施形態では、前記第1のプライバシーコードは前記1又は複数のコラプタの少なくとも1つを除去するために使用される。 In some embodiments, the first privacy code is used to remove at least one of the one or more corruptors.
幾つかの実施形態では、前記第2のプライバシーコードは、前記1又は複数のコラプタの少なくとも1つを除去するために使用される。 In some embodiments, said second privacy code is used to remove at least one of said one or more corruptors.
幾つかの実施形態では、前記第1のデータは目的とする通信を含む。 In some embodiments, the first data includes intended communications.
幾つかの実施形態では、前記第2のユーザ入力は、英数字のキャラクタストリング、生体情報データ、パスワード、眼球スキャン、写真、及び指紋のうちの少なくとも1つを含む。 In some embodiments, the second user input includes at least one of an alphanumeric character string, biometric data, password, eye scan, photograph, and fingerprint.
幾つかの実施形態では、制御されたコラプションを使用してキーを生成する方法は、第1のコンピュータデバイスにて、第1のプライバシーコードと、第1のデータに関連する1又は複数のパラメータとを生成するステップであって、前記第1のプライバシーコードは第1のユーザ入力に基づいており、前記第1のデータは第2のユーザ入力に基づいている、ステップと、前記第1のプライバシーコードと前記第1のデータに関連する1又は複数のパラメータとを、前記第1のコンピュータデバイスから1又は複数のサーバに送るステップと、前記第1のコンピュータデバイスにて、前記1又は複数のサーバからチャンクカウント及び公開キーを受け取るステップであって、前記チャンクカウントは前記第1のデータに関連する1又は複数のパラメータに基づいており、前記公開キーは非対称暗号キーペアの一部である、ステップと、前記第1のコンピュータデバイスにて、前記第1のデータを圧縮して圧縮された第1のデータを生成するステップと、前記第1のコンピュータデバイスにて、前記圧縮された第1のデータと1又は複数の第1のコラプタに基づいて、第1のプレキーを生成するステップと、前記第1のコンピュータデバイスにて、前記第1のプレキーと1又は複数の第2のコラプタとに基づいて、前記第2のプレキーを生成するステップと、前記第1のコンピュータデバイスにて、前記第2のプレキー及び前記チャンクカウントに基づいて2つ以上のチャンクを生成するステップと、前記第1のコンピュータデバイスにて、前記2つ以上のチャンクに基づいて2つ以上のプライバシーキーを生成するステップと、前記2つ以上のプライバシーキーを前記1又は複数のサーバに送るステップと、を含む。 In some embodiments, a method of generating a key using controlled corruption includes generating, at a first computing device, a first privacy code and one or more parameters associated with first data. wherein the first privacy code is based on a first user input and the first data is based on a second user input; and the first privacy code and one or more parameters associated with the first data from the first computing device to one or more servers; and at the first computing device, from the one or more servers receiving a chunk count and a public key, wherein the chunk count is based on one or more parameters associated with the first data and the public key is part of an asymmetric cryptographic key pair; compressing the first data to generate compressed first data at the first computing device; and generating compressed first data at the first computing device; or generating a first pre-key based on a plurality of first corruptors; and at said first computing device, based on said first pre-key and one or more second corruptors, said generating a second pre-key; generating, at the first computing device, two or more chunks based on the second pre-key and the chunk count; and at the first computing device , generating two or more privacy keys based on the two or more chunks, and sending the two or more privacy keys to the one or more servers.
幾つかの実施形態では、前記第2のプレキー及び前記チャンクカウントに基づいて前記2つ以上のチャンクを生成するステップは、前記第2のプレキーをソルトを用いてコラプションして第3のプレキーを生成するステップと、1又は複数の第3のコラプタを用いて前記第3のプレキーをコラプションするステップと、前記チャンクカウントに基づいて、前記コラプションされた第3のプレキーを前記2つ以上のチャンクに分割するステップと、を含む。 In some embodiments, generating the two or more chunks based on the second pre-key and the chunk count includes corrupting the second pre-key with a salt to generate a third pre-key. corrupting the third pre-key using one or more third corruptors; and splitting the corrupted third pre-key into the two or more chunks based on the chunk count. and
幾つかの実施形態では、制御されたコラプションを使用してキーを生成する方法は、前記第1のコンピュータデバイスにて2つ以上のチャンク名を受け取るステップを更に含む。 In some embodiments, the method of generating keys using controlled corruption further comprises receiving two or more chunk names at the first computing device.
幾つかの実施形態では、前記1又は複数のプライバシーキーは更に、前記2つ以上のチャンク名に基づいている。 In some embodiments, the one or more privacy keys are further based on the two or more chunk names.
幾つかの実施形態では、制御されたコラプションを使用してキーを生成して配布する方法において、1又は複数のサーバにて第1のコンピュータデバイスを登録することと、前記1又は複数のサーバにて、前記第1のコンピュータデバイスから、第1のプライバシーコードと第1のデータに関連する1又は複数のパラメータとを受け取ることであって、前記第1のプライバシーコードは前記第1のコンピュータデバイスでの第1のユーザ入力に基づいており、前記第1のデータは前記第1のコンピュータデバイスでの第2のユーザ入力に基づいている、ことと、前記1又は複数のサーバにて、チャンクカウント及び公開キーを生成することであって、前記チャンクカウントは前記第1のデータに関連する1又は複数のパラメータに基づいており、前記公開キーは非対称暗号キーペアの一部である、ことと、前記チャンクカウント及び前記公開キーを前記1又は複数のサーバから前記第1のコンピュータデバイスに送ることと、前記1又は複数のサーバにて、前記第1のコンピュータデバイスから、ある数の第1のプライバシーキーに関するデータと第2のプライバシーコードとを受け取ることであって、前記ある数の第1のプライバシーキーは、前記第1のデータ、前記チャンクカウント、及び1又は複数のコラプタに基づいており、前記第2のプライバシーコードは前記第1のプライバシーコードに基づいており、前記ある数の第1のプライバシーキーの数は前記チャンクカウントに等しい、ことと、前記1又は複数のサーバにて、前記ある数の第1のプライバシーキーに基づいて第2のデータを生成することであって、前記第2のデータを生成することは、前記ある数の第1のプライバシーキーを連結して連結キーを生成することと、前記連結キーから前記1又は複数のコラプタを除去して前記第2のデータを生成することと、を含んでいる、ことと、前記1又は複数のサーバにて、前記第2のデータに基づく結果を生成することと、前記1又は複数のサーバにて、前記結果に基づいて、受信者識別子及びプライバシーコード識別子を生成することであって、前記受信者識別子は1又は複数のノードに関連しており、前記プライバシーコード識別子は前記第2のプライバシーコードに基づいている、ことと、前記ある数の第1のプライバシーキー、前記受信者識別子、及び前記プライバシーコード識別子を前記1又は複数のノードに配布することと、を含む。 In some embodiments, a method of generating and distributing keys using controlled corruption includes registering a first computing device with one or more servers; receiving from the first computing device a first privacy code and one or more parameters associated with first data, wherein the first privacy code is at the first computing device; and the first data is based on a second user input at the first computing device; and at the one or more servers, chunk count and generating a public key, wherein the chunk count is based on one or more parameters associated with the first data, the public key being part of an asymmetric cryptographic key pair; sending a count and the public key from the one or more servers to the first computing device; and at the one or more servers from the first computing device for a number of first privacy keys. receiving data and a second privacy code, wherein the number of first privacy keys is based on the first data, the chunk count and one or more corruptors; the number of first privacy keys is based on the first privacy code, wherein the number of first privacy keys equals the chunk count; and at the one or more servers, the number of generating second data based on one privacy key, wherein generating the second data includes concatenating the certain number of first privacy keys to generate a concatenated key; , removing the one or more corruptors from the concatenated key to generate the second data; and at the one or more servers, based on the second data. generating a result; and generating, at the one or more servers, a recipient identifier and a privacy code identifier based on the result, wherein the recipient identifier is associated with one or more nodes. and wherein said privacy code identifier is based on said second privacy code; and said number of first privacy keys, said recipient identifiers, and said privacy code identifiers are provided to said one or more nodes. including distributing.
幾つかの実施形態では、制御されたコラプションを使用してキーを生成して配布する方法は、前記1又は複数のサーバにて、前記第1のコンピュータデバイスから、第3のデータに基づく2つ以上のプライバシーキーを受け取ることと、サインインデータを生成することであって、前記サインインデータは、前記第3のデータに基づく2以上のプライバシーキーに基づく、ことと、を含んでよい。 In some embodiments, the method of generating and distributing keys using controlled corruption comprises: at said one or more servers, from said first computing device, two keys based on third data; and generating sign-in data, wherein the sign-in data is based on two or more privacy keys based on the third data.
幾つかの実施形態では、制御されたコラプションを使用してキーを生成して配布する方法は、前記受信者識別子及び前記プライバシーコード識別子の少なくとも一方に基づいて、前記1又は複数のノードに格納されているプライバシーキーを取得することと、エンロールメントデータを生成することであって、前記エンロールメントデータは前記1又は複数のノードから取得されたプライバシーキーに基づく、ことと、を含んでよい。 In some embodiments, the method of generating and distributing keys using controlled corruption includes: keys stored in the one or more nodes based on at least one of the recipient identifier and the privacy code identifier; and generating enrollment data, wherein the enrollment data is based on privacy keys obtained from the one or more nodes.
幾つかの実施形態では、制御されたコラプションを使用してキーを生成して配布する方法は、前記サインインデータと前記エンロールメントデータとを比較することと、結果を生成することと、を含んでよい。 In some embodiments, a method of generating and distributing keys using controlled corruption includes comparing the sign-in data and the enrollment data and generating a result. OK.
幾つかの実施形態では、サーバを備えるシステムにおいて、前記サーバは、サーバ命令を含むメモリと、前記サーバ命令を実行するように構成された処理デバイスと、を備えており、前記サーバ命令は、前記処理デバイスに、1又は複数のサーバにて第1のコンピュータデバイスを登録することであって、前記1又は複数のサーバは、セキュリティエンジン、アクションエンジン、ライブラリ、及び前記1又は複数のサーバに関する1又は複数のノードを備える、ことと、前記1又は複数のサーバにて、前記第1のコンピュータデバイスから、第1のプライバシーコードと第1のデータに関連する1又は複数のパラメータとを受け取ることであって、前記第1のプライバシーコードは前記第1のコンピュータデバイスでの第1のユーザ入力に基づいており、前記第1のデータは前記第1のコンピュータデバイスでの第2のユーザ入力に基づいている、ことと、前記1又は複数のサーバにて、チャンクカウント及び公開キーを生成することであって、前記チャンクカウントは前記第1のデータに関連する1又は複数のパラメータに基づいており、前記公開キーは非対称暗号キーペアの一部である、ことと、前記チャンクカウント及び前記公開キーを前記1又は複数のサーバから前記第1のコンピュータデバイスに送ることと、前記1又は複数のサーバにて、前記第1のコンピュータデバイスから、ある数のプライバシーキーと第2のプライバシーコードとを受け取ることであって、前記ある数のプライバシーキーは、前記第1のデータ、前記チャンクカウント、及び1又は複数のコラプタに基づいており、前記第2のプライバシーコードは前記第1のプライバシーコードに基づいており、前記ある数のプライバシーキーの数は前記チャンクカウントと等しい、ことと、前記1又は複数のサーバにて、前記ある量のプライバシーキーに基づく第2のデータを生成することであって、前記第2のデータを生成することは、前記ある数のプライバシーキーを連結して連結キーを生成することと、前記連結キーから前記1又は複数のコラプタを除去して前記第2のデータを生成することと、を含む、ことと、を実行させてよい。 In some embodiments, a system comprising a server, said server comprising a memory comprising server instructions, and a processing device configured to execute said server instructions, said server instructions comprising said registering a first computing device with a processing device at one or more servers, the one or more servers comprising a security engine, an action engine, a library, and one or more associated with the one or more servers; and receiving, at the one or more servers, from the first computing device a first privacy code and one or more parameters associated with first data. the first privacy code is based on a first user input at the first computing device and the first data is based on a second user input at the first computing device and generating, at the one or more servers, a chunk count and a public key, wherein the chunk count is based on one or more parameters associated with the first data; the key is part of an asymmetric cryptographic key pair; sending the chunk count and the public key from the one or more servers to the first computing device; and at the one or more servers, receiving a number of privacy keys and a second privacy code from a first computing device, the number of privacy keys comprising the first data, the chunk count, and one or more corruptors; and the second privacy code is based on the first privacy code, and the number of privacy keys in the certain number equals the chunk count; and at the one or more servers, generating second data based on the quantity of privacy keys, wherein generating the second data comprises concatenating the number of privacy keys to generate a concatenated key; and removing the one or more corruptors from the concatenated key to generate the second data.
この点に関して、本発明の少なくとも1つの実施形態を詳細に説明する前に、本発明は、以下の説明に記載された、又は図面に示された構造の詳細と構成要素の配置とに限定されるものではないことは理解されるべきである。本発明は、他の実施形態が可能であって、様々な方法で実施できる。また、本明細書で採用されている表現及び用語は、説明の目的のためのものであって、限定的なものとみなされるべきではないことも理解されるべきである。 In this regard, before describing at least one embodiment of the invention in detail, the invention is limited to the details of construction and arrangement of components set forth in the following description or illustrated in the drawings. It should be understood that the The invention is capable of other embodiments and of being practiced and carried out in various ways. Also, it is to be understood that the phraseology and terminology employed herein is for the purpose of description and should not be regarded as limiting.
以下の詳細な説明を検討すると、本発明がより良く理解され、本発明の目的が明らかになるであろう。その詳細な説明は、添付の図面を参照している。 The invention will be better understood and the objects of the invention will become apparent upon consideration of the following detailed description. The detailed description refers to the accompanying drawings.
図面では、本発明の実施形態が例示的に図示されている。本明細書及び図面は、例示の目的のみのための、そして、理解の助けとしてのものであり、本発明の範囲の定義として意図されたものではないことは明らかに理解される。 In the drawings, embodiments of the invention are illustrated by way of example. It is expressly understood that the specification and drawings are for the purpose of illustration only and as an aid to understanding and are not intended as a definition of the scope of the invention.
本発明は、ユーザ、データ、ドキュメント、デバイス、及びトランザクションを認証するために動作する認証方法及びシステムである。本発明の実施形態は、任意の組織又は個人における任意のシステム又はネットワークで動作可能である。認証方法及びシステムは、複数のデバイスの間でログイン関連情報の固有部分を配布するために動作可能である。ログイン関連情報の配布された部分は、ログイン関連情報をシステムに明らかにすることなく、ユーザ、データ、ドキュメント、デバイス、及びトランザクションを認証するためにシステムによって利用される。ログイン関連情報は多層暗号化及び/又はハッシュ化され、暗号化及び/又はハッシュ化された詳細情報の一部は隠される。ログイン関連情報が格納されている装置は全て、認証方法及びシステムにおいて利用される。ユーザに提供されたログイン関連情報は、システム又はどのユーザデバイスにも明らかにされず、及び/又は格納されない。データ、ドキュメント、デバイス、トランザクションの認証は、システムに公開されるキーを必要としない。 The present invention is an authentication method and system that operates to authenticate users, data, documents, devices, and transactions. Embodiments of the present invention can operate on any system or network at any organization or individual. The authentication method and system are operable to distribute unique pieces of login-related information among multiple devices. The distributed portion of the login-related information is utilized by the system to authenticate users, data, documents, devices, and transactions without revealing the login-related information to the system. The login-related information is multi-layered encrypted and/or hashed, and some of the encrypted and/or hashed details are hidden. Any device that stores login-related information is used in the authentication method and system. User-provided login-related information is not revealed and/or stored in the system or any user device. Authentication of data, documents, devices and transactions does not require keys published to the system.
本明細書では、「クライアントシステム」とは、組織又は個人のネットワーク又はシステムの何れかを意味する。本明細書では、「ユーザデバイス」とは、ユーザがクライアントシステムにログインするために使用するデバイスを意味し、例えば、ラップトップ、タブレット、携帯電話、スマートフォン、デスクトップコンピュータ、スマートウォッチ、コンピュータデバイスであって、それによって、ユーザは、クライアントシステム又は安全なログインを必要とする他のデバイスにログインすることができる。ユーザとクライアントシステムの間での「情報の転送」に関する言及は、システムに関連して起こる情報の作成、転送、又は格納を含み得る。 As used herein, "client system" means any organizational or individual network or system. As used herein, "user device" means a device that a user uses to log into a client system, such as a laptop, tablet, mobile phone, smartphone, desktop computer, smartwatch, computing device. , thereby allowing a user to log into a client system or other device that requires a secure login. References to "transferring information" between a user and a client system may include creating, transferring, or storing information occurring in connection with the system.
明確にするために、認証システムの他のユニット又は要素に「アクセス」する認証システムのユニット又は要素に言及する場合、これは以下の何れかを含み得る。(i)ユニット又は要素が他のユニット又は要素にアクセスして、そこから情報を取得すること、又は、(ii)ユニット又は要素が他のユニット又は要素に、取得又は生成される情報の要求を送り、その情報が要求に応答して取得又は生成されると、その情報が、要求を送ったユニット又は要素に送られること。 For clarity, when referring to a unit or element of the authentication system that "accesses" another unit or element of the authentication system, this may include any of the following: (i) a unit or element accessing and obtaining information from another unit or element; or (ii) a unit or element making a request to another unit or element for information to be obtained or generated. sending, and when that information is obtained or generated in response to a request, that information is sent to the unit or element that sent the request.
ユーザがユーザデバイスを使用してクライアントシステムにログインする場合、ユーザデバイスとクライアントシステムの間でのログイン関連情報の生成、転送、格納、又は認証は、第三者による攻撃に対して脆弱であり得る。ユーザデバイス又はクライアントシステムに対する第三者の攻撃の結果、ユーザデバイスとクライアントシステムの間でのログイン関連情報の生成、転送、格納、及び/又は認証の間に、第三者がそのような情報を取得し、及び/又は不正な目的のために使用する可能性がある。例えば、第三者は、取得したログイン情報を使用してクライアントシステムにログインし、それによってクライアントシステムへの不正アクセスを達成したり、クライアントシステムからより多くのログイン関連情報を取得することやその他の方法によって、クライアントシステムに接続されているシステムへと横に移動する可能性がある。別の例としては、第三者は、攻撃によって得られたデータ、ドキュメント、又は取引情報を、様々な不正な目的(例えば、他の当事者への情報の流布、市場での優位性を得るための情報の使用、身代金のための情報人質の保持、スパイ行為、破壊など)に利用し得る。本発明は、クライアントシステムの、並びに、クライアントシステムとユーザデバイスの間で生成、転送、及び/又は格納されるデータ、ドキュメント、又は取引情報の不正使用に対するクライアントシステムの脆弱性を減少させる。 When a user logs into a client system using a user device, the generation, transfer, storage, or authentication of login-related information between the user device and the client system may be vulnerable to attacks by third parties. . A third party's use of such information during the generation, transfer, storage, and/or authentication of login-related information between the User Device and the Client System as a result of an attack by a third party on the User Device or Client System; may be obtained and/or used for unauthorized purposes. For example, a third party may use obtained login information to log into the client system, thereby achieving unauthorized access to the client system, obtain more login-related information from the client system, or otherwise Depending on the method, there is the possibility of moving laterally to systems that are connected to the client system. As another example, a third party may use data, documents, or transaction information obtained from an attack for various illicit purposes (e.g., disseminating information to other parties, gaining an advantage in the market, etc.). information, holding information hostage for ransom, espionage, destruction, etc.). The present invention reduces the client system's vulnerability to unauthorized use of the client system and of data, documents, or transaction information generated, transferred, and/or stored between the client system and the user device.
本発明の方法は、ユーザが、ユーザデバイスを利用して組織又は個人のクライアントシステムにログインすることを含む。ログイン関連情報は、単一若しくは多層のハッシュ化及び/又は暗号化プロセスを介してハッシュ化及び/又は暗号化される。特に、暗号化及び/又はハッシュ化されたキーの少なくとも一部が生成されて、ユーザのデバイスに格納されてよい。ログイン関連情報の他の固有部分は、環境内の他のデバイスに格納される。複数のデバイスの間でログイン関連情報の固有部分が配布されることは、クライアントシステムとユーザデバイスの間で転送される情報にアクセスする第三者が、クライアントシステムへのログインを成功させるために必要な情報の一部又は全部を取得することができないことを意味する。 The method of the present invention involves a user logging into an organizational or individual client system using a user device. Login-related information is hashed and/or encrypted through a single or multi-layered hashing and/or encryption process. In particular, at least a portion of the encrypted and/or hashed key may be generated and stored on the user's device. Other unique pieces of login-related information are stored on other devices in the environment. Distributing unique pieces of login-related information across multiple devices is necessary for a third party with access to information transferred between the client system and the user device to successfully log in to the client system. means that some or all of the relevant information cannot be obtained.
更に、現行システムの一態様では、データ、ドキュメント、デバイス、トランザクション、及び/又はユーザを認証するために、ユーザデバイスは、有効なキーを持っていること、及び/又はデバイスが既に認証されていることをクライアントシステムに対して証明する必要がある。これは、本発明では、ユーザデバイスがクライアントシステムにキーを明らかにすることなく達成される。故に、データ、ドキュメント、デバイス、トランザクション、及びユーザの認証は、ユーザがそのキーをクライアントシステムに明らかにすることなく起こる。 Further, in one aspect of current systems, in order to authenticate data, documents, devices, transactions, and/or users, the user device must have a valid key and/or the device has already been authenticated. to the client system. This is accomplished in the present invention without the user device revealing the key to the client system. Thus, data, documents, devices, transactions, and user authentication occur without the user revealing their keys to the client system.
ログイン関連情報は固有に作成され、且つ、格納及び/又は送られない。これは、ユーザデバイス支援マルチポイント認証と共に、第三者によるクライアントシステムへの不正アクセスを防ぐ。 Login-related information is uniquely created and not stored and/or sent. Together with user device assisted multi-point authentication, this prevents unauthorized access to the client system by third parties.
従来技術の認証システムの大半は、ユーザデバイスとクライアントシステムの間でのログイン関連情報の作成、格納、転送、及びシングルポイント認証を伴うため、従来技術のシステムは、ログイン関連情報が第三者によって危殆化されることに対して脆弱である。ログイン関連情報が第三者によって入手されてしまうと、その情報は、システムネットワークへのシングル認証ポイントにて認証なしでログインすることに使用され、或いは、データ、ドキュメント、又はトランザクション情報の不正使用に使用される可能性がある。本発明は、クライアントシステムへの、又は、データ、ドキュメント又は取引情報への不正アクセスを可能にするであろう第三者の情報へのアクセスに対して脆弱でないという点で、従来技術のシステムに勝る利点をもたらす。本発明の認証システムは、作成、格納、転送、及び認証ポイントで危殆化される可能性がある従来技術の認証の問題を解決する。 Because most prior art authentication systems involve creation, storage, transfer, and single point authentication of login-related information between a user device and a client system, prior art systems do not allow login-related information to be authenticated by a third party. Vulnerable to being compromised. Once login-related information has been obtained by a third party, that information may be used to log in without authentication at a single authentication point into the system network, or may be subject to unauthorized use of data, documents, or transactional information. may be used. The present invention differs from prior art systems in that it is not vulnerable to access to third party information that would allow unauthorized access to client systems or to data, documents or transaction information. provide a superior advantage. The authentication system of the present invention solves the problems of prior art authentication that can be compromised at the creation, storage, transfer, and authentication points.
従来技術のシステムに対する本発明の更なる利点の例としては、従来技術のシステムは一般に、任意のタイプのクライアントシステム、又は任意のタイプのユーザデバイスを用いて操作できないということがある。本発明は、任意のプラットフォーム、ソリューション、又は環境にわたって組織のデータにアクセスするために必要とされる安全なアクセスをユーザに提供するセキュア認証システムを組織にもたらす。本発明は、任意のタイプのクライアントシステムで、そして任意のプラットフォーム上の任意のタイプのユーザデバイスで使用するために、任意の組織によって実施可能である。 An example of a further advantage of the present invention over prior art systems is that prior art systems generally cannot be operated with any type of client system or any type of user device. The present invention provides organizations with a secure authentication system that provides users with the secure access they need to access their data across any platform, solution, or environment. The present invention can be implemented by any organization for use with any type of client system and with any type of user device on any platform.
従来技術に対する本発明の利点の更なる例は、本発明が、環境内のデバイスのハイブ(hive)認証を行うために動作することである。例えば、ジオ‐テンポラル(geo-temporal)ゾーンにわたる複数のモバイルデバイス及び/又はストレージデバイスを、ハイブ認証の過程で承認することができる。従来技術のシステムは、ジオ‐テンポラルゾーンにわたってハイブ承認を行う動作をすることができない。 A further example of the advantages of the present invention over the prior art is that the present invention operates to perform hive authentication of devices within the environment. For example, multiple mobile devices and/or storage devices across geo-temporal zones may be authorized during the hive authentication process. Prior art systems are not operable to perform hive approvals across geo-temporal zones.
本発明の実施形態は、セキュア部分を有するクライアントシステムへのユーザログインを目的として、又は、ユーザがそのようなシステムのセキュア部分にアクセスすることを目的として、ユーザを認証するために動作する複数の構成要素を含んでよい。例えば、本発明の一実施形態は、以下の3つの主要構成要素を含んでよい:(1)同期多面認証(Synchronized Multi-Faceted Authentication)(SMFA);(2)対話型半自動認証(Interactive Semi-Manual Authentication)(ISMA);及び(3)トランザクション認証。本発明のそのような実施形態の例をもたらすために、本発明の実施形態のこれらの3つの構成要素は全て、以下に説明される。当業者が読めば、以下に説明する3つの構成要素のうちの1つ又は2つのみを含む構成、或いは、他の構成要素を組み込む構成のような本発明の他の構成が可能であることを認識するであろう。 Embodiments of the present invention provide multiple authentication methods that operate to authenticate a user for the purpose of user login to a client system having a secure portion, or for the purpose of a user accessing a secure portion of such a system. may contain components. For example, one embodiment of the present invention may include three main components: (1) Synchronized Multi-Faceted Authentication (SMFA); (2) Interactive Semi-Automatic Authentication (SMFA); Manual Authentication (ISMA); and (3) Transaction Authentication. All three of these components of an embodiment of the invention are described below to provide an example of such an embodiment of the invention. A person skilled in the art will read that other configurations of the invention are possible, such as configurations that include only one or two of the three components described below, or that incorporate other components. would recognize
<同期多面認証(Synchronized Multi-Faceted Authentication)(SMFA)>
本発明の認証方法及びシステムにおけるユーザのための認証プロセスが動作して、ランダムなマルチユニットのログイン関連情報の暗号化又はハッシュ化された部分が、デバイス(例えば、ユーザデバイス及び/又はシステムデバイス並びに記憶ユニット)の間で配布されて、それらデバイスの全て或いは1又は複数がユーザを認証するために利用される。
<Synchronized Multi-Faceted Authentication (SMFA)>
The authentication process for a user in the authentication methods and systems of the present invention operates such that an encrypted or hashed portion of random multi-unit login-related information is transferred to a device (e.g., user device and/or system device and storage units), and all or one or more of those devices are utilized to authenticate the user.
従って、第三者による不正アクセスのように、ログインデータが作成、転送、格納、又は認証の際に危殆化される場合、未知のユーザの時間依存(time-sensitive)ランダムログイン関連情報の暗号化又はハッシュ化された一部のみが取得され、このデータはユーザを認証するためには使用できない。 Therefore, encryption of time-sensitive random login-related information for unknown users should the login data be compromised during creation, transmission, storage, or authentication, such as unauthorized access by a third party. Or only a hashed portion is obtained and this data cannot be used to authenticate the user.
より具体的には、本発明は、クライアントシステムにログインするためにチャレンジを行うことをユーザに要求するために動作可能であって、チャレンジは、例えば、ピン及び/又はパターンの静的チャレンジ、アニメーション及び/又は非アニメーションのチャレンジ、グラフィカル及び/又は非グラフィカルなチャレンジ、二次元及び/又は三次元のチャレンジ、動的及び/又は静的なゲーム化チャレンジ、及び/又は非ゲーム化インターフェースのチャレンジなどのチャレンジを行うことをユーザに要求するために動作可能である。システムは、一連のユニットを選択して、それらを用いてチャレンジを生成してよい。各ユニットにはランダムに複数の数字が割り当てられており、それらはログインイベントごとに変更されてよい。ユーザは、同一の認証イベント及び以降の任意の認証イベントにおいて、複数のチャレンジを選択してよい。 More specifically, the present invention is operable to require a user to perform a challenge to log into a client system, the challenge being, for example, a static challenge of pins and/or patterns, an animated and/or non-animated challenges, graphical and/or non-graphical challenges, two-dimensional and/or three-dimensional challenges, dynamic and/or static gamified challenges, and/or non-gamified interface challenges, etc. It is operable to require the user to make a challenge. The system may select a set of units and use them to generate a challenge. Each unit is randomly assigned multiple numbers, which may change with each login event. A user may select multiple challenges in the same authentication event and in any subsequent authentication event.
チャレンジ中に選択された一連のユニットは、認証システムによって複数の固有システム部分に分割される。各ユニット部分におけるユニットは、個別にハッシュ化又は暗号化されてユニット結果を生成してよく、その後、各システム部分のユニットは、集合的にハッシュ化及び/又は暗号化されてシステム部分の結果が生成される。システム部分内の各ユニットに適用されるハッシュ化及び/又は暗号化の数と、各システム部分に適用されるハッシュ化及び/又は暗号化の数は、変化してよい。 The sequence of units selected during the challenge is divided into multiple unique system parts by the authentication system. The units in each unit part may be individually hashed or encrypted to produce a unit result, and then the units in each system part are collectively hashed and/or encrypted to give the system part result. generated. The number of hashing and/or encryptions applied to each unit within a system portion and the number of hashing and/or encryptions applied to each system portion may vary.
ハッシュ化及び/又は暗号化された結果の一部は、クライアント又は他のシステムの分散アーキテクチャの様々なデバイスに格納され、一部はユーザのデバイスに格納される。例えば、ハッシュ化及び/又は暗号化された結果の一部は、複数のユーザデバイス及びシステムデバイスに格納されてよい。 Some of the hashed and/or encrypted results are stored on various devices in the client or other system's distributed architecture, and some are stored on the user's device. For example, some of the hashed and/or encrypted results may be stored on multiple user devices and system devices.
ハッシュ化及び/又は暗号化された部分データを含むクライアントシステムデバイスの全てとユーザデバイスとは、それら自身を認可しなければならない。デバイスが一旦認証されると、その後、それらのデバイスはユーザを共同認証してもよい。 All client system devices and user devices that contain hashed and/or encrypted partial data must authorize themselves. Once the devices are authenticated, they may then co-authenticate the user.
本発明の認証システムは、プラットフォームに依存しないため、どのようなクライアントシステムでも使用できる。 The authentication system of the present invention is platform independent and can be used with any client system.
<対話型半自動認証(Interactive Semi-Manual Authentication)(ISMA)>
本発明のユーザのための認証プロセスは、多層暗号化及び/又はハッシュ関数を使用して、ログイン情報が暗号化及び/又はハッシュ化されるように動作する。ランダム暗号化及び/又はハッシュ化の詳細の部分は、隠されて手動送信され、クライアントシステム又はユーザデバイス内に格納されず、これによって、送信、格納、又は認証の間に危殆化する可能性が減少する。
<Interactive Semi-Manual Authentication (ISMA)>
The authentication process for users of the present invention operates such that login information is encrypted and/or hashed using multiple layers of encryption and/or hash functions. Part of the random encryption and/or hashing details are hidden and manually transmitted and not stored within the client system or user device, thereby potentially compromising during transmission, storage, or authentication. Decrease.
本発明のシステムは、キー(即ち、キー#1)をモバイルデバイスに提供する。本発明の全てのキーは、多層暗号化及び/又はハッシュ関数を使用して暗号化及び/又はハッシュ化される。 The system of the present invention provides a key (ie, Key #1) to the mobile device. All keys of the present invention are encrypted and/or hashed using layered encryption and/or hash functions.
暗号化されたキーは、本発明の認証プロセスで使用するために必要とされ、従って、ユーザは最初に、本明細書に記載のSMFAプロセスを用いて認証を行い、そして、それによってキーを検証して、ユーザのデバイスを認証しなければならない。 An encrypted key is required for use in the authentication process of the present invention, so the user first authenticates using the SMFA process described herein and thereby verifies the key. to authenticate the user's device.
システムは、ランダム暗号化キーに基づいてチャレンジを生成し、当該キーは、ログインイベントごとに変更される。認証されたユーザは、認証されたデバイスを使用してチャレンジをスキャンする。このプロセスの最後に、ランダム暗号化されたキーの一部又は全部がユーザデバイスに送られる。 The system generates challenges based on random encryption keys, which change with each login event. An authenticated user scans the challenge using an authenticated device. At the end of this process, some or all of the random encrypted keys are sent to the user device.
本発明の幾つかの実施形態では、暗号化されたランダムキーの別のセットが存在してよく、当該セットは、ユーザデバイスによって生成されて、ログインイベントごとに変化してもよい。複数のキーが結合されて、暗号化された共有秘密キーが形成され得る。暗号化された共有秘密キーの一部又は全体は、ユーザの認証を要求している組織のクライアントシステムに送られる。 In some embodiments of the invention, there may be another set of encrypted random keys, which may be generated by the user device and changed for each login event. Multiple keys may be combined to form an encrypted shared secret. Part or all of the encrypted shared secret is sent to the client system of the organization requesting authentication of the user.
暗号化の複数の層は、ユーザデバイスによって生成されてよい。そのような暗号化は、要素に個別に又は纏めて適用されてよい。例えば、ソルト及びivと共にランダムな3桁以上の数字(各ログインイベントの間に変化してよい)がユーザデバイスによって生成されてよく、又は他のタイプの暗号化及び/又はハッシュ化が適用されてよい。暗号化の別の層は、先行する暗号化にまとめて追加されてもよい。 Multiple layers of encryption may be generated by the user device. Such encryption may be applied to elements individually or collectively. For example, a random 3 or more digit number (which may change during each login event) along with the salt and iv may be generated by the user device, or some other type of encryption and/or hashing may be applied. good. Another layer of encryption may be added en bloc to the previous encryption.
複数のランダムキャラクタは、複数の層の暗号化の結果として生じるパッケージから削除される。例えば、6つのランダムキャラクタがパッケージから削除されてよい。複数のランダムな数字及びキャラクタがユーザに提供され、暗号化された詳細は、ユーザデバイスの認証を要求しているクライアントシステムに送られる。 Multiple random characters are removed from the resulting package of multiple layers of encryption. For example, 6 random characters may be removed from the package. A plurality of random digits and characters are provided to the user and the encrypted details are sent to the client system requesting authentication of the user device.
ユーザデバイスの認証を要求するクライアントシステムは、ユーザデバイスに与えられた情報の提供をユーザに要求する。ユーザがそのような情報を提供した場合にのみ、クライアントシステムはユーザを認証できるようになる。このプロセスにより、第三者がユーザのログイン情報を傍受したり、推測したり、知ったりする可能性を減らすことができる。 A client system requesting authentication of a user device requests the user to provide information provided on the user device. Only when the user provides such information will the client system be able to authenticate the user. This process reduces the possibility of a third party intercepting, guessing, or learning a user's login information.
ユーザが認証されると、セッションが、時間ジオベースアクセスコードによって認証される。例えば、ジオベースアクセスコードは、トークン又は他の任意のタイプのジオベースアクセスコードであってよい。時間が経過した場合、又はジオアスペクト(geo aspect)が無効化された場合、ジオベースアクセスコードは無効化されてよい。例えば、ジオアスペクトは、ユーザがジオベースアクセスコードに関連するジオロケーション内に位置していない場合に無効化されてよい。 Once the user is authenticated, the session is authenticated with a temporal geobase access code. For example, the geo-based access code may be a token or any other type of geo-based access code. The geobase access code may be revoked if time has passed or if the geo aspect has been revoked. For example, a geoaspect may be disabled if the user is not located within the geolocation associated with the geobase access code.
<トランザクション認証>
本発明の認証システムのユーザ認証プロセスは、ユーザがクライアントシステムに自分のキーを明かすことなくトランザクションが認証されるように動作する。クライアントシステムは、ユーザのキーを、又はユーザのキーの有無を知らない。ユーザデバイスは、システムにキーを公開することなく、有効なキーを有していること、及び、ユーザとデバイスが認証されたこととをシステムに証明する必要がある。これを達成するために、ユーザデバイスは、本明細書に記載されたSMFAプロセス及び/又は本明細書に記載されたISMAプロセスを用いて認証する必要があろう。ユーザデバイスが認証されると、ユーザデバイスは、それが有している又はそれが受け取ったランダム一時キーを使用してよい。
<Transaction authentication>
The user authentication process of the authentication system of the present invention operates so that transactions are authenticated without the user revealing his key to the client system. The client system does not know the user's key, or the presence or absence of the user's key. The user device must prove to the system that it has a valid key and that the user and device are authenticated without exposing the key to the system. To accomplish this, the user device would need to authenticate using the SMFA process described herein and/or the ISMA process described herein. Once the user device is authenticated, the user device may use random temporary keys it has or has received.
システムはセキュリティチャレンジを生成する。このチャレンジは、多層暗号化、デジタル署名、及び/又はハッシュ化などの機能を使用して保護されてよい。保護されたパッケージは、認証を要求するユーザデバイスに送られる。ユーザデバイスはパッケージを検証し、ディスプレイに提供された復号キーを使用するか、チャレンジを解決する。 The system will generate a security challenge. This challenge may be protected using features such as layered encryption, digital signatures, and/or hashing. The protected package is sent to the user device requesting authentication. The user device verifies the package and uses the decryption key provided to the display or resolves the challenge.
ある実施例では、本発明の一実施形態は、システムが、1又は複数の桁がブランクである複数のランダム桁数英数字コードを生成するように動作してよく、ブランクに記入されるべき対応アルファベット又は数字はまた、ISMAプロセスにおけるチャレンジと共にユーザに送られる。例えば、システムは、6桁以上の複数のランダム桁数英数字コードを生成してよく、他の任意の数のランダム桁数英数字コードを生成してよい。 In one embodiment, an embodiment of the present invention may operate such that the system generates a plurality of random digit alphanumeric codes in which one or more digits are blank, and the correspondence to be filled in blanks. Alphabets or numbers are also sent to the user with the challenge in the ISMA process. For example, the system may generate multiple random digit alphanumeric codes of six digits or more, and may generate any other number of random digit alphanumeric codes.
システムは、6桁以上のランダム桁数英数字コードに加えて他の要素を生成し、暗号化する。例えば、システムは、6以上のランダム桁数英数字コードを暗号化してよい。更なる暗号化及びセキュリティ機能(ソルト、iv、セキュアキーなどを含むがこれらに限定されない)、クライアントシステムによって適用されてもよい。システムは、その後、暗号化の結果にデジタル署名を追加する。この暗号化されて署名されたパッケージは、認証を要求するユーザデバイスに送られる。 The system generates and encrypts a six or more random digit alphanumeric code plus other elements. For example, the system may encrypt six or more random digit alphanumeric codes. Additional encryption and security features (including but not limited to salt, iv, secure key, etc.) may be applied by the client system. The system then adds a digital signature to the encryption result. This encrypted and signed package is sent to the user device requesting authentication.
ユーザデバイスは、デジタル署名を確認し、そして、提供された復号キーを使用して、対応するアルファベット又は数字と共に6桁以上の英数字コードを再現する。 The user device verifies the digital signature and uses the provided decryption key to recreate the six or more alphanumeric code along with the corresponding alphanumeric characters.
ユーザデバイスは、その後、セキュリティ機能と共に、再現された情報を暗号化する。ユーザデバイスは、暗号化の結果にデジタル署名を追加する。この暗号化されて署名されたパッケージは、認証プロセスを行うクライアントシステムに送られる。 The user device then encrypts the reproduced information along with security features. The user device adds a digital signature to the encryption result. This encrypted and signed package is sent to the client system for authentication process.
クライアントシステムは、ユーザデバイスからのメッセージを受け取り、メッセージを受け取ると、デジタル署名を検証し、メッセージを復号し、送られたメッセージと比較する。比較により、受け取ったメッセージが送ったメッセージと同じであれば、クライアントシステムは、ユーザが必要なキーを持っていることを知っていることになる。ユーザデバイスが認証されると、セッションは、時間ジオベースアクセスコードによって認証されるが、これらのアクセスコードは、本明細書で既に説明したように、時間が経過すると、又は、ジオが無効になると無効になる。 A client system receives a message from a user device, and upon receiving the message, verifies the digital signature, decrypts the message, and compares it to the message sent. If the received message is the same as the sent message by comparison, the client system knows that the user has the required key. Once the user device is authenticated, the session is authenticated by temporal geo-based access codes, but these access codes may expire over time or when the geo expires, as previously described herein. become invalid.
当業者が読めば、本発明の認証のための方法及びシステムは、様々な態様で実施できることを認識するであろう。図1乃至図17は、本発明の幾つかの実施形態の例を示しており、これらは本明細書で説明される。 A reader of ordinary skill in the art will appreciate that the method and system for authentication of the present invention can be implemented in a variety of ways. Figures 1-17 illustrate examples of some embodiments of the present invention and are described herein.
図1に示すように、認証システムは、クライアントシステム、ユーザシステム、検証システム、及び複数の記憶ユニットを含む多くの要素を含んでいる。認証システムは、ユーザのログインを証明する、検証するなどの多くの機能を実現するために動作可能である。 As shown in FIG. 1, the authentication system includes many elements including a client system, a user system, a verification system, and multiple storage units. An authentication system is operable to perform many functions such as proving and verifying a user's login.
ユーザシステム102は、クライアントシステム902にログインするためにユーザによって使用される。ユーザシステムは、本明細書に記載されているように、ユーザのアイデンティティの検証及び他の行為に関与するために動作可能である。ユーザがクライアントシステムの保護された領域へのアクセスを得るためには、ユーザのアイデンティティがクライアントシステムによって検証されなければならない。検証システム202は、クライアントシステムに対するユーザのアイデンティティの検証に従事するように動作可能である。
ユーザが、ユーザデバイス90を介して、クライアントシステムのセキュア領域にアクセスすることを希望する場合、ユーザは最初に、クライアントシステムに対してユーザのアイデンティティを証明する必要がある。クライアントシステムがユーザのアイデンティティの証明を受け取ると、システムは、その後、ユーザがクライアントシステムの保護コンテンツにアクセスすることを許可することができる。
When a user wishes to access the secure area of a client system via
ユーザは、自分のアイデンティティを証明し、クライアントシステムのセキュア領域へのアクセスを得るためにユーザシステムを使用する。検証システム202は、ユーザのアイデンティティの信憑性を検証するために動作可能である。同期システム300は、1又は複数の同期要素302A・・・302Nの集合であり、ユーザのアイデンティティの信憑性を承認するために同期的に機能するように動作する。
A user uses the user system to prove his identity and gain access to the secure area of the client system.
ユーザシステムは、複数の要素を含んでよい。本発明の一実施形態では、ユーザシステムは、証明ユニット104、表示ユニット106、処理ユニット108、承認ユニット112、記憶ユニット110、及び通信ユニット114を含んでよい。証明ユニットは、ユーザシステム102の初期アイデンティティを検証システムに証明するために動作可能である。表示ユニットは、例えば、クライアントシステム、検証システム、又は本発明の他のシステム若しくは要素からユーザシステムに転送されたチャレンジ又は他の情報などの情報をユーザに表示するために動作可能である。表示ユニットは更に、クライアントシステムによって生成された情報をユーザに表示するために動作可能である。表示ユニットはまた、入力デバイスに接続されてよく、或いは、タッチスクリーン又は他の入力操作性を有してよく、それによって、ユーザが情報を入力できる。ユーザが入力した情報は、表示ユニットに表示されてよく、さもなければ、ユーザシステムによって収集されて格納されてよく、クライアントシステム又は認証システムの別のシステム若しくは要素に転送されてよく、或いは、ユーザシステムで処理されてよい。処理ユニット108は、システム内の処理能力の全てを担う。承認ユニット112は、チャレンジと応答にアクセスして結果を提供することを担い、記憶ユニットは、一時的データと恒常的データの両方を記憶することを担う。通信ユニット114は、全ての外部通信を担う。
A user system may include multiple elements. In one embodiment of the invention, the user system may include an
検証システム202は、複数の要素を含んでよい。本発明の一実施形態では、検証システムは、マスカ(masker)ユニット204、N‐パケット生成器206、レポート生成器208、処理ユニット210、承認ユニット212、1又は複数の記憶ユニット214A・・・214N、及び通信ユニット216を含んでよい。マスカユニットは、クライアントシステム及びユーザシステムのために1又は複数の固有の非特定(non-identifying)識別子を生成するために動作する。処理ユニット210は、認証システムが要求するような情報やデータを処理するために動作する。承認ユニット212は、システム内部で受け取った応答にアクセスして、処理ユニットに送られる、又は通信ユニットを介してシステムの外部にある受信者に送られる結果を提供するために動作する。1又は複数の記憶ユニットは、一時的データと恒常的データの両方を格納するために動作する。N‐パケット生成器206は、認証情報のパケットを生成するために動作する。通信ユニット216は、検証システムの外部にある認証システムの全ての要素(即ち、クライアントシステム、ユーザシステムなど)との全ての通信を受信して転送するために動作する。
当業者が読むと、本発明の実施形態では、図1の検証システムの要素として記載されているユニットの一部又は全てが、クライアントシステムのような認証システムのその他のシステム又は要素内に含まれてよいことを認識するであろう。本発明の幾つかの実施形態では、図1の検証システムの要素として記載されているユニットの一部又は全ては、スタンドアロンの要素であってよく、認証システムの如何なるシステムにも含まれていないが、概ね認証システムに含まれていてよい。 As one skilled in the art will read, in embodiments of the invention some or all of the units described as elements of the verification system of FIG. 1 may be included within other systems or elements of an authentication system, such as a client system. you will recognize that you may In some embodiments of the invention, some or all of the units described as elements of the verification system of FIG. 1 may be stand-alone elements and not included in any system of the authentication system. , may generally be included in the authentication system.
同期システム300は、1又は複数の同期要素302A・・・302Nを含んでよく、各同期要素は、複数のユニットを含んでよい。本発明の一実施形態では、少なくとも2つの同期要素は、証明ユニット304A・・・304N、記憶ユニット308A・・・308N、処理ユニット306A・・・306N、承認ユニット312A・・・312N、及び通信ユニット310A・・・310Nを含んでよい。証明ユニット304Aは、同期システム300の初期アイデンティティを検証システム202に証明するために動作する。
ユーザシステム、検証システム、及び同期要素の間の通信は、そのようなシステム及び/又は要素の通信ユニットによって受信され、且つ、そのようなシステム及び/又は要素から転送される。システム及び/又は要素間のそのような通信の全ては、1又は複数のマスキング機能の使用によって保護されてよく、1又は複数のマスキング機能は、ハッシュ化及び/又は暗号化を含んでよい。 Communications between user systems, verification systems and synchronization elements are received by and forwarded from communication units of such systems and/or elements. All such communications between systems and/or elements may be protected through the use of one or more masking functions, which may include hashing and/or encryption.
図2に示すように、データは、クライアントシステム902と検証システムのマスカユニット204との間で、検証システムの通信ユニット216を介して転送されてよい。クライアントシステムと検証システムの間における、クライアントシステムを使用したい新規ユーザのセットアップに関連する最初の通信中に、クライアントシステムは、検証システムのマスカユニットと通信して、クライアントシステムとの保護された接続を確立するために新規ユーザに求められる資格情報を要求してよい。マスカユニットは、固有の保護された資格情報を生成し、クライアントシステムは当該資格情報を使用して、クライアントシステムと検証システムとの間のリンクを確立する。これらの固有の資格情報は、例えば、クライアントID、又は他の形態の資格情報を含んでよい。
As shown in FIG. 2, data may be transferred between the
クライアントシステムと検証システムの間で信頼された接続が確立されると、マスカユニットは、演算、アルゴリズム、又は別のタイプのプロセスを実行して、ユーザには秘密である固有の非特定識別子を生成する。固有の非特定識別子は、検証システムに含まれる記憶ユニット214A(又は記憶ユニット214A・・・214Nの何れか)の1つに格納されてよい。
Once a trusted connection is established between the client system and the verification system, the masker unit performs a computation, algorithm, or other type of process to generate a unique non-identifying identifier that is secret to the user. do. The unique non-specific identifier may be stored in one of the
マスカユニットは、ハッシュ化、暗号化、又は何らかの他のマスキング機能を使用して、非特定識別子をセキュアにしてよい。また、クライアントシステムは、利用可能な全ての同期要素のリストを検証システムに提供してよい。本発明の実施形態では、同期要素の1又複数は、検証システムの記憶ユニット214A・・・214Nの1又複数に格納されてよい。
The masker unit may use hashing, encryption, or some other masking function to secure the non-identifying identifier. The client system may also provide the verification system with a list of all available synchronization elements. In embodiments of the present invention, one or more of the synchronization elements may be stored in one or more of the
図3に示すように、本発明の登録プロセスは、ユーザがクライアントシステムに登録するために、ユーザと認証システムの初期対話中に必要とされる認証システムの要素の動作を含んでよい。クライアントシステム、ユーザシステムの要素、検証システムの要素、及び同期システムの要素間の全ての通信は、図3に示すように、ユーザシステム、検証システム、及び同期システムの通信ユニットを介して行われる。ユーザは、クライアントシステムのセキュア部分へのアクセスを許可されるためには、クライアントシステムに登録しなければならない。初期登録中、証明ユニット104は、証明情報を取得するためにクライアントシステムの1又は複数の記憶ユニット110にアクセスする。証明情報は、マスカユニットによって生成された非特定識別子、マスカユニットによって生成された秘密、及びユーザデバイスを識別し得る情報、並びに/或いは、固有のアプリケーション番号、又は、例えば生体情報(例えば、ユーザの指紋、ユーザの網膜スキャン、又はユーザの他の生体情報)や使用情報のようなユーザに関連する他の情報を含んでよい。証明ユニットが証明情報の全てを取得すると、証明情報は、ユーザシステムの1又は複数の記憶ユニットに格納されてよい。
As shown in FIG. 3, the registration process of the present invention may include the operation of elements of the authentication system required during the initial interaction between the user and the authentication system in order for the user to register with the client system. All communication between the client system, the user system elements, the verification system elements, and the synchronization system elements is through the communication units of the user system, the verification system, and the synchronization system, as shown in FIG. A user must be registered with the client system in order to be granted access to the secure portion of the client system. During initial registration, the
証明ユニット104が取得した証明情報は、ユーザシステムの通信ユニット114を介して、検証システムの処理ユニット210に安全に送られる。処理ユニット210は、検証システムの通信ユニット216を介して、検証システムの1又は複数の記憶ユニット214A・・・214Nから、ユーザの情報を取得する。処理ユニット210は、クライアントシステムから受け取った情報と、検証システムの1又は複数の記憶ユニットから取得した情報とを組み合わせて、情報のパッケージを作成する。処理ユニットは、そのような情報パッケージを承認ユニット212に送る。
The certification information obtained by the
承認ユニット212は、先にクライアントシステムから受け取っており、検証システムの1又は複数の記憶ユニット214A・・・214Nに格納されている情報と、処理ユニットから受け取った情報パッケージの値を比較する。比較が成功する場合、承認ユニットは、ユーザシステムとの接続を受け入れる。比較が成功しない場合、承認ユニット212は、ユーザシステムとの接続を拒否する。承認システムの結果は、N‐パケット生成器206に送られる。
The
ユーザシステムとの接続が承認されない場合、ユーザを登録することを試みる認証システムの動作は終了する。本発明の一実施形態では、ユーザシステムとの接続が承認されると、N‐パケット生成器は、ランダムチャレンジを生成する。ランダムチャレンジは、複数のパケット(N‐パケット)を含んでよい。各Nパケットは、複数のランダム数字又は英数字/他のキャラクタ(N‐RANC)を含む。 If the connection with the user's system is not approved, the authentication system's attempts to enroll the user are terminated. In one embodiment of the invention, the N-packet generator generates a random challenge when a connection with the user system is approved. A random challenge may include multiple packets (N-packets). Each N packet contains multiple random numbers or alphanumeric/other characters (N-RANC).
N‐パケットは、ユーザシステムの表示ユニット106に安全に送られる。本発明の実施形態では、これらに限定されないが、N‐暗号化、ハッシュ化及び/又はデジタル署名を含む多層の保護を適用して、パケット生成器と表示ユニットの間で転送される中のN‐パケットに保護が、例えば、転送前にN‐RNAC及びN‐パケットの両方の多層保護が適用されてよい。本発明の他の実施形態では、N‐パケットは、N‐RNACの有無に拘わらず、ユーザシステム又は別のシステムの要素によって生成できるであろう。ユーザは、この要素と対話して、OYパケットを生成する。
The N-packets are sent securely to the
表示ユニット106は、N‐パケットを受け取り、N‐パケットに含まれる情報をユーザに表示する。表示されたN‐パケットから、ユーザは、1又は複数のN‐パケットを入力し、それにより、選択されたN‐パケットに関連するN‐RANCを選択する。参照を容易にするために、ユーザによって選択されたN‐パケットは、本明細書ではY‐パケットとする。ユーザによって選択されたY‐パケットの順序は、順序付け(Ordered)Y‐パケット(OY‐パケット)となるように保持される。OY‐パケットは、表示ユニット106によってユーザシステムの処理ユニット108に送られる。ユーザシステムの処理ユニットは、OY‐パケットを2つ以上の部分に分割する。各部分は、2つ以上のN‐パケットを含んでいてよい。
A
ユーザシステムの処理ユニットは、OY‐パケットの各部分にマスキング機能を適用することにより、OY‐パケットの情報をマスキングしてよい。例えば、ユーザシステムの処理ユニットは、OY‐パケットに含まれるN‐RNACの各々、及び/又はOY‐パケットに含まれるY‐パケットの各々、及び/又はOY‐パケットの各々のうちの1又は複数にマスキングを適用してよい。1又は複数のマスキングの結果は、ユーザシステムの1又は複数の記憶ユニット110に格納されてよい。格納されない結果は、検証システムの処理デバイスに送られる。
The processing unit of the user system may mask the information of the OY-packet by applying a masking function to each portion of the OY-packet. For example, the processing unit of the user system may select one or more of each of the N-RNAC contained in the OY-packet and/or each of the Y-packets contained in the OY-packet and/or each of the OY-packets. masking may be applied to One or more masking results may be stored in one or
N‐パケット生成器によって生成されたチャレンジは、ユーザシステムの表示ユニットに送られ、複数のN‐パケットを含んでおり、各Nパケットは、3つ以上のN‐RANCを含んでよい。ユーザは、OY‐パケットを形成する複数のY‐パケットを選択してよい。OYパケットは、2つの部分(即ち、OYA‐部とOYB‐部)に分割されてよい。 The challenge generated by the N-packet generator is sent to the display unit of the user system and contains multiple N-packets, each N-packet may contain more than two N-RANCs. A user may select multiple Y-packets to form an OY-packet. An OY packet may be split into two parts: OYA-part and OYB-part.
検証システムの処理ユニットは、ハッシュ化及び/又は暗号化を適用し、そして、検証システムの1又は複数の記憶ユニットに格納されたリストから、同期システムの2つ以上のランダム同期要素を選択してもよい。選択されたランダム同期要素は、同期レジストリを形成する。検証システムの処理ユニットは、個別に又は纏めてOY‐パケット部分に秘密を追加してよく、個別に及び/又は纏めてOY‐パケット部分に多層ハッシュ化及び/又は暗号化機能を実行してよい。次に、ハッシュ化及び/又は暗号化された固有のOY‐パケット部分は、1又は複数の同期要素の間で配布され、OY‐パケット部分が配布される1又は複数の同期要素の1又は複数の記憶ユニットに格納されてよい。その結果、固有のOY‐パケット部分が様々な同期要素に格納される。配布された情報部分は、同期要素の同期レジストリに格納されてよい。 A processing unit of the verification system applies hashing and/or encryption and selects two or more random synchronization elements of the synchronization system from a list stored in one or more storage units of the verification system. good too. The selected random synchronization elements form a synchronization registry. The processing units of the verification system may individually or collectively add secrets to the OY-packet portions and individually and/or collectively perform multi-layered hashing and/or encryption functions on the OY-packet portions. . The hashed and/or encrypted unique OY-packet part is then distributed among one or more synchronization elements, and one or more of the one or more synchronization elements to which the OY-packet part is distributed. storage unit. As a result, unique OY-packet parts are stored in various synchronization elements. The distributed pieces of information may be stored in the synchronization registry of the synchronization element.
図4に示すように、認証システムは、ユーザがクライアントシステムのセキュア部分へのアクセスを得るために、アクセスプロセスを実行するように動作してよく、それによって、登録されたユーザは、検証システムの動作を通じて自分自身を認証させることを試みる。ユーザシステムの要素と、検証システムの要素と、同期システムの要素との間での全ての通信は、図4に示すように、ユーザシステムの通信ユニットと、検証システムの通信ユニットと、同期システムの同期要素の通信ユニットとを介して行われる。ユーザシステムの証明ユニット104は、ユーザシステムの記憶ユニット110の1又は複数にアクセスして証明情報を取得する。証明情報は、非特定識別子及び秘密を含んでよい。
As shown in FIG. 4, the authentication system may operate to perform an access process for a user to gain access to the secure portion of the client system, whereby registered users are Attempts to authenticate itself through behavior. All communications between the elements of the user system, the elements of the verification system, and the elements of the synchronization system are as shown in FIG. through the communication unit of the synchronous element. The user system's
証明ユニットが取得した証明情報の一部又は全部は、検証システムの通信ユニット216を介して、ユーザシステムの通信ユニット114から検証システムの処理ユニット210に安全に送られる。処理ユニット210は、検証システムの記憶ユニット214A・・・214Nにおける1又は複数からユーザのための情報を取得する。処理ユニット210は、クライアントシステムから受け取った情報と、検証システムの1又は複数の記憶ユニットから取得した情報とを組み合わせて、情報のパッケージを作成する。処理ユニットは、この情報パッケージを検証システムの承認ユニット212に送る。
Part or all of the certification information obtained by the certification unit is securely sent from the
承認ユニット212は、処理ユニット210から受け取った情報パッケージの値を、クライアントシステムから先に受け取っており、検証システムに格納されている情報と比較する。比較が成功した場合(即ち、比較の結果、比較された情報の間での一致が得られた場合)、承認ユニットは、ユーザシステムとの接続を受け入れる。比較が成功しない場合、承認ユニットはユーザシステムとの接続を拒否する。承認システムの結果は、N‐パケット生成器206に送られる。
ユーザシステムとの接続が承認されない場合、ユーザを登録することを試みる認証システムの動作は終了する。ユーザシステムとの接続が承認された場合、N‐パケット生成器は、ランダムチャレンジを生成する。ランダムチャレンジは、2つ以上のパケット(N‐パケット)を含んでよい。各N‐パケットは、更に2つ以上のランダムな数又は英数字(N‐RANC)を含む。多層ハッシュ化及び/又は暗号化が、表示ユニットに送られるチャレンジに適用されてよい。ハッシュ化及び/又は暗号化は、乱数発生器を用いて適用されてよい。 If the connection with the user's system is not approved, the authentication system's attempts to enroll the user are terminated. If the connection with the user system is approved, the N-Packet Generator generates a random challenge. A random challenge may include two or more packets (N-packets). Each N-packet also contains two or more random numbers or alphanumeric characters (N-RANC). Multiple layers of hashing and/or encryption may be applied to the challenge sent to the display unit. Hashing and/or encryption may be applied using a random number generator.
N‐パケットは、ユーザシステムの表示ユニット106に安全に送られる。本発明の実施形態は、多層ハッシュ化及び/又は暗号化を適用して、N‐パケット生成器と表示ユニットの間でトランジット中のN‐パケットを保護してよい。例えば、多層ハッシュ化及び/又は暗号化は、転送に先立ってN‐RNAC及び/又はN‐パケットをハッシュ化及び/又は暗号化することを含んでよい。表示部106は、N‐パケットを受信し、対応する情報をユーザに対して表示する。表示された対応情報から、ユーザは、2つ以上の対応情報を選択し、N‐パケットを選択すると、N‐RANCが、選択されたN‐ブラケットに関連付けられる。参照を容易にするために、ユーザによって選択されたN‐パケットは、ここではY‐パケットであって、これらのYパケットは順序付けられており、OYパケットと称される。
The N-packets are sent securely to the
本発明の別の実施形態では、N‐パケット生成器は、ユーザシステム又は他のシステムに存在してよく、当該システムは、ユーザシステム又は他のシステムからの任意の要素、例えばカメラ、スキャナなどを介してユーザとの対話によってYパケット及び/又はOYパケットを生成してよい。 In another embodiment of the invention, the N-packet generator may reside in the user system or other system, which may include any element from the user system or other system, such as a camera, scanner, etc. A Y packet and/or an OY packet may be generated by interaction with the user via.
OY-パケットは、表示ユニット106によってユーザシステムの処理ユニット108に送られる。ユーザシステムの処理ユニットは、OY‐パケットを複数の部分に分割する。各部分は、複数のN‐パケットを含んでいる。
The OY-packet is sent by the
ユーザシステムの処理ユニット108は、ユーザシステムの1又は複数の記憶ユニットから以前に格納されたOY‐パケット部分を取り出す。当該記憶ユニットには、そのような以前に格納されたOY‐パケット部分が格納されている。処理ユニットは、以前に格納されたOY‐パケット部分と、より最近に作成されたOY‐パケット部分とを、ユーザシステムの承認ユニット110に送る。ユーザシステムの承認ユニットは、ユーザシステムの処理ユニットから受け取った情報を、以前に格納されたOY‐パケット部分と比較して、承認結果又は否認結果の何れかを生成する。ユーザシステムの承認ユニットが生成した結果(承認結果又は否認結果の何れかである)は、ユーザシステムの処理ユニットに転送される。ユーザシステムの承認ユニットからの結果が否認結果の場合は、認証処理が停止される。
The
ユーザシステムの承認ユニットの結果が承認結果である場合、ユーザシステムの処理ユニットは、新しく生成されたOYパケット部分のうちの1又は複数のOYパケット部分を、ユーザシステムの1又は複数の記憶ユニットに格納してよく、残りのOYパケット部分を検証システムの処理ユニットに送る。検証システムの処理ユニットは、ユーザのために同期システム情報を同期レジストリから取得する。検証システムの処理ユニットは、受け取ったOYパケット部分に秘密を追加して、これらのOYパケット部分に多層ハッシュ化及び/又は暗号化機能を実行してよい。ハッシュ化及び/又は暗号化後、検証システムの処理ユニットは、ハッシュ化及び/又は暗号化された固有のOYパケット部分を、同期システムの同期要素の処理ユニット302A・・・320Nの1又は複数に送ってよい。同期要素の各処理ユニットは、ハッシュ化された及び/又は暗号化された固有のOYパケット部分を、検証システムの処理ユニット210から受け取る。ハッシュ化された及び/又は暗号化されたOYパケット部分を受け取った同期化要素の各処理ユニットは、図5に示すように処理を行ってよい。同期要素の処理ユニット306A・・・306Nは、ハッシュ化及び/又は暗号化を復号して、1又は複数のN‐パケット及びN‐RANCを決定し、識別してよい。同期要素の処理ユニットは、同じ同期要素の承認ユニット312A・・・312NにN‐パケット及びN‐RANCを送ってよい。
If the result of the approval unit of the user system is the approval result, the processing unit of the user system stores one or more OY packet parts of the newly generated OY packet parts in one or more storage units of the user system. may be stored, and the remaining OY packet portions are sent to the processing unit of the verification system. A processing unit of the verification system obtains synchronization system information from the synchronization registry for the user. A processing unit of the verification system may add a secret to received OY packet portions and perform multi-layer hashing and/or encryption functions on these OY packet portions. After hashing and/or encryption, the processing unit of the verification system sends the hashed and/or encrypted unique OY packet portion to one or more of the synchronization
同期ユニットの証明ユニット304A・・・304Nは、同期要素の記憶ユニット308A・・・308Nから、以前に格納されたハッシュ化及び/又は暗号化OY‐パケット部分を取り出す。同期ユニットの証明ユニットは、ハッシュ化及び/又は暗号化を復号して、1又は複数のN‐パケット及びN‐RANCを決定及び識別してよく、当該N‐パケット及びN‐RANCは、同期要素の承認ユニットに送られる。同期要素の承認ユニットは、受け取った最近生成されたN‐パケット及びN‐RANCを、以前に格納されたものと比較する。この比較に基づいて、パス値又はフェイル値が生成される。生成されたパス値又はフェイル値は、同期要素の証明ユニットに転送される。
The
同期ユニットの証明ユニットは、同期ユニットの1又は複数の記憶ユニットから証明情報を取得し、前記証明情報と、証明ユニットが受け取ったパス値又はフェイル値との両方をハッシュ化及び/又は暗号化して、検証システムの処理ユニットに送ってよい。 A certification unit of the synchronization unit obtains certification information from one or more storage units of the synchronization unit, and hashes and/or encrypts both the certification information and the pass or fail values received by the certification unit. , may be sent to the processing unit of the verification system.
検証システムの処理ユニットは、ハッシュ化及び/又は暗号化された結果及び証明情報を、その情報を生成した同期要素の各々の証明ユニットから受け取る。明確にすると、複数の同期要素は、固有のOY‐パケット部分を受け取ってよく、それら同期要素の各々は、本明細書で説明されている方法に従ってOY‐パケット部分を処理するであろう。ユーザシステムの要素と、検証システムの要素と、クライアントシステムの要素との間の全ての通信は、図6に示すように、ユーザシステム、クライアントシステム、及び検証システムにおける通信ユニットを介して行われる。また、図6に示すように、検証システム202の処理ユニット210は、各同期要素302A・・・302Nから受け取った証明情報を復号し、復号された情報を検証システムの承認ユニット212に送る。検証システムの処理ユニット210は、検証システムの1又は複数の記憶ユニット214A・・・214Nから証明情報を取得する。検証システムの処理ユニットは、取得した証明情報を検証システムの承認ユニットに送る。検証システムの承認ユニットは、受け取った情報を用いて同期要素を承認する。
A processing unit of the verification system receives the hashed and/or encrypted result and proof information from the proof unit of each synchronization element that generated the information. To clarify, multiple synchronization elements may receive a unique OY-packet portion, and each of those synchronization elements will process the OY-packet portion according to the methods described herein. All communication between the user system elements, the verification system elements and the client system elements is through communication units in the user system, the client system and the verification system, as shown in FIG. 6, processing
検証システムの処理ユニットは、同期要素から受け取ったパス値及び/又はフェイル値の各々を復号する。復号された値は、検証システムの1又は複数の記憶ユニットに検証結果として保存される。検証結果レポートが、検証システムの処理ユニット又はレポート生成器208によって生成されてよく、このレポートは、様々な情報、例えば、要求された総同期要素、受け取ったパス値の数、受け取ったフェイル値の数、同期システムの信頼スコア、及び他の情報を含んでよい。
A processing unit of the verification system decodes each pass and/or fail value received from the synchronization element. The decrypted values are stored as verification results in one or more storage units of the verification system. A verification results report may be generated by a processing unit or
検証システムの処理ユニットは、検証結果をハッシュ化又は暗号化し、ハッシュ化及び/又は暗号化された検証結果を、検証システムの通信ユニット216を介して、ユーザシステム102の処理ユニット108に送ってよい。ユーザシステムの処理ユニットは、ハッシュ化又は暗号化された検証結果をクライアントシステム902に送る。クライアントシステムは、クライアントシステムが受け取る検証結果に基づいて、検証システムの処理ユニット210に認証要求を検証システムの通信ユニット216を介して送る。検証システムの処理ユニットは、検証システムの1又は複数の記憶ユニットに保存されている検証結果を取得し、取得した検証結果を検証システムの承認ユニットに送る。検証システムの承認ユニットは、取得した検証結果を検討し、これらを承認してクライアントシステムに検証結果を送ってよい。クライアントシステムは、検証報告の結果に基づいてユーザを認証するか否かを決定する。
The processing unit of the verification system may hash or encrypt the verification result and send the hashed and/or encrypted verification result to the
ユーザが認証されて、クライアントシステムのセキュア部分へのアクセスが許可された後、ユーザは情報(即ち、データ、ドキュメント、取引情報など)にアクセスすること、及び/又はユーザ情報(即ち、テキスト、データなど)をクライアントシステムに提供することができる。ある例では、ユーザは、メッセージを送るために、クレジットカードによる支払いを伴う購入を行うために、電子署名を文書に添付するために、又は他の様々な目的のために、クライアントシステムにアクセスしてよい。ユーザシステムを用いたユーザとクライアントシステムとの対話の過程で、ユーザ情報がクライアントシステムとユーザシステムとの間で送られる。本発明は、このようなユーザ情報及び認証関連情報の作成、転送、格納及び認証の間のセキュリティを保護するために動作する。 After a user has been authenticated and granted access to the secure portion of the client system, the user may access information (i.e., data, documents, transaction information, etc.) and/or user information (i.e., text, data, etc.). etc.) can be provided to the client system. In one example, a user accesses a client system to send a message, make a purchase involving credit card payment, attach an electronic signature to a document, or for various other purposes. you can During the course of interaction between the user and the client system with the user system, user information is passed between the client system and the user system. The present invention operates to protect security during creation, transfer, storage and authentication of such user information and authentication related information.
このようなセキュリティを達成するために、本発明の実施形態は、ユーザシステム、クライアントシステム、クライアント表示ユニット、及び検証システムを含んでよい。ユーザシステムは、クライアントデバイスに全体として又は部分的に含まれてよく、クライアントデバイスは、ユーザによって、クライアントシステムと通信し、クライアントシステムにアクセスするために利用される。当業者が読めば、本発明の実施形態は、ユーザデバイスとクライアントシステムとの間で転送されるユーザ認証関連情報のセキュリティを達成するものであって、また、他の要素を含んでよいことを認識するであろう。 To achieve such security, embodiments of the invention may include user systems, client systems, client display units, and verification systems. A user system may be included in whole or in part in a client device, which is utilized by a user to communicate with and access the client system. Those skilled in the art will read that embodiments of the present invention achieve security of user authentication related information transferred between a user device and a client system, and may include other factors. will recognize.
ユーザは、ユーザデバイスを使用して、クライアントシステムに対してユーザシステムとユーザ資格情報を検証する。ユーザがクライアントシステムのセキュア部分へのアクセスを許可されていることを確認するためには、ユーザ資格情報とユーザシステムは検証される必要がある。ユーザは、ユーザが認証される場合、クライアントシステムのセキュア部分を介して特定の機能を実行し、又は、特定の情報にアクセスできるだけであろう。例えば、ユーザは、ユーザ及びユーザシステムが認証される場合には、クライアントシステムを介して特定のトランザクションを承認できるだけであろう。クライアントシステムは、ユーザがアクセスを試みているシステムであり、従って、認証が実行されることを求める。本発明の検証システムは、ユーザ及びユーザシステムのアイデンティティを検証し、本明細書に記載されているように、ユーザ及びユーザシステムを認証されたものとしてクライアントシステムに認識させる。 The user validates the user system and user credentials against the client system using the user device. User credentials and the user's system need to be verified to ensure that the user is authorized to access the secure portion of the client system. A user will only be able to perform certain functions or access certain information through the secure portion of the client system if the user is authenticated. For example, a user would only be able to approve certain transactions via the client system if the user and the user system are authenticated. The client system is the system that the user is trying to access and therefore requires authentication to be performed. The verification system of the present invention verifies the identity of users and user systems and allows client systems to recognize users and user systems as authenticated as described herein.
図7に示すように、ユーザシステム101は、クライアントシステムとの間でユーザ情報を転送するために利用されるものであって、複数の要素を含んでいてよい。例えば、本発明の一実施形態は、対話ユニット103、ベリファイア(verifier)生成器105、ノイズ生成器107、処理ユニット109、記憶ユニット111、及びリーダ(reader)ユニット113が組み込まれたユーザシステムを含んでよい。
As shown in FIG. 7, the
図8に示すように、本発明の一実施形態のクライアントシステム130は、複数の要素を含んでよい。例えば、本発明の一実施形態は、CSAP生成器131、記憶ユニット133、処理ユニット135、チャレンジ生成器137、及び承認ユニット139が組み込まれたクライアントシステムを含んでよい。
As shown in FIG. 8, the
図9に示すように、本発明の一実施形態のクライアント表示ユニット150は、複数の要素を含んでよい。例えば、本発明の実施形態は、対話ユニット151、処理ユニット153、一時記憶ユニット155、及びキー生成器157が組み込まれたクライアント表示ユニットを含んでよい。
As shown in FIG. 9, the
図10に示すように、本発明の一実施形態の検証システム140は、複数の要素を含んでよい。例えば、本発明の実施形態は、ランダムキー生成器141、ランダムテキスト生成器143、USID生成器145、及び処理ユニット147が組み込まれた検証システムを含んでよい。
As shown in FIG. 10, the
ユーザがクライアントシステムのセキュア部分へのログインを希望すると、ユーザは、クライアント表示ユニットとの対話によりその意志を宣言し、クライアント表示ユニットの対話ユニットを使用して要求を入力する。図11に示すように、対話ユニット151は、クライアント表示ユニットの処理ユニット153に要求を伝達し、クライアント表示ユニットの処理ユニットは、その後、検証システムの処理ユニット147に要求を伝達する。ユーザシステムの処理ユニット109は、アルファキー(αk)コンボを生成する要求を生成する。アルファキー(αk)コンボ(combo)はαk1及びαk2からなり、検証システムの処理ユニット147を介してクライアント表示ユニットのキー生成器157に送られる。クライアント表示ユニットのキー生成器157は、αk1及びαk2の両方を検証システムの処理ユニット147に送る。
When a user wishes to log into the secure portion of the client system, the user declares his intention by interacting with the client display unit and enters a request using the interaction unit of the client display unit. As shown in FIG. 11, the
次に、検証システムの処理ユニット147は、検証システムのランダムテキスト生成器143にランダムテキストを要求し、検証システムのUSID生成器145に固有のシステム・イベント識別子(USID)を要求する。ランダムテキスト生成器は、ランダムテキストを生成して検証システムの処理ユニット147に送る。USID生成器は、USIDを生成して検証システムの処理ユニットに送る。USID生成器は、ユーザデバイスと、クライアントシステム内のセキュア領域に接続しようとしているイベントとを検証システムに特定するために動作する。USIDは、1又は複数のブラウザ内の各タブに固有のものであってよく、ユーザが使用するために開いているブラウザやタブの数を特定して制御する。
The verification system's
検証システムの処理ユニット147は、αk2と共に受け取ったUSIDとランダムテキストを結合してデータストリングにして、そのデータストリングを機械可読形式に変換し、その後、これをクライアント表示ユニットの処理ユニット153に送る。クライアント表示ユニットの対話ユニット151は、この情報をユーザシステムのリーダユニット113に利用可能にする。
The
図12に示すように、図11のプロセスが完了した後、情報は、リーダユニット113を介してユーザシステムに利用可能になっている。リーダユニット113は、聴覚、視覚、触覚、プリント、動き、及び他の種類のセンサの何れかを含む1又は複数のセンサを含んでいてよい。それらセンサは、クライアントデバイスに組み込まれてよく、又は、クライアントデバイスの外部に組み込まれて、有線接続又は無線接続の何れかを介して接続されてよい。それらセンサは、ユーザに関連する情報を得るために利用されてもよい。
As shown in FIG. 12, after the process of FIG. 11 has been completed, the information is available to the user system via
リーダユニット113は、その後、取得した情報をユーザシステムの処理ユニット109に送る。ユーザシステムの処理ユニットは、リーダユニットから受け取った情報を分割してよく、その情報を保持してよい。ユーザシステムの処理ユニット109は、ユーザシステムのノイズ生成器107にノイズを要求する。ノイズ生成器は、ノイズを発生させて、そのノイズをユーザシステムの処理ユニットに送る。このノイズは、転送中の情報のアイデンティティをマスキングするために使用される。
The
ユーザが以前にクライアントシステムで認証されたことがあるならば、ユーザシステムは、ランダムなデルタ1キー(δk1)を有し得る。
If the user has previously authenticated with the client system, the user system may have a
ユーザシステムの処理ユニットは、ユーザシステムのベリファイア生成器105にαk2及びδk1を送る。また、処理ユニットは、ユーザシステムのベリファイア生成器に、新しいベータキーを生成するように求める要求を送る。この要求に応答して、ベリファイア生成器は、αk2及びδk1を用いてベータキー1(βk1)及びベータキー2(βk2)を生成する。ベリファイア生成器105は、βk1及びβk2をユーザシステムの処理ユニット109に送る。
The processing unit of the user system sends αk2 and δk1 to the
ユーザシステムの処理ユニットは更に、ユーザシステムの記憶ユニット111にアクセスして、デルタ1キー及び/又はセッションコード及び/又はセッションコードの生成を要求する。記憶ユニット111は、ユーザシステムの処理ユニットにデルタ1キーを提供し、又は、セッションコードを生成して、これをユーザシステムの処理ユニットに提供する。例えば、ユーザシステムの処理ユニット109は、検証システムのランダムキー生成器141がランダムなデルタ1キー及び/又はセッションコードの生成を要求し、これを処理ユニット109に提供することを要求してよく、処理ユニット109は、提供されるδk1又はSCのためのハッシュ値を生成してよい。
The processing unit of the user system further accesses the
ユーザシステムの処理ユニットは、ノイズ発生器、ユーザシステムの記憶ユニット、及びベリファイア生成器の各々から得られた情報を用いて、手動対話コード(MIC)を生成してもよい。ユーザシステムの処理ユニットは、ユーザシステムの対話ユニット103にMICを送ってよい。クライアント表示ユニットの対話ユニット103は、ユーザにMICを表示する。
The user system's processing unit may use information obtained from each of the noise generator, the user system's storage unit, and the verifier generator to generate a manual interaction code (MIC). The user system's processing unit may send the MIC to the user system's
MICが生成される場合、残留データ(「ポスト‐MICデータ」)が存在する。ユーザシステムの処理ユニットは、ポスト‐MICデータに対して対称暗号化又は非対称暗号化を行ってよい。ユーザシステムの処理ユニットは、ポスト‐MICデータとハッシュ値をクライアントシステムの処理ユニット135に送ってよい。
When the MIC is generated, there is residual data ("post-MIC data"). A processing unit in the user system may perform symmetric or asymmetric encryption on post-MIC data. The user system's processing unit may send the post-MIC data and the hash value to the client system's
ユーザシステムの処理ユニットは、ポスト‐MICデータとハッシュ値をクライアントシステムの処理ユニット135に送ってよい。クライアントシステムの処理ユニット135は、ハッシュ値を送り、そのハッシュ値はクライアントシステムの記憶ユニット133に一時的に格納される。ポストMICデータは、クライアント表示ユニットの処理ユニット153に送られる。
The user system's processing unit may send the post-MIC data and the hash value to the client system's
クライアント表示ユニットの処理ユニット153は、αk1とポスト‐MICデータをパッケージとして結合して、そのパッケージをクライアント表示ユニットのキー生成器157に送る。処理ユニット153は、クライアント表示ユニットのキー生成器157にガンマキー(γK)の生成を要求する。γKは、クライアント表示ユニットのキー生成器157によってクライアント表示ユニットの処理ユニット153に送られる。
The
そして、ユーザは、クライアント表示ユニットの対話ユニット151と対話することが要求される。ユーザは、MICを手動で入力する必要がある。入力されると、その後、MICは、クライアント表示ユニットの対話ユニットによって、クライアント表示ユニットの処理ユニット153に送られる。処理ユニット153は、γK、MIC、及びパッケージを使用して、SC又はδk1を使用可能にする。クライアント表示ユニットの処理ユニットは、SC又はδk1のハッシュ値を計算して、そのハッシュ値を検証のためにクライアントシステムの承認ユニット139に送る。
The user is then required to interact with the
クライアント表示ユニットの処理ユニットが受け取った又は生成した情報の何れも、クライアント表示ユニットの処理ユニット153の処理動作中の任意の時点にて、クライアント表示ユニットの一時記憶ユニット155に一時的に格納されてよい。
Any information received or generated by the client display unit's processing unit may be temporarily stored in the client display unit's
クライアントシステムの処理ユニット135は、クライアントシステムの記憶ユニット133に一時的に格納されているハッシュ値を取得する。クライアントシステムの処理ユニット135は、SC又はδk1のハッシュ値の何れかと、記憶ユニットから取り出した値とを、クライアントシステムの承認ユニット139に送る。承認ユニット139は、ハッシュ値を比較して一致を判定する。
The
ハッシュ値が一致する場合、承認ユニット139は、クライアントシステムの処理ユニット135に一致を伝える。
If the hash values match, the
図14に示すように、この一致確認を受け取ると、クライアントシステムの処理ユニット135は、クライアントセッションアクセスパス(Client Session Access Pass)(CSAP)をCSAP生成器131に要求する。CSAP生成器131は、CSAPを生成し、CSAPは、クライアントシステムの記憶ユニット133に送られて、一時的に格納される。CSAP生成器131はまた、検証システムの処理ユニット147にCSAPを送る。検証システムの処理ユニット147は、クライアント表示ユニットの処理ユニット153にCSAPを送る。クライアント表示ユニットの処理ユニット153は、ユーザシステムの処理ユニット135にCSAPを送る。ユーザシステムの処理ユニット135は、クライアントシステムの承認ユニット139にCSAPを送る。クライアントシステムの承認ユニットは、CSAPを確認する。ユーザシステムの処理ユニットはその確認の通知を受け取って、ユーザがクライアントシステムのセキュア部分にアクセスすることを許可するように動作する。
As shown in FIG. 14, upon receiving this match confirmation, the
クライアントシステムの承認ユニット139が、値が一致しないと判定した場合、ユーザ、ユーザシステム及びクライアント表示ユニットは認証されない。
If the client
クライアントシステムのCSAP生成器131は、ユーザ、ユーザシステム及びクライアント表示ユニットの認証に関連する条件を周期的にテストするために使用されてよい。これは、本明細書に記載された方法に従って、CSAPの生成と、クライアントシステムの処理ユニットによるその処理と、検証システム、ユーザシステム、クライアント表示ユニットの他の処理ユニットへのCSAPの転送と、クライアントシステム、ユーザシステム、及びクライアント表示ユニットの記憶ユニットへのCSAPの格納とを介してなされる。クライアントシステムの承認ユニットが、認証条件がCSAPに関して満たされていないと判断する場合、例えば、クライアントシステムの処理ユニットが受け取ったCSAPと格納されているCSAPとが一致しないとの判断の場合、ユーザ、ユーザデバイス及びクライアント表示ユニットの認証(即ち、CSAP認証)が取り消され、ユーザ、ユーザデバイス及びクライアント表示ユニットについてセキュア領域へのアクセスが終了する。
The client system's
本発明の実施形態で採用される認証用CSAP条件は、次元、ジオ‐テンポラル、機械学習人工知能、行動、又はその他の条件の何れかに関連する条件を含んでよい。 CSAP conditions for authentication employed in embodiments of the present invention may include conditions related to any of dimensional, geo-temporal, machine learning artificial intelligence, behavioral, or other conditions.
図15に示す本発明の別の実施形態では、ユーザは、クライアント表示ユニットを使用して、クライアントシステムのセキュア部分へのアクセスを介してトランザクションを有効にすることを試みる。クライアント表示ユニットの処理ユニット153は、クライアントシステムの処理ユニット135にトランザクションを有効にする要求を送る。その要求に応じて、クライアントシステムの処理ユニット135は、チャレンジを生成する要求をクライアントシステムのチャレンジ生成器137に送る。この要求に応じて、クライアントシステムのチャレンジ生成器137は、チャレンジを生成し、更には、チャレンジの結果にハッシュ値を適用して、解答及び/又はハッシュ値をクライアントシステムの記憶ユニット133に保存してよい。クライアントシステムのチャレンジ生成器137は、クライアントシステムの処理ユニット135にチャレンジを送る。
In another embodiment of the invention, shown in FIG. 15, a user attempts to validate a transaction through access to the secure portion of the client system using the client display unit. The
クライアントシステムの処理ユニット135は、対称及び/又は非対称暗号化をチャレンジに適用してよい。処理ユニット135は、クライアント表示ユニットの処理ユニット153にチャレンジを送る。クライアント表示ユニットの処理ユニット153は、提供されたキーを用いてチャレンジを復号してよく、そして、クライアント表示ユニットの対話ユニット151にチャレンジを送る。本発明の一実施形態では、ユーザは、クライアント表示ユニットの対話ユニット151と対話して、チャレンジの解答を見つけることを要求されてよい。本発明の別の実施形態では、クライアント表示ユニットの処理ユニット153は、復号されたチャレンジを解決してよい。
クライアント表示ユニットを使用するユーザがチャレンジの解答を見つけると、そのユーザの解答は、クライアント表示ユニットの処理ユニット153に送られる。クライアント表示ユニットの処理ユニット153は、ユーザの解答に基づいてハッシュ値を生成してよく、クライアント表示ユニットの処理ユニットは更に、このハッシュ値及び/又は解答に対称暗号化又は非対称暗号化の何れかを加えてよい。クライアント表示ユニットの処理ユニットによる処理の結果(例えば、ハッシュ値又は暗号化されたハッシュ値、或いは、解答又は暗号化された解答)は、クライアントシステムの処理ユニット135に送られてよい。クライアントシステムの処理ユニット135は、格納されている解答及び/又はハッシュ値を取得するための要求をクライアントシステムの記憶ユニット133に送ってよい。この要求があると、クライアントシステムの記憶ユニット133は、格納されている解答及び/又は格納されているハッシュ値を取得し、格納されている解答及び/又は格納されているハッシュ値をクライアントシステムの処理ユニット135に送る。
When a user using the client display unit finds an answer to the challenge, the user's answer is sent to the
クライアントシステムの処理ユニット135は、クライアント表示ユニットの処理ユニット153から受け取った、暗号化されたハッシュ値若しくは解答及び/又は非暗号化されたハッシュ値を復号する。クライアントシステムの処理ユニット135は、クライアント表示ユニットの処理ユニット153から受け取ったハッシュ値及び/又は解答(暗号化されていない形式)と、格納されている解答及び/又はハッシュ値とを、承認のためにクライアントシステムの承認ユニット139に送る。クライアントシステムの承認ユニット139は、受け取った解答を格納されている解答と、及び/又は受け取ったハッシュ値を格納されているハッシュ値と比較する。
The
受け取った解答及び/又はハッシュ値が、格納されている解答及び/又はハッシュ値と一致する場合、承認ユニット139は、クライアントシステムの処理ユニット135に一致の確認を送る。一致が確かである場合、クライアントシステムの処理ユニット135は、トランザクションの認証が正常に完了したことを確認するために、一致の確認をクライアントシステムに送り、クライアントシステムはそれによってトランザクションを承認する。
If the received answer and/or hash value matches the stored answer and/or hash value, the
受け取った解答及び/又はハッシュ値が、格納されている解答及び/又はハッシュ値と一致しない場合、承認ユニット139は、一致しない旨の通知をクライアントシステムの処理ユニット135に送る。クライアントシステムの処理ユニットは、その通知をクライアントシステムに送り、クライアントシステムにトランザクションの認証を行わないように通知する。
If the received answer and/or hash value do not match the stored answer and/or hash value, the
本発明の別の実施形態では、検証システムの処理ユニットは、図14を参照してクライアントシステムの処理ユニットについて説明した機能を実行することができる。本発明のそのような実施形態では、チャレンジ生成器及び承認ユニットは、クライアントシステム又は検証システムの何れかに含まれてよく、それらチャレンジ生成器及び承認ユニットは、図14に従って説明されたものと同じチャレンジ生成器137及び承認ユニット139の機能を有する。
In another embodiment of the invention, the processing unit of the verification system can perform the functions described for the processing unit of the client system with reference to FIG. In such embodiments of the invention, the challenge generator and approval unit may be included in either the client system or the verification system, the challenge generator and approval unit being the same as described according to FIG. It has the functions of a
ユーザがユーザシステムを使用してトランザクションを有効にすることを試みる本発明の別の実施形態を図16に示す。本発明のこのような実施形態では、ユーザシステムの処理ユニット109は、クライアントシステムの処理ユニット135にトランザクションを有効にする要求を送る。その要求に応じて、クライアントシステムの処理ユニット135は、チャレンジを生成する要求をチャレンジ生成器137に送る。この要求に応じて、チャレンジ生成器137はチャレンジを生成し、更には、チャレンジの結果(チャレンジの解答)にハッシュ値を適用し、その解答及び/又はハッシュ値をクライアントシステムの記憶ユニット133に保存する。
Another embodiment of the invention in which a user attempts to validate a transaction using the user system is shown in FIG. In such an embodiment of the invention, the
クライアントシステムの処理ユニット135は、チャレンジに対称及び/又は非対称暗号化を適用してよい。処理ユニット135は、暗号化されているかも知れないチャレンジを、ユーザシステムの処理ユニット109に送る。ユーザシステムの処理ユニット109は、チャレンジが暗号化されている場合には、チャレンジを復号して、チャレンジをユーザシステムの対話ユニット103に送る。本発明の一実施形態では、ユーザは、チャレンジの解答を見つけるために、ユーザシステムの対話ユニット103と対話することが要求されてよい。本発明の別の実施形態では、ユーザシステムの処理ユニット109は、復号されたチャレンジを解決してよい。
ユーザがチャレンジに対する解答を見つけると、ユーザの解答はユーザシステムの処理ユニット109に送られる。ユーザシステムの処理ユニット109は、ユーザの解答に基づいてハッシュ値を生成してよく、ユーザシステムの処理ユニット109は更に、このハッシュ値及び/又は解答に対称又は非対称暗号化の何れかを加えてよい。ユーザシステムの処理ユニット109による処理の結果(例えば、ハッシュ値又は暗号化されたハッシュ値と、解答又は暗号化された解答)は、クライアントシステムの処理ユニット135に送られてよい。クライアントシステムの処理ユニット135は、格納されている解答及び/又はハッシュ値を取得するための要求をクライアントシステムの記憶ユニット133に送ってよい。この要求があると、クライアントシステムの記憶ユニット133は、格納されている解答及び/又は格納されているハッシュ値を取得し、格納されている解答及び/又は格納されているハッシュ値をクライアントシステムの処理ユニット135に送る。
When the user finds an answer to the challenge, the user's answer is sent to the
クライアントシステムの処理ユニット135は、ユーザシステムの処理ユニット109から受け取った、暗号化されているハッシュ値又は解答を復号する。クライアントシステムの処理ユニット135は、ユーザシステムの処理ユニット109から受け取ったハッシュ値及び解答(暗号化されていない形式)と、格納された解答及び/又はハッシュ値とを、承認のためにクライアントシステムの承認ユニット139に送る。クライアントシステムの承認ユニット139は、受け取った解答と格納されている解答とを、及び/又は受け取ったハッシュ値と格納されているハッシュ値とを比較する。
The
受け取った解答が格納されている解答と一致し、及び/又は受け取ったハッシュ値が格納されているハッシュ値と一致する場合、承認ユニット139は、クライアントシステムの処理ユニット135に一致の確認を送る。クライアントシステムの処理ユニット135は、トランザクションの認証が完了して成功したことを確認するために、一致の確認をクライアントシステムに送る。
If the received answer matches the stored answer and/or the received hash value matches the stored hash value, the
受け取った解答が格納された解答と一致し、及び/又は受け取ったハッシュ値が格納されているハッシュ値と一致する場合、その後、承認ユニット139は、一致しない旨の通知をクライアントシステムの処理ユニットに送る。クライアントシステムの処理ユニットは、その通知をクライアントシステムに送り、クライアントシステムにトランザクションの認証を行わないように通知する。
If the received answer matches the stored answer and/or the received hash value matches the stored hash value, then
本発明の別の実施形態では、検証システムの処理ユニットは、図16を参照してクライアントシステムの処理ユニットについて説明した機能を実行することができる。本発明のそのような実施形態では、チャレンジ生成器及び承認ユニットが、クライアントシステム又は検証システムの何れかに含まれてよく、それらチャレンジ生成器及び承認ユニットは、図16に従って説明されたものと同じチャレンジ生成器137及び承認ユニット139の機能を有する。
In another embodiment of the invention, the processing unit of the verification system can perform the functions described for the processing unit of the client system with reference to FIG. In such embodiments of the invention, a challenge generator and approval unit may be included in either the client system or the verification system, the challenge generator and approval unit being the same as described according to FIG. It has the functions of a
認証のためのシステム及びネットワークは、1又は複数の第1のピア、1又は複数のサーバ、及び、1又は複数の第2のピアで構成されており、各々は、少なくともプロセッサ及び送受信器を備えてよい。加えて、1又は複数の第1のピア及び1又は複数の第2のピアは、個別にメモリを備えてよい。幾つかの実施形態では、1又は複数の第1のピア及び1又は複数の第2のピアの各々は、表示装置を備えてよい。1又は複数のサーバは、更にデータベースを備えてよい。 A system and network for authentication comprises one or more first peers, one or more servers, and one or more second peers, each comprising at least a processor and a transceiver. you can Additionally, one or more of the first peers and one or more of the second peers may be individually equipped with memory. In some embodiments, each of the one or more first piers and the one or more second piers may comprise a display device. One or more servers may further comprise a database.
第1のピア、第2のピア、及びサーバの各々の送受信器は、外部ソース(exogenous source)との間で情報を送受信するように構成されてよい。幾つかの実施形態では、第1のピアは、サーバとの間で情報を送受信するように構成されてよく、サーバは、第1のピアと第2のピアの両方との間で情報を送受信するように構成されてよく、第2のピアは、サーバとの間で情報を送受信するように構成されてよい。第1のピア及び第2のピアのメモリと、サーバのデータベースとは、情報を格納し、情報の取得を可能にするように構成されてよい。表示装置は、ユーザがディスプレイと対話するための手段、例えば、データを入力し、キャラクタを選択し、オブジェクトを選択するための手段を更に備えてよい。 Each transceiver of the first peer, the second peer, and the server may be configured to send and receive information to and from an exogenous source. In some embodiments, the first peer may be configured to send and receive information to and from a server, and the server sends and receives information to and from both the first peer and the second peer. and the second peer may be configured to send and receive information to and from the server. The memory of the first and second peers and the database of the server may be configured to store information and enable retrieval of information. The display device may further comprise means for the user to interact with the display, eg for entering data, selecting characters, selecting objects.
第1のピア、第2のピア又はサーバのプロセッサは、処理マイグレータ(migrator)、データマニピュレータ、データ変換器、処理生成器、及び処理検証器で構成されてよい。処理マイグレータは、第1のピア、第2のピア、又はサーバ内のある構成要素から、第1のピア、第2のピア、又はサーバ内の別の構成要素にデータを移行するように構成されてよい。例として、限定ではないが、処理マイグレータは、第1のピアのメモリから第1のピアのプロセッサへ、或いは、第2のピアのプロセッサから第2のピアの送受信器へデータを移動するように構成されてよい。データマニピュレータは、データを操作するように、例えば、結合、分離、分離及び再結合、リオーダなどを行うように構成されていてよい。例として、限定されないが、第1のピアのデータマニピュレータは、又は複数のキャラクタストリングを第1の部分と第2の部分に分割するように構成されてよく、サーバのデータマニピュレータは、データの第1の部分とデータの第2の部分とを結合して、単一のデータパケットを生成するように構成されてよい。 The processor of the first peer, second peer or server may consist of a process migrator, a data manipulator, a data transformer, a process generator and a process verifier. The processing migrator is configured to migrate data from one component within the first peer, second peer, or server to another component within the first peer, second peer, or server. you can By way of example, and not limitation, the processing migrator may move data from a first peer's memory to a first peer's processor, or from a second peer's processor to a second peer's transceiver. may be configured. Data manipulators may be configured to manipulate data, for example, combine, split, split and recombine, reorder, and the like. By way of example, and not limitation, the first peer's data manipulator may or may be configured to split a plurality of character strings into a first part and a second part, and the server's data manipulator may divide the data into a first part and a second part. It may be configured to combine the one portion and the second portion of data to produce a single data packet.
データ変換器は、第1のキャラクタストリングを第2のキャラクタストリングに変換するように構成されてよく、第1のキャラクタストリング及び第2のキャラクタストリングの各々は、長さ、構成、又は配置のうちの任意の1又は複数が異なってよい。幾つかの実施形態では、データ変換器は、ハッシュアルゴリズムを第1のキャラクタストリングに適用するように構成されてよい。他の実施形態では、データ変換器は、第1のキャラクタストリングに暗号化プロトコルを適用するように構成されてよい。更に他の実施形態では、データ変換器は、第1のキャラクタストリングに復号プロトコルを適用するように構成されてよい。他の実施形態ではまた、データ変換器は、ハッシュアルゴリズム、暗号化プロトコル、復号プロトコル、又はデータ変換の他の既知方法の任意の組合せを第1のキャラクタストリングに適用して、第2のキャラクタストリングを生成するように構成されてよい。 The data converter may be configured to convert the first character string to a second character string, each of the first character string and the second character string having a length, configuration, or arrangement of any one or more of may be different. In some embodiments, the data converter may be configured to apply a hashing algorithm to the first character string. In other embodiments, the data converter may be configured to apply an encryption protocol to the first character string. In still other embodiments, the data converter may be configured to apply the decoding protocol to the first character string. Also in other embodiments, the data converter applies any combination of hashing algorithms, encryption protocols, decryption protocols, or other known methods of data conversion to the first character string to produce a second character string may be configured to generate
処理生成器は、データを生成するように構成されてよい。幾つかの実施形態では、データは、任意の長さの1又は複数のキャラクタストリングで構成されてよく、また、バーコードなどで構成されてよい。幾つかの実施形態では、データは、ランダムな方法又は規則的な方法の何れかで生成されてよい。処理検証器は、2つ以上のデータを比較して、それらのデータが同一であるか異なるかを判定するように構成されてよい。幾つかの実施形態では、処理検証器と処理生成器は対になって、第1のキャラクタストリングと第2のキャラクタストリングが同一であるかどうかを判定して、第1のキャラクタストリングと第2のキャラクタストリングの同一性に基づいて応答を生成するように構成されてよい。 The process generator may be configured to generate data. In some embodiments, the data may consist of one or more character strings of any length and may consist of barcodes and the like. In some embodiments, data may be generated in either a random or systematic manner. The processing verifier may be configured to compare two or more pieces of data to determine if the pieces of data are the same or different. In some embodiments, the action verifier and the action generator are paired to determine if the first character string and the second character string are the same, and to determine whether the first character string and the second character string are identical. may be configured to generate a response based on the identity of the character strings of the .
認証方法は、登録方法1700とユーザログイン方法2000とを含んでよい。幾つかの実施形態では、登録方法1700は、1又は複数のキーを生成することと、1又は複数のキーを配布することと、1又は複数のキーをローカルデータベースに格納することと、1又は複数のキーをサーバデータベースに格納することとを含んでよい。図17に図示されているように、登録方法1700は更に、第1のピア1701、サーバ1750、及び少なくとも1つの第2のピア1775の間での通信を含んでよい。
Authentication methods may include a
登録方法1700の幾つかの実施形態では、サーバ1750は、第1のピア1701から登録要求1702を受け取ってよい。サーバ1750は、データ1751を第1のピア1701に送ってよい。登録データ1751は、登録方法1700に必要な任意のデータを含んでよい。幾つかの実施形態では、登録データ1751は、クライアント登録コード1703を含んでよい。クライアント登録コード1703は、文字、数字、記号、又はそれらの任意の組合せで構成される1又は複数のキャラクタを含んでよく、サーバ1750によって生成されてよい。別の実施形態では、登録データは、ユーザ選択オブジェクトを含んでいる。更に別の実施形態では、登録データは、クライアント登録コード1703、ユーザ選択オブジェクト、及び登録に必要な他のデータのうちの1又は複数からなる組合せで構成されてよい。
In some embodiments of
登録方法1700は、サーバキー1705及びクライアントキー1706をユーザ入力1704から生成することを更に含んでよい。幾つかの実施形態では、サーバキー1705とクライアントキー1706が使用されて、登録キー1707が生成される。他の実施形態では、サーバキー1705、クライアントキー1706、及び少なくとも1つのクライアント登録コード1703が、登録キー1707を生成するために使用される。他の実施形態は、クライアントキー1706、サーバキー1705、及びクライアント登録コード1703の様々な組合せを備えており、それらは、登録キー1707を生成するために使用される。例えばクライアントキー1706、クライアント登録コード1703のような一部の情報は、第1のピア1701のメモリ1708に格納されてよい。更に、登録方法1700は、第1のピア1701からサーバ1750に情報を転送することを含んでよい。幾つかの実施形態では、登録キー1707及びサーバキー1705がサーバ1750に転送される。
登録方法1700は、サーバ1750にて第1のピア1701から情報を受け取ることを含んでよい。幾つかの実施形態では、サーバ1750で受け取った情報は、登録キー1707とサーバキー1705を含んでよい。サーバ1750は、受信者コード1752を生成してよい。更に、サーバ1750は、送信者コード1754を生成してよい。更に、サーバ1750は、配布コード1756を生成してよい。サーバキー1705、受信者コード1752、及び送信者コード1754は、配布キー1753を生成するために使用されてよい。幾つかの実施形態では、配布キー1753は、サーバキー1705、受信者コード1752、送信者コード1754、又はそれらの任意の組合せのうちの任意の1又は複数から生成されてよい。例えば受信者コード1752、配布キー1753のような一部の情報は、サーバ1750のデータベース1757に格納されてよい。登録方法1700は、サーバ1750から少なくとも1つの第2のピア1775に情報を転送することを更に含んでよい。幾つかの実施形態では、配布キー1753及び配布コード1756は、少なくとも1つの第2のピア1775に転送される。
登録方法1700は、1又は複数のキーをローカルデータベースに格納することを更に含んでよい。図17に図示されているように、少なくとも1つの第2のピア1775は、サーバ1750から情報を受け取ってよい。幾つかの実施形態では、情報は、配布キー1753及び配布コード1756を含んでよい。第2のピアは、預託(deposit)コード1776を生成してよい。更に、配布キー1753及び預託コード1776は、預託キー1777を生成するために使用されてよい。幾つかの実施形態では、預託キー1777は、配布キー1753のみを、預託コード1776のみを、又は配布キー1753と預託コード1776の任意の組合せを使用して生成されてよい。例えば、配布キー1753、預託キー1777、配布コード1756のような一部の情報は、第2のピアデバイス1775のメモリ1758に格納されてよい。登録方法1700は、第2のピア1775からサーバ1750に情報を転送することを更に含んでよい。幾つかの実施形態では、預託キー1777及び配布コード1756は、サーバ1750に転送される。
登録方法1700は、第2のピア1775から情報を受け取り、その情報をローカルデータベースに格納するように構成されてよい。幾つかの実施形態では、サーバ1750は、第2のピア1775から情報を受け取る。受け取った情報は、預託キー1777と、配布コード1756と、サーバ1750による情報の保存に又は第2のピア1775における識別に必要な他の情報とから構成されてよい。
次に図18を参照すると、幾つかの実施形態では、1又は複数のキーを生成すること1800は、第1のピア1801で行われてよい。第1のピア1801は、任意のIoTデバイス、即ち、ネットワークに接続し、データを送る能力を有する任意のデバイスであってよく、携帯電話、パーソナルアシスタント、ボタン、ホームセキュリティシステム、電化製品などを含むがこれらに限定されない。第1のピア1801は、サーバ1850に登録を要求してよい。幾つかの実施形態では、サーバ1850は、登録データを第1のピア1801に送ってよい。登録データは、第1のピア1801の送受信器1841によって受け取られてよく、また、第1のピア1801において1又は複数のキー1800を生成するために必要な任意のデータを含んでよい。幾つかの実施形態では、登録データは、クライアント登録コード1803を含んでよい。他の実施形態では、登録データは、クライアント登録コード1803と、ユーザ入力1804の前駆体(precursor)として機能する追加データとを含んでよい。クライアント登録コード1803は、任意の長さの1又は複数のキャラクタストリングで構成されてよい。
Referring now to FIG. 18, in some embodiments generating one or
ユーザ入力1804は、情報の離散的ユニットを含むユーザ生成データを任意の形態で含んでよい。幾つかの実施形態では、ユーザ入力1804は、例えば、指紋、虹彩などの生体情報データを含んでいる。それらの実施形態では、生体情報データは、識別子を含む情報の離散的ユニットに分割されてよい。識別子は、固有の選択コード1809に変換されてよい。他の実施形態では、ユーザ入力1804は、任意の数の空間的及び/又は時間的データを含んでよい。空間データ及び/又は時間データは、識別子を含む情報の離散的ユニットに分割されてよい。識別子は、固有の選択コード1809に変換されてよい。更に別の実施形態では、ユーザ入力1804は、生体情報データと空間的及び/又は時間的データの組合せを含んでよく、それらデータの各々が固有の選択コード1809を生成するために使用されてよい。
他の実施形態では、ユーザ入力1804は、1又は複数の選択オブジェクトを含んでよい。1又は複数の選択オブジェクトは、画像、アイコン、トークン、ボタン、或いは、選択オブジェクトのグループからユーザが1又は複数の選択オブジェクトを選択することを可能にする任意の他のオブジェクトであってよい。幾つかの実施形態では、選択オブジェクトは、送受信器1841で受け取られ、処理マイグレータ1842は、選択オブジェクトを表示装置1843にマイグレートしてよい。表示装置1843上でユーザによって選択されると、選択オブジェクトは、任意の数のキャラクタ、例えば、文字、数字、記号からなる選択コード1809に変換されてよい。特定の実施形態では、選択オブジェクトは画像であって、サーバ1850から受け取られてよい。各画像には固有の選択コード1809が割り当てられる。選択オブジェクトの組合せのユーザによる選択は、ユーザによる選択オブジェクトの選択に固有である選択コード1809の組合せを含むユーザ入力1804を生成する。幾つかの実施形態では、生体情報データ、空間データ及び/又は時間データ、及び選択オブジェクトの任意の組合せが、ユーザ入力1804を構成してよい。
In other embodiments,
幾つかの実施形態によれば、ユーザは、2つ以上の選択コード1809を含むユーザ入力1804を生成してよい。選択コードの数はnに等しい。データマニピュレータ1844は、選択コードを2つ以上のグループに分割するように構成されてよい。幾つかの実施形態では、データマニピュレータ1844は、選択コード1809を第1のグループ1810と第2のグループ1811とに分割するように構成されてよい。第1のグループ1810は、1乃至n-1個の選択コード1809からなり、第2のグループ1811は、1乃至n-1個の選択コード1809からなる。第1のグループ1810及び第2のグループ1811の各選択コード1809は、データ変換器1845によって、個別に1又は複数のキャラクタストリングに変換されてよく1812、その結果、変換された選択コードの第1のグループ1813と、変換された選択コードの第2のグループ1815とが得られる。幾つかの実施形態では、変換1812は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換1812は、暗号化方法を使用することを含んでよい。更に他の実施形態では、変換1812は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。変換された選択コードの第1のグループ1813は、クライアントプレキー(pre-key)1814を生成するために使用されてよい。変換された選択コードの第1のグループ1813を構成する個々の変換された選択コードは、データマニピュレータ1844によって結合されて、クライアントプレキー1814を構成する1又は複数のキャラクタストリングを形成してよい。幾つかの実施形態では、個々の変換済み選択コードは、ユニットの連結(concatenation)を通じて結合される。連結は、個々の変換された選択コードの各々を1ユニットとして使用することを含んでよく、又は、個々の変換された選択コードの一部を1ユニットとして使用することを含んでよい。クライアントプレキー1814は、データ変換器1845によってクライアントキー1806に変換されてよい1812。幾つかの実施形態では、変換1812は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換1812は、暗号化方法を使用することを含んでよい。更に他の実施形態では、変換1812は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。クライアントキー1812は、処理マイグレータ1842によって第1のピア1801のメモリ1808に格納されてよい。
According to some embodiments, a user may generate
変換された選択コードの第2のグループ1815は、サーバプレキー1816を生成するために使用されてよい。変換された選択コードの第2のグループ1815を構成する個々の変換された選択コードは、データマニピュレータ1844によって結合されて、サーバプレキー1816を構成する1又は複数のキャラクタストリングを形成してよい。幾つかの実施形態では、個々の変換された選択コードは、ユニットの連結によって結合されてよい。連結は、個々の変換された選択コードの各々をユニットとして使用することであってよく、又は、個々の変換された選択コードの一部をユニットとして使用することであってよい。サーバプレキー1816は、データ変換器1845によってサーバキー1805に変換されてよい1812。幾つかの実施形態では、変換1812は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換1812は、暗号化方法を使用することを含んでよい。更に他の実施形態では、変換1812は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。
A
幾つかの実施形態では、登録キー1807が生成されてよい。クライアントキー1806及びサーバキー1805の各々は、データマニピュレータ1844によって、クライアントキーの第1の部分1817、クライアントキーの第2の部分1818、サーバキーの第1の部分1819、及びサーバキーの第2の部分1820に分割されてよい。幾つかの実施形態では、クライアントキー1806は、3つ以上の部分に分割されてよい。同様に、サーバキー1805は、3つ以上の部分に分離されてよい。クライアントキーの第1の部分1817とクライアントキーの第2の部分1818とは、クライアントキー1806を構成するキャラクタの異なる部分を含んでよい。特定の実施形態では、クライアントキーの第1の部分1817及びクライアントキーの第2の部分1818の各々は、クライアントキー1806を構成するキャラクタの半分であってよい。サーバキーの第1の部分1819及びサーバキーの第2の部分1820は、サーバキー1805を構成するキャラクタの異なる部分を含んでよい。特定の実施形態では、サーバキーの第1の部分1819及びサーバキーの第2の部分1820の各々は、サーバキー1805を構成するキャラクタの半分であってよい。クライアントキーの第1の部分1817、クライアントキーの第2の部分1818、サーバキーの第1の部分1819、及びサーバキーの第2の部分1820は、ユニットの連結を介してデータマニピュレータ1844によって結合されて、第1のプレキー1821を構成する1又は複数のキャラクタストリングを形成してよい。データマニピュレータ1844による連結は、クライアントキーの第1の部分1817、クライアントキーの第2の部分1818、サーバキーの第1の部分1819、及びサーバキーの第2の部分1820の各々をユニットとして使用することを含んでよく、クライアントキーの第1の部分1817、クライアントキーの第2の部分1818、サーバキーの第1の部分1819、及びサーバキーの第2の部分1820のピースをユニットとして使用することを含んでよい。更に、連結は、クライアントキー1806又はサーバキー1805の分割によって生成された部分の任意の組合せを使用することを含んでよい。第1のプレキー1821は、データ変換器1845によって、第2のプレキー1822を構成する1又は複数のキャラクタストリングに変換されてよい1812。幾つかの実施形態では、変換1812は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換1812は、暗号化方法を使用することを含んでよい。更に他の実施形態では、変換1812は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。第2のプレキー1822は、登録プレキー1823を生成するために使用されてよい。幾つかの実施形態では、第2のプレキー1822及びクライアント登録コード1803がデータマニピュレータ1844によって連結されて、登録プレキー1823を構成する1又は複数のキャラクタストリングが形成されてよい。連結は、第2のプレキー1822とクライアント登録コード1803の各々をユニットとして使用することを含んでよく、第2のプレキー1822とクライアント登録コード1803のピースをユニットとして使用することを含んでよい。登録プレキー1823は、データ変換器1845によって、登録キー1807を構成する1又は複数のキャラクタストリングに変換されてよい1812。幾つかの実施形態では、変換1812は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換1812は、暗号化方法を使用することを含んでよい。更に他の実施形態では、変換1812は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。
In some embodiments, a
第1のピア1801は、サーバ1850に情報を送ってよい。幾つかの実施形態では、第1のピア1801の処理マイグレータ1842は、登録キー1807及びサーバキー1805を第1のピア1801の送受信器1841にマイグレートしてよく、送受信器1841が、登録キー1807及びサーバキー1805をサーバ1850に送ってよい。他の実施形態では、第1のピア1801の送受信器1841は、登録キー1807、サーバキー1805、及び登録方法に必要なその他の情報をサーバ1850に送ってよい。
登録方法は、1又は複数のキーを配布すること1900を更に含んでよい。図19に図示されているように、サーバ1950の送受信器1941は、第1のピア1901から情報を受け取ってよい。幾つかの実施形態では、サーバ1950の送受信器1941は、第1のピア1901から登録キー1907を受け取ってよい。サーバ1950の送受信器1941は、第1のピア1901からサーバキー1905を受け取ってよい。サーバ1950の送受信器1941は、第1のピア1901から登録キー1907及びサーバキー1905の両方を受け取ってよい。処理マイグレータ1942は、登録キー1907及びサーバキー1905をサーバ1950のプロセッサにマイグレートしてよい。登録キー1907は、処理マイグレータ1942によってサーバ1950のデータベース1957に格納されてよい。サーバ1950の処理生成器1946は、ピアリスト(peer list)1958を生成してよい。ピアリスト1958は、ネットワーク上のピアデバイス、例えば第1のピア1901、第2のピア1975などのリストを含んでよい。また、ピアリストは、受信者コード1952及び配布コード1956を含んでよく、これらは、任意の長さの1又は複数のキャラクタストリングを含んでよい。更に、サーバ1950の処理生成器1946は、送信者コード1954を生成してよく、これもまた、任意の長さの1又は複数のキャラクタストリングを含んでよい。
The registration method may further include distributing 1900 one or more keys. As illustrated in FIG. 19,
幾つかの実施形態では、サーバ1950は、第1のピア1901から登録キー1907を受け取ってよい。登録キー1907は、任意の数の登録キーサブパート(subparts)を生成するために使用されてよい。データマニピュレータは、登録キー1907から登録キーサブパートを生成してよい。これらの実施形態では、登録キー1907は、nに等しい任意の数のキャラクタを含んでよい。各登録キーサブパートは、n-1に等しい任意の数又は組合せのキャラクタを含んでよい。サーバ1950は、1又は複数のランダムなキャラクタストリングを生成してよい。登録キーサブパートの各々は、データマニピュレータ1944によって、1又は複数のランダムなキャラクタストリングと連結されてよい。幾つかの実施形態では、連結されたキャラクタストリングは変換されてよい1912。生成された連結キャラクタストリング又は変換された連結キャラクタストリングの各々は、1又は複数の第2のピア1975に送られてよい。
In some embodiments,
サーバ1950は、第1のピア1901からサーバキー1908を受け取ってよい。サーバキー1908は、任意の数のサーバキーサブパートを生成するために使用されてよい。データマニピュレータは、サーバキー1908からサーバキーサブパートを生成してよい。これらの実施形態では、サーバキー1908は、nに等しい任意の数のキャラクタを含んでよい。各サーバキーサブパートは、n-1に等しい任意の数又はキャラクタの組合せを含んでよい。サーバ1950は、1又は複数のランダムなキャラクタストリングを生成してよい。サーバキーサブパートの各々は、データマニピュレータ1944によって、1又は複数のランダムなキャラクタストリングと連結されてよい。幾つかの実施形態では、連結されたキャラクタストリングは変換されてよい1912。生成された連結キャラクタストリング又は変換された連結キャラクタストリングの各々は、1又は複数の第2のピア1975に送られてよい。
サーバ1950のデータマニピュレータ1944は、サーバキー1905、受信者コード1952、送信者コード1954、配布コード1956、又は登録キー1907の任意の組合せを組み合わせて、配布プレキー1959を生成してよい。幾つかの実施形態では、配布プレキーは、サーバキー1905、送信者コード1954、及び受信者コード1952を含んでおり、これらは、ユニットの連結によって結合されて1又は複数のキャラクタストリングが形成されてよい。連結は、サーバキー1905、送信者コード1954、及び受信者コード1952の各々をユニットとして使用することを含んでよく、サーバキー1905、送信者コード1954、及び受信者コード1952のピースをユニットとして使用することを含んでよい。配布プレキー1959は、データ変換器によって、配布キー1953を構成する1又は複数のキャラクタストリングに変換されてよい1912。幾つかの実施形態では、変換1912は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換1912は、暗号化方法を使用することを含んでよい。更に他の実施形態では、変換1912は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。配布キー1953は、処理マイグレータ1942によってサーバ1950のデータベース1957に格納されてよい。サーバ1950は、第2のピア1975に情報を送るように構成されてよい。幾つかの実施形態では、サーバ1950の処理マイグレータ1942は、配布キー1953及び配布コード1956をサーバ1950の送受信器1941にマイグレートしてよい。他の実施形態では、サーバ1950の送受信器1941は、配布キー1953、配布コード1956、及び登録方法に必要なその他の情報を第2のピア1975に送ってよい。幾つかの実施形態では、サーバ1950は、登録キー1907、サーバキー1905、及び配布キー1953の任意の組合せを、サーバ1950のデータベース1957に格納してよい。
サーバ1950は、2以上の配布キー1953を生成し、2以上の第2のピア1975にデータを送ってよい。幾つかの実施形態では、ピアリスト1958は、ネットワーク上の2以上の第2のピア1975のリストを含んでよい。第2のピアは、ネットワーク上にあり、サーバ1950とデータを送受信することができる任意のIoTデバイス、サーバ、又は任意のデバイスを含んでよい。サーバ1950は、各第2のピア1975に対して固有の配布コード1956を生成してよい。サーバ1950は、各第2のピア1975に対して固有の受信者コード1952を生成してよい。これらの実施形態では、各第2のピア1975のために生成された配布キー1953は、他の第2のピア1975のために生成された配布キー1953とは異なってよいが、第1のピア1901から受け取った基礎となるサーバキー1905は同じであってよい。
幾つかの実施形態によれば、登録キー1907が使用されて、配布プレキー1959が生成されてよい。これらの実施形態では、登録キー1907、送信者コード1954、受信者コード1952、及びサーバキー1905の任意の組合せが使用されて、配布プレキー1959が生成されてよい。
According to some embodiments, registration key 1907 may be used to generate
図17を再度参照すると、登録方法1700は、1又は複数のキーをローカルデータベースに格納することを含んでよい。幾つかの実施形態では、第2のピア1775は、第2のピア1775の送受信器を介してサーバ1750と情報を送受信するように構成されてよい。第2のピア1775は、第2のピア1775の送受信器を介してサーバ1750から配布キー1753を受け取ってよい。第2のピア1775は、サーバ1750から配布コード1756を受け取ってよい。幾つかの実施形態では、第2のピア1775は、サーバ1750から配布キー1753及び配布コード1756を受け取ってよい。配布キー1753及び配布コード1756は、第2のピア1775のメモリ1778に格納されてよい。第2のピア1775は、預託コード1776を生成してよい。預託コード1776は、任意の長さの1又は複数のキャラクタストリングであってよく、ランダムに生成されてよい。或いは、預託コード1776は、サーバ1750によって生成され、第2のピア1775によって受け取られてよい。預託コード1776及び配布キー1753は、ユニットの連結によって結合されて、預託プレキー1779を構成する1又は複数のキャラクタストリングが形成されてよい。連結は、預託コード1776と配布キー1753の各々をユニットとして使用することを含んでよく、預託コード1776と配布キー1753のピースをユニットとして使用することを含んでよい。預託プレキー1779は、預託キー1777を構成する1又は複数のキャラクタストリングに変換されてよい1712。幾つかの実施形態では、変換1712は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換1712は、暗号化方法を使用することを含んでよい。更に他の実施形態では、変換1712は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい預託キー1777は、第2のピア1775のメモリ1778に格納されてよい。幾つかの実施形態では、第2のピア1775は、預託キー1777及び配布コード1756をサーバ1750に送ってよい。他の実施形態では、第2のピア1775は、預託キー1777、配布コード1756、及び登録方法1700に必要な他の情報をサーバ1750に送ってよい。
Referring again to FIG. 17,
登録方法1700は、1又は複数のキーをサーバデータベースに格納することを更に含んでもよい。図19に示すように、サーバ1950の送受信器1941は、第2のピア1975から情報を受け取ってよい。幾つかの実施形態では、サーバ1950の送受信器1941は、配布コード1956を受け取ってよい。幾つかの実施形態では、サーバ1950の送受信器1941は、預託キー1977を受け取ってよい。他の実施形態では、サーバ1950の送受信器1941は、配布コード1956及び預託キー1977を受け取ってよい。更に別の実施形態では、サーバ1950の送受信器1941は、配布コード1956、預託キー1977、及び登録方法に必要な他の情報を受け取ってよい。配布コード1956及び預託キー1977は、処理マイグレータ1942によってサーバ1950のデータベース1957に格納されてよい。
特定の実施形態では、登録方法1700は、1又は複数のキーを作成することと、1又は複数のキーを配布することと、1又は複数のキーをローカルデータベースに格納することと、1又は複数のキーをサーバデータベースに格納することとを含んでよい。図17に図示されているように、登録方法1700は、第1のピア1701からの登録要求1702から始まってよい。登録要求1702は、1又は複数のサーバ1750との間で送受信されてよい。1又は複数のサーバは、登録データ1751を第1のピア1701に送ってよい。次に図18を参照すると、特定の実施形態では、第1のピア1801がサーバ1850から登録データを受け取ってよい。登録データは、クライアント登録コード1803と1又は複数の選択オブジェクトとを含んでよい。クライアント登録コード1803は、単一の8桁のキャラクタストリングを含んでよい。選択オブジェクトは、幾つかの画像を含んでよい。特定の実施形態では、選択オブジェクトは、60に等しい数の選択オブジェクトを含んでよい。各選択オブジェクトは、固有の選択コード1809を含んでよい。選択コード1809は、1又は複数のキャラクタストリングを含んでよく、特定の実施形態では、各選択コードは、5つのキャラクタからなるストリングを含んでよい。ユーザは、サーバ1850によって受け取られた選択オブジェクトから幾つかの選択オブジェクトを選択してよい。特定の実施形態では、ユーザは、6つの選択オブジェクトを選択してよい。ユーザによる選択オブジェクトの選択は、選択コード1809の集合からなるユーザ入力1804を生成してよく、それら選択コード1809は、各選択コード1809に関連付けられた特定の選択オブジェクトを選択することによって選択されてよい。特定の実施形態では、ユーザ入力1804は、6つの5キャラクタの選択コード1809を含んでいる。
In particular embodiments, the
ユーザ入力1804は、第1のグループ1810と第2のグループ1811とに分割されてよい。特定の実施形態では、第1のグループ1810と第2のグループ1811の各々は、3つの異なる選択コード1809を含んでいる。第1のグループ1810及び第2のグループ1811を構成する各選択コード1809は、1又は複数のキャラクタストリングに変換されてよい1812。特定の実施形態では、各選択コード1809は、ハッシュアルゴリズムを使用して変換されてよく、変換された選択コードの第1のグループ1813と変換された選択コードの第2のグループ1815とをまとめて含んでよい。変換された選択コードの第1のグループ1813及び変換された選択コードの第2のグループ1815の各々が結合されて、クライアントプレキー1814及びサーバプレキー1816の各々が生成されてよい。特定の実施形態では、変換された選択コードの第1のグループ1813を構成する3つの変換された選択コードが連結されて、クライアントプレキー1814を構成する1又は複数のキャラクタストリングが生成されてよい。同様に、変換された選択コードの第2のグループ1815を構成する3つの変換された選択コードが連結されて、サーバのプレキー1816を構成する1又は複数のキャラクタストリングが生成されてよい。クライアントプレキー1814はクライアントキー1806に、サーバプレキー1816はサーバキー1805に変換されてよい1812。特定の実施形態では、変換1812は、ハッシュアルゴリズムを使用することを含む。
登録キー1807は、クライアントキー1806、サーバキー1805、及びクライアント登録コード1803の組合せを用いて生成されてよい。特定の実施形態では、クライアントキー1806は、第1の部分1817及び第2の部分1818に、サーバキー1805は、第1の部分1819及び第2の部分1820に分割される。第1のプレキー1821は、クライアントキー1806の任意の部分とサーバキー1805の任意の部分とを連結することで1又は複数のキャラクタストリングを形成することによって生成されてよい。第1のプレキー1821は、第2のプレキー1822を構成する1又は複数のキャラクタストリングに変換されてよい1812。特定の実施形態では、変換1812は、ハッシュアルゴリズムを使用することを含む。登録プレキー1823は、クライアント登録コード1803と第2のプレキー1822を連結して、1又は複数のキャラクタストリングを形成することによって生成されてよい。登録プレキー1823は、登録キー1807に変換されてよく、変換1812は、ハッシュアルゴリズムを使用することを含んでよい。特定の実施形態では、クライアントキー1806及びクライアント登録コード1803は、第1のピア1801のメモリ1808に格納されてよい。更に、サーバキー1805及び登録キー1807は、1又は複数のサーバ1850に送られてよい。
登録方法は、1又は複数のキーを配布することを含んでよい。図19に示す特定の実施形態では、サーバ1950は、第1のピア1901から登録キー1907及びサーバキー1905を受け取ってよい。登録キーは、サーバ1950のデータベース1957に格納されてよい。サーバ1950は、ネットワーク上の第2のピア1975のリストを含むピアリスト1958を生成してよい。第2のピア1975の各々について、サーバ1950は、受信者コード1952及び配布コード1956を生成してよい。特定の実施形態では、受信者コード1952及び配布コード1956は、特定の第2のピア1975及び特定のトランザクションの両方に固有であってよい。更に、サーバ1950は、送信者コード1954を生成してよく、送信者コード1954は、特定のサーバ1950に固有であってよい。特定の実施形態では、受信者コード1952、送信者コード1954、及びサーバキー1905は、連結によって結合されて、配布プレキー1959を構成する1又は複数のキャラクタストリングが生成されてよい。配布プレキー1959は、配布キー1953に変換されてもよい1912。特定の実施形態では、変換1912は、ハッシュアルゴリズムを使用することを含んでよい。幾つかの実施形態では、複数の固有の配布キー1953が生成されてよく、各々は、異なる受信者コード1952を含んでおり、ピアリスト1958からの関連する異なる配布コード1956を有する。固有の配布キー1953の各々は、最終的には、異なる第2のピア1975に送られてよい。特定の実施形態では、複数の固有の配布キー1953が同一のサーバキー1905から生成されて、固有の配布キー1953の各々は、ネットワーク上の別個の第2のピア1975に送られる。
Registration methods may include distributing one or more keys. In the particular embodiment shown in FIG. 19,
登録方法は、図17に図示されているように、1又は複数のキーをローカルデータベースに格納することを更に含んでよい。特定の実施形態では、第2のピア1775は、サーバ1750から配布キー1753及び配布コード1756を受け取ってよい。この実施形態では、第2のピア1775は、ネットワーク内の複数の第2のピア1775のうちの1つであってよく、上述したように、第1のピア1701とサーバ1750の間の同じトランザクションから生じる配布キー1753及び配布コード1756を受け取る。第2のピア1775は、配布キー1753及び配布コード1756を第2のピア1775のメモリ1778に格納してよい。更に、第2のピア1775は、預託コード1776を生成してよい。特定の実施形態では、預託コード1776は、8つのキャラクタの単一のストリングを含んでいる。預託コード1776と配布キー1753は、連結により結合されて、預託プレキー1779を構成する1又は複数のキャラクタストリングが生成されてよい。預託プレキー1779は、預託キー1777に変換されてよい1712。特定の実施形態では、変換1712は、ハッシュアルゴリズムを使用することを含んでよい。第2のピア1775は、1又は複数のサーバ1750に情報を送ってよい。特定の実施形態では、複数の第2のピア1775は、サーバ1750に情報を送ってよい。情報は、配布コード1756、預託キー1777、及び登録プロセス1700を実行するために必要な他の任意の情報を含んでよい。
The registration method may further include storing one or more keys in a local database, as illustrated in FIG. In particular embodiments,
登録方法1700は、サーバデータベースに1又は複数のキーを格納することを含んでよい。幾つかの実施形態では、サーバ1750は、1又は複数の第2のピア1775から情報を受け取るように構成されてよい。特定の実施形態では、サーバ1750は、配布コード1756及び預託キー1777を含む情報を複数の第2のピア1775から受け取ってよい。サーバ1750は、配布コード1756及び預託キー1777をデータベース1757に格納してよい。図19を参照すると、配布コード1956及び預託キー1977は、データベース1957内に格納されたピアリスト1958に格納されてよい。特定の実施形態では、配布コード1956及び預託キー1977は、格納された配布キー1953及び受信者コード1952と対にされており、それは、第1のピア1901と、サーバ1950と、特定の第2のピア1975との間で行われたトランザクションに固有のものであってよい。
認証方法は、図20に示すように、ログイン方法を含んでよい。ログイン方法2000は、1又は複数のログインキーを作成すること、1又は複数の検証キーを配布し、ローカルデータベース内の検証キーを検証すること、検証プロセスを有効にすることから構成されてもよい。更に、ログイン方法2000は、1又は複数の第1のピア2001と、1又は複数のサーバ2050と、1又は複数の第2のピア2075との間の通信を含んでよい。
Authentication methods may include login methods, as shown in FIG. The
ログイン方法2000は、第1のピア2001を含んでよく、第1のピアは、ユーザと対話するように構成されてよい。第1のピア2001は、ログイン要求2002してよく、ログイン要求2002は、1又は複数のサーバ2050に送られてよい。サーバ2050は、ログイン要求2002を受け取り、ログインデータ2051を生成してよい。幾つかの実施形態では、ログインデータ2051は、ログインソルト2024を構成してよい。ログインソルトは、文字、数字、記号、又はそれらの任意の組合せからなる1又は複数のキャラクタを含んでよい。幾つかの実施形態では、ログインデータ2051は、ユーザ選択オブジェクトを含んでよい。他の実施形態では、ログインデータ2051は、1又は複数のログインソルト2024と、ユーザ選択オブジェクトと、ログイン方法2000に必要な他の任意のデータとを含んでよい。
1又は複数のログインキーを生成することは、ユーザ入力2004からサーバキー2005及びクライアントキー2006を生成することを更に含んでよい。幾つかの実施形態では、サーバキー2005及びクライアントキー2006が使用されて、ログインキー2099が生成されてよい。他の実施形態では、サーバキー2005、クライアントキー2006、及び少なくともログインソルト2024が、ログインキー2099を生成するために使用されてよい。他の実施形態では、クライアントキー2006、サーバキー2005、及びログインソルト2024の異なる組合せが、ログインキー2099を生成するために使用されてよい。例えばクライアントキー2006、ログインソルト2024のような幾らかの情報が、第1のピア2001のメモリ2008に格納されてよい。更に、1又は複数のログインキーを生成することは、第1のピア2001からサーバ2050に情報を転送することを含んでよい。幾つかの実施形態では、ログインキー2099及びサーバキー2005がサーバ2050に転送される。
Generating one or more login keys may further include generating a
また、図20に示すように、1又は複数の検証キーを配布することは、サーバ2050にて第1のピア2001から情報を受け取ることを含んでよい。幾つかの実施形態では、サーバ2050で受け取った情報は、ログインキー2099及びサーバキー2005を含んでよい。サーバ2050は、受信者コード2052を生成してよい。更に、サーバ2050は、送信者コード2054を生成してよい。更に、サーバ2050は、配布コード2056を生成してよい。サーバキー2005、受信者コード2052、及び送信者コード2054が使用されて検証キー2062が生成されてよい。幾つかの実施形態では、検証キー2062は、1又は複数のサーバキー2005、受信者コード2052、検証ソルト2024、又は送信者コード2054、或いは、それらの任意の組合せから生成されてよい。幾つかの情報、例えば、受信者コード2052、検証キー2062は、サーバ2050のデータベース2057に格納されてよい。幾つかの実施形態では、検証キー2062は、サーバ2050のデータベース2057に格納されなくてもよい。複数の検証キーを配布することは、サーバ2050から少なくとも1つの第2のピア2075に情報を転送することを更に含んでよい。幾つかの実施形態では、検証キー2062及び配布コード2056は、少なくとも1つの第2のピア2075に転送される。
Also, as shown in FIG. 20, distributing one or more verification keys may include receiving information from
ログイン方法2000は、ローカルデータベース上で1又は複数の検証キーを検証することを更に含んでよい。図20に図示されているように、少なくとも1つの第2のピア2075は、サーバ2050から情報を受け取ってよい。幾つかの実施形態では、情報は、検証キー2062及び配布コード2056を含んでよい。他の実施形態では、情報は、検証キー2062、配布コード2056、及び検証ソルト2063を含んでよい。第2のピア2075は、配布コード2056と検証キー2062の任意の組合せを使用して、対応する配布キーが第2のピア2075のメモリ2078に格納されている可能性があることを突き止めて確認してよい。格納された配布キーが使用されて、確認キー2081が生成されてよい。幾つかの実施形態では、格納された配布キー2053と、サーバ2050から受け取った検証ソルト2063とが使用されて、確認キー2081が生成されてよい。第2のピア2075は、サーバ2050に情報を送ってよく、この情報は、確認キー2081、配布コード2056、及びログイン方法2000に必要な他の情報の任意の組合せを含んでよい。
検証プロセスを有効にすることは、第2のピア2075から情報を受け取り、受け取った情報をサーバ2050のデータベース2057に格納されている情報と比較することを含んでよい。幾つかの実施形態では、サーバ2050は、第2のピア2075から情報を受け取る。受け取った情報は、確認キー2081と、結果と、配布コード2056と、サーバ2050による情報の保存又は比較に、又は第2のピア2075の特定に必要な他の情報とを含んでよい。
Enabling the verification process may include receiving information from
図21に示されているように、1又は複数のログインキーを生成すること2100は、幾つかの実施形態では、第1のピア2101で行われてよい。第1のピア2101は、任意のIoTデバイス、即ち、ネットワークに接続し、データを送る能力を有する任意のデバイスであってよく、携帯電話、パーソナルアシスタント、ボタン、ホームセキュリティシステム、家電製品などを含むがこれらに限定されない。第1のピア2101は、サーバ2150からログインを要求してよい。幾つかの実施形態では、サーバ2150の送受信器は、ログインデータを第1のピア2101に送ってよい。ログインデータは、第1のピア2101の送受信器2141で受け取られてよく、第1のピア2101でログイン方法を開始するために必要なデータを含んでよい。幾つかの実施形態では、ログインデータは、ログインソルト2124を構成してよい。他の実施形態では、ログインデータは、ログインソルト2124と、ユーザ入力2104の前駆体として機能する付加的なデータとを含んでよい。ログインソルト2124は、任意の長さの1又は複数のキャラクタストリングを含んでよい。
As shown in FIG. 21, generating 2100 one or more login keys may be performed at a
また、図21に示すように、ユーザ入力2104は、情報の離散的なユニットを構成する任意の形態のユーザ生成データを含んでよい。幾つかの実施形態では、ユーザ入力2104は、例えば、指紋、虹彩などの生体情報データを含んでいる。それらの実施形態では、生体情報データは、識別子を含む情報の離散的なユニットに分割されてよい。識別子は、固有の選択コード2109に変換されてよい。
Also, as shown in FIG. 21,
他の実施形態では、ユーザ入力2104は、1又は複数の選択オブジェクトを含んでよい。1又は複数の選択オブジェクトは、画像、アイコン、トークン、ボタン、或いは、ユーザが選択オブジェクトのグループから1又は複数の選択オブジェクトを選択することを可能にする任意の他のオブジェクトであってよい。選択オブジェクトは、第1のピア2101の表示装置2143に表示されてよく、任意の数のキャラクタ、例えば、文字、数字、記号を含む選択コード2109に変換されてよい。特定の実施形態では、選択オブジェクトは画像であって、サーバ2150から受け取られてよい。各画像には固有の選択コード2109が割り当てられており、選択オブジェクトの組合せのユーザによる選択は、選択コード2109の組合せを含むユーザ入力2104を生成し、当該組合せは、ユーザによる選択オブジェクトの選択に固有である。
In other embodiments,
幾つかの実施形態では、ユーザは、選択コードの数がnに等しい2つ以上の選択コード2109を含むユーザ入力2104を生成してよい。選択コード2109は、データマニピュレータ2144によって第1のグループ2110と第2のグループ2111とに分割されてよい。ここで、第1のグループ2110は、1乃至n-1個の選択コード2109を含んでおり、第2のグループ2111は、1乃至n-1個の選択コード2109を含んでいる。第1のグループ2110及び第2のグループ2111の各選択コード2109は、データ変換器2145によって1又は複数のキャラクタストリングに個別に変換されてよく2112、その結果、変換された選択コードの第1のグループ2113と変換された選択コードの第2のグループ2115とが得られる。幾つかの実施形態では、変換2112は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換2112は、暗号化手段を使用することを含んでよい。更に他の実施形態では、変換2112は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。変換された選択コードの第1のグループ2113が使用されて、クライアントプレキー2114が生成されてよい。変換された選択コードの第1のグループ2113を構成する個々の変換された選択コードは、データマニピュレータ2144によって結合されて、クライアントプレキー2114を構成する1又は複数のキャラクタストリングが形成されてよい。幾つかの実施形態では、個々の変換された選択コードは、ユニットの連結によって結合されてよい。連結は、変換された個々の選択コードをユニットとして使用することを含んでよく、変換された個々の選択コードの一部をユニットとして使用することを含んでよい。クライアントプレキー2114は、データ変換器2145によってクライアントキー2106に変換されてよい2112。幾つかの実施形態では、変換2112は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換2112は、暗号化手段を使用することを含んでよい。更に他の実施形態では、変換2112は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。クライアントキー2106は、処理マイグレータ2147によって、第1のピア2101のメモリユニット2108に格納されてよい。ログイン方法によって生成されたクライアントキー2106は、処理検証器2147によって、アイデンティティの登録処理の間に第1のピア2101のメモリ2108に格納されたクライアントキー2106と比較されてよい。
In some embodiments, a user may generate
変換された選択コードの第2のグループ2115が使用されて、サーバプレキー2116が生成されてよい。変換された選択コードの第2のグループ2115を構成する個々の変換された選択コードは、データマニピュレータ2144によって結合されて、サーバプレキー2116を構成する1又は複数のキャラクタストリングが形成されてよい。幾つかの実施形態では、個々の変換された選択コードは、ユニットの連結によって結合されてよい。連結は、変換された個々の選択コードをユニットとして使用することを含んでよく、変換された個々の選択コードの一部をユニットとして使用することを含んでよい。サーバプレキー2116は、データ変換器2145によってサーバキー2105に変換されてよい2112。幾つかの実施形態では、変換2112は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換2112は、暗号化手段を使用することを含んでよい。更に他の実施形態では、変換2112は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。
A
幾つかの実施形態では、ログインキー2199が生成されてよい。クライアントキー2106及びサーバキー2105の各々は、データマニピュレータ2144によって、クライアントキーの第1の部分2117、クライアントキーの第2の部分2118、サーバキーの第1の部分2119、及びサーバキーの第2の部分2120に分割されてよい。クライアントキーの第1の部分2117及びクライアントキーの第2の部分2118は、クライアントキー2106を構成するキャラクタの異なる部分を含んでよい。特定の実施形態では、クライアントキーの第1の部分2117及びクライアントキーの第2の部分2118の各々は、クライアントキー2106の半分であってよい。サーバキーの第1の部分2119及びサーバキーの第2の部分2120は、サーバキー2105を構成するキャラクタの異なる部分を含んでよい。特定の実施形態では、サーバキーの第1の部分2119及びサーバキーの第2の部分2120の各々は、サーバキー2105を構成するキャラクタの半分であってよい。クライアントキーの第1の部分2117、クライアントキーの第2の部分2118、サーバキーの第1の部分2119、及びサーバキーの第2の部分2120は、ユニットの連結を介してデータマニピュレータ2144によって結合されて、第1のプレキー2121を構成する1又は複数のキャラクタが形成されてよい。連結は、クライアントキーの第1の部分2117、クライアントキーの第2の部分2118、サーバキーの第1の部分2119、及びサーバキーの第2の部分2120の各々をユニットとして用いることを含んでよく、或いは、クライアントキーの第1の部分2117、クライアントキーの第2の部分2118、サーバキーの第1の部分2119、及びサーバキーの第2の部分2120のピースをユニットとして用いることを含んでよい。
In some embodiments, a
第1のプレキー2121は、データ変換器2145によって、第2のプレキー2122を構成する1又は複数のキャラクタストリングに変換されてよい2112。幾つかの実施形態では、変換2112は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換2112は、暗号化手段を使用することを含んでよい。更に他の実施形態では、変換2112は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。第2のプレキー2122が使用されて、登録プレキー2123が生成されてよい。幾つかの実施形態では、第2のプレキー2122とクライアント登録コード2103は、データマニピュレータ2144によって連結されて、登録プレキー2123を構成する1又は複数のキャラクタストリングが形成されてよい。連結は、第2のプレキー2122とクライアント登録コード2103の各々をユニットとして用いることを含んでよく、第2のプレキー2122とクライアント登録コード2103のピースをユニットとして用いることを含んでよい。クライアント登録コード2103は、処理マイグレータ2142によって登録処理中に第1のピア2101のメモリ2108に格納されてよい。登録プレキー2123は、データ変換器2144によって、登録キー2107を構成する1又は複数のキャラクタストリングに変換されてよい2112。幾つかの実施形態では、変換2112は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換2112は、暗号化手段を使用することを含んでよい。更に他の実施形態では、変換2112は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。幾つかの実施形態では、登録キー2107は、図17に示す登録方法1700の間に第1のピア1701によって生成された登録キー1707と同一であってよい。図21を参照すると、登録キー2107が使用されてログインキー2199が生成されてよい。幾つかの実施形態では、登録キー2107とログインソルト2124が使用されて、ログインキー2199が生成されてよい。登録キー2107及びログインソルト2024は、データマニピュレータ2144によって連結されて、ログインプレキー2198を構成する1又は複数のキャラクタストリングが形成されてよい。連結は、登録キー2107とログインソルト2024の各々をユニットとして用いることを含んでよく、登録キー2107とログインソルト2024のピースをユニットとして用いることを含んでよい。ログインプレキー2198が使用されて、ログインキー2199が生成されてよい。幾つかの実施形態では、ログインプレキー2198は、データ変換器2145によってログインキー2199に変換されてよい2112。幾つかの実施形態では、変換2112は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換2112は、暗号化手段を使用することを含んでよい。更に他の実施形態では、変換2112は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。
The first pre-key 2121 may be converted 2112 by a
第1のピア2101は、サーバ2150に情報を送ってよい。幾つかの実施形態では、第1のピア2101の送受信器2141は、ログインキー2199及びサーバキー2105をサーバ2150に送ってよい。他の実施形態によれば、第1のピア2101の送受信器2141は、ログインキー2199と、サーバキー2105と、ログイン方法に必要な他の情報とをサーバ2150に送ってよい。
ログイン方法は、1又は複数の検証キーを配布することを更に含んでよい。図22に図示されているように、サーバ2250は、第1のピア2201から情報を受け取ってよい。幾つかの実施形態では、サーバ2250の送受信器2241は、第1のピア2201からログインキー2299を受け取ってよい。サーバ2250の送受信器2241は、第1のピア2201からサーバキー2205を受け取ってよい。サーバ2250の送受信器2241は、ログインキー2299及びサーバキー2205の両方を第1のピア2201から受け取ってよい。幾つかの実施形態では、サーバ2250は、比較ログインキー2260を生成してよい。比較ログインキー2260は、サーバ2250のデータベース2257に格納されている登録キー2207を登録方法中に使用することで生成されてよい。サーバ2250の処理マイグレータ2242は、登録キー2207及びログインソルト2224をデータベース2257からマイグレートしてよい。サーバ2250のデータマニピュレータ2244は、連結により登録キー2207とログインソルト2224を結合して、比較ログインプレキーを生成してよい。比較ログインプレキーは、データ変換器2245によって比較ログインキー2260に変換されてよい2112。幾つかの実施形態では、変換2212は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換2212は、暗号化方法を使用することを含んでよい。更に他の実施形態では、変換2212は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。サーバ2250の処理検証器2247は、第1のピア2201が送ったログインキー2299と比較ログインキー2260とを比較して、第1のピア2201と通信してもよいか否かを判定してよい。
The login method may further include distributing one or more verification keys. As illustrated in FIG. 22,
ログインキー2299は、処理マイグレータ2242によってサーバ2250のデータベース2257に格納されてよい。サーバは、データマイグレータ2242を使用して、以前に格納されたピアリスト2258にアクセスしてよい。格納されたピアリスト2258は、例えば第1のピア2201、第2のピア2275のようなネットワーク上のピアデバイスのリストを含んでよい。ピアリストはまた、受信者コード2252及び配布コード2256を含んでよく、これらは、任意の長さの1又は複数のキャラクタストリングを含んでよい。更に、サーバ2250の処理生成器2246は、送信者コード2254を生成してよく、これもまた、任意の長さの1又は複数のキャラクタストリングを含んでよい。
Login key 2299 may be stored in
サーバ2250のデータマニピュレータ2244は、サーバキー2205、受信者コード2252、送信者コード2254、配布コード2256、又はログインキー2299の任意の組合せを組み合わせて、配布プレキー2259を生成してもよい。幾つかの実施形態では、配布プレキー2259は、サーバキー2205、送信者コード2254、及び受信者コード2252を含んでおり、これらは、ユニットの連結によって結合されて、1又は複数のキャラクタストリングが形成されてよい。連結は、サーバキー2205、送信者コード2254、受信者コード2252の各々をユニットとして用いることを含んでよく、サーバキー2205、送信者コード2254、受信者コード2252のパーツをユニットとして用いることを含んでよい。配布プレキー2259は、データ変換器2245によって、配布キー2253を構成する1又は複数のキャラクタストリングに変換されてよい2112。幾つかの実施形態では、変換2212は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換2212は、暗号化方法を使用することを含んでよい。更に他の実施形態では、変換2212は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。配布キー2253は、サーバ2250のデータベース2257に格納されてよい。検証プレキー2261は、サーバ2250のデータマニピュレータ2244によって生成されてよい。幾つかの実施形態では、配布キー2253と、サーバ2250の処理生成器2246によって生成され、任意の数のキャラクタを含んでいる検証ソルト2263とが連結されて、検証プレキー2261が生成されてよい。検証プレキー2261は、データ変換器2245によって検証キー2262に変換されてよい2212。幾つかの実施形態では、変換2212は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換2212は、暗号化方法を使用することを含んでよい。更に他の実施形態では、変換2212は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。
サーバ2250は、第2のピア2275に情報を送るように構成されてよい。幾つかの実施形態では、サーバ2250の送受信器2241は、検証キー2262及び配布コード2256を第2のピア2275に送ってよい。他の実施形態では、サーバ2250の送受信器2241は、検証キー2262、配布コード2256、検証ソルト2263、及びログイン方法2000に必要な他の情報を第2のピア2275に送ってよい。幾つかの実施形態では、サーバ2250は、配布キー2253、検証ソルト2263、及び配布コード2256の任意の組合せを第2のピア2275に送ってよい。
サーバ2250は、1又は複数の検証キー2262を生成し、1又は複数の第2のピア2275にデータを送ってよい。幾つかの実施形態では、ピアリスト2258は、ネットワーク上の1又は複数の第2のピア2275のリストを含んでよい。第2のピアは、ネットワーク上にあって、サーバ2250からデータを送受信することができる任意のIoTデバイス、サーバ、又は任意のデバイスを含んでよい。サーバ2250は、各第2のピア2275に対して固有の配布コード2256を生成してよい。サーバ2250は、各第2のピア2275に対して固有の受信者コード2252を生成してよい。これらの実施形態では、各第2のピア2275のために生成される検証キー2262は、他の第2のピア2275のために生成される検証キー2262とは異なってよいが、第1のピア2201から受け取った基礎となるサーバキー2205は同一であってよい。検証キー2262は、サーバ2250のデータベース2257に格納されても、格納されていなくてもよい。
ここで図23を参照すると、ログイン方法は、ローカルデータベース上の1又は複数のログインキーを検証することを含んでよい。幾つかの実施形態では、第2のピア2375は、情報を受け取ってサーバ2350に送るように構成されてよい。第2のピア2375の送受信器2341は、サーバ2350から検証キー2362を受け取ってよい。第2のピア2375の送受信器2341は、サーバ2350から配布コード2356を受け取ってよい。幾つかの実施形態では、第2のピア2375の送受信器2341は、検証キー2362、配布コード2356、及び検証ソルト2363をサーバ2350から受け取ってよい。配布コード2356は、第2のピア2375のメモリ2378に格納されている全ての配布コード2356にわたって、処理検証器2347によって比較されてよい。サーバ2350から受け取った配布コード2356が、第2のピア2375のメモリ2378に格納されている配布コード2356と同一である場合、第2のピア2375の処理生成器2346は、肯定的である結果2382を生成してよい。第2のピア2375が受け取った配布コード2356が、第2のピア2375のメモリ2378に格納されている配布コード2356と同一でない場合、第2のピア2375の処理生成器2346は、否定的である結果2382を生成してよい。幾つかの実施形態では、検証キー2362はまた、同一の配布コード2356の場所を確認するために使用される。第2のピア2375が、第2のピア2375のメモリ2378に格納された1又は複数の配布コード2356が、サーバ2350から受け取った配布コード2356と同一であると判定した場合、第2のピア2375の処理マイグレータ2342は、一致する配布コード2356に関連する配布キー2353をメモリ2378から削除してもよい。第2のピア2375のメモリ2378から削除された配布キー2353と検証ソルト2363とがデータマニピュレータ2344で使用されて、連結によって確認プレキー2380が生成されてよい。確認プレキー2380は、データ変換器2345によって確認キー2381に変換されてよい2312。幾つかの実施形態では、変換2312は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換2312は、暗号化方法を使用することを含んでよい。更に他の実施形態では、変換2312は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。
Referring now to Figure 23, the login method may include verifying one or more login keys on a local database. In some embodiments,
幾つかの実施形態では、第2のピア2375は、サーバ2350から配布キーと検証ソルト2363を受け取ってよい。第2のピア2375は、配布キー及び検証ソルト2363を連結して検証プレキーを生成することで、第2のピア2375にて検証キー2362を生成してよい。検証プレキーは、検証キー2362に変換されてよい2312。
In some embodiments,
幾つかの実施形態では、第2のピア2375は、比較検証キー2383を生成してよい。第2のピア2375は、サーバ2350から受け取った検証ソルト2363と格納されている配布キー2353とを連結することにより比較検証プレキーを生成することで、比較検証キー2383を生成してよい。比較検証プレキーは、比較検証キーに変換2312されてよい。幾つかの実施形態では、比較検証キー2383は、受け取った検証キー2362と処理検証器2347によって比較されて、結果2382が生成されてよい。幾つかの実施形態では、結果2382は、検証キー2362と比較検証キー2383とを比較して生成された結果と、受け取られた配布コード2356と格納されている配布コード2356とを比較して生成された結果とを含んでよい。確認キー2381は、検証ソルト2363と、第2のピア2375のメモリ2378から取得された預託キー2377から生成されてよい。預託キー2377と検証ソルト2363は、データマニピュレータ2344によって連結されて確認プレキー2380が生成されてよい。確認プレキー2380は、確認キー2381に変換2312されてよい。確認キー2381、配布コード2356、及び結果2382の任意の組合せは、第2のピア2375からサーバ2350に送られてよい。
In some embodiments,
第2のピア2375は、サーバ2350にデータを送るように構成されてよい。幾つかの実施形態では、第2のピア2375の送受信器2341は、結果2382、配布コード2356、及び確認キー2381の任意の組合せをサーバ2350に送ってよい。幾つかの実施形態では、第2のピア2375は、トランザクションに関連付けられている全てのデータを削除するように構成されてよい。特定の実施形態では、第2のピア2375は、第2のピア2375のメモリ2378又は第2のピア2375のプロセッサから、配布コード2356、預託キー2377、配布キー2353、検証キー2362、検証ソルト2326、確認プレキー2380、及び確認キー2381の任意の組合せを削除してよい。幾つかの実施形態では、データの削除は、サーバ2350へのデータの送信と同時に起こってよい。他の実施形態では、データの削除は、サーバ2350にデータを送った後に起こってよい。
A
ここで図24を参照すると、ログイン方法は、検証プロセス2400を有効にすることを更に含んでよい。サーバ2450は、1又は複数の第2のピア2475からデータを受け取るように構成されてよい。幾つかの実施形態では、サーバ2450の送受信器2441は、確認キー2481、結果2482、及び配布コード2456の任意の組合せを受け取ってよい。サーバ2450は、第2のピア2475から受け取った結果2482を承認してよい。結果が肯定的である場合、サーバ2450の処理検証器2447は、第2のピア2475から受け取った配布コード2456を、サーバ2450のデータベース2457に格納されている全て又は一部の配布コード2456と比較してよい。サーバ2450のデータベース2457に格納されている配布コード2456が第2のピア2475から受け取った配布コード2456と同一である場合、その後、サーバ2450の処理マイグレータ2442は、検証ソルト2463と、配布コード2456に関連付けられてサーバ2450のデータベース2457に格納されている可能性のある配布キー2453との任意の組合せを取得してよい。幾つかの実施形態では、取得された配布キー2453は、登録プロセス中に格納された配布キー2453であってもよい。取得された検証ソルト2463と取得された配布キー2453とは、データマニピュレータ2444によって使用されて、検証ソルト2463と配布キー2453とを連結して検証プレキー2461が生成されてよい。検証プレキー2461は、データ変換器2445によって検証キー2462に変換2412されてよい。幾つかの実施形態では、変換2412は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換2412は、暗号化方法を使用することを含んでよい。更に他の実施形態では、変換2412は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。
Referring now to FIG. 24, the login method may further include enabling
サーバ2450の処理検証器2447は、生成された検証キー2462を第2のピア2475から受け取った確認キー2481と比較し、処理生成器2246が認証結果2464を生成してよい。検証キー2462が第2のピア2475から受け取った確認キー2481と同一である場合、結果は肯定的、例えば認証成功であってよい。検証キー2462が、第2のピア2475から受け取った確認キー2481と同一でない場合、認証結果2464は、否定的、例えば、認証失敗又は脅威であってよい。サーバ2450の処理マイグレータ2442は、認証結果2464をデータベース2457に格納してよい。幾つかの実施形態では、認証結果2464は、登録方法の間に生成された関連する配布キー2453と共に格納される。
サーバ2450は、新しい配布キー2453を1又は複数の第2のピア2475に送ってよい。図19を参照すると、サーバ1950は、サーバ1950のデータベース1957に新しいピアリスト1958を生成してよい。幾つかの実施形態では、サーバ1950は、新しい受信者コード1952と新しい配布コード1956の任意の組合せを割り当ててよく、新しい受信者コード1952と新しい配布コード1956の任意の組合せを使用して、1又は複数の配布キー1900を配布することと同一であってもよい方法で新しい配布キー1953を生成してよい。サーバ1950は、新たに生成された配布キー1953を、第2のピア1975に送ってよく、第2のピア1975は、以前に配布キー1953を格納していた第2のピア1975とは異なってよい。
ウェブ認証方法は、バーコードを生成することと、1又は複数のキーを生成することと、ウェブセッションを確立することとを含んでよい。更に、ウェブ認証システムは、1又は複数の第1のデバイス、第2のデバイス、第1のサーバ、第2のサーバ、及びインターネットアプリケーションの間での通信を含んでよい。1又は複数の第1のデバイス、第2のデバイス、第1のサーバ、及び第2のサーバは、少なくともプロセッサと送受信器とを含んでよい。1又は複数の第1のデバイス及び1又は複数の第2のデバイスは更に、それぞれのメモリを含んでよい。幾つかの実施形態では、1又は複数の第1のデバイス及び1又は複数の第2のデバイスの各々は、表示装置を含んでよい。1又は複数の第1のデバイス及び1又は複数の第2のデバイスの各々は、バーコードをスキャンするための手段を含んでよい。1又は複数の第1のサーバ及び第2のサーバは、更にデータベースを含んでよい。 A web authentication method may include generating a barcode, generating one or more keys, and establishing a web session. Additionally, the web authentication system may include communication between one or more first devices, second devices, first servers, second servers, and Internet applications. One or more of the first device, second device, first server, and second server may include at least a processor and a transceiver. The one or more first devices and the one or more second devices may further include respective memories. In some embodiments, each of the one or more first devices and the one or more second devices may include a display. Each of the one or more first devices and the one or more second devices may include means for scanning barcodes. One or more of the first and second servers may further include a database.
第1のデバイス、第2のデバイス、第1のサーバ、及び第2のサーバの送信機は、外部ソースと情報を送受信するように構成されてよい。幾つかの実施形態では、第1のデバイスは、第2のデバイス、第1のサーバ、及び第2のサーバの任意の組合せとの間で情報を送受信するように構成されてよい。第1のサーバ及び第2のサーバは、第1のデバイスと第2のデバイスの両方との間で情報を送受信するように構成されてよく、第2のデバイスは、第1のサーバ、第1のデバイス、及び第2のサーバの任意の組合せとの間で情報を送受信するように構成されてよい。第1のデバイス及び第2のデバイスのメモリと、サーバのデータベースとは、情報を格納し、情報の取得を可能にするように構成されてよい。表示装置は、更に、ユーザがディスプレイと対話する、例えば、データの入力、キャラクタの選択、オブジェクトの選択などを行うための手段を含んでよい。インターネットアプリケーションは、第1のサーバ、第2のサーバ、第1のデバイス、及び第2のデバイスの任意の組合せから情報を送信又は受信するように構成されてよい。 The transmitters of the first device, the second device, the first server, and the second server may be configured to transmit information to and receive information from an external source. In some embodiments, a first device may be configured to send and receive information to and from any combination of a second device, a first server, and a second server. The first server and the second server may be configured to send and receive information to and from both the first device and the second device, the second device communicating with the first server, the first and any combination of the second server. The memory of the first and second devices and the database of the server may be configured to store information and enable retrieval of information. The display device may further include means for a user to interact with the display, eg, enter data, select characters, select objects, and the like. The Internet application may be configured to send or receive information from any combination of the first server, second server, first device and second device.
第1のデバイス、第2のデバイス、第1のサーバ、及び第2のサーバのプロセッサは、処理マイグレータ、データマニピュレータ、データ変換器、処理生成器、及び処理検証器を含んでよい。処理マイグレータは、第1のデバイス、第2のデバイス、第1のサーバ、又は第2のサーバ内の1つの構成要素から、第1のデバイス、第2のデバイス、第1のサーバ又は第2のサーバ内の別の構成要素にデータをマイグレートするように構成されてよい。例えば、限定ではないが、処理マイグレータは、第1のデバイスのメモリから第1のデバイスのプロセッサにデータを移動させるように、或いは、第2のデバイスのプロセッサから第2のデバイスの送受信器にデータを移動させるように構成されてよい。データマニピュレータは、データを操作するように構成されていてよく、例えば、結合、分離、分離及び再結合、リオーダなどの処理を行うように構成されていてよい。例えば、限定ではないが、第1のデバイスのデータマニピュレータは、1又は複数のキャラクタストリングを第1の部分と第2の部分に分割するように構成されてよく、サーバのデータマニピュレータは、データの第1の部分とデータの第2の部分とを結合して、1又は複数のキャラクタストリングを生成するように構成されてよい。 The processors of the first device, second device, first server, and second server may include process migrators, data manipulators, data transformers, process generators, and process verifiers. The process migrator migrates the first device, the second device, the first server, or the second device from a component in the first device, the second device, the first server, or the second server. It may be configured to migrate data to another component within the server. For example, without limitation, the processing migrator may move data from the memory of the first device to the processor of the first device, or from the processor of the second device to the transceiver of the second device. may be configured to move the The data manipulator may be configured to manipulate data, for example, to perform operations such as combining, separating, separating and recombining, reordering, and the like. For example, and without limitation, the data manipulator of the first device may be configured to divide the one or more character strings into a first portion and a second portion, and the data manipulator of the server may divide the data into a first portion and a second portion. It may be configured to combine the first portion and the second portion of data to produce one or more character strings.
データ変換器は、第1のキャラクタストリングを第2のキャラクタストリングに変換するように構成されてよく、第1のキャラクタストリング及び第2のキャラクタストリングの各々は、長さ、構成、又は配置のうちの任意の1又は複数が異なってよい。幾つかの実施形態では、データ変換器は、ハッシュアルゴリズムを第1のキャラクタストリングに適用するように構成されてよい。他の実施形態では、データ変換器は、第1のキャラクタストリングに暗号化プロトコルを適用するように構成されてよい。更に他の実施形態では、データ変換器は、第1のキャラクタストリングに復号プロトコルを適用するように構成されてよい。他の実施形態ではまた、データ変換器は、ハッシュアルゴリズム、暗号化プロトコル、復号プロトコル、又はデータ変換の他の既知方法の任意の組合せを、第1のキャラクタストリングに適用して、第2のキャラクタストリングを生成するように構成されてよい。 The data converter may be configured to convert the first character string to a second character string, each of the first character string and the second character string having a length, configuration, or arrangement of any one or more of may be different. In some embodiments, the data converter may be configured to apply a hashing algorithm to the first character string. In other embodiments, the data converter may be configured to apply an encryption protocol to the first character string. In still other embodiments, the data converter may be configured to apply the decoding protocol to the first character string. In other embodiments, the data converter also applies any combination of hashing algorithms, encryption protocols, decryption protocols, or other known methods of data conversion to the first character string to convert the second character string. It may be configured to generate a string.
処理生成器は、データを生成するように構成されてよい。幾つかの実施形態では、データは、任意の長さの1又は複数のキャラクタストリングで構成されてよく、また、バーコードなどで構成されてよい。幾つかの実施形態では、データは、ランダムな方法又は規則的な方法で生成されてよい。処理検証器は、2つ以上のデータを比較して、それらのデータが同一であるか異なるかを判定するように構成されてよい。幾つかの実施形態では、処理検証器と処理生成器は対になって、第1のキャラクタストリングと第2のキャラクタストリングが同一であるかどうかを判定して、第1のキャラクタストリングと第2のキャラクタストリングの同一性に基づいて応答を生成するように構成されてよい。 The process generator may be configured to generate data. In some embodiments, the data may consist of one or more character strings of any length and may consist of barcodes and the like. In some embodiments, data may be generated in a random or systematic manner. The processing verifier may be configured to compare two or more pieces of data to determine if the pieces of data are the same or different. In some embodiments, the action verifier and the action generator are paired to determine if the first character string and the second character string are the same, and to determine whether the first character string and the second character string are identical. may be configured to generate a response based on the identity of the character strings of the .
ウェブ認証方法は、図25に示すように、バーコードを生成することを含んでよい。バーコード2500の生成は、インターネットアプリケーション2590で開始されてよい。幾つかの実施形態では、ユーザは、ログイン要求によってインターネットアプリケーション2590でバーコード2500の生成を開始してよい。第1の合意プロトコルペア2646は、処理生成器2646によって生成されてよい。幾つかの実施形態では、第1の合意プロトコルペア2646は、インターネットアプリケーション2590にて処理生成器2646によって生成されてよい。第1のキー合意プロトコルペア2526は、当技術分野の通常の技術を有する者に普通に知られている任意のキー合意プロトコルペアを含んでよい。幾つかの実施形態では、第1のキー合意プロトコルペア2526は、楕円曲線ディフィーヘルマン(Elliptic-curve Diffie-Hellman)(ECDH)ペアを含んでよい。幾つかの実施形態によれば、インターネットアプリケーション2590は、第1のサーバ2525に情報を送るように構成されてよい。処理マイグレータ2642は、インターネットアプリケーション2590の送受信器2541に情報を転送してよい。インターネットアプリケーション2590は、第1の公開キー2503、第1の秘密キー2504、及びバーコード2505を生成するために必要な他の情報の任意の組合せを送ってよい。
A web authentication method may include generating a barcode, as shown in FIG. Generation of
幾つかの実施形態では、第1のサーバ2525は、インターネットアプリケーション2590から情報を受け取るように構成されてよい。第1のサーバ2525の送受信器2541は、第1の公開キー2503、第1の秘密キー2504、及びインターネットアプリケーション2590からバーコード2500を生成するための他の必要な情報の任意の組合せを受け取ってよい。第1のサーバ2525は、ランダムキー2527を生成してよく、ランダムキー2527は、第1のサーバ2525の処理生成器2646によって生成されてよい。ランダムキー2527は、任意の長さの1又は複数のキャラクタストリングを含んでよく、キャラクタは、文字、数字、及び記号を含んでよい。幾つかの実施形態では、バーコード2505が生成されてよい。処理生成器2546は、バーコード前駆体を使用してバーコード2505を生成してよい。バーコード2505は、任意のタイプのバーコード2505を含んでよく、限定ではなく、任意の線形バーコード、2次元バーコード、又は当技術分野の通常の技術を有する者に普通に知られている任意のタイプの読取可能なインディシア(indicia)を含んでいる。幾つかの実施形態では、バーコード2505は、QRコード(登録商標)を含んでよい。バーコード2505は、第1の公開キー2503、第1の秘密キー2504、ランダムキー2527、及びバーコード2500を生成するために必要な他の情報の任意の組合せから生成されてよい。特定の実施形態では、バーコード2505は、第1のサーバ2525のデータマニピュレータ2544によって生成されてよく、また、第1の公開キー2503及びランダムキー2527に基づいてよい。第1のサーバ2525は、インターネットアプリケーション2590に情報を転送するように構成されてよい。幾つかの実施形態では、第1のサーバ2525の送受信器2541は、インターネットアプリケーション2590に情報を送るように構成されてよい。特定の実施形態では、第1のサーバ2525は、バーコード2505をインターネットアプリケーション2590に送ってよい。インターネットアプリケーション2590は、送受信器2541でバーコード2505を受け取ってよく、インターネットアプリケーション2590の表示装置2590にバーコード2505を表示してよい。
In some embodiments,
ウェブ認証方法は、図26、図27、及び図28に示すように、1又は複数のキーを生成することを含んでよい。図26を参照すると、1又は複数のキー2600を生成することは、第1のデバイス2650がバーコード2605をスキャンすることを含んでよい。第1のデバイス2650のデータマニピュレータ2644は、バーコード2605内に含まれる情報から、ランダムキー2627、第1の公開キー2603、又はランダムキー2627及び第1の公開キー2603を生成してもよい。データマニピュレータ2644は、1又は複数のキー2600を生成するために、バーコード2605内に含まれる任意の情報を外挿してよい。更に、第1のデバイス2650の処理生成器2646は、第2のキー合意プロトコルペア2651を生成してよい。第2のキー合意プロトコルペア2651は、当技術分野の通常の技術を有する者に普通に知られている任意のキー合意プロトコルペアを含んでよい。幾つかの実施形態では、第2のキー合意プロトコルペア2651は、楕円曲線ディフィーヘルマン(ECDH)ペアを含んでよい。幾つかの実施形態では、第2のキー合意プロトコルペア2651は、第2の秘密キー2652と第2の公開キー2653とを含んでよい。バーコード2605から外挿された(extrapolated)第2の秘密キー2652と第1の公開キー2603は、データマニピュレータ2644によって結合されて、秘密キー2654が生成されてよい。第1のデバイス2650の処理生成器2646は、ソルト2655、初期化ベクトル2656、及び反復数2657の任意の組合せを生成してもよい。特定の実施形態では、第1のデバイス2650の処理生成器2646は、ソルト2655、初期化ベクトル2656、及び反復数2657の各々を生成してよい。ソルト2655、初期化ベクトル2656、及び反復数2657の各々は、任意の長さの1又は複数のキャラクタストリングを含んでよく、キャラクタは、文字、数字、又は記号の任意の組合せを含んでよい。初期化ベクトル2656は、n個に等しいキャラクタ数であってよく、更にIVの第1の部分2658及びIVの第2の部分2659を含んでもよい。IVの第1の部分2658及びIVの第2の部分2659は、それぞれ、1乃至n-1のキャラクタ数であってよい。反復数2657は、nに等しいキャラクタ数であってよく、更にINの第1の部分2660とINの第2の部分2661を含んでよい。INの第1の部分2660及びINの第2の部分2661は、それぞれ、1乃至n-1のキャラクタ数であってよい。データマニピュレータ2644は、IVの第1の部分2658及びIVの第2の部分2659を初期化ベクトル2656から生成してよい。データマニピュレータ2644は、INの第1の部分2660及びINの第2の部分2661を反復数2657から生成してよい。幾つかの実施形態によれば、秘密キー2654、ソルト2655、IVの第1の部分2658、及びINの第1の部分2660は、データ変換器2645によって、マスクされた秘密キー2662、マスクされたソルト2663、マスクされたIVの第1の部分2664、及びマスクされたINの第1の部分2665に夫々変換されてよい。幾つかの実施形態では、初期化ベクトル2656は、データ変換器2645によってマスクされたIVの第1の部分2664に変換されてよい。同様に、反復数2657は、データ変換器2645によって、マスクされたINの第1の部分2665に変換されてよい2612。幾つかの実施形態では、変換2612は、ハッシュアルゴリズムを使用することを含んでよい。他の実施形態では、変換2612は、暗号化方法を使用することを含んでよい。更に他の実施形態では、変換2612は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。幾つかの実施形態では、反復数2657は、INの第1の部分2660及びINの第2の部分2661を生成せず、そのまま残っていてよく、その結果生じるINの第1の部分2660は変換2612されなくてよい。
A web authentication method may include generating one or more keys, as shown in FIGS. Referring to FIG. 26, generating one or
第1のデバイス2650の処理生成器2646は、クライアントキー2666を生成してよい。クライアントキー2666は、任意の長さの1又は複数のキャラクタストリングを含んでよく、キャラクタは、文字、数字、又は記号の任意の組合せを含んでよい。幾つかの実施形態では、クライアントキー2666は、データ変換器2645によって第1のマスクされたクライアントキー2667に変換されてよい2612。他の実施形態では、クライアントキー2667は、データ変換器2645によって、第2のマスクされたクライアントキー2668に変換されてよい2612。更に他の実施形態では、クライアントキー2667は、データ変換器2645によって、第1のマスクされたクライアントキー2667及び第2のマスクされたクライアントキー2668の各々に変換されてよい2612。変換2612は、ハッシュアルゴリズムを使用することを含んでよい。更に、変換2612は、暗号化手段を使用することを含んでよい。幾つかの実施形態では、変換2612は、ハッシュアルゴリズムと暗号化方法の組合せを使用することを含んでよい。第1のデバイス2650は、第1のサーバ2625に情報を送るように構成されてよい。幾つかの実施形態では、第1のデバイス2650の送受信器2641は、第1のマスクされたクライアントキー2667、第2のマスクされたクライアントキー2668、マスクされた秘密キー2662、マスクされたソルト2663、マスクされたIVの第1の部分2664、及びマスクされたINの第1の部分2665の任意の組合せを第1のサーバ2625に送るように構成されてよい。幾つかの実施形態では、第1のデバイス2650は、IVの第2の部分2659及びINの第2の部分2661の各々を第1のデバイス2650の表示装置2669に表示してよい。特定の実施形態では、反復数2657は、その全体として第1のデバイス2650の表示装置2669に表示されてよい。
図27を参照すると、1又は複数のキーを生成することは、第1のサーバ2725が第1のデバイス2750から情報を受け取ることを含んでよい。幾つかの実施形態では、第1のサーバ2725の送受信器2741は、マスクされた秘密キー2762、第2のマスクされたクライアントキー2768、マスクされたソルト2763、マスクされたIVの第1の部分2764、マスクされたINの第1の部分2765、及びマスクされた第1のマスクされたクライアントキー2767の任意の組合せを第1のデバイス2750から受け取ってよい。幾つかの実施形態では、第1のサーバ2725の処理マイグレータ2742は、第1のデバイス2750から受け取ったマスクされた秘密キー2762、第2のマスクされたクライアントキー2768、マスクされたソルト2763、マスクされたIVの第1部分2764、マスクされたINの第1の部分2765、及び第1のマスクされたクライアントキー2767のうちの1又は複数を、第1のサーバ2725のデータベース2729に格納してよい。特定の実施形態によれば、第1のサーバ2725の処理マイグレータ2742は、第1のサーバ2725のデータベース2729に第1のマスクされたクライアントキー2767を格納してもよい。
Referring to FIG. 27, generating one or more keys may include first server 2725 receiving information from
第1のサーバ2725は、インターネットアプリケーション2790に情報を送るように構成されてよい。特定の実施形態では、第1のサーバ2725の送受信器2741は、マスクされた秘密キー2762、第2のマスクされたクライアントキー2768、マスクされたソルト2763、マスクされたIVの第1の部分2764、マスクされたINの第1の部分2765、及び第1のマスクされたクライアントキー2767の任意の組合せを第1のサーバ2725に送ってよい。特定の実施形態では、第1のサーバ2725の送受信器2741は、マスクされた秘密キー2762、第2のマスクされたクライアントキー2768、マスクされたソルト2763、マスクされたIVの第1の部分2764、及びマスクされたINの第1の部分2765を第1のサーバ2725に送ってよい。他の実施形態では、第1のサーバ2725の送受信器2741は、マスクされた秘密キー2762、第2のマスクされたクライアントキー2768、マスクされたソルト2763、及びマスクされたIVの第1の部分2764の任意の組合せ(今後、纏めて「受信データ2728」と称される)をインターネットアプリケーション2790に送ってよい。
First server 2725 may be configured to send information to
図28に図示されているように、1又は複数のキーを生成すること2800は、インターネットアプリケーション2890の送受信器2841が第1のサーバ2825から、受け取ったデータ2828を受け取ることを含んでよい。第1のデバイス2850は、ユーザ入力2869を含んでよい。このユーザ入力2869は、IVの第2の部分2659及びINの第2の部分2661(図26参照)を含んでよく、それらは夫々キャラクタストリングを含んでよい。ユーザ入力2869は、IVの第1の部分と反復数とを含んでよい。幾つかの実施形態では、ユーザ入力2869は、第1のデバイス2850の表示装置2869に表示されてよい。1又は複数のキーを生成することは、ユーザ入力2869がインターネットアプリケーション2890に入力されることを含んでよい。インターネットアプリケーション2890のデータ変換器2844は、受け取ったデータ2828を、秘密キー2854、INの第1の部分2860、ソルト2855、IVの第1の部分2858、及びクライアントキー2866のうちの1又は複数に変換してよい2812。変換2812は、ハッシュアルゴリズムを使用することを含んでよい。更に、変換2812は、暗号化方法を使用することを含んでよい。変換は、復号方法を使用することを含んでよい。幾つかの実施形態では、変換2812は、ハッシュアルゴリズム、暗号化方法、又は復号方法の任意の組合せを使用することを含んでよい。幾つかの実施形態では、インターネットアプリケーション2890のデータ変換器2844は、ユーザ入力2869と受信データ2828の両方を使用して、秘密キー2854、INの第1の部分2860、ソルト2855、IVの第1の部分2858、及びクライアントキー2866のうちの1又は複数へと受信データを変換2812してよい。処理マイグレータ2842は、インターネットアプリケーション2890の記憶装置2891にクライアントキー2866を格納してよい。インターネットアプリケーション2890のデータ変換器2845は、クライアントキー2866を第3のマスクされたクライアントキー2892に変換してよい2812。幾つかの実施形態では、第3のマスクされたクライアントキー2892は、処理マイグレータ2842によって、インターネットアプリケーション2890の送受信器2841にマイグレートされてよい。インターネットアプリケーション2890の送受信器2841は、第3のマスクされたクライアントキー2892を第1のサーバ2825に送ってもよい。
As illustrated in FIG. 28, generating one or more keys 2800 may include receiving
ウェブ認証方法は、ウェブセッションを確立することを含んでよい。図29に図示されているように、第1のサーバ2825の送受信器2941は、インターネットアプリケーション2990から、第3のマスクされたクライアントキー2992を受け取ってよい。幾つかの実施形態では、第1のサーバ2825の処理マイグレータ2942は、格納されている第1のマスクされたクライアントキー2967を第1のサーバ2825のデータベース2929から取得してよい。処理検証器2947は、取得した第1のマスクされたクライアントキー2967を、インターネットアプリケーション2990から受け取った第3のマスクされたクライアントキー2992と比較してよい。処理生成器2946は、第1のマスクされたクライアントキー2967と第3のマスクされたクライアントキー2992の同一性に基づいて結果2930を生成してよい。第1のサーバ2825の送受信器2941は、その結果2930を第2のサーバ2980に送ってよい。第2のサーバ2980の送受信器2941は、第1のサーバ2825から結果2930を受け取りウェブトークン2931を生成してよい。ウェブトークン2931は、処理生成器2946によって生成されてよい。幾つかの実施形態では、ウェブトークン2931は、ウェブセッションの確立を承認するための当該分野で知られている任意の手段であってよい。第2のサーバ2980は、生成されたウェブトークン2931を第1のサーバ2825に送ってよい。第1のサーバ2825の送受信器2941は、第2のサーバ2980からウェブトークン2931を受け取り、受け取ったウェブトークン2931をインターネットアプリケーション2990に送ってよい。インターネットアプリケーション2990の送受信器2941は、第1のサーバ2825からウェブトークン2931を受け取ってよい。
A web authentication method may include establishing a web session. As illustrated in FIG. 29,
幾つかの実施形態では、インターネットアプリケーションは、受け取ったウェブトークンを第2のサーバに送ってよい。第2のサーバは、ウェブブラウザからウェブトークンを受け取り、ウェブセッションを確立してよい。更に、第2のサーバは、第1のサーバに情報を送るように構成されてよい。幾つかの実施形態では、第2のサーバは、インターネットアプリケーションからのウェブトークンの受信に関する情報を送ってよい。インターネットアプリケーションからのウェブトークンの受信に関する情報は、インターネットアプリケーションに関する任意の情報、インターネットアプリケーションのユーザに関する情報、ウェブセッションへのアクセスに関する情報、本明細書に記載されたシステムの任意の構成要素に関する場所的及び/又は時間的な情報を含むが、これらに限定されない。第1のサーバは、ウェブトークンの受信に関する情報を第2のサーバから受け取ってよい。幾つかの実施形態では、第1のサーバは、第1のデバイスに情報を送るように構成されてよく、限定ではないが、ウェブトークンの受信に関する情報が含まれてよい。 In some embodiments, the Internet application may send the received web token to the second server. A second server may receive a web token from a web browser and establish a web session. Additionally, the second server may be configured to send information to the first server. In some embodiments, the second server may send information regarding receipt of web tokens from Internet applications. Information about receipt of web tokens from Internet applications may include any information about Internet applications, information about users of Internet applications, information about access to web sessions, location information about any component of the systems described herein. and/or temporal information. The first server may receive information from the second server regarding receipt of the web token. In some embodiments, the first server may be configured to send information to the first device, which may include, but is not limited to, information regarding receipt of the web token.
<機密データを保護するためのキーの生成>
本明細書の任意の部分に現れて開示されている任意の方法、システム、構成要素、及び/又は実施形態は、本明細書の任意の他の部分に現れている他の任意の方法、システム、構成要素、及び/又は実施形態と組み合わせることができることは理解されるであろう。生体認証は、コード、情報、データなどとして、本明細書に記載された任意の実施形態に組み入れられてよい。
<Generate a key to protect confidential data>
Any method, system, component and/or embodiment disclosed appearing in any part of this specification may be applied to any other method, system, component and/or embodiment appearing in any other part of this specification. , components, and/or embodiments may be combined. Biometrics may be incorporated into any of the embodiments described herein as code, information, data, and the like.
幾つかの実施形態では、機密データ伝送のコンテンツを保護するためにキー(例えば、プライバシーキー)が生成されてよい。例えば、第1のデータが生体情報データや機密連絡などの機密情報を含む場合、制御されたコラプションを使用してキーを生成することで、機密データ(例えば、第1のデータ)を第三者の傍受から保護することができるエレガントな手段を提供することができる。機密データ(例えば、第1のデータ)は、任意の数のデータ型、例えば、限定ではないが、生体情報データ、ドキュメント、テキストメッセージ、電子メールメッセージ、又は他の種類の機密情報を含んでよい。 In some embodiments, a key (eg, privacy key) may be generated to protect the content of sensitive data transmissions. For example, if the first data contains sensitive information, such as biometric data or confidential contact information, using controlled corruption to generate a key would allow the sensitive data (e.g., first data) to be exposed to a third party. can provide an elegant means that can protect against interception of Sensitive data (eg, first data) may include any number of data types, including, but not limited to, biometric data, documents, text messages, email messages, or other types of sensitive information. .
幾つかの実施形態では、制御されたコラプションを使用してキー(例えば、プライバシーキー)を生成するシステム及び方法は、1又は複数のコンピュータデバイス(例えば、第1のコンピュータデバイス、第2のコンピュータデバイス、第3のコンピュータデバイスなど)と、1又は複数のサーバとを備えてよい。1又は複数のサーバは、セキュリティエンジンと、アクションエンジンと、1又は複数のライブラリとを備えてよい。幾つかの実施形態では、1又は複数のサーバは、1又は複数のコンピュータデバイス(例えば、第1のコンピュータデバイス、第2のコンピュータデバイスなど)がモバイルプラットフォームと1又は複数のライブラリとを含むクライアント層を更に備えてよい。コンピュータデバイス(例えば、第1のコンピュータデバイス、第2のコンピュータデバイスなど)は、任意のサーバ又は任意のIoTデバイスであってよく、即ち、ネットワークに接続でき、データを送信する能力を有する任意のデバイス、例えば、限定ではないが、携帯電話、パーソナルアシスタント、ボタン、ホームセキュリティシステム、アプライアンスなどであってよい。 In some embodiments, systems and methods for generating keys (e.g., privacy keys) using controlled corruption are performed on one or more computing devices (e.g., first computing device, second computing device) , a third computing device, etc.) and one or more servers. One or more servers may comprise a security engine, an action engine, and one or more libraries. In some embodiments, one or more servers are client tiers in which one or more computing devices (e.g., first computing device, second computing device, etc.) include a mobile platform and one or more libraries. may be further provided. A computing device (e.g., first computing device, second computing device, etc.) may be any server or any IoT device, i.e., any device capable of connecting to a network and capable of transmitting data. , for example, without limitation, mobile phones, personal assistants, buttons, home security systems, appliances, and the like.
図30は、特定の実施形態に基づいており、制御されたコラプションを使用してキーを生成するための例示的なシステム3000である。システムは、第1のコンピュータデバイス3012を備えるウェブ層3010と、1又は複数のサーバ3022を備える管理層3020と、1又は複数のサーバ3022を備えるクライアント層3030とを備えている。システム3000は、破線で示す1又は複数の通信チャネル(例えば、インターネットゲートウェイ、1又は複数の仮想プライベートネットワーク(VPN)トンネル)を追加的に含んでよい。
FIG. 30 is an
ウェブ層3010は、管理モバイルライブラリ(AML)及びパートナーモバイルライブラリ(PML)を備える管理モバイルプラットフォーム(AMP)3014と、管理ウェブライブラリ(AWL)及びパートナーウェブライブラリ(PWL)を備える管理ウェブプラットフォーム(AWP)3016とを更に含んでよい。本明細書で使用される場合、任意のライブラリは、限定ではないが、任意のアプリケーション、アプリケーションデータベース、データベース、及び/又はデータを意味し得る。
The
管理層3020は、管理セキュリティエンジン(ASE)3024と、アクションエンジン(AE)3026と、管理パートナーライブラリ(APL)3028と、管理層に関連する1又は複数のノード3029とを更に備えてよい。1又は複数のノード3029は、1又は複数のデータベース、1又は複数のユーザデバイス(例えば、コンピュータデバイス)、或いは、1又は複数のデータベース及び1又は複数のユーザデバイス(例えば、コンピュータデバイス)の任意の組合せを備えてよい。
The
クライアント層3030は更に、管理クライアントライブラリ(ACL)3034と、クライアントサーバアプリケーション(CSA)3036とを備えてよい。幾つかの実施形態では、クライアント層3030及び管理層3020は、VPNトンネルを使用して互いに通信してよい。
The
図31は、特定の実施形態に基づいており、制御されたコラプションを使用してキーを生成するサーバ側(例えば、管理層3020に含まれる)の方法3100の例であって、1又は複数のサーバで第1のコンピュータデバイスを登録すること3140と、1又は複数のサーバで、第1のプライバシーコードと第1のデータに関連する1又は複数のパラメータとを第1のコンピュータデバイスから受け取ること3142と、1又は複数のサーバでチャンクカウント及び公開キーを生成すること3143と、チャンクカウント及び公開キーを第1のコンピュータデバイスに送ること3144と、1又は複数のサーバで、ある数の第1のプライバシーキーと第2のプライバシーコードとを受け取ること3146と、1又は複数のサーバでそれらプライバシーキーに基づいて第2のデータを生成すること3148とを含む。
FIG. 31 is an example of a server-side (eg, included in management layer 3020)
コンピュータデバイス(例えば、第1のコンピュータデバイス)を登録すること3140は、コンピュータデバイスに1又は複数のアプリケーションをインストールすることを含んでよく、1又は複数のアプリケーションは、モバイルプラットフォームと1又は複数のライブラリとを含んでよい。幾つかの実施形態では、コンピュータデバイス及び1又は複数のアプリケーションは、プライバシーキーを生成するためのシステムのウェブ層を備えてよい。コンピュータデバイスは、管理層を構成し得る1又は複数のサーバと通信(例えば、ネットワーク通信、インターネット通信、仮想プライベートネットワーク(VPN通信))してよい。様々な通信方法の詳細な説明は、本明細書の先のセクションに見られる。幾つかの実施形態では、ウェブ層に含まれるコンピュータデバイスの登録は、管理層(例えば、ASE)、クライアント層(例えば、CSA)、及びウェブ層(例えば、コンピュータデバイスに含まれるAML及び/又はAWL)間の通信及び情報の送信を開始することを含んでよい。 Registering 3140 a computing device (eg, a first computing device) may include installing one or more applications on the computing device, where the one or more applications include the mobile platform and one or more libraries. and In some embodiments, a computing device and one or more applications may comprise a web layer of systems for generating privacy keys. A computing device may communicate (eg, network communication, Internet communication, virtual private network (VPN communication)) with one or more servers, which may constitute a management layer. A detailed description of various communication methods can be found in earlier sections of this specification. In some embodiments, registration of computing devices included in the web tier includes management tier (eg, ASE), client tier (eg, CSA), and web tier (eg, AML and/or AWL included in the computing device). ) to initiate communication and transmission of information.
管理層に含まれる1又は複数のサーバは、コンピュータデバイス(例えば、第1のコンピュータデバイス)から、第1のプライバシーコードと、第1のデータに関連する1又は複数のパラメータとを受け取る3142。上述したように、第1のデータは、ユーザが送信時に保護することを望む任意のデータ(例えば、生体情報データ、ドキュメント、メッセージなど)を含んでよい。第1のデータに関連する1又は複数のパラメータは第1のデータに関する任意の情報を含んでよく、限定ではないが、デバイス識別子、カメラ識別子、ファイルサイズ、データ形式、アプリケーション識別子、ユーザ識別子、個人識別子、メタデータなどを含んでよい。幾つかの実施形態では、第1のデータに関する1又は複数のパラメータは、ファイルサイズ、(第1のデータの出所を特定し得る)非対称暗号キーペアに関連する公開キーと、第1のデータの操作されたバージョン(例えば、データの圧縮又は「zip」バージョン)とを含んでよい。幾つかの実施形態では、第1のデータに関連するパラメータは、圧縮された(例えば、zip圧縮された)第1のデータのベース64バージョンを含んでよい。プライバシーコードは、コンピュータデバイスのユーザ又は第1のデータの出所に関連する英数字及び/又は記号のキャラクタストリングを含んでよい。特定の実施形態では、プライバシーコードは、コンピュータデバイスのユーザによって選択された個人識別番号(例えば、PIN)を含む第1のユーザ入力である。プライバシーコードはユーザ入力に基づいてよく、例えば、ユーザ入力の暗号化バージョン、ハッシュ化バージョン、切断バージョン、又は並べ替えバージョンなどであってよい。幾つかの実施形態では、プライバシーコードは、システムの構成要素(例えば、サーバ、第1のコンピュータデバイスなど)によって自動的に生成されてよい。幾つかの実施形態では、プライバシーコードは、ユーザのデジタルフットプリントを含んでよく、及び/又はそれに基づいてよい。これらの実施形態では、ユーザのデジタルフットプリントは、ユーザのデジタル習慣に関する情報を含んでよく、限定ではないが、閲覧履歴、閲覧時間/期間/頻度、使用習慣、アプリケーション使用、購入習慣、地理位置情報データなどを含んでよい。 One or more servers included in the management layer receive 3142 a first privacy code and one or more parameters associated with the first data from a computing device (eg, a first computing device). As noted above, the first data may include any data that the user wishes to protect during transmission (eg, biometric data, documents, messages, etc.). The one or more parameters associated with the first data may include any information about the first data, including, but not limited to, device identifier, camera identifier, file size, data format, application identifier, user identifier, personal May include identifiers, metadata, and the like. In some embodiments, the one or more parameters related to the first data are file size, a public key associated with an asymmetric cryptographic key pair (which may identify the origin of the first data), and a manipulation of the first data. zipped versions (eg, compressed or "zipped" versions of the data). In some embodiments, parameters associated with the first data may include a compressed (eg, zip-compressed) base 64 version of the first data. The privacy code may comprise an alphanumeric and/or symbolic character string associated with the user of the computing device or the source of the first data. In certain embodiments, the privacy code is the first user input including a personal identification number (eg, PIN) selected by the user of the computing device. The privacy code may be based on user input, such as an encrypted, hashed, chopped, or sorted version of the user input. In some embodiments, the privacy code may be automatically generated by a component of the system (eg, server, first computing device, etc.). In some embodiments, the privacy code may include and/or be based on the user's digital footprint. In these embodiments, the user's digital footprint may include information about the user's digital habits, including, but not limited to, browsing history, browsing time/duration/frequency, usage habits, application usage, purchase habits, geolocation Information data and the like may be included.
管理層に含まれる1又は複数のサーバは、APLに関連するチャンクカウント、チャンク名、及び公開キーを生成してよい3143。チャンクカウント及びチャンク名は、少なくとも部分的に、第1のデータに関連する受け取ったパラメータに基づいてよい。チャンクカウントは、幾つかの実施形態では、プライバシーキーを生成することを下流プロセスに知らせる整数であってよい。チャンク名は、英数字及び/又は記号による識別子であり、下流プロセスで生成された1又は複数のプライバシーキーと関連付けられてよい。幾つかの実施形態では、チャンクカウントは、第1のデータに関連するパラメータに基づいて、例えば、第1のデータのサイズ、圧縮された第1のデータのサイズ、又は、ベース64ファイルに変換されて圧縮された第1のデータのサイズのうちの1又は複数に基づいて生成される。チャンク名は、チャンクカウントに基づいて生成されてよい。例えば、チャンクカウントが3に等しい整数である場合、3つのチャンク名が生成され、各々は下流のプライバシーキーに関連付けられるように設計されるであろう。別の例では、生成されるチャンクカウントが7に等しい場合、7つのチャンク名が生成されるであろう。下流のステップでは、7つのプライバシーキーが生成されて、7つのプライバシーキーの各々は1つのチャンク名を割り当てられるであろう。公開キーは、管理層に含まれるAPLに関連付けられた非対称暗号キーペアに関連付けられてよい。チャンクカウント、チャンク名、及び公開キーは、管理層に含まれる1又は複数のサーバからウェブ層に属するコンピュータデバイスに送られてよい。 One or more servers included in the management layer may generate 3143 the chunk count, chunk name, and public key associated with the APL. The chunk count and chunk name may be based, at least in part, on the received parameters associated with the first data. The chunk count, in some embodiments, may be an integer that tells downstream processes to generate a privacy key. A chunk name is an alphanumeric and/or symbolic identifier that may be associated with one or more privacy keys generated in a downstream process. In some embodiments, the chunk count is based on parameters associated with the first data, such as the size of the first data, the size of the first data compressed, or converted to a base 64 file. based on one or more of the sizes of the first data compressed by the A chunk name may be generated based on the chunk count. For example, if the chunk count is an integer equal to 3, three chunk names will be generated, each designed to be associated with a downstream privacy key. In another example, if the generated chunk count equals 7, then 7 chunk names will be generated. In a downstream step, 7 privacy keys will be generated and each of the 7 privacy keys will be assigned a chunk name. A public key may be associated with an asymmetric cryptographic key pair associated with an APL contained in the management layer. The chunk count, chunk name, and public key may be sent from one or more servers included in the management tier to computing devices belonging to the web tier.
幾つかの実施形態では、(第1のデータ、チャンクカウント、チャンク名、及びプライバシーコードのうちの1又は複数に基づく)ある数のプライバシーキーは、プライバシーキーを生成するためのシステムのウェブ層に含まれるコンピュータデバイスによって生成されてよい。図32は、幾つかの実施形態に基づくプライバシーキーの生成方法3200を示すコンピュータデバイス側の説明図である。
In some embodiments, a number of privacy keys (based on one or more of the first data, chunk count, chunk name, and privacy code) are sent to the web layer of the system for generating privacy keys. It may be generated by an included computing device. FIG. 32 is a computing device side illustration of a privacy
システムのウェブ層に含まれるコンピュータデバイス3212(例えば、第1のコンピュータデバイス)は、システムの管理層に含まれる1又は複数のサーバからチャンクカウント3260、チャンク名3261、及び公開キー3262を受け取ってよい。上述したように、第1のデータ3263は、ユーザが安全を考慮しており、転送中に保護することを望む任意のデータを含んでよい。幾つかの実施形態では、コンピュータデバイス3212は、第1のデータ3263を圧縮(例えば、zip)して、圧縮された第1のデータ3264を生成してよい。コンピュータデバイス3212は、圧縮された第1のデータのベース64 3265を生成し、圧縮された第1のデータのベース64 3265は、圧縮された第1のデータ3264のベース64バージョンを含んでよい。制御されたコラプション(例えば、制御されたファイルコラプション)を用いて、コンピュータデバイス3212は、圧縮された第1のデータのベース64 3265にコラプタ(corruptor)(例えば、第1のコラプタ3266)を加えることによって、第1のプレキー3267を生成してよい。上述したように、コラプタ3266は、英数字及び/又は記号のキャラクタストリングを含んでよい。特定の実施形態では、第1のコラプタ3266は、式に基づいていてよい。例えば、圧縮された第1のデータのベース64 3265に含まれる最初の30個のキャラクタを合わせることによって、第1のコラプタ3266がコンピュータデバイス3212によって生成されてよい。別の特定の実施形態では、圧縮された第1のデータのベース64 3265に含まれる第1のキャラクタと第3のキャラクタを足し合わせること、圧縮された第1のデータのベース64 3265に含まれる第2のキャラクタと第4のキャラクタを足し合わせること、圧縮された第1のデータのベース64 3265に含まれる第3のキャラクタと第5のキャラクタを足し合わせることなどを行い、それらの結果を連結することで第1のコラプタ3266に含まれるキャラクタのストリングを生成することで、第1のコラプタ3266が生成されてよい。コラプタ(例えば、第1のコラプタ3266、第2のコラプタ3268、第3のコラプタ3273など)を生成するために任意の数の式を使用することができ、可能性は上記の例に限定されない。
A computing device 3212 (e.g., a first computing device) included in the web tier of the system may receive
コンピュータデバイス3212は、第1のプレキー3267にコラプタ(例えば、第2のコラプタ3268)を付加することによって第2のプレキー3269を生成してよい。特定の実施形態では、コラプタ(例えば、第2のコラプタ3268)は、ユーザによって入力されたプライバシーコードに含まれる1又は複数の英数字及び/又は記号を含んでよい。幾つかの実施形態では、コラプタ(例えば、第2のコラプタ3268)は、ユーザによって入力されて操作された(例えば、ハッシュ化、暗号化、並べ替え、切断など)プライバシーコードに含まれる1又は複数の英数字及び/又は記号を含んでよい。特定の実施形態では、第2のコラプタ3268は式に基づいていてよい。
コンピュータデバイス3212は、ソルト3270及び初期化ベクトル(IV)3271を生成してよい。ソルト3270及びIV3271の詳細については、本明細書の先のセクションに見られる。ソルト3270及びIV3271が第2のプレキー3269に付加されて、第3のプレキー3272が生成されてよい。この付加(例えば、ソルト3270及びIV3271)は、プライバシーキーを生成する場合に常にあるわけではないこと、そして、幾つかの実施形態では、第2のプレキー3269は、ソルト3270、IV3271、又は第3のコラプタ3273を付加することなく、チャンクカウント3260に基づくチャンク3274の生成に使用されてよいことを理解のこと。
第3のコラプタ3273が、第3のプレキー3272に付加されてよい。第3のコラプタ3273は、コラプタ(例えば、第1のコラプタ3266、第2のコラプタ3268)について上述した任意の方法でコンピュータデバイス3212によって生成されてよい。特定の実施形態では、第3のコラプタ3273は式に基づいてよい。幾つかの実施形態では、第3のコラプタ3273が第3のプレキー3272に追加されて、次に、その結果のストリングが、管理層から受け取ったチャンクカウント3260に基づいてチャンク3274へと分割されてよい。上述したように、チャンクカウント3260は、キーの生成方法3200において生成されるチャンク3274の数を示す整数である。例えば、チャンクカウント3260が3に等しい場合には、コンピュータデバイス3212は、プレキー(例えば、第3のプレキー3272、第2のプレキー3269、第3のコラプタ3273を有する第3のプレキー3272)を3つのチャンク3274に分割することになるであろう。
A
幾つかの実施形態では、第3のプレキー3272はチャンク3274に分割されてよく、チャンク3274は、その後、第3のコラプタ3273を使用せずにプライバシーキー3275を生成するために使用されてよい。幾つかの実施形態では、第3のプレキー3272がチャンク3274に分割されて、1又は複数の第3のコラプタ3273(又は第1のコラプタ、第2のコラプタなど)がチャンク3274に付加されて、プライバシーキーが生成されてよい。
In some embodiments, third pre-key 3272 may be split into
チャンク3274は、チャンク名3261に従って命名されて、プライバシーキー3275が生成されてよい。幾つかの実施形態では、チャンク名3261は管理層で生成されて、ウェブ層に含まれるコンピュータデバイス3212にて受け取られてよい。チャンク名3261は、上述したように、第1のデータ(例えば、初期パッケージ)に関連するパラメータの一部として受け取られた情報に少なくとも部分的に基づいてよい。特定の実施形態では、受け取られるチャンク名3261の数は、チャンクカウント3260と等しい。例えば、チャンクカウント3260が3に等しい場合には、3つのチャンク名3261が管理層で生成されて、コンピュータデバイス3212で受け取られるであろう。従って、この実施形態では、3つのチャンク3274が(チャンクカウント3260に基づいて)生成されると、得られた各チャンク3274は、関連するチャンク名3261を有するであろう。幾つかの実施形態では、チャンク3274は、単一のチャンク名3261に関連付けられて、チャンク名3261を有するチャンク3274を含むプライバシーキー3275が生成される。チャンク名3261は、これらの実施形態によれば、サーバ側で第1のデータ3263(例えば、第2のデータ)を再現するためのプライバシーキー3275を編成する下流プロセスで有用である。
上記を説明するために、以下の例が提供される。第3のプレキー3272がストリング「123456789」を含んでおり、第3のコラプタ3273がストリング「543」を含んでいる場合、制御されたコラプションの結果のストリングは、ストリング「123455436789」を含んでよい。チャンクカウント3260が3に等しく、チャンク名が「1」、「2」、及び「3」である場合、結果として得られるプライバシーキーは、以下を含んでいる。
To illustrate the above, the following example is provided. If the
チャンク名3261は、幾つかの実施形態では、初期ストリングを再現するためにプライバシーキー3275の下流での順序付けを容易にし得る。ここで、チャンク名3261(例えば、「ワン」、「ツー」、「スリー」)に従ってプライバシーキー3275を並べることにより、サーバ(例えば、管理層)側で初期ストリング「123455436789」を再現することができる。
ウェブ層に含まれるコンピュータデバイス3212は、(チャンクカウント3260に等しい)ある数のプライバシーキー3275を管理層に含まれる1又は複数のサーバに送ってよい。コンピュータデバイス3212は、第1のプライバシーコード3276に基づいて、第2のプライバシーコード3277を生成してよい。第2のプライバシーコード3277は、幾つかの実施形態では、英数字及び/又は記号のキャラクタストリングであってよい。第2のプライバシーコード3277は、操作された(例えば、圧縮、ハッシュ化、暗号化、並べ替え、切断など)第1のプライバシーコード3276であってよい。特定の実施形態では、第2のプライバシーコード3277は、ハッシュ化された第1のプライバシーコード3276である。プライバシーコード(例えば、第1のプライバシーコード3276、第2のプライバシーコード3277)は、システムのウェブ層に含まれるコンピュータデバイス3212から、システムの管理層に含まれる1又は複数のサーバに送られてよい。
A
図31に戻ると、制御されたコラプションを使用したキー生成方法は、コンピュータデバイスからある数のプライバシーキーと第2のプライバシーコードとを受け取ること3146と、プライバシーキーに基づいて第2のデータを生成すること3148とを含んでよい。 Returning to FIG. 31, the method of key generation using controlled corruption includes receiving 3146 a number of privacy keys and a second privacy code from a computing device, and generating second data based on the privacy keys. and performing 3148 .
図33は、プライバシーキー3300に基づいて第2のデータを生成する特定の実施形態を示す図である。第2のデータ3382は、幾つかの実施形態では、第1のデータの再構成バージョンを含んでよい。例えば、第1のデータは、システムのウェブ層に含まれるコンピュータデバイスを起源としてよい。第1のデータは、プライバシーキー3375を生成するために使用されてよく、プライバシーキー3375は、第1のデータのコラプションしたバージョンであってよく、当該バージョンは、その後、管理層に含まれる1又は複数のサーバに、コラプションしたチャンク(例えば、プライバシーキー)で送られてよい。プライバシーキー3375は連結されて、結果として得られる第2のデータ3382が元の第1のデータの再構成されたバージョンであるように、コラプタ(例えば、第1のコラプタ3366、第2のコラプタ3368、第3のコラプタ3373など)が系統的に除去されてよい。
FIG. 33 is a diagram illustrating a particular embodiment of generating second data based on
システムの管理層に含まれる1又は複数のサーバ3322は、システムのウェブ層に含まれるコンピュータデバイスから、ある数(例えば、1つ以上、2つ以上、3つ以上)のプライバシーキー3375を受け取ってよい。1又は複数のサーバ3322は、コンピュータデバイスから第2のプライバシーコード3377を受け取ってよい。幾つかの実施形態では、1又は複数のサーバ3322は、ある数(例えば、1つ以上、2つ以上、3つ以上)のプライバシーキー3375を連結して、連結キー3376を生成してよい。幾つかの実施形態では、上述したようにして、チャンク名3361は、連結のプロセスをガイドしてよく、プライバシーキー3375を結合すべき順序を決定してよく、又は、連結キー3376を生成するためにプライバシーキー3375の配列を指示してよい。
One or
1又は複数のサーバ3322は、第3のコラプタ3373を除去して第1のクリーンなデータ3377を生成し、ソルト3370及びIV3371を除去して第2のクリーンなデータ3378を生成し、第2のコラプタ3368を除去して第3のクリーンなデータ3379を生成し、第1のコラプタ3366を除去して、圧縮された第2のデータのベース64ファイル 3380を生成してよい。幾つかの実施形態では、コラプタの除去は、除去される必要があるコラプタ(例えば、第1のコラプタ3366、第2のコラプタ3368、第3のコラプタ3373など)の認識を必要とし得る。これらの実施形態では、1又は複数のサーバは、コラプタを認識するため様々な認識ツールを使用してよい。例えば、コラプタがプライバシーコード(又は、切断されたプライバシーコードのようなプライバシーコードの派生物)を使用してコンピュータデバイスで生成されている場合、1又は複数のサーバは、受け取った第2のプライバシーコード3377からプライバシーコードを生成してよい。特定の実施形態では、第2のプライバシーコード3377が使用されて、1又は複数のコラプタ(例えば、第1のコラプタ3366、第2のコラプタ3368、第3のコラプタ3373など)が除去される。幾つかの実施形態では、1又は複数のサーバ3322は、式を使ってコラプタを生成し(例えば、コンピュータデバイスでコラプタを生成するのに使われるのと同じ式)、新たに生成されたコラプタを使って、クリーンなデータ(例えば、第1のクリーンなデータ3377、第2のクリーンなデータ3378、第3のクリーンなデータ3379等)に埋め込まれたコラプタを認識して、それを除去する。1又は複数のサーバ3322の特徴は、連結キー3376又はクリーンなデータ(例えば、第1のクリーンなデータ3377、第2のクリーンなデータ3378、第3のクリーンなデータ3379など)の中のコラプタ(例えば、第1のコラプタ3366、第2のコラプタ3368、第3のコラプタ3373など)を認識して体系的に除去して、圧縮された第2のデータのベース64 3380を生成する能力であることは、重要である。幾つかの実施形態では、連結キー3376が復号されて第1のクリーンなデータ3377が生成されてよい。
One or
圧縮された第2のデータのベース64 3380ファイルは、圧縮された第2のデータ3381に変換(例えば、復号)されてよい。幾つかの実施形態では、圧縮された第2のデータ3381は、第2のデータ3382に変換(例えば、解凍)されてよい。上述したように、第2のデータ3382は、第1のデータの再構成バージョンであってよい。例えば、第1のデータが生体情報スキャンに関する情報である場合、第2のデータは、生体情報スキャンに関するオリジナルの情報の再構成バージョンであろう。第1のデータが機密電子メール、テキスト、又はその他の情報である場合、第2のデータは機密電子メール、テキスト、又はその他の情報の再構成バージョンである。このように、管理層に含まれる1又は複数のサーバによって実行される任意の方法又は操作は、第2のコンピュータデバイスに含まれるプロセッサによっても実行され得ることは、当業者には理解されるであろう。例えば、第1のデータが、第1のコンピュータデバイスを備えるモバイルデバイスを出所とするテキストメッセージである場合、第2のデータ(例えば、再構成テキストメッセージ)は、第2のモバイルデバイス(例えば、第2のコンピュータデバイス)に含まれるプロセッサにて生成されてよい。
The compressed second data base 64 3380 file may be converted (eg, decoded) into compressed
<プライバシーキーの使用によるアイデンティティの認証>
プライバシーキーは、幾つかの実施形態では、第1のコンピュータデバイス(例えば、モバイルコンピュータデバイス)からアイデンティティを認証するために使用されてよい。幾つかの実施形態では、第1のデータは、生体情報スキャン、ログインパスワード又はコード、或いは、ユーザ入力に基づき得る他の任意の第1のデータを含んでよい。制御されたコラプションを使用してプライバシーキーを生成し、格納されているプライバシーキーを配布、保存、及び/又は取得してアイデンティティを認証する方法は、エンロールメント(enrollment)モジュールとサインインモジュールを含んでよい。
<Identity Authentication Using Privacy Keys>
A privacy key may be used in some embodiments to authenticate an identity from a first computing device (eg, a mobile computing device). In some embodiments, the first data may include a biometric scan, login password or code, or any other first data that may be based on user input. A method of generating privacy keys using controlled corruption and distributing, storing, and/or retrieving stored privacy keys to authenticate identities includes an enrollment module and a sign-in module. OK.
<エンロールメントモジュール>
エンロールメントモジュールは、制御されたコラプションを使用してキー(例えば、プライバシーキー)を生成し、キーを配布し、後で使用するために格納する方法を備えてよい。本明細書に開示された方法及びシステムを用いて、プライバシーキーが、制御されたコラプションを使用して第1のデータから生成されて、サーバに送られ、サーバに関連する複数のノードに格納されてよい。続いて、ユーザが、サインインモジュールの第1のコンピュータデバイスにユーザ入力(例えば、生体情報スキャン、パスワード、第1のデータ、第3のデータなど)を入力すると、制御されたコラプションによって生成されており、そのモジュールのユーザ入力に基づくプライバシーキーが、エンロールメントモジュールにおいて第1のデータを使用して生成されたプライバシーキーと比較されて、ユーザのアイデンティティが認証される。制御されたコラプションを用いてプライバシーキーを生成することで、生体情報データなどのユーザ入力が保護される。
<Enrollment module>
The enrollment module may comprise a method of generating keys (eg, privacy keys) using controlled corruption, distributing the keys, and storing them for later use. Using the methods and systems disclosed herein, privacy keys are generated from first data using controlled corruption, sent to a server, and stored at a plurality of nodes associated with the server. you can Subsequently, when the user enters user input (e.g., biometric scan, password, first data, third data, etc.) into the first computing device of the sign-in module, the and a privacy key based on user input in that module is compared to a privacy key generated using the first data in the enrollment module to authenticate the user's identity. Using controlled corruption to generate a privacy key protects user input, such as biometric data.
図34は、特定の実施形態に基づいており、制御されたコラプションを使用してキーを生成して配布するサーバ側(例えば、管理層3020に含まれる)の方法3400の例であって、1又は複数のサーバで第1のコンピュータデバイスを登録すること3440と、1又は複数のサーバで、第1のプライバシーコードと第1のデータに関連する1又は複数のパラメータとを第1のコンピュータデバイスから受信すること3442と、1又は複数のサーバでチャンクカウント及び公開キーを生成すること3443と、チャンクカウント及び公開キーを第1のコンピュータデバイスに送信すること3444と、1又は複数のサーバで、ある数の第1のプライバシーキー及び第2のプライバシーコードを受信すること3446と、1又は複数のサーバでプライバシーキーに基づいて第2のデータを生成すること3448とを含む。幾つかの実施形態では、プライバシーキーは、例えばアイデンティティの認証など、後の用途のために1又は複数のサーバに関連する1又は複数のノードに格納されてよい。これらの実施形態において、キーを生成及び配布する方法3400は、結果を生成すること3450と、受信者識別子及びプライバシーコード識別子を生成すること3452と、プライバシーキー、受信者識別子、及びプライバシーコード識別子を1又は複数のサーバに関連するノードのうちの1つに配布すること3454とを更に含んでよい。
FIG. 34 is an example of a server-side (e.g., included in management layer 3020)
プライバシーキーが認証のような用途で生成される場合、1又は複数のプライバシーキーを生成する方法は、図31、図32、及び図33に例示して上述した方法と概ね同じである。それらの方法に加えて、方法3400は、結果を生成すること3450を含んでよい。幾つかの実施形態では、圧縮された第2のデータのベース64ファイル(例えば、図33の3380)は、第1のデータ(例えば、図31の3142)に関連するパラメータとして受け取られ得る、圧縮された第1のデータのベース64と比較されてよい。これらの実施形態では、2つのベース64ファイルが比較されて、結果が生成されてよい3450。2つのベース64ファイルが同一である場合、結果はポジティブとなり得る。2つのベース64ファイルが同一でない場合、結果はネガティブとなり得る。
When privacy keys are generated for uses such as authentication, the method of generating one or more privacy keys is generally the same as described above and illustrated in FIGS. In addition to those methods,
幾つかの実施形態では、結果3450は、圧縮された第2のデータ3381を圧縮された第1のデータと比較することによって生成されてよい。幾つかの実施形態では、結果3450は、第2のデータ3382を第1のデータと比較することによって生成されてよい。幾つかの実施形態では、結果は、複数の要素(例えば、第1のデータと第2のデータ、圧縮された第1のデータと圧縮された第2のデータ、圧縮された第1のデータのベース64と圧縮された第2のデータのベース64など)を比較することによって生成されてよい。反復学習が、結果3450を生成する場合に利用されてよい。例えば、多くの第2データ3382が経時的に生成され、これらの第2のデータ3382が経時的に互いに比較されて結果3450が生成されてよい。なお、第2のデータ3382を例として用いたが、任意の要素(第1のデータ、圧縮データ、ベース64圧縮データ、プライバシーコード等)を経時的に比較することにより、結果3450が生成されてもよい。
In some embodiments,
幾つかの実施形態では、ポジティブな結果は、管理層に含まれる1又は複数のサーバに、受信者識別子及びプライバシーコード識別子を生成するように促してよい3452。ポジティブな結果は、管理層を構成する1又は複数のサーバに、コンピュータデバイスから受け取った各プライバシーキーの2つ以上のコピーを生成するように促してよい3446。プライバシーキー、受信者識別子、及びプライバシーコード識別子は、1又は複数のサーバに関連付けられた1又は複数のノードに格納のために送られてよい3454。幾つかの実施形態では、プライバシーキー、受信者識別子、及びプライバシーコード識別子は、送信前に操作されてよい。 In some embodiments, a positive result may prompt 3452 one or more servers included in the management layer to generate recipient identifiers and privacy code identifiers. A positive result may prompt one or more servers that make up the management layer to generate 3446 two or more copies of each privacy key received from the computing device. The privacy key, recipient identifier, and privacy code identifier may be sent 3454 for storage to one or more nodes associated with one or more servers. In some embodiments, privacy keys, recipient identifiers, and privacy code identifiers may be manipulated prior to transmission.
格納するためにプライバシーキーを1又は複数のノードに配布すること3454は、台帳なしの非記述的な(ledgerless non-descriptive)配布を用いて行われてよい。この配布方法は、送信者識別子、受信者識別子、プライバシーコード、及び/又は他のユーザ固有コード(例えば、生体認証など)を組み合わせて使用して、各プライバシーキーについて固有のピース記述(piece description)を生成することを含んでよい。幾つかの実施形態では、送信者識別子は、ユーザ、トランザクション、アプリケーション、及び/又はコンピュータデバイスの任意の組合せを識別するために使用される英数字及び/又は記号のキャラクタストリングであってよい。これらの実施形態において、システムは、プライバシーキー、プライバシーコード、受信者識別子、及び送信者識別子のうちの1又は複数を操作して、配布された各プライバシーキーについて固有のピース記述を生成してよい。ピース記述は、幾つかの実施形態によれば、「必要に応じて」作成されてよく、サーバでプライバシーキーの宛先(例えば、ノード)の台帳や他の記録を保持する必要性を排除する。 Distributing 3454 the privacy key to one or more nodes for storage may be performed using ledgerless non-descriptive distribution. This distribution method uses a combination of sender identifiers, recipient identifiers, privacy codes, and/or other user-specific codes (e.g., biometrics, etc.) to create a unique piece description for each privacy key. may include generating In some embodiments, a sender identifier may be a string of alphanumeric and/or symbolic characters used to identify any combination of users, transactions, applications, and/or computing devices. In these embodiments, the system may manipulate one or more of privacy keys, privacy codes, recipient identifiers, and sender identifiers to generate a unique piece description for each distributed privacy key. . Piece descriptions may be created on an "as-needed" basis, according to some embodiments, eliminating the need to maintain a ledger or other record of privacy key destinations (eg, nodes) on the server.
たとえハッカー/ウイルスが防御機能(例えば、ファイヤウォールやその他のセキュリティ機能)を突破してシステムに侵入できたとしても、(データが分散している場所の)エンドポイントアドレスを中央場所や中央台帳に保存していないため、ハッカーは、ノードがどこにあるかを、又はどのノードが特定のデータを持っているかを確実に知ることはできない。 Even if a hacker/virus manages to penetrate the system by bypassing defenses (e.g. firewalls or other security features), the endpoint addresses (where the data is distributed) cannot be stored in a central location or central ledger. Without storage, a hacker cannot know for sure where the nodes are or which nodes have particular data.
ノードが危険にさらされたとしても、このタイプの配布は、一緒になってデータを形成するピースをハッカーが特定できないことを保証する。これはまた、ランサムウェアに対する保護と高い耐障害性を備えている。更に、操作(暗号化、ハッシュ化、コラプション、チャンキング、連結など)プロセスにより、ノードからピースを入手しても、権限のあるユーザの同意がなければオリジナルの形にまとめられないという別のレベルのセキュリティが確保されている。 Even if a node is compromised, this type of distribution ensures that hackers cannot identify the pieces that together form the data. It also has ransomware protection and high fault tolerance. In addition, another level where the process of manipulation (encryption, hashing, corruption, chunking, concatenation, etc.) prevents pieces from being brought together in their original form without the consent of the authorized user. security is ensured.
プライバシーキー、受信者識別子、及びプライバシーコード識別子は、サインインモジュールでの本人認証を含む、後の用途のために保存されてよい。 The privacy key, recipient identifier, and privacy code identifier may be saved for later use, including authentication at the sign-in module.
<サインインモジュール>
ユーザ(例えば、ウェブ層に含まれるコンピュータデバイスのシステムユーザ)が、サインインモジュールでアイデンティティを認証するために、格納されているプライバシーキーを使用することを望む場合、ユーザは、第1のユーザ入力(例えば、プライバシーコード)と第2のユーザ入力(例えば、生体情報スキャン、第3のデータ)とを入力する。プライバシーキーを用いたアイデンティティを認証する方法を図35に示す。
<Sign-in module>
If a user (e.g., a system user of a computing device included in the web tier) wishes to use a stored privacy key to authenticate an identity with the sign-in module, the user inputs the first user input (eg, privacy code) and second user input (eg, biometric scan, third data). FIG. 35 shows a method of authenticating an identity using a privacy key.
第3のデータに基づくプライバシーキー3590は、上述しており、図31及び図32に示されたようにして生成される。得られたプライバシーキー3590は、システムの管理層に含まれる1又は複数のサーバに送られる。プライバシーキー、プライバシーコード、第2のプライバシーコード、及び、第1のデータに関連するパラメータのうちの1又は複数に含まれる情報を用いて、1又は複数のサーバは、1又は複数のサーバに関連する1又は複数のノードから、格納されているプライバシーキー3591を突き止めて取得する。幾つかの実施形態では、検索は、受信者識別子及び/又はプライバシーコード識別子に少なくとも部分的に基づいている。
A third data-based
第3のデータに基づくプライバシーキー3590の各々(例えば、サインインモジュール中にコンピュータデバイスから受け取ったプライバシーキー)が使用されて、図33に示した方法と同様の方法で第4のデータが生成される。幾つかの実施形態では、第4のデータは、サインインデータ3592であってよい。1又は複数のノードから検索されて格納されたプライバシーキー3591の各々が使用されて、図33に示した方法と同様の方法で、第5のデータ3593が生成される。幾つかの実施形態では、第5のデータは、エンロールメントデータ3593であってよい。第4のデータ(例えば、サインインデータ3592)が第5のデータ(例えば、エンロールメントデータ3593)と比較されて、結果3594が生成されてよい。幾つかの実施形態では、第4のデータ3592が第5のデータ3593と同じであれば、結果3594はポジティブである。データ(例えば、第1のデータ、第2のデータ、第3のデータ、第4のデータ3952、第5のデータ3593)が、生体情報スキャン、プライバシーコード、ログインパスワード等の何れかに関する情報であるような実施形態では、第4のデータ3952(例えば、サインイン中に入力されるデータ)が、第5のデータ(例えば、エンロールメント中に入力されてプライバシーキーとして格納されるデータ)が同じ場合に、アイデンティティが確認できる。ポジティブな結果は、ユーザが1又は複数の保護されたシステムにアクセスすることを許可してよい。
Each third data-based privacy key 3590 (eg, the privacy key received from the computing device during the sign-in module) is used to generate fourth data in a manner similar to that shown in FIG. be. In some embodiments, the fourth data may be sign-in
<プライバシーキーの利用によるセキュアデータ格納>
幾つかの実施形態では、プライバシーキーは、セキュアデータ格納のために使用されてよい。例えば、幾つかの実施形態において、第1のデータは、機密ドキュメントを含んでよい。第1のデータが上記の方法で使用されてプライバシーキーが生成されて、その後、格納されてよい。これらの実施形態では、セキュアデータ(例えば、第1のデータ、機密ドキュメント)を編集することが必要になることがある。これらの実施形態では、プライバシーキーが取得されて、上記の方法で第2のデータを生成されてよい。このシステムでは、データ(例えば、第1のデータ、第2のデータ)を編集のためにランディングゾーンに一時的に格納することを可能にする。幾つかの実施形態では、ランディングゾーンは、1又は複数のサーバ、一時的なデータベース、第1のコンピュータデバイス、第2のコンピュータデバイス、又はアプリケーションのうちの任意の1又は複数に含まれてよい。幾つかの実施形態では、ランディングゾーンは、Google Docs、Microsoft Word、又は他のアプリケーションなどの外部アプリケーションを含んでよい。編集されたデータが使用されて上記の方法で新しいプライバシーキーが生成されて、後で使用するために格納されてよい。
<Secure data storage using privacy key>
In some embodiments, privacy keys may be used for secure data storage. For example, in some embodiments the first data may include confidential documents. The first data may be used in the above manner to generate a privacy key and then stored. In these embodiments, it may be necessary to edit secure data (eg, first data, sensitive documents). In these embodiments, a privacy key may be obtained to generate the second data in the manner described above. The system allows data (eg, first data, second data) to be temporarily stored in the landing zone for editing. In some embodiments, a landing zone may be contained on any one or more of one or more servers, temporary databases, first computing devices, second computing devices, or applications. In some embodiments, the landing zone may include external applications such as Google Docs, Microsoft Word, or other applications. The edited data may be used to generate new privacy keys in the manner described above and stored for later use.
本明細書に記載された実施形態の他の変形例も、本発明の範囲から逸脱することなく実施できることは、当業者には理解されるであろう。その他の変更もそれ故に可能である。 Those skilled in the art will appreciate that other variations of the embodiments described herein may be practiced without departing from the scope of the invention. Other modifications are therefore possible.
Claims (20)
セキュリティエンジン及びアクションエンジンを備える1又は複数のサーバにて、第1のコンピュータデバイスを登録することと、
前記1又は複数のサーバにて、前記第1のコンピュータデバイスから、第1のプライバシーコードと第1のデータに関連する1又は複数のパラメータとを受け取ることであって、前記第1のプライバシーコードは前記第1のコンピュータデバイスでの第1のユーザ入力に基づいており、前記第1のデータは前記第1のコンピュータデバイスでの第2のユーザ入力に基づいている、ことと、
前記1又は複数のサーバにて、チャンクカウント及び公開キーを生成することであって、前記チャンクカウントは前記第1のデータに関連する1又は複数のパラメータに基づいており、前記公開キーは非対称暗号キーペアの一部である、ことと、
前記チャンクカウント及び前記公開キーを前記1又は複数のサーバから前記第1のコンピュータデバイスに送ることと、
前記1又は複数のサーバにて、前記第1のコンピュータデバイスから、ある数のプライバシーキーに関するデータと第2のプライバシーコードとを受け取ることであって、
前記ある数のプライバシーキーは、前記第1のデータ、前記チャンクカウント、及び前記1又は複数のコラプタに基づいており、
前記第2のプライバシーコードは、前記第1のプライバシーコードに基づいており、
前記ある数のプライバシーキーの数は前記チャンクカウントに等しい、
ことと、
前記1又は複数のサーバにて前記ある量のプライバシーキーに基づく第2のデータを生成することであって、前記第2のデータを生成することは、
前記ある数のプライバシーキーを連結して連結キーを生成することと、
前記連結キーから前記1又は複数のコラプタを除去して前記第2のデータを生成することと、
を含む、ことと、
を含む、方法。 In a method of generating and distributing keys using controlled corruption,
registering a first computing device with one or more servers comprising a security engine and an action engine;
receiving, at the one or more servers, from the first computing device a first privacy code and one or more parameters associated with first data, wherein the first privacy code is based on a first user input at the first computing device, the first data being based on a second user input at the first computing device;
generating a chunk count and a public key at the one or more servers, the chunk count being based on one or more parameters associated with the first data, the public key being an asymmetric cryptography being part of a key pair;
sending the chunk count and the public key from the one or more servers to the first computing device;
receiving, at the one or more servers, data relating to a number of privacy keys and a second privacy code from the first computing device;
the number of privacy keys is based on the first data, the chunk count, and the one or more corruptors;
the second privacy code is based on the first privacy code;
the number of privacy keys equals the chunk count;
and
generating second data based on the quantity of privacy keys at the one or more servers, wherein generating the second data comprises:
concatenating the number of privacy keys to generate a concatenated key;
removing the one or more corruptors from the concatenated key to generate the second data;
including
A method, including
前記1又は複数のサーバにて2つ以上のチャンク名を生成することと、
前記2つ以上のチャンク名を前記第1のコンピュータデバイスに送ることと、
を更に含む、請求項1に記載の方法。 A way to generate and distribute keys with controlled corruption is
generating two or more chunk names at the one or more servers;
sending the two or more chunk names to the first computing device;
2. The method of claim 1, further comprising:
前記連結キーから1又は複数の第1のコラプタを除去して、第1のクリーンなデータを生成することと、
前記第1のクリーンなデータから1又は複数の第2のコラプタを除去して、第2のクリーンなデータを生成することと、
前記第2のクリーンなデータから1又は複数の第3のコラプタを除去し、圧縮データのベース64を生成することと、
前記圧縮された第2のデータのベースを復号して前記圧縮データを生成することと、
前記圧縮データを解凍して前記第2のデータを生成することと、
を含んでおり、
前記プライバシーコードが使用されて、前記1又は複数の第1のコラプタ、前記1又は複数の第2のコラプタ、及び前記1又は複数の第3のコラプタのうちの少なくとも1つが除去される、請求項6に記載の方法。 Removing the one or more corruptors to generate the second data includes:
removing one or more first corruptors from the concatenated key to generate first clean data;
removing one or more second corruptors from the first clean data to generate second clean data;
removing one or more third corruptors from the second clean data to produce a compressed data base 64;
decoding a base of the compressed second data to produce the compressed data;
decompressing the compressed data to generate the second data;
contains
4. The privacy code is used to remove at least one of the one or more first corruptors, the one or more second corruptors, and the one or more third corruptors. 6. The method according to 6.
第1のコンピュータデバイスにて、第1のプライバシーコードと、第1のデータに関連する1又は複数のパラメータとを生成するステップであって、前記第1のプライバシーコードは第1のユーザ入力に基づいており、前記第1のデータは第2のユーザ入力に基づいている、ステップと、
前記第1のプライバシーコードと前記第1のデータに関連する1又は複数のパラメータとを、前記第1のコンピュータデバイスから1又は複数のサーバに送るステップと、
前記第1のコンピュータデバイスにて、前記1又は複数のサーバからチャンクカウント及び公開キーを受け取るステップであって、前記チャンクカウントは前記第1のデータに関連する1又は複数のパラメータに基づいており、前記公開キーは非対称暗号キーペアの一部である、ステップと、
前記第1のコンピュータデバイスにて、前記第1のデータを圧縮して圧縮された第1のデータを生成するステップと、
前記第1のコンピュータデバイスにて、前記圧縮された第1のデータと1又は複数の第1のコラプタに基づいて、第1のプレキーを生成するステップと、
前記第1のコンピュータデバイスにて、前記第1のプレキーと1又は複数の第2のコラプタとに基づいて、前記第2のプレキーを生成するステップと、
前記第1のコンピュータデバイスにて、前記第2のプレキー及び前記チャンクカウントに基づいて2つ以上のチャンクを生成するステップと、
前記第1のコンピュータデバイスにて、前記2つ以上のチャンクに基づいて2つ以上のプライバシーキーを生成するステップと、
前記2つ以上のプライバシーキーを前記1又は複数のサーバに送るステップと、
を含む方法。 In a method of generating a key using controlled corruption,
generating, at a first computing device, a first privacy code and one or more parameters associated with first data, the first privacy code based on a first user input; and wherein the first data is based on a second user input;
sending the first privacy code and one or more parameters associated with the first data from the first computing device to one or more servers;
receiving, at the first computing device, a chunk count and a public key from the one or more servers, the chunk count being based on one or more parameters associated with the first data; said public key is part of an asymmetric cryptographic key pair;
compressing the first data to generate compressed first data at the first computing device;
generating, at the first computing device, a first prekey based on the compressed first data and one or more first corruptors;
generating, at the first computing device, the second pre-key based on the first pre-key and one or more second corruptors;
generating two or more chunks at the first computing device based on the second pre-key and the chunk count;
generating, at the first computing device, two or more privacy keys based on the two or more chunks;
sending the two or more privacy keys to the one or more servers;
method including.
前記第2のプレキーをソルトを用いてコラプションして第3のプレキーを生成するステップと、
1又は複数の第3のコラプタを用いて前記第3のプレキーをコラプションするステップと、
前記チャンクカウントに基づいて、前記コラプションされた第3のプレキーを前記2つ以上のチャンクに分割するステップと、
を含む、請求項12に記載の方法。 generating the two or more chunks based on the second pre-key and the chunk count;
corrupting the second pre-key with a salt to generate a third pre-key;
corrupting the third pre-key with one or more third corruptors;
splitting the corrupted third pre-key into the two or more chunks based on the chunk count;
13. The method of claim 12, comprising:
1又は複数のサーバにて第1のコンピュータデバイスを登録することと、
前記1又は複数のサーバにて、前記第1のコンピュータデバイスから、第1のプライバシーコードと第1のデータに関連する1又は複数のパラメータとを受け取ることであって、前記第1のプライバシーコードは前記第1のコンピュータデバイスでの第1のユーザ入力に基づいており、前記第1のデータは前記第1のコンピュータデバイスでの第2のユーザ入力に基づいている、ことと、
前記1又は複数のサーバにて、チャンクカウント及び公開キーを生成することであって、前記チャンクカウントは前記第1のデータに関連する1又は複数のパラメータに基づいており、前記公開キーは非対称暗号キーペアの一部である、ことと、
前記チャンクカウント及び前記公開キーを前記1又は複数のサーバから前記第1のコンピュータデバイスに送ることと、
前記1又は複数のサーバにて、前記第1のコンピュータデバイスから、ある数の第1のプライバシーキーに関するデータと第2のプライバシーコードとを受け取ることであって、
前記ある数の第1のプライバシーキーは、前記第1のデータ、前記チャンクカウント、及び1又は複数のコラプタに基づいており、
前記第2のプライバシーコードは前記第1のプライバシーコードに基づいており、
前記ある数の第1のプライバシーキーの数は前記チャンクカウントに等しい、
ことと、
前記1又は複数のサーバにて、前記ある数の第1のプライバシーキーに基づいて第2のデータを生成することであって、前記第2のデータを生成することは、
前記ある数の第1のプライバシーキーを連結して連結キーを生成することと、
前記連結キーから前記1又は複数のコラプタを除去して前記第2のデータを生成することと、
を含んでいる、
ことと、
前記1又は複数のサーバにて、前記第2のデータに基づく結果を生成することと、
前記1又は複数のサーバにて、前記結果に基づいて、受信者識別子及びプライバシーコード識別子を生成することであって、前記受信者識別子は1又は複数のノードに関連しており、前記プライバシーコード識別子は前記第2のプライバシーコードに基づいている、ことと、
前記ある数の第1のプライバシーキー、前記受信者識別子、及び前記プライバシーコード識別子を前記1又は複数のノードに配布することと、
を含む、方法。 In a method of generating and distributing keys using controlled corruption,
registering a first computing device with one or more servers;
receiving, at the one or more servers, from the first computing device a first privacy code and one or more parameters associated with first data, wherein the first privacy code is based on a first user input at the first computing device, the first data being based on a second user input at the first computing device;
generating a chunk count and a public key at the one or more servers, the chunk count being based on one or more parameters associated with the first data, the public key being an asymmetric cryptography being part of a key pair;
sending the chunk count and the public key from the one or more servers to the first computing device;
receiving, at the one or more servers, from the first computing device a number of data relating to a first privacy key and a second privacy code;
the number of first privacy keys is based on the first data, the chunk count, and one or more corruptors;
the second privacy code is based on the first privacy code;
the number of first privacy keys equals the chunk count;
and
generating second data at the one or more servers based on the number of first privacy keys, wherein generating the second data includes:
concatenating the number of first privacy keys to generate a concatenated key;
removing the one or more corruptors from the concatenated key to generate the second data;
contains a
and
generating results at the one or more servers based on the second data;
generating, at the one or more servers, a recipient identifier and a privacy code identifier based on the results, the recipient identifier being associated with one or more nodes; and the privacy code identifier is based on said second privacy code;
distributing the number of first privacy keys, the recipient identifiers, and the privacy code identifiers to the one or more nodes;
A method, including
サインインデータを生成することであって、前記サインインデータは前記第3のデータに基づく2以上のプライバシーキーに基づく、ことと、
を更に含む、請求項16に記載の方法。 receiving, at the one or more servers, from the first computing device two or more privacy keys based on third data;
generating sign-in data, said sign-in data being based on two or more privacy keys based on said third data;
17. The method of claim 16, further comprising:
エンロールメントデータを生成することであって、前記エンロールメントデータは前記1又は複数のノードから取得されたプライバシーキーに基づく、ことと、
を更に含む、請求項17に記載の方法。 obtaining a privacy key stored in the one or more nodes based on at least one of the recipient identifier and the privacy code identifier;
generating enrollment data, the enrollment data being based on privacy keys obtained from the one or more nodes;
18. The method of claim 17, further comprising:
結果を生成することと、
を更に含む、請求項18に記載の方法。 comparing the sign-in data and the enrollment data;
generating a result;
19. The method of claim 18, further comprising:
サーバ命令を含むメモリと、
前記サーバ命令を実行するように構成された処理デバイスと、
を備えており、
前記サーバ命令は、前記処理デバイスに、
1又は複数のサーバにて第1のコンピュータデバイスを登録することであって、前記1又は複数のサーバは、セキュリティエンジン、アクションエンジン、ライブラリ、及び前記1又は複数のサーバに関する1又は複数のノードを備える、ことと、
前記1又は複数のサーバにて、前記第1のコンピュータデバイスから、第1のプライバシーコードと第1のデータに関連する1又は複数のパラメータとを受け取ることであって、前記第1のプライバシーコードは前記第1のコンピュータデバイスでの第1のユーザ入力に基づいており、前記第1のデータは前記第1のコンピュータデバイスでの第2のユーザ入力に基づいている、ことと、
前記1又は複数のサーバにて、チャンクカウント及び公開キーを生成することであって、前記チャンクカウントは前記第1のデータに関連する1又は複数のパラメータに基づいており、前記公開キーは非対称暗号キーペアの一部である、ことと、
前記チャンクカウント及び前記公開キーを前記1又は複数のサーバから前記第1のコンピュータデバイスに送ることと、
前記1又は複数のサーバにて、前記第1のコンピュータデバイスから、ある数のプライバシーキーと第2のプライバシーコードとを受け取ることであって、
前記ある数のプライバシーキーは、前記第1のデータ、前記チャンクカウント、及び1又は複数のコラプタに基づいており、
前記第2のプライバシーコードは、前記第1のプライバシーコードに基づいており、
前記ある数のプライバシーキーの数は前記チャンクカウントと等しい、
ことと、
前記1又は複数のサーバにて、前記ある量のプライバシーキーに基づく第2のデータを生成することであって、前記第2のデータを生成することは、
前記ある数のプライバシーキーを連結して連結キーを生成することと、
前記連結キーから前記1又は複数のコラプタを除去して前記第2のデータを生成することと、
を含む、ことと、
を実行させる、システム。 In a system comprising a server, said server comprising:
a memory containing server instructions;
a processing device configured to execute the server instructions;
and
The server instructions instruct the processing device to:
registering a first computing device with one or more servers, wherein the one or more servers include a security engine, an action engine, a library, and one or more nodes associated with the one or more servers; be prepared and
receiving, at the one or more servers, from the first computing device a first privacy code and one or more parameters associated with first data, wherein the first privacy code is based on a first user input at the first computing device, the first data being based on a second user input at the first computing device;
generating a chunk count and a public key at the one or more servers, the chunk count being based on one or more parameters associated with the first data, the public key being an asymmetric cryptography being part of a key pair;
sending the chunk count and the public key from the one or more servers to the first computing device;
receiving a number of privacy keys and a second privacy code from the first computing device at the one or more servers;
the number of privacy keys is based on the first data, the chunk count, and one or more corruptors;
the second privacy code is based on the first privacy code;
the number of privacy keys equals the chunk count;
and
generating, at the one or more servers, second data based on the quantity of privacy keys, wherein generating the second data comprises:
concatenating the number of privacy keys to generate a concatenated key;
removing the one or more corruptors from the concatenated key to generate the second data;
including
the system to run.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/872,127 US10903997B2 (en) | 2017-10-19 | 2020-05-11 | Generating keys using controlled corruption in computer networks |
US16/872,127 | 2020-05-11 | ||
PCT/IB2021/053964 WO2021229410A1 (en) | 2020-05-11 | 2021-05-10 | Generating keys using controlled corruption in computer networks |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023525774A true JP2023525774A (en) | 2023-06-19 |
Family
ID=78525415
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022568446A Pending JP2023525774A (en) | 2020-05-11 | 2021-05-10 | Key Generation Method Using Controlled Corruption in Computer Networks |
Country Status (9)
Country | Link |
---|---|
EP (1) | EP4150858A1 (en) |
JP (1) | JP2023525774A (en) |
KR (1) | KR20230024279A (en) |
CN (1) | CN116018592A (en) |
AU (1) | AU2021272736A1 (en) |
BR (1) | BR112022023105A2 (en) |
CA (1) | CA3178613A1 (en) |
MX (1) | MX2022014179A (en) |
WO (1) | WO2021229410A1 (en) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2348447B1 (en) * | 2009-12-18 | 2014-07-16 | CompuGroup Medical AG | A computer implemented method for generating a set of identifiers from a private key, computer implemented method and computing device |
US10103885B2 (en) * | 2016-01-20 | 2018-10-16 | Mastercard International Incorporated | Method and system for distributed cryptographic key provisioning and storage via elliptic curve cryptography |
KR20200107931A (en) * | 2017-10-19 | 2020-09-16 | 오튼하이브 코퍼레이션 | System and method for key generation and storage for multi-point authentication |
-
2021
- 2021-05-10 WO PCT/IB2021/053964 patent/WO2021229410A1/en unknown
- 2021-05-10 AU AU2021272736A patent/AU2021272736A1/en active Pending
- 2021-05-10 KR KR1020227043195A patent/KR20230024279A/en unknown
- 2021-05-10 JP JP2022568446A patent/JP2023525774A/en active Pending
- 2021-05-10 CN CN202180049502.1A patent/CN116018592A/en active Pending
- 2021-05-10 CA CA3178613A patent/CA3178613A1/en active Pending
- 2021-05-10 EP EP21804512.8A patent/EP4150858A1/en active Pending
- 2021-05-10 BR BR112022023105A patent/BR112022023105A2/en unknown
- 2021-05-10 MX MX2022014179A patent/MX2022014179A/en unknown
Also Published As
Publication number | Publication date |
---|---|
KR20230024279A (en) | 2023-02-20 |
MX2022014179A (en) | 2022-12-02 |
EP4150858A1 (en) | 2023-03-22 |
CA3178613A1 (en) | 2021-11-18 |
CN116018592A (en) | 2023-04-25 |
BR112022023105A2 (en) | 2023-01-17 |
WO2021229410A1 (en) | 2021-11-18 |
AU2021272736A1 (en) | 2023-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7448220B2 (en) | Key generation/deposit system and method for multipoint authentication | |
US11652629B2 (en) | Generating keys using controlled corruption in computer networks | |
US10693638B1 (en) | Protected cryptographic environment | |
US20080077791A1 (en) | System and method for secured network access | |
JP2016502377A (en) | How to provide safety using safety calculations | |
US20240121089A1 (en) | Protecting data using controlled corruption in computer networks | |
Islam et al. | An anonymous and provably secure authentication scheme for mobile user | |
Mishra | Design and analysis of a provably secure multi-server authentication scheme | |
Yang et al. | Cryptanalysis and improvement of a biometrics-based authentication and key agreement scheme for multi-server environments | |
JPWO2019077581A5 (en) | ||
Aiash | A formal analysis of authentication protocols for mobile devices in next generation networks | |
Wei et al. | Two‐factor authentication scheme using attribute and password | |
Li et al. | A simple and robust anonymous two‐factor authenticated key exchange protocol | |
JP2023525774A (en) | Key Generation Method Using Controlled Corruption in Computer Networks | |
Pikrammenos et al. | Authentication Mechanism Enhancement Utilising Secure Repository for Password Less Handshake | |
WO2023052845A2 (en) | Protecting data using controlled corruption in computer networks | |
Fan et al. | Cryptanalysis and improvement of a smart card-based identity authentication scheme | |
Pikrammenos et al. | IJNSA 01 | |
Varughese et al. | Cryptographic Mutual Authentication System with HMAC for Networking Application |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230116 |