KR20180027332A - 디바이스의 독립적인 프로세서들을 통한 데이터 검증 - Google Patents

디바이스의 독립적인 프로세서들을 통한 데이터 검증 Download PDF

Info

Publication number
KR20180027332A
KR20180027332A KR1020170102968A KR20170102968A KR20180027332A KR 20180027332 A KR20180027332 A KR 20180027332A KR 1020170102968 A KR1020170102968 A KR 1020170102968A KR 20170102968 A KR20170102968 A KR 20170102968A KR 20180027332 A KR20180027332 A KR 20180027332A
Authority
KR
South Korea
Prior art keywords
processor
display
communication
presentation
processors
Prior art date
Application number
KR1020170102968A
Other languages
English (en)
Other versions
KR102039219B1 (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 KR20180027332A publication Critical patent/KR20180027332A/ko
Application granted granted Critical
Publication of KR102039219B1 publication Critical patent/KR102039219B1/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/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • G06Q20/40145Biometric identity checks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/84Protecting input, output or interconnection devices output devices, e.g. displays or monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Accounting & Taxation (AREA)
  • Mathematical Physics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

콘텐츠 요청 통신은 디바이스의 제1 프로세서를 사용하여 웹 서버에 전송될 수 있다. 제1 값을 식별하는 콘텐츠를 포함하는 응답 통신이 웹 서버로부터 수신될 수 있다. 제1 프로세서는 디바이스의 제1 디스플레이 상에 콘텐츠의 제1 프리젠테이션을 용이하게 할 수 있다. 통신이 원격 서버로부터 디바이스의 제2 프로세서에서 수신될 수 있다. 통신은 제2 값을 나타내는 데이터를 포함할 수 있다. 통신은 웹 서버로부터의 다른 통신의 수신에 응답하여 원격 서버에서 생성된 통신을 포함할 수 있다. 제2 값을 나타내는 보안 검증 출력(secure verification output)이 제2 프로세서를 사용하여 생성될 수 있다. 제2 프로세서는 콘텐츠의 제1 프리젠테이션과 동시에 디바이스 상의 제2 디스플레이에서 검증 출력의 제2 프리젠테이션을 용이하게 할 수 있다.

Description

디바이스의 독립적인 프로세서들을 통한 데이터 검증{DATA VERIFICATION VIA INDEPENDENT PROCESSORS OF A DEVICE}
본 개시내용은 일반적으로, 데이터의 검증을 통해 정보 보안을 용이하게 하기 위한 시스템 및 방법에 관한 것이다. 보다 상세하게는, 디바이스의 다수의 프로세서들 각각은 프로세서-제어 디스플레이에서 프리젠테이션의 디스플레이를 용이하게 하기 위해 상이한 신호를 독립적으로 수신하고 처리할 수 있으며, 여기서 각각의 신호는 데이터의 하나 이상의 동일한 조각을 나타낸다.
디지털 발전의 상승은 불행히도, 멀웨어(malware), 스푸핑(spoofing), 피싱(phishing) 및 기타 사이버 보안 위협의 확산을 동반하였다. 예를 들며, 링크 조작 및/또는 웹사이트 위조는 주어진 웹페이지가 신뢰된 소스와 연관되어 있다고 사용자가 믿게 할 수 있지만, 실제로 그것은 사용자와 연관된 데이터에 대한 액세스를 얻으려고 시도하고 있는 다른 엔티티에 의해 호스팅될 수 있다. 웹페이지는 사용자로부터 입력을 요청하는 하나 이상의 필드를 포함할 수 있다. 필드들은 데이터가 사용되어야 할 방법을 잘못 식별하거나 암시할 수 있는 필드 설명어들 및/또는 정보와 연관될 수 있다. 이어서 사용자는 속아서, 민감한 데이터에 대한 액세스를 다른 엔티티에 제공하게 될 수 있다. 따라서, 제시된 설명어들 및/또는 정보가 정확한지 여부를 결정하는 것을 용이하게 하는 기술은 사이버 보안을 향상시킬 수 있다.
일부 실시예들에서, 전자 디바이스가 제공된다. 전자 디바이스는 시각적 자극을 출력하도록 구성된 제1 디스플레이 및 시각적 자극을 출력하도록 구성된 제2 디스플레이를 포함할 수 있다. 전자 디바이스는 제1 출력 컴포넌트에 결합된 하나 이상의 제1 프로세서 및 제2 출력 컴포넌트에 결합된 하나 이상의 제2 프로세서를 포함할 수 있다. 하나 이상의 제2 프로세서는 하나 이상의 제1 프로세서와 별개일 수 있다. 전자 디바이스는, 하나 이상의 제1 프로세서에 의해 실행될 때 하나 이상의 제1 프로세서로 하여금 제1 동작들을 수행하게 하는 제1 명령어들을 포함하는 제1 컴퓨터 판독가능 저장 매체를 포함할 수 있다. 제1 동작들은 전자 디바이스로부터 웹 서버로 콘텐츠 요청 통신을 전송하는 것 및 웹 서버로부터 응답 통신을 수신하는 것을 포함할 수 있으며, 응답 통신은 제1 값을 식별하는 콘텐츠를 포함한다. 제1 동작들은 또한 디스플레이에서 콘텐츠의 제1 프리젠테이션을 용이하게 하는 것을 포함할 수 있다. 전자 디바이스는, 하나 이상의 제2 프로세서에 의해 실행될 때 하나 이상의 제2 프로세서로 하여금 제2 동작들을 수행하게 하는 제2 명령어들을 포함하는 제2 컴퓨터 판독가능 저장 매체를 포함할 수 있다. 제2 동작들은 제2 값을 나타내는 데이터를 포함하는 통신을 원격 서버로부터 수신하는 것을 포함할 수 있다. 통신은 웹 서버로부터의 다른 통신의 수신에 응답하여 원격 서버에서 생성된 통신을 포함할 수 있다. 제2 동작들은 또한 제2 값을 나타내는 보안 검증 출력(secure verification output)을 생성하는 것을 포함할 수 있다. 제2 동작들은, 검증 출력의 제2 프리젠테이션이 콘텐츠의 제1 프리젠테이션과 동시에 이루어지도록, 제2 디스플레이에서 검증 출력의 제2 프리젠테이션을 용이하게 하는 것을 추가로 포함할 수 있다. 제2 디스플레이는 제1 디스플레이와 별개일 수 있다.
일부 실시예들에서, 웹 서버 통신에 기초하여 검증 출력을 생성하기 위해 디바이스 상의 다수의 프로세서들을 사용하기 위한 방법이 제공될 수 있다. 콘텐츠 요청 통신은 디바이스의 제1 프로세서를 사용하여 웹 서버에 전송될 수 있다. 응답 통신이 웹 서버로부터 수신될 수 있다. 응답 통신은 제1 값을 식별하는 콘텐츠를 포함할 수 있다. 디바이스의 제1 디스플레이 상의 콘텐츠의 제1 프리젠테이션은 제1 프로세서를 사용하여 용이하게 될 수 있다. 통신이 원격 서버로부터 디바이스의 제2 프로세서에서 수신될 수 있다. 통신은 제2 값을 나타내는 데이터를 포함할 수 있다. 통신은 웹 서버로부터의 다른 통신의 수신에 응답하여 원격 서버에서 생성된 통신을 포함할 수 있다. 제2 프로세서는 제1 프로세서와 별개일 수 있다. 제2 값을 나타내는 보안 검증 출력이 제2 프로세서를 사용하여 생성될 수 있다. 제2 프리젠테이션은 제2 프로세서를 사용하여 용이하게 될 수 있다. 제2 프리젠테이션은 검증 출력을 포함할 수 있고, 콘텐츠의 제1 프리젠테이션과 동시에 디바이스에서 제시될 수 있다. 제2 프리젠테이션은 제1 디스플레이와 별개인 제2 디스플레이 상에 제시될 수 있다.
첨부 도면들과 함께 하기의 상세한 설명은 본 발명의 본질 및 이점들에 대한 보다 양호한 이해를 제공할 것이다.
도 1은 어느 정도의 정보 보안을 나타내는 대응하는 데이터를 제시하기 위한 다수의 디스플레이들을 포함하는 전자 디바이스의 예를 도시한다.
도 2는 본 발명의 일 실시예에 따른, 디바이스로의 조정된 전송을 용이하게 하는 다수의 서버들 및 디바이스를 포함하는 네트워크를 도시한다.
도 3은 본 발명의 일 실시예에 따른 디바이스의 블록도이다.
도 4는 본 발명의 일 실시예에 따른, 데이터 무결성의 평가들을 용이하게 하기 위한 프로세스의 흐름도이다.
도 5는 본 발명의 일 실시예에 따른, 데이터 무결성의 평가를 용이하게 하기 위한 프로세스의 흐름도이다.
일부 실시예들에서, 물리적 아키텍처는, 제1(예컨대, 일차) 운영 시스템이 디바이스의 제1 프로세서에 의해 실행될 수 있고 별개의 보안 운영 시스템이 디바이스의 제2 프로세서에 의해 실행될 수 있도록 구성될 수 있다. 제1 프로세서는 디바이스의 제1 디스플레이로의 제1 데이터의 출력을 제어할 수 있고, 제2 프로세서는 제2 디스플레이로의 제2 데이터의 출력을 제어할 수 있다. 일부 경우들에서, 제1 디스플레이는 제1 디스플레이에서의 프리젠테이션들이 제2 프로세서에 의해 제어, 개시 및/또는 수정될 수 없도록 구성될 수 있고/있거나, 제2 디스플레이는 제1 디스플레이에서의 프리젠테이션들이 제1 프로세서에 의해 제어, 개시 및/또는 수정될 수 없도록 구성될 수 있다. 제1 데이터 및 제2 데이터는, 동일하거나 유사한 콘텐츠에 관련되고/관련되거나 그를 포함할 수 있다.
이어서, 제1 데이터의 적어도 일부가 제2 데이터의 적어도 일부와 매칭 및/또는 대응하는지 여부는, (예를 들어, 웹페이지를 호스팅하고 있을 수 있고/있거나 정보를 요청하고 있을 수 있는) 제1 데이터 및/또는 제2 데이터의 소스가 신뢰될 것인지 그리고/또는 인증된 것인지 여부를 결정하는 데 사용될 수 있다. 일부 경우들에서, 제1 데이터 및 제2 데이터 각각은 웹사이트를 통해 발생할 잠재적 트랜잭션에 대한 값(예를 들어, 비용), 날짜 및/또는 목적지 이름(예를 들어, 상점(merchant))을 식별하는 정보를 포함할 수 있다. 사이트 또는 잠재적 트랜잭션의 무결성은 이어서, 제1 디스플레이에서 제시된 정보가 제2 디스플레이에서 제시된 정보와 매칭되는지 여부에 기초하여 평가될 수 있다.
제1 데이터는 웹 서버(또는 다른 제1 소스)로부터 디바이스에서 수신된 데이터를 포함하고/하거나 그에 기초하여 유추되었을 수 있고, 제2 데이터는 검증 서버(또는 다른 제2 소스)로부터 디바이스에서 수신된 데이터를 포함하고/하거나 그에 기초하여 유추되었을 수 있다. 제1 및 제2 소스들로부터의 전송들은, 웹 서버로부터 검증 서버로의 통신이 검증 서버로부터 디바이스로의 전송을 트리거할 수 있다는 점에서, 조정될 수 있다. 검증 서버로부터 수신된 데이터는 서명될 수 있고, 제2 프로세서는 제2 데이터를 디스플레이하기 전에 서명을 확인할(validate) 수 있다. 일부 경우들에서, 제2 디스플레이에서 어떤 데이터가 디스플레이되는지 및/또는 데이터가 디스플레이되는지의 여부는 서명이 확인되는지 여부에 의존한다(예를 들어, 서명이 확인되지 않을 때 경고 표시가 제시되도록, 그리고 서명이 확인될 때 제2 데이터의 적어도 일부가 제시되도록). 검증 서버가 제2 데이터를 디바이스에 전송하기 전 및/또는 후에 검증 서버에서는, 추가적인 또는 부가적인 확인이 수행될 수 있다.
본 명세서에 개시된 실시예들은, 다양한 유용한 디바이스간 트랜잭션 조정 능력들 및 이점들을 제공한다. 예를 들어, 본 명세서에 개시된 적어도 일부 실시예들은 통신의 보안을 촉진시킬 수 있다. 웹 서버와 원격 서버 사이의 통신은 값 및 목적지와 같은, 제안된 동작을 적어도 부분적으로 정의하는 데이터를 식별할 수 있다. 원격 서버는 제안된 동작이 완료될 것인지 여부를 적어도 부분적으로 제어할 수 있다. 따라서, 그러한 데이터를 반영하는, 원격 서버로부터 사용자 디바이스로의 통신은, 제안된 동작의 파라미터들에 관한 정확한 표시들을 반영할 것으로 신뢰될 수 있다. 따라서, 제안된 동작이 완료될 것인지 여부를 적어도 부분적으로 제어하는 디바이스, 제안된 동작을 적어도 부분적으로 정의하는 웹 서버, 및 제안된 동작을 개시할지 여부를 제어하는 사용자 디바이스 사이의 3방향 통신 교환은, 사용자 디바이스로의 정확한 정보의 통신을 촉진시킬 수 있다.
(예를 들어, 하나 이상의 운영 시스템의 상이한 인스턴스들을 실행하는) 다수의 프로세서들을 포함하도록 사용자 디바이스를 구성하는 것은 또한 디바이스 보안을 촉진시킬 수 있다. 예를 들어, 일부 경우들에서, 사용자 디바이스는 웹 콘텐츠를 수정하고/하거나 웹 기반 데이터 전송을 가로채는 방식으로 손상된다(compromised). 일부 실시예들은 제안된 동작에 대응하는 (예를 들어, 다수의 서버들로부터의) 데이터를 각각의 프로세서로 전송한다. 따라서, 하나의 프로세서가 제안된 동작의 파라미터들의 프리젠테이션들을 변경하는 식으로 손상되더라도, 디바이스 상의 다른 독립적인 프로세서는 유사하게 영향을 받지 않을 수 있다. 따라서, 프로세서들 각각에 의해 제어되는 프리젠테이션들은, 초기에 제시된 데이터가 검증되는지 여부를 결정하기 위해 평가될 수 있다. 사용자 디바이스 상의 별개의 디스플레이들 상에서의 프리젠테이션들은 이러한 유형의 검증 보안을 추가로 향상시킬 수 있다.
도 1은 어느 정도의 정보 보안을 나타내는 대응하는 데이터를 제시하기 위한 다수의 디스플레이들을 포함하는 사용자 디바이스(100)의 예를 도시한다. 도시된 예에서, 사용자 디바이스(100)는 랩톱 컴퓨터이다. 사용자 디바이스(105)는 제1 디스플레이(105) 및 제2 디스플레이(110)를 포함하는 다수의 디스플레이들을 포함한다.
제1 디스플레이(105)는 사용자 디바이스(100)의 제1 프로세서(도시되지 않음)에 의해 (예를 들어, 적어도 부분적으로) 제어될 수 있다. 제1 디스플레이(105)는 (예를 들어) 제1 프로세서에 의해 실행되고 있는 하나 이상의 애플리케이션 또는 프로그램으로부터의 콘텐츠를 디스플레이하도록 구성될 수 있다. 예시적인 애플리케이션 또는 프로그램은 크롬(Chrome), 사파리(Safari), 파이어폭스(Firefox), 또는 익스플로러(Explorer)와 같은 웹 브라우저를 포함할 수 있다. 애플리케이션은, 통신의 (예를 들어, 웹 서버로의 그리고 웹 서버로부터의) 전송 및 수신을 용이하게 하고 수신된 통신에 포함되거나 그에 기초하여 생성된 콘텐츠를 제시하도록 구성될 수 있다.
사용자 디바이스(100)는 사용자 입력을 수신하는 트랙패드(115)와 같은 하나 이상의 입력 컴포넌트를 포함할 수 있다. 사용자 입력은, 예를 들어, 애플리케이션 또는 프로그램에 의해 사용되어, 제1 디스플레이(105)에서 제시된 콘텐츠와의 상호작용을 식별하고/하거나 그러한 콘텐츠가 어떻게 수정될지를 결정할 수 있다. 예를 들어, 애플리케이션은 사용자 입력을 사용하여, 웹 서버로의 하나 이상의 요청의 전송을 생성하고 트리거할 수 있다.
사용자 디바이스(100)로부터의 일부 통신은, 웹 서버로 하여금 (예를 들어, 계정들 간의 이송 동작과 같은 동작이 발생할지 여부, 발생할 시간 및/또는 발생할 방법을 적어도 부분적으로 제어하는) 원격 서버에 데이터를 전송하게 할 수 있다. 통신은 이송의 목적지 및/또는 값과 같은, 동작을 정의하는 하나 이상의 파라미터를 포함할 수 있다.
사용자 디바이스(100) 상의 동일하거나 상이한 애플리케이션 또는 프로그램은 원격 서버로부터 하나 이상의 통신을 수신하도록 구성될 수 있다. 원격 서버로부터의 하나 이상의 통신은, 하나 이상의 파라미터, 및/또는 웹 서버가 인증된 것인지, 화이트리스트 데이터 저장소에서 식별되는지, 화이트리스트에 있는 특성들(예를 들어, 위치, 목적지 위치, 요청 빈도 등)과 연관되는지 여부에 관한 표시를 포함할 수 있다.
사용자 디바이스(100)는 원격 서버로부터의 통신(들)에 기초하여 프리젠테이션을 생성할 수 있다. 프리젠테이션은 (제1 디스플레이(105)에서 또한 표현될 수 있는) 하나 이상의 파라미터 및/또는 웹 서버로부터 수신된 데이터 및/또는 웹 서버가 인증되었는지, 검증가능한지, 승인된 포맷인지 등에 관한 표시를 포함할 수 있다. 따라서, 일부 경우들에서, 프리젠테이션은 제1 디스플레이(105)에서 제시된 정보에 대응하고/하거나 적어도 부분적으로 그와 매칭될 정보를 포함할 수 있다.
다른 프리젠테이션은 제2 디스플레이(110) 상에 디스플레이될 수 있어서, 사용자는 웹 서버로부터의 통신에 기초하여 생성된 제1 디스플레이(105) 상의 제1 프리젠테이션 및 원격 서버로부터의 통신에 기초하여 생성된 제2 디스플레이(110) 상의 제2 프리젠테이션을 동시에 볼 수 있다. 이어서, 사용자는 예를 들어, 프리젠테이션들 내의 정보가 각각에 대응하고/하거나 매칭되는지 여부를 결정할 수 있고/있거나, 특정 확인 표시가 제1 프리젠테이션에 관련된다는 것을 이해할 수 있다.
제2 디스플레이(110)는 사용자 디바이스(100)의 제2 프로세서(도시되지 않음)에 의해 (예를 들어, 적어도 부분적으로) 제어될 수 있다. 제2 디스플레이(110)는 디바이스 상의 표준 키보드에 인접하게 위치될 수 있다. 제2 디스플레이(110)는 예를 들어, 터치스크린을 포함하는 가상 키보드 또는 디지털 기능 열을 포함할 수 있다. 제2 디스플레이(110)는, 적어도 일부 시간에, 옵션의 터치를 통해 선택될 수 있는 하나 이상의 입력 옵션을 제시하도록 구성될 수 있다. 하나 이상의 입력 옵션은 예를 들어, 하나 이상의 기능(예를 들어, F1, F2 등) 및/또는 스크린 입력/출력 제어(예를 들어, 제1 디스플레이의 밝기, 스피커들의 볼륨 등)를 포함할 수 있다. 제2 디스플레이(110)는, 디스플레이에서의 프리젠테이션들이 (예를 들어, 제2 디스플레이 또는 다른 입력 컴포넌트에서 검출된 사용자 입력에 응답하여 그리고/또는 제2 프로세서에서 실행되고 있는 애플리케이션의 명령어에 응답하여) 시간에 따라 변화할 수 있도록 구성될 수 있다.
사용자 디바이스(120)는 또한 터치 식별(ID) 판독기(120)를 포함한다. 터치 ID 판독기(120)는 사용자가 자신의 손가락을 판독기 위에 두고 있을 때를 검출하도록 구성될 수 있다. 예를 들어, 센서는, (예를 들어, 정의된 임계치 초과인) 용량성 신호가 (예를 들어, 다수의 전극들을 사용하여) 검출될 때 활성화되도록 구성될 수 있다. 다른 예로서, 스위치는 누르기 또는 힘을 검출하도록 구성될 수 있다. 사용자의 손가락을 검출하면, 터치 ID 판독기(120)는 사용자의 손가락의 이미지를 캡처할 수 있다. 이어서, 이미지는 하나 이상의 정렬 기술에 따라(예를 들어, 지문 선들의 곡률에 기초한 표준 축에) 정렬되고 사용자의 하나 이상의 저장된 지문들 각각(또는 그의 처리된 버전)과 비교될 수 있다. 따라서, 손가락이 특정 사용자의 지문에 대응하는지 여부가 추정될 수 있다.
터치 ID 판독기(120)는 프로세서와 협력하여 동작할 수 있다. 예를 들어, 프로세서는 정렬 및 비교 동작들을 수행할 수 있다. 프로세서는 제2 디스플레이(110) 및/또는 (예를 들어, 보안 요소 내의 그리고/또는 제한된 액세스를 갖는) 보안 데이터 저장소를 제어하는 프로세서를 포함할 수 있다. 일부 경우들에서, 하나 이상의 조건이 충족된 후에(예를 들어, 프로세서가 원격 서버로부터의 확인 콘텐츠 및 인식된 지문을 검출함), 프로세서는 트랜잭션 정보(예를 들어, 디바이스 계정 번호(Device Account Number); 계정, 사용자 및/또는 디바이스에 특정한 토큰; 신용 카드 또는 직불 카드 번호; 또는 다른 계정 식별자)가 보안 데이터 저장소로부터 방출되고 (예를 들어, 웹 서버 또는 원격 서버로) 전송되도록 하기 위한 명령어 신호를 송신한다.
도시된 예는 사용자 디바이스(100)를 랩톱 컴퓨터로서 도시하지만, 사용자 디바이스는 데스크톱 컴퓨터, 스마트 폰, 또는 태블릿과 같은 다른 유형들의 전자 디바이스들을 포함할 수 있음이 이해될 것이다. 일부 경우들에서, (예를 들어, 유선 또는 무선 연결을 통해 서로 연결된) 다수의 디바이스들의 시스템이 사용될 수 있다. 시스템은 (예를 들어) 적어도 2개의 디바이스들을 포함할 수 있다. 시스템은 적어도 2개의 프리젠테이션 컴포넌트들(예를 들어, 디스플레이, 스피커들 또는 햅틱 컴포넌트) 및 적어도 2개의 처리 컴포넌트들을 포함할 수 있다. 예를 들어, 다수의 디바이스들 각각은 디스플레이 및 프로세서를 포함할 수 있다. 다른 예로서, 제1 디바이스는 제1 디스플레이, 제1 프로세서, 및 제2 디스플레이 또는 제2 프로세서 중 어느 하나를 포함할 수 있고, 제2 디바이스는 제2 디스플레이 또는 제2 프로세서 중 다른 하나를 포함할 수 있다. 하나의 예시로서, 제1 디바이스는 태블릿, 랩톱, 또는 데스크톱 컴퓨터를 포함할 수 있고, 제2 디바이스는 전자 웨어러블 디바이스, 액세서리, 또는 스마트 폰을 포함할 수 있다.
또한, 제2 디스플레이(110) 상에 제시될 도시된 프리젠테이션은 그 대신에 또는 추가적으로, 상이한 유형의 출력 컴포넌트를 사용하여 제시될 수 있다는 것이 이해될 것이다. 예를 들어, 오디오 자극의 유형은 웹 콘텐츠가 알려진 소스로부터 왔는지 여부를 식별할 수 있고/있거나, 오디오 자극은 잠재적 트랜잭션과 연관된 값을 식별하는 구어(spoken word)를 포함할 수 있다. 다른 예로서, 원격 서버가, 웹 서버로부터의 통신이, 정의된 임계치 초과의 값을 포함하거나, 사용자 디바이스(100)가 위치하는 국가의 외부에 있는 목적지를 식별하는 것과 같이, 의심스러운 콘텐츠 또는 메타데이터를 포함한다고 결정할 때, 햅틱 출력이 제시될 수 있다.
도 2는 본 발명의 일 실시예에 따른, 디바이스로의 조정된 전송을 용이하게 하는 다수의 서버들 및 디바이스를 포함하는 네트워크를 도시한다. 도시된 컴포넌트들은 하나 이상의 네트워크를 통해 통신할 수 있다. 예를 들어, 둘 이상의 컴포넌트들이 유선 또는 무선(예를 들어, WiFi) 네트워크를 통해 통신할 수 있다.
도시된 예에서, 사용자 디바이스(205)는 원격 서버(210) 및 웹 서버(215)와 통신한다. 사용자 디바이스(205)는 계정을 식별하는 정보를 수집할 수 있다. 예를 들어, 영숫자 입력이 타이핑될 수 있고/있거나, 사용자 디바이스(205) 상의 카메라가 신용 카드의 번호 및 만료일을 식별하는 이미지를 캡처할 수 있다. 사용자 디바이스(205)는 정보를 원격 서버(210)에 전송할 수 있다.
이어서, 원격 서버(210)는 계정에 대한 식별자 또는 토큰을 식별할 수 있다. 일 예로서, 원격 서버(210)는 (예를 들어, 암호화, 의사 랜덤 또는 다른 기술을 사용하여) 식별자 또는 토큰을 생성할 수 있다. 원격 서버(210)는 식별자 또는 토큰 및 정보의 적어도 일부를 사용자 계정 관리 시스템(220)(예를 들어, 사용자 계정과 연관된 은행의 시스템)에 전송할 수 있다. 이어서 사용자 계정 관리 시스템(220)은 정보의 적어도 일부와 연관된 계정을 식별하고 계정을 식별자 또는 토큰과 연관시킬 수 있다. 다른 예로서, 원격 서버(210)는 정보의 적어도 일부를 포함하는, 식별자 또는 토큰에 대한 요청을 사용자 계정 관리 시스템(220)에 전송할 수 있다. 이어서 사용자 계정 관리 시스템(220)은 (예를 들어, 암호화, 의사 랜덤 또는 다른 기술을 사용하여) 식별자 또는 토큰을 생성하고, 식별자 또는 토큰과 사용자 계정 사이의 연관을 저장하고, 식별자 또는 토큰을 원격 서버(210)에 전송할 수 있다.
원격 서버(210)는 계정에 대한 식별자 또는 토큰을 사용자 디바이스(205)에 전송할 수 있으며, 사용자 디바이스(205)는 식별자 또는 토큰을 디바이스의 보안 데이터 저장소(예를 들어, 보안 요소)에 보안 정보로서 저장할 수 있다. 일부 경우들에서, 원격 서버(210)는 사용자 디바이스(205)에 그것을 송신하기 전에 식별자 또는 토큰을 암호화할 수 있고/있거나 사용자 디바이스(205)는 식별자 또는 토큰을 암호화된 포맷으로 저장할 수 있다.
원격 서버(210)는 추가로, 웹 서버(215)에 의해 호스팅되는 웹사이트와 연관된 트랜잭션들을 관리할 수 있는 처리 시스템(225)과 통신할 수 있다. 처리 시스템(225)은 인증서, 키(예를 들어, 개인 암호화 키) 또는 다른 데이터 요소에 대한 요청을 원격 서버(210)에 송신할 수 있다. 원격 서버(210)는 인증서 또는 데이터 요소를 생성 및 서명할 수 있다. 인증서 또는 데이터 요소는 다른 시스템들 및/또는 엔티티들 중에서 처리 시스템(225)(또는 연관된 엔티티)을 고유하게 식별할 수 있다. 원격 서버(210)는 키 및/또는 서명된 인증서 또는 데이터 요소를 하나 이상의 통신으로 처리 시스템(225)에 전송할 수 있다. 일부 경우들에서, 서명된 인증서 또는 데이터 요소의 생성 및/또는 키 및/또는 서명된 인증서 또는 데이터 요소의 전송은, IP 주소가 신뢰된 포맷인지 여부, 요청이 신뢰된 포맷의 메타데이터와 연관되는지 여부, 요청이 확립된 계정 또는 새로운 계정과 연관되는지 여부 등을 조건으로 하는 것과 같이, 조건부일 수 있다.
사용자 디바이스(205)는 웹 콘텐츠에 대한 요청(예를 들어, http 요청)을 웹 서버(215)에 전송할 수 있고, 웹 서버(215)는 웹 콘텐츠를 (예를 들어, http 응답의 전송을 통해) 사용자 디바이스(205)에 전송할 수 있다. 사용자 디바이스(205)는 사용자 디바이스(205)의 제1 디스플레이 상에 웹 콘텐츠를 제시할 수 있다.
웹 서버(215)는 특정 콘텐츠가 잠재적 트랜잭션에 대응하는 것을 검출하고 잠재적 트랜잭션에 대응하는 데이터를 원격 서버(210)에 전송할 수 있다. 데이터는 예를 들어, 잠재적 트랜잭션과 연관된 하나 이상의 파라미터(예를 들어, 목적지 및 값), 예컨대 지불이 전달될 엔티티의 이름 또는 식별자(예를 들어, 웹사이트 및/또는 처리 시스템(225)과 연관된 식별자), 지불 금액, 및/또는 사용자 디바이스(205)의 식별자(예를 들어, IP 주소)를 포함할 수 있다. 일 예로서, 데이터는, 승인된 경우에 지불이 전달될 은행 및 계정, 및 잠재적 지불 금액을 식별할 수 있다.
원격 서버(210)는 데이터에 기초하여 보안 검증 출력을 생성할 수 있다. 보안 검증 출력은 예를 들어, 목적지가 임의의 발행된 인증서 또는 다른 데이터 요소와 매칭 또는 대응하는지 여부를 나타낼 수 있다. 예를 들어, 보안 검증 출력은 그러한 매칭 또는 대응이 식별되는 때에만 생성될 수 있거나, 또는 보안 검증 출력은 출력의 하나 이상의 양상이 매칭 또는 대응이 식별되는지 여부를 식별하도록 구별적으로 생성될 수 있다. 보안 검증 출력은 또한 또는 대안적으로, 웹 서버로부터 수신된 데이터에서 식별된 하나 이상의 파라미터(예를 들어, 목적지 및/또는 값)를 식별할 수 있다.
하나의 경우에서, 원격 서버(210)는 먼저 목적지가 임의의 발행된 인증서 또는 다른 데이터 요소와 매칭 또는 대응하는지 여부를 결정한다. 매칭 또는 대응이 식별되지 않는 경우, 거절 통신이 생성되어 웹 서버(215)로 전송될 수 있다. 매칭 또는 대응이 식별되지 않는 경우, 원격 서버(210)는 목적지 및 값의 식별을 포함하는 이미지를 생성하고 서명할 수 있다. 원격 서버(210)는 서명된 이미지를 사용자 디바이스(205)에 전송할 수 있다. 사용자 디바이스(205)는 사용자 디바이스(205)의 제2 디스플레이 상에 서명된 이미지를 제시할 수 있다. 웹 콘텐츠 및 서명된 이미지의 동시 프리젠테이션은, 사용자로 하여금 제안된 트랜잭션이 신뢰된 상점과 연관되어 있다고 결정하고, 웹 콘텐츠에서 제안된 트랜잭션에 관해 제시된 세부사항이 서명된 이미지에서 식별된 것들과 매칭되는지 여부를 결정할 수 있게 한다.
사용자 디바이스(205)는 제안된 트랜잭션을 승인하는 하나 이상의 입력을 검출할 수 있다. 검출은, 예를 들어, 디바이스의 터치 ID 판독기에 의해 수신된 터치가 지문 프로파일과 매칭됨을 검출하는 것을 포함할 수 있다. 이어서 사용자 디바이스(205)는 보안 데이터 저장소로부터 보안 정보를 검색하고 보안 정보를 웹 서버(215)에 송신할 수 있다. 이어서 웹 서버(215)는 보안 정보를 복호화하기 위해 키(예를 들어, 원격 서버(210)로부터 수신된 개인키)를 사용할 수 있다. 이어서 웹 서버(215)는 복호화된 보안 정보를 처리 시스템(225)에 전송할 수 있다.
처리 시스템(225)은 (예를 들어, 목적지 및/또는 값을 식별하는) 하나 이상의 트랜잭션 파라미터 및 인증서 및/또는 처리 시스템(225) 또는 연관된 엔티티를 고유하게 식별하는 다른 데이터 요소와 함께, 복호화된 보안 정보를 원격 서버(210)에 전송할 수 있다. 처리 시스템(225)은, 통신이 이전에 보안 검증 출력이 생성된 세션과 동일한 세션에 대응한다는 것을 나타내는 추가 정보를 추가로 포함할 수 있다. 예를 들어, 추가 정보는 웹페이지 또는 웹사이트 식별자 또는 연관된 데이터(예를 들어, 도메인 이름 또는 전체 주소 도메인 이름(fully qualified domain name)), 세션 식별자, 및/또는 사용자 IP 주소를 포함할 수 있다. 원격 서버(210)는 추가 정보를 사용하여, 동일한 세션과 연관되어 이전에 수신된 하나 이상의 파라미터를 검색할 수 있다. 원격 서버(210)는 검색된 하나 이상의 파라미터가 현재 제공된 하나 이상의 트랜잭션 파라미터로 제공된 것들과 매칭되는지 여부를 결정할 수 있다. 파라미터들이 매칭되지 않는 경우, 원격 서버(210)는 트랜잭션을 거절하는 통신을 처리 시스템(225)에 송신할 수 있다.
매칭이 검출되는 경우, 원격 서버(220)는 하나 이상의 통신을 사용자 계정 관리 시스템(220)에 전송할 수 있다. 하나 이상의 통신은 복호화된 보안 정보 또는 그것의 처리된 버전의 적어도 일부 및 하나 이상의 트랜잭션 파라미터를 포함할 수 있다. 이어서, 사용자 계정 관리 데이터 저장소(220)는 상점 계정 관리 데이터 저장소(220)와 통신하여, 하나 이상의 트랜잭션에서 식별된 값을 사용자 계정으로부터, 목적지(예를 들어, 상점 계정)로서 식별된 계정으로 이송할 수 있다. 사용자 계정 관리 시스템(220)은 이송이 성공적이었는지 여부에 관한 통신을 원격 서버(210)에 전송할 수 있고, 원격 서버(210)는 그러한 정보를 사용자 디바이스(205), 처리 시스템(225)(이것은 이어서 웹 서버에 정보를 전송할 수 있음) 및/또는 웹 서버(215)에 유사하게 제공하여, 이송이 완료되었는지 여부를 나타내는 표시가 사용자 디바이스에서 (예를 들어, 제1 또는 제2 디스플레이 상에) 제시되도록 할 수 있다.
도 3은 본 발명의 일 실시예에 따른 사용자 디바이스(300)의 블록도이다. 사용자 디바이스(300)는 제1 프로세서(302) 및 제2 프로세서(304)를 포함한다. 제1 프로세서(302) 및 제2 프로세서(304) 중 하나 또는 둘 모두 각각은 마이크로프로세서, 중앙 처리 장치(CPU), 응용 주문형 집적 회로(ASIC), 디지털 신호 프로세서(DSP), 또는 이러한 디바이스들의 조합들 중 하나 이상을 포함할 수 있다. 제1 프로세서(302) 및 제2 프로세서(304) 중 하나 또는 둘 모두 각각은 단일-코어 또는 멀티-코어 마이크로프로세서를 포함할 수 있다. 본 명세서에 기술된 바와 같이, 용어 "프로세서"는 단일의 프로세서 또는 처리 유닛, 다수의 프로세서들, 다수의 처리 유닛들, 또는 다른 적합하게 구성된 컴퓨팅 요소 또는 요소들을 포괄하도록 의도된다. 동작시, 제1 프로세서(302) 제2 프로세서(304) 각각은 사용자 디바이스(300)의 일부의 동작을 제어할 수 있다. 다양한 실시예들에서, 제1 프로세서(302) 및/또는 제2 프로세서(304)는 프로그램 코드에 응답하여 다양한 프로그램들을 실행할 수 있고, 다수의 동시에 실행 중인 프로그램들 또는 프로세스들을 유지할 수 있다.
제1 프로세서(302)는 제2 프로세서와 별개일 수 있으며, 이는 (예를 들어) 사용자 디바이스 내에서 물리적으로 분리된, 서로 직접 연결되지 않은, 물리적으로 별개인 컴포넌트들인 것, 및/또는 서로 기능적으로 연결되지 않는 것에 대응할 수 있어 프로세서들 중 하나의 프로세서의 동작이 프로세서들 중 다른 프로세서의 동작에 영향을 미치지 않을 것이다.
제1 저장 서브시스템(306)으로부터의 데이터는 제1 프로세서(302)에 액세스가능하고 그에 의해 사용될 수 있고, 제2 저장 서브시스템(308)으로부터의 데이터는 제2 프로세서(304)에 액세스가능하고 그에 의해 사용될 수 있다. 일부 경우들에서, 제1 저장 서브시스템(306) 및 제2 저장 서브시스템(308) 각각은 별개의(예를 들어, 물리적으로 구별되는) 저장 컴포넌트를 포함한다. 일부 경우들에서, 제1 저장 서브시스템(306) 및 제2 저장 서브시스템(308) 각각은 단일 저장 컴포넌트의 상이한 파티션을 포함한다. 제1 저장 서브시스템(306) 및 제2 저장 서브시스템(306) 중 하나 또는 둘 모두 각각은 예를 들어, 자기 저장 매체, 플래시 메모리, 다른 반도체 메모리(예컨대, DRAM, SRAM), 또는 임의의 다른 비일시적 저장 매체, 또는 매체들의 조합을 이용하여 구현될 수 있고, 휘발성 및/또는 비휘발성 매체들을 포함할 수 있다.
적합한 프로그래밍을 통해, 제1 프로세서(302) 및/또는 제2 프로세서(304)는 사용자 디바이스(300)를 위한 다양한 기능을 제공할 수 있다. 제1 프로세서(302)는 제1 저장 서브시스템(306)에 저장된 제1 운영 시스템(OS)(310)을 실행할 수 있고, 제2 프로세서(304)는 제2 저장 서브시스템(308)에 저장된 제2 OS(312)를 실행할 수 있다. 제1 OS(310)는 제2 OS(312)와 동일한 유형 또는 상이한 유형의 OS일 수 있다.
제1 프로세서(302)는 추가로, 브라우저 애플리케이션, 이메일 애플리케이션, 및/또는 워드 프로세서 애플리케이션과 같은 하나 이상의 애플리케이션(314)을 실행할 수 있다. 하나 이상의 애플리케이션(314) 중 적어도 하나의 애플리케이션은 (실행될 때) 제1 사용자 인터페이스(UI)(316)(예를 들어, 제1 UI(316)에서의 제1 디스플레이(318))에서 제시되는 프리젠테이션들을 적어도 부분적으로 제어하도록 구성될 수 있다. 제2 프로세서(304)는 확인 앱(316)을 포함할 수 있는 하나 이상의 애플리케이션을 추가로 실행할 수 있다. 확인 앱(316)은 제2 UI(320)(예를 들어, 제2 UI(320)에서의 제2 디스플레이(322))에서 제시되는 프리젠테이션들을 적어도 부분적으로 제어하도록 구성될 수 있다. 예를 들어, 확인 앱(316)은 특정 소스(예를 들어, 원격 서버)로부터 서명된 이미지를 수신하고, 서명을 검증하고, 제2 디스플레이(322)에서 이미지를 제시하도록 구성될 수 있다. 일부 경우들에서, 제1 프로세서(302) 및 제2 프로세서(304) 중 하나 상에서 실행되도록 구성되는 적어도 하나의 애플리케이션은 다른 프로세서 상에서 실행되도록 구성되지 않는다. 예를 들어, 하나의 경우에서, 제1 프로세서(302)는 브라우저 애플리케이션 또는 사용자가 다운로드할 수 있는 하나 이상의 다른 애플리케이션을 실행하도록 구성될 수 있는 반면, 제2 프로세서(304)는 그러한 애플리케이션들을 실행하도록 구성되지 않을 수 있다. 그러한 차이들은, (예를 들어) 제2 저장 서브시스템(308)이 초기 애플리케이션이 없고/없거나 사용자가 애플리케이션들을 저장 서브시스템에 다운로드(또는 다른 식으로 생성 또는 저장)할 수 있게 하는 액세스가 제한되거나 없는 것으로 인해 초래될 수 있다.
하나 이상의 애플리케이션(예를 들어, 앱(314) 및/또는 확인 앱(320))은 본 명세서에 기술된 기술의 일부를 수행하도록 동작할 수 있다. 예를 들어, 제1 저장 서브시스템(306)에서의 브라우저 애플리케이션 저장소 및 확인 앱(320)은, 제1 디스플레이(318)에서 브라우저를 사용하여 제시된 웹페이지 상에 하나 이상의 트랜잭션 파라미터와 함께 제1 데이터를 제시하고, 웹페이지 상에 제시된 하나 이상의 트랜잭션 파라미터가 잠재적 트랜잭션에 대해 원격 서버에 식별되는 것들을 실제로 반영하는지 여부를 나타내는 제2 데이터를 제2 디스플레이(322)에서 제시하기 위해, 동시에(또는 순차적으로) 동작될 수 있다.
사용자 디바이스(300)는 보안 저장 서브시스템(328)에서 저장된 보안 정보(326)에 대한 액세스를 제어하는 보안 컴포넌트(324)를 포함할 수 있다. 보안 저장 서브시스템(328)은 예를 들어, 자기 저장 매체, 플래시 메모리, 다른 반도체 메모리(예컨대, DRAM, SRAM), 또는 임의의 다른 비일시적 저장 매체, 또는 매체들의 조합을 이용하여 구현될 수 있고, 휘발성 및/또는 비휘발성 매체들을 포함할 수 있다.
보안 컴포넌트(324)는, 예를 들어, 조건이 충족되었는지 여부를 결정하고 조건이 충족될 때에만 보안 정보(326)(예를 들어, 계정 식별자를 포함할 수 있는 암호화된 보안 정보)의 일부 또는 전부를 검색하고 (예를 들어, 보안 정보를 복호화하고/하거나 통신 서브시스템(332)과 같은 사용자 디바이스(300)의 다른 컴포넌트로 정보를 송신하는 것을 통해) 그에 대한 액세스를 제공하는 데이터 보안 애플리케이션(330)을 실행하도록 구성될 수 있다. 예를 들어, 조건은, 서명된 데이터가 원격 서버로부터 수신되었다는 표시를 제2 프로세서(304)로부터 수신했다는 것, 및 또한 데이터를 방출하라는 요청 또는 명령어에 대응하는 특정 유형의 사용자 입력을 검출하는 것을 포함할 수 있다. 특정 유형의 사용자 입력을 검출하는 것은 (예를 들어) 사용자가 (예를 들어, 압력 검출 컴포넌트, 스위치, 및/또는 카메라를 포함할 수 있는) 터치 식별 판독기(334)에 관여하고 있음(예를 들어, 그 위 또는 그 근처에 손가락을 터치하거나 배치하고 있음)을 검출하는 것을 포함할 수 있다. 검출은 (예를 들어, 하나 이상의 지문 특성이 사용자 프로파일과 매칭된다고 결정하거나 음성 명령을 제공한 음성이 사용자 프로파일과 매칭되는 하나 이상의 음성 특성을 갖는다고 결정하는 것을 통해) 사용자 입력이 특정 사용자에 대응한다고 결정하는 것을 추가로 포함할 수 있다. 보안 컴포넌트(324)는, 일부 경우들에서, 칩 및/또는 보안 요소의 일부 또는 전부를 포함한다.
사용자 디바이스(300)는 송신기, 수신기 및/또는 송수신기를 포함할 수 있는 통신 서브시스템(332)을 통해 통신을 송신 및 수신할 수 있다. 통신 서브시스템(332)은 (예를 들어) WiFi 네트워크와 같은 네트워크를 사용하여 신호들을 무선으로 전송 및/또는 수신하기 위한 안테나를 포함할 수 있다. 통신 서브시스템(332)은 추가적으로 또는 대안적으로, 블루투스, 저전력 블루투스 또는 근거리 통신 네트워크와 같은 단거리 네트워크를 통한 통신의 송신 및/또는 수신을 지원하도록 구성될 수 있다.
통신 서브시스템(332)은 (예를 들어) 예를 들어, Wi-Fi(IEEE 802.11 계열 표준들), 블루투스®(블루투스 SIG 사(Bluetooth SIG, Inc.)에 의해 공표된 표준들의 계열), 또는 무선 데이터 통신을 위한 다른 프로토콜들을 이용하여 무선 매체를 통한 데이터 통신을 가능하게 하는 안테나 및 지원 회로와 같은 RF 송수신기 컴포넌트들을 포함할 수 있는 무선 주파수(RF) 인터페이스를 포함할 수 있다. 일부 실시예들에서, RF 인터페이스(408)는 신호 강도의 추정을 통한 근접 검출을 지원하는 블루투스 LE(저전력) 근접 센서 및/또는 다른 전자 디바이스에 대한 근접을 결정하기 위한 다른 프로토콜들을 구현할 수 있다. RF 인터페이스는 하드웨어(예컨대, 드라이버 회로, 안테나, 변조기/복조기, 인코더/디코더, 및 다른 아날로그 및/또는 디지털 신호 처리 회로) 및 소프트웨어 컴포넌트들의 조합을 사용하여 구현될 수 있다. 다수의 상이한 무선 통신 프로토콜들 및 연관된 하드웨어가 RF 인터페이스 내에 통합될 수 있다.
통신 서브시스템(332)은 또한 또는 대안적으로, 사용자 디바이스(300)가 유선 통신 경로를 통해, 예를 들어, USB(Universal Serial Bus), UART(universal asynchronous receiver/transmitter), 또는 유선 데이터 통신을 위한 다른 프로토콜들을 이용하여 다양한 디바이스들(예를 들어, 서버 또는 조정 디바이스)과 통신하게 할 수 있는 커넥터 인터페이스를 포함할 수 있다.
일부 실시예들에서, 커넥터 인터페이스(410) 및/또는 RF 인터페이스(408)는, 다른 디바이스(예를 들어, 지불 단말기, 서버 또는 다른 사용자 디바이스)로부터 사용자 디바이스(300)로 (또는 그 반대로) 데이터가 전달되는 동기화 동작들을 지원하는 데 사용될 수 있다. 예를 들어, 사용자는 사용자 디바이스(300)에 대한 설정들 및 다른 정보를 맞춤화할 수 있다. 사용자 인터페이스(406)가 데이터-입력 동작들을 지원할 수 있지만, 사용자는, (예컨대, 실제 또는 가상 영숫자 키보드를 포함한) 더 큰 인터페이스를 갖는 별개의 디바이스(예컨대, 태블릿 또는 스마트폰) 상에서 맞춤화된 정보를 정의하고, 이어서 맞춤화된 정보를 동기화 동작을 통해 사용자 디바이스(300)로 전달하는 것이 더 편리하다는 것을 알 수 있다. 동기화 동작들은 또한 미디어 항목, 애플리케이션 프로그램, 개인 데이터, 및/또는 운영 시스템 프로그램과 같은 다른 유형들의 데이터를 저장 서브시스템(404)에서 로딩 및/또는 업데이트하는 데 사용될 수 있다. 동기화 동작들은 명시적 사용자 요청에 응답하여 수행되고/되거나, 예를 들어, 무선 디바이스(400)가 특정 호스트 디바이스와의 통신을 재개할 때에 또는 둘 중 어느 하나의 디바이스가 동기화된 정보의 그것의 복사본에 대한 업데이트를 수신하는 것에 응답하여 자동으로 수행될 수 있다.
제1 UI(316) 및 제2 UI(320) 각각은 사용자 디바이스(300)에 의해 수신되는 입력들을 모니터링할 수 있고/있거나 사용자 디바이스(300)에 의해 제시되는 출력들을 제어할 수 있다. 예를 들어, 제1 UI(316)는 영숫자 입력 선택을 수신하기 위한 키보드(336), 음성 또는 오디오 입력을 수신하기 위한 마이크로폰(338), 시각적(예를 들어, 제스처) 입력을 검출하기 위한 카메라, (예를 들어, 트랙패드에 포함된 그리고/또는 제1 디스플레이(318) 상의 지점 또는 움직임에 대응하는 특정 터치 또는 터치 움직임을 맵핑하기 위한) 터치 입력을 수신하기 위한 터치 센서(342), 및/또는 (예를 들어, 제 1 디스플레이 상의 특정 지점에 대응하는 마우스 또는 트랙패드 상의) 클릭을 검출하기 위한 클릭 검출기(344)를 포함하는, 사용자 입력을 수신하기 위한 하나 이상의 입력 컴포넌트를 포함할 수 있다. 다른 예로서, 제2 UI(320)는 또한 터치 센서(346) 및 클릭 검출기(348)를 포함할 수 있다. 하나의, 그 이상의 또는 모든 입력 컴포넌트들 각각은 검출된 자극을 전기 신호로, 예컨대 하나 이상의 문자, 단어, 픽셀, 또는 명령어에 대응하는 전기 신호로 변환할 수 있다.
터치 센서(342 및/또는 346)는 예를 들어, 센서의 표면 상의 특정 지점 또는 영역에 대한 접촉들의 위치를 알아내는 능력, 및 일부 경우들에서의, 다수의 동시 접촉들을 구별하는 능력을 갖는 용량성 센서 어레이를 포함할 수 있다. 일부 실시예들에서, 터치 센서(342 및/또는 346)는 대응하는 디스플레이(318 및/또는 322) 위에 덮어씌워져 터치스크린 인터페이스를 제공할 수 있으며, 대응하는 프로세서(302 및/또는 304)는 디스플레이 상에 현재 무엇이 디스플레이되는지에 따라 터치 이벤트들(하나 이상의 접촉으로 행해진 탭들 및/또는 다른 제스처들을 포함함)을 특정 사용자 입력들로 변환할 수 있다. 설명하기 위하여, 하나 이상의 터치 센서가 디스플레이 상의 터치의 위치를 결정할 수 있다. 터치 센서는 소정 실시예들에서 자기-용량성이거나, 다른 실시예들에서는 상호-용량성이거나, 또는 이들의 조합일 수 있다.
클릭 검출기(344 및/또는 348)는 버튼의 클릭 및/또는 누르기를 검출할 수 있다. 예를 들어, 클릭은, 버튼 아래의 요소가 하부 디바이스 컴포넌트와 접촉하여 회로를 완성할 때 또는 버튼의 누르기가 스위치를 활성화 또는 비활성화되게 할 때, 검출될 수 있다. 일부 경우들에서, 클릭 검출기(344 및/또는 348)는 복수의 버튼 각각에 대한 클릭 및/또는 누르기를 검출할 수 있고, 어느 것이 클릭되었는지를 식별할 수 있다.
카메라(340)는 예를 들어, CMOS 센서와 같은 이미지 센서 및 이미지 센서 상으로 이미지를 집속시키도록 배열된 광학 컴포넌트들(예컨대, 렌즈들)과 함께, 이미징 컴포넌트들을 이용하여 스틸 및/또는 비디오 이미지들을 캡처 및 저장하도록 동작가능한 제어 로직을 포함하는, 콤팩트 디지털 카메라를 포함할 수 있다. 이미지들은 예를 들어, 제1 저장 서브시스템(306)에 저장될 수 있고/있거나, 저장을 위해 다른 디바이스들로 사용자 디바이스(300)에 의해 전송될 수 있다. 구현예들에 따라, 광학 컴포넌트들은 고정된 초점 거리 또는 가변 초점 거리를 제공할 수 있으며; 후자의 경우, 자동초점이 제공될 수 있다.
마이크로폰(338)은 음파를 전자 신호로 변환하는 임의의 디바이스를 포함할 수 있다. 일부 실시예들에서, 마이크로폰(338)은 사용자가 말하는 특정 단어들의 표현을 제공하기에 충분히 민감할 수 있으며; 다른 실시예들에서, 마이크로폰(338)은 특정 사운드들의 고품질 전자 표현을 제공할 필요 없이 일반적인 주위 사운드 레벨들의 표시들을 제공하는 데 사용가능할 수 있다.
제1 UI(316) 및 제2 UI(320) 각각은 또한 디스플레이(제1 디스플레이(318) 또는 제2 디스플레이(322)), 스피커들(예를 들어, 스피커들(350)) 또는 햅틱 출력(도시되지 않음)과 같은 하나 이상의 출력 컴포넌트를 포함할 수 있다. 하나의, 그 이상의 또는 모든 출력 컴포넌트들 각각은 전기 자극을 시각적, 오디오 또는 햅틱 자극과 같은 다른 유형의 자극으로 변환할 수 있다.
제1 디스플레이(318) 및 제2 디스플레이(322) 각각 또는 둘 모두는 콤팩트 디스플레이 기술들, 예를 들어, LCD(액정 디스플레이), LED(발광 다이오드), OLED(유기 발광 다이오드) 등을 이용하여 구현될 수 있다. 일부 경우들에서, 제1 디스플레이(318)는 (예를 들어, 면적의 관점에서 그리고/또는 적어도 하나의 차원을 따라) 제2 디스플레이(322)보다 클 수 있다. 예를 들어, 제1 디스플레이(318)의 높이는 제2 디스플레이의 높이보다 적어도 2배, 적어도 5배, 또는 적어도 10배 더 클 수 있다. 다양한 경우들에서, 제1 디스플레이(318) 및 제2 디스플레이(322)는 사용자 디바이스(300)의 상이한 표면들 또는 동일한 표면 상에 있다. 예를 들어, 제2 디스플레이(322)는 지지체(예를 들어, 책상, 무릎, 테이블 등) 상에 평평하게 놓이도록 구성될 수 있는 랩톱 디바이스의 제1 표면 상에 위치될 수 있고, 제1 디스플레이(318)는, 제1 표면에 힌지될(hinged) 수 있고 제1 표면으로부터 각도적으로 분리된 위치로 개방되도록 구성될 수 있는 랩톱 디바이스의 제2 표면 상에 위치되도록 구성될 수 있다.
일부 경우들에서, 도시된 컴포넌트들 중 둘 이상은 단일 컴포넌트 내에 통합될 수 있다. 예를 들어, 터치 스크린은 디스플레이 및 터치 센서 둘 모두를 포함할 수 있다. 일부 경우들에서, 제1 프로세서(302) 및 제2 프로세서 (304) 각각은 적어도 하나의 동일한 입력 컴포넌트로부터 입력들을 수신할 수 있고, 적어도 하나의 동일한 출력 컴포넌트로 출력 명령어들을 전송하도록 구성될 수 있다.
일부 경우들에서, 제1 프로세서(302)에서의 앱의 실행은 제1 디스플레이(318)에서의 웹페이지 프리젠테이션들이 하나 이상의 유형의 입력(예를 들어, 특정 커서 위치, 음성 명령, 또는 키 입력에 대응하는 하나 이상의 클릭)을 검출하는 것에 응답하여 변화하게 할 수 있다. 이러한 프리젠테이션 변화들은 통신 서브시스템(332)을 통해 웹페이지 요청들을 생성 및 전송하고 웹페이지 데이터를 수신한 결과일 수 있다. (예를 들어, 소스, 프로세서 특성 또는 명령어 유형을 식별하는) 다양한 메타데이터 양상들과 연관된 통신은 통신 서브시스템(332)에 의해 제1 프로세서(302) 및 제2 프로세서(304) 중 하나에 선택적으로 라우팅될 수 있거나, 또는 제1 프로세서(302) 및 제2 프로세서(304) 중 하나 또는 둘 모두 상에서의 특정 앱들 또는 운영 시스템들의 실행은 프로세서로 하여금 특정 메타데이터 양상들과 연관된 통신을 선택적으로 요청하거나 사용하게 할 수 있다. 예를 들어, 제2 프로세서(304)에서의 확인 앱(320)의 실행은, 제2 프로세서(304)로 하여금 특정 시스템 또는 서버로부터의 통신에 대해 그리고/또는 통신이 확인 기술에 대응한다는 것을 나타내는 메타데이터를 이용해 모니터링하게 할 수 있다. 이러한 통신을 검출하면, 앱 실행은 통신 내의 서명이 검증되게 하고 통신으로부터의 이미지가 제2 디스플레이에서 제시되게 하는 것을 야기할 수 있다.
이어서 보안 컴포넌트(324)에서의 데이터 보안 앱(330)의 실행은, 웹페이지와 연관된 소스에 보안 정보를 전송하라는 명령어에 대응하는 특정 사용자로부터의 입력을 터치 식별 판독기(334)가 수신하는지 여부를 결정하기 위해 모니터링할 수 있다. 그러한 입력을 검출하면, 보안 컴포넌트(324)는 보안 정보(326)의 일부 또는 전부를 검색하고 정보의 일부 또는 전부의 전송을 용이하게 할 수 있다. 일부 경우들에서, 보안 정보는 다수의 계정들 각각에 대응하는 정보를 포함하고, 보안 컴포넌트(324)는 선택적으로 단일 계정에 대한 정보를 검색한다. 단일 계정은 디폴트 계정, 또는 (예를 들어) 제1 UI(316) 또는 제2 UI(320)에서 입력 컴포넌트에 의해 검출된 사용자 입력에 기초하여 식별된 계정에 대응할 수 있다.
사용자 디바이스(300)는 사용자 디바이스(300)에 전력 및 전력 관리 능력을 제공할 수 있는 전력 서브시스템(350)을 포함할 수 있다. 예를 들어, 전력 서브시스템(350)은 배터리(예컨대, 재충전가능한 배터리), 및 배터리로부터의 전력을, 전력을 필요로 하는 사용자 디바이스(300)의 다른 컴포넌트들로 분배하기 위한 연관된 회로를 포함할 수 있다. 일부 실시예들에서, 전력 서브시스템(350)은 또한, 예를 들어, 전력 또는 충전 코드가 전원에 연결될 때 배터리를 충전하도록 동작가능한 회로를 포함할 수 있다. 일부 실시예들에서, 전력 서브시스템(350)은 전력 또는 충전 코드에 의존하지 않고 배터리를 충전하기 위해 유도 충전기와 같은 "무선" 충전기를 포함할 수 있다. 일부 실시예들에서, 전력 서브시스템(350)은 또한 배터리에 추가하여 또는 그 대신에, 태양전지와 같은 다른 전원들을 포함할 수 있다.
일부 실시예들에서, 전력 서브시스템(350)은 전력 소모를 효율적으로 관리하기 위해 사용자 디바이스(300) 내의 컴포넌트들로의 전력 분배를 제어할 수 있다. 예를 들어, 전력 서브시스템(350)은, 적어도 정의된 기간 동안 입력이 하나 이상의 입력 컴포넌트(예를 들어, 키보드(336), 터치 센서(342) 및/또는 클릭 검출기(344))를 통해 검출되지 않았음을 검출하면, 자동으로 디바이스(400)를 "슬립(sleep)" 또는 "하이버네이션(hibernation)" 상태에 들어가게 할 수 있다. 하이버네이션 상태는 전력 소모를 감소시키도록 설계될 수 있으며; 이에 따라, 제1 디스플레이(318), 제2 디스플레이(322), 및/또는 통신 서브시스템(332) 중 하나, 그 이상 또는 전부의 전원이 차단될(예컨대, 저전력 상태로 또는 완전히 턴오프될) 수 있는 한편, 하나 이상의 입력 컴포넌트(예를 들어, 키보드(336), 터치 센서(342) 및/또는 클릭 검출기(334))는 사용자가 사용자 디바이스(300)에서 입력을 제공할 때를 검출하기 위해 (연속적으로 또는 간격을 두고) 전원이 투입될 수 있다.
전력 서브시스템(350)은 또한, 이용가능한 전력의 공급원 및 양에 기초하여 사용자 디바이스(300)의 다른 컴포넌트들의 전력 소모를 조절하는 것, 배터리 내의 저장된 전력을 모니터링하는 것, 저장된 전력이 최소 레벨 아래로 하락하는 경우 사용자 경고들을 생성하는 것 등과 같은, 다른 전력 관리 기능들을 제공할 수 있다.
일부 실시예들에서, 전력 서브시스템(350)의 제어 기능들은 실행되고 있는 프로그램 코드에 응답하여 제1 프로세서(302) 및/또는 제2 프로세서(304)에 의해 생성되는 제어 신호들에 응답하여 동작하는 프로그램가능한 또는 제어가능한 회로들을 이용하여, 또는 별개의 마이크로프로세서 또는 마이크로제어기로서 구현될 수 있다. 일부 실시예들에서, 전력 서브시스템(350)의 제어 기능들은 디바이스와의 사용자 상호작용에 기초할 수 있다(예를 들어, 디바이스가 특정 방식으로, 예컨대 정의된 시간 기간 동안에, 터치, 버튼 누르기 또는 네트워크 활동을 통해 상호작용되지 않은 경우에 컴포넌트들의 전원을 차단함).
사용자 디바이스(300)가 예시적이며, 변형들 및 수정들이 가능하다는 것이 이해될 것이다. 예를 들어, 제1 UI(316) 및 제2 UI(320) 중 하나 또는 둘 모두는 더 적은, 상이한 또는 추가적인 입력 또는 출력 컴포넌트들, 예컨대 햅틱 출력을 포함할 수 있다. 다른 예로서, 도시되지는 않았지만, 사용자 디바이스(300)는 하나 이상의 포트를 포함할 수 있다. 예시하기 위하여, 사용자 디바이스(300)는, 사용자 디바이스(300)가 예를 들어, 내부 배터리를 충전하기 위한 전력을 수신하게 할 수 있는 전력 포트를 포함할 수 있다. 다른 예시로서, 사용자 디바이스(300)는 USB 커넥터 및 지원 회로를 포함할 수 있다. 포트는 전용 전력 및 접지 접점들뿐만 아니라, 상이한 통신 기술들을 병렬로 구현하는 데 사용될 수 있는 디지털 데이터 접점들을 제공하는 맞춤 커넥터를 포함할 수 있으며; 예를 들어, 2개의 핀이 USB 데이터 핀들(D+ 및 D-)로서 할당될 수 있고 2개의 다른 핀이 시리얼 전송/수신 핀들로서 할당될 수 있다(예를 들어, UART 인터페이스를 구현함). 특정 통신 기술들에 대한 핀들의 할당은 하드웨어 내장되거나(hardwired), 연결이 설정되는 동안에 협상될 수 있다. 일부 실시예들에서, 커넥터는 또한 오디오 및/또는 비디오 신호들을 위한 연결부들을 제공할 수 있으며, 이는 다른 디바이스로 또는 그로부터, 아날로그 및/또는 디지털 포맷들로 전송될 수 있다.
또한, 사용자 디바이스(300)가 특정 블록들을 참조하여 설명되지만, 이들 블록들이 설명의 편리함을 위해 정의되며 컴포넌트 부분들의 특정 물리적 배열을 의미하도록 의도되지 않는다는 것이 이해될 것이다. 또한, 블록들은 물리적으로 별개인 컴포넌트들에 대응할 필요는 없다(그러나 가능할 수 있다). 블록들은, 예를 들어 프로세서를 프로그래밍하거나 적절한 제어 회로를 제공함으로써 다양한 동작들을 수행하도록 구성될 수 있으며, 다양한 블록들은, 초기 구성이 획득되는 방법에 따라 재구성가능하거나 재구성가능하지 않을 수 있다. 본 발명의 실시예들은 회로 및 소프트웨어의 임의의 조합을 사용하여 구현된 전자 디바이스들을 포함한, 다양한 장치들에서 실현될 수 있다. 또한, 도 3의 모든 블록이 사용자 디바이스의 주어진 실시예에서 구현될 필요는 없다.
도 4는 본 발명의 일 실시예에 따른, 데이터 무결성의 평가들을 용이하게 하기 위한 프로세스(400)의 흐름도이다. 프로세스(400)의 일부 또는 전부는 사용자 디바이스(100, 205 또는 300)와 같은 사용자 디바이스에 의해 수행될 수 있다.
프로세스(400)는, 콘텐츠 요청 통신이 디바이스의 제1 프로세서를 사용하여 디바이스로부터 웹 서버로 전송될 수 있는 블록(405)에서 시작한다. 예를 들어, 제1 프로세서는 (예를 들어, 브라우저 애플리케이션의 실행을 통해) 콘텐츠 요청 통신을 생성하고, 전송을 위해 디바이스의 통신 서브시스템에 통신을 제공할 수 있다. 콘텐츠 요청 통신은 (예를 들어) 웹페이지, 도메인 이름, 링크, 전체 주소 도메인 이름의 식별자. 콘텐츠 요청 통신은 http 요청을 포함할 수 있다. 웹 서버는 요청에 포함된 웹페이지, 도메인 이름, 링크, 전체 주소 도메인 이름의 식별자에 대응하는 웹페이지를 호스팅하는 서버를 포함할 수 있다.
블록(410)에서, 응답 통신이 웹 서버로부터 디바이스에서 수신될 수 있다. 응답 통신은 식별된 웹페이지, 도메인 이름, 링크, 전체 주소 도메인 이름에 대응하는 콘텐츠를 포함할 수 있다. 콘텐츠는 잠재적 트랜잭션에 대응할 수 있고/있거나 그를 적어도 부분적으로 정의할 수 있다. 예를 들어, 콘텐츠는 이용가능한 제품 또는 서비스, 목적지 이름 또는 식별자(예를 들어, 그것이 이용가능한 엔티티의 이름 또는 식별자), 및/또는 제1 값(예를 들어, 가격)을 (예를 들어, 이름, 식별 영숫자 코드, 사진, 비디오, 설명, 또는 다른 데이터 요소들에 의해) 식별할 수 있다. 일부 경우들에서, 콘텐츠는 트랜잭션을 개시하고/하거나 계속하기 위한 명령어에 대응할 수 있는 사용자 입력을 수용하기 위한 하나 이상의 필드를 포함할 수 있다.
블록(415)에서, 디바이스의 제1 디스플레이 상에서의 콘텐츠의 제1 프리젠테이션은 제1 프로세서를 사용하여 용이하게 될 수 있다. 예를 들어, 제1 프로세서에 의해 실행되고 있는 애플리케이션을 사용하여, 콘텐츠는 브라우저 윈도우 또는 다른 윈도우에서 제시될 수 있다. 일부 경우들에서, 블록(415)은 새로운 윈도우를 열고 새로운 윈도우에서 콘텐츠를 제시하는 것을 포함한다. 제1 디스플레이는 디바이스의 일차 통합된 디스플레이를 포함할 수 있다. 예를 들어, 디바이스는 2개의 힌지된 표면들을 포함할 수 있으며, 여기서 바닥 표면은 지지체(예를 들어, 테이블, 무릎 등) 상에 놓이도록 구성될 수 있으며 키보드를 포함하고, 다른 표면은 바닥 표면으로부터 열리고 디바이스가 사용 중일 때 지지체와 평행하지 않도록 구성될 수 있다. 제1 디스플레이는 다른 표면 내에 통합된 디스플레이를 포함할 수 있다. 일부 경우들에서, 제1 디스플레이는 표면 상의 면의 적어도 50, 적어도 75, 또는 적어도 90 퍼센트에 걸쳐 연장된다.
블록(420)에서, 통신이 원격 서버로부터 제2 프로세서에서 수신될 수 있다. 예를 들어, 통신 컴포넌트는 통신을 수신하고 통신이 제2 프로세서 또는 제2 프로세서와 연관된 애플리케이션에 대응하는 데이터 또는 메타데이터를 포함함을 검출할 수 있고, 이어서 통신을 제2 프로세서로 라우팅할 수 있다.
통신은 제1 값에 대응하는 제2 값을 포함할 수 있고, (일부 경우들에서는) 블록(410)에서 수신된 콘텐츠에서 식별된 데이터에 대응하는 추가 정보(예를 들어, 목적지 이름)를 포함할 수 있다. 대응은 값들(또는 다른 데이터)이 매칭됨을 나타낼 필요는 없다. 예를 들어, 제1 및 제2 값들이 매칭되는지 여부는 블록(410)에서 수신된 콘텐츠가 신뢰되고 정확한지 여부 또는 콘텐츠가 데이터 무결성의 부재 또는 보안 위협과 연관되는지 여부를 나타낼 수 있다. 통신은 웹 서버로부터의 다른 통신의 수신에 응답하여 원격 서버에서 생성되었을 수 있다.
예를 들어, 웹 서버 또는 연관된 시스템은 디바이스로부터 콘텐츠 요청을 수신하는 것에 응답하여 원격 서버에 다른 통신을 전송했을 수 있다. 다른 통신은 제2 값 및/또는 잠재적 트랜잭션을 적어도 부분적으로 정의하는 추가 정보를 포함했을 수 있다. 원격 서버는, 혹시 원격 서버가 트랜잭션을 진행하라는 후속 요청을 웹 서버 또는 연관된 시스템으로부터 수신한다면 추후 데이터 비교에서 사용하기 위해, 이 데이터를, 세션의, 디바이스의, 웹 서버의, 웹페이지의, 그리고/또는 날짜 및 시간의 식별자와 같은 식별 정보와 연관하여 저장할 수 있다. 데이터에 있어서 차이들이 검출되면, 원격 서버는 요청을 거절할 수 있다. 따라서, 웹 서버가 통신 내에 정확한 데이터를 제공하는 것이 유리할 수 있다.
제2 프로세서는 제1 프로세서와 독립적으로 동작하도록 구성되어, 제1 및 제2 프로세서들 중 하나에 의해 수행되는 동작이 제1 및 제2 프로세서들 중 다른 프로세서의 동작에 영향을 미치지 않도록 할 수 있다. 제1 및 제2 프로세서들은 상이한 운영 시스템들 및/또는 운영 시스템의 상이한 반복들을 실행할 수 있다. 이러한 독립성은, 다른 프로세서가 보안 위협에 의해 영향을 받는 결과로서, 보안 위협(예를 들어, 바이러스)에 의해 영향을 받음으로써 프로세서들 중 하나를 억제 또는 방지할 수 있다.
블록(425)에서, 제2 값을 나타내는 보안 검증 출력이 (예를 들어, 제2 프로세서를 사용하여) 생성될 수 있다. 보안 검증 출력을 생성하는 것은, 원격 서버로부터 수신된 통신으로부터 데이터를 추출하는 것 및/또는 통신 내의 데이터에 기초하여 새로운 데이터 객체(예를 들어, 이미지, 오디오 자극 및/또는 텍스트 프리젠테이션)를 생성하는 것을 포함할 수 있다. 예를 들어, 통신은 서명된 이미지 객체를 포함할 수 있고, 블록(425)은 이미지 객체에 대응하는 통신의 일부를 식별하는 것을 포함할 수 있다. 다른 예로서, 통신은 제2 값(예를 들어, 그리고 제2 목적지 이름)을 식별할 수 있고, 제2 프로세서는 제2 값(예를 들어, 그리고 제2 목적지 이름)을 포함하는 서명된 이미지, 오디오 신호 및/또는 시각적 프리젠테이션(예를 들어, 텍스트를 포함함)을 생성할 수 있다.
일부 경우들에서, 제2 프로세서는 통신에 포함된 서명을 확인하는 데 관여될 수 있다. 일부 경우들에서, 블록(425)의 수행은 서명이 확인되는지 여부를 조건으로 할 수 있다.
서명을 확인하는 것은 예를 들어, 서명이 저장된 키 또는 알고리즘과 일치하는지 여부를 결정하는 것, 서명의 포맷이 저장된 정의된 유형의 포맷에 매칭되거나 그에 대응하는지 여부를 결정하는 것, 서명의 일부 또는 전부가 정의되거나 저장된 포맷 또는 값과 매칭되거나 부합하는지 여부를 결정하는 것을 포함할 수 있다.
블록(430)에서, 디바이스에서의 검증 출력의 제2 프리젠테이션은 제2 프로세서를 사용하여 용이하게 될 수 있다. 제2 프리젠테이션은 콘텐츠의 제1 프리젠테이션과 함께 동시에 제시될 프리젠테이션을 포함할 수 있다. 예를 들어, 제2 프리젠테이션의 적어도 일부는 제1 프리젠테이션의 적어도 일부와 동시에 일어날 수 있다. 제2 프리젠테이션은 제1 디스플레이와 별개인 제2 디스플레이 상에 제시될 수 있다. 제2 디스플레이는 예를 들어, 디바이스의 동적 기능 열(dynamic function row)을 포함할 수 있다. 제2 디스플레이는, 예를 들어, 키보드 근처에, 그에 인접하여, 또는 그와 동일한 표면 상에 위치설정될 수 있다. 제 2 디스플레이는 예를 들어, 제 1 디스플레이와 독립적으로 제어되는 디스플레이를 포함할 수 있다. 일부 경우들에서, 제2 디스플레이는 제1 프로세서에 비해 제2 프로세서로부터의 명령어들에 의해서만 제어되거나 또는 그에 의해 우선적으로 제어되는 디스플레이를 포함한다.
따라서, 프로세스(400)는 다수의 프리젠테이션들의 프리젠테이션을 용이하게 할 수 있으며, 그 각각은 값 및/또는 다른 정보를 포함할 수 있다. 동시 프리젠테이션은 사용자가 프리젠테이션들 사이에서 값들 및/또는 다른 정보를 비교하게 할 수 있다. 매칭되는 값들 및/또는 매칭되는 다른 정보는, 웹 서버로부터의 콘텐츠가 신뢰할 수 있다는 것 및/또는 제안된 트랜잭션이 보안된다는 것을 나타낼 수 있다. 일부 실시예들에서, 디바이스는 실제로 또는 효과적으로 그리고/또는 기능적으로 격리된 다수의 컴포넌트들(예를 들어, 프로세서들, 운영 시스템들 및/또는 디스플레이들)을 포함하여, 디바이스의 일부에 영향을 미치는 개개의 보안 위협들이 디바이스의 나머지 부분을 손상시킬 가능성이 낮도록 할 수 있다.
디바이스는 동시 프리젠테이션들의 적어도 일부에 후속하여, 트랜잭션이 승인되었음을 나타내고 보안 정보가 목적지에 전송될 것을 요청하는 입력을 수신하도록 구성될 수 있다. 예를 들어, 입력은 프로파일과 매칭되는 하나 이상의 지문 특성을 갖는, 사용자로부터의 터치 ID 판독기 상의 터치를 포함할 수 있다. 이어서, (예를 들어, 계정의 식별자를 포함하는) 보안 정보가 보안 데이터 저장소로부터(예를 들어, 보안 요소로부터) 검색되고, 선택적으로 복호화되고, 원격 서버 및/또는 웹 서버로 전송될 수 있다. 일부 경우들에서, 제1 값과 같은 다른 정보가 또한 원격 서버 및/또는 웹 서버로 전송될 수 있다.
도 5는 본 발명의 일 실시예에 따른, 데이터 무결성의 평가를 용이하게 하기 위한 프로세스(500)의 흐름도이다. 프로세스(500)는 다양한 디바이스들 및 디바이스 컴포넌트들 간의 통신 교환을 포함한다. 사용자 디바이스는 제1 프로세서, 제1 디스플레이, 제2 프로세서, 제2 디스플레이 및 보안 데이터 저장소 각각을 포함할 수 있다.
제1 동작은, 제1 프로세서를 사용하여, 사용자 디바이스로부터의 콘텐츠 요청을 웹 서버로 송신하는 것을 포함할 수 있다. 콘텐츠 요청은 http 콘텐츠 요청 및/또는 웹 데이터에 대한 요청을 포함할 수 있다. 제2 동작은 요청된 콘텐츠를 포함하는 응답을 웹 서버로부터 사용자 디바이스로(제1 프로세서에 의해 처리되기 위해) 전송하는 것을 포함할 수 있다. 콘텐츠는 값 및 목적지를 포함하는, 잠재적 트랜잭션의 하나 이상의 파라미터를 포함할 수 있다.
제3 동작은 제1 프로세서가 제1 디스플레이(예를 들어, 통합된 제1 디스플레이)에 콘텐츠를 송신하는 것을 포함할 수 있고, 제4 동작은 제1 디스플레이가 콘텐츠를 디스플레이하는 것을 포함할 수 있다. 예를 들어, 콘텐츠는 브라우저 상에서 또는 다른 윈도우에서, 웹페이지, 팝업 윈도우로서 제시될 수 있다. 콘텐츠는 일정 기간 동안 정의될 수 있다. 일정 기간은 예를 들어, 디바이스에서 사용자로부터 (예를 들어, 새로운 콘텐츠 요청에 대응하는) 내비게이션 입력이 수신되고, (예를 들어, 새로운 웹페이지에 대응하는 콘텐츠와 같은 특정 유형의) 새로운 콘텐츠가 웹 서버 또는 다른 웹 서버로부터 수신되는 시간, 및/또는 사용자 입력이 애플리케이션에서 나가거나 그를 닫기 위한 요청에 대응하는 시간에 대응하는, 종료 시간에 의해 정의되는 기간을 포함할 수 있다.
제5 동작은 제1 프로세서가 트랜잭션 프로세스를 개시하기 위한 요청에 대응하는 입력을 검출하는 것을 포함할 수 있다. 입력은 예를 들어, 커서가 디스플레이된 콘텐츠에서 요청 옵션에 또는 그 위에 위치될 때 (예를 들어, 마우스, 트랙 패드 또는 터치스크린 상의) 클릭, 탭 또는 터치를 포함할 수 있다. 예를 들어, 입력은 트랜잭션 프로세스를 개시하는 것으로서 식별된 링크에 대응하는 디스플레이된 콘텐츠의 일부를 클릭, 터치, 또는 탭핑하는 것을 포함할 수 있다. 입력은 요청을 식별하는 하나 이상의 키스트로크 또는 마이크로폰에서 수신된 음성 명령의 엔트리를 포함할 수 있다.
제6 동작은 제1 프로세서가 웹 서버에 트랜잭션 명령어를 송신하는 것을 용이하게 하는 것을 포함할 수 있다. 명령어는 예를 들어, 입력에 대응하는 정보(예를 들어, 어떤 링크가 선택되었는지), 사용자 디바이스에 대응하는 정보(예를 들어, 디바이스 식별자 및/또는 IP 주소), 및/또는 통신 교환에 대응하는 정보(예를 들어, 세션 식별자)를 포함할 수 있다.
제7 동작은, 웹 서버가 사용자 계정 정보의 방출을 제어하는 원격 서버와 같은 원격 서버에, 트랜잭션 표시를 포함하는 통신을 송신하는 것을 포함한다. 표시는 콘텐츠에 포함되고/되거나 콘텐츠와 연관된 잠재적 트랜잭션을 정의하는 하나 이상의 파라미터 중 적어도 하나를 포함할 수 있다. 예를 들어, 표시는 콘텐츠에서 판매중인 것으로 제시된 품목의 값(예를 들어, 가격) 및 목적지(예를 들어, 상점 이름 또는 식별자)를 포함할 수 있다. 표시는 또한 사용자 디바이스에 관한 정보(예를 들어, 사용되고 있는 고유 디바이스 식별자, IP 주소, 운영 시스템, 및/또는 브라우저) 및/또는 현재 통신 교환(예를 들어, 디스플레이되고 있는 콘텐츠의 웹페이지, 도메인 이름, 또는 다른 식별자 및/또는 세션 식별자)을 포함할 수 있다.
제8 동작에서, 원격 서버는 웹 서버로부터의 통신에 기초하여 서명된 데이터를 생성한다. 하나의 경우에서, 데이터는 통신에서 식별된 하나의, 그 이상의, 또는 모든 파라미터들 각각을 나타낸다. 예를 들어, 서명된 데이터는 값을 식별하는 하나 이상의 숫자 및 목적지의 이름의 철자인 글자들의 세트를 포함하는 이미지 객체를 포함할 수 있다. 다른 예로서, 서명된 데이터는 값 및 목적지 이름을 말하는 것을 포함하는 오디오 파일을 포함할 수 있다.
생성은 객체(예를 들어, 이미지 객체) 및 하나 이상의 키에 기초하여 서명을 생성하는 것을 포함할 수 있다. 예를 들어, 서명은 객체에 기초하여 생성된 해시 값 및 개인키를 사용하여 암호화된 해싱 알고리즘을 포함할 수 있다. 암호화는, 수신 디바이스가 (예를 들어, 수신 디바이스에 발행된 인증서에서 제공되는) 공개키를 사용하여 해시 값을 복호화할 수 있도록 수행될 수 있다. 수신 디바이스는 해시 값을 사용하여, 수반되는 객체가 손상되지 않았음을 보장할 수 있다. 서명된 데이터는 추가로 (예를 들어) 해싱 알고리즘을 식별할 수 있다.
제9 동작에서, 원격 서버는 서명된 데이터를 사용자 디바이스의 제2 프로세서로 송신한다. 제2 프로세서는 디바이스 상의 제2 디스플레이를 제어하는(예를 들어, 입력들을 검출하고 출력들을 식별하는) 디스플레이를 포함할 수 있다. 제2 디스플레이는 예를 들어, 터치스크린을 포함하는 가상 키보드 또는 디지털 기능 열을 포함할 수 있다. 제2 디스플레이는, 적어도 일부 시간에, 옵션의 터치를 통해 선택될 수 있는 하나 이상의 입력 옵션을 제시하도록 구성될 수 있다. 하나 이상의 입력 옵션은 예를 들어, 하나 이상의 기능(예를 들어, F1, F2 등) 및/또는 스크린 입력/출력 제어(예를 들어, 제1 디스플레이의 밝기, 스피커들의 볼륨 등)를 포함할 수 있다. 제2 디스플레이는, 디스플레이에서의 프리젠테이션들이 (예를 들어, 제2 디스플레이 또는 다른 입력 컴포넌트에서 검출된 사용자 입력에 응답하여 그리고/또는 제2 프로세서에서 실행되고 있는 애플리케이션의 명령어에 응답하여) 시간에 따라 변화할 수 있도록 구성될 수 있다.
제2 프로세서는 제1 프로세서와 독립적인, 물리적으로 구별되는, 그리고/또는 (예를 들어, 전자 회로를 통해) 연결되지 않을 수 있다. 일부 경우들에서, 하나 이상의 규칙은, 어떤 유형들의 통신이 제1 및 제2 프로세서들 중 어느 것으로 라우팅될지, 그리고/또는 제1 및 제2 프로세서들 각각이 어떤 유형들의 통신을 처리할지를 나타낸다.
제10 동작에서, 제2 프로세서는 서명된 데이터에서 서명을 확인한다. 확인은, 예를 들어, (예를 들어, 이전에 원격 서버로부터 수신된) 저장된 공개키를 사용하여 서명을 복호화하는 것 및/또는 서명 및/또는 복호화된 서명이 특정 데이터에 대응하는지 여부를 결정하는 것을 포함할 수 있다. 하나의 경우에서, 결정은, 복호화된 서명에서 식별된 해시 값이, 이미지 및 (예를 들어, 복호화된 서명에서 미리 정의되거나 식별될 수 있는) 해싱 알고리즘를 사용하여 제2 프로세서가 생성하는 해시 값과 매칭되는지 여부를 결정하는 것을 포함한다.
제11 동작에서, 제2 프로세서는 이미지를 제2 디스플레이(예를 들어, 통합된 제2 디스플레이)에 송신하고, 제12 동작은 제2 디스플레이가 이미지를 디스플레이하는 것을 포함할 수 있다. 예를 들어, 콘텐츠는 가상 키보드의 일부에 걸쳐 제시될 수 있다. 이미지는 일정 기간 동안 정의될 수 있다. 이미지의 디스플레이는, 이미지가 디스플레이되는 기간의 적어도 일부가 콘텐츠가 디스플레이되는 기간의 적어도 일부에 대응할 수 있도록, 콘텐츠의 디스플레이와 동시에 이루어질 수 있다.
이미지가 디스플레이되는 기간은 예를 들어, 미리 정의된 기간, 하나 이상의 정의된 유형의 입력이 수신되는 시간, 또는 이들의 조합(예를 들어, 둘 중 빠른 것)에 대응하는 종료 시간에 의해 정의된 기간을 포함할 수 있다. 입력은 제1 프로세서에 의해 제어되고/되거나 그에 액세스가능한 사용자 인터페이스, 제2 프로세서에 의해 제어되고/되거나 그에 액세스가능한 사용자 인터페이스, 또는 다른 사용자 인터페이스에서 수신되는 것을 포함할 수 있다. 입력은 트랜잭션의 승인 또는 거절에 대응하는 것을 포함할 수 있다. 예를 들어, 입력은 이미지가 디스플레이되는 가상 키보드의 다수의 정의된 부분들 중 하나를 터치하는 것을 포함할 수 있다.
제13 동작은 제2 프로세서가 콘텐츠 및/또는 이미지에 대응하는 트랜잭션을 수행하기 위한 승인에 대응하는 입력을 검출하는 것을 포함할 수 있다. 하나의 경우에서, 입력은 프로파일의 특성과 매칭되는 하나 이상의 지문 특성을 갖는 터치 ID 판독기에서의 터치를 포함한다. 하나의 경우에서, 입력은 예를 들어, 제2 디스플레이, 또는 제2 프로세서와 통신가능하게 결합된 다른 입력 또는 출력 컴포넌트 상의 클릭, 탭, 또는 터치를 포함할 수 있다. 하나의 경우에서, 승인 입력을 검출하는 것은 (예를 들어, 하나 이상의 사용자 인터페이스에서 수신된) 다수 유형들의 입력들 각각이 정의된 기간 내에 수신되었음을 검출하는 것을 포함한다. 사용자 입력 컴포넌트(예를 들어, 터치 ID 판독기)가 전력공급되거나 입력들을 수용하도록 구성되는지 여부 및/또는 입력이 승인 입력으로서 인식되는지 여부는 문맥에 의존할 수 있다. 예를 들어, 제2 프로세서는 터치 ID를, 그것이 이미지의 디스플레이 동안 검출되는 경우에만 트랜잭션 승인으로서 인식할 수 있다.
제14 동작에서, 승인 입력을 검출하는 것에 응답하여, (예를 들어, 계정 식별자를 포함하는) 보안 정보가 보안 데이터 저장소로부터 검색될 수 있다. 일부 경우들에서, 보안 요소는 보안 데이터 저장소를 호스팅하고, 데이터 액세스를 제어할 수 있다. 보안 정보는 또한 예를 들어, 정보를 복호화하고, 정보를 암호화하고, 그리고/또는 정보를 변환하여 더 많거나 적거나 상이한 정보를 포함하도록 국부적으로 처리될 수 있다. 제15 동작은 원격 서버에 보안 정보(또는 그의 처리된 버전)를 송신하는 것을 포함한다.
본 발명의 실시예들은, 예를 들어, 방법들, 장치들, 컴퓨터 판독가능 매체들 등에서, 전용 컴포넌트들 및/또는 프로그램가능한 프로세서들 및/또는 다른 프로그램가능한 디바이스들의 임의의 조합을 이용하여 실현될 수 있다. 본 명세서에 기술된 다양한 프로세스들은 동일한 프로세서 또는 임의의 조합의 상이한 프로세서들 상에서 구현될 수 있다. 컴포넌트들이 소정 동작들을 수행하도록 구성되는 것으로 기술되는 경우에, 그러한 구성은 예를 들어, 동작을 수행하도록 전자 회로들을 설계함으로써, 동작을 수행하도록 프로그램가능한 전자 회로들(예컨대 마이크로프로세서들)을 프로그래밍함으로써, 또는 이들의 임의의 조합에 의해 달성될 수 있다. 또한, 전술한 실시예들은 특정 하드웨어 및 소프트웨어 컴포넌트들을 참조할 수 있지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 하드웨어 및/또는 소프트웨어 컴포넌트들의 상이한 조합들이 또한 사용될 수 있으며, 하드웨어로 구현되는 것으로서 기술된 특정 동작들이 또한 소프트웨어로 구현될 수 있거나 그 역도 마찬가지임을 이해할 것이다.
본 발명의 다양한 특징들을 통합한 컴퓨터 프로그램들이 다양한 컴퓨터 판독가능 저장 매체 상에 인코딩 및 저장될 수 있으며; 적합한 매체는 자기 디스크 또는 테이프, 콤팩트 디스크(CD) 또는 DVD(digital versatile disk)와 같은 광 저장 매체, 플래시 메모리, 및 다른 비일시적 매체를 포함한다. 프로그램 코드로 인코딩된 컴퓨터 판독가능 매체는 호환가능한 전자 디바이스와 패키징될 수 있거나, 또는 프로그램 코드는 (예컨대, 인터넷 다운로드를 통해 또는 별도로 패키징된 컴퓨터 판독가능 저장 매체로서) 전자 디바이스들과는 별개로 제공될 수 있다.
따라서, 본 발명이 특정 실시예들에 대하여 기술되었지만, 본 발명은 하기의 청구범위의 범주 내의 모든 수정들 및 등가물들을 커버하도록 의도된다는 것이 이해될 것이다.

Claims (21)

  1. 전자 디바이스로서,
    시각적 자극을 출력하도록 구성된 제1 디스플레이;
    시각적 자극을 출력하도록 구성된 제2 디스플레이;
    상기 제1 디스플레이에 결합된 하나 이상의 제1 프로세서;
    상기 제2 디스플레이에 결합되고 상기 하나 이상의 제1 프로세서와 별개인 하나 이상의 제2 프로세서;
    상기 하나 이상의 제1 프로세서에 의해 실행될 때 상기 하나 이상의 제1 프로세서로 하여금 제1 동작들을 수행하게 하는 제1 명령어들을 포함하는 제1 컴퓨터 판독가능 저장 매체 - 상기 제1 동작들은,
    상기 전자 디바이스로부터 웹 서버로 콘텐츠 요청 통신을 전송하는 것;
    상기 웹 서버로부터, 제1 값을 식별하는 콘텐츠를 포함하는 응답 통신을 수신하는 것; 및
    상기 제1 디스플레이에서 상기 콘텐츠의 제1 프리젠테이션을 용이하게 하는 것을 포함함 -; 및
    상기 하나 이상의 제2 프로세서에 의해 실행될 때 상기 하나 이상의 제2 프로세서로 하여금 제2 동작들을 수행하게 하는 제2 명령어들을 포함하는 제2 컴퓨터 판독가능 저장 매체 - 상기 제2 동작들은,
    원격 서버로부터, 제2 값을 나타내는 데이터를 포함하는 통신을 수신하는 것 - 상기 통신은 상기 웹 서버로부터의 다른 통신의 수신에 응답하여 상기 원격 서버에서 생성된 것임 -;
    상기 제2 값을 나타내는 보안 검증 출력(secure verification output)을 생성하는 것; 및
    상기 보안 검증 출력의 제2 프리젠테이션이 상기 콘텐츠의 상기 제1 프리젠테이션과 동시에 이루어지도록, 상기 제1 디스플레이와 별개인 상기 제2 디스플레이에서 상기 보안 검증 출력의 상기 제2 프리젠테이션을 용이하게 하는 것을 포함함 - 를 포함하는, 전자 디바이스.
  2. 제1항에 있어서,
    상기 하나 이상의 제2 프로세서는 상기 하나 이상의 제1 프로세서 중 임의의 것과 독립적으로 상기 제2 디스플레이를 제어하도록 구성된 보안 프로세서를 포함하는, 전자 디바이스.
  3. 제1항에 있어서,
    상기 콘텐츠는 제1 목적지 이름을 추가로 식별하고;
    상기 데이터는 제2 목적지 이름을 추가로 나타내며;
    상기 보안 검증 출력은 상기 제2 목적지 이름을 추가로 식별하는, 전자 디바이스.
  4. 제1항에 있어서,
    보안 정보를 저장하는 보안 데이터 저장소를 추가로 포함하며;
    상기 제2 동작들은,
    상기 보안 데이터 저장소로부터 상기 보안 정보를 검색하는 것; 및
    상기 보안 정보를 포함하는 보안 통신을 상기 원격 서버에 전송하는 것을 추가로 포함하는, 전자 디바이스.
  5. 제4항에 있어서,
    상기 보안 데이터 저장소를 호스팅하는 보안 요소를 추가로 포함하는, 전자 디바이스.
  6. 제1항에 있어서, 상기 통신은 상기 데이터의 서명을 추가로 포함하고, 상기 제2 동작들은,
    상기 서명에 기초하여, 상기 데이터가 유효하다고 결정하는 것을 추가로 포함하며,
    상기 보안 검증 출력은 상기 데이터가 유효할 때 선택적으로 제시되는, 전자 디바이스.
  7. 제1항에 있어서,
    보안 정보를 저장하는 보안 데이터 저장소를 추가로 포함하며;
    상기 제2 동작들은,
    상기 동시의 제1 프리젠테이션 및 제2 프리젠테이션 동안, 보안 정보를 전송하기 위한 요청에 대응하는 입력을 검출하는 것; 및
    상기 입력을 검출하는 것에 응답하여:
    상기 보안 데이터 저장소로부터 상기 보안 정보를 검색하는 것; 및
    상기 보안 정보 및 상기 제1 값을 포함하는 보안 통신을 상기 원격 서버에 전송하는 것을 추가로 포함하는, 전자 디바이스.
  8. 제1항에 있어서,
    상기 전자 디바이스에서 상기 콘텐츠의 상기 제1 프리젠테이션을 용이하게 하는 것은 상기 전자 디바이스의 일차 통합된 디스플레이 상에 상기 콘텐츠의 상기 제1 프리젠테이션을 용이하게 하는 것을 포함하고;
    상기 전자 디바이스에서 상기 보안 검증 출력의 상기 제2 프리젠테이션을 용이하게 하는 것은 상기 전자 디바이스의 동적 기능 열(dynamic function row) 상에 상기 보안 검증 출력의 상기 제2 프리젠테이션을 용이하게 하는 것을 포함하는, 전자 디바이스.
  9. 제1항에 있어서,
    상기 전자 디바이스는,
    제1 운영 시스템에 대응하는 제1 코드; 및
    보안 운영 시스템을 포함하는 제2 운영 시스템에 대응하는 제2 코드를 포함하며,
    상기 하나 이상의 제1 프로세서는 상기 제1 운영 시스템에 대응하는 상기 제1 코드를 실행하도록 구성되고;
    상기 하나 이상의 제2 프로세서는 상기 제2 운영 시스템에 대응하는 상기 제2 코드를 실행하지만, 상기 제1 운영 시스템에 대응하는 상기 제1 코드는 실행하지 않도록 구성되는, 전자 디바이스.
  10. 제1항에 있어서, 상기 전자 디바이스는 랩톱 컴퓨터를 포함하며, 상기 랩톱 컴퓨터는,
    상기 제1 디스플레이를 포함하는 디스플레이 패널; 및
    상기 하나 이상의 제1 프로세서, 상기 하나 이상의 제2 프로세서, 및 상기 제2 디스플레이를 포함하는 베이스 조립체를 포함하고,
    상기 디스플레이 패널은 하나 이상의 힌지를 통해 상기 베이스 조립체에 연결되는, 전자 디바이스.
  11. 디바이스 상의 다수의 프로세서를 사용하여 웹 서버 통신에 기초한 검증 출력을 생성하는 방법으로서,
    상기 디바이스의 제1 프로세서를 사용하여, 웹 서버에 콘텐츠 요청 통신을 전송하는 단계;
    상기 웹 서버로부터, 제1 값을 식별하는 콘텐츠를 포함하는 응답 통신을 수신하는 단계;
    상기 제1 프로세서를 사용하여, 상기 디바이스의 제1 디스플레이 상에 상기 콘텐츠의 제1 프리젠테이션을 용이하게 하는 단계;
    상기 제1 프로세서와 별개인 상기 디바이스의 제2 프로세서에서, 제2 값을 나타내는 데이터를 포함하는 통신을 원격 서버로부터 수신하는 단계 - 상기 통신은 상기 웹 서버로부터의 다른 통신의 수신에 응답하여 상기 원격 서버에서 생성된 것임 -;
    상기 제2 프로세서를 사용하여, 상기 제2 값을 나타내는 보안 검증 출력을 생성하는 단계; 및
    상기 제2 프로세서를 사용하여, 상기 콘텐츠의 상기 제1 프리젠테이션과 동시에 상기 디바이스에서 상기 보안 검증 출력의 제2 프리젠테이션을 용이하게 하는 단계 - 상기 제2 프리젠테이션은 상기 제1 디스플레이와 별개인 제2 디스플레이 상에 제시됨 - 를 포함하는, 디바이스 상의 다수의 프로세서를 사용하여 웹 서버 통신에 기초한 검증 출력을 생성하는 방법.
  12. 제11항에 있어서,
    상기 제2 프로세서는 상기 제1 프로세서와 독립적으로 상기 제2 디스플레이를 제어하도록 구성된 보안 프로세서를 포함하는, 디바이스 상의 다수의 프로세서를 사용하여 웹 서버 통신에 기초한 검증 출력을 생성하는 방법.
  13. 제11항에 있어서,
    상기 콘텐츠는 제1 목적지 이름을 추가로 식별하고;
    상기 데이터는 제2 목적지 이름을 추가로 나타내며;
    상기 보안 검증 출력은 상기 제2 목적지 이름을 추가로 식별하는, 디바이스 상의 다수의 프로세서를 사용하여 웹 서버 통신에 기초한 검증 출력을 생성하는 방법.
  14. 제11항에 있어서,
    상기 제2 프로세서를 사용하여, 상기 디바이스에서 보안 데이터 저장소로부터 보안 정보를 검색하는 단계; 및
    상기 보안 정보를 포함하는 보안 통신을 상기 원격 서버에 전송하는 단계를 추가로 포함하는, 디바이스 상의 다수의 프로세서를 사용하여 웹 서버 통신에 기초한 검증 출력을 생성하는 방법.
  15. 제14항에 있어서,
    상기 보안 데이터 저장소를 호스팅하는 보안 요소를 추가로 포함하는, 디바이스 상의 다수의 프로세서를 사용하여 웹 서버 통신에 기초한 검증 출력을 생성하는 방법.
  16. 제11항에 있어서, 상기 통신은 상기 데이터의 서명을 추가로 포함하고, 상기 방법은,
    상기 서명에 기초하여, 상기 데이터가 유효하다고 결정하는 단계를 추가로 포함하며,
    상기 보안 검증 출력은 상기 데이터가 유효할 때 선택적으로 제시되는, 디바이스 상의 다수의 프로세서를 사용하여 웹 서버 통신에 기초한 검증 출력을 생성하는 방법.
  17. 제11항에 있어서,
    상기 동시의 제1 프리젠테이션 및 제2 프리젠테이션 동안, 보안 정보를 전송하기 위한 요청에 대응하는 입력을 검출하는 단계; 및
    상기 입력을 검출하는 단계에 응답하여:
    상기 디바이스에서 보안 데이터 저장소로부터 보안 정보를 검색하는 단계; 및
    상기 보안 정보 및 상기 제1 값을 포함하는 보안 통신을 상기 원격 서버에 전송하는 단계를 추가로 포함하는, 디바이스 상의 다수의 프로세서를 사용하여 웹 서버 통신에 기초한 검증 출력을 생성하는 방법.
  18. 제11항에 있어서,
    상기 디바이스에서 상기 콘텐츠의 상기 제1 프리젠테이션을 용이하게 하는 단계는 상기 디바이스의 일차 통합된 디스플레이 상에 상기 콘텐츠의 상기 제1 프리젠테이션을 용이하게 하는 단계를 포함하고;
    상기 디바이스에서 상기 검증 출력의 상기 제2 프리젠테이션을 용이하게 하는 단계는 상기 디바이스의 동적 기능 열 상에 상기 검증 출력의 상기 제2 프리젠테이션을 용이하게 하는 단계를 포함하는, 디바이스 상의 다수의 프로세서를 사용하여 웹 서버 통신에 기초한 검증 출력을 생성하는 방법.
  19. 제11항에 있어서,
    상기 디바이스는,
    제1 운영 시스템에 대응하는 제1 코드; 및
    보안 운영 시스템을 포함하는 제2 운영 시스템에 대응하는 제2 코드를 포함하며,
    상기 제1 프로세서는 상기 제1 운영 시스템에 대응하는 상기 제1 코드를 실행하도록 구성되고;
    상기 제2 프로세서는 상기 제2 운영 시스템에 대응하는 상기 제2 코드를 실행하지만, 상기 제1 운영 시스템에 대응하는 상기 제1 코드는 실행하지 않도록 구성되는, 디바이스 상의 다수의 프로세서를 사용하여 웹 서버 통신에 기초한 검증 출력을 생성하는 방법.
  20. 제11항에 있어서, 상기 디바이스는 랩톱 컴퓨터를 포함하며, 상기 랩톱 컴퓨터는,
    상기 제1 디스플레이를 포함하는 디스플레이 패널; 및
    상기 제1 프로세서, 상기 제2 프로세서, 및 상기 제2 디스플레이를 포함하는 베이스 조립체를 포함하고,
    상기 디스플레이 패널은 하나 이상의 힌지를 통해 상기 베이스 조립체에 연결되는, 디바이스 상의 다수의 프로세서를 사용하여 웹 서버 통신에 기초한 검증 출력을 생성하는 방법.
  21. 비일시적 기계 판독가능 저장 매체에 유형적으로 구현되는 컴퓨터 프로그램 제품으로서, 하나 이상의 데이터 프로세서가 제11항의 방법을 수행하게 하도록 구성된 명령어들을 포함하는, 컴퓨터 프로그램 제품.
KR1020170102968A 2016-09-06 2017-08-14 디바이스의 독립적인 프로세서들을 통한 데이터 검증 KR102039219B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/256,959 US10389733B2 (en) 2016-09-06 2016-09-06 Data verification via independent processors of a device
US15/256,959 2016-09-06

Publications (2)

Publication Number Publication Date
KR20180027332A true KR20180027332A (ko) 2018-03-14
KR102039219B1 KR102039219B1 (ko) 2019-10-31

Family

ID=59506090

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170102968A KR102039219B1 (ko) 2016-09-06 2017-08-14 디바이스의 독립적인 프로세서들을 통한 데이터 검증

Country Status (4)

Country Link
US (2) US10389733B2 (ko)
EP (1) EP3291126B1 (ko)
KR (1) KR102039219B1 (ko)
CN (2) CN107798537B (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9043444B2 (en) * 2011-05-25 2015-05-26 Google Inc. Using an audio stream to identify metadata associated with a currently playing television program
US9300678B1 (en) 2015-08-03 2016-03-29 Truepic Llc Systems and methods for authenticating photographic image data
US10389733B2 (en) 2016-09-06 2019-08-20 Apple Inc. Data verification via independent processors of a device
GB201703010D0 (en) * 2017-02-24 2017-04-12 Trustonic Ltd Post factory key injections
US10375050B2 (en) 2017-10-10 2019-08-06 Truepic Inc. Methods for authenticating photographic image data
WO2019178732A1 (zh) * 2018-03-20 2019-09-26 深圳市汇顶科技股份有限公司 终端设备的开机处理方法、装置和终端设备
US10713343B2 (en) * 2018-05-10 2020-07-14 Lenovo (Singapore) Pte. Ltd. Methods, devices and systems for authenticated access to electronic device in a closed configuration
US10360668B1 (en) 2018-08-13 2019-07-23 Truepic Inc. Methods for requesting and authenticating photographic image data
EP3949332A1 (en) * 2019-05-06 2022-02-09 Apple Inc. Standalone wearable device configuration and interface
US11528271B2 (en) 2019-05-06 2022-12-13 Apple Inc. Authenticating and creating accounts on behalf of another user
US11669883B2 (en) 2019-06-01 2023-06-06 Apple Inc. Security model and interface for digital purchases on a wearable device
US11366935B2 (en) * 2019-07-31 2022-06-21 Elo Touch Solutions, Inc. Multi-use payment device
US11037284B1 (en) 2020-01-14 2021-06-15 Truepic Inc. Systems and methods for detecting image recapture
CN114693292A (zh) * 2020-12-30 2022-07-01 Oppo广东移动通信有限公司 支付方法、装置、电子设备和计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060085696A (ko) * 2003-09-18 2006-07-27 벌칸 포털스, 인크. 독립형이며 시스템 기능을 갖는 휴대용 전자 디바이스용제거가능 모듈
JP2006221633A (ja) * 2005-02-07 2006-08-24 Sony Computer Entertainment Inc マルチプロセッサシステムにおいてプロセッサのセキュアな連携を行う方法および装置
WO2009018663A1 (en) * 2007-08-08 2009-02-12 Memory Experts International Inc. Method of providing assured transactions by watermarked file display verification
EP2942746A1 (en) * 2014-05-08 2015-11-11 Panasonic Intellectual Property Management Co., Ltd. Information processing device and portable settlement terminal device

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6018724A (en) * 1997-06-30 2000-01-25 Sun Micorsystems, Inc. Method and apparatus for authenticating on-line transaction data
US7024691B1 (en) * 2000-10-17 2006-04-04 International Business Machines Corporation User policy for trusting web sites
US7114177B2 (en) * 2001-03-28 2006-09-26 Geotrust, Inc. Web site identity assurance
US7216237B2 (en) * 2001-07-16 2007-05-08 Certicom Corp. System and method for trusted communication
US7743254B2 (en) * 2005-03-23 2010-06-22 Microsoft Corporation Visualization of trust in an address bar
US7725930B2 (en) * 2005-03-30 2010-05-25 Microsoft Corporation Validating the origin of web content
US8312523B2 (en) * 2006-03-31 2012-11-13 Amazon Technologies, Inc. Enhanced security for electronic communications
US7266693B1 (en) * 2007-02-13 2007-09-04 U.S. Bancorp Licensing, Inc. Validated mutual authentication
US8261064B2 (en) * 2007-02-27 2012-09-04 L-3 Communications Corporation Integrated secure and non-secure display for a handheld communications device
US7707734B2 (en) 2007-07-27 2010-05-04 Richard Alexander Hands free chalk line snapper
US9083746B2 (en) * 2007-10-19 2015-07-14 Imation Corp. Method of providing assured transactions using secure transaction appliance and watermark verification
US8170932B1 (en) * 2007-11-28 2012-05-01 Wells Fargo Bank, N.A. System and method for data management and financial transaction categorization
US8620826B2 (en) * 2008-03-27 2013-12-31 Amazon Technologies, Inc. System and method for receiving requests for tasks from unregistered devices
GB2459097B (en) * 2008-04-08 2012-03-28 Advanced Risc Mach Ltd A method and apparatus for processing and displaying secure and non-secure data
US8893967B2 (en) * 2009-05-15 2014-11-25 Visa International Service Association Secure Communication of payment information to merchants using a verification token
DE102009022222A1 (de) 2009-05-20 2010-11-25 Giesecke & Devrient Gmbh Anordnung zur Anzeige von Informationen, Verfahren zur Anzeige von Informationen und elektronische Endgeräteeinrichhtung
JP4886063B2 (ja) * 2009-12-04 2012-02-29 株式会社エヌ・ティ・ティ・ドコモ 状態報知装置、状態報知方法及びプログラム
US9424413B2 (en) * 2010-02-24 2016-08-23 Visa International Service Association Integration of payment capability into secure elements of computers
US9665330B2 (en) * 2010-07-16 2017-05-30 Beijing Lenovo Software Ltd. Mobile terminal and display method therefor
US20170118258A1 (en) * 2012-06-27 2017-04-27 Clearslide, Inc. System and method for switching control with browser-based screen sharing
EP2701415A1 (en) * 2012-08-24 2014-02-26 Raja Kuppuswamy Mobile electronic device and use thereof for electronic transactions
WO2014088470A2 (en) * 2012-12-07 2014-06-12 Yota Devices Ipr Limited Haptic message
US9954860B2 (en) * 2013-03-15 2018-04-24 Entrust, Inc. Online secure transaction verification system proxy server and method
US20150046336A1 (en) * 2013-08-09 2015-02-12 Mastercard International Incorporated System and method of using a secondary screen on a mobile device as a secure and convenient transacting mechanism
US10977650B2 (en) * 2013-10-30 2021-04-13 Tencent Technology (Shenzhen) Company Limited Information transmission method, apparatus and system
CN103996117B (zh) * 2014-05-28 2017-09-19 天地融科技股份有限公司 安全手机
US9853977B1 (en) * 2015-01-26 2017-12-26 Winklevoss Ip, Llc System, method, and program product for processing secure transactions within a cloud computing system
JP5966059B1 (ja) * 2015-06-19 2016-08-10 レノボ・シンガポール・プライベート・リミテッド 携帯型情報処理装置、その画面切り替え方法、及びコンピュータが実行可能なプログラム
US10389733B2 (en) 2016-09-06 2019-08-20 Apple Inc. Data verification via independent processors of a device
US10496808B2 (en) * 2016-10-25 2019-12-03 Apple Inc. User interface for managing access to credentials for use in an operation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060085696A (ko) * 2003-09-18 2006-07-27 벌칸 포털스, 인크. 독립형이며 시스템 기능을 갖는 휴대용 전자 디바이스용제거가능 모듈
JP2006221633A (ja) * 2005-02-07 2006-08-24 Sony Computer Entertainment Inc マルチプロセッサシステムにおいてプロセッサのセキュアな連携を行う方法および装置
WO2009018663A1 (en) * 2007-08-08 2009-02-12 Memory Experts International Inc. Method of providing assured transactions by watermarked file display verification
EP2942746A1 (en) * 2014-05-08 2015-11-11 Panasonic Intellectual Property Management Co., Ltd. Information processing device and portable settlement terminal device

Also Published As

Publication number Publication date
KR102039219B1 (ko) 2019-10-31
US11025644B2 (en) 2021-06-01
EP3291126B1 (en) 2020-10-28
CN113706157A (zh) 2021-11-26
CN113706157B (zh) 2022-11-08
EP3291126A1 (en) 2018-03-07
US20180069871A1 (en) 2018-03-08
CN107798537A (zh) 2018-03-13
US20190334925A1 (en) 2019-10-31
US10389733B2 (en) 2019-08-20
CN107798537B (zh) 2021-09-24

Similar Documents

Publication Publication Date Title
KR102039219B1 (ko) 디바이스의 독립적인 프로세서들을 통한 데이터 검증
US11823146B2 (en) Systems and methods for translating a gesture to initiate a financial transaction
US20230325538A1 (en) Method and apparatus for processing biometric information in electronic device
CN109952753B (zh) 用于管理对在操作中使用的凭证的访问的用户界面
KR102216877B1 (ko) 전자장치에서 생체 정보를 이용한 인증 방법 및 장치
CN105894268B (zh) 支付处理方法及支付其的电子设备
KR102136472B1 (ko) 크리덴셜의 전자 디바이스에의 안전한 프로비저닝
US10846696B2 (en) Apparatus and method for trusted execution environment based secure payment transactions
CN106471531B (zh) 使用在线资源来管理电子设备上的可重载凭据
US10237269B2 (en) Method of providing information security and electronic device thereof
KR102223609B1 (ko) 전자 기기간 콘텐트 공유 방법 및 장치
US11424930B2 (en) Systems and methods for providing account information
KR20160105296A (ko) 결제 수단 운용 지원 방법 및 이를 지원하는 전자 장치
US10187359B2 (en) Secure message transmission apparatus and processing method thereof
US10354075B1 (en) Trustworthy indication of software integrity
EP2887290A1 (en) Electronic transaction between a mobile device, a touch panel device and a server
KR102208631B1 (ko) 전자 장치의 보안 정보 입출력 방법 및 이를 사용하는 전자 장치
US10218719B2 (en) Credential modification notifications
US11200303B2 (en) Audio accessibility assistance
US20150229479A1 (en) Apparatus and method for providing digital signature
KR20210010593A (ko) 전자 장치의 생체 정보 처리 방법 및 장치

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