KR20200109309A - 인증 데이터를 제공하기 위한 시스템 및 방법 그리고 이러한 시스템으로부터의 인증 요청에 응답하기 위한 전자 디바이스 - Google Patents

인증 데이터를 제공하기 위한 시스템 및 방법 그리고 이러한 시스템으로부터의 인증 요청에 응답하기 위한 전자 디바이스 Download PDF

Info

Publication number
KR20200109309A
KR20200109309A KR1020207020042A KR20207020042A KR20200109309A KR 20200109309 A KR20200109309 A KR 20200109309A KR 1020207020042 A KR1020207020042 A KR 1020207020042A KR 20207020042 A KR20207020042 A KR 20207020042A KR 20200109309 A KR20200109309 A KR 20200109309A
Authority
KR
South Korea
Prior art keywords
electronic device
module
data
bias
response
Prior art date
Application number
KR1020207020042A
Other languages
English (en)
Inventor
데니스 존 요르겐센
산타누 바타차리야
Original Assignee
폰 패스 피티와이 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from AU2017904996A external-priority patent/AU2017904996A0/en
Application filed by 폰 패스 피티와이 리미티드 filed Critical 폰 패스 피티와이 리미티드
Publication of KR20200109309A publication Critical patent/KR20200109309A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • G06F21/35User authentication involving the use of external additional devices, e.g. dongles or smart cards communicating wirelessly
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/40User authentication by quorum, i.e. whereby two or more security principals are required
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • H04L29/06802
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2129Authenticate client device independently of the user

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Power Engineering (AREA)
  • Telephonic Communication Services (AREA)

Abstract

각각의 사용자(4)의 사용자 디바이스(3)에 대한 각각의 인증 데이터(2)를 제공하기 위한 시스템(1). 시스템(1)은 각각의 디바이스(3)의 정적 배향으로부터 도출된, 디바이스 특성화의 제1 인스턴스를 나타내는 각각의 디바이스(3)에 대한 제1 데이터(6)를 저장하기 위한 데이터베이스(5)를 포함한다. 통신 인터페이스(6a) 형태의 시스템 인터페이스는 상기 디바이스 특성화의 제2 인스턴스를 나타내는 제2 데이터(8)를 통신 네트워크(7)를 통해 디바이스(3)로부터 수신한다. 인터페이스(6a)는 네트워크(7)를 통해 데이터(2)를 전송한다. 서버(9) 형태의 인증 모듈은 데이터(6) 및 데이터(8)에 응답하여 인증 데이터(2)를 선택적으로 생성한다. 디바이스(3)는, 디바이스(3)의 특성화의 제2 인스턴스를 제공하라는 요청(42)을 수신하고, 응답(43)을 전송하기 위한 디바이스 인터페이스(41)를 포함한다. 디바이스(3)는 바이어스를 포함하는 측정 가능한 출력을 제공하는 기준 모듈(44), 및 상기 요청(42)에 응답하여 상기 측정 가능한 출력에 대해 모듈(44)을 프롬프트하고; 상기 측정 가능한 출력에 적어도 부분적으로 기초하여 상기 특성화의 인스턴스를 생성하고; 및 상기 디바이스 특성화의 인스턴스를 나타내는 데이터(8)를 포함하는 상기 응답(43)을 생성하는 프로세서(45)를 더 포함한다.

Description

인증 데이터를 제공하기 위한 시스템 및 방법 그리고 이러한 시스템으로부터의 인증 요청에 응답하기 위한 전자 디바이스
본 발명은 데이터를 제공하기 위한 시스템 및 방법에 관한 것으로, 보다 상세하게는 인증 데이터를 제공하기 위한 시스템 및 방법 그리고 이러한 시스템으로부터의 인증 요청에 응답하기 위한 전자 디바이스에 관한 것이다.
본 발명의 실시형태는 스마트폰에 의한 2차 인자(second-factor) 인증에 사용하기 위해 특별히 개발되었으며, 실시형태는 특히 이러한 응용과 관련하여 본 명세서에서 설명된다. 그러나, 본 발명은 이러한 사용 분야로 제한되지 않으며 식별 및/또는 인증 프로세스에 수반되는 다른 전자 디바이스에 보다 광범위하게 적용 가능한 것으로 이해된다.
본 명세서 전반에 걸쳐 배경 기술에 관한 임의의 논의는 이러한 기술이 널리 공지되어 있다거나 이 기술 분야에서 일반적인 상식의 일부를 형성하는 것을 인정하는 것으로 고려되어서는 안 된다.
인터넷 사용자에 이용 가능한 인증 시스템은 다수 있으며, 여기서 각각의 사용자는 일반적으로 하나 이상의 전자 디바이스 또는 전자 디바이스 자체와 상호 작용하는 인간이다. 기본 인증 형식은 디바이스 자체, 디바이스에서 실행되는 애플리케이션 소프트웨어, 또는 디바이스를 통해 액세스하는 온라인 사이트에 미리 정해진 패스워드를 사용하는 것이다.
현재의 인증 시스템은 인간에 의해 동작되는 전자 디바이스 및 인터넷이 가능한 독립형 디바이스에 모두 심각한 단점을 갖고 있다. 이러한 독립형 디바이스는 외부 디바이스 또는 네트워크와의 동작 중 적어도 일부의 동작을 수행하기 위해 반드시 인간의 입력을 요구하는 것은 아니며, 종종 인간의 입력과 독립적으로 동작한다.
당면한 과제의 일례로서, 전자 디바이스, 온라인 사이트 및 다른 연결된 디바이스에 액세스하기 위해 인간이 사용하는 패스워드는 점점 더 취약해지고 있다. 컴퓨팅 능력이 증가함에 따라 사용자는 컴퓨터 능력에 의한 '무차별(brute force)' 추측 공격을 방지하기 위해 더 길고 더 복잡한 패스워드를 선택할 것을 요구받는다. 사용자가 형식화하고 쉽고 신뢰성 있게 기억할 수 있는 패스워드의 복잡성에는 실질적인 한계가 있다. 추가적으로, 사용자는 또한 정기적으로 패스워드를 변경할 것을 요구받아서, 개인이 현재 사용 중인 패스워드와 이를 사용하는 곳을 기억하는 능력이 더욱 줄어든다. 도난당한 패스워드 데이터베이스를 보면, 사용자는 종종 추측하기 쉬운 패스워드를 선택한다는 점; 및 사용자는 종종 다수의 디바이스 및/또는 사이트에 동일한 패스워드를 재사용한다는 점을 알 수 있다. 이로 인해 다수의 사용자 디바이스나 이 사용자의 온라인 계정이 공격에 더욱 취약해진다. 즉, 공격자는 제1 사이트에 등록된 패스워드를 사용하여 제2 사이트의 사용자 계정을 공격하거나 이에 무단 액세스를 취득할 수 있다.
독립형 디바이스의 패스워드에도 또한 문제가 있다. 디바이스는 패스워드를 '잊어버리지' 않지만, 이러한 디바이스의 패스워드가 손상된 경우 디바이스에 물리적으로 액세스하지 않고 패스워드를 안전하게 업데이트하는 것은 종종 어렵다. 인터넷에 연결된 이러한 디바이스의 수가 증가함에 따라, 특히 사물 인터넷(Internet of Thing: IoT)이 증가함에 따라, 그에 따른 위험과 어려움이 커지고 있다. 종종 사용자가 패스워드를 고유하고 안전한 것으로 업데이트하기를 바라면서 디폴트 패스워드를 갖는 디바이스를 사용자에게 배송하는 경우가 있다. 경험에 따르면 많은 경우 디폴트 패스워드는 업데이트되지 않거나 또는 충분히 강력한 패스워드로 업데이트되지 않아서, 디바이스가 취약한 상태로 남아 있는 것으로 나타났다. 대규모, 특히 산업적 또는 대도시 배치에서 매우 많은 수의 분산 디바이스의 패스워드를 선택, 설정 및 안전하게 관리하는 프로세스는 그 자체로 어렵다. 패스워드의 업데이트를 용이하게 하는 것과 동일한 방법이 또한 전자 디바이스를 공격하고 지속적인 보안을 손상시킬 수 있는 기회를 제공하기 때문에 패스워드를 원격으로 업데이트하는 데 사용되는 방법은 고유한 위험을 수반하는 것으로 이해된다.
전자 디바이스 및 사용자의 인증을 개선하기 위한 노력으로, 민감한 거래 정보의 보호를 개선하기 위해 사용자 또는 디바이스로 하여금 하나를 초과하는 인증 계층을 이용할 수 있게 하는 시스템이 다수 생겨났다.
인증은 일반적으로 3개의 상위 레벨 '인자(factor)'에 기초하고, 이 인자는 다음과 같다:
Figure pct00001
사용자에 속한 것(예를 들어, 물리적 지문 또는 음성 지문).
Figure pct00002
사용자가 알고 있는 것(예를 들어, 패스워드).
Figure pct00003
사용자가 가지고 있는 것(예를 들어, 하드웨어 동글, 물리적 토큰 또는 디지털 인증서).
현재, 인간에게 가장 일반적인 인증 메커니즘은 (일반적으로 패스워드에 기초한) 단일-인자(one-factor) 인증이다. 이러한 인증 형태의 한계는 이중-인자(two-factor) 인증을 사용함으로써 부분적으로 방지될 수 있다. 후자의 이중-인자 인증은 인증을 확인하기 위해 3개의 인자 중 2개의 인자를 순차적으로 사용한다. 다수의 이중-인자 시스템(일반적으로 패스워드 및 하드웨어 동글과 같은 토큰)이 알려져 있지만 이를 채택한 것은 널리 퍼져 있지 않다. 다수의 '1.5 인자 인증 시스템도 알려져 있다. 이 인증 시스템은 패스워드와 폰 상의 소프트웨어 클라이언트, 및 확인용 SMS 메시지 또는 이메일을 조합한 것을 사용하는 시스템을 포함한다. 이러한 시스템은 단일-인자 인증 시스템보다 더 강력하고 안전하지만, 소프트웨어 클라이언트, 전화 번호, SMS 메시지 및 이메일 계정은 '사용자가 가지고 있는 것'이라는 규칙을 강하게 준수하는 것이 전혀 아니기 때문에 모두 취약하다. 이들은 보다 정확히 '사용자가 액세스할 수 있는 일부 온라인 자원'으로 설명되고, 그리하여 고유한 취약점이 존재한다. 특히 동일한 패스워드를 사용하여 스마트폰과 이메일에 모두 액세스하는 경우 패스워드가 손상되면 스마트폰이나 이메일과 같은 연결된 계정도 손상될 가능성이 높아서, 공격자는 사용자가 액세스할 수 있는 것과 동일한 온라인 자원에 액세스할 수 있게 된다.
이 문제에 대한 부분적인 해결책으로서, 하드웨어 토큰 또는 동글을 사용하여 이중-인자 시스템으로 사용자를 인증하는 알려진 프로세스가 존재한다. 이들은 전자적으로 제한된 자원에 액세스하는 데 사용되는 물리적 디바이스이다. 토큰은 신원을 증명하는 데 사용되는 일종의 정보를 포함한다. 그러나 이러한 토큰은 도난이나 분실 및 중간자 공격에 취약하다.
기존의 이중-인자 시스템은 확산을 방해하는 많은 단점을 갖고 있다. 예를 들어 기존의 시스템은 일반적으로 설치, 관리 및 지원 비용이 많이 든다. 하드웨어 토큰은 종종 비싸며 안전한 분배, 신중한 관리 및 복잡한 교체 프로토콜이 필요하다. 이러한 토큰을 사용하는 임의의 조직은 또한 손실된 토큰을 관리하기 위한 절차를 마련해야 한다. 이것은 숙련된 직원 팀이 시스템을 관리하고 사용자의 현장 호출을 수반할 수 있다. 따라서, 이러한 시스템의 임의의 가능한 이익은 실제로 재무 가치가 있는 자산을 보호하는 대규모 조직에 대해서만 실현될 수 있다. 개인, 소규모 조직 또는 상대적으로 자금이 부족한 조직(그럼에도 광범위한 위험을 감수하는 조직)의 경우 이중-인자 시스템을 구현하는 데 드는 높은 재정 비용을 정당화하는 것이 더 어렵다. 후자의 일례로는 자원 봉사자가 운영하는 어린이 스포츠 협회가 있다.
보다 최근에는 소매업자와 구매자를 수반하는 소매 거래에 대한 2차-인자 인증을 제공하는 것이 고려되어 왔다. 이것은 구매자에 의해 동작되는 스마트폰의 처리 능력을 활용하는 것을 포함하였다. 예는 미국 특허 8,447,272, 미국 특허 출원 13/681,588 및 국제 특허 출원 WO 2015/058300 및 WO 2016/087541에 개시된 것을 포함한다. 이러한 형식의 2차-인자 인증은 정확하지 않을 수 있으며 반복성이 떨어질 수 있다. 이들은 종종 또한 패스워드, 제스처 또는 다른 움직임과 같은 "사용자가 알고 있는 것"을 기억해야 할 것을 사용자에게 요구한다.
독립형 디바이스는 또한 일반적으로 저장 패스워드와 같은 디바이스가 '알고' 있는 것; 또는 디지털 인증서 또는 모바일 전화 국제 모바일 장비 신원과 같은 전자 일련 번호와 같은 디바이스가 갖고 있는 것 중 어느 것으로 선택되는 단일-인자 인증을 사용한다. 이러한 인증 방법은 모두 약점이 있어서 광범위한 독립형 디바이스에 적용하기 어렵다. 특히, 인터넷 가능 디바이스 패스워드와 연관된 주요 문제는 앞서 예시되어 있다. 디지털 인증서 또는 전자 일련 번호의 경우 주요 문제는 이러한 식별자가 디바이스와의 물리적 또는 원격 연결을 통해 변경되거나 마스킹되거나 또는 도난 또는 복사되기 쉽다는 것이다. 많은 측면에서 이들은 앞에서 논의한 '사용자가 액세스할 수 있는 온라인 자원' 시나리오와 같은 약점을 갖고 있다. 따라서, 이러한 보호 기능을 사용하는 디바이스는 악의적인 공격에 취약하고 오용하기 쉽다. 이러한 영향은 종종 점점 더 대규모로 사용되고 긴밀한 인간의 감독 없이 관리되는 IoT 디바이스의 상황에서 한층 더 두드러져서, 인간이 있을 때 손상이 발생했을 때보다 훨씬 더 오랫동안 디바이스의 손상이 은닉된 상태로 유지될 수 있다.
따라서, 이 기술 분야에서 인증 데이터를 제공하기 위한 개선된 시스템 및 방법이 필요하다.
본 발명의 목적은 종래 기술의 단점 중 적어도 하나를 극복하거나 개선하거나 유용한 대안을 제공하는 것이다.
본 발명의 제1 양태에 따르면, 전자 디바이스가 제공되고, 상기 전자 디바이스는,
상기 전자 디바이스의 미리 결정된 특성화(characterisation)의 인스턴스(instance)를 제공하라는 인증 요청을 수신하고; 및 상기 요청에 대한 디바이스 응답을 전송하기 위한 디바이스 인터페이스;
바이어스(bias)를 포함하는 측정 가능한 출력을 제공하는 기준 모듈; 및
상기 요청에 응답하여, 상기 측정 가능한 출력에 대해 상기 모듈을 프롬프트하고; 상기 측정 가능한 출력에 기초하여 상기 특성화의 인스턴스를 생성하고; 및 상기 디바이스 특성화의 인스턴스를 나타내는 제2 데이터를 포함하는 상기 디바이스 응답을 생성하는 프로세서를 포함한다.
일 실시형태에서, 상기 프로세서는 상기 제2 데이터를 암호화한다.
일 실시형태에서, 상기 프로세서는 상기 요청에 응답하여 상기 모듈의 프롬프트의 성격을 결정한다.
일 실시형태에서, 상기 전자 디바이스는 복수의 기준 모듈을 포함하고, 상기 프로세서는 상기 요청에 응답하여 상기 복수의 기준 모듈 중에서 각각의 측정 가능한 출력에 대해 프롬프트되거나 프롬프트될 하나 이상의 기준 모듈을 선택한다.
일 실시형태에서, 상기 기준 모듈은 상기 전자 디바이스의 기존 모듈이다.
일 실시형태에서, 상기 기준 모듈은 상기 전자 디바이스에 연결될 수 있는 주변 디바이스이다.
일 실시형태에서, 상기 주변 디바이스는 상기 전자 디바이스에 제거 가능하게 연결된다.
일 실시형태에서, 상기 기준 모듈은 상기 측정 가능한 출력이 도출되는 적어도 하나의 아날로그 신호를 생성한다.
일 실시형태에서, 상기 측정 가능한 출력은 적어도 하나의 디지털 신호이다.
일 실시형태에서, 상기 바이어스는 상기 전자 디바이스에 고유하다.
일 실시형태에서, 상기 바이어스는 상기 기준 모듈에 고유하다.
일 실시형태에서, 상기 바이어스는 하드웨어 바이어스이다.
일 실시형태에서, 상기 기준 모듈은 카메라 모듈; 자이로스코프 모듈; 가속도계 모듈; 및 나침반(compass) 모듈 중 하나 이상을 포함한다.
일 실시형태에서, 상기 카메라 모듈로부터 상기 측정 가능한 출력은 시간 순서의 일련의 디지털 이미지를 포함한다.
일 실시형태에서, 상기 카메라 모듈은 시야를 갖는 렌즈를 포함하고, 상기 이미지는 상기 시야가 미리 결정된 상태를 가질 때 캡처된다.
일 실시형태에서, 상기 미리 결정된 상태는 상기 시야가 저조도 상태인 것을 포함한다.
일 실시형태에서, 상기 미리 결정된 상태는 상기 시야가 조도가 없는 상태인 것을 포함한다.
일 실시형태에서, 상기 미리 결정된 상태는 상기 시야가 특정 형상 및/또는 패턴을 포함하는 것을 포함한다.
일 실시형태에서, 상기 자이로스코프 모듈로부터 상기 측정 가능한 출력은 시간 순서의 일련의 측정값을 포함한다.
일 실시형태에서, 각각의 측정값은 상기 전자 디바이스가 정지 상태에 있는 동안 상기 자이로스코프 모듈에 의해 측정된 각가속도(anglular acceleration)를 나타내는 각각의 디지털 신호이다.
일 실시형태에서, 상기 나침반 모듈로부터 상기 측정 가능한 출력은 시간 순서의 일련의 측정값을 포함한다.
일 실시형태에서, 각각의 측정값은 상기 전자 디바이스가 정지 상태에 있는 동안 상기 나침반 모듈에 의해 측정된 배향을 나타내는 각각의 디지털 신호이다.
일 실시형태에서, 상기 기준 모듈은 상기 측정 가능한 출력을 제공하기 위한 출력을 갖는 전자 회로를 포함한다.
일 실시형태에서, 상기 전자 회로는 입력을 포함하고, 상기 측정 가능한 출력은 상기 입력에 인가된 미리 결정된 입력 신호에 대해 획득된다.
일 실시형태에서, 상기 미리 결정된 입력 신호는 널(null) 신호; 및 최대 신호로부터 선택된다.
일 실시형태에서, 상기 전자 회로는 집적 회로이고, 상기 널 신호는 논리 제로(0) 신호이고, 상기 최대 신호는 논리 일(1) 신호이다.
일 실시형태에서, 상기 디바이스 인터페이스는 상기 전자 디바이스의 미리 결정된 특성화의 제1 인스턴스를 제공하라는 식별 요청을 수신하고; 및 상기 식별 요청에 대한 디바이스 응답을 전송하도록 구성된다.
일 실시형태에서, 상기 디바이스 인터페이스는 상기 전자 디바이스의 미리 결정된 특성화의 제1 인스턴스를 제공하라는 식별 요청을 수신하고; 및 상기 식별 요청에 대한 디바이스 응답을 전송하도록 구성된다.
일 실시형태에서, 상기 프로세서는 상기 식별 요청에 응답하여, 상기 측정 가능한 출력에 대해 상기 기준 모듈을 프롬프트하고; 상기 특성화의 제1 인스턴스를 생성하고; 및 상기 디바이스 특성화의 제1 인스턴스를 나타내는 제1 데이터를 포함하는 상기 식별 요청에 대한 디바이스 응답을 생성한다.
일 실시형태에서, 상기 프로세서는 상기 제1 데이터를 암호화한다.
본 발명의 제2 양태에 따르면, 전자 디바이스를 동작시키는 방법이 제공되고, 상기 방법은,
상기 디바이스의 미리 결정된 특성화의 제2 인스턴스를 제공하라는 인증 요청을 디바이스 인터페이스로 수신하는 단계;
상기 요청에 대한 디바이스 응답을 상기 디바이스 인터페이스로 전송하는 단계;
기준 모듈로부터 측정 가능한 출력을 제공하는 단계로서, 상기 측정 가능한 출력은 바이어스를 포함하는, 상기 측정 가능한 출력을 제공하는 단계; 및
상기 요청에 응답하여; 상기 측정 가능한 출력에 대해 상기 모듈을 프롬프트하고; 상기 측정 가능한 출력에 기초하여 상기 특성화의 제2 인스턴스를 생성하고; 및 상기 디바이스 특성화의 제2 인스턴스를 나타내는 제2 데이터를 포함하는 상기 디바이스 응답을 생성하는 프로세서를 제공하는 단계를 포함한다.
본 발명의 제3 양태에 따르면, 사용자의 사용자 디바이스에 대한 인증 데이터를 제공하기 위한 시스템이 제공되고, 상기 시스템은,
상기 디바이스의 정적 배향(static orientation)으로부터 도출된, 디바이스 특성화의 제1 인스턴스를 나타내는 제1 데이터를 저장하기 위한 데이터베이스;
상기 디바이스 특성화의 제2 인스턴스를 나타내는 제2 데이터를 상기 디바이스로부터 수신하고; 상기 인증 데이터를 전송하기 위한 시스템 인터페이스; 및
상기 제1 및 제2 데이터에 응답하여 상기 인증 데이터를 선택적으로 생성하는 인증 모듈을 포함한다.
일 실시형태에서, 상기 디바이스 특성화의 각각의 인스턴스는 상기 디바이스의 하나를 초과하는 정적 배향으로부터 도출된다.
일 실시형태에서, 상기 인터페이스는 상기 제2 데이터의 일시적으로 이격된 개별 인스턴스를 수신하고, 상기 인증 모듈은 각각의 인스턴스의 수신에 응답하여 상기 인증 데이터의 각각의 인스턴스를 선택적으로 생성한다.
일 실시형태에서, 상기 디바이스 특성화의 각각의 인스턴스는 상기 디바이스의 정적 배향의 미리 결정된 시퀀스로부터 도출된다.
일 실시형태에서, 상기 인증 모듈은 상기 인터페이스에 의해 수신되는, 제1 당사자로부터의 제1 요청에 응답하여 상기 인증 데이터를 선택적으로 생성한다.
일 실시형태에서, 상기 인터페이스는 상기 인증 데이터의 생성에 응답하여 상기 데이터를 상기 제1 당사자에게 전송한다.
일 실시형태에서, 상기 디바이스 특성화의 제1 인스턴스는 상기 정적 배향으로부터 도출된 디바이스 시그니처이다.
일 실시형태에서, 상기 시스템은 상기 사용자 디바이스로부터 제3 데이터에 응답하여 상기 제1 데이터를 생성하는 시그너처 모듈을 포함한다.
일 실시형태에서, 상기 제3 데이터는 상기 디바이스에 대한 고유한 식별자를 포함한다.
일 실시형태에서, 상기 제3 데이터는 상기 디바이스에 대한 UUID를 포함한다.
일 실시형태에서, 상기 디바이스 시그너처는 상기 디바이스에 의해 생성되고 제3 데이터로서 상기 인터페이스에 전송된다.
일 실시형태에서, 상기 인증 모듈은 상기 디바이스 시그너처 및 상기 제2 데이터에 응답하여 상기 인증 데이터를 선택적으로 생성한다.
일 실시형태에서, 상기 사용자 디바이스는,
상기 디바이스 특성화의 제2 인스턴스를 제공하라는 시스템 요청을 수신하고, 디바이스 응답을 전송하기 위한 디바이스 인터페이스;
상기 시스템 요청 및 상기 사용자 디바이스의 적어도 하나의 미리 결정된 정적 배향에 응답하여 상기 특성화의 제2 인스턴스를 생성하는 기준 모듈; 및
상기 제2 인스턴스에 응답하여 상기 디바이스 응답을 생성하는 연산 모듈을 포함한다.
일 실시형태에서, 상기 기준 모듈은 복수의 가속도계를 포함한다.
일 실시형태에서, 상기 기준 모듈은 직교 배향된 적어도 2개의 가속도계를 포함한다.
일 실시형태에서, 상기 기준 모듈은 직교 배향된 적어도 3개의 가속도계를 포함한다.
일 실시형태에서, 상기 특징화의 인스턴스는 각각의 상기 가속도계로부터 수신된 적어도 하나의 측정값으로부터 각각 도출된다.
일 실시형태에서, 상기 사용자 디바이스는 상기 시스템 요청에 응답하여 상기 디바이스의 현재 배향을 상기 사용자에게 지시하는 인간 기계 인터페이스(human machine interface: HMI)를 포함한다.
일 실시형태에서, 상기 HMI는 상기 시스템 요청에 응답하여 상기 사용자 디바이스에 대한 목표 배향을 지시한다.
일 실시형태에서, 상기 HMI는 상기 시스템 요청에 응답하여 상기 현재 배향과 상기 목표 배향 사이의 차이를 지시한다.
일 실시형태에서, 상기 HMI는 상기 시스템 요청에 응답하여 상기 현재 배향과 상기 목표 배향 사이의 실질적인 일치를 지시한다.
일 실시형태에서, 상기 HMI는 상기 실질적인 일치를 지시하는 것에 응답하여 다른 목표 배향을 지시한다.
일 실시형태에서, 상기 차이 또는 상기 실질적인 일치를 지시하는 것은 실시간으로 일어난다.
일 실시형태에서, 상기 HMI는 그래픽 사용자 인터페이스(GUI)를 포함한다.
일 실시형태에서,
상기 데이터베이스는 상기 사용자에 대한 사용자 레코드를 저장하고; 및
연관 모듈은 상기 특성화의 제1 인스턴스를 상기 시스템 인터페이스에 제공하는 상기 디바이스에 응답하여 상기 사용자 레코드를 업데이트한다.
일 실시형태에서, 상기 디바이스는 통신 어드레스를 갖고, 상기 시그너처 모듈은 상기 통신 어드레스에 응답하여 상기 제1 데이터를 생성한다.
일 실시형태에서, 상기 시그너처 모듈은 상기 통신 어드레스에 응답하여 상기 디바이스 시그너처를 생성한다.
일 실시형태에서, 상기 통신 어드레스는 전화 번호; 이메일 어드레스; 문자 메시지 어드레스; 등 중 하나이다.
본 발명의 제4 양태에 따르면, 사용자에 의해 동작되는 사용자 디바이스에 대한 인증 데이터를 제공하는 방법이 제공되고, 상기 방법은,
상기 디바이스의 정적 배향으로부터 도출된, 특성화의 제1 인스턴스를 나타내는 제1 데이터를 데이터베이스에 저장하는 단계;
시스템 인터페이스를 제공하여 상기 특성화의 제2 인스턴스를 나타내는 제2 데이터를 상기 디바이스로부터 수신하고; 상기 인증 데이터를 전송하는 단계; 및
상기 제1 및 제2 데이터에 응답하여 상기 인증 데이터를 선택적으로 생성하는 인증 모듈을 제공하는 단계를 포함한다.
본 발명의 제5 양태에 따르면, 모바일 통신 디바이스가 제공되고, 상기 모바일 통신 디바이스는,
상기 디바이스의 미리 결정된 특성화의 제2 인스턴스를 제공하라는 시스템 요청을 수신하고; 및 디바이스 응답을 전송하는 디바이스 인터페이스;
상기 시스템 요청 및 상기 디바이스의 적어도 하나의 미리 결정된 정적 배향에 응답하여 상기 특성화의 제2 인스턴스를 생성하는 기준 모듈; 및
상기 제2 인스턴스에 응답하여 상기 디바이스 응답을 생성하는 연산 모듈을 포함한다.
일 실시형태에서, 상기 기준 모듈은 복수의 미리 결정된 배향에 응답하여 상기 특성화의 제2 인스턴스를 생성한다.
본 발명의 제6 양태에 따르면, 바이어스를 포함하는 측정 가능한 출력을 생성하는 전자 디바이스에 대한 인증 데이터를 제공하기 위한 시스템이 제공되고, 상기 시스템은,
상기 바이어스로부터 적어도 부분적으로 도출된, 상기 디바이스에 대한 디바이스 특성화의 제1 인스턴스를 나타내는 제1 데이터를 저장하기 위한 데이터베이스;
상기 디바이스 특성화의 제2 인스턴스를 나타내는 제2 데이터를 상기 디바이스로부터 수신하는 시스템 인터페이스; 및
상기 제1 및 제2 데이터에 응답하여 상기 전자 디바이스에 대한 상기 인증 데이터를 선택적으로 생성하는 인증 모듈을 포함한다.
일 실시형태에서, 상기 인터페이스는 상기 인증 모듈에 응답하여 상기 인증 데이터를 원격 디바이스로 선택적으로 전송한다.
일 실시형태에서, 상기 원격 디바이스는 POS 디바이스, 빌딩 액세스 제어기, 네트워크 디바이스, 금융 거래 게이트웨이 등 중 하나 이상이다.
일 실시형태에서, 상기 전자 디바이스는 상기 측정 가능한 출력을 생성하기 위한 기준 모듈을 포함한다.
일 실시형태에서, 상기 기준 모듈은 GPS 모듈; 카메라 모듈; 가속도계 모듈; 나침반 모듈; 자력계 모듈; GUI 모듈; 자이로스코프 모듈; 나침반 모듈; 등 중 하나 이상이다.
일 실시형태에서, 상기 기준 모듈은 상기 디바이스가 미리 결정된 상태에 있을 때 상기 측정 가능한 출력을 생성한다.
일 실시형태에서, 상기 기준 모듈은 상기 기준 모듈이 미리 결정된 상태에 있을 때 상기 측정 가능한 출력을 생성한다.
일 실시형태에서, 상기 측정 가능한 출력은 복수의 시간적으로 이격된 개별 출력을 포함한다.
일 실시형태에서, 상기 전자 디바이스는 상기 측정 가능한 출력에 응답하여 상기 바이어스를 계산한다.
일 실시형태에서, 상기 전자 디바이스는 상기 복수의 개별 출력에 응답하여 상기 바이어스를 계산한다.
일 실시형태에서, 상기 시스템은 상기 제2 데이터를 수신하는 상기 시스템 인터페이스에 응답하여 상기 데이터베이스에 상기 제2 데이터를 저장하는 저장 모듈을 포함한다.
일 실시형태에서, 상기 제2 데이터는 상기 디바이스 특성화의 복수의 제2 인스턴스를 나타내고, 상기 인증 모듈은 상기 인증 데이터를 선택적으로 생성할 때 상기 복수의 제2 인스턴스 중 하나를 초과하는 인스턴스에 응답한다.
일 실시형태에서, 상기 제1 데이터는 상기 디바이스 특성화의 복수의 제1 인스턴스를 나타내고, 인증 모듈은 상기 인증 데이터를 선택적으로 생성할 때 상기 복수의 제1 인스턴스 중 하나를 초과하는 인스턴스에 응답한다.
일 실시형태에서, 상기 시스템 인터페이스는 상기 전자 디바이스로부터 상기 제1 데이터를 수신한다.
일 실시형태에서, 상기 시스템 인터페이스는 원격 데이터 소스로부터 상기 제1 데이터를 수신한다.
본 발명의 제7 양태에 따르면, 바이어스를 포함하는 측정 가능한 출력을 생성하는 전자 디바이스에 대한 인증 데이터를 제공하는 방법이 제공되고, 상기 방법은,
상기 바이어스로부터 적어도 부분적으로 도출된, 상기 디바이스에 대한 디바이스 특성화의 제1 인스턴스를 나타내는 제1 데이터를 데이터베이스에 저장하는 단계;
상기 디바이스 특성화의 제2 인스턴스를 나타내는 제2 데이터를 상기 디바이스로부터 시스템 인터페이스로 수신하는 단계; 및
인증 모듈로 상기 제1 및 제2 데이터에 응답하여 상기 전자 디바이스에 대한 인증 데이터를 선택적으로 생성하는 단계를 포함한다.
본 발명의 제8 양태에 따르면, 전자 디바이스의 상태에 응답하여 측정 가능한 출력을 생성하는 상기 전자 디바이스에 대한 인증 데이터를 제공하기 위한 시스템이 제공되고, 상기 측정 가능한 출력은 바이어스를 포함하고, 상기 시스템은,
상기 바이어스로부터 적어도 부분적으로 도출된, 상기 디바이스에 대한 디바이스 특성화의 제1 인스턴스를 나타내는 제1 데이터를 저장하기 위한 데이터베이스;
상기 디바이스 특성화의 제2 인스턴스를 나타내는 제2 데이터를 상기 디바이스로부터 수신하는 시스템 인터페이스; 및
상기 제1 및 제2 데이터에 응답하여 상기 전자 디바이스에 대한 상기 인증 데이터를 선택적으로 생성하는 인증 모듈을 포함한다.
본 발명의 제9 양태에 따르면, 전자 디바이스의 상태에 응답하여 측정 가능한 출력을 생성하는 상기 전자 디바이스에 대한 인증 데이터를 제공하는 방법이 제공되고, 상기 측정 가능한 출력은 바이어스를 포함하고, 상기 방법은,
상기 바이어스로부터 적어도 부분적으로 도출된, 상기 디바이스에 대한 디바이스 특성화의 제1 인스턴스를 나타내는 제1 데이터를 데이터베이스에 저장하는 단계;
상기 디바이스 특성화의 제2 인스턴스를 나타내는 제2 데이터를 상기 디바이스로부터 시스템 인터페이스로 수신하는 단계; 및
인증 모듈로 상기 제1 및 제2 데이터에 응답하여 상기 전자 디바이스에 대한 상기 인증 데이터를 선택적으로 생성하는 단계를 포함한다.
본 발명의 제10 양태에 따르면, 전자 디바이스가 제공되고, 상기 전자 디바이스는,
상기 디바이스의 미리 결정된 특성화의 제2 인스턴스를 제공하라는 인증 요청을 수신하고; 및 상기 요청에 대한 디바이스 응답을 전송하기 위한 디바이스 인터페이스;
상기 디바이스의 상태에 응답하여 측정 가능한 출력을 제공하는 기준 모듈로서, 상기 측정 가능한 출력은 바이어스를 포함하는, 상기 기준 모듈; 및
상기 요청에 응답하여, 상기 측정 가능한 출력에 대해 상기 모듈을 프롬프트하고; 상기 특성화의 제2 인스턴스를 생성하고; 및 상기 디바이스 특성화의 상기 제2 인스턴스를 나타내는 제2 데이터를 포함하는 상기 디바이스 응답을 생성하는 프로세서를 포함한다.
본 발명의 제11 양태에 따르면, 전자 디바이스를 동작시키는 방법이 제공되고, 상기 방법은,
상기 디바이스의 미리 결정된 특성화의 제2 인스턴스를 제공하라는 인증 요청을 디바이스 인터페이스로 수신하는 단계;
상기 디바이스 인터페이스로 상기 요청에 대한 디바이스 응답을 전송하는 단계;
상기 디바이스의 상태에 응답하여 기준 모듈로부터 측정 가능한 출력을 제공하는 단계로서, 상기 측정 가능한 출력은 바이어스를 포함하는, 상기 측정 가능한 출력을 제공하는 단계; 및
프로세서로 상기 요청에 응답하여, 상기 측정 가능한 출력에 대해 상기 모듈을 프롬프트하고; 상기 특성화의 제2 인스턴스를 생성하고; 및 상기 디바이스 특성화의 상기 제2 인스턴스를 나타내는 제2 데이터를 포함하는 상기 디바이스 응답을 생성하는 단계를 포함한다.
본 발명의 제12 양태에 따르면, 전자 디바이스가 제공되고, 상기 전자 디바이스는,
상기 디바이스의 미리 결정된 특성화의 인스턴스를 제공하라는 요청을 수신하고; 및 상기 요청에 대한 디바이스 응답을 전송하기 위한 디바이스 인터페이스;
바이어스를 포함하는 측정 가능한 출력을 제공하는 기준 모듈; 및
상기 요청에 응답하여, 상기 측정 가능한 출력에 대해 상기 모듈을 프롬프트하고; 상기 측정 가능한 출력에 적어도 부분적으로 기초하여 상기 특성화의 인스턴스를 생성하고; 및 상기 디바이스 특성화의 인스턴스를 나타내는 응답 데이터를 포함하는 상기 디바이스 응답을 생성하는 프로세서를 포함한다.
일 실시형태에서, 상기 프로세서는 상기 측정 가능한 출력에 응답하여 상기 바이어스를 계산한다.
일 실시형태에서, 상기 프로세서는 상기 바이어스가 상기 응답 데이터로부터 계산될 수 있도록 상기 디바이스 응답을 생성한다.
본 발명의 제13 양태에 따르면, 전자 디바이스를 동작시키는 방법이 제공되고, 상기 방법은,
상기 디바이스의 미리 결정된 특성화의 인스턴스를 제공하라는 요청을 디바이스 인터페이스로 수신하는 단계;
상기 요청에 대한 디바이스 응답을 상기 디바이스 인터페이스로 전송하는 단계;
기준 모듈로부터 측정 가능한 출력을 제공하는 단계로서, 상기 측정 가능한 출력은 바이어스를 포함하는, 상기 측정 가능한 출력을 제공하는 단계; 및
상기 요청에 응답하여, 상기 측정 가능한 출력에 대해 상기 모듈을 프롬프트하고; 상기 측정 가능한 출력에 적어도 부분적으로 기초하여 상기 특성화의 인스턴스를 생성하고; 및 상기 디바이스 특성화의 인스턴스를 나타내는 응답 데이터를 포함하는 상기 디바이스 응답을 생성하는 프로세서를 제공하는 단계를 포함한다.
본 명세서 전체에 걸쳐 "일 실시형태", "일부 실시형태" 또는 "실시형태"라는 언급은 실시형태와 관련하여 설명된 특정 특징, 구조 또는 특성이 본 발명의 적어도 하나의 실시형태에 포함되는 것을 의미한다. 따라서, 본 명세서 전체에 걸쳐 여러 곳에서 "일 실시형태에서", "일부 실시형태에서" 또는 "실시형태에서"라는 어구의 출현은 반드시 모두 동일한 실시형태를 지칭하는 것은 아니지만, 모두 동일한 실시형태일 수도 있다. 또한, 특정 특징, 구조 또는 특성은 하나 이상의 실시형태에서 본 발명의 기술 분야에 통상의 지식을 가진 자에게 명백한 임의의 적절한 방식으로 조합될 수 있다.
본 명세서에 사용된 바와 같이 그리고 달리 명시되지 않는 한, 공통 객체를 설명하기 위해 서수 형용사 "제1", "제2", "제3" 등의 사용은 단지 유사한 객체의 상이한 인스턴스를 언급하는 것만을 나타내는 것일 뿐, 전술한 객체가 시간적으로, 공간적으로, 순위적으로 또는 임의의 다른 방식으로 주어진 시퀀스에서 있어야 하는 것을 의미하는 것으로 의도된 것은 아니다.
이하의 청구 범위 및 본 명세서의 설명에서, "포함하는", "포함되는" 또는 "포함하고" 등 중에서 임의의 용어는 "적어도 후속하는 요소/특징을 포함하지만 다른 것을 배제하는 것은 아닌" 것을 의미하는 개방형 용어이다. 따라서, 청구 범위에서 사용된 "포함하는"이라는 용어는 이후에 열거된 수단 또는 요소 또는 단계로 제한하는 것으로 해석되어서는 안 된다. 예를 들어, "A와 B를 포함하는 디바이스"라는 표현의 범위는 요소 A와 요소 B로만 구성된 디바이스로 제한되는 것으로 해석되어서는 안 된다. 본 명세서에서 사용된 "구비하는" 또는 "구비하고" 또는 "구비하며" 중에서 임의의 용어도 또한 "적어도 이 용어에 후속하는 요소/특징을 포함하지만 다른 것을 배제하는 것은 아닌" 것을 의미하는 개방형 용어이다. 따라서, "구비하는"이라는 용어는 "포함하는"이라는 용어와 동의어이며 이를 의미한다.
본 명세서에서 사용된 "예시적인"이라는 용어는 품질을 나타내는 것이 아니라 예시를 제공하는 것을 의미하는 것으로 사용된다. 즉, "예시적인 실시형태"는 예시적인 품질 또는 상태의 일 실시형태를 의미하는 것이 아니라, 일 예시로서 제공된 일 실시형태이다.
본 발명의 실시형태는 이제 첨부 도면을 참조하여 단지 예로서 설명될 것이다.
도 1은 본 발명의 일 실시형태에 따른 시스템의 개요를 개략적으로 도시하는 도면;
도 2는 도 1의 시스템과 통신하기 위한 스마트폰을 개략적으로 도시하는 도면;
도 3은 도 1의 시스템에 등록하기 위해 판매자(제1 당사자)에 의해 취해진 단계의 개요를 도시하는 도면;
도 4는 도 1의 시스템을 이용하는 판매자와 사용자를 연관시키기 위해 취해진 단계의 개요를 도시하는 도면;
도 5는 도 1의 시스템으로 사용자를 인증하기 위해 취해진 단계의 개요를 도시하는 도면; 및
도 6은 도 1의 시스템으로 사용자를 등록하고 사용자 디바이스를 식별하기 위해 취해진 단계의 개요를 도시하는 도면.
전자 디바이스에 대한 인증 데이터를 제공하기 위한 시스템 및 방법이 본 명세서에 설명된다.
도 1을 참조하면, 각각의 사용자(4)(사용자(4a, 4b, ..., 및 4m)를 포함하지만 이들로 제한되지 않음)의 사용자 디바이스(3)(스마트폰(3a, 3b, ..., 및 3m)을 포함하지만 이들로 제한되지 않음)에 대한 각각의 인증 데이터(2)를 제공하기 위한 시스템(1)이 개략적으로 도시되어 있다. 시스템(1)은 각각의 디바이스(3)의 3개의 정적 배향의 시퀀스로부터 도출된, 디바이스 특성화의 제1 인스턴스를 나타내는, 디바이스(3) 각각에 대한 제1 데이터(6)를 저장하기 위한 데이터베이스(5)를 포함한다. 통신 인터페이스(6a) 형태의 시스템 인터페이스는 디바이스 특성화의 제2 인스턴스를 나타내는 제2 데이터(8)를 통신 네트워크(7)를 통해 디바이스(3)로부터 수신한다. 인터페이스(6a)는 또한 후술하는 바와 같이 네트워크(7)를 통해 인증 데이터(2)를 전송한다. 서버(9) 형태의 인증 모듈은 제1 데이터(6) 및 제2 데이터(8)에 응답하여 인증 데이터(2)를 선택적으로 생성한다.
시스템(1)은 각각의 컴퓨터(12)(컴퓨터(12a, 12b, ..., 및 12x)를 포함하지만 이들로 제한되지 않음)에 의해 제공되는 가상 POS 단말을 갖는 판매자(11)(판매자(11a, 11b, ..., 및 11x)를 포함하지만 이들로 제한되지 않음)의 형태의 복수의 당사자로부터 상품 및/또는 서비스를 사용자(4)에 의해 온라인으로 구매하는 것을 용이하게 하기 위한 더 큰 온라인 거래 및 지불 시스템의 일부이다. 넓은 의미에서, 사용자(4) 중 하나, 예로 들어, 사용자(4a)는 일반적인 방식으로 판매자(11) 중 하나, 예를 들어, 판매자(11b)와 이루어지기를 원하는 온라인 거래를 식별한다. 이것은 일반적으로 사용자(4a)가 판매자(11b)와 계정을 갖거나 계정을 형성할 준비를 할 것을 요구하며, 여기서 이러한 계정은 판매자(11b)에 대해 사용자(4a)를 식별하는 데 사용되는 사용자 이름 및 패스워드를 갖는다. 관련 거래가 선택되면, 컴퓨터(12b)는 네트워크(7)를 통해 시스템(1)의 인터페이스(6a)에 전달되는 제1 요청(13)을 생성한다. 시스템(1)에 등록된 각각의 판매자는 각각의 개별 판매자에 의해 선택된 고유한 판매자 이름을 갖는다. 이 실시형태에서 요청(13)은 시스템(1)이 사용자(4a)가 판매자(11b)에 대해 갖는 사용자 이름을 알 필요 없이 스마트폰(3a)과 사용자(4a) 사이의 연관을 만들 수 있도록 적어도 사용자 이름과 판매자 이름의 해시(hash)이다. (이것은 아래에서 더 설명된다). 서버(9)는 인터페이스(6a)에 의해 수신되는 판매자(12b)로부터의 요청(13)에 응답하여 선택적으로 데이터(2)를 생성하고 데이터(2)를 인터페이스(6a) 및 네트워크(7)를 통해 컴퓨터(12b)에 전달한다. 선택적으로 데이터(2)를 생성하는 것은 인증 단계이며, 요청(13)의 수신과 데이터(2)의 생성 사이에 시스템(1)과 스마트폰(3a) 사이에 미리 결정된 통신에 의존한다. 이 시간 기간은 인증 기간이라고 지칭된다. 이들 통신 및 다른 단계들은 아래에서 보다 상세하게 설명될 것이며, 데이터(2)가 사용자(4a)의 바람직한 또는 바람직하지 않은 인증을 나타내는지 여부에 대한 핵심 결정자로서 인증 기간 동안 스마트폰(3a)의 하나 이상의 정적 배향을 이용하는 것에 초점이 있다.
다른 실시형태에서, 시스템(1)은 다른 온라인 거래 및 지불 시스템에 대한 인증 데이터를 제공하는 데 사용된다. 즉, 시스템(1)은 금융 거래를 수반하지 않는 다른 온라인 또는 네트워크 동작에 적용될 수 있다. 예는 사용자가 채팅 사이트 또는 블로그에 로그온하라는 요청에 응답하여 인증 데이터를 생성하는 것을 포함한다. 다른 실시형태에서, 시스템(1)은 (예를 들어, 호주의 기업 규제 기관인 호주 증권 투자 위원회(Australian Securities & Investments Commission)에서 제공한 것과 같은 공공 데이터베이스에 액세스하기 위해) 공공 웹 서비스에 로그온하거나 또는 스포츠 클럽에서 운영하는 것과 같은 커뮤니티 웹 서비스에 로그온하려는 사용자에 응답하여 인증 데이터를 제공하는 데 사용된다. 다른 실시형태에서, 시스템(1)은 사용자가 스마트 도어의 개방 또는 스마트 잠금의 개방을 요청하는 것, 또는 IoT 디바이스 또는 다른 전자 디바이스가 컴퓨터 네트워크 또는 통신 네트워크에 대한 액세스를 요청하는 것과 같은 액세스 요청에 응답하여 인증 데이터를 제공한다. 다른 실시형태에서, 예를 들어, 산업 IoT(IIoT) 응용에서, 시스템(1)은 주어진 설비 내에 포함되거나 전자 디바이스의 전부 또는 선택된 것으로부터 각각의 제2 데이터(8)를 주기적으로 또는 다른 방식으로 시스템적으로 요청함으로써 주어진 네트워크에 액세스하는 전자 디바이스를 감사(audit)하는 데 사용된다. 그런 다음 시스템(1)은 각각의 디바이스에 대해 이미 보유된 제1 데이터(6)를 참조하여 디바이스의 진위(authenticity)를 확인한다. 이상이 발견되면 치료 조치(remedial action)를 취할 수 있다. 이것은 예를 들어 경보를 발생시키는 것, 디바이스의 물리적 검사를 스케줄링하는 것, 디바이스에 의해 네트워크에 추가로 액세스하는 것을 방지하는 것 등을 포함할 수 있다. 이러한 방식으로, 시스템(1)은 또한, 설비에 위치되거나 네트워크에 액세스할 수 있고 대응하는 제1 데이터(6)가 없는 전자 디바이스를 식별할 수 있다. 이러한 디바이스가 시스템(1)에 등록되지 않은 것으로 인해 식별되지 않은 경우 치료 조치가 시스템(1)에 의해 트리거될 수 있다. 소프트웨어 규칙에 따라, 이는 일부 실시형태에서 등록이 발생하거나 또는 전술한 치료 조치 중 하나 이상의 치료 조치를 따르는 것을 포함한다.
도 1로 돌아가면, 스마트폰(3)과 컴퓨터(12), 및 이 대신 또는 이에 추가하여 사용자(4)와 판매자(11)에 의해 사용되는 다른 컴퓨팅 디바이스의 기능은 사용자(4)와 판매자(11)가 시스템(1)과 통신하고 상호 작용할 수 있게 하는 것이다. 따라서, 사용자(4)는 각각의 스마트폰 또는 다른 컴퓨팅 디바이스(디바이스의 정적 배향에 관한 정보를 제공하도록 구성된 것)를 사용할 수 있는 반면, 판매자(11)는 각각의 데스크탑 또는 다른 컴퓨터를 사용하여 이 통신을 개시하고 이 통신에 영향을 줄 수 있다. 데스크탑 컴퓨터 및 스마트폰 대신 다른 컴퓨팅 디바이스를 사용할 수 있다. 예를 들어, 통신은 태블릿 컴퓨터, 랩탑 컴퓨터, 노트북 컴퓨터, PDA, 넷북 컴퓨터 또는 다른 웹 가능 또는 네트워크 가능 컴퓨팅 디바이스와 같은 컴퓨팅 디바이스를 통해 시스템(1)과 수립될 수 있다. 또한, 사용자(4) 및 판매자(11)는 상이한 세션 동안 시스템(1)에 액세스하고 시스템과 상호 작용하기 위해 항상 동일한 디바이스를 사용하는 것으로 제한되지 않는다. 시스템(1)은 또한 인증 기간 동안 필요한 인증을 제공하기 위해 다수의 스마트폰(또는 다른 적절히 가능한 디바이스)을 갖는 주어진 사용자를 수용한다.
시스템(1)은 필요한 통신 세션이 스마트폰(3) 각각과 시스템(1) 사이 및 컴퓨터(12)와 시스템(1) 사이에 상호 작용을 가능하게 하도록 수립될 수 있도록 하기 위해 인터넷 인터페이스 형태의 인터페이스(6a)를 포함하는 서버 시스템(21)을 포함한다. 단일 인터페이스만이 도시되어 있지만, 다른 실시형태에서, 하나를 초과하는 인터페이스가 시스템(1)에 의해 사용되는 것으로 이해된다. 통신 인터페이스 또는 인터페이스들은 인터넷 연결, 모뎀, 이더넷 포트, 무선 네트워크 카드, 직렬 포트 등에 의해 가능할 수 있으며, 시스템(1)의 성격 및 규모에 따라 달라질 수 있다.
일부 실시형태에서 인터페이스(6a)는 웹 사이트를 포함한다. "웹 사이트"라는 용어는 클라이언트 단말에서 실행되는 브라우저 애플리케이션을 통해 인터넷이나 다른 통신 네트워크(예를 들어, WAN, LAN 또는 WLAN)를 통해 액세스할 수 있는 실질적으로 임의의 정보 소스를 포괄하는 것으로 광범위하게 이해되어야 한다. 일부 실시형태에서, 웹 사이트는, 서버에 의해 이용 가능하고 클라이언트 단말에서 실행되는 웹 브라우저 애플리케이션에 의해 인터넷을 통해 액세스 가능한 정보 소스이다. 웹 브라우저 애플리케이션은 HTML 코드와 같은 코드를 서버로부터 다운로드한다. 이 코드는 클라이언트 단말에서 웹 브라우저를 통해 실행 가능하며, 클라이언트 단말에서 웹 사이트를 그래픽 방식으로 종종 대화식 표현으로 제공한다. 웹 브라우저 애플리케이션에 의해, 클라이언트 단말의 사용자(예를 들어, 사용자(4)와 판매자(11))는 웹 사이트에 의해 제공되는 다양한 웹 페이지 사이를 그리고 다양한 웹 페이지를 통해 내비게이션하고, 제공되는 다양한 기능에 액세스할 수 있다.
서버 시스템(21)은 물리적으로 또는 가상으로 보안 설비(22)(또는 복수의 보안 설비)에 위치되고, 복수의 상호 연결된 물리적 서버를 포함하고, 그 중 하나는 서버(9)이다. 일반적으로 복수의 서버(21)가 사용되지만 일부 실시형태에서 서버(21)의 기능을 집합적으로 제공하는 가상 서버 또는 서비스를 포함하는 것으로 이해된다. 또한 사용된 임의의 서버(및/또는 시스템(1)에 사용된 임의의 다른 물리적 또는 가상 서버)는 도시된 서버와 함께 위치될 필요는 없고 다른 물리적 또는 가상 위치에 배치될 수 있는 것으로 이해된다. 일부 실시형태에서, 예를 들어, 제3자 클라우드 기반 컴퓨팅 인프라를 사용하는 실시형태에서, 서버(21)와 서버(9)는 집합적으로 서버(21)와 서버(9)의 기능을 제공하는 가상 서비스의 모음에 의해 실현될 수 있다.
서버 시스템(21) 내 각 서버는 동작을 허용하기 위해 다양한 구성 요소를 포함한다. 예로서, 서버(9)는 메모리 모듈(24)에 결합된 프로세서(23)를 포함한다. 다른 실시형태에서, 분산된 자원 또는 서비스가 사용된다. 예를 들어, 일 실시형태에서 서버(9)는 각각의 저장, 처리 및 통신 자원을 갖는 복수의 분산 서버를 포함한다. 다른 실시형태에서, 서버(9)는 가상 서버 및/또는 클라우드 서버 및/또는 호스팅된 서버, 또는 집합적으로 서버(9)의 서비스를 제공하는 클라우드 기반 서비스의 모음이다.
메모리 모듈(24)은 프로세서(23)에서 실행 가능한 소프트웨어 명령어(25)를 포함한다.
서버(9)는 데이터베이스(5)(및 물리적으로 또는 가상으로 설비(22) 내의 임의의 다른 데이터베이스)에 결합된다. 다른 실시형태에서, 데이터베이스는 메모리 모듈(24)을 이용한다.
시스템(21)에 포함된 다른 서버는 서버(9)를 참조하여 전술한 바와 유사한 구성 요소를 갖는다.
시스템(1)은 또한 LAN(28)에 연결된 관리자 단말(27) 형태로 설비(22) 내에 클라이언트 단말을 포함한다. 단말(27)은 브라우저를 실행하고, 컴퓨터(12)에 웹 페이지를 전달하는 것과 유사한 기능을 사용하여 서버 시스템(21)으로부터 웹 페이지를 제공받는다. 단말(27)은 무엇보다도, 시스템(1)의 개요를 얻고 시스템(1)의 다양한 동작 파라미터에 관한 보고서를 생성하고, 감독 입력을 제공하기 위해 감독자(29)에 의해 사용된다. 다른 클라이언트 단말이 개발자 단말(30)의 형태로 설비(22) 내에 제공되고, 이 단말은 무엇보다도 시스템(1)의 지속적인 유지 보수 및 개발을 지원하기 위해 개발자(31)에 의해 사용된다. 다른 또는 추가 단말이 설비(22) 내에 더 포함될 수 있는 것으로 이해된다. 또한 이러한 단말은 설비(22)로부터 원격으로 시스템(1)에 액세스하는 관련 감독자(29), 개발자(31)에 의해 복제될 수 있는 것으로 이해된다.
사용자(4)와 판매자(11)는 모두 본 특허 명세서에 설명된 기능에 액세스할 수 있는 능력을 구현할 수 있도록 하기 위해 시스템(1)에 등록된다. 이 등록 및 액세스는 각각의 컴퓨팅 디바이스 또는 유사한 디바이스를 사용하는 개별 사용자(4)와 판매자(11)를 포함한다.
단 3명의 사용자(4)와 3명의 판매자(11)만이 도 1에 명시적으로 도시되어 있지만, 사용 시 시스템(1)은 각각 평일에 수천 또는 수백만의 이러한 사용자 및 판매자를 수용하는 것으로 이해된다.
사용자(4)는 먼저 각각의 스마트폰(3)을 사용하여 시스템(1)과 통신 세션을 수립하고 등록 서버(35)와 상호 작용함으로써 시스템(1)에 개별적으로 등록한다. 서버(35)는 스마트폰(3a)에서 로컬로 실행되는 사유 소프트웨어(소프트웨어 클라이언트)의 스마트폰(3a)으로 다운로드하는 것을 용이하게 한다. 일부 실시형태에서, 사유 소프트웨어는 제3자 애플리케이션 스토어(예를 들어, 애플(Apple)의 앱 스토어(App Store) 또는 구글 플레이(Google's Play)로부터 공급된다. 다른 실시형태에서, 제3자 소프트웨어는 판매자의 서버 또는 일부 다른 장소에 저장된다.
소프트웨어의 로컬 실행은 스마트폰(3a)과 연관된 고유한 사용자 식별자(UUID)를 생성한다. 그런 다음 사용자(4a)는 이 개인에 의미 있는 단어나 어구(잠금 이름(Lockname)이라고 함)를 소프트웨어 클라이언트에 입력하라고 프롬프트받는다. 그런 다음 소프트웨어 클라이언트는 UUID와 잠금 이름을 시스템(1)에 전달한다. 서버(35)는 일단 잠금 이름의 고유성을 확인하면, 이 잠금 이름을 폰 UUID와 연관시키고 이 잠금 이름을 스마트폰(3a)에 대한 제1 데이터(6)의 일부로서 데이터베이스(5)에 저장한다. 사용자(4a)는 소프트웨어 클라이언트를 실행하는 것에 의해 스마트폰(3a)을 미리 결정된 정적 배향의 시퀀스로 배향하라고 프롬프트받는다. 이 동작 동안 소프트웨어 클라이언트에 의해 수집된 데이터는 패키지되어 서버(35)에 전달되고, 또한 데이터(6)의 일부로서 저장된다. 일부 실시형태에서, 사용자(4a)는 정적 배향의 시퀀스로 스마트폰(3a)을 배향하라고 다수 회 프롬프트받고, 결과는 서버(35)에 별도로 전달되고, 서버는 그런 다음 수신된 데이터에 응답하여 데이터(6)를 업데이트하는 방식을 결정한다. 이 실시형태에서, 데이터(6)는 스마트폰이 임의의 다른 연관 데이터와 함께 정적 배향에 있을 때 스마트폰(3a)의 가속도계로부터의 측정된 출력을 나타내는 것으로 이해된다. 이러한 연관 데이터의 예는 타임스탬프 데이터; 스마트폰(3a)의 위치 또는 다른 데이터; 판매자(11)의 관련 당사자의 위치 또는 다른 데이터; 사용자(4a)에 관한 또는 사용자를 위한 데이터; 측정된 출력으로부터 도출된, 수학적으로 조작된 데이터; 및 가속도계에 고유한 바이어스를 계산하는 것을 용이하게 하는 다른 데이터 중 하나 이상을 포함한다. 다른 실시형태에서, 바이어스는 스마트폰(3a)에 상주하는 소프트웨어에 의해 계산되고, 서버(35)에 전달되고, 데이터(6)의 일부로서 저장된다.
판매자(11)는 먼저 각각의 컴퓨터(12)를 사용하여 시스템(1)과 통신 세션을 수립하고 서버(35)와 상호 작용함으로써 시스템(1)에 개별적으로 등록한다. 서버(35)는 웹 페이지가 필요에 따라 시스템(1)의 기능을 호출할 수 있도록 하는 애플리케이션 프로그래밍 인터페이스(Application Programming Interface: API)를 포함하도록 컴퓨터(12)에 의해 실행되는 온라인 POS 소프트웨어에 의해 실행되는 온라인 코드(스마트폰(3)에 전달되는 웹 페이지)를 수정할 수 있다. 추가적으로, 각 판매자는 선호 도메인 이름을 사용하여 API 키를 얻기 위해 시스템(1), 특히 서버(35)와 통신 세션을 수립한다. 그런 다음 서버(35)는 시스템(1)과 컴퓨터(12) 사이의 보안 연결을 사용하여 API 키를 발행한다. API 키는 또한 판매자의 웹 페이지로부터 API 호출을 인증하여 먼저 보안 및 개인 정보를 보호하고 이어서 차후 빌링(billing) 목적을 위해 거래를 레코드한다.
등록의 다음 단계는 판매자(11b)에 의해 이용 가능한 온라인 설비와 스마트폰(3a) 사이에 링크를 생성하는 것이다. 이것은 사용자(3a)가 판매자(11b)와 수립된 사용자 이름 및 패스워드 세부 사항을 입력함으로써 사용자(3a)가 판매자(11b)의 온라인 설비에 로그인함으로써 발생한다. 이것은 온라인 설비의 운영에서 판매자(11b)에 의해 일반적으로 관찰되는 보안 및 신원 정책에 따라 발생한다. 그런 다음 판매자(11b)는 판매자 이름 및 사용자 이름의 해시를 서버(35)에 전달한다. 이것은 사용자(4a)에게 잠금 이름을 입력하라고 프롬프트하고, 이 잠금 이름은 스마트폰이 컴퓨터(12b)에 액세스 가능하지 않은 상태에서 스마트폰(3a)으로부터 서버(35)로 안전하게 전달되어, 서버(35)가 스마트폰(3a)의 UUID를 판매자(4a)와 연관시킬 수 있도록 한다. 이것은 판매자(11b)에 의해 제공된 설비에서 사용하기 위해 사용자(3a)의 신원 또는 사용자(3a)에 의해 선택된 사용자 이름을 시스템(1)에 드러내는 일이 없이 이루어진다. 이것은 웹 재지정(web redirect)에 의해 달성되고, 이에 의해 판매자(4a)와의 세션은, 교차 출처 자원 공유(Cross-Origin Resource Sharing: CORS)를 사용하여, 사용자에게 투명하지만, 서버(35) 상의 소프트웨어로 전송된다. 따라서, 사용자는 판매자 이름과 사용자 이름의 해시와 연관시키기 위해 서버(35)에 자신의 잠금 이름을 입력한다.
스마트폰(3)은 실시형태의 기능이 실현될 수 있도록 구성 요소의 조합을 포함한다. 스마트폰(3a)을 예로 들면, 도 2에 개략적으로 도시된 바와 같이, 이것은 디바이스 특성화의 제2 인스턴스를 제공하라는 시스템(1)으로부터의 시스템 요청(42)을 수신하고 및 디바이스 응답(43)을 전송하기 위한 통신 인터페이스(41) 형태의 디바이스 인터페이스를 포함한다. 기존 온보드 가속도계 형태의 기준 모듈(44)은 요청(42) 및 스마트폰(3a)의 적어도 하나의 미리 결정된 정적 배향에 응답하여 특성화의 제2 인스턴스를 생성한다. 프로세서(45) 형태의 연산 모듈은 제2 인스턴스에 응답하여 응답(43)을 생성한다. 스마트폰(3a)은 또한 터치 스크린 형태의 GUI를 갖는 인간 기계 인터페이스(HMI)(46)를 포함한다. 다른 실시형태에서, HMI는 사용자(4a)가 스마트폰에 입력을 제공할 수 있게 하는 하나 이상의 물리적 버튼, 가이드, 스크롤 휠 등과 같은 다른 또는 추가 입력/GUI 디바이스를 포함한다. 스마트폰(3a)은 또한 프로세서(45)에서 실행 가능한 소프트웨어 명령어(48)를 포함하는 메모리 모듈(47)을 포함한다. 이 소프트웨어 명령어는 스마트폰(3a)이 사유 애플리케이션 또는 웹 브라우저 애플리케이션과 같은 소프트웨어 애플리케이션을 실행할 수 있게 하여 사용자 인터페이스를 가능하게 하고 시스템(1)과 통신을 가능하게 한다.
사용 시, 이 실시형태에 의해 제공되는 2차 인자 인증은 컴퓨터(12b)를 통해 판매자(11b)에 의해 제공되는 상품 및/또는 서비스에 대한 온라인 거래에 참여하기를 원하는 사용자(4a)의 예를 사용하여 다음과 같이 수행된다. 스마트폰(3a) 또는 다른 컴퓨팅 디바이스를 사용하는 사용자(4a)는 필요한 사용자 이름 및 패스워드를 입력함으로써 판매자(11b)와 수립된 계정에 로그인한다. 관련 거래가 식별되고 진행 중인 것으로 확인되면, 컴퓨터(11b)는 시스템(1)에 요청(13)을 전송하며, 여기서 이 요청은 판매자 이름과 사용자 이름의 해시 형태를 취한다. 이 요청은 API 키를 사용하여 보안 API 호출을 통해 전송된다. 거래의 양 또는 성격의 세부 사항 중 그 어느 것도 시스템(1)에 전송될 필요가 없는 것으로 이해된다. 요청(13)을 수신하면, 시스템(1)은 판매자 이름과 사용자 이름의 해시를 데이터베이스(5)에 이미 보유된 잠금 이름 및 UUID와 연관시킨다. 그런 다음 시스템(1)은 요청(42)을 생성하고, 이 요청은 스마트폰(3a) 및 사용자(4a)의 임의의 다른 등록된 스마트폰으로 전송된다. 요청(42)은 판매자(11b)를 나타내는 데이터를 포함한다. 프로세서(45)는 요청(42)에 응답하여 스마트폰(3a)의 HMI(46)를 제어하여 판매자(11b)의 이름을 사용자(4a)에게 표시하고 스마트폰(3a)을 사용하여 원하는 제2 레벨 인증을 사용자(4a)로부터 획득하려는 요구 사항을 표시한다. 사용자(4a)가 동의를 나타내는 입력을 HMI(46)에 제공하면, 프로세서(45)는 특성화의 제2 인스턴스가 생성될 수 있도록 HMI(46)를 제어하여 스마트폰(3a)의 배향으로 사용자(4a)를 안내한다. 요구되는 배향이 달성되면, 프로세서(45)는, 제2 데이터(8)를 포함하고 시스템(1)에 전달되는 응답(43)을 생성한다. 응답(43)이 시스템(1)에 의해 수신되면, 데이터(8)는 서버(9)에 의해 추출되고, 데이터(2)를 "수락" 또는 "거부"한 것으로 결정하기 위해 데이터(6)와 비교된다. 그런 다음 데이터(2)는 컴퓨터(11b)에 전달되고, 이 컴퓨터는 이 데이터에 응답하여 컴퓨터(11b)에 있는 소프트웨어 규칙에 따라 판매자(11b)가 거래를 계속할지 여부를 가능하게 한다.
또한, 상기 인증은 사용자(4a)가 판매자(11a)에 의해 제공되는 온라인 설비에 로그온하게 하는데 적용 가능한 것으로 이해된다.
제1 데이터(6) 및 제2 데이터(8)는 관련 스마트폰의 내장된 가속도계의 바이어스로부터 도출될 수 있다. 바람직하게는 6개의 축(x, -x, y, -y, z, -z)에서 중력을 측정하기 위해 6개의 가속도계가 사용된다. 이러한 스마트폰 가속도계는 일반적으로 아날로그 디바이스이고 모두 미묘하게 다른 것으로 이해된다. 스마트폰의 배향을 적절하게 조작함으로써 사용자는 6개의 개별 판독값 세트를 생성할 수 있다. 판독값은 중력만을 측정하면서 가속도계의 바이어스를 식별하는 스마트폰의 특성화를 생성하기 위해 2차 구배 하강 알고리즘(second order gradient descent algorithm)의 변형을 사용하여 6차원 공간에서 처리된다. 이 바이어스는 스마트폰 제조업체에서 이루어지는 가속도계를 교정한 후의 잔류 바이어스이다. 시스템(1)에 스마트폰을 등록할 때 이루어지는 이 특성화의 제1 인스턴스는 제1 데이터(6)를 형성하고 디바이스 시그너처를 제공하는 데 사용될 수 있다. 통계 분석 프로세스를 통해 이 디바이스 시그너처에 의해 개별 스마트폰을 고유하게 식별할 수 있고, 이에 의해, 각각의 인증 이벤트에서 캡처된, 제2 데이터(8)를 형성하는, 특성화의 추후 샘플링된 인스턴스가 제1 데이터와 비교되어 높은 신뢰도로 인증 데이터(2)를 생성하게 할 수 있다.
특성화의 상이한 인스턴스가 컴파일될 때, 사용자는 스마트폰을 중력의 방향과 가능한 한 평행하게 그리고 안정적으로 유지할 것을 요구받는다. 즉, 가속도계 판독값은 정적 또는 적어도 실질적으로 정적인 배향에서 취해지고, 스마트폰이 움직이는 동안에는 취해지지 않는다. 이것은 가속도계에 의해 중력만을 측정하는 것을 더 잘 보장하기 위해 이루어진다. 일부 실시형태에서, 특성화의 제1 인스턴스를 결정할 때, 시스템(1)은 6개의 방향 각각에서 수십 개의 개별 판독값을 취한다. 이러한 프로세스에서 사용자를 지원하기 위해, 스마트폰에 상주하는 소프트웨어 클라이언트는 스마트폰을 돌리거나 조작하는 방향에 대한 지시를 제공함으로써 사용자를 안내한다. 일부 실시형태에서, 보다 정확히 폰을 정렬하는 것을 촉진하기 위해 '게임화된' 경험이 사용자에게 제공된다. 정적 배향의 특정 시퀀스를 사용하여 데이터(6)를 도출할 수도 있다.
특성화의 제2 인스턴스의 경우, 스마트폰(3)의 3개의 정적 배향만을 사용하는 것이 더 일반적이다. 그러나 다른 실시형태에서, 디바이스(3)의 3개 미만 또는 3개 초과의 정적 배향을 사용하여 데이터(8)를 도출할 수 있다. 예를 들어, 하나의 이러한 특정 실시형태에서 2개의 정적 배향의 시퀀스가 사용된다. 다른 특정 예에서, 6개의 정적 배향의 시퀀스가 사용된다. 특성화의 제1 및 제2 인스턴스를 생성할 때 스마트폰(3)에 의해 달성되어야 하는 정적 배향의 시퀀싱은 동일하다. 그러나, 다른 실시형태에서, 이 수는 다른 인스턴스에 대해서는 다르다. 다른 실시형태에서, 관련 인스턴스에 대한 시퀀스는 스마트폰(3)에 상주하는 소프트웨어에 의해 결정된다. 다른 실시형태에서, 이 소프트웨어는 스마트폰(3)에 의해 수신된 데이터에 의해 알려지고, 스마트폰은 시퀀스를 랜덤화하거나 또는 다른 방식으로 결정하거나, 또는 주어진 시퀀스에 포함된 정적 배향의 수를 변경하여, 수행되는 인증에 대한 추가 신뢰를 제공할 수 있다. 다른 실시형태에서, 복수의 정적 배향이 사용되고, 시퀀싱은 인증의 일부로 사용되지 않는다. 이에 의해 예를 들어, 디바이스 특성화를 개발할 때 스마트폰(3)의 사용자(4)가 시퀀스를 결정할 수 있다. 일부 실시형태에서, 디바이스의 단일의 각각의 정적 배향만이 제2 특성화를 결정하는 데 요구된다. 또 다른 실시형태에서, 디바이스의 단일의 각각의 정적 배향만이 제1 특성화를 결정하는 데 요구된다. 다른 실시형태에서, 예를 들어, 미리 결정된 임계값을 초과하는 값을 갖는 거래와 관련하여, 단일 사용자와 연관된 복수의 컴퓨팅 디바이스의 복수의 정적 배향이 사용된다.
데이터(8)의 수집 동안, 프로세서(45)는 HMI(46)를 제어하여, 달성될 목표 배향에 대한 시각적 및/또는 청각적 및/또는 촉각적 가이드를 제공하고, 이 목표 배향에 대한 스마트폰(3)의 배향을 제공한다. 이는 목표 배향을 달성하기 위해 스마트폰을 이동시켜야 하는 방식에 대한 피드백을 사용자에게 제공한다. 배향이 달성되고 나서 미리 결정된 지속 시간 동안 미리 결정된 공차 내에 유지되면, 시각적 및/또는 청각적 피드백이 HMI(46)를 통해 사용자에게 제공된다. 그런 다음 프로세서(45)는 HMI(46)를 제어하여 배향의 시퀀스에서 다음 목표 배향을 사용자에게 제시한다. 이것은 시퀀스가 완료될 때까지 반복된다.
일 실시형태에서 HMI(46)에 의해 제공되는 사용자 경험은 항공기 조종석 디스플레이에서 발견되는 것과 같은 "인공 수평선"을 포함한다. 이것은 두 방향으로 '직선과 레벨'을 시각적으로 나타내는 것에 의해, 스마트폰이 수직선으로부터 떨어진 기울기를 나타낸다. 인공 수평선과 유사한 적색 선은 스마트폰이 제3 방향에서 수직선으로부터 떨어진 기울기를 나타낸다. 청록색 정렬 선은 목표 배향을 제공한다. 사용자는 인공 수평선, 적색 선 및 청록색 선을 정렬할 것을 요구받는다. 이것이 일어나면 스마트폰은 측정되는 방향에서 중력과 거의 평행하다.
HMI(46)에 의해 제공되는 다른 사용자 경험에서, 가상의 "정신 레벨"의 것과 유사하게 작동하는 2개의 "버블(bubble)"의 형태를 취한다. 스마트폰이 올바른 배향에 가까워지면 2개의 버블이 처음에 시각적으로 중첩된 다음 서로 직접 중복된다.
본 명세서의 내용에서 이익을 갖는 이 기술 분야에 통상의 지식을 가진 자라면, 데이터(8)를 캡처할 때 구동 인자는 스마트폰(3)(또는 임의의 다른 전자 디바이스)의 인증의 신뢰도를 증가시키기 위해 샘플링 잡음의 영향을 감소시키는 것임을 이해할 수 있을 것이다. 상기 예에서, 데이터(8)에서 과도한 잡음은 가속도계의 바이어스를 계산하는 것을 손상시켜 정확한 인증의 신뢰도를 감소시킨다. 스마트폰(3)의 미리 결정된 배향 및 다수의 측정값을 사용하면 이러한 잡음의 영향을 감소시킬 수 있다. 다른 실시형태에서, 잡음을 감소시키기 위해 상이한 배열이 사용된다. 예를 들어, 일부 실시형태에서, 소프트웨어 알고리즘은 계산을 개선하기 위해 측정값을 보다 면밀히 분석하는 데 사용된다. 다른 실시형태에서, 가속도계 모듈에서 하나 이상의 가속도계의 바이어스는 디바이스(3)에 대한 결정을 돕기 위해 제조 동안 특정 크기인 것으로 구성되거나 정확히 알려진다.
주목해야 할 또 다른 인자는 스마트폰 내에 사용되는 유형의 가속도계가 임의의 주어진 시간에 단 하나의 축에만 관심이 있다 하더라도 일반적으로 3개의 축에서 취해지는 가속도 측정값을 갖는다는 것이다. 즉, 각 측정값에서 관심 축과 2개의 다른 축에 대한 측정값이 존재한다. 그 결과 x 축 가속도계는 y 축 및 z 축에서도 가속도 측정값의 일부 성분을 갖게 된다. 이들 바이어스를 개별적으로 계산하는 것이 가능하지만, 전술한 실시형태에서, 원하는 축이 실질적으로 격리된 지점에서 측정값이 취해진다. 따라서, 스마트폰 또는 다른 디바이스가 정적 위치에 유지되고 관심 축을 수평선 또는 수직선과 정렬하도록 배향된 지점에서 측정값이 취해진다. 관심 축을 수평선 또는 수직선과 실제로 정렬하더라도, 인간적 및 다른 실제적 부정확성으로 인해 다른 축에서는 약간 경사진 상태로 남게 된다.
요약하면, 3 축 가속도계로부터 더 높은 품질의 데이터를 캡처하는 것을 보장하기 위해 바람직한 실시형태에서 다음 조치들이 사용된다:
Figure pct00004
가속도계의 하나의 축에서의 가속도가 g(중력 가속도)에 가능한 한 가깝도록 스마트폰 또는 다른 디바이스의 배향이 정해진다. 또한 다른 지구 위치에서는 g 값이 다르다는 것을 고려하기 위해 스마트폰의 위치에 응답할 수도 있다. 그러나, 다른 실시형태에서, 다른 위치에서 g의 차이가 적어도 많은 디바이스의 경우 측정되는 바이어스보다 훨씬 더 작을 수 있기 때문에 이러한 추가 개선은 사용되지 않는다. 임의의 경우에, 가속도계로부터 측정된 값은 관심 축을 따라 측정된 값이 사용되는 g 값의 미리 결정된 공차 내에 있는 경우에 사용된다.
Figure pct00005
측정되는 축 이외의 축에 대한 가속도 측정값은 가능한 한 0에 가까운 가속도를 갖는다. 이 조건이 충족되지 않으면 측정된 출력이 다른 처리에 사용될 만큼 충분히 정밀하다고 볼 수 없는 것으로 고려된다.
Figure pct00006
곡선 맞춤을 근사시키기 위해 충분한 데이터 포인트를 제공하기 위해 각 배향에서 충분한 수의 정밀한 측정값이 존재한다.
상기 실시형태는 스마트폰의 운영 체제(OS)에 의해 제공된 가속도계 측정값을 취한다. 이것은 일반적으로 이 OS에 의해, 특히 OS 내 가속도계의 디바이스 드라이버에 의해 바이어스 보정이 이미 이루어졌음을 의미한다. 그래서, 보정된 측정값으로부터 계산된 바이어스는 측정된 출력이 디바이스 드라이버에 의해 처음 사용된 원시 데이터로부터 취해진 경우 관찰될 수 있는 것보다 훨씬 더 작다. 일부 실시형태에서, 디바이스 드라이버 내에서 연결되거나 그렇지 않은 경우 보정된 측정값보다는 디바이스 드라이버에 의해 측정된 원시 데이터를 공급하는 측정 모듈이 사용된다. 이들 실시형태에서, 일반적으로 바이어스를 훨씬 더 정확하게 계산하는 것이 가능하고, 그리하여 측정 가능한 출력을 구성하는 더 큰 확실성 또는 더 적은 수의 샘플링된 판독값으로 가속도계 및 전자 디바이스를 식별하는 것이 가능하다.
일 실시형태에서, 고정된 수의 데이터 포인트 또는 측정된 출력은 6개의 방향, 즉, X+, X-, Y+, Y-, Z+ 및 Z- 각각에서 스마트폰의 가속도계로부터 획득된다. 다른 실시형태는 실제적인 관점에서 상이한 수의 측정값을 사용할 수 있지만, 사용자 디바이스를 이용하여 그 수는 사용자 경험 및 결과적인 바이어스 계산의 정확도 면에서 최적인 것으로 고정된다. IoT 디바이스와 같은 비-사용자 디바이스에서는 사용자 경험에 더 적은 가중치가 주어지거나 주어지는 가중치가 없다.
스마트폰(3)에 대해 전술한 실시형태에서, 측정된 출력은 캡처되거나 샘플링된 데이터를 발생시키는 디지털 신호의 형태이다. 데이터는 복수의 시간적으로 이격된 아날로그 가속도계 측정값으로부터 도출된다. 이 캡처된 데이터는 다음 에러를 줄이기 위해 처리된다:
Figure pct00007
수치적 적분과 미분으로 인한 에러는 기호적 적분과 미분을 사용하여 최소화된다.
Figure pct00008
2차 근사값을 사용하는 것에 의해 1차 근사값을 맞추는 것으로 인해 발생하는 에러.
상기 조치는 모델링으로 인해 도입된 에러가 최소화되거나 적어도 감소되어 보다 정확한 바이어스 측정값을 제공하는 것을 보장한다.
최소화될 필요가 있는 실제 비용/최적화 함수는 다음과 같다:
(Xm - X0)2/Xs 2 + (Ym - Y0)2/Ys 2 + (Zm - Z0)2/Zs 2 - g2
이 함수는 가능한 한 0에 가까워야 한다.
상기 함수에서,
Xm은 x 축을 따라 측정된 가속도이다
Ym은 y 축을 따라 측정된 가속도이다
Zm은 z 축을 따라 측정된 가속도이다
X0는 x 축을 따른 오프셋/가산 바이어스(offset/additive bias)이다
Y0는 y 축을 따른 오프셋/가산 바이어스이다
Z0는 z 축을 따른 오프셋/가산 바이어스이다.
Xs는 x 축을 따른 감도/곱셈 바이어스(sensitivity/multiplicative bias)이다
Ys는 y 축을 따른 감도/곱셈 바이어스이다
Zs는 z 축을 따른 감도/곱셈 바이어스이다
g는 중력으로 인한 가속도이다.
대부분의 일반적인 바이어스 모델에서, 바이어스는 가산/오프셋 바이어스와 곱셈/감도 바이어스의 조합이다. 이상적인 시나리오에서 가산 바이어스는 0이고 곱셈 바이어스는 1이다. 즉, 가산 또는 곱셈 바이어스가 존재하지 않으면 함수는 영향을 받지 않는다.
상기 함수는 2차 다변량 방정식, 보다 정확하게는 3차원 함수이다. 이 함수 및 다양한 다른 함수를 실험한 후, 본 발명자들은 헤시안(hessian)으로 배취(batch) 2차 구배 하강이 스마트폰으로 동작을 최적화하는 데 최상의 모델이라는 것을 발견했다. 기하학적 용어로, 이는 측정된 출력으로부터 이에 공급되는 데이터 포인트가 2차 방정식을 맞추게 된다. 다시 말해, 이러한 방법은 함수의 곡률을 무시하지 않아서 1차 방법보다 더 정확하다. 또한 이러한 방법은 2차 도함수를 연산할 수 있는 경우 더 빨리 수렴된다. 이 기술 분야에 통상의 지식을 가진 자라면 이해할 수 있는 바와 같이, 전술한 목적 함수의 2차 도함수를 연산하는 것은 지나치게 어렵지 않다. 2차 방법의 또 다른 장점은 이 방법이 안장점(saddle point)을 피할 수 있어서 독립형 디바이스에 대해 강력한 방법을 제공할 수 있다는 것이다.
구배 하강은 곡선 맞춤을 위한 기계 학습 기술이고, 여기서 상기 실시형태에서 사용하기에 적합한 이 기술의 많은 변형이 이용 가능하다. 상기 실시형태에서 사용된 방법의 각 단계에서, 바이어스 값이 근사화되고, 최소값이 발견될 때, 바이어스 값이 최상의 값으로 취해진다.
상기 예시된 바와 같이, 이 방법의 정확도는 필요할 경우 중력이 하나의 축에서 측정될 때 다른 축에 대한 바이어스도 연산함으로써 더 개선될 수 있다. 일부 실시형태에서는 추가적인 정확도가 요구되지 않지만, 다른 실시형태에서는 이러한 정확도를 얻기 위해 필요한 추가 처리 강도가 이용 가능하지 않다.
다른 실시형태에서, 요구되는 측정 가능한 출력을 얻기 위해 상이하거나 추가적인 기준 모듈이 사용된다. 하나의 이러한 다른 실시형태에서, 기준 모듈은 3개의 법선 축 상에 배열된 복수의 자이로스코프 센서를 갖는 자이로스코프 모듈을 포함한다. 위에서 언급된 가속도계 모듈과 유사하게, 자이로스코프 모듈은 일반적으로 단일 측정으로 모두 3개의 축의 데이터를 제공한다. 따라서, 자이로스코프 모듈의 경우 측정된 출력은 바람직하게는 모듈이 3개의 축 각각에서 정지 상태에 있는 동안 획득된 측정값의 조합된 수이다.
바이어스가 없는 자이로스코프는 제로(0) 각가속도를 측정하여서, 기준 모듈의 바이어스가 연산될 수 있다. 연산은 위에서 제공된 가속도계 연산과 매우 유사하며, 여기서 다음을 최소화(이상적으로는 0)해야 한다:
(Wx - Xoff)2/SK 2 + (Wy - Yoff)2/Sy 2 + (Wz - Zoff)2/Sz 2
여기서,
Wx는 기준 모듈에 의해 측정된 x 축에 대한 각가속도이다.
Xoff는 x 축에 대한 가산 바이어스이다.
Sx는 x 축에 대한 곱셈 바이어스이다.
Wy는 기준 모듈에 의해 측정된 y 축에 대한 각가속도이다.
Yoff는 y 축에 대한 가산 바이어스이다.
Sy는 y 축에 대한 곱셈 바이어스이다.
Wz는 기준 모듈에 의해 측정된 z 축에 대한 각가속도이다.
Zoff는 z 축에 대한 가산 바이어스이다.
Sz는 z 축에 대한 곱셈 바이어스이다.
헤시안을 이용한 2차의 배취 구배 하강은, 바이어스를 연산하고 기준 모듈의 정확한 식별 및 인증에 기여하기에 적합한 실제적인 방법을 제공하는 것으로 밝혀졌다.
다른 실시형태에서, 요구되는 측정 가능한 출력을 얻기 위해 상이하거나 다른 기준 모듈이 사용된다. 하나의 이러한 다른 실시형태에서, 기준 모듈은 자력계 모듈을 포함한다. 사용 시, 사용자는 전자 디바이스를 미리 결정된 방식으로 공간에서 이동시키도록 안내받을 수 있다. 예를 들어, 하나의 이러한 미리 결정된 방식은 연속적인 방식으로 일반적으로 8자형 경로를 따라 5회 전자 디바이스를 공간적으로 진행하는 것을 포함한다. 경로에 대한 각 반복은 각 통과 동안 경로를 따라 충분한 데이터를 캡처하는 데 약 3초가 걸린다. 형상 또는 경로의 변화, 반복 횟수, 및 경로를 따라 통과하는 데 지속 시간은 기준 모듈에서 센서의 상태 및/또는 감도, 식별 및/또는 인증의 요구되는 정확도, 및 다른 이러한 요인에 가장 잘 일치하도록 선택하는 데 이용 가능한 것으로 이해된다. 일부 실시형태에서, 경로에 관해 전자 디바이스에 제공되는 안내는 원격으로 결정되고, 사용자는 식별 또는 인증이 수행되기 바로 전까지 경로(다수의 가능한 경로로부터 선택된 경로) 및 각 통과 타이밍만을 통지받는다.
전자 디바이스는 일반적으로 8자형 경로에 대해 비교적 느리게 진행되기 때문에, 자력계 모듈은 모듈 내 센서의 다수의 측정값을 샘플링한다. 이들 측정값은 +/- Mx, +/- My 및 +/- Mz인, 6개의 주 방향 각각에서의 최소 및 최대 자력 측정값을 포함한다. 3개의 직교축을 따라 이러한 최소 및 최대 자력 측정값을 얻은 후, 개별 측정값으로부터 평균을 감산할 수 있다. 이를 통해 지구 자기장의 영향과 전자 디바이스에 포함된 임의의 경철심(hard iron)(예를 들어, 전자 디바이스에 포함된 스피커에 포함된 철심)으로 인한 효과를 상쇄시킬 수 있다. 따라서, 다음을 사용하여 자력계 모듈에 대한 가산 바이어스를 연산하는 것이 가능하다:
Xoff = (Mxmax + Mxmin)/2
Yoff = (Mymax + Mymin)/2
Zoff = (Mzmax + Mzmin)/2
여기서,
Xoff는 x 축을 따른 가산 바이어스이다.
Mxmax는 x 축을 따라 측정된 최대 자기장이다.
Mxmin은 x 축을 따라 측정된 최소 자기장이다.
Yoff는 y 축을 따른 가산 바이어스이다.
Mymax는 y 축을 따라 측정된 최대 자기장이다.
Mymin은 y 축을 따라 측정된 최소 자기장이다.
Zoff는 z 축을 따른 가산 바이어스이다.
Mzmax는 z 축을 따라 측정된 최대 자기장이다.
Mzmin은 z 축을 따라 측정된 최소 자기장이다.
또한, 자력계 모듈은 자력계 측정을 방해하는 임의의 연철심(soft iron)으로 인해 바이어스를 가질 수 있다. 바이어스의 이러한 성분은 곱셈 바이어스이고, 이는 위에서 언급한 가산 바이어스에 추가하여 발생한다. 곱셈 바이어스는 다음을 사용하여 연산될 수 있다:
Sdelx = (Mxmax - Mxmin)/2
Sdely = (Mymax - Mymin)/2
Sdelz = (Mzmax - Mzmin)/2
Savgdel = (Sdelx + Sdely + Sdelz)/3
Sx = Sdelx/Savgdel
Sy = Sdely/Savgdel
Sz = Sdelz/Savgdel
여기서,
Sdelx는 x 축을 따른 곱셈 바이어스를 계산하기 위한 중간 델타 값이다.
Sx는 x 축을 따른 곱셈 바이어스이다.
Sdely는 y 축을 따른 곱셈 바이어스를 계산하기 위한 중간 델타 값이다.
Sy는 y 축을 따른 곱셈 바이어스이다.
Sdelz는 z 축을 따른 곱셈 바이어스를 계산하기 위한 중간 델타 값이다.
Sz는 z 축을 따른 곱셈 바이어스이다.
Savgdel는 평균 델타이다.
Sx, Sy 및 Sz가 계산되면, 측정 시 자기장은 전자 디바이스의 높은 신뢰도 식별 및/또는 인증에 기여할 만큼 충분히 정확히 근사될 필요가 있다. 지구 자기장, 전자 디바이스의 일부인 요소, 및 자기장을 생성하거나 철 금속을 포함하는 부수적인 외부 요소는 자력계 모듈을 측정하는 데 영향을 줄 수 있다. 예를 들어, 지구 자기장은 끊임없이 변하며 일반적으로 약 25 내지 65 μT (0.25 내지 0.65 Gauss)에서 변한다. 따라서, 자력계 모듈에 의해 제시된 바이어스를 보다 정확히 결정하기 위해, 이러한 다른 상황적 및 시간적 요인에 대해 보정이 결정된다. 특히, 자기장의 측정은 다음과 같이 연산될 수 있다:
MFx = (Mx - Xoff)/Sx
MFy = (My - Yoff)/Sy
MFz = (Mz - Zoff)/Sz
여기서,
MFX는 x 축에 대해 보정된 자기장 값이다.
Mx는 x 축을 따라 기준 모듈에 의해 얻어진 원시 자기장 값이다.
MFy는 y 축에 대해 보정된 자기장 값이다.
My는 y 축을 따라 기준 모듈에 의해 얻어진 원시 자기장 값이다.
MFZ는 z 축에 대해 보정된 자기장 값이다.
Mz는 z 축을 따라 기준 모듈에 의해 얻어진 원시 자기장 값이다.
MFX, MFy 및 MFZ에 대한 상기 연산은 경로를 따라 전자 디바이스를 횡단하는 동안 획득된 자력계 측정값 중 임의의 하나 이상을 사용하여 수행될 수 있다.
일단 보정이 결정되면, 바이어스 연산은 헤시안으로 배취 2차 구배 하강을 사용하여 강화될 수 있다. (측정된 출력을 집합적으로 형성하기 위해) 취해진 모든 데이터 측정값이 이 실시형태에서 사용된다.
바이어스를 계산하기 위해 0에 이상적으로 일치하는 목적 함수는 다음과 같다:
(Mx - Xoff)2/Sx 2 + (My - Yoff)2/Sy 2 + (Mz - Zoff)2/Sz 2 - (MFx 2 + MFy 2 + MFZ 2)
계산된 바이어스는 기준 모듈 및/또는 전자 디바이스의 식별 및/또는 인증을 보조하는 데 사용될 수 있다.
다른 실시형태에서, 요구되는 측정 가능한 출력을 얻기 위해 상이하거나 추가적인 기준 모듈이 사용된다. 하나의 이러한 다른 실시형태에서, 기준 모듈은 스마트폰인 전자 디바이스의 기존의 통합된 카메라 모듈과 같은 카메라 모듈을 포함한다.
초기에, 카메라 모듈은 후속 바이어스 연산에 대한 입력으로서 스마트폰에 상주하는 주 프로세서에 의해 사용되는 필요한 데이터를 캡처(즉, 측정 가능한 출력을 획득)할 수 있도록 제어된다. 이 실시형태에서, 데이터를 캡처하는 것은 다음 단계를 수반한다:
Figure pct00009
카메라 모듈을 턴온한다. 이것은 사용자에 의해 수동으로 (예를 들어, 사용자가 스마트폰에서 카메라 앱을 선택함으로써) 수행되거나 또는 스마트폰의 특성화를 제공하라는 프롬프트를 받을 때 스마트폰에 의해 자동으로 수행될 수 있다.
Figure pct00010
렌즈로 캡처한 이미지가 실질적으로 피치 블랙(pitch black)이 되도록 (즉, 카메라 렌즈에 널 신호가 입력되도록) 카메라 모듈의 능동 렌즈가 가까이 인접한 평면 표면을 향하게 한다.
Figure pct00011
3개의 별개의 시간적으로 이격된 이미지를 캡처하지만 비교적 빠른 간격으로 촬영되었다. 일부 실시형태에서는 사용자가 이미지 캡처 타이밍을 수동으로 개시하는 반면, 다른 실시형태에서는 사용자가 단순히 제1 이미지 캡처를 개시하고 나서 스마트폰에 상주하는 소프트웨어가 후속 이미지 캡처 타이밍을 제어한다. 다른 실시형태에서, 상이한 수의 이미지가 캡처된다.
Figure pct00012
이미지를 데이터 파일로 저장한다. 일부 실시형태에서 3개의 이미지가 JPG 파일과 같은 3개의 별개의 데이터 파일로서 저장된다. 그러나, 다른 실시형태에서는 다른 데이터 파일 형식이 사용되고 다른 수의 파일이 사용된다.
이 실시형태에서 바이어스 연산은 수집 측정 가능한 출력에 응답하여 스마트폰에 상주하는 소프트웨어에 의해 수행된다. 카메라 모듈에 대한 바이어스 측정값을 얻기 위해 측정 가능한 출력(데이터 파일 형식)을 처리하는 것은 다음과 같다:
Figure pct00013
JPG 파일을 처리하여 각각의 픽셀 위치에 대한 RGB 값을 추출한다.
Figure pct00014
이렇게 생성된 하나의 JPG 파일을 처리하여 부자연스럽고 비-흑색 픽셀, 즉, 녹색, 적색 또는 청색 픽셀과 각각의 클러스터 및 이들 클러스터의 임의의 부자연스러운 회색 픽셀의 위치를 연산한다.
Figure pct00015
비-흑색 픽셀 모두에 대해 클러스터의 크기와 위치(높이 대 폭의 비율)를 연산한다.
비-흑색 픽셀과 관련하여, 비-흑색 픽셀의 색상이 변하는 하나의 유형의 클러스터가 존재한다. 즉, 캡처된 시퀀스에서 제1 이미지의 데이터 파일은 하나의 색상(예를 들어, 적색)의 주어진 픽셀을 갖는 반면, 동일한 캡처된 시퀀스에서 제2 이미지의 다른 데이터 파일은 다른 색상(예를 들어, 청색)과 같은 픽셀을 갖는다. 이것은 일반적으로 주어진 픽셀이 데드 픽셀(dead pixel)이고 그 위치가 시간이 지남에 따라 변하지 않아야 하는 것을 나타낸다. 또한 사진에 걸쳐 그 색상이 유지되는 다른 유형의 비-흑색 클러스터가 발생할 수도 있다. 타격된 픽셀이라고 하는 다른 픽셀도 있는데, 이 픽셀의 색상은 시간이 지남에 따라 변할 수 있기 때문에 이 픽셀은 바이어스를 연산하는 데에 사용되지 않는다.
또한 픽셀 또는 픽셀 클러스터의 색상이 피치 블랙보다 더 밝은 그레이 스케일 픽셀 클러스터를 찾는 것도 가능하다. 이 픽셀은 짧은 시간 내에, 예를 들어, 수 초 내에 캡처된 다수의 이미지에 걸쳐 동일하게 유지되는 핫 픽셀이라고 지칭된다. 그러나, 핫 픽셀은 더 긴 시간 기간에 걸쳐 변하는 경향이 있어서, 이 실시형태에서, 카메라 모듈에 대한 바이어스를 계산하는 데에서 제외된다.
데드 픽셀 및 데드 픽셀 클러스터의 수는 카메라 모듈마다 변하지만 동일한 카메라 모듈에서는 실질적으로 고정된 채로 남아 있는 것으로 이해된다. 따라서, 데드 픽셀 및 데드 픽셀 클러스터는 주어진 카메라 모듈에 의해 제공되는 바이어스를 계산하는 데 유용한 기준점(reference point)인 것으로 밝혀졌다. 또한 이에 따라 하나의 카메라 모듈의 바이어스를 계산하는 데 영향을 미치는 요소의 수, 즉 데드 픽셀 클러스터의 수는 다른 카메라 모듈의 바이어스를 계산하는 데 영향을 미치는 요소의 수와 크게 다를 수 있게 된다.
또한 카메라 모듈 내의 데드 픽셀 클러스터는 시간이 지남에 따라 그리고 일반적으로 크기가 증가하는 것에 의해 변할 수 있다는 것이 주목된다. 따라서 카메라 모듈로부터 측정 가능한 출력을 사용할 때는 데이터 파일 및/또는 바이어스 계산 및/또는 디바이스 특성화에 대한 타임스탬프 데이터를 캡처하는 것이 중요하다. 이에 의해 적어도 일부 실시형태에서 (전자 디바이스 상에서 또는 원격으로 동작하는) 인증 소프트웨어는 알려진 클러스터의 크기에 대해 공차를 설정하기 위한 타임스탬프 데이터에 응답할 수 있다. 예를 들어, 이 실시형태에서, 개별 클러스터 크기에 대한 공차는 시간이 지남에 따라 점진적으로 또는 단계적으로 증가될 수 있다.
일부 전자 디바이스는 다수의 렌즈를 갖는 카메라 모듈을 갖거나 또는 각각 하나 이상의 렌즈를 갖는 다수의 카메라 모듈을 갖는다. 이러한 모듈 또는 모듈들은 또한 전자 디바이스의 특성화의 인스턴스를 도출하기 위해 측정 가능한 출력에 개별적으로 또는 집합적으로 기여할 수 있다.
주어진 전자 디바이스가 다수의 카메라 모듈을 갖는 경우, 각각의 모듈은 이들 모듈에 의해 제공되는 바이어스가 서로 상이하기 때문에 독립적으로 식별되고 인증되어야 한다.
카메라 모듈이 단일 렌즈를 갖는 경우, (식별 프로세스와 구별되는) 인증 프로세스 동안 바이어스를 재계산하는 것은 렌즈를 피치 블랙(널 신호)에 노출할 필요 없이 새로운 이미지 시퀀스를 캡처함으로써 이루어질 수 있다. 즉, 인증 프로세스는 바이어스 계산을 위해 더 많은 가중치가 부여된 기준 클러스터의 위치와 크기가 식별되었기 때문에 캡처된 이미지의 배경에 덜 민감하다.
카메라 모듈에 대한 바이어스가 (전자 디바이스 상에서 로컬로 또는 다른 컴퓨팅 디바이스에 의해 원격으로) 계산되면, 이 바이어스는 인증이 성공적인지 여부를 확인하기 위해 원격으로 저장된 카메라 모듈의 바이어스 리스트와 일치하는 것이 필요하다. 바이어스 연산은, 바이어스가 카메라 모듈의 전자 디바이스로부터 이전에 얻어진 바이어스와 일치하는지 여부를 확인하기 위해, 일반적으로 또한 전자 디바이스의 UUID 또는 다른 식별자와 함께 데드 픽셀 클러스터의 크기 및 위치를 사용하여 위에서 언급한 것과 동일한 프로세스를 따르다.
일부 실시형태에서, 카메라 모듈은 카메라 렌즈의 미리 결정된 입력에 대해 미리 결정된 출력을 제공하는 하나 이상의 픽셀을 갖도록 제조된 센서, 예를 들어, CCD 어레이를 포함한다. 예시적인 실시형태에서, 이것은 어레이의 에지를 따라 이격되고 데드 픽셀인 다수의 픽셀을 포함한다. 다른 예시적인 실시형태에서, 주어진 픽셀 또는 픽셀들에 대한 하나 이상의 센서는 주어진 바이어스를 제공하기 위해 제조 동안 적용되는 컬러 필터와 같은 물리적 변형을 포함한다. 바람직하게는, 이러한 픽셀은 어레이의 에지에 또는 에지 근처에 배치되고, 어레이의 총 픽셀 수에 비해 수가 작다.
다른 실시형태에서, 기준 모듈은 전자 디바이스의 다른 구성 요소 부분이다. 예로서, 일부 실시형태에서 기준 모듈이 나침반 모듈이다. 다른 예시적인 실시형태에서, 기준 모듈은 WiFi 모듈 또는 블루투스 모듈이다. 보다 구체적으로, 일부 실시형태에서, 기준 모듈은 미리 결정된 입력 신호를 수신하기 위한 입력 및 이 미리 결정된 입력 신호가 입력에 인가되는 것에 응답하여 측정 가능한 출력을 제공하기 위한 출력을 갖는 전자 회로를 포함한다. 미리 결정된 입력 신호는 신호의 범위로부터 선택될 수 있다. 그러나, 디지털 회로(집적 회로를 포함)의 경우, 미리 결정된 입력 신호가 널 신호(즉, 입력이 논리 0으로 유지됨) 또는 최대 신호(즉, 입력이 논리 1로 유지됨)인 것이 가장 유리한 것으로 밝혀졌다. 측정 가능한 출력(일반적으로 출력에서 샘플링된 전류 및/또는 전압)은 바이어스를 포함하고, 측정 가능한 출력으로부터 이 바이어스를 계산할 수 있게 한다.
많은 실시형태에서 사용되는 기준 모듈은 센서 또는 트랜스듀서에 의해 제공된 아날로그 신호를 측정 가능한 출력의 전부 또는 일부를 형성하기 위한 디지털 신호로 변환하기 위한 아날로그-디지털 변환기를 포함한다. 일부 실시형태에서, 기준 모듈 또는 모듈들은 측정 가능한 출력에 기여하도록 선택적으로 제어되는 복수의 아날로그-디지털 변환기를 포함한다.
상기 실시형태는 스마트폰과 연관된 다양한 기준 모듈에 의해 제공되는 바이어스를 계산하는 것을 설명하였다. 상기 제공된 예에서, 기준 모듈은 스마트폰의 주변 디바이스이지만 스마트폰 설계 및 패키징에 통합되었다. 다른 실시형태에서, 기준 모듈로서 다른 주변 디바이스가 사용된다. 일부 이러한 실시형태에서, 주변 디바이스는 스마트폰에 제거 가능하게 연결되어 측정된 출력의 수집을 제공한다. 주변 디바이스는 이들 실시형태 중 일부 실시형태에서 측정된 출력을 제공하는 것으로만 전용된 반면, 다른 이러한 실시형태에서는 측정된 출력을 제공하는 것에 더하여 추가 기능을 갖는다.
다른 실시형태에서, 스마트폰 또는 다른 전자 디바이스는 복수의 기준 모듈을 포함하고, 각각의 대안적인 또는 상이한 식별 및 인증을 결정할 때 이들 모듈로부터의 각각의 측정된 출력이 사용된다. 예를 들어, 제1의 제3자에 대한 인증은 바이어스 계산을 위해 측정 가능한 출력을 제공하는 제1 기준 모듈을 수반하고; 제2의 제3자에 대한 인증은 바이어스 계산을 위해 측정 가능한 출력을 제공하는 제2 기준 모듈을 수반하고; 제3의 제3자에 대한 인증은 바이어스 계산에 사용되는 각각의 측정 가능한 출력을 제공하는 제1 및 제2 기준 모듈을 수반한다. 상기 내용의 이점이 주어졌으므로, 이 기술 분야에 통상의 지식을 가진 자에게는 많은 다른 조합이 가능하다는 것을 명백히 알 수 있을 것이다.
전술한 실시형태 중 일부는 디지털 신호인 측정된 출력으로 변환되는 아날로그 신호를 제공하는 센서 또는 트랜스듀서를 갖는 기준 모듈을 사용한다. 이러한 아날로그 디바이스들 사이의 고유한 물리적 변화는, 비록 공차가 단지 작다하더라도, 각각의 전자 디바이스의 센서에 의해 감지된 조건이 동일한 경우에도, 공칭적으로, 다른 바이어스를 갖는, 그리하여 다른 측정된 결과를 갖는 전자 디바이스와 같이 된다. 따라서, 주어진 전자 디바이스에 대한 바이어스를 계산하기 위해 측정된 출력을 사용하면 이 디바이스에 대한 시그너처를 개발할 수 있다. 그러면 디바이스의 초기 식별 및 후속 인증을 할 수 있다.
상기 실시형태는 바이어스(또는 바이어스들)를 계산하고 디바이스에 대한 디바이스 특성화의 인스턴스를 생성하기 위해 전자 디바이스에 상주하는 소프트웨어를 사용한다. 데이터 파일 형태를 취하는 이 디바이스 특성화는 전자 디바이스로부터 원격으로 전송되는 디바이스 응답에 포함된다. 다른 실시형태에서, 전자 디바이스에 상주하는 소프트웨어는 주로 측정 가능한 출력을 수집하고, 데이터 파일이 측정 가능한 출력을 나타내는 데이터를 포함하도록 디바이스 특성화를 생성하기 위한 것이다. 이에 의해 디바이스 응답의 원격 수신자(예를 들어, 도 1의 서버(9))가 데이터 파일을 추출하고 바이어스를 독립적으로 결정할 수 있다. 데이터 파일은 또한 디바이스(3)의 식별 또는 인증을 용이하게 하기 위해 타임스탬프 및 다른 데이터(예를 들어, 디바이스(3)의 식별자)를 포함한다. 예를 들어, 일부 실시형태에서, 데이터 파일은 진위를 평가하기 위한 추가 기준점을 제공하기 위해 전자 디바이스의 위치를 나타내는 데이터를 포함한다.
상기 예에서, 기준 모듈에 의해 제공되는 바이어스는 제조 공차, 재료 품질 및 다른 그러한 요인에 기인하고, 전자 디바이스를 대량으로 제조하는 공정의 통상적인 부분이다. 그러나, 다른 실시형태에서, 개별 전자 디바이스에 대한 바이어스는 전자 디바이스에서 하나 이상의 요소의 물리적 특성을 변경함으로써 제조 동안 의도적으로 증가되거나 또는 증폭된다. 바람직하게는, 물리적 변경은 전자 디바이스와 본질적으로 분리될 수 없는 실용적인 목적을 위해 유지되도록 기준 모듈 내의 통합된 구성 요소 또는 구성 요소들의 조합에 대한 것이다.
따라서, 일 실시형태는 바이어스를 갖는 측정 가능한 출력을 제공하는 기준 모듈, 및 상기 측정 가능한 출력에 응답하여 전자 디바이스의 특성화의 인스턴스를 나타내는 제2 데이터를 도출하고 제공하는 프로세서를 구비하는 상기 전자 디바이스를 제공하는 방법을 포함한다.
다른 실시형태에 따르면, 전자 디바이스를 제조하는 방법이 제공되고, 상기 방법은 상기 전자 디바이스 내에 바이어스를 갖는 측정 가능한 출력을 제공하는 기준 모듈을 포함하는 단계를 포함하고, 여기서 상기 바이어스는 적어도 부분적으로 제조 공차에 의해 결정된다.
다른 실시형태에 따르면, 전자 디바이스를 제조하는 방법이 제공되고, 상기 방법은 상기 디바이스 내에 바이어스를 갖는 측정 가능한 출력을 제공하는 기준 모듈을 포함하고, 상기 바이어스는 선택된 구성 요소들 중 하나의 구성 요소 또는 이들의 조합에 의해 적어도 부분적으로 결정된다. 바람직하게는, 상기 방법은 선택된 구성 요소들 중 하나의 구성 요소 또는 이들의 조합을 상기 모듈과 통합하는 추가 단계를 포함한다.
전자 디바이스의 제조업체(또는 관련 당사자)는 전자 디바이스에 대한 제1 데이터를 획득하고 저장할 수 있는 것으로 이해된다. 이 저장된 제1 데이터는 제3자 인증 플랫폼(예를 들어, 시스템(1)과 같은 POS 인증 플랫폼)에 선택적으로 공급될 수 있고/있거나 제조업체 또는 관련 당사자에 의해 보유되어 이 제조업체에 의해 상기 디바이스를 차후 인증하는 것을 용이하게 할 수 있다. 이를 통해 제조업체는 디바이스에 대한 지속적인 지원을 보다 정확하게 관리하고, 보증 청구, 소프트웨어 업데이트 등과 같은 다른 문제를 관리할 수 있다. 이는 그렇지 않은 경우 이러한 관심의 이익을 얻지 못할 수도 있는 IoT 디바이스에 특히 유리하다.
IoT 디바이스는 예를 들어 가전 기기, 개인 의료용 모니터, 에너지(및 다른 유틸리티) 관리 디바이스 및 많은 다른 것을 포함하여 많은 상이한 유형의 디바이스를 포함한다. 이들 디바이스를 실시형태의 방법을 사용하는 것을 통해 인증함으로써, 연결된 디바이스의 적법성에 대해 추가적인 편안함을 얻을 수 있어서, 이들 디바이스에 의해 수집되고 이들 디바이스 사이에 전달되는 데이터를 적절히 사용하는 것이 가능하다. 시스템(1)은 IoT 디바이스와 관련하여 제2 데이터를 요청하고 인증을 수행할 때 유사하게 작동한다. 이것은 시스템(1)의 운영자에 의해 전자 디바이스의 소유자 또는 사용자에 서비스로서 제공될 수 있고, 주어진 네트워크에서 검출된 디바이스의 진위를 확인하기 위해 주기적으로, 랜덤하게 또는 다른 방식으로 수행될 수 있다. 또한 이에 의해 시스템(1)은 디바이스의 감사 기능을 제공하고, 임의의 새로운 디바이스 및/또는 임의의 무단 디바이스를 사용자에 경고할 수 있다. 일부 실시형태에서, 시스템(1)은 사용자의 랩탑 컴퓨터, 스마트폰 또는 다른 컴퓨팅 디바이스에서 인스턴스화되어 이 사용자의 네트워크에 대한 인증 절차를 자체 관리할 수 있게 한다. 그러나, 다른 실시형태에서, 시스템(1)은 아주 많은 수의 사용자에 제공되는 서비스로서 동작된다.
다른 실시형태에 따르면, 사용자(4)에 의해 동작되는 사용자 디바이스(3)에 대한 인증 데이터(2)를 제공하는 방법이 제공되고, 상기 방법은,
디바이스(3)의 정적 배향으로부터 도출된, 특성화의 제1 인스턴스를 나타내는 제1 데이터(6)를 데이터베이스(5)에 저장하는 단계;
시스템 인터페이스(6a)를 제공하여 상기 특징화의 제2 인스턴스를 나타내는 제2 데이터(8)를 디바이스(3)로부터 수신하고; 상기 인증 데이터(2)를 전송하는 단계; 및
제1 데이터(6) 및 제2 데이터(8)에 응답하여 인증 데이터(2)를 선택적으로 생성하는 서버(9)의 형태의 인증 모듈을 제공하는 단계를 포함한다.
시스템(1)의 동작에 수반되는 상기 방법 및 다른 단계는 도 3 내지 도 6의 흐름도에 그래픽으로 표현되어 있다.
본 발명의 다른 실시형태에 따르면, 모바일 통신 디바이스(3)가 제공되고, 상기 모바일 통신 디바이스는,
상기 디바이스(3)의 미리 결정된 특성화의 제2 인스턴스를 제공하라는 시스템 요청(42)을 수신하고; 및 디바이스 응답(43)을 전송하기 위한 디바이스 인터페이스(41);
시스템 요청(42) 및 디바이스(3)의 적어도 하나의 미리 결정된 정적 배향에 응답하여 상기 특성화의 제2 인스턴스를 생성하는 기준 모듈(44); 및
상기 제2 인스턴스에 응답하여 디바이스 응답(43)을 생성하는 연산 모듈(45)을 포함한다.
다른 실시형태에 따르면, 전자 디바이스(3)의 상태에 응답하여 측정 가능한 출력을 생성하는 상기 전자 디바이스(3)에 대한 인증 데이터(2)를 제공하기 위한 시스템이 제공된다. 상기 측정 가능한 출력은 바이어스를 포함하고, 상기 시스템은,
상기 바이어스로부터 적어도 부분적으로 도출된, 디바이스(3)에 대한 디바이스 특성화의 제1 인스턴스를 나타내는 제1 데이터(6)를 저장하기 위한 데이터베이스(5);
상기 디바이스 특성화의 제2 인스턴스를 나타내는 제2 데이터(8)를 디바이스(3)로부터 수신하기 위한 시스템 인터페이스(6a); 및
상기 제1 데이터(6) 및 제2 데이터(8)에 응답하여 디바이스(3)에 대한 상기 인증 데이터(2)를 선택적으로 생성하는 서버(9) 형태의 인증 모듈을 포함한다.
일부 실시형태에서, 상기 디바이스의 상태는 다음과 같은 물리적 상태이다:
Figure pct00016
디바이스가 정적 배향으로 유지되고 있는 상태. 예를 들어, 디바이스의 미리 결정된 표면을 실질적으로 수평인 표면 상에 놓는 것에 의해, 또는 사용자가 일부 이러한 배향으로 디바이스를 유지하게 하는 것에 의해, 또는 미리 결정된 센서를 디바이스의 배향에서 제로화하게 하는 것에 의해, 미리 결정된 입력에 대한 센서의 후속 출력에 기초하여 바이어스를 평가할 수 있다.
Figure pct00017
센서 또는 다른 입력의 미리 결정된 상태. 예를 들어, 카메라 모듈과 연관된 CCD 디바이스에 유효 널 입력을 제공하도록 카메라 렌즈가 덮인 상태. 다른 예는 카메라 렌즈가 알려진 특성의 미리 결정된 이미지에 초점을 맞추게 하는 것이다.
다른 실시형태에서, 전자 디바이스(3)가 제공되고, 상기 전자 디바이스는,
디바이스(3)의 미리 결정된 특성화의 인스턴스를 제공하라는 요청을 수신하고; 및 상기 요청에 대한 디바이스 응답을 전송하기 위한 디바이스 인터페이스(41);
바이어스를 포함하는 측정 가능한 출력을 제공하는 기준 모듈(44); 및
상기 요청에 응답하여, 상기 측정 가능한 출력에 대해 모듈(44)을 프롬프트하고; 상기 측정 가능한 출력에 적어도 부분적으로 기초하여 특성화의 인스턴스를 생성하고; 및 상기 디바이스 특성화의 인스턴스를 나타내는 응답 데이터를 포함하는 상기 디바이스 응답을 생성하는 프로세서(45)를 포함한다.
일부 실시형태에서, 상기 프로세서는 상기 바이어스를 계산하고, 상기 특성화의 인스턴스는 계산을 나타낸다. 그러나, 다른 실시형태에서, 상기 프로세서는 상기 바이어스를 계산하지 않고, 상기 특성화의 인스턴스는 상기 측정 가능한 출력을 나타낸다. 후자의 경우, 상기 응답 데이터의 수신자, 예를 들어, 서버(9)는 응답 데이터로부터 측정 가능한 출력을 나타내는 데이터를 추출한 후, 디바이스(3)의 식별 또는 디바이스(3)의 인증을 수행하기 위해 바이어스를 계산한다.
상기 실시형태에 의해 집합적으로 제공되는 주요 장점은 다음을 포함한다:
Figure pct00018
전자 디바이스에 상주하는 소프트웨어만이 아니라 디바이스 자체에 고유한 시그너처에 기초하여 전자 디바이스를 물리적으로 안전하게 식별할 수 있다.
Figure pct00019
제조 후에는 실제적으로 변경될 수 없는, 개별 전자 디바이스에 특정된 하드웨어 바이어스를 사용한다.
Figure pct00020
사용자 디바이스와 같은 보다 안전한 디바이스가 선택적으로 바이어스 계산을 국부적으로 수행하고 이 계산 결과를 제2 데이터에 포함하게 할 수 있다. 상황의 선택은 인증의 성격, 인증을 추구하는 거래의 성격, 당사자들 중 임의의 하나 이상의 당사자의 위치, 당사자들 중 임의의 하나 이상의 당사자의 이력 등에 기초할 수 있다.
Figure pct00021
IoT 디바이스 또는 IIOT 디바이스와 같이 덜 안전한 디바이스가 측정 가능한 출력을 나타내는 제2 데이터를 제공하게 하여 바이어스 계산이 IoT 디바이스로부터 원격에서 발생할 수 있도록 할 수 있다. 일부 실시형태에서는 측정 가능한 출력이 원시 형태의 제2 데이터에 포함된 반면에, 다른 실시형태에서는 잡음 보정, 압축, 암호화 또는 다른 이러한 처리를 제공하기 위해 디바이스에 의해 국부적으로 조작된다.
Figure pct00022
제조 공차를 이용하여 디바이스를 정확하게 식별하고 인증할 수 있다.
Figure pct00023
식별 및 인증 단계 동안 정확도를 높이기 위해 제조 동안 디바이스의 바이어스를 강조하거나 다른 방식으로 형성할 수 있다.
Figure pct00024
동일한 인증을 위해 다수의 기준 모듈에 액세스하거나 디바이스의 연속적인 인증을 위해 순차적으로, 교대로, 주기적으로, 랜덤하게 또는 다른 방식으로 액세스할 수 있다.
Figure pct00025
사용자 디바이스 및 독립형 전자 디바이스에 적용될 수 있다.
Figure pct00026
완전 자동화되고 확장 가능한 이중-인자 인증을 제공할 수 있다.
Figure pct00027
온라인 서비스에 대한 이중-인자 인증을 광범위하게 적용할 수 있다.
Figure pct00028
최초 등록 후 다음을 할 수 있다:
i) 사용자에 의해 익명 인증을 수행할 수 있다.
ii) 사용자 인증에 기초하여 스마트폰 및 모바일 디바이스를 사용할 수 있다.
iii) 클라우드 기반 인증 시스템을 사용하여 온라인 서비스 제공자에 대한 이중-인자 인증의 비용과 복잡성을 줄일 수 있다.
iv) 서비스 데스크 없이 디바이스를 분실한 경우 키를 복구할 수 있도록 최종 사용자에게 가상 '예비 키' 서비스를 제공할 수 있다.
Figure pct00029
스마트폰 또는 이와 유사한 네트워크 디바이스의 특성화를 위한 안전하고 비용 효율적이며 통계적으로 재현 가능하고 신뢰할 수 있는 방법이다.
Figure pct00030
기존의 단일-인자 인증 시스템과 쉽게 호환될 수 있다.
Figure pct00031
개인을 위한 추가 보안 계층을 제공하는 것에 의해 온라인 서비스의 보안을 향상시킨다.
Figure pct00032
디바이스의 디바이스 시그너처를 개발하는 것에 의해 전자 디바이스를 고유하게 식별한다.
Figure pct00033
시그너처를 디바이스와 연관된 사용자 또는 다른 당사자의 온라인 신원에 익명으로 연관시킬 수 있다.
Figure pct00034
사용자가 모바일 디바이스나 다른 컴퓨팅 디바이스를 사용하거나 자신의 일반 사용자 이름과 패스워드를 사용하여 온라인 서비스에 로그인하면, 스마트폰에 경고가 생성된다. 그런 다음, 사용자는 스마트폰을 조작하여 새로운 특성화 인스턴스를 캡처하고 이를 로그인을 검증하는데 사용하여, 이에 의해 온라인 서비스를 검증할 수 있다.
Figure pct00035
이 실시형태의 사용자는 이메일 피싱(email phishing), 패스워드 파일 도난 및 중간자(Man-in-the-Middle: MITM) 공격을 포함하여 패스워드 추측 및 패스워드 도난 공격으로부터 보호된다.
Figure pct00036
네트워크는 IoT 디바이스의 무단 액세스로부터 더 잘 보호된다.
Figure pct00037
전자 디바이스의 다양한 인증을 허용할 수 있다.
Figure pct00038
위협 수준, 거래 크기, 액세스 민감도 등이 변하는 것에 응답하여 변하는 인증 프로세스를 수용할 수 있다.
결론과 해석
상기 발명은 사용자의 사용자 디바이스에 대한 인증 데이터를 제공하기 위한 다양한 중요한 시스템 및 방법을 제공하는 것으로 이해된다.
달리 구체적으로 언급되지 않는 한, 명세서 전체에 걸쳐 "처리", "컴퓨팅", "계산", "결정", 분석" 등과 같은 용어는 물리적 양, 예를 들어, 전자적 양으로 표현된 데이터를 유사하게 물리적 양으로 표현된 다른 데이터로 조작 및/또는 변환하는, 컴퓨터 또는 컴퓨팅 시스템 또는 유사한 전자 컴퓨팅 디바이스의 동작 및/또는 프로세스를 지칭하는 것으로 이해된다.
유사한 방식으로, "프로세서"라는 용어는, 예를 들어, 레지스터 및/또는 메모리로부터 전자 데이터를 처리하여, 이 전자 데이터를, 예를 들어, 레지스터 및/또는 메모리에 저장될 수 있는 다른 전자 데이터로 변환하는 임의의 디바이스 또는 디바이스의 부분을 지칭할 수 있다. "컴퓨터" 또는 "컴퓨팅 기계" 또는 "컴퓨팅 디바이스" 또는 "네트워크 연결된 디바이스" 또는 "컴퓨팅 플랫폼"은 하나 이상의 프로세서를 포함할 수 있다.
본 명세서에서 "데이터"가 언급된다. 이 용어는 저장 또는 전송을 위한 정보 그룹을 설명하는 데 사용된다. 이 용어는 정보가 모두 함께 저장되거나 함께 전송될 것을 요구하는 것을 의미하는 것이 아니라, 단순히 저장되거나 전송된 데이터가 조립되거나 액세스될 때 기능적 완전체를 제공한다는 것을 의미하는 것이다.
본 명세서에 설명된 방법은 일 실시형태에서 하나 이상의 프로세서에 의해 실행될 때 본 명세서에 기재된 방법 중 적어도 하나의 방법을 수행하는 명령어 세트를 정의하는 컴퓨터 판독 가능(또한 기계 판독 가능이라고 함) 코드를 수신하는 하나 이상의 프로세서에 의해 수행될 수 있다. 수행될 동작을 지정하는 명령어 세트를 (순차적으로 또는 다른 방식으로) 실행할 수 있는 임의의 프로세서가 포함된다. 따라서, 하나의 예는 하나 이상의 프로세서를 포함하는 일반적인 처리 시스템이다. 각각의 프로세서는 CPU, 그래픽 처리 유닛, 및 프로그래밍 가능 DSP 유닛 중 하나 이상을 포함할 수 있다. 처리 시스템은 주 RAM 및/또는 정적 RAM 및/또는 ROM을 포함하는 메모리 서브시스템을 더 포함할 수 있다. 구성 요소들 간의 통신을 위해 버스 서브시스템이 포함될 수 있다. 처리 시스템은 또한 네트워크에 의해 결합된 프로세서를 갖는 분산 처리 시스템일 수 있다. 처리 시스템이 디스플레이를 필요로 하는 경우, 이러한 디스플레이, 예를 들어 액정 디스플레이(LCD) 또는 음극선관(CRT) 디스플레이 등이 포함될 수 있다. 수동 데이터 입력이 필요한 경우, 처리 시스템은 키보드와 같은 영숫자 입력 유닛, 마우스와 같은 포인팅 제어 디바이스, 터치 패드, 롤 패드 등 중에서 하나 이상의 입력 디바이스를 더 포함한다. 본 명세서에서 사용된 "메모리 유닛"이라는 용어는, 문맥 상 명백하고 달리 명시되지 않는 한, 디스크 드라이브 유닛과 같은 저장 시스템을 더 포함한다. 일부 구성에서 처리 시스템은 사운드 출력 디바이스 및 네트워크 인터페이스 디바이스를 포함할 수 있다. 따라서, 메모리 서브시스템은, 하나 이상의 프로세서에 의해 실행될 때, 본 명세서에 설명된 하나 이상의 방법을 수행할 수 있는 명령어 세트를 포함하는 컴퓨터 판독 가능 코드(예를 들어, 애플리케이션 소프트웨어를 포함하는 소프트웨어)를 운반하는 컴퓨터 판독 가능 운반 매체를 포함한다. 방법이 여러 요소를 포함할 때, 예를 들어, 여러 단계를 포함할 때, 특별히 언급하지 않는 한, 이러한 요소들이 순서를 암시하는 것이 아니라는 것이 주목된다. 소프트웨어는 하드 디스크에 상주할 수 있고, 또는 컴퓨터 시스템에 의해 실행되는 동안 RAM 내에 및/또는 프로세서 내에 완전히 또는 적어도 부분적으로 상주할 수도 있다. 따라서, 메모리 및 프로세서는 또한 컴퓨터 판독 가능 코드를 운반하는 컴퓨터 판독 가능 운반 매체를 구성한다.
또한, 컴퓨터 판독 가능한 운반 매체는 컴퓨터 프로그램 제품을 형성하거나 컴퓨터 프로그램 제품에 포함될 수 있다.
대안적인 실시형태에서, 하나 이상의 프로세서는 독립형 디바이스로서 동작하거나, 또는 네트워크로 연결된 배치로 연결될 수 있고, 예를 들어 다른 프로세서(들)에 네트워크로 연결될 수 있다. 하나 이상의 프로세서는 서버-사용자 네트워크 환경에서 서버 또는 사용자 기계(예를 들어, 사용자 디바이스 또는 클라이언트 디바이스)의 능력으로 동작하거나, 또는 피어-투-피어 또는 분산 네트워크 환경에서 피어 기계로서 동작할 수 있다. 하나 이상의 프로세서는 부분적으로 개인용 컴퓨터(PC)(데스크탑 컴퓨터라고도 함), 태블릿 PC, 셋탑 박스(STB), 개인 휴대 정보 단말기(PDA), 휴대폰, 웹 기기, 네트워크 라우터, 스마트폰, 스위치 또는 브리지, 또는 이 기계에 의해 수행될 동작을 지정하는 명령어 세트를 (순차적으로 또는 다른 방식으로) 실행할 수 있는 임의의 기계를 형성할 수 있다.
다이어그램은 단일 프로세서 및 컴퓨터 판독 가능 코드를 운반하는 단일 메모리만을 도시하지만, 이 기술 분야에 통상의 지식을 가진 자라면 전술한 구성 요소 중 많은 요소들이 본 발명의 양태를 모호하게 하지 않게 하기 위해 명시적으로 도시되거나 설명되지 않은 상태로 포함된 것임을 이해할 수 있을 것이다. 예를 들어, 단일 기계만이 도시되어 있지만, "기계"라는 용어는 또한 본 명세서에서 논의된 임의의 하나 이상의 방법을 수행하기 위해 명령어 세트(또는 다수의 세트)를 개별적으로 또는 공동으로 실행하는 임의의 기계의 모음을 포함하는 것으로 고려된다.
따라서, 본 명세서에 설명된 각각의 방법의 일 실시형태는 하나 이상의 프로세서, 예를 들어, 웹 서버 배열의 일부인 하나 이상의 프로세서에서 실행되기 위한 명령어 세트, 예를 들어, 컴퓨터 프로그램을 운반하는 컴퓨터 판독 가능한 운반 매체의 형태이다. 따라서, 이 기술 분야에 통상의 지식을 가진 자라면 이해할 수 있는 바와 같이, 본 발명의 실시형태는 방법, 특수 목적 장치와 같은 장치, 데이터 처리 시스템과 같은 장치, 또는 컴퓨터 판독 가능 운반 매체, 예를 들어, 컴퓨터 프로그램 제품으로서 구현될 수 있다. 컴퓨터 판독 가능 운반 매체는, 하나 이상의 프로세서 상에서 실행될 때, 프로세서 또는 프로세서들이 방법을 구현하게 하는 명령어 세트를 포함하는 컴퓨터 판독 가능 코드를 운반한다. 따라서, 본 발명의 양태는 방법, 전체 하드웨어인 실시형태, 전체 소프트웨어인 실시형태, 또는 소프트웨어와 하드웨어 양태를 결합시킨 실시형태의 형태를 취할 수 있다. 또한, 본 발명은 매체에 구현된 컴퓨터 판독 가능 프로그램 코드를 운반하는 운반 매체(예를 들어, 컴퓨터 판독 가능 저장 매체 상의 컴퓨터 프로그램 제품)의 형태를 취할 수 있다.
소프트웨어는 또한 네트워크 인터페이스 디바이스를 통해 네트워크를 통해 전송되거나 수신될 수 있다. 운반 매체는 예시적인 실시형태에서 단일 매체인 것으로 도시되어 있지만, "운반 매체"라는 용어는 하나 이상의 명령어 세트를 저장하는 단일 매체 또는 다수의 매체, 예를 들어, 중앙 또는 분산 데이터베이스, 및/또는 관련 캐시 및 서버를 포함하는 것으로 고려된다. "운반 매체"라는 용어는 또한 하나 이상의 프로세서에 의한 실행되기 위한 명령어 세트를 저장, 인코딩 또는 운반할 수 있고, 하나 이상의 프로세서로 하여금 본 발명의 임의의 하나 이상의 방법을 수행하게 하는 임의의 매체를 포함하는 것으로 고려된다. 운반 매체는 비-휘발성 매체, 휘발성 매체 및 전송 매체를 포함하지만 이들로 제한되지 않는 많은 형태를 취할 수 있다. 비-휘발성 매체는 예를 들어 광학 디스크, 자기 디스크 및 광 자기 디스크를 포함한다. 휘발성 매체는 주 메모리와 같은 동적 메모리를 포함한다. 전송 매체는 버스 서브시스템을 포함하는 와이어를 포함하여 동축 케이블, 구리 와이어 및 광섬유를 포함한다. 전송 매체는 또한 전파 및 적외선 데이터 통신 동안 생성된 것과 같은 음향 또는 광파의 형태를 취할 수도 있다. 예를 들어, "운반 매체"라는 용어는 솔리드-스테이트 메모리, 광 매체 및 자기 매체에 구현된 컴퓨터 제품; 하나 이상의 프로세서 중 적어도 하나의 프로세서에 의해 검출될 수 있고, 실행될 때 방법을 구현하는 명령어 세트를 나타내는 전파된 신호를 갖는 매체; 및 하나 이상의 프로세서 중 적어도 하나의 프로세서에 의해 검출될 수 있고 명령어 세트를 나타내는 전파 신호를 갖는 네트워크의 전송 매체를 포함하지만 이들로 제한되지 않는 것으로 고려된다.
논의된 방법의 단계는 일 실시형태에서 저장 매체에 저장된 명령어(컴퓨터 판독 가능 코드)를 실행하는 처리 (즉, 컴퓨터) 시스템의 적절한 프로세서(또는 프로세서들)에 의해 수행되는 것으로 이해된다. 또한 주어진 청구 범위에서 구체적으로 정의되지 않는 한, 본 발명은 임의의 특정 구현 또는 프로그래밍 기술로 제한되지 않으며, 본 발명은 본 명세서에 설명된 기능을 구현하기 위한 임의의 적절한 기술을 사용하여 구현될 수 있는 것으로 이해된다. 주어진 청구항에 의해 한정된 본 발명은 프로그래밍 언어 또는 운영 체제가 이 청구항에 명시적으로 한정되지 않는 한 임의의 특정 프로그래밍 언어 또는 운영 체제로 제한되지 않는다.
본 발명의 예시적인 실시형태에 대한 상기 설명에서, 본 발명의 다양한 특징은 본 발명을 간소화하고 다양한 본 발명의 양태 중 하나 이상의 양태를 이해하는 것을 돕기 위해 단일 실시형태, 도면 또는 설명 부분에서 함께 때때로 그룹화되는 것으로 이해된다. 그러나, 본 발명의 방법은 청구된 발명이 각 청구 범위에 명시적으로 언급된 것보다 더 많은 특징을 요구한다는 의도를 반영하는 것으로 해석되어서는 안 된다. 오히려, 다음의 청구 범위가 나타내는 바와 같이, 본 발명의 양태는 전술한 단일 실시형태의 모든 특징보다 더 적다. 따라서, 상세한 설명에 따른 청구 범위는 본 상세한 설명에 명시적으로 포함되며, 각각의 청구항은 본 발명의 개별 실시형태로서 각자 존재한다.
또한, 본 명세서에 설명된 일부 실시형태는 다른 실시형태에 포함된 일부, 그러나 다른 것이 아닌, 특징을 포함하지만, 다른 실시형태의 특징의 조합은 본 발명의 범위 내에 있고 이 기술 분야에 통상의 지식을 가진 자라면 이해하는 바와 같이 상이한 실시형태를 형성하도록 의도된다. 예를 들어, 다음의 청구 범위에서, 청구된 실시형태 중 임의의 실시형태는 임의의 조합으로 사용될 수 있다.
또한, 일부 실시형태는 컴퓨터 시스템의 프로세서에 의해 또는 기능을 수행하는 다른 수단에 의해 구현될 수 있는 방법 또는 방법의 요소의 조합으로서 본 명세서에 설명된다. 따라서, 이러한 방법 또는 방법의 요소를 수행하기 위해 필요한 명령어를 갖는 프로세서는 방법 또는 방법의 요소를 수행하기 위한 수단을 형성한다. 또한, 장치 실시형태의 본 명세서에 설명된 요소는 본 발명을 수행하기 위해 요소에 의해 수행되는 기능을 수행하기 위한 수단의 일례이다.
본 명세서에 제공된 설명에서, 다수의 특정 세부 사항이 제시된다. 그러나, 본 발명의 실시형태는 이들 특정 세부 사항 없이도 실시될 수 있는 것으로 이해된다. 다른 경우에, 잘 알려진 방법, 구조 및 기술은 이 설명을 이해하는 것을 모호하게 하지 않기 위해 상세히 도시되지 않았다.
유사하게, 청구 범위에서 사용된 "연결된"이라는 용어는 직접 연결된 것을 의미하는 것으로 제한되는 것으로 해석되어서는 안 되는 것으로 이해된다. 따라서, "디바이스(B)에 연결된 디바이스(A)"라는 표현의 범위는 디바이스(A)의 출력이 디바이스(B)의 입력에 직접 연결된 것을 포함하는 디바이스 또는 시스템을 의미하는 것으로 제한되어서는 안 된다. 이는 다른 디바이스 또는 수단을 포함하는 경로일 수 있는 A의 출력과 B의 입력 사이에 경로가 존재하는 것을 의미한다. "연결된"이란 둘 이상의 요소가 직접 물리적으로 접촉하는 것, 전기적으로 접촉하는 것, 또는 서로 통신 가능하게 접촉하는 것을 의미하거나; 또는 직접 물리적으로 접촉하지 않는 것, 전기적으로 접촉하지 않는 것, 또는 서로 통신 가능하게 접촉하지 않지만 여전히 서로 협력하거나 상호 작용하는 것을 의미할 수 있다.
따라서, 본 발명의 바람직한 실시형태인 것으로 여겨지는 바를 설명하였지만, 이 기술 분야에 통상의 지식을 가진 자라면 본 발명의 사상을 벗어나지 않고 다른 변형 및 추가 변형이 이루어질 수 있음을 인식할 수 있을 것이므로, 이러한 모든 변경 및 수정은 본 발명의 범위 내에 속하는 것을 청구하는 것으로 의도된다. 기능은 블록도로부터 추가 또는 삭제될 수 있으며 기능 블록들 간에 동작이 상호 교환될 수 있다. 단계들은 본 발명의 범위 내에서 설명된 방법에 추가되거나 삭제될 수 있다.

Claims (20)

  1. 전자 디바이스로서,
    상기 전자 디바이스의 미리 결정된 특성화(characterisation)의 인스턴스(instance)를 제공하라는 인증 요청을 수신하고; 상기 요청에 대한 디바이스 응답을 전송하기 위한 디바이스 인터페이스;
    바이어스(bias)를 포함하는 측정 가능한 출력을 제공하는 기준 모듈; 및
    상기 요청에 응답하여, 상기 측정 가능한 출력에 대해 상기 모듈을 프롬프트하고; 상기 측정 가능한 출력에 기초하여 상기 특성화의 인스턴스를 생성하고; 상기 디바이스 특성화의 인스턴스를 나타내는 제2 데이터를 포함하는 상기 디바이스 응답을 생성하는 프로세서를 포함하는, 전자 디바이스.
  2. 제1항에 있어서, 상기 프로세서는 상기 요청에 응답하여 상기 모듈의 프롬프트의 성격을 결정하는, 전자 디바이스.
  3. 제1항 또는 제2항에 있어서, 복수의 기준 모듈을 포함하되, 상기 프로세서는 상기 요청에 응답하여 상기 복수의 기준 모듈 중에서 각각의 측정 가능한 출력에 대해 프롬프트되거나 프롬프트될 하나 이상의 기준 모듈을 선택하는, 전자 디바이스.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 기준 모듈은 상기 전자 디바이스의 기존 모듈인, 전자 디바이스.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 기준 모듈은 상기 측정 가능한 출력이 도출되는 적어도 하나의 아날로그 신호를 생성하는, 전자 디바이스.
  6. 제5항에 있어서, 상기 측정 가능한 출력은 적어도 하나의 디지털 신호인, 전자 디바이스.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서, 상기 바이어스는 상기 전자 디바이스에 고유한, 전자 디바이스.
  8. 제7항에 있어서, 상기 바이어스는 상기 기준 모듈에 고유한, 전자 디바이스.
  9. 제7항 또는 제8항에 있어서, 상기 바이어스는 하드웨어 바이어스인, 전자 디바이스.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서, 상기 기준 모듈은 카메라 모듈; 자이로스코프 모듈; 가속도계 모듈; 및 나침반 모듈 중 하나 이상을 포함하는, 전자 디바이스.
  11. 제10항에 있어서, 상기 카메라 모듈로부터 상기 측정 가능한 출력은 시간 순서의 일련의 디지털 이미지를 포함하는, 전자 디바이스.
  12. 제10항 또는 제11항에 있어서, 상기 자이로스코프 모듈로부터 상기 측정 가능한 출력은 시간 순서의 일련의 측정값을 포함하는, 전자 디바이스.
  13. 제12항에 있어서, 각각의 측정값은 상기 전자 디바이스가 정지 상태에 있는 동안 상기 자이로스코프 모듈에 의해 측정된 각가속도(angular acceleration)를 나타내는 각각의 디지털 신호인, 전자 디바이스.
  14. 제10항 내지 제13항 중 어느 한 항에 있어서, 상기 나침반 모듈로부터 상기 측정 가능한 출력은 시간 순서의 일련의 측정값을 포함하는, 전자 디바이스.
  15. 제14항에 있어서, 각각의 측정값은 상기 전자 디바이스가 정지 상태에 있는 동안 상기 나침반 모듈에 의해 측정된 배향을 나타내는 각각의 디지털 신호인, 전자 디바이스.
  16. 제10항 내지 제15항 중 어느 한 항에 있어서, 상기 가속도계 모듈은 복수의 가속도계를 포함하는, 전자 디바이스.
  17. 제16항에 있어서, 상기 가속도계는 각각의 직교축을 따라 측정값을 획득하는, 전자 디바이스.
  18. 제16항 또는 제17항에 있어서, 상기 특성화의 인스턴스는 상기 가속도계 각각으로부터 수신된 적어도 하나의 측정값으로부터 각각 도출된, 전자 디바이스.
  19. 제1항 내지 제18항 중 어느 한 항에 있어서, 상기 기준 모듈은 상기 측정 가능한 출력을 제공하기 위한 출력을 갖는 전자 회로를 포함하는, 전자 디바이스.
  20. 제19항에 있어서, 상기 전자 회로는 입력을 포함하고, 상기 측정 가능한 출력은 상기 입력에 인가된 미리 결정된 입력 신호에 대해 획득되는, 전자 디바이스.
KR1020207020042A 2017-12-13 2018-10-17 인증 데이터를 제공하기 위한 시스템 및 방법 그리고 이러한 시스템으로부터의 인증 요청에 응답하기 위한 전자 디바이스 KR20200109309A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AU2017904996 2017-12-13
AU2017904996A AU2017904996A0 (en) 2017-12-13 A system and method for providing data and more particularly to a system and method for providing authentication data for a user device operated by a user
PCT/AU2018/051125 WO2019113631A1 (en) 2017-12-13 2018-10-17 A system and method for providing authentication data and an electronic device for responding to an authentication request from such a system

Publications (1)

Publication Number Publication Date
KR20200109309A true KR20200109309A (ko) 2020-09-22

Family

ID=66818746

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207020042A KR20200109309A (ko) 2017-12-13 2018-10-17 인증 데이터를 제공하기 위한 시스템 및 방법 그리고 이러한 시스템으로부터의 인증 요청에 응답하기 위한 전자 디바이스

Country Status (5)

Country Link
US (1) US20200342088A1 (ko)
EP (1) EP3724795A4 (ko)
KR (1) KR20200109309A (ko)
AU (1) AU2018384075A1 (ko)
WO (1) WO2019113631A1 (ko)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9174123B2 (en) * 2009-11-09 2015-11-03 Invensense, Inc. Handheld computer systems and techniques for character and command recognition related to human movements
US8180208B2 (en) * 2010-05-19 2012-05-15 Eastman Kodak Company Identifying a photographer
EP3437005A1 (en) * 2016-03-31 2019-02-06 FotoNation Limited Biometric recognition system

Also Published As

Publication number Publication date
EP3724795A1 (en) 2020-10-21
AU2018384075A1 (en) 2020-07-30
WO2019113631A1 (en) 2019-06-20
US20200342088A1 (en) 2020-10-29
EP3724795A4 (en) 2021-10-06

Similar Documents

Publication Publication Date Title
US11888839B1 (en) Continuous authentication through orchestration and risk calculation post-authentication system and method
US11868039B1 (en) System and method for continuous passwordless authentication across trusted devices
US20220043897A1 (en) Method And Apparatus For Geographic Location Based Electronic Security Management
US10922631B1 (en) System and method for secure touchless authentication of user identity
US11943212B2 (en) Authentication through multiple pathways based on device capabilities and user requests
EP3365824B1 (en) Password-less authentication for access management
EP3365827B1 (en) End user initiated access server authenticity check
US10242362B2 (en) Systems and methods for issuance of provisional financial accounts to mobile devices
US10230736B2 (en) Invisible password reset protocol
US10032008B2 (en) Trust broker authentication method for mobile devices
US11252573B1 (en) System and method for rapid check-in and inheriting trust using a mobile device
JP7057283B2 (ja) アンチリプレイのシステム及び方法
US11329998B1 (en) Identification (ID) proofing and risk engine integration system and method
US11070556B2 (en) Context-based possession-less access of secure information
CN107113326A (zh) 基于规则的设备注册
CN105229596A (zh) 高级验证技术和应用
CN107211030B (zh) 使用智能图像反钓鱼的方法、系统、移动设备和介质
KR20200109309A (ko) 인증 데이터를 제공하기 위한 시스템 및 방법 그리고 이러한 시스템으로부터의 인증 요청에 응답하기 위한 전자 디바이스
WO2017135210A1 (ja) 計測システム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application