KR102529750B1 - 장치 인증을 위한 방법, 시스템 및 컴퓨터 프로그램 제품 - Google Patents
장치 인증을 위한 방법, 시스템 및 컴퓨터 프로그램 제품 Download PDFInfo
- Publication number
- KR102529750B1 KR102529750B1 KR1020207032265A KR20207032265A KR102529750B1 KR 102529750 B1 KR102529750 B1 KR 102529750B1 KR 1020207032265 A KR1020207032265 A KR 1020207032265A KR 20207032265 A KR20207032265 A KR 20207032265A KR 102529750 B1 KR102529750 B1 KR 102529750B1
- Authority
- KR
- South Korea
- Prior art keywords
- message
- computer system
- remote computer
- interaction
- data
- Prior art date
Links
Images
Classifications
-
- 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/44—Program or device authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- 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
- G06F21/33—User authentication using certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0478—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/065—Network architectures or network communication protocols for network security for supporting key management in a packet data network for group communications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0884—Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0892—Network architectures or network communication protocols for network security for authentication of entities by using authentication-authorization-accounting [AAA] servers or protocols
-
- 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
-
- 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/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/083—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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
- H04L9/0833—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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
- H04W12/069—Authentication using certificates or pre-shared keys
-
- 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/56—Financial cryptography, e.g. electronic payment or e-cash
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/082—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying multi-factor authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Storage Device Security (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
장치를 인증하는 방법이 제공된다. 본 방법은 제1 장치를 제2 장치에 커플링되는 상호작용 데이터베이스에 커플링시키는 단계를 포함할 수 있다. 제1 및 제2 장치는 제1 그룹 공개 및 개인 키를 저장한다. 제2 장치는 제2 장치 공개 및 개인 키를 저장한다. 제1 장치는 제1 그룹 공개 키로 암호화된 챌린지 데이터 및 응답 데이터, 및 인증 데이터를 포함하는, 원격 컴퓨터 시스템 공개 키로 암호화된 제1 메시지를 원격 컴퓨터 시스템 공개 키로 전송한다. 제2 장치는 암호화된 챌린지 데이터를 포함하는 제2 메시지를 원격 컴퓨터 시스템으로부터 수신한다. 제2 장치는 응답 데이터를 포함하는 제3 메시지를 원격 컴퓨터 시스템에 전송한다. 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 원격 컴퓨터 시스템 사이에 상호작용이 허용될 수 있다. 시스템 및 컴퓨터 프로그램 제품도 개시된다.
Description
본 발명은 일반적으로 인증을 위한 방법, 시스템 및 제품에 관한 것으로, 하나의 특정 실시예에서, 장치를 인증하기 위한 방법, 시스템 및 컴퓨터 프로그램 제품에 관한 것이다.
소정의 장치는 "스마트" 기능 또는 일부 형태의 지능(intelligence), 예를 들어, 정보 처리 및/또는 네트워크 연결성이 포함될 수 있다. 일부 이러한 장치는 적어도 제한된 기간 동안, 인간으로부터 제한된 지원이 있거나 전혀 지원이 없이 작동할 수 있다. 예를 들어, 사물 인터넷(IoT)은 많은 장치(잠재적으로 수십억 이상의 장치)를 포함할 수 있으며, 이들 각각은 인터넷에 연결될 수 있다. 그러나 이러한 연결된 장치는 잠재적인 보안 위협을 제기한다. 예를 들어, 제1 장치가 다른 어떤 것(예를 들어, 제2 장치, 원격 컴퓨터 시스템, 데이터베이스 및/또는 기타 등등)과 상호작용하기를 원할 때, 이러한 상호작용은 하나 이상의 네트워크에 걸친 통신을 포함할 수 있다. 이러한 통신은 (예를 들어, 도청자, 중간 침입자(man-in-the-middle) 및/또는 기타 등등에 의해) 인터셉트(intercept)되고 그리고/또는 공격에 대해 취약할 수 있다. 추가적으로 또는 대안적으로, 장치는 그 위의 정보뿐만 아니라 그에 연결된 다른 장치 및/또는 시스템에 액세스를 얻으려고 시도하는 공격자에게 액세스될 수 있고 및/또는 그에 의해 침해될 수 있다.
기존의 인증 기술(예, 정적 암호)은, 예를 들어 공격자가 단순히 통신 세트를 반복하고/하거나 다른 방식으로 그 기술을 우회할 수 있기 때문에 이러한 공격을 차단하는 데 비효과적일 수 있다. 소정의 다-요소 인증(multi-factor authentication) 기법은 보안 취약성을 줄일 수도 있다. 예를 들어, 이러한 기법은 (기존의) 암호와 다른 유형의 인증, 예컨대 일회용 암호 (OTP, one-time password) 또는 랜덤 또는 유사 랜덤(pseudorandom) 암호의 조합을 사용할 수 있다. 그러나, 이러한 기법들은 통상적으로 일정 수준의 인간의 노력 및/또는 입력을 요구하는데, 이는 불편하고/하거나 시간이 소요될 수 있고, 상당수의 상호연결된 장치(예, IoT 기반 애플리케이션 및/또는 기타 등등)를 포함하는 애플리케이션에 대해 바람직하지 않거나 실행 가능하지 않을 수 있다.
비제한적인 실시예들 또는 측면들에 따르면, 장치를 인증하기 위한 방법이 제공된다. 일부 비제한적인 실시예들 또는 측면들에서, 장치를 인증하기 위한 방법은 제1 장치를 상호작용 데이터베이스에 커플링시키는 단계를 포함할 수 있고, 상기 상호작용 데이터베이스는 제2 장치에 커플링된다. 상호작용 데이터베이스는 상호작용 데이터를 저장할 수 있다. 제1 장치는 제1 그룹 공개 키(public key), 제1 그룹 개인 키(private key), 제1 장치 공개 키, 및 제1 장치 개인 키를 저장할 수 있다. 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장할 수 있다. 제1 메시지가 제1 장치로부터 원격 컴퓨터 시스템으로 전송될 수 있다. 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문(challenge question)과 연관된 챌린지 데이터(challenge data), 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터(response data), 및 제1 장치와 연관된 인증 데이터(authentication data)를 포함할 수 있으며, 챌린지 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화될 수 있다. 제1 메시지는 원격 컴퓨터 시스템의 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 제2 메시지가 원격 컴퓨터 시스템으로부터 제2 장치에서 수신될 수 있다. 제2 메시지는 제1 메시지의 제1 그룹 공개 키로 암호화된 챌린지 데이터를 포함할 수 있다. 제2 메시지는 제2 장치 공개 키로 암호화될 수 있다. 제3 메시지가 제2 장치로부터 원격 컴퓨터 시스템으로 전송될 수 있다. 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함할 수 있으며, 응답 데이터는 제1 그룹 공개 키로 암호화될 수 있다. 제3 메시지는 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 제1 장치가 원격 컴퓨터 시스템에 의해 인증되었음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 원격 컴퓨터 시스템 간의 상호작용이 허용될 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 상호작용 데이터는 적어도 하나의 상호작용과 관련된 데이터를 포함할 수 있고, 각각의 상호작용은 결제 트랜잭션 또는 통신 중 적어도 하나를 포함할 수 있다. 예를 들어, 상호작용(들)은 제2 장치와 원격 컴퓨터 시스템 간의 상호작용, 제2 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 상호작용 데이터베이스에 커플링된 제3 장치와 원격 컴퓨터 시스템 간의 상호작용, 제3 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 또는 가상 장치와 가상 원격 컴퓨터 시스템 간의 가상 상호작용 중 적어도 하나를 포함할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 제1 장치는 제1 메시지를 전송하기 전에 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 챌린지 데이터와 응답 데이터를 결정할 수 있다. 추가적으로 또는 대안적으로, 제2 메시지를 수신하는 것에 응답하여, 제2 장치는 제3 메시지를 전송하기 전에 제2 메시지로부터의 챌린지 데이터와 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 응답 데이터를 결정할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 상호작용 데이터베이스, 제1 장치, 및 제2 장치는 각각 제1 네트워크에 커플링된다. 추가적으로 또는 대안적으로, 제1 장치, 제2 장치, 및 원격 컴퓨터 시스템은 각각 제1 네트워크와 별개의 제2 네트워크에 커플링될 수 있다. 예를 들어, 제1 메시지는 제2 네트워크를 통해 제1 장치로부터 원격 컴퓨터 시스템으로 전송될 수 있고, 제2 메시지는 제2 네트워크를 통해 원격 컴퓨터 시스템으로부터 제2 장치에서 수신될 수 있고, 및/또는 제3 메시지는 제2 네트워크를 통해 제2 장치로부터 원격 컴퓨터 시스템으로 전송될 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 원격 컴퓨터 시스템은 제1 메시지로부터의 응답 데이터와 제3 메시지로부터의 응답 데이터의 비교에 기초하여 제1 장치를 인증할 수 있다. 추가적으로 또는 대안적으로, 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 원격 컴퓨터 시스템 간의 상호작용이 차단될 수 있다.
일부 비제한적인 실시예에서, 상호작용 데이터베이스는 챌린지 데이터를 가진 제2 메시지를 수신하는 것에 응답하여 챌린지 데이터를 저장할 수 있다.
비제한적인 실시예들 또는 측면들에 따르면, 장치를 인증하기 위한 시스템이 제공된다. 일부 비제한적인 실시예들 또는 측면들에서, 장치를 인증하기 위한 시스템은 상호작용 데이터를 저장하도록 구성된 상호작용 데이터베이스를 포함할 수 있다. 제1 장치는 상호작용 데이터베이스에 커플링될 수 있고, 제1 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장할 수 있다. 제2 장치는 상호작용 데이터베이스에 커플링될 수 있고, 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장할 수 있다. 제1 장치는 제1 메시지를 원격 컴퓨터 시스템에 전송할 수 있고, 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함할 수 있으며, 챌린지 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화될 수 있다. 제1 메시지는 원격 컴퓨터 시스템의 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 제2 장치는 원격 컴퓨터 시스템으로부터의 제2 메시지를 수신할 수 있고, 제2 메시지는 제1 메시지의 제1 그룹 공개 키로 암호화된 챌린지 데이터를 포함할 수 있다. 제2 메시지는 제2 장치 공개 키로 암호화될 수 있다. 제2 장치는 제3 메시지를 원격 컴퓨터 시스템으로 전송할 수 있고, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함할 수 있으며, 응답 데이터는 제1 그룹 공개 키로 암호화될 수 있다. 제3 메시지는 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 제1 장치가 원격 컴퓨터 시스템에 의해 인증되었음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치는 제1 장치와 원격 컴퓨터 시스템 간의 상호작용을 허용할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 상호작용 데이터는 적어도 하나의 상호작용과 관련된 데이터를 포함할 수 있고, 각각의 상호작용은 결제 트랜잭션 또는 통신 중 적어도 하나를 포함할 수 있다. 예를 들어, 상호작용(들)은 제2 장치와 원격 컴퓨터 시스템 간의 상호작용, 제2 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 상호작용 데이터베이스에 커플링된 제3 장치와 원격 컴퓨터 시스템 간의 상호작용, 제3 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 또는 가상 장치와 가상 원격 컴퓨터 시스템 간의 가상 상호작용 중 적어도 하나를 포함할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 제1 장치는 제1 메시지를 전송하기 전에 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 챌린지 데이터와 응답 데이터를 결정할 수 있다. 추가적으로 또는 대안적으로, 제2 메시지를 수신하는 것에 응답하여, 제2 장치는 제3 메시지를 전송하기 전에 제2 메시지로부터의 챌린지 데이터와 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 응답 데이터를 결정할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 상호작용 데이터베이스, 제1 장치, 및 제2 장치는 각각 제1 네트워크에 커플링된다. 추가적으로 또는 대안적으로, 제1 장치, 제2 장치, 및 원격 컴퓨터 시스템은 각각 제1 네트워크와 별개의 제2 네트워크에 커플링될 수 있다. 예를 들어, 제1 메시지는 제2 네트워크를 통해 제1 장치로부터 원격 컴퓨터 시스템으로 전송될 수 있고, 제2 메시지는 제2 네트워크를 통해 원격 컴퓨터 시스템으로부터 제2 장치에서 수신될 수 있고, 및/또는 제3 메시지는 제2 네트워크를 통해 제2 장치로부터 원격 컴퓨터 시스템으로 전송될 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 원격 컴퓨터 시스템은 제1 메시지로부터의 응답 데이터와 제3 메시지로부터의 응답 데이터의 비교에 기초하여 제1 장치를 인증할 수 있다. 추가적으로 또는 대안적으로, 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 원격 컴퓨터 시스템 간의 상호작용이 (예를 들어, 제1 장치 및/또는 원격 컴퓨터 시스템에 의해) 차단될 수 있다.
일부 비제한적인 실시예에서, 상호작용 데이터베이스는 챌린지 데이터를 가진 제2 메시지를 수신하는 것에 응답하여 챌린지 데이터를 저장할 수 있다.
비제한적인 실시예들 또는 측면에 따르면, 장치를 인증하기 위한 컴퓨터 프로그램 제품이 제공된다. 컴퓨터 프로그램 제품은 적어도 하나의 프로세서에 의해 실행될 때, 적어도 하나의 프로세서로 하여금 제2 장치에 커플링될 수 있는 상호작용 데이터베이스에 제1 장치를 커플링하도록 하는, 하나 이상의 명령어를 포함하는 적어도 하나의 비일시적 컴퓨터 판독가능 매체를 포함할 수 있다. 상호작용 데이터베이스는 상호작용 데이터를 저장할 수 있다. 제1 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장할 수 있다. 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장할 수 있다. 제1 메시지가 제1 장치로부터 원격 컴퓨터 시스템으로 전송될 수 있다. 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함할 수 있으며, 챌린지 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화될 수 있다. 제1 메시지는 원격 컴퓨터 시스템의 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 제1 메시지에 응답하여, 제2 메시지가 원격 컴퓨터 시스템으로부터 제2 장치에서 수신될 수 있고, 제2 메시지는 제1 메시지의 제1 그룹 공개 키로 암호화된 챌린지 데이터를 포함할 수 있다. 제2 메시지는 제2 장치 공개 키로 암호화될 수 있다. 제2 메시지에 응답하여, 제3 메시지가 제2 장치로부터 원격 컴퓨터 시스템으로 전송될 수 있고, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함할 수 있으며, 응답 데이터는 제1 그룹 공개 키로 암호화될 수 있다. 제3 메시지는 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 제1 장치가 원격 컴퓨터 시스템에 의해 인증되었음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 원격 컴퓨터 시스템 간의 상호작용이 허용될 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 상호작용 데이터는 적어도 하나의 상호작용과 관련된 데이터를 포함할 수 있고, 각각의 상호작용은 결제 트랜잭션 또는 통신 중 적어도 하나를 포함할 수 있다. 예를 들어, 상호작용(들)은 제2 장치와 원격 컴퓨터 시스템 간의 상호작용, 제2 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 상호작용 데이터베이스에 커플링된 제3 장치와 원격 컴퓨터 시스템 간의 상호작용, 제3 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 또는 가상 장치와 가상 원격 컴퓨터 시스템 간의 가상 상호작용 중 적어도 하나를 포함할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 제1 메시지를 전송하기 전에 챌린지 데이터와 응답 데이터가 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 결정될 수 있다. 추가적으로 또는 대안적으로, 제2 메시지를 수신하는 것에 응답하여, 제2 장치는 제3 메시지를 전송하기 전에 제2 메시지로부터의 챌린지 데이터와 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 응답 데이터를 결정할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 상호작용 데이터베이스, 제1 장치, 및 제2 장치는 각각 제1 네트워크에 커플링된다. 추가적으로 또는 대안적으로, 제1 장치, 제2 장치, 및 원격 컴퓨터 시스템은 각각 제1 네트워크와 별개의 제2 네트워크에 커플링될 수 있다. 예를 들어, 제1 메시지는 제2 네트워크를 통해 제1 장치로부터 원격 컴퓨터 시스템으로 전송될 수 있고, 제2 메시지는 제2 네트워크를 통해 원격 컴퓨터 시스템으로부터 제2 장치에서 수신될 수 있고, 및/또는 제3 메시지는 제2 네트워크를 통해 제2 장치로부터 원격 컴퓨터 시스템으로 전송될 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 제3 메시지를 수신하는 것에 응답하여, 원격 컴퓨터 시스템은 제1 메시지로부터의 응답 데이터와 제3 메시지로부터의 응답 데이터의 비교에 기초하여 제1 장치를 인증할 수 있다. 추가적으로 또는 대안적으로, 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 원격 컴퓨터 시스템 간의 상호작용이 차단될 수 있다.
일부 비제한적인 실시예에서, 상호작용 데이터베이스는 챌린지 데이터를 가진 제2 메시지를 수신하는 것에 응답하여 챌린지 데이터를 저장할 수 있다.
비제한적인 실시예들 또는 측면들에 따르면, 장치를 인증하기 위한 방법이 제공된다. 일부 비제한적인 실시예들 또는 측면들에서, 장치를 인증하기 위한 방법은, 제2 장치에 커플링될 수 있는 상호작용 데이터베이스에 제1 장치를 커플링하는 단계를 포함할 수 있다. 상호작용 데이터베이스는 상호작용 데이터를 저장할 수 있다. 제1 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장할 수 있다. 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장할 수 있다. 제1 메시지가 제1 장치로부터 제1 원격 컴퓨터 시스템으로 전송될 수 있다. 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키와 연관된 제1 원격 컴퓨터 시스템 공개 키 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함할 수 있으며, 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화될 수 있다. 제1 메시지는 제1 원격 컴퓨터 시스템의 제1 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 제2 메시지가 제2 원격 컴퓨터 시스템으로부터 제2 장치에서 수신될 수 있다. 제2 메시지는 제1 메시지로부터의 제1 그룹 공개 키로 암호화된 챌린지 데이터 및 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함할 수 있고, 제2 메시지는 제2 장치 공개 키로 암호화될 수 있다. 제3 메시지가 제2 장치로부터 제2 원격 컴퓨터 시스템으로 전송될 수 있다. 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함할 수 있으며, 응답 데이터는 제1 그룹 공개 키로 암호화될 수 있다. 제3 메시지는 제2 메시지로부터의 제1 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 제1 장치가 제2 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 제2 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 제1 원격 컴퓨터 시스템 및 제2 원격 컴퓨터 시스템 중 적어도 하나 간의 상호작용이 차단될 수 있다.
비제한적인 실시예들 또는 측면들에 따르면, 장치를 인증하기 위한 시스템이 제공된다. 일부 비제한적인 실시예들 또는 측면들에서, 장치를 인증하기 위한 시스템은 상호작용 데이터를 저장하도록 구성된 상호작용 데이터베이스를 포함할 수 있다. 제1 장치는 상호작용 데이터베이스에 커플링될 수 있고, 제1 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장할 수 있다. 제2 장치는 상호작용 데이터베이스에 커플링될 수 있고, 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장할 수 있다. 제1 장치는 제1 메시지를 원격 컴퓨터 시스템에 전송할 수 있다. 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키와 연관된 제1 원격 컴퓨터 시스템 공개 키 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함할 수 있으며, 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화될 수 있다. 제1 메시지는 원격 컴퓨터 시스템의 제1 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 제2 장치는 제2 메시지를 제2 원격 컴퓨터 시스템으로부터 수신할 수 있다. 제2 메시지는 제1 메시지로부터의 제1 그룹 공개 키로 암호화된 챌린지 데이터 및 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함할 수 있다. 제2 메시지는 제2 장치 공개 키로 암호화될 수 있다. 제2 장치는 제3 메시지를 제2 원격 컴퓨터 시스템에 전송할 수 있다. 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함할 수 있으며, 응답 데이터는 제1 그룹 공개 키로 암호화될 수 있다. 제3 메시지는 제2 메시지로부터의 제1 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 제2 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치는 제1 장치와 제1 원격 컴퓨터 시스템 및 제2 원격 컴퓨터 시스템 중 적어도 하나 간의 상호작용을 차단할 수 있다.
비제한적인 실시예들 또는 측면에 따르면, 장치를 인증하기 위한 컴퓨터 프로그램 제품이 제공된다. 컴퓨터 프로그램 제품은 적어도 하나의 프로세서에 의해 실행될 때, 적어도 하나의 프로세서로 하여금 제2 장치에 커플링될 수 있는 상호작용 데이터베이스에 제1 장치를 커플링하도록 하는, 하나 이상의 명령어를 포함하는 적어도 하나의 비일시적 컴퓨터 판독가능 매체를 포함할 수 있다. 상호작용 데이터베이스는 상호작용 데이터를 저장할 수 있다. 제1 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장할 수 있다. 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장할 수 있다. 제1 메시지가 제1 장치로부터 제1 원격 컴퓨터 시스템으로 전송될 수 있다. 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키와 연관된 제1 원격 컴퓨터 시스템 공개 키 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함할 수 있으며, 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화될 수 있다. 제1 메시지는 제1 원격 컴퓨터 시스템의 제1 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 제1 메시지에 응답하여, 제2 메시지는 제2 원격 컴퓨터 시스템으로부터 제2 장치에서 수신될 수 있다. 제2 메시지는 제1 메시지로부터의 제1 그룹 공개 키로 암호화된 챌린지 데이터 및 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함할 수 있다. 제2 메시지는 제2 장치 공개 키로 암호화될 수 있다. 제2 메시지에 응답하여, 제3 메시지는 제2 장치로부터 제2 원격 컴퓨터 시스템으로 전송될 수 있다. 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함할 수 있으며, 응답 데이터는 제1 그룹 공개 키로 암호화될 수 있다. 제3 메시지는 제2 메시지로부터의 제1 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 제1 장치가 제2 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 제2 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 제1 원격 컴퓨터 시스템 및 제2 원격 컴퓨터 시스템 중 적어도 하나 간의 상호작용이 차단될 수 있다.
추가로 비제한적인 실시예들 또는 측면들은 다음의 번호가 매겨진 항에 제시되어 있다:
1항: 장치를 인증하기 위한 방법으로서, 제1 장치를 상호작용 데이터베이스에 커플링시키되, 상기 상호작용 데이터베이스는 제2 장치에 커플링되고, 상호작용 데이터베이스는 상호작용 데이터를 저장하며, 제1 장치는 제1 그룹 공개 키(public key), 제1 그룹 개인 키(private key), 제1 장치 공개 키, 및 제1 장치 개인 키를 저장하며, 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장하는, 단계; 제1 메시지를 제1 장치로부터 원격 컴퓨터 시스템으로 전송하되, 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문(challenge question)과 연관된 챌린지 데이터(challenge data), 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터(response data), 및 제1 장치와 연관된 인증 데이터(authentication data)를 포함하며, 챌린지 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화되며, 제1 메시지는 원격 컴퓨터 시스템의 원격 컴퓨터 시스템 공개 키로 암호화되는, 단계; 제2 메시지를 원격 컴퓨터 시스템으로부터 제2 장치에서 수신하되, 제2 메시지는 제1 메시지의 제1 그룹 공개 키로 암호화된 챌린지 데이터를 포함하며, 제2 메시지는 제2 장치 공개 키로 암호화되는, 단계; 제3 메시지를 제2 장치로부터 원격 컴퓨터 시스템으로 전송하되, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함하며, 응답 데이터는 제1 그룹 공개 키로 암호화되며, 제3 메시지는 원격 컴퓨터 시스템 공개 키로 암호화되는, 단계; 및 제1 장치가 원격 컴퓨터 시스템에 의해 인증되었음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 원격 컴퓨터 시스템 간의 상호작용을 허용하는 단계를 포함하는, 방법.
2항: 제1항에 있어서, 상기 상호작용 데이터는 적어도 하나의 상호작용과 연관된 데이터를 포함하고, 각각의 상호작용은 결제 트랜잭션 또는 통신 중 적어도 하나를 포함하는, 방법.
3항: 제1 또는 제2항에 있어서, 상기 적어도 하나의 상호작용은 상기 제2 장치와 원격 컴퓨터 시스템 간의 상호작용, 제2 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 상호작용 데이터베이스에 커플링된 제3 장치와 원격 컴퓨터 시스템 간의 상호작용, 제3 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 또는 가상 장치와 가상 원격 컴퓨터 시스템 간의 가상 상호작용 중 적어도 하나를 포함하는, 방법.
4항: 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 제1 장치에 의해, 제1 메시지를 전송하기 전에 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 챌린지 데이터와 응답 데이터를 결정하는 단계; 및 상기 제2 메시지를 수신하는 것에 응답하여, 상기 제2 장치에 의해, 제3 메시지를 전송하기 전에 제2 메시지로부터의 챌린지 데이터와 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 응답 데이터를 결정하는 단계를 더 포함하는, 방법.
5항: 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 상호작용 데이터베이스, 상기 제1 장치, 및 상기 제2 장치는 각각 제1 네트워크에 커플링되는, 방법.
6항: 제1항 내지 제5항 중 어느 한 항에 있어서, 상기 제1 장치, 상기 제2 장치 및 상기 원격 컴퓨터 시스템은 각각 상기 제1 네트워크와 별개의 제2 네트워크에 커플링되고, 상기 제1 메시지는 상기 제2 네트워크를 통해 제1 장치로부터 상기 원격 컴퓨터 시스템으로 전송되고, 상기 제2 메시지는 상기 제2 네트워크를 통해 상기 원격 컴퓨터 시스템으로부터 제2 장치에서 수신되고, 상기 제3 메시지는 상기 제2 네트워크를 통해 상기 제2 장치로부터 상기 원격 컴퓨터 시스템으로 전송되는, 방법.
7항: 제1항 내지 제6항 중 어느 한 항에 있어서상기 원격 컴퓨터 시스템은 상기 제1 메시지로부터의 응답 데이터와 상기 제3 메시지로부터의 응답 데이터의 비교에 기초하여 상기 제1 장치를 인증하는, 방법.
8항: 제1항 내지 제7항 중 어느 한 항에 있어서, 상기 챌린지 데이터를 가진 제2 메시지를 수신하는 것에 응답하여 상호작용 데이터베이스에 챌린지 데이터를 저장하는 단계를 더 포함하는, 방법.
9항: 제1항 내지 제8항 중 어느 한 항에 있어서, 상기 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 원격 컴퓨터 시스템 간의 상호작용을 차단하는 단계를 더 포함하는, 방법.
10항: 장치를 인증하기 위한 방법으로서, 제1 장치를 상호작용 데이터베이스에 커플링시키되, 상기 상호작용 데이터베이스는 제2 장치에 커플링되고, 상호작용 데이터베이스는 상호작용 데이터를 저장하며, 제1 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장하며, 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장하는, 단계; 제1 메시지를 제1 장치로부터 제1 원격 컴퓨터 시스템으로 전송하되, 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키와 연관된 제1 원격 컴퓨터 시스템 공개 키 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함하며, 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화되며, 제1 메시지는 제1 원격 컴퓨터 시스템의 제1 원격 컴퓨터 시스템 공개 키로 암호화되는, 단계; 제2 메시지를 제2 원격 컴퓨터 시스템으로부터 제2 장치에서 수신하되, 제2 메시지는 제1 메시지로부터의 제1 그룹 공개 키로 암호화된 챌린지 데이터 및 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함하며, 제2 메시지는 제2 장치 공개 키로 암호화되는, 단계; 제3 메시지를 제2 장치로부터 제2 원격 컴퓨터 시스템으로 전송하되, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함하며, 응답 데이터는 제1 그룹 공개 키로 암호화되며, 제3 메시지는 제2 메시지로부터의 제1 원격 컴퓨터 시스템 공개 키로 암호화되는, 단계; 및 제1 장치가 제2 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 제2 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 제1 원격 컴퓨터 시스템 및 제2 원격 컴퓨터 시스템 중 적어도 하나 간의 상호작용을 차단하는 단계를 포함하는, 방법.
11항: 장치를 인증하기 위한 시스템으로서, 상호작용 데이터를 저장하도록 구성된 상호작용 데이터베이스; 상호작용 데이터베이스에 커플링된 제1 장치로, 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장하도록 구성된, 상기 제1 장치; 및 상호작용 데이터베이스에 커플링된 제2 장치로, 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장하도록 구성된, 상기 제2 장치를 포함하고; 여기서 제1 장치는 제1 메시지를 원격 컴퓨터 시스템에 전송하도록 구성되며, 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키와 연관된 제1 원격 컴퓨터 시스템 공개 키 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함하며, 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화되며, 제1 메시지는 원격 컴퓨터 시스템의 제1 원격 컴퓨터 시스템 공개 키로 암호화되고; 여기서 제2 장치는 제2 메시지를 제2 원격 컴퓨터 시스템으로부터 수신하도록 구성되며, 제2 메시지는 제1 메시지로부터의 제1 그룹 공개 키로 암호화된 챌린지 데이터 및 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함하며, 제2 메시지는 제2 장치 공개 키로 암호화되고; 여기서 제2 장치는 제3 메시지를 제2 원격 컴퓨터 시스템에 전송하도록 구성되며, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함하며, 응답 데이터는 제1 그룹 공개 키로 암호화되며, 제3 메시지는 제2 메시지로부터의 제1 원격 컴퓨터 시스템 공개 키로 암호화되고; 그리고 여기서 제1 장치가 원격 컴퓨터 시스템에 의해 인증되었음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치는 제1 장치와 원격 컴퓨터 시스템 간의 상호작용을 허용하도록 구성되는, 시스템.
12항: 제11항에 있어서, 상기 상호작용 데이터는 적어도 하나의 상호작용과 연관된 데이터를 포함하고, 각각의 상호작용은 결제 트랜잭션 또는 통신 중 적어도 하나를 포함하는, 시스템.
13항: 제11항 또는 제12항에 있어서, 상기 적어도 하나의 상호작용은 상기 제2 장치와 원격 컴퓨터 시스템 간의 상호작용, 제2 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 상호작용 데이터베이스에 커플링된 제3 장치와 원격 컴퓨터 시스템 간의 상호작용, 제3 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 또는 가상 장치와 가상 원격 컴퓨터 시스템 간의 가상 상호작용 중 적어도 하나를 포함하는, 시스템.
14항: 제11항 내지 제13항 중 어느 한 항에 있어서, 상기 제1 장치는 상기 제1 메시지를 전송하기 전에 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 챌린지 데이터와 응답 데이터를 결정하도록 구성되고; 상기 제2 메시지를 수신하는 것에 응답하여, 제2 장치는 제3 메시지를 전송하기 전에 제2 메시지로부터의 챌린지 데이터와 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 응답 데이터를 결정하도록 구성되는, 시스템.
15항: 제11항 내지 제14항 중 어느 한 항에 있어서, 상기 상호작용 데이터베이스, 상기 제1 장치, 및 상기 제2 장치는 각각 제1 네트워크에 커플링되는, 시스템.
16항: 제11항 내지 제15항 중 어느 한 항에 있어서, 상기 제1 장치, 상기 제2 장치 및 상기 원격 컴퓨터 시스템은 각각 상기 제1 네트워크와 별개의 제2 네트워크에 커플링되고, 상기 제1 메시지는 제2 네트워크를 통해 제1 장치로부터 원격 컴퓨터 시스템으로 전송되고, 상기 제2 메시지는 제2 네트워크를 통해 원격 컴퓨터 시스템으로부터 제2 장치에서 수신되고, 상기 제3 메시지는 제2 네트워크를 통해 제2 장치로부터 원격 컴퓨터 시스템으로 전송되는, 시스템.
17항: 제11항 내지 제16항 중 어느 한 항에 있어서, 상기 원격 컴퓨터 시스템은 상기 제1 메시지로부터의 응답 데이터와 제3 메시지로부터의 응답 데이터의 비교에 기초하여 상기 제1 장치를 인증하는, 시스템.
18항: 제11항 내지 제17항 중 어느 한 항에 있어서, 상기 상호작용 데이터베이스는 상기 챌린지 데이터를 가진 제2 메시지를 수신하는 제2 장치에 응답하여 챌린지 데이터를 저장하도록 구성되는, 시스템.
19항: 제11항 내지 제18항 중 어느 한 항에 있어서, 상기 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치는 제1 장치와 원격 컴퓨터 시스템 간의 상호작용을 차단하도록 구성되는, 시스템.
20항: 장치를 인증하기 위한 시스템으로서, 상호작용 데이터를 저장하도록 구성된 상호작용 데이터베이스; 상호작용 데이터베이스에 커플링된 제1 장치로, 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장하도록 구성된, 상기 제1 장치; 및 상호작용 데이터베이스에 커플링된 제2 장치로, 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장하도록 구성된, 상기 제2 장치를 포함하고; 여기서 제1 장치는 제1 메시지를 원격 컴퓨터 시스템에 전송하도록 구성되며, 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키와 연관된 제1 원격 컴퓨터 시스템 공개 키 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함하며, 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화되며, 제1 메시지는 원격 컴퓨터 시스템의 제1 원격 컴퓨터 시스템 공개 키로 암호화되고; 여기서 제2 장치는 제2 메시지를 제2 원격 컴퓨터 시스템으로부터 수신하도록 구성되며, 제2 메시지는 제1 메시지로부터의 제1 그룹 공개 키로 암호화된 챌린지 데이터 및 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함하며, 제2 메시지는 제2 장치 공개 키로 암호화되고; 여기서 제2 장치는 제3 메시지를 제2 원격 컴퓨터 시스템에 전송하도록 구성되며, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함하며, 응답 데이터는 제1 그룹 공개 키로 암호화되며, 제3 메시지는 제2 메시지로부터의 제1 원격 컴퓨터 시스템 공개 키로 암호화되고; 그리고 여기서 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 제2 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치는 제1 장치와 제1 원격 컴퓨터 시스템 및 제2 원격 컴퓨터 시스템 중 적어도 하나 간의 상호작용을 차단하도록 구성되는, 시스템.
21항: 장치를 인증하기 위한 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 적어도 하나의 프로세서에 의해 실행될 때, 적어도 하나의 프로세서로 하여금, 제2 장치에 커플링된 상호작용 데이터베이스에 제1 장치를 커플링시키되, 상호작용 데이터베이스는 상호작용 데이터를 저장하며, 제1 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장하며, 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장하고; 제1 메시지를 제1 장치로부터 원격 컴퓨터 시스템으로 전송하되, 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함하며, 챌린지 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화되며, 제1 메시지는 원격 컴퓨터 시스템의 원격 컴퓨터 시스템 공개 키로 암호화되고, 여기서 제1 메시지에 응답하여, 제2 메시지가 원격 컴퓨터 시스템으로부터 제2 장치에서 수신되며, 제2 메시지는 제1 메시지의 제1 그룹 공개 키로 암호화된 챌린지 데이터를 포함하며, 제2 메시지는 제2 장치 공개 키로 암호화되고, 그리고 제2 메시지에 응답하여, 제3 메시지가 제2 장치로부터 원격 컴퓨터 시스템으로 전송되며, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함하며, 응답 데이터는 제1 그룹 공개 키로 암호화되며, 제3 메시지는 원격 컴퓨터 시스템 공개 키로 암호화되고; 그리고 제1 장치가 원격 컴퓨터 시스템에 의해 인증되었음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 원격 컴퓨터 시스템 간의 상호작용을 허용하게 하는, 하나 이상의 명령어를 포함하는 적어도 하나의 비일시적 컴퓨터 판독가능 매체를 포함하는, 컴퓨터 프로그램 제품.
22항: 제21항에 있어서, 상호작용 데이터는 적어도 하나의 상호작용과 연관된 데이터를 포함하고, 각각의 상호작용은 결제 트랜잭션 또는 통신 중 적어도 하나를 포함하는, 컴퓨터 프로그램 제품.
23항: 제21항 또는 제22항에 있어서, 상기 적어도 하나의 상호작용은 상기 제2 장치와 원격 컴퓨터 시스템 간의 상호작용, 제2 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 상호작용 데이터베이스에 커플링된 제3 장치와 원격 컴퓨터 시스템 간의 상호작용, 제3 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 또는 가상 장치와 가상 원격 컴퓨터 시스템 간의 가상 상호작용 중 적어도 하나를 포함하는, 컴퓨터 프로그램 제품.
24항: 제21항 내지 제23항 중 어느 한 항에 있어서, 상기 하나 이상의 명령어는 상기 적어도 하나의 프로세서에 의해 실행될 때, 추가로 적어도 하나의 프로세서로 하여금, 제1 메시지를 전송하기 전에 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 챌린지 데이터와 응답 데이터를 결정하게 하고, 여기서 상기 제2 메시지를 수신하는 것에 응답하여, 제2 장치는 제3 메시지를 전송하기 전에 제2 메시지로부터의 챌린지 데이터와 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 응답 데이터를 결정하도록 구성되는, 컴퓨터 프로그램 제품.
25항: 제21항 내지 제24항 중 어느 한 항에 있어서, 상기 상호작용 데이터베이스, 상기 제1 장치, 및 상기 제2 장치는 각각 제1 네트워크에 커플링되는, 컴퓨터 프로그램 제품.
26항: 제21항 내지 제25항 중 어느 한 항에 있어서, 상기 제1 장치, 상기 제2 장치 및 상기 원격 컴퓨터 시스템은 각각 상기 제1 네트워크와 별개의 제2 네트워크에 커플링되고, 추가로 여기서 상기 제1 메시지는 제2 네트워크를 통해 제1 장치로부터 원격 컴퓨터 시스템으로 전송되고, 상기 제2 메시지는 제2 네트워크를 통해 원격 컴퓨터 시스템으로부터 제2 장치에서 수신되고, 상기 제3 메시지는 제2 네트워크를 통해 제2 장치로부터 원격 컴퓨터 시스템으로 전송되는, 컴퓨터 프로그램 제품.
27항: 제21항 내지 제26항 중 어느 한 항에 있어서, 제3 메시지를 수신하는 것에 응답하여, 원격 컴퓨터 시스템은 제1 메시지로부터의 응답 데이터와 제3 메시지로부터의 응답 데이터의 비교에 기초하여 제1 장치를 인증하는, 컴퓨터 프로그램 제품.
28항: 제21항 내지 제27항 중 어느 한 항에 있어서, 상기 상호작용 데이터베이스는 챌린지 데이터를 가진 제2 메시지를 수신하는 제2 장치에 응답하여 챌린지 데이터를 저장하도록 구성되는, 컴퓨터 프로그램 제품.
29항: 제21항 내지 제28항 중 어느 한 항에 있어서, 상기 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치는 제1 장치와 원격 컴퓨터 시스템 간의 상호작용을 차단하도록 구성되는, 컴퓨터 프로그램 제품.
30항: 장치를 인증하기 위한 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 적어도 하나의 프로세서에 의해 실행될 때, 적어도 하나의 프로세서로 하여금, 제2 장치에 커플링된 상호작용 데이터베이스에 제1 장치를 커플링시키되, 상호작용 데이터베이스는 상호작용 데이터를 저장하며, 제1 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장하며, 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장하고; 제1 메시지를 제1 장치로부터 제1 원격 컴퓨터 시스템으로 전송하되, 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키와 연관된 제1 원격 컴퓨터 시스템 공개 키 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함하며, 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화되며, 제1 메시지는 제1 원격 컴퓨터 시스템의 제1 원격 컴퓨터 시스템 공개 키로 암호화되고, 여기서 제1 메시지에 응답하여, 제2 메시지가 제2 원격 컴퓨터 시스템으로부터 제2 장치에서 수신되며, 제2 메시지는 제1 메시지의 제1 그룹 공개 키로 암호화된 챌린지 데이터 및 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함하며, 제2 메시지는 제2 장치 공개 키로 암호화되고, 그리고 제2 메시지에 응답하여, 제3 메시지가 제2 장치로부터 제2 원격 컴퓨터 시스템으로 전송되며, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함하며, 응답 데이터는 제1 그룹 공개 키로 암호화되며, 제3 메시지는 제2 메시지로부터의 제1 원격 컴퓨터 시스템 공개 키로 암호화되고; 그리고 제1 장치가 제2 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 제2 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 제1 원격 컴퓨터 시스템 및 제2 원격 컴퓨터 시스템 중 적어도 하나 간의 상호작용을 차단하게 하는, 하나 이상의 명령어를 포함하는 적어도 하나의 비일시적 컴퓨터 판독가능 매체를 포함하는, 컴퓨터 프로그램 제품.
본 발명의 이들 및 다른 특징부 및 특징 뿐만 아니라, 구조의 관련 요소의 작동 및 기능 방법 그리고 구성요소의 조합 및 제조 경제성은, 첨부된 도면을 참조하여 다음 설명 및 첨부된 청구범위를 고려하면 더욱 명백해질 것이며, 이들 모두는 본 명세서의 일부를 형성하고, 여기서 유사한 도면 부호는 다양한 도면에서 상응하는 부분을 지정한다. 그러나, 도면은 단지 예시의 목적 및 설명만을 위한 것이며, 본 발명의 한계에 대한 정의로서 의도되지 않음을 명확히 이해해야 한다. 본 명세서 및 청구범위에 사용된 바와 같이, "일" "하나", 및 "한"의 단수 형태는 문맥이 명백하게 달리 지시하지 않는 한 복수의 참조를 포함한다.
본 발명의 추가적인 이점 및 세부사항은, 첨부 도면들에 예시되어 있는 예시적인 실시예들 또는 측면들을 참조하여 이하 더욱 상세히 설명된다.
도 1은 본원에 기재되는, 방법, 시스템 및/또는 컴퓨터 프로그램 제품이 본 발명의 원리에 따라 구현될 수 있는 환경의 비제한적인 실시예 또는 측면의 도면이고;
도 2는 도 1의 하나 이상의 장치의 구성요소들의 비제한적인 실시예 또는 측면의 도면이고;
도 3은 본 발명의 원리에 따른 장치 인증 프로세스의 비제한적인 실시예 또는 측면의 흐름도이고;
도 4는 도 3에 도시된 프로세스의 비제한적인 실시예 또는 측면의 구현예의 도면이고;
도 5는 도 3에 도시된 프로세스의 비제한적인 실시예 또는 측면의 구현예의 도면이고; 그리고
도 6은 도 3에 도시된 프로세스의 비제한적인 실시예 또는 측면의 구현예의 도면이다.
도 1은 본원에 기재되는, 방법, 시스템 및/또는 컴퓨터 프로그램 제품이 본 발명의 원리에 따라 구현될 수 있는 환경의 비제한적인 실시예 또는 측면의 도면이고;
도 2는 도 1의 하나 이상의 장치의 구성요소들의 비제한적인 실시예 또는 측면의 도면이고;
도 3은 본 발명의 원리에 따른 장치 인증 프로세스의 비제한적인 실시예 또는 측면의 흐름도이고;
도 4는 도 3에 도시된 프로세스의 비제한적인 실시예 또는 측면의 구현예의 도면이고;
도 5는 도 3에 도시된 프로세스의 비제한적인 실시예 또는 측면의 구현예의 도면이고; 그리고
도 6은 도 3에 도시된 프로세스의 비제한적인 실시예 또는 측면의 구현예의 도면이다.
이하에서 설명의 목적상, 용어 "단부", "상부", "하부", "우측", "좌측", "수직", "수평", "상단", "하단", "측방향", "길이방향", 및 이들의 파생 단어는 도면에서 배향됨에 따라 본 발명과 관련된다. 그러나, 본 발명은 상반되는 것을 명백히 특정하는 경우를 제외하고, 다양한 대안적인 변형 및 단계 순서를 가정할 수 있음을 이해해야 한다. 또한, 첨부된 도면에 예시되고 다음 명세서에 설명된 특정 장치 및 프로세스는, 본 발명의 간단하고 예시적인 실시예 또는 측면임을 이해해야 한다. 따라서, 본원에 개시된 실시예 또는 측면과 관련된 구체적인 치수 및 다른 물리적 특성은 달리 표시하지 않는 한 제한하는 것으로 간주되지 않는다.
본원에서 사용되는 측면, 구성요소, 요소, 구조, 동작, 단계, 기능, 지침 및/또는 기타 등등은 명시적으로 달리 설명되지 않는 한 중요한 또는 필수적인 것으로 해석되어서는 안 된다. 또한, 본원에서 사용되는 바와 같이, 관사 "a" 및 "an"은 하나 이상의 항목을 포함하고 "하나 이상" 및 "적어도 하나"와 상호 교환적으로 사용될 수 있다. 또한, 본원에서 사용되는 바와 같이, 용어 "세트"는 하나 이상의 항목(예컨대 관련 항목, 관련 없는 항목, 관련 및 관련 없는 항목의 조합 및/또는 기타 등등)을 포함하도록 의도되고, "하나 이상의" 또는 "적어도 하나"와 상호 교환적으로 사용될 수 있다. 한 항목만 의도한 경우, 용어 "하나" 또는 유사한 언어가 사용된다. 또한, 본원에서 사용되는 바와 같이, 용어 "가지다", "갖는" 등은 개방형 용어로 의도된다. 또한, "~에 기초하는"이라는 표현은 달리 명시적으로 언급되지 않는 한 "적어도 부분적으로 ~에 기초하는"을 의미하도록 의도된다.
본원에서 사용되는 바와 같이, 용어 "통신" 및 "통신하다"는 정보(예, 데이터, 신호, 메시지, 지시, 명령어 및/또는 기타 등등)의 수신, 수령, 송신, 전달, 제공 및/또는 기타 등등을 지칭할 수 있다. 하나의 유닛(예, 장치, 시스템, 또는 장치나 시스템의 구성요소, 이들의 조합 및/또는 기타 등등)이 다른 유닛과 통신한다는 것은, 한 유닛이 다른 유닛으로부터 정보를 직접 또는 간접적으로 수신하고/수신하거나 다른 유닛으로 정보를 송신할 수 있음을 의미한다. 이는 본래 유선 및/또는 무선인 직접적 또는 간접적인 접속(예, 직접 통신 접속, 간접 통신 접속 및/또는 기타 등등)을 지칭할 수 있다. 또한, 송신된 정보가 제1 및 제2 유닛 사이에서 수정, 처리, 중계되고 그리고/또는 라우팅될 수 있을지라도, 두 개의 유닛은 서로 통신할 수 있다. 예를 들어, 제1 유닛이 정보를 수동적으로 수신하고 제2 유닛에 정보를 능동적으로 송신하지 않더라도, 제1 유닛은 제2 유닛과 통신할 수 있다. 다른 예로서, 제1 유닛은 적어도 하나의 중개 유닛(예, 제1 유닛 및 제2 유닛 사이에 위치한 제3 유닛)이 제1 유닛으로부터 수신된 정보를 처리하고 처리된 정보를 제2 유닛에 전달하는 경우 제2 유닛과 통신할 수 있다. 일부 비제한적인 실시예 또는 측면에서, 메시지는 데이터를 포함하는 네트워크 패킷(예, 데이터 패킷 및/또는 기타 등등)을 지칭할 수 있다. 수많은 다른 배열이 가능함을 이해할 것이다.
본문에서 사용되는 바와 같이, "발급자 기관", "휴대용 금융 기기 발급자", "발급자", 또는 "발급자 은행"이라는 용어는, 신용 및/또는 직불 결제 개시와 같은 트랜잭션(예, 결제 트랜잭션)을 수행하기 위해, 고객에게 계좌를 제공하는 하나 이상의 실체를 지칭할 수 있다. 예를 들어, 발급자 기관은 개인 계정 번호(PAN)와 같은 계정 식별자를, 고객과 연관된 하나 이상의 계정을 고유하게 식별하는 고객에게 제공할 수 있다. 계정 식별자는, 예를 들어 결제 카드와 같은 물리적 금융 기기 같은 휴대용 금융 기기에서 구현될 수 있고/있거나 전자식일 수 있고 전자 결제에 사용될 수 있다. "발급자 기관" 및 "발급자 기관 시스템"이라는 용어는, 또한 발급자 기관에 의해 또는 이를 대신하여 운영되는 하나 이상의 컴퓨터 시스템, 예컨대 하나 이상의 소프트웨어 애플리케이션을 실행하는 서버 컴퓨터를 지칭할 수 있다. 예를 들어, 발급자 기관 시스템은 트랜잭션을 인가하는 하나 이상의 인가 서버를 포함할 수 있다.
본원에서 사용되는 바와 같이, 용어 "계정 식별자"는 사용자 계정과 연관된 하나 이상의 유형의 식별자(예, PAN, 일차 계정 번호, 카드 번호, 지불 카드 번호, 토큰 및/또는 기타 등등)를 포함할 수 있다. 일부 비제한적인 실시예 또는 측면에서, 발급자 기관은 계정 식별자(예, PAN, 토큰 및/또는 기타 등등)를 해당 사용자와 연관된 하나 이상의 계정을 고유하게 식별하는 사용자에게 제공할 수 있다. 계정 식별자는 물리적 금융 기기(예, 휴대용 금융 기기, 지불 카드, 신용 카드, 직불 카드 및/또는 기타 등등)에서 구현될 수 있고/있거나 사용자가 전자 결제를 위해 사용할 수 있는 사용자에게 전달되는 전자 정보일 수도 있다. 일부 비제한적인 실시예 또는 측면에서, 계정 식별자는 원래의 계정 식별자일 수 있으며, 여기서 원래의 계정 식별자는 계정 식별자와 연관된 계정 생성 시 사용자에게 제공된 것이다. 일부 비제한적인 실시예 또는 측면에서, 계정 식별자는 원래 계정 식별자가 사용자에게 제공된 후에 사용자에게 제공되는 계정 식별자(예, 보조 계정 식별자)일 수 있다. 예를 들어, 원래의 계정 식별자가 분실, 도난 및/또는 기타 등등인 경우, 보조 계정 식별자가 사용자에게 제공될 수 있다. 일부 비제한적인 실시예 또는 측면에서, 계정 식별자는, 계정 식별자가 PAN 또는 다른 유형의 계정 식별자에 매핑되는 토큰일 수 있도록, 발급자 기관과 직접 또는 간접적으로 연관될 수 있다. 계정 식별자는 영숫자, 문자 및/또는 기호의 임의의 조합 및/또는 기타 등등일 수 있다. 발급자 기관은 발급자 기관을 고유하게 식별하는 은행 식별 번호(BIN)와 연관될 수 있다.
본원에서 사용되는 바와 같이, 용어 "토큰"은, PAN 같은 계정 식별자에 대한 대체 또는 교체 식별자로 사용되는 식별자를 지칭할 수 있다. 토큰은 하나 이상의 데이터 구조(예, 하나 이상의 데이터베이스 및/또는 기타 등등)의 PAN 또는 다른 계정 식별자와 연관될 수 있어서, PAN 같은 계정 식별자를 직접 사용하지 않고 트랜잭션(예, 결제 트랜잭션)을 수행하는 데 사용될 수 있다. 일부 예시에서, PAN과 같은 계정 식별자는, 상이한 개인, 상이한 사용 및/또는 상이한 목적을 위해 복수의 토큰과 연관될 수 있다.
본원에서 사용되는 바와 같이, 용어 "상인(merchant)"은 하나 이상의 개체(예를 들어, 트랜잭션(예, 결제 트랜잭션)에 기초하여 상품 및/또는 서비스, 및/또는 상품 및/또는 서비스에 대한 접근을, 사용자(예, 고객, 소비자, 상점의 고객 및/또는 기타 등등)에게 제공하는 소매 사업의 운영자)를 지칭할 수 있다. 본원에서 사용되는 바와 같이, "상인 시스템"은 하나 이상의 소프트웨어 애플리케이션을 실행하는 서버 컴퓨터와 같은, 상인을 대신하여 작동되는 하나 이상의 컴퓨터 시스템을 지칭할 수 있다. 본원에서 사용되는 바와 같이, 용어 "제품"은 상인이 제공하는 하나 이상의 상품 및/또는 서비스를 지칭할 수 있다.
본원에서 사용되는 바와 같이, "POS(point-of-sale) 장치"는, 트랜잭션(예, 결제 트랜잭션)을 개시하고, 트랜잭션에 관여하고, 그리고/또는 트랜잭션을 처리하기 위해 상인이 사용될 수 있는, 하나 이상의 장치를 지칭할 수 있다. 예를 들어, POS 장치는 하나 이상의 컴퓨터, 주변 장치, 카드 판독기, 근거리 통신(near-field communication, NFC) 수신기, 무선 주파수 식별(RFID) 수신기, 및/또는 기타 비접촉식 트랜시버 또는 수신기, 접촉 기반 수신기, 결제 단말기, 컴퓨터, 서버, 입력 장치 및/또는 기타 등등을 포함할 수 있다.
본원에서 사용되는 바와 같이, "POS(point-of-sale) 시스템"은 트랜잭션을 수행하기 위해 상인이 사용하는 하나 이상의 컴퓨터 및/또는 주변 장치를 지칭할 수 있다. 예를 들어, POS 시스템은 하나 이상의 POS 장치 및/또는 결제 트랜잭션을 수행하는 데 사용될 수 있는 다른 유사한 장치를 포함할 수 있다. POS 시스템(예, 상점 POS 시스템)은 웹페이지, 모바일 애플리케이션 및/또는 기타 등등을 통해 온라인 결제 트랜잭션을 처리하도록 프로그래밍되거나 구성된 하나 이상의 서버 컴퓨터를 또한 포함할 수 있다.
본원에서 사용되는 바와 같이, 용어 "트랜잭션 서비스 제공자"는, 상인 또는 다른 실체로부터 인가 요청을 수신하고, 일부 경우에 트랜잭션 서비스 제공자와 발급자 기관 간의 합의를 통해, 결제 보증을 제공하는 엔티티를 지칭할 수 있다. 일부 비제한적인 실시예 또는 측면에서, 트랜잭션 서비스 제공자는 신용카드 회사, 직불카드 회사 및/또는 기타 등등을 포함할 수 있다. 본원에서 사용되는 바와 같이, 용어 "트랜잭션 서비스 제공자 시스템"은, 하나 이상의 소프트웨어 애플리케이션을 실행하는 트랜잭션 처리 서버와 같이, 트랜잭션 서비스 제공자에 의해 또는 이를 대신하여 작동되는 하나 이상의 컴퓨터 시스템을 지칭할 수 있다. 트랜잭션 처리 서버는 하나 이상의 프로세서를 포함할 수 있고, 일부 비제한적인 실시예 또는 측면에서, 트랜잭션 서비스 제공자에 의해 또는 이를 대신하여 운영될 수 있다.
본원에서 사용되는 바와 같이, 용어 "매입자"는 트랜잭션 서비스 제공자에 의해 가맹되고 트랜잭션 서비스 제공자에 의해 승인된 엔티티를 지칭하고, 트랜잭션 서비스 제공자와 연관된 휴대용 금융 기기를 사용하여 트랜잭션(예, 결제 트랜잭션)을 일으킨다. 본원에서 사용되는 바와 같이, 용어 "매입자 시스템"은 또한 매입자에 의해 또는 그를 대신하여 운영되는 하나 이상의 컴퓨터 시스템, 컴퓨터 장치 및/또는 기타 등등을 지칭할 수 있다. 매입자가 일으킬 수 있는 트랜잭션은 트랜잭션(예, 구매, 오리지널 신용 트랜잭션(OCT), 계좌 자금 트랜잭션(AFT) 및/또는 기타 등등)을 포함할 수 있다. 일부 비제한적인 실시예 또는 측면에서, 매입자는 트랜잭션 서비스 제공자의 휴대용 금융 기기를 사용하여 트랜잭션을 일으키기 위해 상인 또는 서비스 제공자를 지정하도록 트랜잭션 서비스 제공자의 승인을 받을 수 있다. 매입자 기관은, 결제 조력자(payment facilitator)가 상인을 후원할 수 있도록 결제 조력자와 계약을 맺을 수 있다. 매입자는 트랜잭션 서비스 제공자의 규정에 따라 결제 조력자의 준수여부를 모니터링할 수 있다. 매입자는 결제 조력자에 대한 실사를 실시할 수 있으며 후원 상인에 서명하기 전에 적절한 실사가 이루어지도록 보장한다. 매입자는 매입자가 운영하거나 후원하는 모든 트랜잭션 서비스 제공자 프로그램에 대해 책임을 질 수 있다. 매입자는 매입자의 결제 조력자, 매입자의 결제 조력자가 후원하는 상인 및/또는 기타 등등의 행위에 대한 책임을 질 수 있다. 일부 비제한적인 실시예 또는 측면에서, 매입자는 은행과 같은 금융 기관일 수 있다.
본원에서 사용되는 바와 같이, 용어 "전자 지갑 모바일 애플리케이션(electronic wallet mobile application)" 및 "디지털 지갑(digital wallet)"은 트랜잭션(예, 결제 트랜잭션, 전자 결제 트랜잭션 및/또는 기타 등등)을 개시 및/또는 수행하도록 구성된 하나 이상의 전자 장치 및/또는 하나 이상의 소프트웨어 애플리케이션을 지칭할 수 있다. 예를 들어, 전자 지갑은, 애플리케이션 프로그램 및 서버 측 소프트웨어 및/또는 트랜잭션 데이터를 유지 관리 및 사용자 장치에 제공하기 위한 데이터베이스를 실행하는 사용자 장치(예, 모바일 장치)를 포함할 수 있다. 본원에서 사용되는 바와 같이, 용어 "전자 지갑 제공자"는 사용자(예, 고객)를 위한 전자 지갑 및/또는 전자 지갑 모바일 애플리케이션을 제공 및/또는 유지하는 엔티티를 포함할 수 있다. 전자 지갑 제공자의 예로는 Google Wallet™, Android Pay®, Apple Pay® 및 Samsung Pay®가 포함되나 이에 한정되지 않는다. 일부 비제한적인 예에서, 금융 기관(예, 발급자 기관)이 전자 지갑 제공자일 수 있다. 본원에서 사용되는 바와 같이, 용어 "전자 지갑 제공자 시스템"은 전자 지갑 제공자에 의해 또는 전자 지갑 공급자를 대신하여 운영되는 하나 이상의 컴퓨터 시스템, 컴퓨터 장치, 서버, 서버 그룹 및/또는 기타 등등을 지칭할 수 있다.
본원에서 사용되는 바와 같이, 용어 "휴대용 금융 기기"는 결제 카드(예, 신용 또는 직불 카드), 기프트 카드, 스마트 카드, 스마트 매체, 페이롤 카드, 헬스케어 카드, 손목 밴드, 계정 정보가 포함된 기계 판독 가능 매체, 키체인 장치 또는 fob, RFID 트랜스폰더(transponder), 슈퍼마켓 할인 또는 로열티 카드, 휴대 전화, 전자 지갑 모바일 애플리케이션, 개인 휴대 단말기(PDA), 호출기, 보안 카드, 컴퓨터, 액세스 카드, 무선 단말기, 트랜스폰더 및/또는 기타 등등을 지칭할 수 있다. 일부 비제한적인 실시예 또는 측면에서, 휴대용 금융 기기는 정보(예, 계정 식별자, 계정 보유자 이름 및/또는 기타 등등)를 저장하는 휘발성 또는 비휘발성 메모리를 포함할 수 있다.
본원에서 사용되는 바와 같이, 용어 "결제 게이트웨이"는 엔티티 및/또는 그러한 엔티티에 의하거나 그를 대신하여 운영되는 결제 처리 시스템(예, 상점 서비스 제공자, 결제 서비스 제공자, 결제 조력자, 매입자와 계약을 맺은 결제 조력자, 지급 집계자(payment aggregator) 및/또는 기타 등등)을 지칭할 수 있으며, 결제 서비스(예, 트랜잭션 서비스 제공자 지불 서비스, 결제 처리 서비스 및/또는 기타 등등)를 한 명 이상의 상점에 제공한다. 결제 서비스는 트랜잭션 서비스 제공자가 관리하는 휴대용 금융 기기의 사용과 연관될 수 있다. 본원에서 사용되는 바와 같이, 용어 "결제 게이트웨이 시스템"은 결제 게이트웨이에 의해 또는 이를 대신하여 운영되는 하나 이상의 컴퓨터 시스템, 컴퓨터 장치, 서버, 서버 그룹 및/또는 기타 등등, 및/또는 결제 게이트웨이 자체를 지칭될 수 있다. 용어 "결제 게이트웨이 모바일 애플리케이션"은, 트랜잭션(예, 결제 트랜잭션, 전자 결제 트랜잭션 및/또는 기타 등등)에 대한 결제 서비스를 제공하도록 구성된 하나 이상의 전자 장치 및/또는 하나 이상의 소프트웨어 애플리케이션을 지칭할 수 있다.
본원에서 사용되는 바와 같이, 용어 "클라이언트" 및 "클라이언트 장치"는 트랜잭션(예, 결제 트랜잭션)을 개시하거나 촉진하기 위해 사용되는 하나 이상의 클라이언트 측 장치 또는 시스템(예, 트랜잭션 서비스 제공자로부터 원격 상태)을 지칭할 수 있다. 일례로, "클라이언트 장치"는 상인이 사용하는 하나 이상의 POS 장치, 매입자가 사용하는 하나 이상의 매입자 호스트 컴퓨터, 사용자가 사용하는 하나 이상의 모바일 장치 및/또는 기타 등등을 지칭할 수 있다. 일부 비제한적인 실시예 또는 측면에서, 클라이언트 장치는 하나 이상의 네트워크와 통신하고, 트랜잭션을 개시 또는 촉진하도록 구성된 전자 장치일 수 있다. 예를 들어, 클라이언트 장치는 하나 이상의 컴퓨터, 휴대용 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 모바일 기기, 휴대폰, 웨어러블 기기(예, 시계, 안경, 렌즈, 의류 및/또는 기타 등등), PDA 및/또는 기타 등등을 포함할 수 있다. 또한, "클라이언트"는 또한 트랜잭션을 개시하기 위해 (예를 들어, 트랜잭션 서비스 제공자와 트랜잭션을 개시하기 위해) 클라이언트 장치를 소유, 활용 및/또는 운영하는 엔티티(예, 상점, 매입자 및/또는 기타 등등)를 지칭할 수 있다.
본원에서 사용되는 바와 같이, 용어 "서버"는 네트워크(예, 공개 네트워크, 인터넷, 사설 네트워크 및/또는 기타 등등)를 통해 클라이언트 장치 및/또는 다른 연산 장치와 통신하고, 일부 예에서, 다른 서버 및/또는 클라이언트 장치 간에 통신을 촉진하는, 하나 이상의 연산 장치(예, 프로세서, 저장 장치, 유사한 컴퓨터 구성요소 및/또는 기타 등등)를 지칭할 수 있다. 다양한 다른 배열이 가능함을 이해할 것이다. 본원에서 사용되는 바와 같이, 용어 "시스템"은 하나 이상의 연산 장치 또는 연산 장치(예, 프로세서, 서버, 클라이언트 장치, 소프트웨어 애플리케이션, 이러한 것들의 구성요소들 및/또는 기타 등등)의 조합을 지칭할 수도 있다. 본원에서 사용되는 바와 같이, "장치", "서버", "프로세서" 및/또는 기타 등등에 대한 참조는, 이전 단계 또는 기능을 수행하는 것으로 인용되는 이전에 인용된 장치, 서버 또는 프로세서, 다른 서버 또는 프로세서, 및/또는 서버 및/또는 프로세서의 조합을 지칭할 수 있다. 예를 들어, 본 명세서 및 청구범위에 사용된 바와 같이, 제1 단계 또는 제1 기능을 수행하는 것으로 인용되는 제1 서버 또는 제1 프로세서는 제2 단계 또는 제2 기능을 수행하는 것으로 인용된 동일하거나 상이한 서버 또는 동일하거나 상이한 프로세서를 지칭할 수 있다.
본원에서 사용되는 바와 같이, 용어 "사물인터넷(IoT) 장치"는 네트워크(예, 공개 네트워크, 인터넷, 사설 네트워크 및/또는 기타 등등)를 통해 다른 이러한 장치 및/또는 다른 연산 장치와 통신할 수 있는 하나 이상의 장치(예, 클라이언트 장치, 어플라이언스, 스마트 기기, 컴퓨터, 휴대용 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 모바일 장치, 휴대폰, 웨어러블 기기, PDA, 객체(object), 및/또는 기타 등등)를 지칭할 수 있다. 일례로, IoT 장치는 하나 이상의 통신 네트워크 내에 식별되고 통합될 수 있는 하나 이상의 장치 또는 객체를 지칭할 수 있다.
개시된 주제에 대한 비제한적인 실시예들 또는 측면들은 장치 인증을 포함하지만 이에 한정되지 않는, 인증 시스템, 방법 및 컴퓨터 프로그램 제품에 관한 것이다. 예를 들어, 개시된 주제에 대한 비제한적인 실시예들 또는 측면들은 상호작용 데이터베이스 및 적어도 하나의 다른 장치와 관련된 프로토콜을 사용하여 원격 컴퓨터 시스템으로 장치를 인증하는 것을 제공한다. 이러한 실시예들 또는 측면들은 인간의 노력 및/또는 개입 없이 원격 컴퓨터 시스템에 의한 (또는 최소한 감소된 인간의 노력 및/또는 개입) 자동 인증을 위한 기법 및 시스템을 제공한다. 추가적으로 또는 대안적으로, 이러한 기법 및 시스템은 동적일 수 있는(예를 들어, 상호작용 데이터베이스 내의 정보에 기초하여 동적으로 결정될 수 있는) 챌린지 데이터(예, 챌린지 질문) 및 대응하는 응답 데이터(예, 챌린지 질문에 대해 필요한 응답)를 사용하는 것을 포함할 수 있으며, 공격자(예, 도청자)가 미래의 인증을 위해 챌린지-응답 조합을 재사용하지 못하게 함으로써 그리고 상호작용 데이터베이스에 연결된 장치(예, 신뢰 그룹 내 장치)에 의해서만 챌린지를 풀 수 있음을 보장함으로써 보안을 개선시킨다. 추가적으로 또는 대안적으로, 이러한 기법 및 시스템은 암호화된 적어도 하나의 부분이 암호화된 상태로 유지되는 동안 수취인이 메시지를 부분적으로만 복호화할 수 있는 것에 대해 다수의 레벨 및/또는 형식의 암호화를 가진 메시지(예를 들어, 하나의 공개 키로 암호화된 메시지의 적어도 일부분, 그리고 이어서 다른 하나의 공개 키로 암호화된 전체 메시지)를 통신하는 것을 포함할 수 있으며, 공격자(예, 중간 침입자)가 프로토콜을 악용하는 것을 막음으로써 보안을 개선하고 암호화된 적어도 일부분의 보안을 유지하면서 제3자의 공개 키에 의한 부분 암호화/복호화를 허용함으로써 유연성을 개선시킨다. 추가적으로 또는 대안적으로, 이러한 기법 및 시스템은 각 장치에 대한 공개 키 및 개인 키 쌍 뿐만 아니라 장치 그룹에 대한 공개 키 및 개인 키를 사용하는 것을 포함할 수 있으며, 원격 컴퓨터 시스템이 새로운 장치를 인증하기 위해 그룹에 있는 임의의 장치를 선택할 수 있기 때문에, 보안 및 유연성을 개선하고 어느 장치가 그것을 인증하는지 (예를 들어, 새로운 장치가 침해된 장치를 선택하는 것을 차단하도록) 새로운 장치가 선택할 필요성을 제거한다. 추가적으로 또는 대안적으로, 상호작용 데이터베이스는 물리적 격리 및/또는 그에 커플링된 장치(들)(예, 신뢰 그룹의 장치)와의 암호화된 통신을 통해 미승인된 접근으로부터 보호될 수 있으며, 이는 보안을 더욱 향상시킨다.
예시의 목적으로, 다음 설명에서, 예를 들어 결제 트랜잭션을 수행하기 위해, 장치를 인증하기 위한 방법, 시스템 및 컴퓨터 프로그램 제품과 관련하여 현재 개시된 주제가 설명되는 한편, 당업자라면 개시된 주제가 예시적인 실시예들 또는 측면들로 한정되지 않음을 인식할 것이다. 예를 들어, 본원에서 설명되는 방법, 시스템 및 컴퓨터 프로그램 제품은 광범위한 세팅들, 예컨대다른 유형들의 상호작용, 예를 들어 통신, 임의의 장치(들), 시스템(들), 네트워크(들), 및/또는 이들의 조합과 연관되는 미결제 트랜잭션, 상호작용과 관련된 장치 인증, 또는 인증을 위한 임의의 다른 적절한 세팅으로 사용될 수 있다.
이제 도 1을 참조하면, 도 1은 본원에서 설명되는 바와 같은, 시스템, 장치 및/또는 방법이 구현될 수 있는 환경(100)에 대한 비한정적 실시예 또는 측면의 도면이다. 도 1에 도시된 바와 같이, 환경(100)은 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104), 고객 장치(106), 상인 시스템(108), 매입자 시스템(110) 및 네트워크(112)를 포함한다.
트랜잭션 서비스 제공자 시스템(102)은 네트워크(112)를 통해서 발급자 시스템(104), 고객 장치(106), 상인 시스템(108) 및/또는 매입자 시스템(110)으로부터 정보를 수신하고 그리고/또는 이들에 정보를 전달할 수 있는 하나 이상의 장치를 포함할 수 있다. 예를 들어, 트랜잭션 서비스 제공자 시스템(102)은 서버(예, 트랜잭션 처리 서버), 서버 그룹, 및/또는 다른 유사 장치와 같은, 연산 장치를 포함할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 트랜잭션 서비스 제공자 시스템(102)은 본원에서 설명되는 바와 같은 트랜잭션 서비스 제공자와 연관될 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 트랜잭션 서비스 제공자 시스템(102)은, 트랜잭션 서비스 제공자 시스템(102)에 대해 로컬 또는 원격일 수 있는, 데이터 저장 장치와 통신할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 트랜잭션 서비스 제공자 시스템(102)은 데이터 저장 장치로부터 정보를 수신하거나, 장치에 정보를 저장하거나, 장치에 정보를 전달하거나, 저장된 정보를 검색할 수 있다.
발급자 시스템(104)은 네트워크(112)를 통해 트랜잭션 서비스 제공자 시스템(102), 고객 장치(106), 상인 시스템(108) 및/또는 매입자 시스템(110)에 정보를 수신하고/하거나 정보를 전달할 수 있는 하나 이상의 장치를 포함할 수 있다. 예를 들어, 발급자 시스템(104)은 서버, 서버 그룹, 및/또는 다른 유사 장치와 같은 연산 장치를 포함할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 발급자 시스템(104)은 본원에서 설명되는 바와 같이 발급자 기관과 연관될 수 있다. 예를 들어, 발급자 시스템(104)은, 고객 장치(106)와 연관된 사용자에게 신용 계정, 직불 계정, 신용 카드, 직불 카드 및/또는 기타 등등을 발급한 발급자 기관과 연관될 수 있다.
고객 장치(106)는 네트워크(112)를 통해 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104), 상인 시스템(108), 매입자 시스템(110)으로부터 정보를 수신하고 및/또는 정보를 전달할 수 있는 하나 이상의 장치를 포함할 수 있다. 추가적으로 또는 대안적으로, 각각의 고객 장치(106)는 네트워크(112), 다른 네트워크(예를 들어, 애드혹 네트워크, 로컬 네트워크, 사설 네트워크, 가상 사설 네트워크 및/또는 기타 등등) 및/또는 임의의 다른 적절한 통신 기술을 통해 정보를 수신하거나 다른 고객 장치(106)에 정보를 전달할 수 있는 장치를 포함할 수 있다. 예를 들어, 고객 장치(106)는 클라이언트 장치, IoT 장치 및/또는 기타 등등을 포함할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 고객 장치(106)는 단거리 무선 통신 연결(예, NFC 통신 연결, RFID 통신 연결, Bluetooth® 통신 연결, Zigbee 통신 연결 및/또는 기타 등등)을 통해 (예를 들어, 상인 시스템(108)로부터 또는 다른 고객 장치(106)로부터) 정보를 수신하고 및/또는 단거리 무선 통신 연결을 통해 (예를 들어, 상인 시스템(108)에) 정보를 전달할 수도 있거나 그렇지 않을 수도 있다.
상인 시스템(108)은, 네트워크(112)를 통해 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104), 고객 장치(106) 및/또는 매입자 시스템(110)으로부터 정보를 수신하고 및/또는 정보를 전달할 수 있는 하나 이상의 장치를 포함할 수 있다. 상인 시스템(108)은 또한 네트워크(112), 고객 장치(106) 및/또는 기타 등등과의 통신 연결(예, NFC 통신 연결, RFID 통신 연결, Bluetooth® 통신 연결, Zigbee 통신 연결 및/또는 기타 등등)을 통해 고객 장치(106)로부터 정보를 수신하고, 그리고/또는 네트워크, 통신 연결 및/또는 기타 등등을 통해 고객 장치(106)에 통신 정보를 전달할 수 있는 장치를 포함할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 상인 시스템(108)은 서버, 서버 그룹, 클라이언트 장치, 클라이언트 장치 그룹 및/또는 다른 유사 장치와 같은 연산 장치를 포함할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 상인 시스템(108)은 본원에서 설명되는 바와 같은 상인과 연관될 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 상인 시스템(108)은 하나 이상의 클라이언트 장치를 포함할 수 있다. 예를 들어, 상인 시스템(108)은 상인이 정보를 트랜잭션 서비스 제공자 시스템(102)에 전달할 수 있게 하는 클라이언트 장치를 포함할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 상인 시스템(108)은, 사용자와 트랜잭션을 수행하기 위해 상인이 사용할 수 있는 컴퓨터, 컴퓨터 시스템 및/또는 주변 기기와 같은 하나 이상의 장치를 포함할 수 있다. 예를 들어, 상인 시스템(108)은 POS 장치 및/또는 POS 시스템을 포함할 수 있다.
매입자 시스템(110)은, 네트워크(112)를 통해 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104), 고객 장치(106), 및/또는 상인 시스템(108)으로부터 정보를 수신하고 및/또는 정보를 전달할 수 있는 하나 이상의 장치를 포함할 수 있다. 예를 들어, 매입자 시스템(110)은 연산 장치, 서버, 서버 그룹 및/또는 기타 등등을 포함할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 매입자 시스템(110)은 본원에서 설명되는 바와 같이 매입자와 연관될 수 있다.
네트워크(112)는 하나 이상의 유선 및/또는 무선 네트워크를 포함할 수 있다. 예를 들어, 네트워크(112)는 셀룰러 네트워크(예, 롱텀 에볼루션(LTE) 네트워크, 3세대(3G) 네트워크, 4세대(4G) 네트워크, 코드 분할 다중 액세스(CDMA) 네트워크, 및/또는 기타 등등), 공중 육상 모바일 네트워크(CDMA), 근거리 네트워크(LAN), 광역 네트워크(WAN), 대도시 네트워크(MAN), 전화 네트워크(예, 공중 교환 전화 네트워크(PSTN)), 사설 네트워크(예, 트랜잭션 서비스 제공자와 연관된 사설 네트워크), 애드혹 네트워크, 인트라넷, 인터넷, 광섬유 기반 네트워크, 클라우드 연산 네트워크 및/또는 기타 등등, 및/또는 이들 또는 다른 유형의 네트워크들의 조합을 포함할 수 있다.
도 1에 도시된 시스템, 장치 및/또는 네트워크의 개수 및 배열이 예로서 제공된다. 도 1에 도시된 것들 보다 추가의 시스템, 장치 및/또는 네트워크; 더 적은 시스템, 장치 및/또는 네트워크; 상이한 시스템, 장치 및/또는 네트워크; 및/또는 서로 다르게 배열된 시스템, 장치 및/또는 네트워크가 있을 수 있다. 또한, 도 1에 도시된 둘 이상의 시스템 또는 장치가 단일 시스템 또는 장치 내에 구현될 수 있거나, 도 1에 도시된 단일 시스템 또는 장치가 다수, 분산 시스템 또는 장치로 구현될 수 있다. 추가적으로 또는 대안적으로, 환경(100)의 시스템들의 세트(예, 하나 이상의 시스템) 또는 장치들의 세트(예, 하나 이상의 장치)가 환경(100)의 다른 시스템들의 세트 또는 장치들의 세트에 의해 수행되는 것으로 설명된 하나 이상의 기능을 수행할 수 있다.
이제 도 2를 참조하면, 도 2는 장치(200)의 예시적인 구성요소들의 도면이다. 장치(200)는 트랜잭션 서비스 제공자 시스템(102)의 하나 이상의 장치, 발급자 시스템(104)의 하나 이상의 장치, 고객 장치(106), 상인 시스템(108)의 하나 이상의 장치, 및/또는 매입자 시스템(110)의 하나 이상의 장치에 대응할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104), 고객 장치(106), 상인 시스템(108) 및/또는 매입자 시스템(110)은 적어도 하나의 장치(200) 및/또는 장치(200)의 적어도 하나의 구성요소를 포함할 수 있다. 도 2에 도시된 바와 같이, 장치(200)는 버스(202), 프로세서(204), 메모리(206), 저장 구성요소(208), 입력 구성요소(210), 출력 구성요소(212), 및 통신 인터페이스(214)를 포함할 수 있다.
버스(202)는 장치(200)의 구성요소들 사이의 통신을 허용하는 구성요소를 포함할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 프로세서(204)는 하드웨어, 펌웨어 또는 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 예를 들어 프로세서(204)는 프로세서(예, 중앙 처리 유닛(CPU), 그래픽 처리 유닛(GPU), 가속 처리 유닛(APU) 및/또는 기타 등등), 마이크로프로세서, 디지털 신호 프로세서(DSP), 및/또는 임의의 처리 구성요소(예, 필드 프로그램 가능 게이트 어레이(FPGA), 주문형 집적 회로(ASIC) 및/또는 기타 등등) 및/또는 기타 등등을 포함할 수 있고, 이들은 기능을 수행하도록 프로그래밍될 수 있다. 메모리(206)는 랜덤 액세스 메모리(RAM), 읽기 전용 메모리(ROM), 및/또는 프로세서(204)가 사용하기 위한 정보 및/또는 명령어를 저장하는 다른 유형의 동적 또는 정적 저장 장치(예, 플래시 메모리, 자기 메모리, 광학 메모리 및/또는 기타 등등)를 포함할 수 있다.
저장 구성요소(208)는 장치(200)의 작동 및 사용에 관련된 정보 및/또는 소프트웨어를 저장할 수 있다. 예를 들어, 저장 구성요소(208)는 대응하는 드라이브와 함께, 하드 디스크(예, 자기 디스크, 광학 디스크, 자기-광학 디스크, 고형 상태 디스크 및/또는 기타 등등), 콤팩트 디스크(CD), 디지털 다기능 디스크(DVD), 플로피 디스크, 카트리지, 자기 테이프, 및/또는 다른 유형의 컴퓨터 판독가능 매체를 포함할 수 있다.
입력 구성요소(210)는 장치(200)가 사용자 입력을 통해 정보를 수신할 수 있게 하는 구성요소를 포함할 수 있다(예, 터치 스크린 디스플레이, 키보드, 키패드, 마우스, 버튼, 스위치, 마이크 및/또는 기타 등등). 추가적으로 또는 대안적으로, 입력 구성요소(210)는 정보를 센싱하기 위한 센서를 포함할 수 있다(예, 위성 항법 시스템(GPS) 구성요소, 가속도계, 자이로스코프, 액추에이터 및/또는 기타 등등). 출력 구성요소(212)는 장치(200)로부터 출력 정보를 제공하는 구성요소를 포함할 수 있다(예, 디스플레이, 스피커, 하나 이상의 발광 다이오드(LED) 및/또는 기타 등등).
통신 인터페이스(214)는, 유선 연결, 무선 연결, 또는 유선 및 무선 연결의 조합을 통해서와 같이, 장치(200)가 다른 장치와 통신할 수 있게 하는 트랜시버 유사 구성요소(예, 트랜시버, 별개인 수신기 및 송신기 및/또는 기타 등등)를 포함할 수 있다. 통신 인터페이스(214)는 장치(200)가 다른 장치로부터 정보를 수신하고/하거나 다른 장치에 정보를 제공하는 것을 허용할 수 있다. 예를 들어, 통신 인터페이스(214)는 이더넷 인터페이스, 광학 인터페이스, 동축 인터페이스, 적외선 인터페이스, 무선 주파수(RF) 인터페이스, 범용 직렬 버스(USB) 인터페이스, Wi-Fi® 인터페이스, Bluetooth® 인터페이스, Zigbee 인터페이스, 셀룰러 네트워크 인터페이스 및/또는 기타 등등을 포함할 수 있다.
장치(200)는 본원에서 설명되는 하나 이상의 프로세스를 수행할 수 있다. 장치(200)는 메모리(206) 및/또는 저장 구성요소(208)와 같은, 컴퓨터 판독가능 매체에 의해 저장된 소프트웨어 명령어를 실행하는 프로세서(204)에 기초하여 이러한 프로세스를 수행할 수 있다. 컴퓨터 판독가능 매체(예, 비일시적 컴퓨터 판독가능 매체)는 본 명세서에서 비일시적 메모리 장치로 정의된다. 비일시적 메모리 장치에는 단일 물리적 스토리지 장치 내부에 있는 메모리 공간 또는 다수의 물리적 스토리지 장치에 걸쳐 분산된 메모리 공간이 포함된다.
소프트웨어 명령어들은 다른 컴퓨터 판독가능 매체로부터 또는 통신 인터페이스(214)를 통해 다른 장치로부터 메모리(206) 및/또는 저장 구성요소(208)로 판독될 수 있다. 실행할 때, 메모리(206) 및/또는 저장 구성요소(208)에 저장된 소프트웨어 명령어는 프로세서(204)로 하여금 본원에서 설명된 하나 이상의 프로세스를 수행하게 할 수 있다. 추가적으로, 또는 대안적으로, 배선 회로가 소프트웨어 명령어 대신에 또는 이와 조합하여 본원에서 설명되는 하나 이상의 프로세스를 수행하기 위해 사용될 수 있다. 따라서, 실시예들 또는 측면들은, 하드웨어 회로 및 소프트웨어의 임의의 특정 조합으로 제한되지 않는다.
도 2에 도시된 구성요소들의 수와 배열은 예로서 제공된다. 일부 비제한적인 실시예들 또는 측면들에서, 장치(200)는 도 2에 도시된 것들 보다 추가의 구성요소, 더 적은 구성요소, 상이한 구성요소, 또는 서로 다르게 배열된 구성요소를 포함할 수 있다. 추가적으로, 또는 대안적으로, 장치(200)의 구성요소들의 세트(예, 하나 이상의 구성요소)가 장치(200)의 구성요소들의 다른 세트에 의해 수행되는 것으로 설명된 하나 이상의 기능을 수행할 수도 있다.
이제 도 3을 참조하면, 도 3은 장치(예를 들어, 제1 장치)를 인증하기 위한 프로세스(300)의 비제한적인 실시예 또는 측면에 대한 흐름도이다. 일부 비제한적인 실시예들 또는 측면들에서, 프로세스(300)의 단계 중 하나 이상은 고객 장치(들)(106)에 의해 (예를 들어, 완전히, 부분적으로 및/또는 기타 등등) 수행될 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 프로세스(300)의 단계 중 하나 이상은, 트랜잭션 서비스 제공자 시스템(102)(예, 트랜잭션 서비스 제공자 시스템(102)의 하나 이상의 장치), 발급자 시스템(104)(예, 발급자 시스템(104)의 하나 이상의 장치), 상인 시스템(108)(예, 상인 시스템(108)의 하나 이상의 장치), 또는 매입자 시스템(110)(예, 매입자 시스템(110)의 하나 이상의 장치)와 같은, 고객 장치(들)(106)과 분리된 것이거나 포함하는, 다른 시스템, 다른 장치, 다른 시스템 그룹, 또는 다른 장치 그룹에 의해 (예를 들어, 완전히, 부분적으로 및/또는 기타 등등) 수행될 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 도 3을 참조하면, 인증할 제1 장치 및 이전에 인증된 하나 이상의 다른 장치(예, 제2 장치, 제3 장치, 제4 장치 등)는 각각 고객 장치(106) 또는 다른 연산 장치(예, IoT 장치 및/또는 기타 등등)와 동일하거나 유사할 수 있다. 추가적으로 또는 대안적으로, 제1 장치 및 다른 이전에 인증된 장치는, 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104), 또는 상인 시스템(108)과 같은, 다른 시스템에 의해 (예를 들어, 완전히, 부분적으로, 및/또는 기타 등등) 구현될 수 있다. 일부 비제한적인 실시예에서, 상호작용 데이터베이스(제1 장치 및 다른 이전에 인증된 장치가 여기에 연결될 수 있는 것)는 또한 고객 장치(106) 또는 다른 연산 장치(예, IoT 장치 및/또는 기타 등등)와 동일하거나 유사할 수도 있다. 추가적으로 또는 대안적으로, 상호작용 데이터베이스는 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104), 또는 상인 시스템(108)과 같은, 다른 시스템에 의해 (예를 들어, 완전히, 부분적으로, 및/또는 기타 등등) 구현될 수 있다. 일부 비제한적인 실시예 또는 측면들에서, 도 3을 참조하면, 원격 컴퓨터 시스템(예, 제1 장치가 이에 의해 인증되어야 하는 것)은 상인 시스템(108), 그것의 하나 이상의 장치, 및/또는 다른 연산 장치(예, 서버 및/또는 기타 등등)와 동일하거나 유사할 수 있다. 추가적으로 또는 대안적으로, 원격 컴퓨터 시스템은 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104), 또는 매입자 시스템(110)과 같은, 다른 시스템에 의해 (예를 들어, 완전히, 부분적으로, 및/또는 기타 등등) 구현될 수 있다. 일부 비제한적인 실시예 또는 측면들에서, 도 3을 참조하면, 제1 장치 및 다른 이전에 인증된 장치(들)는, 본원에서 설명되는, 네트워크(112) 및/또는 다른 통신 연결/인터페이스(예, 애드혹 네트워크, 로컬 네트워크, 사설 네트워크, 가상 사설 네트워크, 단거리 무선 네트워크 및/또는 기타 등등)와 동일하거나 유사할 수 있는, 하나 이상의 제1 네트워크에 의해 상호작용 데이터베이스에 연결 및/또는 커플링될 수 있다. 추가적으로 또는 대안적으로, 제1 장치 및 다른 이전에 인증된 장치(들)는, 네트워크(112) 및/또는 다른 통신 연결/인터페이스(예, 공중 네트워크, 인터넷 및/또는 기타 등등)와 동일하거나 유사할 수 있는, 원격 컴퓨터 시스템 하나 이상의 제2 네트워크에 연결될 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 그리고 제2 네트워크(들)는 제1 네트워크(들)와 분리된 것일 수 있다.
도 3에 도시된 바와 같이, 단계(310)에서, 프로세스(300)는 제1 장치를 상호작용 데이터베이스에 커플링시키는 것을 포함할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 제1 장치는 상호작용 데이터베이스가 이전에 연결되었던 제1 네트워크에 커플링함으로써 상호작용 데이터베이스에 커플링될 수 있다. 추가적으로 또는 대안적으로, 하나 이상의 이전에 인증된 장치(예, 제2 장치, 제3 장치, 제4 장치 등) 및/또는 하나 이상의 다른 장치(예, 다른 고객 장치(106), 기타 IoT 장치 및/또는 기타 등등)가 상호작용 데이터베이스에 커플링될 수도 있다. 예를 들어, 이전에 인증된 장치(들) 및/또는 이러한 다른 장치(들)는 이전에 상호작용 데이터베이스에 커플링되었을 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 상호작용 데이터베이스에 연결된 모든 장치는 여기에 기술된 바와 같이 신뢰 그룹(trusted group)을 형성할 수 있다. 예시를 목적으로, 상호작용 데이터베이스에 접속되고/되거나 신뢰 그룹을 형성하는 이러한 장치는, 본원에 기술된, 네트워크(예를 들어, 네트워크(112)와 동일하거나 유사함) 및/또는 다른 통신 연결/인터페이스에 의해 상호작용 데이터베이스에 연결될 수 있는, IoT 장치 및/또는 기타 등등을 포함할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 상호작용 데이터베이스는 장치가 연결하는 적어도 하나의 허브의 일부일 수 있다. 추가적으로 또는 대안적으로, 상호작용 데이터베이스는 이러한 허브와 분리되고 이에 연결되어 (예를 들어, 완전히, 부분적으로, 및/또는 기타 등등) 구현될 수도 있다. 일부 비제한적인 실시예들 또는 측면들에서, 적어도 하나의 이전에 커플링된 장치(예, 상호작용 데이터베이스에 이전에 커플링된 장치) 및/또는 장치가 연결된 허브는, 예를 들어 이전에 커플링된 장치 및/또는 허브에 대한 새로운 장치의 검출된 근접성을 기초로, 새로운 장치의 페어링을 위한 신호/메시지를 검출하는 것을 기초로, 및/또는 기타 등등에 기초하여, 새로운 장치(예, 제1 장치)를 상호작용 데이터베이스에 자동으로 커플링시킬 수 있다. 추가적으로 또는 대안적으로, 고객/사용자는 각각의 장치 또는 장치들 중 일부를 상호작용 데이터베이스에 커플링할 수 있다(예를 들어, 상호작용 데이터베이스로, 상호작용 데이터베이스에 이전에 커플링된 다른 장치로, 허브로, 및/또는 상호작용 데이터베이스가 연결되었던 네트워크로, 장치를 수동으로 인증함에 의함). 일부 비제한적인 실시예들 또는 측면들에서, 신뢰 그룹 내의 모든(또는 적어도 일부) 장치는 그룹 공개 키(예, 제1 그룹 공개 키)와 그룹 공개 키와 관련된 해당 그룹 개인 키(예, 제1 그룹 개인 키)를 공유할 수 있다. 그룹 공개 키 및 그룹 개인 키는 비대칭 암호화(asymmetric cryptography), Rivest-Shamir-Adleman(RSA) 암호화 및/또는 기타 등등을 포함하지만 이에 한정되지 않는, 임의의 적합한 암호화 기법에 적합한 임의의 키일 수 있다. 추가적으로 또는 대안적으로, 각각의 장치는 자체의 장치 공개 키 및 그와 관련된 대응하는 장치 개인 키를 가질(예, 저장) 수 있다. 예를 들어, 제1 장치는 (예를 들어, 제1 그룹 공개 키 및 제1 그룹 개인 키에 더하여) 제1 장치 공개 키 및 제1 장치 개인 키를 저장할 수 있고, 제2 장치는 (예를 들어, 제1 그룹 공개 키 및 제1 그룹 개인 키에 더하여) 제2 장치 공개 키 및 제2 장치 개인 키를 저장할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 상호작용 데이터는 적어도 하나의 상호작용과 관련된 데이터를 포함할 수 있다. 예를 들어, 각각의 상호작용은 결제 트랜잭션, 통신 및/또는 기타 등등일 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 상호작용 데이터베이스는 그룹 내 장치 및 제3자(예, 원격 컴퓨터 시스템) 사이에서 발생하는 임의의 상호작용을 저장할 수 있다. 추가적으로 또는 대안적으로, 상호작용 데이터베이스는 신뢰 그룹 내의 장치와 신뢰 그룹 내의 다른 장치 간의 상호작용을 저장할 수 있다. 예시의 목적을 위해, 표 1은 예시적인 상호작용 데이터베이스 내의 가상의 엔트리 목록을 보여준다:
ID | 타임스탬프 | 데이터 | 순서 |
122 | 01:01:2018:02:05:33:055 | ... | 3 |
154 | 01:01:2018:03:08:24:967 | ... | 2 |
173 | 01:01:2018:05:01:35:112 | ... | 1 |
표 1에 나타낸 바와 같이, 예시의 목적을 위해, 각각의 엔트리는, 각각의 트랜잭션의 시간 및/또는 날짜를 포함할 수 있는 타임스탬프, 뿐만 아니라, 전송/개시 장치/시스템 및/또는 수신/응답 장치/시스템, 상호작용 (예, 데이터, 신호, 메시지, 지시, 명령어, 및/또는 기타 등등 같은 교환된 정보) 또는 이들의 일부분, 및/또는 기타 등등의 식별자를 포함할 수 있는 데이터들을 포함할 수 있다. 추가적으로 또는 대안적으로, 각각의 엔트리는, 또한, 엔트리를 위한 고유 식별자를 포함할 수 있는 ID를 포함할 수도 있다. 예를 들어, 식별자는, 상호작용 데이터베이스 내의 각각의 엔트리에 대해 하나씩 증가하는 카운트, 타임스탬프에 기초하여 결정된 식별자, 타임스탬프의 연결(concatenation) 및/또는 해시(hash) 및/또는 상호작용 데이터의 적어도 일부분, 및/또는 기타 등등을 포함하되 이에 한정되지 않는, 다른 트랜잭션에 대해 트랜잭션을 고유하게 식별하는 임의의 적절한 값(예, 숫자 또는 텍스트)일 수 있다. 추가적으로 또는 대안적으로, 상호작용 데이터베이스는 상호작용이 상호작용 데이터베이스 내에 저장된 순서를 나타내는 정수, 서수 및/또는 기타 등등일 수 있는, 각각의 트랜잭션에 대한 순서를 결정할 수 있다 (예를 들어, 1은 첫 번째 가장 최근에 해당하고, 2는 두 번째 가장 최근에 해당함).
일부 비제한적인 실시예들 또는 측면들에서, 상호작용 데이터베이스는 원격 컴퓨터 시스템과, 이전에 상호작용 데이터베이스에 접속된 장치 및/또는 이전에 원격 컴퓨터 시스템으로 인증된 장치 간의 상호작용 중 적어도 하나를 포함할 수 있다. 추가적으로 또는 대안적으로, 상호작용 데이터베이스는 이러한 장치와 제2 원격 컴퓨터 시스템 간의 상호작용을 저장할 수 있다. 추가적으로 또는 대안적으로, 상호작용 데이터베이스는 가상의 장치와 가상 원격 컴퓨터 시스템 간의 가상의 상호작용을 저장할 수 있다. 예를 들어, 이러한 가상의 상호작용은, 상호작용 데이터베이스에 다른 엔트리가 없는 경우 및/또는 상호작용 데이터베이스가 향후 인증에 사용할 수 없는 엔트리만 포함할 때(예를 들어, 본원에 기술된 바와 같이, 엔트리가 과거 인증에 사용된 경우 및 이러한 엔트리 반복이 차단되는 경우) 사용될 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 상호작용 데이터베이스는 공중 네트워크(예, 인터넷)에 직접 노출되지 않을 수 있다. 예를 들어, 상호작용 데이터베이스는 물리적 격리 및/또는 이에 커플링된 장치(들)(예, 신뢰 그룹의 장치)와의 암호화된 통신으로부터 보호될 수 있다. 예시의 목적을 위해, 상호작용 데이터베이스에 커플링된 장치(들)(예, 신뢰 그룹 내)는 본원에서 설명되는 바와 같이, 제1 네트워크(예, 애드혹 네트워크, 로컬 네트워크, 사설 네트워크, 가상 사설 네트워크, 단거리 무선 네트워크 및/또는 기타 등등)에 연결될 수 있다. 추가적으로 또는 대안적으로, 장치(들)(그러나 상호작용 데이터베이스는 아님)는, 본원에서 설명되는 바와 같이, 원격 컴퓨터 시스템에 연결될 수 있는, 제2 네트워크(예, 공중 네트워크, 인터넷 및/또는 기타 등등)에 별도로 연결될 수도 있다.
도 3에 도시된 바와 같이, 단계(315)에서, 프로세스(300)는 제1 메시지를 생성하는 것을 포함할 수 있다. 예를 들어, 제1 장치는 상호작용 데이터베이스 및/또는 상호작용 데이터베이스로부터의 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터 및 상호작용 데이터에 대응하는 챌린지 질문에 대한 필요한 응답과 연관된 응답 데이터 요청에 접근할 수 있다. 추가적으로 또는 대안적으로, 제1 장치는 챌린지 질문의 적어도 일부분을 생성할 수 있고 상호작용 데이터베이스 및/또는 상호작용 데이터베이스로부터의 상호작용 데이터에 대응하는 챌린지 질문에 대한 필요한 응답과 연관된 응답 데이터 요청에 접근할 수 있다(뿐만 아니라 (존재하는 경우) 챌린지 질문을 완성하는 데 필요한 임의의 추가 정보). 제1 장치는 또한 그의 인증 데이터를 저장했을 수도 있다. 예를 들어, 인증 데이터는 제1 장치 공개 키, 그룹 공개 키 및/또는 기타 등등을 포함할 수 있다. 추가적으로 또는 대안적으로, 인증 데이터는 제1 장치 및/또는 신뢰 그룹을 고유하게 식별하는 데 사용될 수 있는 임의의 데이터 및/또는 정보를 포함할 수 있다. 예를 들어, 이러한 데이터 및/또는 정보는 정적 IP 주소(예, 제1 장치의, 신뢰 그룹 내의 다른 장치의, 또는 신뢰 그룹의 것), 하드웨어 장치 식별자, 예컨대 매체 접근 제어(MAC) 주소(예, 제1 장치의, 신뢰 그룹 내의 다른 장치의, 또는 신뢰 그룹의 것), 원격 컴퓨터 시스템에 의해 제공된 사용자 지정 장치 식별자 (예, 원격 컴퓨터 시스템에 의한 초기 장치 등록 프로토콜의 일부로서임), 다른 제3자 컴퓨터 시스템에 의해 제공된 사용자 지정 장치 식별자, 원격 컴퓨터 시스템 또는 다른 제3자 컴퓨터 시스템에 의해 제공된 사용자 지정 장치 식별자, 및/또는 기타 등등를 포함할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 원격 컴퓨터 시스템은 공개 키(예, 제1 원격 컴퓨터 시스템 공개 키) 및 이와 관련된 대응하는 개인 키(예, 제1 원격 컴퓨터 시스템 개인 키)를 가질 수 있다. 예를 들어, 원격 컴퓨터 시스템은 제1 원격 컴퓨터 시스템 공개 키 및 원격 컴퓨터 시스템 개인 키를 저장할 수 있다. 일부 비제한적인 실시예에서, 제1 장치는, 신뢰할만한 제3자 (예, 제3자 컴퓨터 시스템)로부터, 중앙 집중식 인증 기관으로부터, 공개 디렉토리로부터, 원격 컴퓨터 시스템(예, 원격 컴퓨터 시스템에 의한 초기 장치 등록 프로토콜의 일부로서임)으로부터, 및/또는 기타 등등으로부터 제1 원격 컴퓨터 시스템 공개 키를 취득하는 것을 비롯하여, 임의의 적절한 기법에 의해 원격 컴퓨터 시스템 공개 키를 취득할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 챌린지 데이터, 응답 데이터, 및 인증 데이터는 제1 메시지에 포함될 수 있다. 추가적으로 또는 대안적으로, 챌린지 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화될 수 있고, 전체 제1 메시지(예를 들어, 인증 데이터 및 암호화된 챌린지 및 응답 데이터 포함)는 원격 컴퓨터 시스템의 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 예시의 목적을 위해, 챌린지 및 응답 데이터가 제1 그룹 공개 키로 암호화되는 경우, 제3자(예, 원격 컴퓨터 시스템 및/또는 공격자, 예컨대 중간 침입자)는 원시(예, 암호화되지 않은) 형태의 이러한 데이터를 볼 수 없고, 전체 메시지가 원격 컴퓨터 시스템의 공개 키로 암호화되는 경우, 제3자(예, 공격자, 예컨대 도청자)가 원시(예, 암호화되지 않은) 형태의 메시지를 볼 수 없을 수도 있다. 예를 들어, 제1 메시지는 다음과 같이 표현될 수 있다:
RC1pub(Gpub(qtn)+Gpub(Ans)+authData),
이때 RC1pub는 원격 컴퓨터 시스템 공개 키이고, Gpub는 제1 그룹 공개 키이고, qtn은 챌린지 데이터이고, Ans는 응답 데이터이고, authData는 인증 데이터이다.
일부 비제한적인 실시예들 또는 측면들에서, 제1 메시지는 제1 원격 컴퓨터 시스템 공개 키와 연관된 제1 원격 컴퓨터 시스템 공개 키 데이터를 추가로 포함할 수 있다. 예를 들어, 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키 데이터, 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화될 수 있고, 전체 제1 메시지는 제1 원격 컴퓨터 시스템의 제1 원격 컴퓨터 시스템 공개 키로 암호화될 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 제1 원격 컴퓨터 시스템 공개 키 데이터는 암호화 전에 챌린지 질문 데이터와 합쳐질 수 있다. 예를 들어, 제1 원격 컴퓨터 시스템 공개 키 데이터 및 챌린지 질문 데이터는 제1 공개 키에 의해 암호화된 단일 암호화 블록 내에 2개의 별개의 필드일 수도 있거나, 임의의 적합한 기법, 예를 들어 연결, 해싱 및/또는 기타 등등에 의해 합쳐질 수도 있다. 일부 비제한적인 실시예에서, 조합된 챌린지 데이터 및 제1 원격 컴퓨터 시스템 공개 키 데이터의 암호화된 형태는 다음과 같이 표현될 수 있다:
Gpub(qtn+RC1pub),
따라서, 제1 메시지는 다음과 같이 표현될 수 있다:
RC1pub(Gpub(qtn+RC1pub)+Gpub(Ans)+authData).
일부 비제한적인 실시예들 또는 측면들에서, 제1 장치는 본원에 기술된 바와 같이, 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 챌린지 데이터와 응답 데이터를 결정할 수 있다. 예를 들어, 가상의 챌린지 질문은 다음과 같이 산문으로 말할 수 있다: "현재 ID 173인 상호작용 데이터베이스 기록의 서수 상태는 무엇입니까?" 이때 173은 표 1의 가상 상호작용 데이터베이스에서 ID에 대응하는 번호이다. 유사코드로 언급하는 경우, 이러한 챌린지 질문은 다음과 같이 표현될 수 있다:
qtn=IntID,current_timestamp,
이때 IntID는 값 173을 갖는 변수(표 1의 가상 상호작용 데이터베이스에서 ID 번호 173에 해당)이고 current_timestamp는 챌린지가 행해지는 시간이다. 표 1의 가상 상호작용 데이터베이스의 정보에 기초하여, 이러한 챌린지에 대한 필요한 응답은 해당 엔트리의 순서 값일 것이며, 이 예에서는 1이 될 것이다. 유사코드로 언급하는 경우, 이러한 챌린지에 대한 응답은 다음과 같이 표현될 수 있다:
Ans=1.
또한, 새로운 엔트리가 시간 경과에 따라 상호작용 데이터베이스에 작성/저장될 수 있기 때문에 (예를 들어, 새로운 상호작용이 발생할 때마다), 챌린지 질문이 형성된 후 상호작용 데이터베이스에 추가 엔트리가 작성될 수도 있다. 시간(예, current_timestamp)을 포함시킴으로써, 상호작용 데이터베이스는 그 안에 있는 특정 엔트리를 무시할 수 있으며(예를 들어, 챌린지 질문이 생성된 경우 현재 이후 생성된 엔트리), 따라서 챌린지 질문에 대한 응답은 챌린지가 형성된 시점 또는 그 이전으로부터 상호작용 데이터베이스의 엔트리를 기반으로 하게 된다. 이와 같이, 챌린지 질문 및 필요한 응답은 서로 다른 시간(예, current_timestamp의 서로 다른 값)에 형성된 챌린지가 서로 다른 응답(예, Ans 값)을 생성할 수 있기 때문에, 동적일 수 있다.
도 3에 도시된 바와 같이, 단계(320)에서, 프로세스(300)는 제1 메시지를 원격 컴퓨터 시스템에 전달하는 것을 포함할 수 있다. 예를 들어, 제1 메시지는 제1 장치로부터 원격 컴퓨터 시스템으로 전송될 수 있다. 예시의 목적을 위해, 제1 메시지는 본원에 기술된 바와 같이, 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키 데이터, 응답 데이터, 및/또는 제1 장치에 대한 인증 데이터를 포함할 수 있다. 부가적으로 또는 대안적으로, 제1 원격 컴퓨터 시스템 공개 키 데이터, 및/또는 응답 데이터는 본원에서 설명되는 바와 같이 제1 그룹 공개 키로 각각 암호화될 수 있고, 전체 제1 메시지는 제1 원격 컴퓨터 시스템의 제1 원격 컴퓨터 시스템의 공개 키로 암호화될 수도 있다.
일부 비제한적인 실시예들 또는 측면들에서, 제1 장치, 신뢰 그룹의 다른 장치(예, 제2 장치), 및 원격 컴퓨터 시스템은 본원에서 설명되는 바와 같이, 각각 제1 네트워크와 별개의 제2 네트워크에 커플링될 수 있다. 추가적으로 또는 대안적으로, 제1 메시지는 제2 네트워크를 통해 제1 장치로부터 원격 컴퓨터 시스템으로 전송될 수도 있다.
도 3에 도시된 바와 같이, 단계(325)에서, 프로세스(300)는 (예를 들어, 제1 메시지를 수신하는 것에 응답하여) 제2 메시지를 생성하는 것을 포함할 수 있다. 예를 들어 원격 컴퓨터 시스템은 원격 컴퓨터 시스템 개인 키를 사용하여 제1 메시지를 복호화할 수 있다. 이와 같이, 원격 컴퓨터 시스템은, 제1 장치의 인증 데이터(암호화되지 않음) 뿐만 아니라 암호화된 챌린지 데이터(및 제1 메시지에 포함된 경우 및/또는 챌린지 데이터와 조합 및/또는 암호화되는 경우 제1 원격 컴퓨터 시스템 공개 키 데이터) 및 암호화된 응답 데이터를 액세스할 수도 있다. 추가적으로 또는 대안적으로, 원격 컴퓨터 시스템은, 제1 장치와 별개의 신뢰 그룹으로부터의 다른 장치(예, 제2 장치)를 선택할 수도 있다. 일부 비제한적인 실시예에서, 원격 컴퓨터 시스템은 임의의 적절한 기법을 사용하여 제1 장치가 속하는 신뢰 그룹(및/또는 그 내부의 다른 장치)을 결정할 수 있다. 예를 들어, 원격 컴퓨터 시스템은 인증 데이터에 제공된 데이터 및/또는 정보에 기초하여, 원격 컴퓨터 시스템에 의한 초기 장치 등록 프로토콜에 기초하여, 및/또는 기타 등등에 기초하여, 장치가 속하는 신뢰 그룹(및/또는 그 내부의 다른 장치)을 결정할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 원격 컴퓨터 시스템은 신뢰 그룹의 모든 장치(제1 장치 제외)로부터 제2 장치를 선택할 수 있다. 일부 비제한적인 실시예에서, 원격 컴퓨터 시스템은 무작위 선택, 유사 번호에 기초한 선택, 및/또는 기타 등등을 포함하여, 임의의 적절한 기법에 의해 신뢰 그룹으로부터 제2 장치를 선택할 수 있다. 일부 비제한적인 실시예에서, 원격 컴퓨터 시스템은, 다른 장치(예, 제2 장치)와 이전의 장치 등록 프로토콜을 기초로, 다른 장치(예, 제2 장치)와 이전의 상호작용(예, 결제 트랜잭션)에 기초하여, 중앙 집중식 인증 기관으로부터, 공개 디렉토리로부터, 신뢰할만한 제3자 (예, 제3자 컴퓨터 시스템)를 포함하여, 임의의 적절한 기법을 사용하여 그룹 내의 다른 장치로부터 공개 키(예, 제2 장치에 대한 제2 장치 공개 키)를 결정할 수 있다. 예시의 목적을 위해, 원격 컴퓨터 시스템이, (예를 들어, 다른 장치를 요청/선택하는 제1 장치에 비해) 제1 장치를 인증하는 데 신뢰 그룹의 어떤 장치를 사용할지 선택하는 경우, 제1 장치가 침해된 장치(예, 공격자의)를 이러한 인증에 대해 의도적으로 선택하지 못하기 때문에 보안이 개선될 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 제2 메시지는 제1 메시지의 제1 그룹 공개 키로 암호화된 챌린지 데이터를 포함할 수 있다. 추가적으로 또는 대안적으로, 전체 제2 메시지는 신뢰 그룹의 제2 장치의 제2 장치 공개 키로 암호화될 수 있다. 따라서, 제2 메시지는 다음과 같이 표현될 수 있다:
Bpub(Gpub(qtn)),
이때 Bpub는 제2 장치 공개 키이다. 일부 비제한적인 실시예들 또는 측면들에서, 제2 메시지는 또한 제1 메시지의 제1 그룹 공개 키로 암호화된 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함할 수도 있다. 예를 들어, 제1 원격 컴퓨터 시스템 공개 키 데이터는 본원에 기술된 바와 같이, 챌린지 데이터와 조합 및/또는 암호화될 수 있다. 추가적으로 또는 대안적으로, 전체 제2 메시지는 제2 장치 공개 키로 암호화될 수 있다. 예시의 목적을 위해, 제2 메시지는 다음과 같이 표현될 수 있다:
Bpub(Gpub(qtn+RC1pub)).
도 3에 도시된 바와 같이, 단계(330)에서, 프로세스(300)는 제2 메시지를 제2 장치에 전달하는 것을 포함할 수 있다. 예를 들어, 제2 장치는 원격 컴퓨터 시스템으로부터 제2 메시지를 수신할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 제1 장치, 신뢰 그룹의 다른 장치(예, 제2 장치), 및 원격 컴퓨터 시스템은 본원에서 설명되는 바와 같이, 각각 제1 네트워크와 별개의 제2 네트워크에 커플링될 수 있다. 추가적으로 또는 대안적으로, 제2 메시지는 제2 네트워크에 걸쳐 원격 컴퓨터 시스템으로부터 제2 장치에 수신될 수도 있다. 예시의 목적을 위해, 제2 메시지는 본원에서 설명되는 바와 같이, 챌린지 데이터 및/또는 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함할 수 있다. 예를 들어, 제1 메시지로 원격 컴퓨터 시스템에서 수신된 바와 같이, 챌린지 데이터 및/또는 제1 원격 컴퓨터 시스템 공개 키 데이터가 (별도로 또는 함께) 조합 및/또는 암호화될 수 있다. 추가적으로 또는 대안적으로, 전체 제2 메시지는 본원에서 설명되는 바와 같이, 제2 장치 공개 키를 사용하여 암호화될 수 있다.
도 3에 도시된 바와 같이, 단계(335)에서, 프로세스(300)는 (예를 들어, 제2 메시지를 수신하는 것에 응답하여) 제3 메시지를 생성시키는 것을 포함할 수 있다. 예를 들어, 제2 장치는 제2 장치 개인 키를 사용하여 제2 메시지를 복호화할 수 있고, 및/또는 제2 장치는 챌린지 데이터(및 제2 메시지에 포함되고/있거나 챌린지 데이터와 함께 조합 및/또는 암호화되는 경우 제1 원격 컴퓨터 시스템 공개 키 데이터)를 복호화할 수 있다. 추가적으로 또는 대안적으로, 제2 장치는 제2 메시지로부터의 챌린지 데이터와 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 응답 데이터를 결정할 수 있다. 예를 들어, 제2 장치는 상호작용 데이터베이스 및/또는 상호작용 데이터베이스 응답 데이터로부터 상호작용 데이터에 대응하는 챌린지 질문에 대한 필수 응답과 연관된 요청을 액세스할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 제3 메시지는 (예를 들어, 제2 메시지를 수신하는 것에 응답하여) 제2 장치에 의해 결정된 응답 데이터를 포함할 수 있다. 예를 들어, 응답 데이터는 본원에서 설명되는 바와 같이, 제1 그룹 공개 키로 암호화될 수 있다. 추가적으로 또는 대안적으로, 제3 메시지는 원격 컴퓨터 시스템 공개 키로 암호화될 수도 있다. 예시의 목적을 위해, 제3 메시지는 다음과 같이 표현될 수 있다:
RC1pub(Gpub(ans)),
본원에서 설명된 바와 같음.
일부 비제한적인 실시예들 또는 측면들에서, 제2 메시지는 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함할 수 있다. 그렇다면, 제2 장치가 다른 공개 키(예를 들어, 제2 원격 컴퓨터 시스템 공개 키)를 원격 컴퓨터 시스템의 진정한 공개 키인 것으로 저장했는지 또는 달리 결정하였는지에 상관없이, 제3 메시지는 제1 컴퓨터 시스템 공개 키 데이터로부터 결정된 바와 같이 제1 원격 컴퓨터 시스템 공개 키를 사용하여 암호화될 수 있다. 예시의 목적을 위해, 공격자에 의해 인터셉트되고 제1 원격 컴퓨터 시스템 공개 키를 사용하여 복호화될 수도 있는, 잘못된 키(예, 제1 원격 컴퓨터 시스템 공개 키)를 사용하여 제1 장치가 제1 메시지를 전송하도록, 제1 장치가 중간 침입자에 의해 침해되었다 하더라도, 본원에서 설명된 바와 같이, 공격자는 제1 메시지의 일부만 완전히 복호화할 수 있는 한편, 다른 부분은 그룹 공개 키에 의해 암호화된 채 유지될 수 있다. 또한, 이어서 이러한 공격자가 원격 컴퓨터 시스템의 진정한 공개 키(예, 제2 원격 컴퓨터 시스템 공개 키)를 사용하여 제1 메시지를 재암호화하더라도, 제2 장치는 여전히 제1 원격 컴퓨터 시스템 공개 키(그룹 공개 키로 암호화된, 조합된 챌린지 데이터 및 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함하는 제2 메시지의 일부분으로부터임)로 제3 메시지를 암호화할 수 있으며, 진정한 원격 컴퓨터 시스템이 복호화할 수 없어서, (침해된) 제1 장치의 인증을 막고, 보안을 향상시킬 수 있게 될 것이다.
일부 비제한적인 실시예들 또는 측면들에서, 제2 장치는, 신뢰 그룹 내의 장치들 중 어느 것이 이전에 제2 메시지의 챌린지 질문을 사용하였는지(예를 들어, 생성하였거나 수신하였는지) 여부를 결정하기 위해 상호작용 데이터베이스를 점검할 수 있다. 예를 들어, 챌린지 질문이 이전에 사용된 경우, 제2 장치는 챌린지 질문이 더 이상 유효하지 않다고 결정할 수 있다. 예시의 목적을 위해, 제3 메시지는 챌린지 질문이 유효하지 않다는 메시지를 포함할 수 있다. 예를 들어, 이러한 메시지는 유효하지 않은 챌린지 질문에 대해 유보된 텍스트 문자열, 숫자 값 및/또는 기타 등등을 포함할 수 있다. 이와 같이, 이전의 챌린지-응답을 재사용하지 못할 수도 있기 때문에 (예를 들어, 이전의 챌린지-응답을 단순히 반복하려고 시도하는 도청자 또는 가짜 제3자에 의한 재생 공격) 보안이 개선될 수 있다.
추가적으로 또는 대안적으로, 제2 장치는 챌린지 질문이 생성된 이후 너무 많은 시간이 경과하였기 때문에 챌린지 질문이 유효하지 않다고 결정할 수 있다. 예를 들어, 본원에서 설명되는 바와 같이, 챌린지 데이터는 챌린지가 생성되었을 때의 타임스탬프를 포함할 수 있다. 상호작용 데이터베이스 및/또는 신뢰 그룹의 적어도 하나의 장치(예, 제2 장치)는 시간 만기 임계값을 포함할 수 있으며, 이는 챌린지 질문이 생성 후 유효한 최대 시간을 나타낼 수 있다. 만기 임계값은, 15분, 1시간, 1일 및/또는 기타 등등을 포함하지만 이에 한정되지 않는, 임의의 적합한 기간일 수 있다. 챌린지 데이터의 타임스탬프와 제2 장치가 상호작용 데이터베이스에 대한 챌린지 데이터를 검사하는 현재 시간 사이의 차이가 시간 만기 임계값보다 크면, 제2 장치는 챌린지 질문이 유효하지 않다고 결정할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 제3 메시지는 챌린지 질문이 유효하지 않다는 메시지를 포함할 수 있다.
도 3에 도시된 바와 같이, 단계(340)에서, 프로세스(300)는 제3 메시지를 원격 컴퓨터 시스템에 전달하는 것을 포함할 수 있다. 예를 들어, 제3 메시지는 제2 장치로부터 원격 컴퓨터 시스템으로 전송될 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 제1 장치, 신뢰 그룹의 다른 장치(예, 제2 장치), 및 원격 컴퓨터 시스템은 본원에서 설명되는 바와 같이, 각각 제1 네트워크와 별개의 제2 네트워크에 커플링될 수 있다. 추가적으로 또는 대안적으로, 제3 메시지는 제2 네트워크를 통해 제2 장치로부터 원격 컴퓨터 시스템으로 전송될 수도 있다. 예시의 목적을 위해, 제3 메시지는 본원에서 설명되는 바와 같이, 응답 데이터(또는 본원에서 설명되는 바와 같이, 챌린지 데이터가 무효임을 나타내는 메시지)를 포함할 수 있다. 예를 들어, 응답 데이터(또는 챌린지 데이터가 무효임을 나타내는 메시지)는 본원에 설명된 대로, 제1 그룹 공개 키를 사용하여 암호화될 수 있다. 추가적으로 또는 대안적으로, 전체 제3 메시지는 본원에서 설명되는 바와 같이, 제1 원격 컴퓨터 시스템 공개 키로 암호화될 수도 있다. 예를 들어, 제1 원격 컴퓨터 시스템 공개 키는 제2 메시지의 복호화된 제1 원격 컴퓨터 시스템 공개 키 데이터로부터 추출될 수 있다.
도 3에 도시된 바와 같이, 단계(350)에서, 프로세스(300)는 제3 메시지에 기초하여 결정을 내리는 것을 포함할 수 있다. 예를 들어, 원격 컴퓨터 시스템은 제3 메시지에 기초하여 제1 장치를 인증하거나 거부할 수 있다. 예시의 목적을 위해, 원격 컴퓨터 시스템은 원격 컴퓨터 시스템 공개 키를 사용하여 제3 메시지를 복호화할 수 있다. 추가적으로 또는 대안적으로, 원격 컴퓨터 시스템은 제3 메시지의 응답 데이터를 (예를 들어, 제3 메시지 내의 제1 그룹 공개 키로 암호화된 바와 같음) 제1 메시지의 응답 데이터와 (예를 들어, 제1 메시지 내의 제1 그룹 공개 키로 암호화된 바와 같음) 비교할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 원격 컴퓨터 시스템은 상기 비교에 기초하여 제1 장치를 인증할 수 있다. 예를 들어, 제3 메시지의 응답 데이터가 제1 메시지의 응답 데이터와 일치하는 경우, 원격 컴퓨터 시스템은 제1 장치를 인증할 수 있다. 예를 들어, 제1 장치가 인증된 경우(예를 들어, 신뢰 그룹의 진정한 일원인 경우), 제1 장치는 원격 컴퓨터 시스템과 상호작용(예를 들어, 원격 컴퓨터 시스템과 결제 트랜잭션을 수행)하도록 허용될 수 있다.
추가적으로 또는 대안적으로, 원격 컴퓨터 시스템은 인증 메시지를 통신할 수 있다. 예를 들어, 인증 메시지는 제1 장치가 인증되었거나 제1 장치가 인증되지 않았음을 나타낼 수 있다(예를 들어, 인증 실패). 예시의 목적을 위해, 원격 컴퓨터 시스템은 인증 메시지를 제1 장치 및/또는 신뢰 그룹의 다른 장치(예, 제2 장치)로 전송할 수 있다. 일부 비제한적인 실시예에서, 메시지는 확인 메시지(예를 들어, 성공적인 인증 표시 목적) 또는 부정적인 확인 메시지(예를 들어, 인증 실패 표시 목적)일 수 있다. 일부 비제한적인 실시예들에서, 원격 컴퓨터 시스템으로부터 인증 메시지를 수신하는 것에 응답하여(예를 들어, 제1 장치가 원격 컴퓨터 시스템에 의해 인증되었음을 나타냄), 제1 장치는 원격 컴퓨터 시스템과 상호작용하도록 허용될 수 있다. 예를 들어, 제1 장치는 주문(예를 들어, 상품 목적, 리필 목적, 서비스 목적 및/또는 기타 등등)을 놓고 그리고/또는 원격 컴퓨터 시스템과 결제 트랜잭션을 수행할 수 있다. 추가적으로 또는 대안적으로, 제1 장치는 다른 유형의 상호작용(예, 통신, 미결제 트랜잭션, 및/또는 다른 장치(들), 시스템(들), 네트워크(들), 및/또는 이들의 조합과 관련된 상호작용)을 수행할 수 있다. 예시의 목적을 위해, 이러한 결제 트랜잭션은, 공개 그룹 내의 다른 장치와의 상호작용에 기초하여 원격 컴퓨터 시스템과 이전에 저장된, 그리고/또는 고객의 입력에 기초하여 원격 컴퓨터와 이전에 저장된 계정 식별자를 사용하여 수행될 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 원격 컴퓨터 시스템은 제1 장치를 거부(예를 들어, 인증 거절)할 수 있다. 예를 들어, 원격 컴퓨터 시스템이 제3 메시지를 복호화할 수 없는 경우, 제3 메시지의 응답 데이터가 제1 메시지의 응답 데이터와 일치하지 않을 경우, 그리고/또는 제3 메시지의 응답 데이터가 챌린지 질문이 유효하지 않은 것으로 표시하는 경우, 원격 컴퓨터 시스템은 제1 장치를 거부할 수 있다. 추가적으로 또는 대안적으로, 원격 컴퓨터 시스템은, 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 인증 메시지를 통신할 수도 있다. 예를 들어, 제1 장치가 인증되지 않았음을 나타내는 원격 컴퓨터 시스템으로부터 인증 메시지를 수신하는 것에 응답하여, 제1 장치는 원격 컴퓨터 시스템과 상호작용할 수 없게 될 수 있다.
예시의 목적을 위해, 공격자에 의해 인터셉트되고 제1 원격 컴퓨터 시스템 공개 키를 사용하여 복호화될 수도 있는, 잘못된 키(예, 제1 원격 컴퓨터 시스템 공개 키)를 사용하여 제1 장치가 제1 메시지를 전송하도록, 제1 장치가 중간 침입자에 의해 침해되었다 하더라도, 본원에서 설명된 바와 같이, 공격자는 제1 메시지의 일부만 완전히 복호화할 수 있는 한편, 다른 부분은 그룹 공개 키에 의해 암호화된 채 유지될 수 있다. 또한, 이어서 이러한 공격자가 원격 컴퓨터 시스템의 진정한 공개 키(예, 제2 원격 컴퓨터 시스템 공개 키)를 사용하여 제1 메시지를 재암호화하더라도, 제2 장치는 여전히 제1 원격 컴퓨터 시스템 공개 키(그룹 공개 키로 암호화된, 조합된 챌린지 데이터 및 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함하는 제2 메시지의 일부분으로부터임)로 제3 메시지를 암호화할 수 있으며, 진정한 원격 컴퓨터 시스템이 복호화할 수 없어서, (침해된) 제1 장치의 인증을 막고, 보안을 향상시킬 수 있게 될 것이다. 추가적으로 또는 대안적으로, 원격 컴퓨터 시스템은, 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 인증 메시지를 통신할 수 있고, 제1 장치는 원격 컴퓨터 시스템과의 상호작용할 수 없게 되고 그리고/또는 공격자와 상호작용할 수 없게 될 수도 있다.
도 3에 도시된 바와 같이, 단계(360)에서, 프로세스(300)는 상호작용 데이터베이스를 업데이트하는 것을 포함할 수 있다. 예를 들어, 제2 메시지를 수신하는 것에 응답하여, 제2 메시지의 챌린지 데이터는 상호작용 데이터베이스에 저장될 수 있다. 예시의 목적을 위해, 본원에서 설명되는 바와 같이, 제2 장치는 제2 장치 개인 키(및 그룹 개인 키)를 사용하여 제2 메시지를 복호화할 수 있다. 제2 장치는 또한, 본원에서 설명되는 바와 같이, 챌린지 데이터가 이전에 사용되지 않았는지 확인하기 위해 트랜잭션 데이터베이스를 점검할 수 있다. 챌린지 데이터가 이전에 사용되지 않은 경우, 제2 장치는 챌린지 데이터를 상호작용 데이터베이스에 작성할 수 있고/있거나 상호작용 데이터베이스가 챌린지 데이터를 저장하도록 요청할 수 있다(예를 들어, 본원에서 설명되는 바와 같이, 제1 네트워크를 통해 상호작용 데이터베이스와 통신함으로써). 그 후, 신뢰 그룹의 어느 장치든 향후 동일한 챌린지 데이터를 수신하는 경우, 이러한 장치는 상호작용 데이터베이스를 점검하고 이러한 챌린지 데이터가 이전에 사용되었음을 확인할 수 있다. 따라서 이러한 장치는 챌린지 데이터가 향후 인증에 유효하지 않다고 결정할 수 있다.
이제 도 4를 참조하면, 도 4는 도 3에 도시된 프로세스(300)와 관련된 구현예(400)의 비제한적인 실시예 또는 측면에 대한 개략도이다. 도 4에 도시된 바와 같이, 구현예(400)는 제1 장치(406a), 제2 장치(406b), 제3 장치(406c), 제4 장치(406d) 및 상호작용 데이터베이스(406e)를 포함한다. 예시의 목적을 위해, 제1 장치(406a), 제2 장치(406b), 제3 장치(406c), 제4 장치(406d), 및 상호작용 데이터베이스(406e) 각각은 고객 장치(106)와 동일하거나 유사할 수 있다. 추가적으로 또는 대안적으로, 이들 구성요소 중 적어도 하나(예, 상호작용 데이터베이스(406e))는, 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104) 및/또는 상인 시스템(108)을 포함하지만 이에 한정되지 않는 다른 시스템에 의해 (예를 들어, 완전히, 부분적으로, 및/또는 기타 등등) 구현될 수 있다. 예를 들어, 제1 장치(406a), 제2 장치(406b), 제3 장치(406c), 및 제4 장치(406d)는 본원에서 설명되는 바와 같이, 제1 네트워크에 걸쳐 상호 연결될 수 있다. 추가적으로 또는 대안적으로, 제1 장치(406a), 제2 장치(406b), 제3 장치(406c), 및 제4 장치(406d)는 본원에 기술된 바와 같이, 제1 네트워크에 걸쳐 상호작용 데이터베이스(406e)에 연결될 수 있다. 예시의 목적을 위해, 제1 네트워크는 본원에서 설명되는 바와 같이, 애드혹 네트워크, 로컬 네트워크, 사설 네트워크, 가상 사설 네트워크, 단거리 무선 네트워크 및/또는 이들의 조합일 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 이들 구성요소 중 적어도 하나(예, 상호작용 데이터베이스(406e) 또는 제2 장치(406b))는 본원에서 설명되는 바와 같이, 다른 구성요소가 연결되는 허브일 수도 있다. 추가적으로 또는 대안적으로, 제1 장치(406a), 제2 장치(406b), 제3 장치(406c), 및/또는 제4 장치(406d) 중 적어도 하나는 본원에서 설명되는 바와 같이, IoT 장치, 어플라이언스, 스마트 기기, 클라이언트 장치 및/또는 기타 등등일 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 제1 장치(406a), 제2 장치(406b), 제3 장치(406c), 및 제4 장치(406d)는 신뢰 그룹(406f)을 형성할 수 있다. 신뢰 그룹의 각각의 장치는 그룹 공개 키(예, 제1 그룹 공개 키)와 그룹 개인 키(예, 제1 그룹 개인 키)를 본원에서 설명되는 바와 같이, 공유(예, 저장)할 수 있다. 또한, 각각의 장치는 자체 공개 키 및 개인 키를 포함(예를 들어, 저장)할 수 있다. 예를 들어, 본원에서 설명되는 바와 같이, 제1 장치(406a)는 (예를 들어,제1 그룹 공개 키 및 제1 그룹 개인 키에 추가하여) 제1 장치 공개 키 및 제1 장치 개인 키를 저장할 수 있고; 제2 장치(406b)는 (예를 들어,제1 그룹 공개 키 및 제1 그룹 개인 키에 추가하여) 제2 장치 공개 키 및 제2 장치 개인 키를 저장할 수 있고; 제3 장치(406c)는 (예를 들어,제1 그룹 공개 키 및 제1 그룹 개인 키에 추가하여) 제3 장치 공개 키 및 제3 장치 개인 키를 저장할 수 있고 ; 및 제4 장치(406d)는 (예를 들어,제1 그룹 공개 키 및 제1 그룹 개인 키에 추가하여) 제4 장치 공개 키 및 제4 장치 개인 키를 저장할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 제1 장치(406a), 제2 장치(406b), 제3 장치(406c), 및 제4 장치(406d)는 원격 컴퓨터 시스템(408)에 연결될 수 있다. 예시의 목적을 위해, 원격 컴퓨터 시스템(408)은 상인 시스템(108)과 동일하거나 유사할 수 있다. 추가적으로 또는 대안적으로, 원격 컴퓨터 시스템(408)은, 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104) 및/또는 매입자 시스템(110)을 포함하지만 이에 한정되지 않는 다른 시스템에 의해 (예를 들어, 완전히, 부분적으로, 및/또는 기타 등등) 구현될 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 원격 컴퓨터 시스템(408)은, 본원에서 설명되는 바와 같이, 제2 네트워크(예, 공중 네트워크, 인터넷 및/또는 기타 등등)에 걸쳐 신뢰 그룹(406f) 내의 적어도 일부 장치(예, 제1 장치(406a), 제2 장치(406b), 제3 장치(406c), 및 제4 장치(406d))에 연결될 수 있다.
예시의 목적을 위해, 원격 컴퓨터 시스템(408)으로 제1 장치(406a)를 인증하기 위해, 제1 장치(406a)는 (상호작용 데이터베이스(406e)에서의 상호작용 데이터에 기초하여) 제1 메시지를 생성할 수 있고/하거나 원격 컴퓨터 시스템(408)에 전달할 수 있다. 원격 컴퓨터 시스템(408)은, 본원에서 설명되는 바와 같이, 신뢰 그룹(406f) 내의 다른 장치(예, 제2 장치(406b), 제3 장치(406c), 또는 제4 장치(406d))를 선택하고/하거나 제2 메시지를 생성할 수 있고/하거나 그러한 장치에 전달할 수 있다. 본원에서 설명되는 바와 같이, 제2 메시지를 수신하는 장치는 (상호작용 데이터베이스(406e) 내의 상호작용 데이터에 기초하여) 제3 메시지를 생성할 수 있고/하거나 원격 컴퓨터 시스템(408)에 전달할 수 있다. 제3 메시지에 기초하여, 제1 장치(406a)는 본원에서 설명되는 바와 같이, 원격 컴퓨터 시스템(408)과의 상호작용에 대해 인증(또는 미인증)될 수 있다. 또한, 상호작용 데이터베이스(406e)는 본원에서 설명되는 바와 같이, (예를 들어, 제2 메시지에 기초하여) 업데이트될 수도 있다.
이제 도 5를 참조하면, 도 5는 도 3에 도시된 프로세스(300)와 관련된 구현예(500)의 비제한적인 실시예 또는 측면에 대한 개략도이다. 도 5에 도시된 바와 같이, 구현예(500)는 제1 장치(506a), 제2 장치(506b), 상호작용 데이터베이스(506e), 신뢰 그룹(506f), 및 원격 컴퓨터 시스템(508)을 포함할 수 있다. 예시의 목적을 위해, 제1 장치(506a), 제2 장치(506b) 및 상호작용 데이터베이스(506e) 각각은 고객 장치(106)와 동일하거나 유사할 수 있다. 추가적으로 또는 대안적으로, 이들 구성요소 중 적어도 하나(예, 상호작용 데이터베이스(506e))는, 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104) 및/또는 상인 시스템(108)을 포함하지만 이에 한정되지 않는 다른 시스템에 의해 (예를 들어, 완전히, 부분적으로, 및/또는 기타 등등) 구현될 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 제1 장치(506a), 제2 장치(506b), 및 상호작용 데이터베이스(506e)는 제1 장치(406a), 제2 장치(406b) 및 상호작용 데이터베이스(406e)와 동일하거나 유사할 수 있다. 예를 들어, 제1 장치(506a) 및 제2 장치(506b)는 본원에서 설명되는 바와 같이, 제1 네트워크에 걸쳐 상호 연결될 수 있다. 추가적으로 또는 대안적으로, 제1 장치(506a) 및 제2 장치(506b)는 본원에서 설명되는 바와 같이, 제1 네트워크에 걸쳐 상호작용 데이터베이스(506e)에 연결될 수 있다. 예시의 목적을 위해, 제1 네트워크는 본원에서 설명되는 바와 같이, 애드혹 네트워크, 로컬 네트워크, 사설 네트워크, 가상 사설 네트워크, 단거리 무선 네트워크 및/또는 이들의 조합일 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 이들 구성요소 중 적어도 하나(예, 상호작용 데이터베이스(506e) 또는 제2 장치(506b))는 본원에서 설명되는 바와 같이, 다른 구성요소가 연결되는 허브일 수도 있다. 추가적으로 또는 대안적으로, 제1 장치(506a) 또는 제2 장치(506b) 중 적어도 하나는 본원에서 설명되는 바와 같이, IoT 장치, 어플라이언스, 스마트 기기, 클라이언트 장치 및/또는 기타 등등일 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 제1 장치(506a) 및 제2 장치(506b)는 신뢰 그룹(506f)을 형성할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 신뢰 그룹(506f)은 신뢰 그룹(406f)과 동일하거나 유사할 수 있다. 신뢰 그룹의 각각의 장치는 그룹 공개 키(예, 제1 그룹 공개 키)와 그룹 개인 키(예, 제1 그룹 개인 키)를 본원에서 설명되는 바와 같이, 공유(예, 저장)할 수 있다. 또한, 각각의 장치는 자체 공개 키 및 개인 키를 포함(예를 들어, 저장)할 수 있다. 예를 들어, 본원에서 설명되는 바와 같이, 제1 장치(506a)는 (예를 들어, 제1 그룹 공개 키 및 제1 그룹 개인 키에 추가하여) 제1 장치 공개 키 및 제1 장치 개인 키를 저장할 수 있고; 제2 장치(506b)는 (예를 들어, 제1 그룹 공개 키 및 제1 그룹 개인 키에 추가하여) 제2 장치 공개 키 및 제2 장치 개인 키를 저장할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 제1 장치(506a) 및 제2 장치(506b)는 원격 컴퓨터 시스템(508)에 연결될 수 있다. 예시의 목적을 위해, 원격 컴퓨터 시스템(508)은 상인 시스템(108)과 동일하거나 유사할 수 있다. 추가적으로 또는 대안적으로, 원격 컴퓨터 시스템(508)은, 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104) 및/또는 매입자 시스템(110)을 포함하지만 이에 한정되지 않는 다른 시스템에 의해 (예를 들어, 완전히, 부분적으로, 및/또는 기타 등등) 구현될 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 원격 컴퓨터 시스템(508)은 원격 컴퓨터 시스템(408)과 동일하거나 유사할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 원격 컴퓨터 시스템(508)은, 본원에서 설명되는 바와 같이, 제2 네트워크(예, 공공 네트워크, 인터넷 및/또는 기타 등등)에 걸쳐 신뢰 그룹(506f) 내의 장치(예, 제1 장치(506a) 및 제2 장치(506b) 중 적어도 하나)에 연결될 수 있다. 예를 들어, 제2 네트워크는 본원에서 설명되는 바와 같이, 제1 네트워크와 분리된 것일 수 있다.
예시의 목적을 위해, 원격 컴퓨터 시스템(508)으로 제1 장치(506a)를 인증하기 위해, 제1 장치(506a)는 본원에서 설명된 바와 같이, (상호작용 데이터베이스(506e) 내의 상호작용 데이터에 기초하여) 메시지(1)를 생성할 수 있고/하거나 원격 컴퓨터 시스템(508)에 전달할 수 있다. 예를 들어, 메시지(1)는 다음과 같이 표현될 수 있다:
RC1pub(Gpub(qtn)+Gpub(Ans)+authData),
본원에서 설명된 바와 같음. 원격 컴퓨터 시스템(508)은 신뢰 그룹(506f) 내의 다른 장치(예, 제2 장치(506b))를 선택하고/하거나, 본원에서 설명되는 바와 같이, 메시지(2)를 생성할 수 있고/하거나 이러한 장치에 전달할 수 있다. 예를 들어, 메시지(2)는 다음과 같이 표현될 수 있다:
Bpub(Gpub(qtn)),
본원에서 설명된 바와 같음. 본원에서 설명되는 바와 같이, 제2 장치(506b)는 제2 메시지를 수신할 수 있고 및/또는 (상호작용 데이터베이스(506e) 내의 상호작용 데이터에 기초하여) 메시지(3)를 생성할 수 있고/하거나 원격 컴퓨터 시스템(508)에 전달할 수 있다. 예를 들어, 메시지(3)는 다음과 같이 표현될 수 있다:
RC1pub(Gpub(ans)),
본원에서 설명된 바와 같음. 메시지(3)에 기초하여, 제1 장치(506a)는 본원에서 설명되는 바와 같이, 원격 컴퓨터 시스템(508)과의 상호작용에 대해 인증(또는 미인증)될 수 있다. 또한, 상호작용 데이터베이스(506e)는 본원에서 설명되는 바와 같이, (예를 들어, 메시지(2)에 기초하여) 업데이트될 수도 있다.
이제 도 6을 참조하면, 도 6은 도 3에 도시된 프로세스(300)와 관련된 구현예(600)의 비제한적인 실시예 또는 측면에 대한 개략도이다. 도 6에 도시된 바와 같이, 구현예(600)는 제1 장치(606a), 제2 장치(606b), 상호작용 데이터베이스(606e), 신뢰 그룹(606f), 원격 컴퓨터 시스템(608a), 및 공격자(608b)를 포함할 수 있다. 예시의 목적을 위해, 제1 장치(606a), 제2 장치(606b), 및 상호작용 데이터베이스(606e) 각각은 고객 장치(106)와 동일하거나 유사할 수 있다. 추가적으로 또는 대안적으로, 이들 구성요소 중 적어도 하나(예, 상호작용 데이터베이스(606e))는, 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104) 및/또는 상인 시스템(108)을 포함하지만 이에 한정되지 않는 다른 시스템에 의해 (예를 들어, 완전히, 부분적으로, 및/또는 기타 등등) 구현될 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 제1 장치(606a), 제2 장치(606b), 및 상호작용 데이터베이스(606e)는 제1 장치(506a), 제2 장치(506b) 및 상호작용 데이터베이스(506e)와 동일하거나 유사할 수 있다. 예를 들어, 제1 장치(606a) 및 제2 장치(606b)는 본원에서 설명되는 바와 같이, 제1 네트워크에 걸쳐 상호 연결될 수 있다. 추가적으로 또는 대안적으로, 제1 장치(606a) 및 제2 장치(606b)는 본원에서 설명되는 바와 같이, 제1 네트워크에 걸쳐 상호작용 데이터베이스(606e)에 연결될 수 있다. 예시의 목적을 위해, 제1 네트워크는 본원에서 설명되는 바와 같이, 애드혹 네트워크, 로컬 네트워크, 사설 네트워크, 가상 사설 네트워크, 단거리 무선 네트워크 및/또는 이들의 조합일 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 이들 구성요소 중 적어도 하나(예, 상호작용 데이터베이스(606e) 또는 제2 장치(606b))는 본원에서 설명되는 바와 같이, 다른 구성요소가 연결되는 허브일 수도 있다. 추가적으로 또는 대안적으로, 제1 장치(606a) 또는 제2 장치(606b) 중 적어도 하나는 본원에서 설명되는 바와 같이, IoT 장치, 어플라이언스, 스마트 기기, 클라이언트 장치 및/또는 기타 등등일 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 제1 장치(606a) 및 제2 장치(606b)는 신뢰 그룹(606f)을 형성할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 신뢰 그룹(606f)은 신뢰 그룹(506f)과 동일하거나 유사할 수 있다. 신뢰 그룹의 각각의 장치는 그룹 공개 키(예, 제1 그룹 공개 키)와 그룹 개인 키(예, 제1 그룹 개인 키)를 본원에서 설명되는 바와 같이, 공유(예, 저장)할 수 있다. 또한, 각각의 장치는 자체 공개 키 및 개인 키를 포함(예를 들어, 저장)할 수 있다. 예를 들어, 본원에서 설명되는 바와 같이, 제1 장치(606a)는 (예를 들어, 제1 그룹 공개 키 및 제1 그룹 개인 키에 추가하여) 제1 장치 공개 키 및 제1 장치 개인 키를 저장할 수 있고; 제2 장치(606b)는 (예를 들어, 제1 그룹 공개 키 및 제1 그룹 개인 키에 추가하여) 제2 장치 공개 키 및 제2 장치 개인 키를 저장할 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 제1 장치(606a) 및 제2 장치(606b)는 원격 컴퓨터 시스템(608a)에 연결될 수 있다. 예시의 목적을 위해, 원격 컴퓨터 시스템(608a)은 상인 시스템(108)과 동일하거나 유사할 수 있다. 추가적으로 또는 대안적으로, 원격 컴퓨터 시스템(608a)은, 트랜잭션 서비스 제공자 시스템(102), 발급자 시스템(104) 및/또는 매입자 시스템(110)을 포함하지만 이에 한정되지 않는 다른 시스템에 의해 (예를 들어, 완전히, 부분적으로, 및/또는 기타 등등) 구현될 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 원격 컴퓨터 시스템(608a)은 원격 컴퓨터 시스템(508)과 동일하거나 유사할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 원격 컴퓨터 시스템(608a)은, 본원에서 설명되는 바와 같이, 제2 네트워크(예, 공중 네트워크, 인터넷 및/또는 기타 등등)에 걸쳐 신뢰 그룹(606f) 내의 장치(예, 제1 장치(606a) 및 제2 장치(606b) 중 적어도 하나에) 연결될 수 있다. 예를 들어, 제2 네트워크는 본원에서 설명되는 바와 같이, 제1 네트워크와 분리된 것일 수 있다.
일부 비제한적인 실시예들 또는 측면들에서, 공격자(608b) 또한 제2 네트워크에 연결될 수 있다. 예를 들어, 공격자(608b)는 중간 침입 공격자 역할을 하는 제3자의 제2 원격 컴퓨터 시스템일 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 공격자(608b)는 신뢰(606f)의 장치 중 하나(예, 제1 장치(606a))를 침해했을 수 있고, 그 자체 공개 키(예, 제2 원격 컴퓨터 시스템 공개 키(RC2pub))를 원격 컴퓨터 시스템(608a)의 공개 키(예, 거짓 공개 키)인 것처럼 위장하여 침해된 장치에 제공하였을 수도 있다. 추가적으로 또는 대안적으로, 공격자(608b)는, 침해된 장치(예, 제1 장치(606a))로부터 메시지(1a)를 가로챌 수 있고, 자신의 개인 키(예, 제2 원격 컴퓨터 시스템 개인 키)를 사용하여 메시지(1a)를 복호화하려고 시도할 수 있다. 일부 비제한적인 실시예들 또는 측면들에서, 공격자(608b)는 원격 컴퓨터 시스템(608a)의 진정한 공개 키(예, 제1 원격 컴퓨터 시스템 공개 키(RC1pub))를 사용하여 메시지를 메시지(1b)로서 재암호화하고, 메시지(1b)를 원격 컴퓨터 시스템(608a)에 송신할 수 있다. 그러나, 본원에서 설명되는 바와 같이, 침해된 장치(예, 606a)의 인증은 실패한다(예를 들어, 제1 장치(606a)가 거부되거나/이거나 인증되지 않을 수 있다).
예시의 목적을 위해, 원격 컴퓨터 시스템(608a)을 사용하여 제1 장치(606a)를 인증하려는 시도에서, 제1 장치(606a)는 (상호작용 데이터베이스(606e) 내의 상호작용 데이터에 기초하여) 메시지(1a)를 생성할 수 있고/있거나 (예를 들어, 공격자(608b)가 원격 컴퓨터 시스템(608a)이라는 허위로 위장하여) 공격자(608b)에게 전달할 수 있다. 예를 들어, 메시지(1a)는 다음과 같이 표현될 수 있다:
RC2pub(Gpub(qtn+RC2pub)+Gpub(Ans)+authData),
본원에서 설명된 바와 같음. 공격자(608b)는 그의 개인 키(예, 제2 원격 컴퓨터 시스템 개인 키)를 사용하여 그의 공개 키(예, 제2 원격 컴퓨터 시스템 공개 키(RC2pub))로 암호화된 메시지(1a)의 일부분을 복호화할 수 있다. 추가적으로 또는 대안적으로, 공격자(608b)는 메시지를 (재)암호화하고 그것을 메시지(1b)로서 원격 컴퓨터 시스템(608a)에 전달할 수 있다. 예를 들어, 메시지(1b)는 다음과 같이 표현될 수 있다:
RC1pub(Gpub(qtn+RC2pub)+Gpub(Ans)+authData),
본원에서 설명된 바와 같음. 그러나, 공격자(608b)가 제1 그룹 개인 키에 대한 액세스 권한이 없기 때문에, 공격자(608b)는 그룹 공개 키로 암호화된 제1 메시지의 조합된 챌린지 데이터와 공개 키 데이터 부분을 복호화할 수 없다. 이와 같이, 메시지(1b)는 (진정한) 제1 원격 컴퓨터 시스템 공개 키로 암호화되지만, 암호화된 공개 키 데이터는 여전히 본원에 기술된 바와 같이, (거짓) 제2 원격 컴퓨터 시스템 공개 키를 반영할 수 있다. 원격 컴퓨터 시스템(608a)은 신뢰 그룹(606f) 내의 다른 장치(예, 제2 장치(606b))를 선택하고/하거나, 본원에서 설명되는 바와 같이, 메시지(2a)를 생성할 수 있고/하거나 이러한 장치에 전달할 수 있다. 예를 들어, 메시지(2a)는 다음과 같이 표현될 수 있다:
Bpub(Gpub(qtn+RC2pub)),
본원에서 설명된 바와 같음. 제2 장치(606b)는 제2 메시지를 수신할 수 있고 및/또는 (상호작용 데이터베이스(606e) 내의 상호작용 데이터에 기초하여) 메시지(3a)를 생성할 수 있고/하거나 원격 컴퓨터 시스템(608)에 전달할 수 있다. 예를 들어, 제2 장치(606b)는 본원에서 설명되는 바와 같이, 메시지(2a)로부터의 공개 키 데이터를 사용하여 메시지(3a)를 암호화할 수 있다. 따라서, 메시지(3a)는 다음과 같이 표현될 수 있다:
RC2pub(Gpub(Ans)),
본원에서 설명된 바와 같음. 메시지(3a)를 수신하면, 원격 컴퓨터 시스템(608a)은 제1 보다는 오히려, (거짓) 제2 원격 컴퓨터 시스템 공개 키로 암호화되기 때문에 메시지(3a)를 복호화할 수 없게 될 것이다. 메시지(3a)에 기초하여, 본원에서 설명되는 바와 같이, 제1 장치(606a)는 원격 컴퓨터 시스템(608a)과의 상호작용에 대해 거부될 수 있다(예를 들어, 인증되지 않음). 추가적으로 또는 대안적으로, 제1 장치(606a)는 본원에서 설명되는 바와 같이, 원격 컴퓨터 시스템(608a) 및/또는 공격자(608b)와의 상호작용이 차단될 수 있다. 또한, 상호작용 데이터베이스(606e)는 본원에서 설명되는 바와 같이, (예를 들어, 메시지(2a)에 기초하여) 업데이트될 수도 있다. 따라서, 상호작용 데이터베이스(606e)에 대한 업데이트가 도청자에 의한 공격을 차단하며 메시지(1a) 내에 공개 키 데이터를 포함하여 중간 침입 공격자가 공격하는 것을 차단하기 때문에 보안이 개선된다.
본 발명이 가장 실용적이고 바람직한 실시예 또는 측면으로 현재 간주되는 것에 기반하여 예시의 목적상 상세히 설명되었지만, 그러한 세부 사항은 단지 그러한 목적을 위해서만, 그리고 본 발명이 개시된 실시예 또는 측면으로 한정되지 않으며, 오히려 첨부된 청구범위의 사상 및 범주 내에 있는 변형과 균등한 배열을 포함하도록 의도됨을 이해해야 한다. 예를 들어, 본 발명은 가능한 정도까지 임의의 실시예 또는 측면의 하나 이상의 특징부가 임의의 다른 실시예 또는 측면의 하나 이상의 특징부와 조합될 수 있음을 고려하여야 한다.
Claims (30)
- 장치를 인증하기 위한 방법으로서,
제1 장치를 상호작용 데이터베이스에 커플링시키되, 상기 상호작용 데이터베이스는 제2 장치에 커플링되고, 상호작용 데이터베이스는 상호작용 데이터를 저장하며, 제1 장치는 제1 그룹 공개 키(public key), 제1 그룹 개인 키(private key), 제1 장치 공개 키, 및 제1 장치 개인 키를 저장하며, 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장하는, 단계;
제1 메시지를 제1 장치로부터 원격 컴퓨터 시스템으로 전송하되, 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문(challenge question)과 연관된 챌린지 데이터(challenge data), 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터(response data), 및 제1 장치와 연관된 인증 데이터(authentication data)를 포함하며, 챌린지 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화되며, 제1 메시지는 원격 컴퓨터 시스템의 원격 컴퓨터 시스템 공개 키로 암호화되는, 단계;
제2 메시지를 원격 컴퓨터 시스템으로부터 제2 장치에서 수신하되, 제2 메시지는 제1 메시지의 제1 그룹 공개 키로 암호화된 챌린지 데이터를 포함하며, 제2 메시지는 제2 장치 공개 키로 암호화되는, 단계;
제3 메시지를 제2 장치로부터 원격 컴퓨터 시스템으로 전송하되, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함하며, 응답 데이터는 제1 그룹 공개 키로 암호화되며, 제3 메시지는 원격 컴퓨터 시스템 공개 키로 암호화되는, 단계; 및
제1 장치가 원격 컴퓨터 시스템에 의해 인증되었음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 원격 컴퓨터 시스템 간의 상호작용을 허용하는 단계를 포함하는, 방법.
- 제1항에 있어서, 상기 상호작용 데이터는 적어도 하나의 상호작용과 연관된 데이터를 포함하고, 각각의 상호작용은 결제 트랜잭션 또는 통신 중 적어도 하나를 포함하는, 방법.
- 제2항에 있어서, 상기 적어도 하나의 상호작용은 상기 제2 장치와 원격 컴퓨터 시스템 간의 상호작용, 제2 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 상호작용 데이터베이스에 커플링된 제3 장치와 원격 컴퓨터 시스템 간의 상호작용, 제3 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 또는 가상 장치와 가상 원격 컴퓨터 시스템 간의 가상 상호작용 중 적어도 하나를 포함하는, 방법.
- 제1항에 있어서,
상기 제1 장치에 의해, 제1 메시지를 전송하기 전에 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 챌린지 데이터와 응답 데이터를 결정하는 단계; 및
상기 제2 메시지를 수신하는 것에 응답하여, 상기 제2 장치에 의해, 제3 메시지를 전송하기 전에 제2 메시지로부터의 챌린지 데이터와 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 응답 데이터를 결정하는 단계를 더 포함하는, 방법.
- 제1항에 있어서, 상기 상호작용 데이터베이스, 상기 제1 장치, 및 상기 제2 장치는 각각 제1 네트워크에 커플링되는, 방법.
- 제5항에 있어서, 상기 제1 장치, 상기 제2 장치 및 상기 원격 컴퓨터 시스템은 각각 상기 제1 네트워크와 별개의 제2 네트워크에 커플링되고, 상기 제1 메시지는 상기 제2 네트워크를 통해 제1 장치로부터 상기 원격 컴퓨터 시스템으로 전송되고, 상기 제2 메시지는 상기 제2 네트워크를 통해 상기 원격 컴퓨터 시스템으로부터 제2 장치에서 수신되고, 상기 제3 메시지는 상기 제2 네트워크를 통해 상기 제2 장치로부터 상기 원격 컴퓨터 시스템으로 전송되는, 방법.
- 제1항에 있어서, 상기 원격 컴퓨터 시스템은 상기 제1 메시지로부터의 응답 데이터와 상기 제3 메시지로부터의 응답 데이터의 비교에 기초하여 상기 제1 장치를 인증하는, 방법.
- 제1항에 있어서, 상기 챌린지 데이터를 가진 제2 메시지를 수신하는 것에 응답하여 상호작용 데이터베이스에 챌린지 데이터를 저장하는 단계를 더 포함하는, 방법.
- 제1항에 있어서, 상기 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 원격 컴퓨터 시스템 간의 상호작용을 차단하는 단계를 더 포함하는, 방법.
- 장치를 인증하기 위한 방법으로서,
제1 장치를 상호작용 데이터베이스에 커플링시키되, 상기 상호작용 데이터베이스는 제2 장치에 커플링되고, 상호작용 데이터베이스는 상호작용 데이터를 저장하며, 제1 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장하며, 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장하는, 단계;
제1 메시지를 제1 장치로부터 제1 원격 컴퓨터 시스템으로 전송하되, 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키와 연관된 제1 원격 컴퓨터 시스템 공개 키 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함하며, 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화되며, 제1 메시지는 제1 원격 컴퓨터 시스템의 제1 원격 컴퓨터 시스템 공개 키로 암호화되는, 단계;
제2 메시지를 제2 원격 컴퓨터 시스템으로부터 제2 장치에서 수신하되, 제2 메시지는 제1 메시지로부터의 제1 그룹 공개 키로 암호화된 챌린지 데이터 및 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함하며, 제2 메시지는 제2 장치 공개 키로 암호화되는, 단계;
제3 메시지를 제2 장치로부터 제2 원격 컴퓨터 시스템으로 전송하되, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함하며, 응답 데이터는 제1 그룹 공개 키로 암호화되며, 제3 메시지는 제2 메시지로부터의 제1 원격 컴퓨터 시스템 공개 키로 암호화되는, 단계; 및
제1 장치가 제2 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 제2 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 제1 원격 컴퓨터 시스템 및 제2 원격 컴퓨터 시스템 중 적어도 하나 간의 상호작용을 차단하는 단계를 포함하는, 방법.
- 장치를 인증하기 위한 시스템으로서,
상호작용 데이터를 저장하도록 구성된 상호작용 데이터베이스;
상호작용 데이터베이스에 커플링된 제1 장치로, 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장하도록 구성된, 상기 제1 장치; 및
상호작용 데이터베이스에 커플링된 제2 장치로, 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장하도록 구성된, 상기 제2 장치를 포함하고;
여기서 제1 장치는 제1 메시지를 원격 컴퓨터 시스템에 전송하도록 구성되며, 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함하며, 챌린지 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화되며, 제1 메시지는 원격 컴퓨터 시스템의 원격 컴퓨터 시스템 공개 키로 암호화되고;
여기서 제2 장치는 원격 컴퓨터 시스템으로부터 제2 메시지를 수신하도록 구성되며, 제2 메시지는 제1 메시지로부터의 제1 그룹 공개 키로 암호화된 챌린지 데이터를 포함하며, 제2 메시지는 제2 장치 공개 키로 암호화되고;
여기서 제2 장치는 제3 메시지를 원격 컴퓨터 시스템에 전송하도록 구성되며, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함하며, 응답 데이터는 제1 그룹 공개 키로 암호화되며, 제3 메시지는 원격 컴퓨터 시스템 공개 키로 암호화되고; 그리고
여기서 제1 장치가 원격 컴퓨터 시스템에 의해 인증되었음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치는 제1 장치와 원격 컴퓨터 시스템 간의 상호작용을 허용하도록 구성되는, 시스템.
- 제11항에 있어서, 상기 상호작용 데이터는 적어도 하나의 상호작용과 연관된 데이터를 포함하고, 각각의 상호작용은 결제 트랜잭션 또는 통신 중 적어도 하나를 포함하는, 시스템.
- 제12항에 있어서, 상기 적어도 하나의 상호작용은 상기 제2 장치와 원격 컴퓨터 시스템 간의 상호작용, 제2 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 상호작용 데이터베이스에 커플링된 제3 장치와 원격 컴퓨터 시스템 간의 상호작용, 제3 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 또는 가상 장치와 가상 원격 컴퓨터 시스템 간의 가상 상호작용 중 적어도 하나를 포함하는, 시스템.
- 제11항에 있어서,
상기 제1 장치는 상기 제1 메시지를 전송하기 전에 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 챌린지 데이터와 응답 데이터를 결정하도록 구성되고; 그리고
상기 제2 메시지를 수신하는 것에 응답하여, 제2 장치는 제3 메시지를 전송하기 전에 제2 메시지로부터의 챌린지 데이터와 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 응답 데이터를 결정하도록 구성되는, 시스템.
- 제11항에 있어서, 상기 상호작용 데이터베이스, 상기 제1 장치, 및 상기 제2 장치는 각각 제1 네트워크에 커플링되는, 시스템.
- 제15항에 있어서, 상기 제1 장치, 상기 제2 장치 및 상기 원격 컴퓨터 시스템은 각각 상기 제1 네트워크와 별개의 제2 네트워크에 커플링되고, 상기 제1 메시지는 제2 네트워크를 통해 제1 장치로부터 원격 컴퓨터 시스템으로 전송되고, 상기 제2 메시지는 제2 네트워크를 통해 원격 컴퓨터 시스템으로부터 제2 장치에서 수신되고, 상기 제3 메시지는 제2 네트워크를 통해 제2 장치로부터 원격 컴퓨터 시스템으로 전송되는, 시스템.
- 제11항에 있어서, 상기 원격 컴퓨터 시스템은 상기 제1 메시지로부터의 응답 데이터와 제3 메시지로부터의 응답 데이터의 비교에 기초하여 상기 제1 장치를 인증하는, 시스템.
- 제11항에 있어서, 상기 상호작용 데이터베이스는 상기 챌린지 데이터를 가진 제2 메시지를 수신하는 제2 장치에 응답하여 챌린지 데이터를 저장하도록 구성되는, 시스템.
- 제11항에 있어서, 상기 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치는 제1 장치와 원격 컴퓨터 시스템 간의 상호작용을 차단하도록 구성되는, 시스템.
- 장치를 인증하기 위한 시스템으로서,
상호작용 데이터를 저장하도록 구성된 상호작용 데이터베이스;
상호작용 데이터베이스에 커플링된 제1 장치로, 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장하도록 구성된, 상기 제1 장치; 및
상호작용 데이터베이스에 커플링된 제2 장치로, 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장하도록 구성된, 상기 제2 장치를 포함하고;
여기서 제1 장치는 제1 메시지를 원격 컴퓨터 시스템에 전송하도록 구성되며, 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키와 연관된 제1 원격 컴퓨터 시스템 공개 키 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함하며, 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화되며, 제1 메시지는 원격 컴퓨터 시스템의 제1 원격 컴퓨터 시스템 공개 키로 암호화되고;
여기서 제2 장치는 제2 메시지를 제2 원격 컴퓨터 시스템으로부터 수신하도록 구성되며, 제2 메시지는 제1 메시지로부터의 제1 그룹 공개 키로 암호화된 챌린지 데이터 및 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함하며, 제2 메시지는 제2 장치 공개 키로 암호화되고;
여기서 제2 장치는 제3 메시지를 제2 원격 컴퓨터 시스템에 전송하도록 구성되며, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함하며, 응답 데이터는 제1 그룹 공개 키로 암호화되며, 제3 메시지는 제2 메시지로부터의 제1 원격 컴퓨터 시스템 공개 키로 암호화되고; 그리고
여기서 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 제2 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치는 제1 장치와 제1 원격 컴퓨터 시스템 및 제2 원격 컴퓨터 시스템 중 적어도 하나 간의 상호작용을 차단하도록 구성되는, 시스템.
- 장치를 인증하기 위한 컴퓨터 판독가능한 기록매체로서, 상기 컴퓨터 판독가능한 기록매체는 적어도 하나의 프로세서에 의해 실행될 때, 적어도 하나의 프로세서로 하여금,
제2 장치에 커플링된 상호작용 데이터베이스에 제1 장치를 커플링시키되, 상호작용 데이터베이스는 상호작용 데이터를 저장하며, 제1 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장하며, 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장하고;
제1 메시지를 제1 장치로부터 원격 컴퓨터 시스템으로 전송하되, 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함하며, 챌린지 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화되며, 제1 메시지는 원격 컴퓨터 시스템의 원격 컴퓨터 시스템 공개 키로 암호화되고,
제1 메시지에 응답하여, 제2 메시지가 원격 컴퓨터 시스템으로부터 제2 장치에서 수신되며, 제2 메시지는 제1 메시지의 제1 그룹 공개 키로 암호화된 챌린지 데이터를 포함하며, 제2 메시지는 제2 장치 공개 키로 암호화되고, 그리고
제2 메시지에 응답하여, 제3 메시지가 제2 장치로부터 원격 컴퓨터 시스템으로 전송되며, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함하며, 응답 데이터는 제1 그룹 공개 키로 암호화되며, 제3 메시지는 원격 컴퓨터 시스템 공개 키로 암호화되고; 그리고
제1 장치가 원격 컴퓨터 시스템에 의해 인증되었음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 원격 컴퓨터 시스템 간의 상호작용을 허용하게 하는,
하나 이상의 명령어를 포함하는 적어도 하나의 비일시적 컴퓨터 판독가능 매체를 포함하는, 컴퓨터 판독가능한 기록매체.
- 제21항에 있어서, 상호작용 데이터는 적어도 하나의 상호작용과 연관된 데이터를 포함하고, 각각의 상호작용은 결제 트랜잭션 또는 통신 중 적어도 하나를 포함하는, 컴퓨터 판독가능한 기록매체.
- 제22항에 있어서, 상기 적어도 하나의 상호작용은 상기 제2 장치와 원격 컴퓨터 시스템 간의 상호작용, 제2 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 상호작용 데이터베이스에 커플링된 제3 장치와 원격 컴퓨터 시스템 간의 상호작용, 제3 장치와 제2 원격 컴퓨터 시스템 간의 상호작용, 또는 가상 장치와 가상 원격 컴퓨터 시스템 간의 가상 상호작용 중 적어도 하나를 포함하는, 컴퓨터 판독가능한 기록매체.
- 제21항에 있어서, 상기 하나 이상의 명령어는 상기 적어도 하나의 프로세서에 의해 실행될 때, 추가로 적어도 하나의 프로세서로 하여금,
제1 메시지를 전송하기 전에 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 챌린지 데이터와 응답 데이터를 결정하게 하고,
여기서 상기 제2 메시지를 수신하는 것에 응답하여, 제2 장치는 제3 메시지를 전송하기 전에 제2 메시지로부터의 챌린지 데이터와 상호작용 데이터베이스 내의 상호작용 데이터에 기초하여 응답 데이터를 결정하도록 구성되는, 컴퓨터 판독가능한 기록매체.
- 제21항에 있어서, 상기 상호작용 데이터베이스, 상기 제1 장치, 및 상기 제2 장치는 각각 제1 네트워크에 커플링되는, 컴퓨터 판독가능한 기록매체.
- 제25항에 있어서, 상기 제1 장치, 상기 제2 장치 및 상기 원격 컴퓨터 시스템은 각각 상기 제1 네트워크와 별개의 제2 네트워크에 커플링되고, 추가로 여기서 상기 제1 메시지는 제2 네트워크를 통해 제1 장치로부터 원격 컴퓨터 시스템으로 전송되고, 상기 제2 메시지는 제2 네트워크를 통해 원격 컴퓨터 시스템으로부터 제2 장치에서 수신되고, 상기 제3 메시지는 제2 네트워크를 통해 제2 장치로부터 원격 컴퓨터 시스템으로 전송되는, 컴퓨터 판독가능한 기록매체.
- 제21항에 있어서, 제3 메시지를 수신하는 것에 응답하여, 원격 컴퓨터 시스템은 제1 메시지로부터의 응답 데이터와 제3 메시지로부터의 응답 데이터의 비교에 기초하여 제1 장치를 인증하는, 컴퓨터 판독가능한 기록매체.
- 제21항에 있어서, 상기 상호작용 데이터베이스는 챌린지 데이터를 가진 제2 메시지를 수신하는 제2 장치에 응답하여 챌린지 데이터를 저장하도록 구성되는, 컴퓨터 판독가능한 기록매체.
- 제21항에 있어서, 상기 하나 이상의 명령어는 상기 적어도 하나의 프로세서에 의해 실행될 때, 추가로 적어도 하나의 프로세서로 하여금, 상기 제1 장치가 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 원격 컴퓨터 시스템 간의 상호작용을 차단하게 하는, 컴퓨터 판독가능한 기록매체.
- 장치를 인증하기 위한 컴퓨터 판독가능한 기록매체로서, 상기 컴퓨터 판독가능한 기록매체는 적어도 하나의 프로세서에 의해 실행될 때, 적어도 하나의 프로세서로 하여금,
제2 장치에 커플링된 상호작용 데이터베이스에 제1 장치를 커플링시키되, 상호작용 데이터베이스는 상호작용 데이터를 저장하며, 제1 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제1 장치 공개 키, 및 제1 장치 개인 키를 저장하며, 제2 장치는 제1 그룹 공개 키, 제1 그룹 개인 키, 제2 장치 공개 키, 및 제2 장치 개인 키를 저장하고;
제1 메시지를 제1 장치로부터 제1 원격 컴퓨터 시스템으로 전송하되, 제1 메시지는 상호작용 데이터에 대응하는 챌린지 질문과 연관된 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키와 연관된 제1 원격 컴퓨터 시스템 공개 키 데이터, 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터, 및 제1 장치와 연관된 인증 데이터를 포함하며, 챌린지 데이터, 제1 원격 컴퓨터 시스템 공개 키 데이터 및 응답 데이터는 각각 제1 그룹 공개 키로 암호화되며, 제1 메시지는 제1 원격 컴퓨터 시스템의 제1 원격 컴퓨터 시스템 공개 키로 암호화되고,
제1 메시지에 응답하여, 제2 메시지가 제2 원격 컴퓨터 시스템으로부터 제2 장치에서 수신되며, 제2 메시지는 제1 메시지의 제1 그룹 공개 키로 암호화된 챌린지 데이터 및 제1 원격 컴퓨터 시스템 공개 키 데이터를 포함하며, 제2 메시지는 제2 장치 공개 키로 암호화되고, 그리고
제2 메시지에 응답하여, 제3 메시지가 제2 장치로부터 제2 원격 컴퓨터 시스템으로 전송되며, 제3 메시지는 상호작용 데이터에 대응하는 챌린지 질문에 대한 요구되는 응답과 연관된 응답 데이터를 포함하며, 응답 데이터는 제1 그룹 공개 키로 암호화되며, 제3 메시지는 제2 메시지로부터의 제1 원격 컴퓨터 시스템 공개 키로 암호화되고; 그리고
제1 장치가 제2 원격 컴퓨터 시스템에 의해 인증되지 않았음을 나타내는 제2 원격 컴퓨터 시스템으로부터의 인증 메시지를 수신하는 것에 응답하여, 제1 장치와 제1 원격 컴퓨터 시스템 및 제2 원격 컴퓨터 시스템 중 적어도 하나 간의 상호작용을 차단하게 하는,
하나 이상의 명령어를 포함하는 적어도 하나의 비일시적 컴퓨터 판독가능 매체를 포함하는, 컴퓨터 판독가능한 기록매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020237014965A KR20230062897A (ko) | 2018-04-10 | 2018-04-10 | 카드 부재 트랜잭션을 처리하기 위한 시스템 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2018/026872 WO2019199276A1 (en) | 2018-04-10 | 2018-04-10 | Method, system, and computer program product for authenticating a device |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020237014965A Division KR20230062897A (ko) | 2018-04-10 | 2018-04-10 | 카드 부재 트랜잭션을 처리하기 위한 시스템 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200141078A KR20200141078A (ko) | 2020-12-17 |
KR102529750B1 true KR102529750B1 (ko) | 2023-05-09 |
Family
ID=68164415
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207032265A KR102529750B1 (ko) | 2018-04-10 | 2018-04-10 | 장치 인증을 위한 방법, 시스템 및 컴퓨터 프로그램 제품 |
KR1020237014965A KR20230062897A (ko) | 2018-04-10 | 2018-04-10 | 카드 부재 트랜잭션을 처리하기 위한 시스템 및 방법 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020237014965A KR20230062897A (ko) | 2018-04-10 | 2018-04-10 | 카드 부재 트랜잭션을 처리하기 위한 시스템 및 방법 |
Country Status (6)
Country | Link |
---|---|
US (2) | US11436313B2 (ko) |
EP (1) | EP3776177B1 (ko) |
KR (2) | KR102529750B1 (ko) |
CN (1) | CN112136103B (ko) |
SG (1) | SG11202009997QA (ko) |
WO (1) | WO2019199276A1 (ko) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019054466A (ja) * | 2017-09-15 | 2019-04-04 | 株式会社 エヌティーアイ | 通信システム、第1通信装置、第2通信装置、方法、コンピュータプログラム |
EP3776177B1 (en) * | 2018-04-10 | 2023-10-25 | Visa International Service Association | Method, system, and computer program product for authenticating a device |
US11349660B2 (en) * | 2019-09-19 | 2022-05-31 | Bose Corporation | Secure self-identification of a device |
US11948131B2 (en) | 2022-03-02 | 2024-04-02 | Visa International Service Association | System and method for device transaction authorization |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040143762A1 (en) * | 2001-04-30 | 2004-07-22 | Audebert Yves Louis Gabriel | Method and system for authenticating a personal security device vis-a-vis at least one remote computer system |
US20140137219A1 (en) * | 2012-11-15 | 2014-05-15 | International Business Machines Corporation | Automatically generating challenge questions inferred from user history data for user authentication |
US20150318998A1 (en) * | 2014-05-05 | 2015-11-05 | Securekey Technologies Inc. | Methods and systems for client-enhanced challenge-response authentication |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4771946B2 (ja) * | 2003-10-16 | 2011-09-14 | パナソニック株式会社 | 暗号通信システム、通信装置 |
US8320638B2 (en) * | 2008-04-10 | 2012-11-27 | Pitt Alan M | Anonymous association system utilizing biometrics |
US20110055585A1 (en) * | 2008-07-25 | 2011-03-03 | Kok-Wah Lee | Methods and Systems to Create Big Memorizable Secrets and Their Applications in Information Engineering |
EP2348446B1 (en) * | 2009-12-18 | 2015-04-15 | CompuGroup Medical AG | A computer implemented method for authenticating a user |
WO2011121566A1 (en) * | 2010-03-31 | 2011-10-06 | Paytel Inc. | A method for mutual authentication of a user and service provider |
FR2990094A1 (fr) * | 2012-04-26 | 2013-11-01 | Commissariat Energie Atomique | Methode et systeme d'authentification des noeuds d'un reseau |
US20140237252A1 (en) * | 2012-12-31 | 2014-08-21 | Safelylocked, Llc | Techniques for validating data exchange |
US20150120559A1 (en) * | 2013-10-29 | 2015-04-30 | Douglas Fisher | Enhancements to transaction processing in a secure environment |
WO2015125197A1 (ja) * | 2014-02-18 | 2015-08-27 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 認証方法及び認証システム |
CN106664206B (zh) * | 2014-06-18 | 2020-05-12 | 维萨国际服务协会 | 用于已认证的通信的高效方法 |
EP3776177B1 (en) * | 2018-04-10 | 2023-10-25 | Visa International Service Association | Method, system, and computer program product for authenticating a device |
-
2018
- 2018-04-10 EP EP18914441.3A patent/EP3776177B1/en active Active
- 2018-04-10 KR KR1020207032265A patent/KR102529750B1/ko active IP Right Grant
- 2018-04-10 CN CN201880093534.XA patent/CN112136103B/zh active Active
- 2018-04-10 SG SG11202009997QA patent/SG11202009997QA/en unknown
- 2018-04-10 US US17/046,448 patent/US11436313B2/en active Active
- 2018-04-10 KR KR1020237014965A patent/KR20230062897A/ko not_active Application Discontinuation
- 2018-04-10 WO PCT/US2018/026872 patent/WO2019199276A1/en unknown
-
2022
- 2022-08-22 US US17/892,270 patent/US11934512B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040143762A1 (en) * | 2001-04-30 | 2004-07-22 | Audebert Yves Louis Gabriel | Method and system for authenticating a personal security device vis-a-vis at least one remote computer system |
US20140137219A1 (en) * | 2012-11-15 | 2014-05-15 | International Business Machines Corporation | Automatically generating challenge questions inferred from user history data for user authentication |
US20150318998A1 (en) * | 2014-05-05 | 2015-11-05 | Securekey Technologies Inc. | Methods and systems for client-enhanced challenge-response authentication |
Also Published As
Publication number | Publication date |
---|---|
US20210150018A1 (en) | 2021-05-20 |
KR20200141078A (ko) | 2020-12-17 |
KR20230062897A (ko) | 2023-05-09 |
US20220405378A1 (en) | 2022-12-22 |
US11934512B2 (en) | 2024-03-19 |
WO2019199276A1 (en) | 2019-10-17 |
CN112136103A (zh) | 2020-12-25 |
US11436313B2 (en) | 2022-09-06 |
EP3776177B1 (en) | 2023-10-25 |
EP3776177A4 (en) | 2021-03-10 |
SG11202009997QA (en) | 2020-11-27 |
EP3776177A1 (en) | 2021-02-17 |
CN112136103B (zh) | 2024-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220321359A1 (en) | Methods and systems for ownership verification using blockchain | |
US11374754B2 (en) | System and method for generating trust tokens | |
KR102529750B1 (ko) | 장치 인증을 위한 방법, 시스템 및 컴퓨터 프로그램 제품 | |
US20150312038A1 (en) | Token security on a communication device | |
CN113474774A (zh) | 用于认可新验证器的***和方法 | |
Bojjagani et al. | The use of iot-based wearable devices to ensure secure lightweight payments in fintech applications | |
US11423403B2 (en) | Systems, methods, and computer program products for authorizing a transaction | |
EP4035044A1 (en) | System, method, and computer program product for secure key management | |
US20230131437A1 (en) | Method, system, and computer program product for authentication | |
US11764956B2 (en) | System, method, and computer program product for validating software agents in robotic process automation systems | |
US20240095724A1 (en) | Techniques to provide secure cryptographic authentication of contactless cards by distributed entities | |
US11354652B2 (en) | System, method, and computer program product for authenticating a user for a transaction | |
US11727399B2 (en) | Method, system, and computer program product for secure decryption | |
US20220327234A1 (en) | Method, system, and computer program product for securely rendering sensitive data | |
US20230353562A1 (en) | Trusted Identification of Enrolling Users Based on Images and Unique Identifiers Associated with Sponsoring Users | |
Maurya | The use of IoT-based wearable devices to ensure secure lightweight payments in FinTech applications | |
Azam | Symmetric Key Management for Mobile Financial Applications: A Key Hierarchy Approach |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
A107 | Divisional application of patent | ||
GRNT | Written decision to grant |