KR20150093781A - 리소스 요청에 대한 바코드 인증 - Google Patents

리소스 요청에 대한 바코드 인증 Download PDF

Info

Publication number
KR20150093781A
KR20150093781A KR1020157018135A KR20157018135A KR20150093781A KR 20150093781 A KR20150093781 A KR 20150093781A KR 1020157018135 A KR1020157018135 A KR 1020157018135A KR 20157018135 A KR20157018135 A KR 20157018135A KR 20150093781 A KR20150093781 A KR 20150093781A
Authority
KR
South Korea
Prior art keywords
token
client device
barcode
server
mobile device
Prior art date
Application number
KR1020157018135A
Other languages
English (en)
Other versions
KR101699733B1 (ko
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
Application filed by 인텔 코포레이션 filed Critical 인텔 코포레이션
Publication of KR20150093781A publication Critical patent/KR20150093781A/ko
Application granted granted Critical
Publication of KR101699733B1 publication Critical patent/KR101699733B1/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
    • 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/36User authentication by graphic or iconic representation
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/082Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying multi-factor authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/69Identity-dependent
    • H04W12/77Graphical identity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

클라이언트-서버 인증과 연관되는 모바일 디바이스, 클라이언트 디바이스 및 서버가 설명된다. 실시 형태들에서, 모바일 디바이스는 카메라 및 토큰 추출기를 포함할 수 있다. 토큰 추출기는 카메라에 연결될 수 있고 그 카메라에 의해 캡처되는 이미지를 분석하도록 구성될 수 있다. 캡처된 이미지는 바코드를 포함할 수 있고 리소스로의 액세스를 위한 서버의 요청에 응답하여 클라이언트 디바이스에 표시될 수 있다. 바코드는 서버로부터 요청되는 리소스로의 액세스를 얻기 위해 사용되는 토큰 추출기에 의해 추출될 수 있는 토큰을 포함할 수 있다. 다른 실시 형태들은 설명 및/또는 주장될 수 있다.

Description

리소스 요청에 대한 바코드 인증{BARCODE AUTHENTICATION FOR RESOURCE REQUESTS}
이 출원은 "리소스 요청에 대한 바코드 인증"이라는 명칭으로 2013년 2월 8일에 출원된 미국 출원 13/763,116에 대한 우선권을 주장한다.
본 개시의 실시 형태는 데이터 프로세싱의 분야와 관련되고, 특히, 바코드를 이용한 리소스 요청의 인증의 분야와 관련된다.
현재 온라인 리소스를 요청하는 사용자를 인증함에 있어서 활용되는 다수의 방법이 있다. 이들 방법은 비교적 작은 보안을 필요로 하는 것으로부터 추가적인 보안의 레벨을 필요로 하는 것까지 다양하다.
비교적 작은 보안을 필요로 하는 하나의 인증 방법은 사용자의 존재를 인증하기 위해 활용되는 시도-응답(challenge-response)으로 대표된다. 시도-응답 시나리오에서 사용자는 컴퓨터가 생성하기는 쉽지만 컴퓨터가 풀기는 어려운 시도를 제시받는다. 이것의 한 예는 단어 또는 문구의 비뚤어진 이미지가 시도로서 사용자에게 제시되고 사용자가 비뚤어진 이미지를 판독하고 응답하여, 사용자의 존재를 확인할 수 있는 흔히 사용되는 CAPTCHA 스크린이다. CAPTCHA와 같은 시도-응답 인증에 있어서의 문제는 멀웨어 공격에 취약하다는 것이다.
추가적인 보안의 레벨을 필요로 하는 인증 방법은 다중 요소 인증(multi-factor authentication)으로 대표된다. 다중 요소 인증에서는 사용자는 사용자가 갖고 있는 것, 즉 RSA 보안 ID fob에 더하여 사용자가 알고 있는 것, 즉 사용자네임 및 패스워드를 활용하여 통상 인증된다. 하지만, 이들 인증 방법은 중간자 공격(man in the middle attack)(MITM)에 의해 위험에 노출될 수 있다. 이 인증의 방법은 또한 RSA 보안 ID fob에 상주하는 동일한 알고리즘이 인증 서버에도 상주하여야 하고 두 알고리즘이 사용자를 제대로 인증하기 위해 동일한 시드 값상에서 동작하여야 한다는 사실이 문제가 된다. 이것은 불필요한 리던던시 및 비효율을 유발한다. 이 알고리즘이 양쪽에서 위험에 노출되는 경우에 양쪽의 디바이스에 있어서의 알고리즘은 변경되어야 한다.
도 1은 본 개시의 몇몇의 실시 형태들에 따른 예시적인 컴퓨팅 시스템을 나타낸다.
도 2는 본 개시의 몇몇의 실시 형태들에 따른 도 1의 컴퓨팅 시스템에 있어서의 서버의 예시적인 구성의 도면이다.
도 3은 본 개시의 몇몇의 실시 형태들에 따른 도 1의 컴퓨팅 시스템에 있어서의 모바일 디바이스의 한 가능한 구성의 도면이다.
도 4는 본 개시의 몇몇의 실시 형태들에 따른 도 1의 컴퓨팅 시스템에 있어서의 클라이언트 디바이스의 한 가능한 구성의 도면이다.
도 5는 본 개시의 몇몇의 실시 형태들에 따른 클라이언트 디바이스의 예시적인 리소스 요청의 플로차트이다.
도 6은 본 개시의 몇몇의 실시 형태들에 따른 서버의 예시적인 리소스 요청의 플로차트이다.
도 7은 본 개시의 몇몇의 실시 형태들에 따른 모바일 디바이스에서의 예시적인 토큰 추출의 플로차트이다.
도 8은 본 개시의 몇몇의 실시 형태들에 따른 예시적인 로그인 스크린을 나타낸다.
클라이언트-서버 인증과 연관되는 모바일 디바이스, 클라이언트 디바이스 및 서버가 설명된다. 실시 형태들에서, 모바일 디바이스는 카메라 및 토큰 추출기를 포함할 수 있다. 토큰 추출기는 카메라에 연결되어 카메라에 의해 캡처되는 이미지를 분석하도록 구성될 수 있다. 캡처된 이미지는 바코드를 포함할 수 있고 리소스에 액세스하기 위한 서버의 요청에 응답하여 클라이언트 디바이스에 표시될 수 있다. 바코드는 서버로부터 요청된 리소스로의 액세스를 얻기 위해 사용되는 토큰 추출기에 의해 추출될 수 있는 토큰을 포함할 수 있다. 예컨대, 요청된 리소스는 애플리케이션일 수 있고, 바코드는 퀵 리스폰스(QR) 코드일 수 있고, 모바일 디바이스는 스마트폰일 수 있다.
이하의 상세한 설명에서, 동일한 번호는 동일한 부분을 가리키는 본 명세서의 일부를 형성하는 첨부 도면이 참조되고, 실시될 수 있는 실시 형태가 예로서 도시된다. 본 개시의 범위로부터 벗어나는 일 없이 다른 실시 형태가 활용될 수 있고 구조적 또는 논리적 변경이 이루어질 수 있음이 이해되어야 한다. 따라서, 이하의 상세한 설명은 한정하는 의미로 받아들여지면 안 되고, 실시 형태의 범위는 첨부된 청구범위 및 그들의 등가물에 의해 규정된다.
다양한 동작은 청구되는 대상을 이해함에 있어서 가장 도움이 되는 방식으로 복수의 별개의 행동 또는 동작으로서 차례로 설명될 수 있다. 하지만, 설명의 순서는 이들 동작이 반드시 순서 의존적인 것을 의미하는 것으로 이해되어서는 안 된다. 특히, 이들 동작은 제시된 순서로 행해지지 않을 수 있다. 설명되는 동작은 설명되는 실시 형태와 상이한 순서로 행해질 수 있다. 다양한 추가적인 동작이 행해질 수 있고/있거나 설명되는 동작이 추가적인 실시 형태들에서 생략될 수 있다.
본 개시에 있어서, 문구 "A 및/또는 B"는 (A), (B), 또는 (A 및 B)를 의미한다. 본 개시에 있어서, 문구 "A, B, 및/또는 C"는 (A), (B), (C), (A 및 B), (A 및 C), (B 및 C), 또는 (A, B 및 C)를 의미한다. 설명은 동일한 또는 상이한 실시 형태 중 하나 이상을 각각 가리킬 수 있는 문구 "실시 형태에서" 또는 "실시 형태들에서"를 사용할 수 있다. 또한, 본 개시의 실시 형태에 대하여 사용되는 용어 "포함한다", "포함한다", "갖는다" 등은 동의어이다.
도 1은 본 개시의 실시 형태를 실행하기에 적합한 예시적인 컴퓨팅 장치를 나타낸다. 예시되는 바와 같이, 컴퓨팅 장치는 네트워크(108)를 통해서 클라이언트 디바이스(104)에 접속되는 서버(102)를 포함할 수 있다. 실시 형태들에서, 사용자는 서버(102)에 의해 또는 서버(102)를 통해서 제공되는 리소스를 요청하기 위해 클라이언트 디바이스(104)를 사용할 수 있다. 이 요청에 응답하여, 서버(102)는 토큰을 포함하는 바코드를 생성하고 인증에 사용되도록 클라이언트 디바이스에 그 바코드를 송신할 수 있다. 클라이언트 디바이스는, 바코드를 수신하면, 클라이언트 디바이스의 사용자에게 바코드를 표시할 수 있다.
실시 형태들에서, 모바일 디바이스(106)는 클라이언트 디바이스(104)에 표시되는, 이 도면에서 QR 코드로서 나타내어지는 바코드에 포함되는 데이터를 디코드하고, 요청된 리소스에 액세스 가능하게 하는 데에 사용되도록 토큰과 같은 디코드된 데이터의 적어도 일부를 출력하기 위해 사용될 수 있다. 몇몇의 실시 형태들에서, 모바일 디바이스(106)는 모바일 디바이스(106)에 특유한 방식으로 바코드에 포함되는 데이터를 디코드하기 위해 이전에 준비되었을 수 있고, 서버(102)는 대응하는 방식으로 바코드를 인코드하였을 수 있다. 몇몇의 실시 형태들에서, 서버(102)는 예컨대 모바일 디바이스(106) 및/또는 모바일 디바이스(106)의 사용자를 식별하는 디바이스 식별자 및/또는 사용자 식별자를 리소스에 대한 요청에서 건네받을 수 있다. 몇몇의 실시 형태들에서, 사용자 식별자는 테이블, 데이터베이스, 또는 서버(102)상에 로컬하게 또는 다른 서버상에 원격으로 저장되는 유사한 저장소에서 디바이스 식별자를 검색하기 위한 상호 참조로서 서버(102)에 의해 활용될 수 있다.
몇몇의 실시 형태들에서, 바코드는 요청된 리소스에 액세스할 권한을 가진 것으로 모바일 디바이스(106)의 사용자를 인증하는 척도로서 바코드의 디코딩 자체가 기능할 수 있도록 모바일 디바이스(106)에 특유한 방식으로 인코드될 수 있다. 예컨대, 몇몇의 실시 형태들에서, 요청된 리소스가 다중 요소 인증을 필요로 하는 경우, 사용자에 의해 입력되는 패스워드는 인증의 한 요소일 수 있는 한편 토큰을 추출하기 위해 모바일 디바이스(106)에 의해 바코드를 디코드하는 것 및 클라이언트 디바이스(104)에 그 토큰을 입력하는 것은 인증에 있어서 다음의 요소일 수 있다. 이 예에서, 권한 없는 사용자 또는 악의적인 컴퓨터 프로그램은, 권한 없는 사용자 또는 악의적인 컴퓨터 프로그램이 클라이언트 디바이스에 표시되는 바코드를 캡처할 수 있는 경우에도, 2차 인증에 필요한 정보를 추출할 수 없을 것이다.
몇몇의 실시 형태들에서, 모바일 디바이스 특유 인코딩은 사용자네임 및 패스워드 대신에 활용될 수 있다. 예컨대, 몇몇의 실시 형태들에서, 사용자는, 요청된 리소스에 액세스하기 위해 필요할 수 있는 모든 것이 바코드에 포함되는 토큰이 되도록, 요청된 리소스로 미리 로그인 방침을 설정하였을 수 있다. 몇몇의 실시 형태들에서, 특유 인코딩은 사용자가 요청된 리소스로의 패스워드를 잊어버린 경우에 사용될 수 있다. 이들 경우에 요청된 리소스로의 액세스를 얻고/얻거나 패스워드 변경을 시작하기 위해 토큰이 사용될 수 있다. 또한, 몇몇의 실시 형태들에서, 모바일 디바이스 특유 인코딩은, 권한 있는 사용자가 고정된(static) 패스워드를 암기할 필요가 없고 또한 권한 없는 사용자 또는 악의적인 컴퓨터 프로그램이 예컨대 무차별 대입 공격(brute force attack)을 통해서 패스워드를 풀려고 시도함으로써 리소스에 액세스할 수 없도록, 일회용 패스워드(one-time-password)(OTP)를 생성하기 위해 활용될 수 있다.
몇몇의 실시 형태들에서, 모바일 디바이스(106)에 특유한 방식으로 바코드를 인코드할 필요는 없을 수도 있다. 예컨대, 몇몇의 실시 형태들에서, 요청된 리소스가 사용자 존재 인증만을 필요로 하는 경우, 바코드는 모바일 디바이스(106)가 사전 준비 없이 바코드를 디코드 가능할 수 있도록 서버(102)에 의해 일반적으로 인코드될 수 있다. 이들 실시 형태들에서 토큰을 추출하기 위해 모바일 디바이스(106)에 의해 바코드를 디코드하는 행동은 일단 토큰이 클라이언트 디바이스(104)에 입력되면 사용자의 존재를 인증하기에 충분할 수 있다.
몇몇의 실시 형태들에서, 바코드는 요청된 리소스에 특유한 방식으로 인코드될 수 있다. 그러한 실시 형태들에서, 모바일 디바이스(106)는 요청된 리소스에 대한 바코드를 디코드하도록 준비될 수 있다. 몇몇의 실시 형태들에서, 요청된 리소스에 근거하여 바코드를 디코드하도록 디바이스를 준비시키는 것은 바코드를 디코드하기 위한 시도에 앞서서 모바일 디바이스(106)를 요청된 리소스에 등록함으로써 행해질 수 있다. 예컨대, 몇몇의 실시 형태들에서, 사용자는 모바일 디바이스(106)를 사용하여 서버(102)와 같은 서버에 접속함으로써 모바일 디바이스(106)를 등록할 수 있다. 접속에 응답하여, 서버(102)는 요청된 리소스 대신에 클라이언트 디바이스(104)에 의해 표시되는 바코드를 디코드하기 위해 나중에 사용될 디코딩 알고리즘을 모바일 디바이스(106)에 인스톨할 수 있다.
몇몇의 실시 형태들에서 리소스로의 액세스를 얻는 것과 연관되는 바코드의 디코딩을 가능하게 하기 위해 모바일 디바이스(106)를 등록할 필요가 없을 수 있다. 몇몇의 실시 형태들에서, 모바일 디바이스(106)는 전달 메커니즘으로서 임의의 종류의 컴퓨터 판독 가능 매체를 활용하여 적절한 디코딩 알고리즘 또는 키를 인스톨함으로써 준비될 수 있다.
몇몇의 실시 형태들에서, 바코드는 모바일 디바이스(106) 및 요청된 리소스의 양쪽에 특유한 방식으로 인코드될 수 있다. 몇몇의 실시 형태들에서, 바코드는 인코딩 방법에서 사용하기 위한 특유 식별자에 도달하기 위해, 요청된 리소스의 식별자 및 사용자 및/또는 모바일 디바이스(106)의 식별자의 양쪽을 활용함으로써 식별되는 방식으로 인코드될 수 있다. 몇몇의 실시 형태들에서, 상술한 바와 같이, 모바일 디바이스(106)는 바코드를 디코드하기에 앞서 모바일 디바이스(106)가 그러한 바코드를 디코드할 수 있게 하도록 준비될 수 있다.
모바일 디바이스(106)는, 몇몇의 실시 형태들에 따르면, 바코드가 어떤 요청된 리소스에 대하여 인코드되었는지 식별하기 위해 사용자로부터 입력을 받아들일 수 있다. 예컨대, 몇몇의 실시 형태들에서, 사용자는 모바일 디바이스(106)에서 준비된 리소스 알고리즘 또는 키의 리스트를 제시받을 수 있다. 이 리스트로부터 사용자는 요청와 연관되는 리소스를 선택할 수 있고, 따라서 바코드를 디코드하기에 적절한 알고리즘 또는 키를 선택할 수 있다. 몇몇의 실시 형태들에서, 요청된 리소스의 신원은 바코드의 일부분에 인코드되어, 이 일부분이 요청된 리소스의 지식을 갖지 않고서 디코드될 수 있도록 한다. 이들 경우에, 리소스의 디코드된 신원은 바코드의 나머지를 디코드하고 토큰을 추출하기 위한 적절한 알고리즘을 식별하기 위해 활용될 수 있는데, 이러한 토큰은 그 후 인증을 위해 사용되도록 클라이언트 디바이스(104)에 입력될 수 있다.
실시 형태들에서, 요청된 리소스는 서버(102)에 의해 제공될 수 있다. 다른 실시 형태들에서, 서버(102)는 중개자로서 기능하여, 리소스 요청을 수행하기 위한 리소스 서버(110)와 같은 하나 이상의 다른 서버에 리소스 요청을 라우팅할 수 있다. 몇몇의 실시 형태들에서, 서버(102)는 서버(102)가 요청된 리소스를 제공할 수 있는지 여부에 관계없이 요청된 인증을 행할 수 있다. 다른 실시 형태들에서, 인증은 요청된 리소스를 제공할 수 있는 하나의 리소스 서버(110)에 의해 행해질 수 있다.
몇몇의 실시 형태들에서, 요청된 리소스는 클라이언트 디바이스(104)와 서버(102)의 사이의 보안(secure) 접속일 수 있다. 이들 경우에 토큰은 암호화 키를 포함할 수 있다. 암호화 키는, 상술한 바와 같이, 모바일 디바이스(106)에 의해 디코드될 수 있고, 네트워크(108)를 통해서 서버(102)와 암호화된 송신을 보내고 받는 것에 있어서 클라이언트 디바이스(104)에 의해 활용되도록 클라이언트 디바이스(104)에 입력될 수 있다. 이들 경우에, 추출된 토큰의 입력 및 그 토큰으로 적절히 암호화된 메시지의 송신은 충분한 인증 메커니즘으로서 기능할 수 있다. 몇몇의 실시 형태들에서 토큰은 디피-헬맨(Diffie-Hellman) 암호화 키일 수 있다.
몇몇의 실시 형태들에서, 추출된 토큰은, 모바일 디바이스(106)의 사용자가 클라이언트 디바이스(104)에 수동으로 토큰을 입력할 수 있도록, 추출된 토큰을 영숫자 형식으로 표시함으로써 클라이언트 디바이스(104)에 입력될 수 있다. 다른 실시 형태들에서 토큰은 무선 데이터 접속을 통해서 클라이언트 디바이스(104)에 송신될 수 있다. 이 무선 데이터 접속은, 몇몇의 실시 형태들에서, 블루투스, 무선 USB, 또는 근거리 무선 통신(NFC) 채널, 또는 다른 무선 데이터 접속을 포함할 수 있지만 이것들로 한정되지 않는다.
클라이언트 디바이스(104)는 도 1에서 랩톱 컴퓨터로서 도시되지만, 본 개시의 범위로부터 벗어나는 일 없이, 클라이언트 디바이스(104)의 기능을 행할 수 있는 임의의 적합한 컴퓨팅 디바이스가 사용될 수 있음이 이해될 것이다. 그러면 클라이언트 디바이스(104)는 랩톱 컴퓨터, 데스크톱 컴퓨터, 핸드헬드 컴퓨팅 디바이스, 키오스크와 같은 공공 포털(public portal), 단말, 크레딧 카드 결제를 받아들이기 위한 체크아웃 라인에서 사용되는 것, 또는 도 8에 도시되는 것과 같은 로그인 스크린 또는 바코드를 표시할 수 있는 임의의 다른 디바이스를 포함하지만 이것들로 한정되지 않는 휴대용 또는 비휴대용 컴퓨팅 디바이스일 수 있음이 이해될 것이다. 네트워크(108)는 근거리 통신망(LAN), 광역 통신망(WAN), 셀룰러 네트워크, 및 인터넷을 포함하지만 이것들로 한정되지 않는 임의의 타입의 유선 또는 무선 네트워크일 수 있다. 필요한 데이터를 송신하기에 적합한 임의의 네트워크는 이 개시의 범위로부터 벗어나는 일 없이 사용될 수 있다. 네트워크(108)는 이 개시의 범위로부터 벗어나는 일 없이 하나 이상의 유선 및/또는 무선 네트워크를 포함할 수 있음이 또한 이해될 것이다. 이 개시는 네트워크의 타입 및/또는 구성에 상관없이 동일하게 적용할 수 있다.
도 2는 개시의 몇몇의 실시 형태들에 따른 서버(102)의 예시적인 구성을 도시한다. 서버(102)는 프로세서(들)(200), 네트워크 인터페이스 카드(들)(NIC)(202) 및 스토리지(204)를 포함할 수 있다. 프로세서(들)(200), NIC(202) 및 스토리지(204)는 시스템 버스(206)를 활용하여 서로 모두 연결될 수 있다.
프로세서(들)(200)는, 몇몇의 실시 형태들에서, 단일 프로세서일 수 있거나, 다른 실시 형태들에서, 복수의 프로세서를 포함할 수 있다. 몇몇의 실시 형태들에서 복수의 프로세서는 동일한 타입, 즉 동종일 수 있거나, 상이한 타입, 즉 이종일 수 있고 임의의 타입의 싱글코어 또는 멀티코어 프로세서를 포함할 수 있다. 이 개시는 프로세서의 타입 및/또는 수에 상관없이 동일하게 적용할 수 있다.
실시 형태들에서, NIC(202)는 네트워크(108)에 액세스하기 위해 서버(102)에 의해 사용될 수 있다. 실시 형태들에서, NIC(202)는 클라이언트 디바이스(104)로부터의 요청을 수신하거나 이 요청에 응답하기 위해 사용될 수 있다. 실시 형태들에서, NIC(202)는 유선 또는 무선 네트워크에 액세스하기 위해 사용될 수 있고, 이 개시는 동일하게 적용할 수 있다. NIC(202)는 또한, 문맥이 그 밖의 경우를 분명하게 나타내지 않는 한, 본 명세서에서 이 개시를 위해 동의어로 생각될 수 있는 네트워크 어댑터, LAN 어댑터, 또는 무선 NIC로 불릴 수 있고, 따라서 그 용어는 서로 대체하여 사용될 수 있다.
실시 형태들에서, 스토리지(204)는 임의의 타입의 컴퓨터 판독 가능 스토리지 매체 또는 상이한 타입의 컴퓨터 판독 가능 스토리지 매체의 임의의 조합일 수 있다. 예컨대, 실시 형태들에서, 스토리지(204)는 솔리드 스테이트 드라이브(SSD), 자기 또는 광학 디스크 하드 드라이브, 휘발성 또는 비휘발성, 다이내믹 또는 스태틱 랜덤 액세스 메모리, 플래시 메모리, 또는 그것들의 임의의 복수 또는 조합을 포함할 수 있지만 이것들로 한정되지 않는다. 실시 형태들에서, 스토리지(204)는 프로세서(들)(200)에 의해 실행될 때에 서버(102)가 도 6을 참조하여 이하에 설명되는 프로세스의 하나 이상의 동작을 행하게 하는 명령을 저장할 수 있다. 몇몇의 실시 형태들에서, 스토리지(204)는 사용자 식별자를 적절한 모바일 디바이스 식별자와 상호 참조하는 테이블과 같은 레코드의 데이터베이스를 포함할 수 있다.
도 3은 본 개시의 몇몇의 실시 형태들에 따른 도 1의 컴퓨팅 시스템에 있어서의 모바일 디바이스(106)의 한 가능한 구성을 도시한다. 모바일 디바이스(106)는 카메라(302)에 연결되는 토큰 추출기(300)를 포함할 수 있다. 몇몇의 실시 형태들에서, 모바일 디바이스(106)는 또한 그 각각 또는 양쪽이 토큰 추출기(300)에 연결될 수 있는 디스플레이(304) 및/또는 근거리 무선 통신(NFC) 송수신기(306)를 포함할 수 있다.
토큰 추출기(300)는, 몇몇의 실시 형태들에서, 하나 이상의 컴퓨터 판독 가능 스토리지 매체에 연결되는 하나 이상의 프로세서를 포함할 수 있다. 하나 이상의 컴퓨터 판독 가능 스토리지 매체는 하나 이상의 프로세서에 의해 실행될 때에 모바일 디바이스(106)가 도 7을 참조하여 이하에 설명되는 프로세스들 중 하나 이상을 행하게 할 수 있는 명령을 포함할 수 있다. 다른 실시 형태들에서, 토큰 추출기(300)는 모바일 디바이스(106)가 도 7을 참조하여 이하에 설명되는 하나 이상의 프로세스를 행하게 하는 임의의 수의 하드웨어 및/또는 소프트웨어 컴포넌트로 이루어질 수 있다.
하나 이상의 프로세서는 임의의 타입의 싱글코어 또는 멀티코어 프로세서, 또는 그 임의의 조합일 수 있다. 이 개시는 프로세서의 타입 및/또는 수에 상관없이 동일하게 적용할 수 있다. 카메라(302), 디스플레이(304), 및/또는 NFC 송수신기(306)는 모바일 디바이스(106)에 모두 포함될 수 있거나, 이들 컴포넌트의 하나 이상은 본 개시의 범위로부터 벗어나는 일 없이 모바일 디바이스(106)에 주변적으로(peripherally) 부착될 수 있다.
도 4는 본 개시의 몇몇의 실시 형태들에 따른 도 1의 컴퓨팅 시스템에 있어서의 클라이언트 디바이스(104)의 한 가능한 구성을 도시한다. 클라이언트 디바이스(104)는 하나 이상의 프로세서(400), 메모리(402), 네트워크 인터페이스 카드(NIC)(406), 및 디스플레이(408)를 포함할 수 있다. 몇몇의 실시 형태들에서, 모바일 디바이스(106)는 또한 근거리 무선 통신(NFC) 송수신기(404)를 포함할 수 있다. 이들 컴포넌트의 모두는 버스(410)를 통해서 서로 연결될 수 있다.
2개 이상의 프로세서를 갖는 실시 형태들에서, 프로세서는 동일한 타입, 즉 동종일 수 있거나, 상이한 타입, 즉 이종일 수 있다. 또한, 하나 이상의 프로세서는 임의의 타입의 싱글코어 또는 멀티코어 프로세서일 수 있다. 이 개시는 프로세서의 타입 및/또는 수에 상관없이 동일하게 적용할 수 있다.
실시 형태들에서, NIC(402)는 네트워크(108)에 액세스하기 위해 클라이언트 디바이스(104)에 의해 사용될 수 있다. 실시 형태들에서, NIC(402)는 요청을 보내고/보내거나 서버(102)로부터 응답을 수신하기 위해 사용될 수 있다. 실시 형태들에서, NIC(402)는 유선 또는 무선 네트워크에 액세스하기 위해 사용될 수 있고, 이 개시는 동일하게 적용할 수 있고 이 개시는 그렇게 한정되지 않는다. NIC(402)는 또한, 문맥이 그 밖의 경우를 분명하게 나타내지 않는 한, 본 명세서에서 이 개시를 위해 동의어로 생각될 수 있는 네트워크 어댑터, LAN 어댑터, 또는 무선 NIC로 불릴 수 있다. 따라서, 이들 용어는 서로 대체하여 사용될 수 있다.
실시 형태들에서, 메모리(402)는 임의의 타입의 컴퓨터 판독 가능 스토리지 매체 또는 상이한 타입의 컴퓨터 판독 가능 스토리지 매체의 임의의 조합일 수 있다. 예컨대, 실시 형태들에서, 메모리(402)는 솔리드 스테이트 드라이브(SSD), 자기 디스크 하드 드라이브, 휘발성 또는 비휘발성, 다이내믹 또는 스태틱 랜덤 액세스 메모리, 플래시 메모리, 또는 그것들의 임의의 복수 또는 조합을 포함할 수 있지만 이것들로 한정되지 않는다. 실시 형태들에서, 메모리(402)는 프로세서(400)에 의해 실행될 때에 클라이언트 디바이스(104)가 도 5를 참조하여 이하에 설명되는 프로세스의 하나 이상의 동작을 행하게 할 수 있는 명령을 저장할 수 있다.
도 5는 본 개시의 몇몇의 실시 형태들에 따른 클라이언트 디바이스(104)의 예시적인 리소스 요청의 플로차트를 도시한다. 실시 형태들에서, 프로세스는 클라이언트 디바이스(104)가 리소스를 요청하는 입력을 수신할 수 있는 블록(500)에서 시작할 수 있다. 몇몇의 실시 형태들에서, 이 입력은 사용자로부터 수신될 수 있다. 다른 실시 형태들에서, 이 입력은 리소스로의 액세스를 요청하는 애플리케이션으로부터 수신될 수 있다. 실시 형태들에서, 요청되는 리소스는 애플리케이션, 웹사이트, 웹 서비스 또는 보안 데이터 접속을 포함할 수 있지만 이것들로 한정되지 않는다.
블록(502)에서 클라이언트 디바이스(104)는 서버(102)의 리소스 요청을 작성함에 있어서 송신할 정보를 생성할 수 있다. 이것은, 몇몇의 실시 형태들에서, 블록(500)에서 수신된 입력으로부터 유니폼 리소스 로케이터(URL), IP 어드레스 등과 같은 요청된 리소스의 식별자를 추출하는 것을 포함할 수 있다. 몇몇의 실시 형태들에서, 이것은 블록(500)에서 수신된 입력으로부터 사용자 및/또는 모바일 디바이스 식별자를 추출하는 것을 포함할 수 있다. 다른 실시 형태들에서, 클라이언트 디바이스(104)는 메모리(402)로부터 사용자 식별자 및/또는 모바일 디바이스(106) 식별자를 검색할 수 있다. 몇몇의 실시 형태들에서, 클라이언트 디바이스(104)는 사용자 식별자 및/또는 모바일 디바이스 식별자를 위해 사용자에게 프롬프트할 수 있다.
예로서, 몇몇의 실시 형태들에서, 클라이언트 디바이스(104)가 리소스를 요청하는 입력을 수신하는 때, 클라이언트 디바이스(104)는 클라이언트 디바이스(104)의 메모리(402)에 저장된 쿠키로부터 사용자 및/또는 모바일 디바이스의 식별자를 검색하려고 시도할 수 있다. 사용자 및/또는 모바일 디바이스의 식별자가 검색될 수 없는 경우, 즉 적절한 쿠키가 메모리(402)에 저장되지 않은 경우, 사용자 및/또는 모바일 디바이스의 적절한 식별자를 입력하도록 사용자에게 프롬프트할 수 있다.
블록(504)에서, 리소스 요청은 요청된 리소스의 식별자와 함께 서버(102)에 포워딩될 수 있다. 실시 형태들에서, 서버(102)에 포워딩되는 리소스 요청은 또한 사용자 및/또는 모바일 디바이스의 식별자를 포함할 수 있다. 몇몇의 실시 형태들에서, 서버(102)는 요청된 리소스를 위해 사용자 및/또는 모바일 디바이스의 식별자를 필요로 할 수 있고, 그러한 식별자가 요청에 포함되지 않거나 또는 서버(102)에 사용 가능하지 않는 경우에 서버(102)는 클라이언트 디바이스(104)에 사용자 및/또는 모바일 디바이스의 식별자를 요청하는 요청을 클라이언트 디바이스(104)에 보낼 수 있다.
블록(506)에서, 클라이언트 디바이스(104)는 서버(102)로부터 QR 코드와 같은 바코드를 수신할 수 있다. 몇몇의 실시 형태들에서, 바코드는 도 8에 도시되는 것과 같은 로그인 스크린에 임베딩될 수 있다. 몇몇의 실시 형태들에서, 바코드는 서버(102)에 의해 송신되는 임의의 다른 데이터로부터 분리되어 수신될 수 있다. 도 1을 참조하여 상술한 바와 같이, 바코드의 인코딩은, 몇몇의 실시 형태들에서, 요청된 리소스 및/또는 사용자 및/또는 모바일 디바이스의 식별자에 의존할 수 있다.
블록(508)에서 클라이언트 디바이스(104)는 디스플레이(408)에 바코드를 표시할 수 있다. 몇몇의 실시 형태들에서, 클라이언트 디바이스(104)는 Intel의 보호된 오디오 비디오 경로(protected audio video path)(PAVP)를 포함하지만 이것으로 한정되지 않는 보안 디스플레이 채널을 활용하여 바코드를 표시할 수 있다. 그러면 사용자는 도 1을 참조하여 상술한 바와 같이 바코드를 디코드하고 토큰을 추출하기 위해 모바일 디바이스(106)를 활용할 수 있다.
바코드가 디코드되고 토큰이 추출되면, 모바일 디바이스(106)는 추출된 토큰을 클라이언트 디바이스(104)에 출력할 수 있다. 블록(510)에서 클라이언트 디바이스(104)는 입력으로서 토큰을 수신할 수 있다. 도 1을 참조하여 상술한 바와 같이, 토큰은 클라이언트 디바이스(104)에 수동으로 입력될 수 있거나 모바일 디바이스(106)와 클라이언트 디바이스(104)의 사이에서 유선 또는 무선 데이터 접속을 통해서 송신될 수 있다. 그러면 클라이언트 디바이스(104)는 블록(512)에서 서버(102)에 입력 토큰을 송신할 수 있다. 그 후, 서버(102)는, 적어도 부분적으로, 추출된 토큰에 근거하여 리소스 요청을 인증할 수 있다. 그 후, 블록(514)에서, 클라이언트 디바이스(104)는 인증의 성공 여부에 따라서 요청된 리소스로의 액세스의 승인 또는 거부를 수신할 수 있다.
도 6은 본 개시의 몇몇의 실시 형태들에 따른 서버(102)의 예시적인 리소스 요청의 플로차트이다. 실시 형태들에서, 처리는 도 5의 블록(504)에서 클라이언트 디바이스(104)에 의해 송신되는 것과 같은 클라이언트 디바이스(104)로부터의 리소스에 대한 요청을 서버(102)가 수신할 수 있는 블록(600)에서 시작할 수 있다. 실시 형태들에서, 이 요청은 요청된 리소스의 식별자를 포함할 수 있다. 몇몇의 실시 형태들에서 이 요청은 또한 사용자 및/또는 모바일 디바이스의 식별자를 포함할 수 있다.
블록(602)에서, 서버(102)는 수신된 요청로부터 리소스 식별자를 추출할 수 있다. 몇몇의 실시 형태들에서, 서버(102)는 사용자 및/또는 모바일 디바이스의 식별자를 또한 추출할 수 있는데, 이 경우 그러한 식별자는 해당 요청에 포함되어 있다. 서버(102)는 블록(604)에서 토큰을 생성할 수 있다. 몇몇의 실시 형태들에서, 토큰은 미리 결정된 시간 동안 및/또는 한 번의 사용(single use)에 대해서만 유효할 수 있다. 블록(606)에서 토큰은 바코드에 인코드될 수 있다. 바코드는 임의의 포맷으로 인코드될 수 있고, QR 코드를 포함하지만 이것으로 한정되지 않는 임의의 타입의 1차원 또는 2차원 바코드일 수 있다. 도 1을 참조하여 상술한 바와 같이 바코드는 일반적인 방식으로 인코드될 수 있거나, 또는 요청된 리소스 및/또는 모바일 디바이스(106)에 특유한 방식으로 인코드될 수 있다. 몇몇의 실시 형태들에서, 바코드는 모바일 디바이스(106)에 대하여 서버(102)를 검증하기 위해 서버에 의해 서명될 수 있다.
그 후 바코드는, 블록(608)에서, 클라이언트 디바이스(104)에 송신될 수 있고, 클라이언트 디바이스(104)의 사용자에게 표시될 수 있다. 그러면 사용자는 모바일 디바이스(106)를 활용하여 바코드를 디코드하는데, 이 모바일 디바이스(106)는 바코드로부터 토큰을 추출하고, 클라이언트 디바이스(104)에 입력되어 블록(610)에서 인증을 위해 서버(102)에 보내지도록 해당 토큰을 출력한다. 인증의 성공 여부에 근거하여, 서버(102)는, 블록(612)에서, 요청된 리소스로의 액세스를 승인 또는 거부할 수 있다. 몇몇의 실시 형태들에서, 상술한 바와 같이, 모바일 디바이스(106)는 바코드를 디코드하도록 특별히 준비될 수 있고 그러한 특별히 준비된 모바일 디바이스만이 바코드를 디코드할 수 있다.
도 7은 본 개시의 몇몇의 실시 형태들에 따른 모바일 디바이스(106)에서의 토큰 추출의 예시적인 프로세스 흐름을 도시한다. 프로세스는 클라이언트 디바이스(104)에 표시되는 이미지가 스캔될 수 있는 블록(700)에서 시작할 수 있다. 그 후 블록(702)에서 스캔된 이미지로부터 바코드가 추출될 수 있다. 그 후 블록(704)에서 모바일 디바이스(106)는 바코드를 디코드할 수 있다. 몇몇의 실시 형태들에서, 바코드를 디코드하기 전에 모바일 디바이스(106)에 의해 패스워드 또는 개인 식별 번호(PIN)가 요청될 수 있다. 도 1을 참조하여 상술한 바와 같이, 이 디코딩은 일반적일 수 있거나 또는 모바일 디바이스 및/또는 리소스에 특유한 것일 수 있다. 그 후 블록(706)에서, 모바일 디바이스(106)는 디코드된 바코드로부터 토큰을 추출할 수 있다. 몇몇의 실시 형태들에서, 토큰은 디코드된 데이터를 분석함으로써 추출될 수 있다. 그 후 토큰은 모바일 디바이스(106)에 의해 출력될 수 있다. 몇몇의 실시 형태들에서 토큰은 사용자에 의해 클라이언트 디바이스(104)에 수동으로 입력될 수 있도록 영숫자 형식으로 토큰을 표시함으로써 출력될 수 있다. 몇몇의 실시 형태들에서, 토큰은 모바일 디바이스(106)와 클라이언트 디바이스(104)의 사이에서 유선 또는 무선 데이터 접속을 통해서 출력될 수 있다. 디코딩이 모바일 디바이스(106)에 특유한 것일 수 있는 실시 형태들에서, 권한 없는 사용자/디바이스 또는 악의적인 컴퓨터 프로그램은 2차 인증에 필요한 정보를 추출할 수 없을 것이다. 이것은, 권한 없는 사용자/디바이스 또는 악의적인 컴퓨터 프로그램이 클라이언트 디바이스(104)에 표시되는 바코드를 캡처할 수 있는 경우에도 도 1을 참조하여 상술한 바와 같이 바코드를 디코드할 수 있도록 준비되지 않았을 것이기 때문이다.
도 8은 본 개시의 몇몇의 실시 형태들에 따른 예시적인 로그인 스크린(800)을 도시한다. 몇몇의 실시 형태들에서, 로그인 스크린(800)은 서버(102)에서 생성될 수 있고 클라이언트 디바이스(104)에 표시될 수 있다. 몇몇의 실시 형태들에서, 바코드(810)는 Intel의 보호된 오디오 비디오 경로(PAVP), ARM Limited Corporation의 TrustZone, 또는 다른 형태의 그래픽 프로세싱 유닛 콘텐츠 프로텍션(GPU-CP)를 활용하여 디스플레이 섹션(808)에 표시될 수 있다. 몇몇의 실시 형태들에서, 바코드(810)는 바코드를 디코드하고 디코드된 바코드로부터 토큰을 추출하기 위해 모바일 디바이스(106)를 사용할 수 있는 사용자에게 표시될 수 있다. 사용자는, 몇몇의 실시 형태들에서, 추출된 토큰을 토큰 입력 박스(812)에 입력할 수 있다. 대신에, 몇몇의 실시 형태들에서, 사용자는 추출된 토큰을 입력하는 데에 근거리 무선 통신(NFC) 데이터 접속을 활용하기 위해 NFC 버튼(804)을 클릭함으로써 추출된 토큰을 입력하도록 선택할 수 있다. 다른 실시 형태들에서 사용자는 NFC를 통해서 토큰을 전송하기 위해 단지 클라이언트 디바이스의 일부분으로 모바일 디바이스(106)를 탭할 필요가 있을 수 있다. 몇몇의 실시 형태들에서 사용자 식별자 및/또는 모바일 디바이스 식별자는 웹 브라우저의 쿠키에 포함될 수 있다. 몇몇의 실시 형태들에서 쿠키 내의 식별자는 클라이언트 디바이스(104)의 현재의 사용자에 대응하지 않을 수 있고 사용자는 사용자 변경 버튼(806)을 클릭함으로써 현재의 사용자 및/또는 모바일 디바이스에 대응하는 새로운 식별자를 입력할 필요가 있을 수 있다. 클라이언트 디바이스(104)에 토큰을 입력한 후, 사용자는 인증을 위해 서버(102)에 토큰을 제출하기 위해 로그인 버튼(802)을 활성화시킬 수 있다. 그 인증의 결과에 근거하여 사용자는 요청된 리소스로의 액세스가 승인 또는 거부될 수 있다.
개시의 실시 형태들은 완전한 하드웨어 실시 형태, 완전한 소프트웨어 실시 형태 또는 하드웨어 및 소프트웨어 요소를 모두 포함하는 실시 형태의 형태를 취할 수 있다. 다양한 실시 형태들에서, 소프트웨어는 펌웨어, 상주 소프트웨어, 마이크로코드 등을 포함할 수 있지만 이것들로 한정되지 않는다. 또한, 개시는 컴퓨터 또는 임의의 명령 실행 시스템에 의해 사용되거나 또는 이들과 관련되는 프로그램 코드를 제공하는 컴퓨터 사용 가능 매체 또는 컴퓨터 판독 가능 매체로부터 액세스가 가능한 컴퓨터 프로그램 제품의 형태를 취할 수 있다.
이 개시를 위해, 컴퓨터 사용 가능 매체 또는 컴퓨터 판독 가능 매체는 명령 실행 시스템, 장치, 또는 디바이스에 의해 사용되거나 또는 이들과 관련되는 프로그램을 포함, 저장, 통신, 전파, 또는 수송할 수 있는 임의의 장치일 수 있다. 매체는 전자, 자기, 광학, 전자기, 적외선, 또는 반도체 시스템(또는 장치 또는 디바이스) 또는 전파 매체일 수 있다. 컴퓨터 판독 가능 매체의 예는 반도체 또는 솔리드 스테이트 메모리, 자기 테이프, 제거 가능한 컴퓨터 디스켓, 랜덤 액세스 메모리(RAM), 리드 온리 메모리(ROM), 강성(rigid) 자기 디스크 및 광학 디스크를 포함한다. 광학 디스크의 현재의 예는 콤팩트 디스크-리드 온리 메모리(CD-ROM), 콤팩트 디스크-리드/라이트(CD-R/W) 및 DVD를 포함한다.
따라서, 본 명세서에 설명된 것은 모바일 디바이스 및 적어도 하나의 컴퓨터 판독 가능 스토리지 매체를 포함한다. 실시 형태들에서, 모바일 디바이스는 카메라 및 카메라와 연결되는 토큰 추출기를 포함할 수 있다. 토큰 추출기는 클라이언트 디바이스의 디스플레이로부터 카메라에 의해 캡처되는 이미지를 분석하도록 구성될 수 있고, 그 이미지로부터 바코드를 추출할 수 있다. 바코드는 토큰을 포함할 수 있고, 리소스에 액세스하기 위한 클라이언트 디바이스의 요청에 응답하여 클라이언트 디바이스에 표시될 수 있다. 토큰 추출기는 바코드에 포함되는 토큰을 추출하도록 또한 구성될 수 있고, 리소스로의 요청된 액세스를 얻기 위해 토큰이 사용될 수 있게 한다.
몇몇의 실시 형태들에서, 모바일 디바이스는 메모리 및 그 메모리와 카메라에 연결되는 프로세서를 포함할 수 있다. 토큰 추출기는 메모리에 상주할 수 있고 프로세서에 의해 실행될 수 있다. 몇몇의 실시 형태들에서, 모바일 디바이스는 요청된 리소스로의 액세스를 얻기 위해 사용자가 토큰을 사용하게 하기 위한 토큰 추출기의 실행에 앞서서 사용자를 인증하도록 구성되는 인증 모듈을 또한 포함할 수 있다.
실시 형태들에서, 토큰 추출기는 바코드를 디코드하여 바코드로부터 데이터를 얻기 위해 리소스와 연관되는 알고리즘을 사용하여 바코드에 포함되는 토큰을 추출하도록 또한 구성될 수 있다. 토큰 추출기는 상기 데이터로부터 토큰을 추출할 수 있다.
실시 형태들에서, 모바일 디바이스는 또한 토큰 추출기와 연결되는 근거리 무선 통신(NFC) 송수신기를 포함할 수 있다. 토큰 추출기는 토큰의 사용이 리소스로의 요청된 액세스를 얻게 하기 위해 NFC 송수신기를 통해서 클라이언트 디바이스에 토큰을 송신하도록 구성될 수 있다. 몇몇의 실시 형태들에서, 토큰 추출기는, 토큰의 사용이, 클라이언트 디바이스로의 토큰의 사용자 입력을 통해서, 요청된 리소스로의 액세스를 얻게 하기 위해, 추출된 토큰을 표시하도록 구성될 수 있다. 몇몇의 실시 형태들에서 바코드는 매트릭스 바코드일 수 있다. 몇몇의 실시 형태들에서 바코드는 QR 코드일 수 있다. 몇몇의 실시 형태들에서, 요청된 리소스는 애플리케이션일 수 있다.
실시 형태들에서, 적어도 하나의 컴퓨터 판독 가능 스토리지 매체는 클라이언트 디바이스에 의해 실행될 때에 클라이언트가 리소스로의 액세스를 위한 요청을 서버에 송신하게 하는 명령을 포함할 수 있다. 요청은 모바일 디바이스를 식별하는 식별자를 포함할 수 있다. 명령은, 클라이언트 디바이스에 의해 실행될 때에, 응답에 있어서의 바코드에 포함되는 토큰이 디코드되게 하기 위해, 클라이언트 디바이스가 서버로부터의 응답을 클라이언트 디바이스의 디스플레이에 표시하게 할 수 있다. 그러면 토큰은 클라이언트 디바이스를 인증하기 위해 서버에 송신될 수 있다. 바코드는 모바일 디바이스를 디코딩 디바이스로서 식별하는 식별자에 적어도 부분적으로 근거하여 인코드될 수 있다. 몇몇의 실시 형태들에서, 식별자는 쿠키의 형태로 클라이언트 디바이스에 저장된다.
실시 형태들에서, 명령은 또한, 클라이언트 디바이스에 의해 실행될 때에, 클라이언트 디바이스가 토큰을 입력으로서 받아들이고 토큰을 서버에 송신하게 할 수 있다. 실시 형태들에서, 명령은 또한, 클라이언트에 의해 실행될 때에, 클라이언트 디바이스가 클라이언트 디바이스의 근거리 무선 통신 송수신기를 통해서 토큰을 입력으로서 받아들이게 할 수 있다.
실시 형태들에서, 명령은 또한, 클라이언트 디바이스에 의해 실행될 때에, 클라이언트 디바이스가 클라이언트 디바이스의 디스플레이로의 보안 채널을 통해서 클라이언트 디바이스의 디스플레이에 바코드를 표시하게 할 수 있다. 몇몇의 실시 형태들에서, 보안 채널은 보호된 오디오 비디오 경로(PAVP)일 수 있다.
실시 형태들에서, 리소스는 서버와 클라이언트 디바이스의 사이의 보안 데이터 채널일 수 있다. 바코드로 송신되는 토큰은 서버에 송신되는 데이터를 암호화하고 보안 데이터 채널을 통해서 서버로부터 수신되는 데이터를 해독하기 위해 클라이언트 디바이스에 의해 활용되는 암호 키일 수 있다. 몇몇의 실시 형태들에서, 암호 키는 디피-헬맨 키일 수 있다.
실시 형태들에서, 적어도 하나의 컴퓨터 판독 가능 스토리지 매체는, 서버에 의한 실행에 응답하여, 리소스에 액세스하기 위한 요청을 클라이언트 디바이스로부터 수신하도록 서버를 구성하는 명령을 포함할 수 있다. 명령은, 서버에 의한 실행에 응답하여, 요청에 응답하여, 토큰을 포함하는 바코드를 생성하고 클라이언트 디바이스에 바코드를 송신하도록 서버를 구성할 수 있다. 바코드는 토큰이 카메라를 갖는 모바일 디바이스에 의해 추출되게 하기 위해 클라이언트 디바이스에 표시될 수 있고, 서버가 요청된 액세스를 승인하게 하도록, 클라이언트 디바이스의 사용자를 서버에 인증하기 위해 활용될 수 있다.
실시 형태들에서, 명령은, 서버에 의해 실행될 때에, 응답을 클라이언트 디바이스로부터 수신하고, 응답이 토큰을 포함하는지 여부를 결정하고, 결정의 결과에 적어도 부분적으로 근거하여 요청된 액세스를 승인 또는 거부하도록 서버를 구성할 수 있다. 실시 형태들에서, 토큰을 포함하는 바코드를 생성하기 위한 명령은 또한, 서버가 명령을 실행하면, 모바일 디바이스에 특유한 방식으로, 토큰을 갖는 바코드를 인코드하도록 서버를 구성할 수 있다. 실시 형태들에서, 요청은 모바일 디바이스의 식별자를 더 포함할 수 있고, 모바일 디바이스 및 요청된 리소스의 양쪽에 특유한 포맷은 적어도 부분적으로 식별자에 근거할 수 있다.
실시 형태들에서, 명령은 또한, 서버에 의해 실행될 때에, 요청된 리소스에 액세스하기 위한 로그인 페이지를 생성하도록 서버를 구성한다. 로그인 페이지는 적어도 바코드를 포함할 수 있고, 클라이언트 디바이스에 바코드를 송신하는 것은 사용자에게 표시될 수 있는 포맷으로 클라이언트 디바이스에 로그인 페이지를 송신하는 것을 더 포함한다.
몇몇의 실시 형태들에서, 바코드는 매트릭스 바코드일 수 있다. 추가적인 실시 형태들에서, 바코드는 QR 코드일 수 있다. 몇몇의 실시 형태들에서, 요청된 리소스는 애플리케이션일 수 있다. 몇몇의 실시 형태들에서, 토큰은 일회용 패스워드(OTP)일 수 있다.
특정한 실시 형태들이 본 명세서에 예시 및 설명되었지만, 각종 대체적 및/또는 동등한 구현이 개시의 실시 형태들의 범위로부터 벗어나는 일 없이 도시 및 설명된 특정한 실시 형태들에 대하여 대체될 수 있음이 당업자에 의해 이해될 것이다. 이 출원은 본 명세서에 논의되는 실시 형태들의 임의의 적응 또는 변형을 커버하도록 의도된다. 따라서, 개시의 실시 형태들은 청구범위 및 그 등가물에 의해서만 한정되는 것이 명백하게 의도된다.

Claims (25)

  1. 바코드로부터 토큰을 추출하는 모바일 디바이스로서,
    카메라와,
    상기 카메라와 연결된 토큰 추출기
    를 포함하고,
    상기 토큰 추출기는 클라이언트 디바이스의 디스플레이로부터 상기 카메라에 의해 캡처되는 이미지를 분석하여 상기 이미지로부터 바코드를 추출하고―상기 바코드는 토큰을 포함하고, 리소스에 액세스하기 위한 상기 클라이언트 디바이스의 요청에 응답하여 상기 클라이언트 디바이스에 표시됨―, 상기 바코드에 포함된 상기 토큰을 추출하고, 상기 리소스로의 요청된 액세스를 얻기 위해 상기 토큰이 사용되게 하도록 구성되는
    모바일 디바이스.
  2. 제 1 항에 있어서,
    상기 모바일 디바이스는,
    메모리와,
    상기 메모리 및 상기 카메라에 연결된 프로세서
    를 더 포함하고,
    상기 토큰 추출기는 상기 메모리에 상주하고 상기 프로세서에 의해 실행되는
    모바일 디바이스.
  3. 제 2 항에 있어서,
    사용자가 상기 토큰을 사용하여 상기 요청된 리소스로의 액세스를 얻을 수 있게 하기 위한 상기 토큰 추출기의 실행에 앞서서 상기 사용자를 인증하도록 구성되는 인증 모듈을 더 포함하는
    모바일 디바이스.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 토큰 추출기는 상기 바코드를 디코드하여 상기 바코드로부터 데이터를 얻고 상기 데이터로부터 상기 토큰을 추출하기 위해 상기 리소스와 연관되는 알고리즘의 사용을 통해서 상기 바코드에 포함되는 상기 토큰을 추출하도록 구성되는
    모바일 디바이스.
  5. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 토큰 추출기와 연결되는 근거리 무선 통신(NFC) 송수신기를 더 포함하고,
    상기 토큰 추출기는 상기 리소스로의 요청된 액세스를 얻기 위해 상기 토큰의 사용이 가능하도록 상기 NFC 송수신기를 통해서 상기 클라이언트 디바이스로 상기 토큰을 송신하도록 구성되는
    모바일 디바이스.
  6. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 토큰 추출기는 상기 클라이언트 디바이스로의 상기 토큰의 사용자 입력(user entry)을 통해서 상기 요청된 리소스로의 액세스를 얻기 위해 상기 토큰의 사용이 가능하도록 상기 추출된 토큰을 표시하도록 구성되는
    모바일 디바이스.
  7. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 바코드는 QR 코드인
    모바일 디바이스.
  8. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 요청된 리소스는 애플리케이션인
    모바일 디바이스.
  9. 서버로부터 리소스를 요청하는 방법으로서,
    클라이언트 디바이스에 의해, 리소스로의 액세스를 위한 요청을 서버에 송신하는 단계―상기 요청은 모바일 디바이스를 디코딩 디바이스로서 식별하는 식별자를 포함함―와,
    상기 클라이언트 디바이스에 의해, 상기 서버로부터의 응답을 상기 클라이언트 디바이스의 디스플레이에 표시하여, 상기 응답 내의 바코드에 포함되는 토큰이 디코드되어 상기 클라이언트 디바이스를 인증하기 위해 상기 서버에 다시 송신되게 하는 단계
    를 포함하고,
    상기 바코드는 상기 모바일 디바이스를 상기 디코딩 디바이스로서 식별하는 상기 식별자에 적어도 부분적으로 근거하여 인코드되는
    방법.
  10. 제 9 항에 있어서,
    상기 식별자는 쿠키의 형태로 상기 클라이언트 디바이스에 저장되는
    방법.
  11. 제 9 항에 있어서,
    상기 클라이언트 디바이스에 의해, 상기 토큰을 입력으로서 받아들이는 단계와,
    상기 클라이언트 디바이스에 의해, 상기 서버에 상기 토큰을 송신하는 단계를 더 포함하는
    방법.
  12. 제 9 항에 있어서,
    상기 토큰을 입력으로서 받아들이는 것은 상기 클라이언트 디바이스의 근거리 무선 통신 송수신기를 통해서 상기 토큰을 받아들이는 것을 더 포함하는
    방법.
  13. 제 9 항에 있어서,
    상기 클라이언트 디바이스의 상기 디스플레이에 상기 바코드를 표시하는 단계는 상기 클라이언트 디바이스에서 상기 디스플레이로의 보안 채널을 통해서 수행되는
    방법.
  14. 제 9 항 내지 제 13 항 중 어느 한 항에 있어서,
    상기 리소스는 상기 서버와 상기 클라이언트 디바이스의 사이의 보안 데이터 채널이고,
    상기 바코드로 송신되는 상기 토큰은, 상기 보안 데이터 채널을 통해서 상기 서버로 송신되는 데이터를 암호화하고 상기 서버로부터 수신되는 데이터를 해독하기 위해 상기 클라이언트 디바이스에 의해 활용되는 암호 키(a cryptographic key)인
    방법.
  15. 제 15 항에 있어서,
    상기 암호 키는 디피-헬맨(Diffie-Hellman) 키인 방법.
  16. 리소스 요청을 관리하는 방법으로서,
    서버에 의해, 리소스에 액세스하기 위한 요청을 클라이언트 디바이스로부터 수신하는 단계와,
    상기 서버에 의해, 상기 요청에 응답하여, 토큰을 포함하는 바코드를 생성하는 단계와,
    상기 서버에 의해, 상기 클라이언트 디바이스에 상기 바코드를 송신하는 단계
    를 포함하고,
    상기 바코드는 상기 토큰이 카메라를 갖는 모바일 디바이스에 의해 추출되게 하기 위해 상기 클라이언트 디바이스에 표시되고, 상기 서버가 상기 요청된 액세스를 승인하게 하기 위해, 상기 서버에 상기 클라이언트 디바이스의 사용자를 인증하는 데에 이용되는
    방법.
  17. 제 16 항에 있어서,
    상기 서버에 의해, 상기 클라이언트 디바이스로부터, 응답을 수신하는 단계와,
    상기 서버에 의해, 상기 응답이 상기 토큰을 포함하는지 여부를 결정하는 단계와,
    상기 결정의 결과에 적어도 부분적으로 근거하여 상기 요청된 액세스를 승인 또는 거부하는 단계를 더 포함하는
    방법.
  18. 제 16 항에 있어서,
    토큰을 포함하는 상기 바코드를 생성하는 단계는, 상기 모바일 디바이스에 특유한 방식으로, 토큰을 갖는 상기 바코드를 인코드하는 단계를 더 포함하는
    방법.
  19. 제 16 항에 있어서,
    토큰을 포함하는 상기 바코드를 생성하는 단계는, 상기 모바일 디바이스 및 상기 요청된 리소스의 양쪽에 특유한 방식으로, 토큰을 갖는 상기 바코드를 인코드하는 단계를 더 포함하는
    방법.
  20. 제 19 항에 있어서,
    상기 요청은 상기 모바일 디바이스의 식별자를 더 포함하고,
    상기 모바일 디바이스 및 상기 요청된 리소스의 양쪽에 특유한 포맷은 상기 식별자에 적어도 부분적으로 근거하는
    방법.
  21. 제 16 항 내지 제 20 항 중 어느 한 항에 있어서,
    적어도 상기 바코드를 포함하는 상기 요청된 리소스에 액세스하기 위한 로그인 페이지를 생성하는 단계를 더 포함하고,
    상기 클라이언트 디바이스에 상기 바코드를 송신하는 단계는 사용자에게 표시될 수 있는 포맷으로 상기 클라이언트 디바이스에 상기 로그인 페이지를 송신하는 단계를 더 포함하는
    방법.
  22. 제 16 항 내지 제 20 항 중 어느 한 항에 있어서,
    상기 매트릭스 바코드는 QR 코드인
    방법.
  23. 제 16 항 내지 제 20 항 중 어느 한 항에 있어서,
    상기 요청된 리소스는 애플리케이션인
    방법.
  24. 제 9 항 내지 제 23 항 중 어느 한 항에 기재된 컴퓨터로 구현되는 방법을 수행하는 수단을 포함하는
    컴퓨팅 디바이스.
  25. 컴퓨팅 디바이스에 의해 실행될 때에, 상기 컴퓨팅 디바이스로 하여금 제 9 항 내지 제 23 항 중 어느 한 항에 기재된 방법을 수행하게 하는 명령을 포함하는
    컴퓨터 판독 가능 저장 매체.
KR1020157018135A 2013-02-08 2014-01-13 리소스 요청에 대한 바코드 인증 KR101699733B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/763,116 US9378352B2 (en) 2013-02-08 2013-02-08 Barcode authentication for resource requests
US13/763,116 2013-02-08
PCT/US2014/011333 WO2014123663A1 (en) 2013-02-08 2014-01-13 Barcode authentication for resource requests

Publications (2)

Publication Number Publication Date
KR20150093781A true KR20150093781A (ko) 2015-08-18
KR101699733B1 KR101699733B1 (ko) 2017-01-25

Family

ID=51298454

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157018135A KR101699733B1 (ko) 2013-02-08 2014-01-13 리소스 요청에 대한 바코드 인증

Country Status (5)

Country Link
US (1) US9378352B2 (ko)
EP (1) EP2954451B1 (ko)
KR (1) KR101699733B1 (ko)
CN (1) CN104903904B (ko)
WO (1) WO2014123663A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200043912A (ko) * 2018-10-17 2020-04-28 스워치 악티엔게젤샤프트 (스워치 쏘시에떼아노님)(스워치 리미 티드) 휴대용 비접촉 지불 오브젝트를 활성화하기 위한 방법 및 시스템

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2780850T3 (es) * 2013-01-21 2020-08-27 Humetrix Intercambio seguro de registros de salud en tiempo real
US9479499B2 (en) * 2013-03-21 2016-10-25 Tencent Technology (Shenzhen) Company Limited Method and apparatus for identity authentication via mobile capturing code
US9430625B1 (en) 2013-09-18 2016-08-30 Intuit Inc. Method and system for voice match based data access authorization
US9495586B1 (en) 2013-09-18 2016-11-15 IDChecker, Inc. Identity verification using biometric data
US8995774B1 (en) 2013-09-19 2015-03-31 IDChecker, Inc. Automated document recognition, identification, and data extraction
US9213825B1 (en) * 2014-02-21 2015-12-15 American Megatrends, Inc. User authentication using two-dimensional barcodes
US10079826B2 (en) * 2014-03-19 2018-09-18 BluInk Ltd. Methods and systems for data entry
US9979725B1 (en) * 2014-04-14 2018-05-22 Symantec Corporation Two-way authentication using two-dimensional codes
US11461567B2 (en) 2014-05-28 2022-10-04 Mitek Systems, Inc. Systems and methods of identification verification using hybrid near-field communication and optical authentication
US9665754B2 (en) * 2014-05-28 2017-05-30 IDChecker, Inc. Identification verification using a device with embedded radio-frequency identification functionality
US11640582B2 (en) 2014-05-28 2023-05-02 Mitek Systems, Inc. Alignment of antennas on near field communication devices for communication
US10270780B2 (en) * 2014-08-18 2019-04-23 Dropbox, Inc. Access management using electronic images
CN104270404B (zh) * 2014-08-29 2018-09-04 小米科技有限责任公司 一种基于终端标识的登录方法及装置
US10776809B1 (en) 2014-09-11 2020-09-15 Square, Inc. Use of payment card rewards points for an electronic cash transfer
US9805182B1 (en) * 2014-09-26 2017-10-31 EMC IP Holding Company LLC Authentication using a client device and a mobile device
US10178166B2 (en) * 2014-12-08 2019-01-08 Ebay Inc. Delivering personalized content to authenticated user devices
US9479916B2 (en) 2014-12-31 2016-10-25 Motorola Solutions, Inc. Method and apparatus for providing access to local services and applications to multi-agency responders
CN107209889B (zh) * 2015-01-27 2022-05-10 维萨国际服务协会 多协议交易加密
KR101652625B1 (ko) 2015-02-11 2016-08-30 주식회사 이베이코리아 온라인 웹사이트의 회원 로그인을 위한 보안인증 시스템 및 그 방법
US11042863B1 (en) 2015-03-20 2021-06-22 Square, Inc. Grouping payments and payment requests
KR102362654B1 (ko) 2015-07-03 2022-02-15 삼성전자주식회사 오븐
CN105391549B (zh) * 2015-12-10 2018-10-12 四川长虹电器股份有限公司 客户端与服务器之间通信动态密钥实现方法
ES2797111T3 (es) * 2016-05-18 2020-12-01 Amadeus Sas Intercambio seguro de unos datos sensibles a través de una red basada en códigos de barras y testigos
US11048454B2 (en) * 2018-03-07 2021-06-29 Zebra Technologies Corporation Method and apparatus to protect sensitive information on media processing devices
WO2020023448A1 (en) * 2018-07-24 2020-01-30 De Rozairo Damian System and method for biometric access control
US10893043B1 (en) * 2018-09-12 2021-01-12 Massachusetts Mutual Life Insurance Company Systems and methods for secure display of data on computing devices
IL262773B (en) 2018-11-04 2021-12-01 Au10Tix Ltd A system, method and computer program product for differentiating images comprising original scans of documents, from images of documents that are not original scans
US11316849B1 (en) 2019-04-04 2022-04-26 United Services Automobile Association (Usaa) Mutual authentication system
US11954989B2 (en) 2021-04-15 2024-04-09 Motorola Solutions, Inc. Image recognition based configuration/authorization method for video security systems
US11823191B1 (en) 2022-08-29 2023-11-21 Block, Inc. Integration for performing actions without additional authorization requests

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100124141A (ko) * 2009-05-18 2010-11-26 김상희 생체정보 저장부를 갖는 생체인식매체를 이용한 네트워크기반의 생체인증시스템 및 생체정보 위변조 방지방법
US20110219427A1 (en) * 2010-03-04 2011-09-08 RSSBus, Inc. Smart Device User Authentication

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6550685B1 (en) * 2000-11-14 2003-04-22 Hewlett-Packard Development Company Lp Methods and apparatus utilizing visually distinctive barcodes
US20030141368A1 (en) * 2002-01-29 2003-07-31 Florante Pascual System and method for obtaining information from a bar code for use with a healthcare system
US7243233B2 (en) * 2002-06-28 2007-07-10 Hewlett-Packard Development Company, L.P. System and method for secure communication between electronic devices
GB0229765D0 (en) * 2002-12-20 2003-01-29 Radicall Projects Ltd Payment system
US7455224B2 (en) 2003-06-26 2008-11-25 Kochevar Peter D Site-specific access management
US20060183462A1 (en) * 2005-02-11 2006-08-17 Nokia Corporation Managing an access account using personal area networks and credentials on a mobile device
WO2009056897A1 (en) * 2007-10-30 2009-05-07 Telecom Italia S.P.A Method of authentication of users in data processing systems
US8646052B2 (en) * 2008-03-31 2014-02-04 Intel Corporation Method and apparatus for providing a secure display window inside the primary display
EP2224665B1 (en) 2009-02-26 2015-04-08 BlackBerry Limited Authentication using a wireless mobile communication device
WO2011079872A1 (en) * 2009-12-30 2011-07-07 Nec Europe Ltd. Method and system for user authentication
KR20120014318A (ko) 2010-08-09 2012-02-17 주식회사 팬택 휴대용 단말기 간 어플리케이션을 공유하는 장치 및 그 방법
US8438285B2 (en) 2010-09-15 2013-05-07 At&T Intellectual Property I, L.P. System for managing resources accessible to a mobile device server
US8572701B2 (en) * 2011-08-22 2013-10-29 Verizon Patent And Licensing Inc. Authenticating via mobile device
US8862888B2 (en) * 2012-01-11 2014-10-14 King Saud University Systems and methods for three-factor authentication

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100124141A (ko) * 2009-05-18 2010-11-26 김상희 생체정보 저장부를 갖는 생체인식매체를 이용한 네트워크기반의 생체인증시스템 및 생체정보 위변조 방지방법
US20110219427A1 (en) * 2010-03-04 2011-09-08 RSSBus, Inc. Smart Device User Authentication

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200043912A (ko) * 2018-10-17 2020-04-28 스워치 악티엔게젤샤프트 (스워치 쏘시에떼아노님)(스워치 리미 티드) 휴대용 비접촉 지불 오브젝트를 활성화하기 위한 방법 및 시스템

Also Published As

Publication number Publication date
EP2954451A1 (en) 2015-12-16
CN104903904B (zh) 2018-03-13
US20140230039A1 (en) 2014-08-14
CN104903904A (zh) 2015-09-09
WO2014123663A1 (en) 2014-08-14
EP2954451B1 (en) 2019-08-28
KR101699733B1 (ko) 2017-01-25
US9378352B2 (en) 2016-06-28
EP2954451A4 (en) 2016-10-05

Similar Documents

Publication Publication Date Title
KR101699733B1 (ko) 리소스 요청에 대한 바코드 인증
US11663578B2 (en) Login using QR code
US11764966B2 (en) Systems and methods for single-step out-of-band authentication
US10313881B2 (en) System and method of authentication by leveraging mobile devices for expediting user login and registration processes online
US9438575B2 (en) Smart phone login using QR code
US10445487B2 (en) Methods and apparatus for authentication of joint account login
US10637650B2 (en) Active authentication session transfer
US20140282992A1 (en) Systems and methods for securing the boot process of a device using credentials stored on an authentication token
US9787689B2 (en) Network authentication of multiple profile accesses from a single remote device
US20130205380A1 (en) Identity verification
TR201810238T4 (tr) Bir mobil kimlik doğrulama uygulaması kullanarak kullanıcıya uygun kimlik doğrulama yöntemi ve aparatı.
US9077713B1 (en) Typeless secure login to web-based services
KR20110081103A (ko) 보안 트랜잭션 시스템 및 방법
KR20170041741A (ko) 호스팅된 인증 서비스를 구현하기 위한 시스템 및 방법
TW201544983A (zh) 資料通訊方法和系統及客戶端和伺服器
US20210111885A1 (en) Electronic access control multi-factor authentication using centralized hardware secured credential system and methods of use thereof
KR20180034199A (ko) 싱글 사인 온 서비스 기반의 상호 인증 방법 및 시스템
US10652241B1 (en) Dynamic and secure coupling between auxiliary devices and endpoint resources
WO2012038449A2 (en) Authentication

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant