KR102458145B1 - Appratus and method for payment - Google Patents

Appratus and method for payment Download PDF

Info

Publication number
KR102458145B1
KR102458145B1 KR1020150158476A KR20150158476A KR102458145B1 KR 102458145 B1 KR102458145 B1 KR 102458145B1 KR 1020150158476 A KR1020150158476 A KR 1020150158476A KR 20150158476 A KR20150158476 A KR 20150158476A KR 102458145 B1 KR102458145 B1 KR 102458145B1
Authority
KR
South Korea
Prior art keywords
payment
module
information
token
electronic device
Prior art date
Application number
KR1020150158476A
Other languages
Korean (ko)
Other versions
KR20170030408A (en
Inventor
김은직
진희규
스리드하 라지브 가부리
김장혁
박철서
Original Assignee
삼성전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자 주식회사 filed Critical 삼성전자 주식회사
Priority to EP16187868.1A priority Critical patent/EP3142056A1/en
Priority to EP19170815.5A priority patent/EP3537362A1/en
Priority to US15/259,609 priority patent/US10546291B2/en
Priority to PCT/KR2016/010137 priority patent/WO2017043904A1/en
Priority to CN201610814064.4A priority patent/CN107067250A/en
Publication of KR20170030408A publication Critical patent/KR20170030408A/en
Priority to US16/750,413 priority patent/US10803452B2/en
Application granted granted Critical
Publication of KR102458145B1 publication Critical patent/KR102458145B1/en

Links

Images

Classifications

    • 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/08Payment architectures
    • G06Q20/16Payments settled via telecommunication systems
    • 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/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • 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/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/325Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices using wireless networks
    • 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
    • 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/3821Electronic credentials
    • 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/4018Transaction verification using the card verification value [CVV] associated with the card
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication

Abstract

전자 장치는 적어도 하나의 토큰을 저장하도록 동작할 수 있는 보안 모듈; 제 1 통신 모듈; 제 2 통신 모듈; 및 상기 보안 모듈, 상기 제 1 통신 모듈 및 상기 제2 통신 모듈에 기능적으로 연결된 적어도 하나의 프로세서를 포함하며, 상기 적어도 하나의 프로세서는 상기 제 1 통신 모듈 또는 상기 제 2 통신 모듈 중 결제를 위해 이용될 적어도 하나의 통신 모듈을 결정하고, 및 상기 적어도 하나의 토큰 중 상기 적어도 하나의 통신 모듈에 관련된 토큰을 포함하는 결제 정보를 외부 전자 장치에 전송하도록 설정될 수 있다.The electronic device includes a security module operable to store at least one token; a first communication module; a second communication module; and at least one processor operatively connected to the security module, the first communication module, and the second communication module, wherein the at least one processor is used for payment among the first communication module or the second communication module It may be configured to determine at least one communication module to be used, and to transmit payment information including a token related to the at least one communication module among the at least one token to the external electronic device.

Figure R1020150158476
Figure R1020150158476

Description

결제를 위한 방법 및 장치{APPRATUS AND METHOD FOR PAYMENT}Method and device for payment

다양한 실시예들은, 전자 장치에 관한 것으로, 예를 들면, 전자 장치를 이용해 결제가 가능한 제어부를 포함하는 전자 장치에 관한 것이다. Various embodiments relate to an electronic device, for example, to an electronic device including a control unit capable of making a payment using the electronic device.

다양한 실시예들은, 전자 장치에 관한 것으로, 예를 들면, 전자 결제 시스템에 대한 장치 및 방법에 관한 것이다.Various embodiments relate to electronic devices, for example, to devices and methods for electronic payment systems.

이동 통신 기술의 발전과 더불어, 전자 장치는 음성 통화 기능뿐만 아니라 다양한 데이터 통신 기능을 수행할 수 있다. 전자 장치, 예를 들어, 모바일 기기 또는 사용자 기기는 다양한 어플리케이션을 통해서 다양한 서비스를 제공할 수 있다. 전자 장치는, 멀티미디어 서비스, 예를 들어, 뮤직 서비스, 동영상 서비스, 또는 디지털 방송 서비스, 또는 통화, 무선 인터넷, 단문 메시지 서비스(SMS, short message service), 멀티미디어 메시징 서비스(MMS, multimedia messaging service) 등의 네트워크 기반의 통신 서비스 등을 제공할 수 있다. 또한 전자 장치는, 단순한 통신 매체에서 커뮤니케이션, 유통, 인터넷, 또는 결제 등 다양한 기능이 가능한 기기로 진화하면서 사회, 문화, 금융, 또는 유통 산업분야 전반에 걸쳐 사용될 수 있다. 전자 장치는, 예를 들어, 결제 기능에서 전자 장치를 통한 모바일 결제 방식을 제공할 수 있다. 전자 장치는, 예를 들면, 현금에서 플라스틱 카드로 이행해 왔던 결제 방식에서 상기 전자 장치를 이용하여 결제를 할 수 있다. 전자 장치는, 예를 들면, 모바일 결제 서비스(mobile payment service)을 이용하여, 온라인 또는 오프라인(실제 상점이나 음식점에서 상품을 구입하여 결제를 진행하는 경우)상에서 이루어지는 서비스와 재화를 구매할 수 있도록 결제 기능을 제공할 수 있다. 또한 전자 장치는, 예를 들면, 결제 정보를 수신 또는 송신하기 위한 통신 기능을 구비할 수 있다.With the development of mobile communication technology, the electronic device may perform various data communication functions as well as a voice call function. An electronic device, for example, a mobile device or a user device, may provide various services through various applications. The electronic device includes a multimedia service, for example, a music service, a video service, or a digital broadcast service, or a call, wireless Internet, a short message service (SMS), a multimedia messaging service (MMS), and the like. of network-based communication services, etc. can be provided. In addition, the electronic device can be used throughout the social, cultural, financial, or distribution industries as it evolves from a simple communication medium to a device capable of various functions such as communication, distribution, the Internet, or payment. The electronic device may provide, for example, a mobile payment method through the electronic device in a payment function. The electronic device may, for example, make a payment using the electronic device in a payment method that has been transferred from cash to a plastic card. The electronic device uses, for example, a mobile payment service, a payment function to purchase services and goods made online or offline (when payment is made by purchasing a product at an actual store or restaurant) can provide In addition, the electronic device may have, for example, a communication function for receiving or transmitting payment information.

다양한 실시예들은, 모바일 결제 서비스를 위한 적어도 하나의 통신모듈을 이용하여 인증정보를 전송하는 방법 및 그 전자장치에 관한 것이다.Various embodiments relate to a method of transmitting authentication information using at least one communication module for a mobile payment service, and an electronic device thereof.

다양한 실시예들은, 모바일 결제 서비스를 위해, 시간 정보를 이용하여 보안성이 높은 결제 정보를 생성 및 전송하는 방법 및 그 전자장치에 관한 것이다.Various embodiments relate to a method of generating and transmitting highly secure payment information using time information for a mobile payment service, and an electronic device thereof.

다양한 실시예에 따른 전자 장치는 적어도 하나의 토큰을 저장하도록 동작할 수 있는 보안 모듈; 제 1 통신 모듈; 제 2 통신 모듈; 및 상기 보안 모듈, 상기 제 1 통신 모듈 및 상기 제2 통신 모듈에 기능적으로 연결된 적어도 하나의 프로세서를 포함하며, 상기 적어도 하나의 프로세서는 상기 제 1 통신 모듈 또는 상기 제 2 통신 모듈 중 결제를 위해 이용될 적어도 하나의 통신 모듈을 결정하고, 및 상기 적어도 하나의 토큰 중 상기 적어도 하나의 통신 모듈에 관련된 토큰을 포함하는 결제 정보를 외부 전자 장치에 전송하도록 설정될 수 있다.An electronic device according to various embodiments may include a security module operable to store at least one token; a first communication module; a second communication module; and at least one processor operatively connected to the security module, the first communication module, and the second communication module, wherein the at least one processor is used for payment among the first communication module or the second communication module It may be configured to determine at least one communication module to be used, and to transmit payment information including a token related to the at least one communication module among the at least one token to the external electronic device.

다양한 실시예에 따른 방법은 제 1 보안 영역, 제 2 보안 영역 및 적어도 하나의 결제 신호 모듈을 포함하는 전자 장치의 결제 정보 보안 방법에서, 상기 제 1 보안 영역에 상기 적어도 하나의 결제 신호 모듈 각각에 대응되는 적어도 하나의 토큰을 저장하는 동작; 상기 제 1 보안 영역 또는 상기 제 2 보안 영역 중 적어도 하나의 보안 영역에서 타임스탬프를 생성하는 동작; 상기 적어도 하나의 토큰 중에서 상기 적어도 하나의 결제 신호 모듈 중 하나에 대응하는 토큰 및 상기 타임스탬프 중 적어도 하나에 기초하여, 상기 제 2 보안 영역에서 결제 신호를 생성하는 동작; 및 상기 결제 신호를 외부 전자 장치에 전송하는 동작을 포함할 수 있다.In the method for securing payment information of an electronic device including a first security area, a second security area, and at least one payment signal module, the method according to various embodiments includes the at least one payment signal module in the first security area, respectively. storing the corresponding at least one token; generating a timestamp in at least one of the first security area and the second security area; generating a payment signal in the second security area based on at least one of a token corresponding to one of the at least one payment signal module among the at least one token and the timestamp; and transmitting the payment signal to an external electronic device.

다양한 실시예에 따른 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체는 보안 영역 및 적어도 하나의 결제 신호 모듈을 포함하는 전자 장치에서, 상기 보안 영역에 상기 적어도 하나의 결제 신호 모듈 각각에 대응되는 적어도 하나의 토큰을 저장하는 동작; 상기 보안 영역에서 타임스탬프를 생성하는 동작; 상기 적어도 하나의 토큰 중에서 상기 적어도 하나의 결제 신호 모듈 중 하나에 대응하는 토큰 및 상기 타임스탬프에 적어도 일부 기초하여, 상기 보안 영역에서 결제 신호를 생성하는 동작; 및 상기 결제 신호를 외부 전자 장치에 전송하는 동작을 실행할 수 있다.In an electronic device including a security area and at least one payment signal module, a computer-readable recording medium recording a program according to various embodiments includes at least one token corresponding to each of the at least one payment signal module in the security area. save action; generating a timestamp in the secure region; generating a payment signal in the secure area based at least in part on a token corresponding to one of the at least one payment signal module among the at least one token and the timestamp; and transmitting the payment signal to an external electronic device.

다양한 통신방식에 기반하여 모바일 결제 서비스를 제공할 수 있다. 또한, 다양한 실시예들은, 보안성이 높은 보안영역을 사용함으로써 더욱 안전한 무선 결제 환경을 제공할 수 있다.It is possible to provide a mobile payment service based on various communication methods. In addition, various embodiments may provide a more secure wireless payment environment by using a high security area.

도 1은 다양한 실시예에 따른 네트워크 환경을 도시하는 블럭도이다.
도 2는 다양한 실시예에 따른 전자 장치의 블럭도를 도시한다.
도 3은 다양한 실시예에 따른 프로그램 모듈의 블록도를 도시한다.
도 4는 다양한 실시예에 따른 전자 장치에서 운용되는 복수의 실행 환경을 도시한다.
도 5a 내지 5c는 다양한 실시예에 따른 TEE(trunsted execution environment)의 하드웨어 구조를 도시한다.
도 6은 다양한 실시예에 따른 결제 시스템을 도시한다.
도 7은 다양한 실시예에 따른 결제를 수행하기 위한 결제 시스템을 도시한다.
도 8은 다양한 실시예에 따른 전자 장치의 하드웨어 구조를 도시한다.
도 9는 다양한 실시예에 따른 토큰을 관리하기 위한 결제 시스템을 도시한다.
도 10은 다양한 실시 예에 따른 NFC(near field communication)를 이용한 결제 방식을 지원하는 전자장치를 도시한다.
도 11은 다양한 실시예에 따른 토큰을 이용한 결제 트랜젝션(transaction)하기 위한 방법을 도시한다.
도 12는 다양한 실시 예에 따른 전자장치의 구성도를 도시한다.
도 13은 다양한 실시 예에 따른 전자장치의 동작 방법을 위한 흐름도를 도시한다.
도 14는 다양한 실시 예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시한다.
도 15는 다양한 실시 예에 따른 모바일 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시한다.
도 16은 다양한 실시 예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시한다.
도 17은 다양한 실시 예에 따른 모바일 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시한다.
도 18는 다양한 실시예에 따른 전자 장치의 실행 환경에서 실행되기 위한 프로그램 모듈들을 도시한다.
도 19는 다양한 실시 예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시한다.
도 20은 다양한 실시 예에 따른 모바일 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시한다.
도 21은 다양한 실시 예에서 모바일 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 다른 동작 방법을 위한 흐름도를 도시한다.
도 22는 다양한 실시 예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시한다.
도 23은 다양한 실시 예에 따른 모바일 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시한다.
도 24는 다양한 실시 예에서 모바일 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 다른 동작 방법을 위한 흐름도를 도시한다.
도 25는 다양한 실시 예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시한다.
도 26은 다양한 실시 예에 따른 모바일 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시한다.
도 27은 다양한 실시 예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시한다.
도 28은 다양한 실시 예에 따른 모바일 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시한다.
도 29는 다양한 실시 예에 따른 모바일 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 다른 동작 방법을 위한 흐름도를 도시한다.
도 30은 다양한 실시 예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시한다.
도 31은 다양한 실시 예에 따른 모바일 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시한다.
도 32는 다양한 실시예에 따른 결제를 위한 정보 생성을 위한 전자 장치의 내부 구성 요소들 간의 인터페이스를 도시한다.
도 33은 다양한 실시예에 따른 결제를 위한 정보 생성을 위한 전자 장치의 내부 구성 요소들 간의 인터페이스를 도시한다.
도 34는 다양한 실시예에 따른 결제를 위한 정보 생성을 위한 전자 장치의 내부 구성 요소들 간의 인터페이스를 도시한다.
도 35는 다양한 실시예에 따른 결제를 위한 정보 생성을 위한 전자 장치의 내부 구성 요소들 간의 인터페이스를 도시한다.
도 36은 다양한 실시예에 다른 결제 정보의 유효 시간에 관한 도면이다.
도 37 내지 도 39는 다양한 실시예에 따른 결제 수단(예, 카드)의 구조의 일 예에 대한 도면이다.
도 40은 다양한 실시예에 따른 결제 정보의 구조를 도시한다.
도 41은 다양한 실시예에 따른 트랜젝션 데이터의 구조를 도시한다.
도 42는 다양한 실시예에 따른 결제 인증 데이터의 구조를 도시한다.
도 43는 다양한 실시예에 따른 결제 중계 모듈이 결제 어플리케이션의 PIN(personal identification number) 입력을 통한 인증 요청을 TEE의 보안 식별자 처리 모듈로 중계하는 기능을 도시한다.
도 44내지 45는 본 발명의 다양한 실시예에 따른 결제 중계 모듈이 생체 정보를 이용하여 인증을 수행한 결과를 이용하여 결제를 수행하는 방법을 도시한다.
도 46는 본 발명의 다양한 실시예에 따른 토큰 크립토그램을 생성하는 방법을 도시한다.
도 47은 다양한 실시예에 따른 타임스탬프 정보를 기초하여 생성된 결제 정보를 이용하여 결제 과정을 나타내는 순서도이다.
도 48은 다양한 실시예에 따른 타임스탬프 정보를 기초하여 생성된 결제 정보를 이용하여 결제 과정을 나타내는 순서도이다.
도 49는 다양한 실시예에 따른 토큰을 이용한 결제 트랜젝션(transaction)하기 위한 방법을 도시한다.
1 is a block diagram illustrating a network environment according to various embodiments.
2 is a block diagram of an electronic device according to various embodiments of the present disclosure;
3 is a block diagram of a program module according to various embodiments.
4 illustrates a plurality of execution environments operated in an electronic device according to various embodiments of the present disclosure;
5A to 5C illustrate a hardware structure of a trusted execution environment (TEE) according to various embodiments.
6 illustrates a payment system according to various embodiments.
7 illustrates a payment system for performing payment according to various embodiments of the present disclosure.
8 illustrates a hardware structure of an electronic device according to various embodiments.
9 illustrates a payment system for managing tokens according to various embodiments.
10 illustrates an electronic device supporting a payment method using near field communication (NFC) according to various embodiments of the present disclosure.
11 illustrates a method for performing a payment transaction using a token according to various embodiments.
12 is a block diagram of an electronic device according to various embodiments of the present disclosure;
13 is a flowchart illustrating a method of operating an electronic device according to various embodiments of the present disclosure.
14 illustrates an interface between internal components of an electronic device according to various embodiments of the present disclosure;
15 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile payment service according to various embodiments of the present disclosure.
16 illustrates an interface between internal components of an electronic device according to various embodiments of the present disclosure;
17 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile payment service according to various embodiments of the present disclosure.
18 illustrates program modules to be executed in an execution environment of an electronic device according to various embodiments of the present disclosure;
19 illustrates an interface between internal components of an electronic device according to various embodiments of the present disclosure;
20 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile payment service according to various embodiments of the present disclosure.
21 is a flowchart for another operating method of an electronic device including a plurality of communication modules for a mobile payment service according to various embodiments of the present disclosure.
22 illustrates an interface between internal components of an electronic device according to various embodiments of the present disclosure;
23 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile payment service according to various embodiments of the present disclosure.
24 is a flowchart for another operating method of an electronic device including a plurality of communication modules for a mobile payment service according to various embodiments of the present disclosure.
25 illustrates an interface between internal components of an electronic device according to various embodiments of the present disclosure.
26 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile payment service according to various embodiments of the present disclosure.
27 illustrates an interface between internal components of an electronic device according to various embodiments of the present disclosure;
28 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile payment service according to various embodiments of the present disclosure.
29 is a flowchart illustrating another operation method of an electronic device including a plurality of communication modules for a mobile payment service according to various embodiments of the present disclosure.
30 illustrates an interface between internal components of an electronic device according to various embodiments of the present disclosure.
31 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile payment service according to various embodiments of the present disclosure.
32 illustrates an interface between internal components of an electronic device for generating information for payment according to various embodiments of the present disclosure;
33 illustrates an interface between internal components of an electronic device for generating information for payment according to various embodiments of the present disclosure;
34 illustrates an interface between internal components of an electronic device for generating information for payment according to various embodiments of the present disclosure;
35 illustrates an interface between internal components of an electronic device for generating information for payment according to various embodiments of the present disclosure;
36 is a diagram illustrating an effective time of payment information according to various embodiments of the present disclosure;
37 to 39 are diagrams illustrating an example of the structure of a payment method (eg, a card) according to various embodiments of the present disclosure;
40 illustrates a structure of payment information according to various embodiments.
41 illustrates a structure of transaction data according to various embodiments.
42 illustrates a structure of payment authentication data according to various embodiments.
43 illustrates a function in which the payment relay module relays an authentication request through input of a personal identification number (PIN) of a payment application to the security identifier processing module of the TEE according to various embodiments of the present disclosure;
44 to 45 are diagrams illustrating a method in which a payment relay module performs a payment using a result of performing authentication using biometric information according to various embodiments of the present disclosure.
46 illustrates a method for generating a token cryptogram according to various embodiments of the present invention.
47 is a flowchart illustrating a payment process using payment information generated based on timestamp information according to various embodiments of the present disclosure;
48 is a flowchart illustrating a payment process using payment information generated based on timestamp information according to various embodiments of the present disclosure;
49 illustrates a method for performing a payment transaction using a token according to various embodiments.

이하, 본 문서의 다양한 실시예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 문서의 실시예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.Hereinafter, various embodiments of the present document will be described with reference to the accompanying drawings. However, it is not intended to limit the technology described in this document to specific embodiments, and it should be understood to include various modifications, equivalents, and/or alternatives of the embodiments of this document. . In connection with the description of the drawings, like reference numerals may be used for like components.

본 문서에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.In this document, expressions such as "has," "may have," "includes," or "may include" refer to the presence of a corresponding characteristic (eg, a numerical value, function, operation, or component such as a part). and does not exclude the presence of additional features.

본 문서에서, "A 또는 B," "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상"등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B," "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.In this document, expressions such as "A or B," "at least one of A and/and B," or "one or more of A or/and B" may include all possible combinations of the items listed together. . For example, "A or B," "at least one of A and B," or "at least one of A or B" means (1) includes at least one A, (2) includes at least one B; Or (3) it may refer to all cases including both at least one A and at least one B.

본 문서에서 사용된 "제 1," "제 2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제 1 전자 장치와 제 2 전자 장치는, 순서 또는 중요도와 무관하게, 서로 다른 전자 장치를 나타낼 수 있다. 예를 들면, 본 문서에 기재된 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 바꾸어 명명될 수 있다.As used herein, expressions such as "first," "second," "first," or "second," may modify various elements, regardless of order and/or importance, and refer to one element. It is used only to distinguish it from other components, and does not limit the components. For example, the first electronic device and the second electronic device may represent different electronic devices regardless of order or importance. For example, without departing from the scope of the rights described in this document, a first component may be referred to as a second component, and similarly, the second component may also be renamed as a first component.

어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제 3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.A component (eg, a first component) is "coupled with/to (operatively or communicatively)" to another component (eg, a second component) When referring to "connected to", it will be understood that the certain element may be directly connected to the other element or may be connected through another element (eg, a third element). On the other hand, when it is said that a component (eg, a first component) is "directly connected" or "directly connected" to another component (eg, a second component), the component and the It may be understood that other components (eg, a third component) do not exist between other components.

본 문서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다. As used herein, the expression "configured to (or configured to)" depends on the context, for example, "suitable for," "having the capacity to ," "designed to," "adapted to," "made to," or "capable of." The term “configured (or configured to)” may not necessarily mean only “specifically designed to” in hardware. Instead, in some circumstances, the expression “a device configured to” may mean that the device is “capable of” with other devices or parts. For example, the phrase “a processor configured (or configured to perform) A, B, and C” refers to a dedicated processor (eg, an embedded processor) for performing the operations, or by executing one or more software programs stored in a memory device. , may mean a generic-purpose processor (eg, a CPU or an application processor) capable of performing corresponding operations.

본 문서에서 사용된 용어들은 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 다른 실시예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 문서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 문서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 문서의 실시예들을 배제하도록 해석될 수 없다.Terms used in this document are only used to describe specific embodiments, and may not be intended to limit the scope of other embodiments. The singular expression may include the plural expression unless the context clearly dictates otherwise. Terms used herein, including technical or scientific terms, may have the same meanings as commonly understood by one of ordinary skill in the art described in this document. Among the terms used in this document, terms defined in a general dictionary may be interpreted with the same or similar meaning to the meaning in the context of the related art, and unless explicitly defined in this document, ideal or excessively formal meanings is not interpreted as In some cases, even terms defined in this document cannot be construed to exclude embodiments of the present document.

본 문서의 다양한 실시예들에 따른 전자 장치는, 예를 들면, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), 데스크탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다. 다양한 실시예에 따르면, 웨어러블 장치는 액세서리형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착형(예: 스킨 패드(skin pad) 또는 문신), 또는 생체 이식형(예: implantable circuit) 중 적어도 하나를 포함할 수 있다. The electronic device according to various embodiments of the present document may include, for example, a smartphone, a tablet personal computer, a mobile phone, a video phone, and an e-book reader. , desktop personal computer, laptop personal computer, netbook computer, workstation, server, personal digital assistant (PDA), portable multimedia player (PMP), MP3 player, mobile It may include at least one of a medical device, a camera, and a wearable device. According to various embodiments, the wearable device may be an accessory type (eg, a watch, ring, bracelet, anklet, necklace, eyeglass, contact lens, or head-mounted-device (HMD)), a fabric or an integral piece of clothing ( It may include at least one of, for example, electronic clothing), a body attachable type (eg, a skin pad or tattoo), or a bioimplantable type (eg, an implantable circuit).

어떤 실시예들에서, 전자 장치는 가전 제품(home appliance)일 수 있다. 가전 제품은, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토매이션 컨트롤 패널(home automation control panel), 보안 컨트롤 패널(security control panel), TV 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(예: XboxTM, PlayStationTM), 전자 사전, 전자 키, 캠코더(camcorder), 또는 전자 액자 중 적어도 하나를 포함할 수 있다.In some embodiments, the electronic device may be a home appliance. Home appliances are, for example, televisions, digital video disk (DVD) players, audio systems, refrigerators, air conditioners, vacuum cleaners, ovens, microwave ovens, washing machines, air purifiers, set-top boxes, home automation controls. panel (home automation control panel), security control panel (security control panel), TV box (eg Samsung HomeSync TM , Apple TV TM , or Google TV TM ), game console (eg Xbox TM , PlayStation TM ), electronic dictionary , an electronic key, a camcorder, or an electronic picture frame.

다른 실시예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션(navigation) 장치, 위성 항법 시스템(GNSS(global navigation satellite system)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자 장치(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 금융 기관의 ATM(automatic teller's machine), 상점의 POS(point of sales), 또는 사물 인터넷 장치(internet of things)(예: 전구, 각종 센서, 전기 또는 가스 미터기, 스프링클러 장치, 화재경보기, 온도조절기(thermostat), 가로등, 토스터(toaster), 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다.In another embodiment, the electronic device may include various medical devices (eg, various portable medical measuring devices (eg, a blood glucose meter, a heart rate monitor, a blood pressure monitor, or a body temperature monitor), magnetic resonance angiography (MRA), magnetic resonance imaging (MRI), Computed tomography (CT), imagers, or ultrasound machines, etc.), navigation devices, satellite navigation systems (global navigation satellite system (GNSS)), event data recorder (EDR), flight data recorder (FDR), automotive infotainment ) devices, ship electronic equipment (e.g. ship navigation systems, gyro compasses, etc.), avionics, security devices, vehicle head units, industrial or domestic robots, and automatic teller's machines (ATMs) in financial institutions. , point of sales (POS) in stores, or internet of things (e.g. light bulbs, sensors, electricity or gas meters, sprinkler devices, smoke alarms, thermostats, street lights, toasters) , exercise equipment, hot water tank, heater, boiler, etc.) may include at least one.

어떤 실시예에 따르면, 전자 장치는 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터(projector), 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시예에서, 전자 장치는 전술한 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 어떤 실시예에 따른 전자 장치는 플렉서블 전자 장치일 수 있다. 또한, 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않으며, 기술 발전에 따른 새로운 전자 장치를 포함할 수 있다.According to some embodiments, the electronic device is a piece of furniture or part of a building/structure, an electronic board, an electronic signature receiving device, a projector, or various measuring instruments (eg, water, electricity, gas, or a radio wave measuring device). In various embodiments, the electronic device may be a combination of one or more of the various devices described above. The electronic device according to an embodiment may be a flexible electronic device. In addition, the electronic device according to the embodiment of the present document is not limited to the above-described devices, and may include a new electronic device according to technological development.

이하, 첨부 도면을 참조하여, 다양한 실시예에 따른 전자 장치가 설명된다. 본 문서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다. Hereinafter, an electronic device according to various embodiments will be described with reference to the accompanying drawings. In this document, the term user may refer to a person who uses an electronic device or a device (eg, an artificial intelligence electronic device) using the electronic device.

도 1은, 다양한 실시예에 따른, 네트워크 환경을 도시하는 블럭도(100)이다. 도1을 참조하여, 전자 장치 (101, 102 또는 104) 또는 서버(106)가 네트워크(162) 또는 근거리 통신(164)를 통하여 서로 연결될 수 있다. 전자 장치(101)는 버스(110), 프로세서(120), 메모리(130), 입출력 인터페이스(150), 디스플레이(160), 및 통신 인터페이스(170)를 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)는, 구성요소들 중 적어도 하나를 생략하거나 다른 구성요소를 추가적으로 구비할 수 있다. 1 is a block diagram 100 illustrating a network environment, in accordance with various embodiments. Referring to FIG. 1 , an electronic device 101 , 102 , or 104 or a server 106 may be connected to each other through a network 162 or short-range communication 164 . The electronic device 101 may include a bus 110 , a processor 120 , a memory 130 , an input/output interface 150 , a display 160 , and a communication interface 170 . In some embodiments, the electronic device 101 may omit at least one of the components or may additionally include other components.

버스(110)는, 예를 들면, 구성요소들(110-170)을 서로 연결하고, 구성요소들 간의 통신(예: 제어 메시지 및/또는 데이터)을 전달하는 회로를 포함할 수 있다.The bus 110 may include, for example, a circuit that connects the components 110 - 170 to each other and transmits communication (eg, a control message and/or data) between the components.

프로세서(120)는, 중앙처리장치(central processing unit(CPU)), 어플리케이션 프로세서(application processor(AP)), 또는 커뮤니케이션 프로세서(communication processor(CP)) 중 하나 또는 그 이상을 포함할 수 있다. 프로세서(120)는, 예를 들면, 전자 장치(101)의 적어도 하나의 다른 구성요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 실행할 수 있다. The processor 120 may include one or more of a central processing unit (CPU), an application processor (AP), and a communication processor (CP). The processor 120 may, for example, execute an operation or data processing related to control and/or communication of at least one other component of the electronic device 101 .

메모리(130)는, 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 메모리(130)는, 예를 들면, 전자 장치(101)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장할 수 있다. 한 실시예에 따르면, 메모리(130)는 소프트웨어 및/또는 프로그램(140)을 저장할 수 있다. 프로그램(140)은, 예를 들면, 커널(141), 미들웨어(143), 어플리케이션 프로그래밍 인터페이스(application programming interface(API))(145), 및/또는 어플리케이션 프로그램(또는 "어플리케이션")(147) 등을 포함할 수 있다. 커널(141), 미들웨어(143), 또는 API(145)의 적어도 일부는, 운영 시스템(operating system(OS))으로 지칭될 수 있다.The memory 130 may include volatile and/or non-volatile memory. The memory 130 may store, for example, commands or data related to at least one other component of the electronic device 101 . According to one embodiment, the memory 130 may store software and/or a program 140 . Program 140 may include, for example, kernel 141 , middleware 143 , application programming interface (API) 145 , and/or application programs (or “applications”) 147 , etc. may include At least a portion of the kernel 141 , the middleware 143 , or the API 145 may be referred to as an operating system (OS).

커널(141)은, 예를 들면, 다른 프로그램들(예: 미들웨어(143), API(145), 또는 어플리케이션 프로그램(147))에 구현된 동작 또는 기능을 실행하는 데 사용되는 시스템 리소스들(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)을 제어 또는 관리할 수 있다. 또한, 커널(141)은 미들웨어(143), API(145), 또는 어플리케이션 프로그램(147)에서 전자 장치(101)의 개별 구성요소에 접근함으로써, 시스템 리소스들을 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다. The kernel 141 is, for example, system resources (eg, middleware 143, API 145, or application program 147) used to execute an operation or function implemented in other programs (eg, middleware 143, API 145, or the application program 147). : The bus 110, the processor 120, the memory 130, etc.) can be controlled or managed. In addition, the kernel 141 may provide an interface capable of controlling or managing system resources by accessing individual components of the electronic device 101 from the middleware 143 , the API 145 , or the application program 147 . can

미들웨어(143)는, 예를 들면, API(145) 또는 어플리케이션 프로그램(147)이 커널(141)과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. The middleware 143 may, for example, play an intermediary role so that the API 145 or the application program 147 communicates with the kernel 141 to send and receive data.

또한, 미들웨어(143)는 어플리케이션 프로그램(147)으로부터 수신된 하나 이상의 작업 요청들을 우선 순위에 따라 처리할 수 있다. 예를 들면, 미들웨어(143)는 어플리케이션 프로그램(147) 중 적어도 하나에 전자 장치(101)의 시스템 리소스(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)를 사용할 수 있는 우선 순위를 부여할 수 있다. 예컨대, 미들웨어(143)는 상기 적어도 하나에 부여된 우선 순위에 따라 상기 하나 이상의 작업 요청들을 처리함으로써, 상기 하나 이상의 작업 요청들에 대한 스케쥴링 또는 로드 밸런싱 등을 수행할 수 있다.Also, the middleware 143 may process one or more work requests received from the application program 147 according to priority. For example, the middleware 143 may use a system resource (eg, the bus 110 , the processor 120 , or the memory 130 ) of the electronic device 101 for at least one of the application programs 147 . You can give priority. For example, the middleware 143 may process the one or more work requests according to the priority given to the at least one, thereby performing scheduling or load balancing for the one or more work requests.

API(145)는, 예를 들면, 어플리케이션(147)이 커널(141) 또는 미들웨어(143)에서 제공되는 기능을 제어하기 위한 인터페이스로, 예를 들면, 파일 제어, 창 제어, 영상 처리, 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수(예: 명령어)를 포함할 수 있다. The API 145 is, for example, an interface for the application 147 to control functions provided by the kernel 141 or the middleware 143, for example, file control, window control, image processing, or text. It may include at least one interface or function (eg, a command) for control and the like.

입출력 인터페이스(150)는, 예를 들면, 사용자 또는 다른 외부 기기로부터 입력된 명령 또는 데이터를 전자 장치(101)의 다른 구성요소(들)에 전달할 수 있는 인터페이스의 역할을 할 수 있다. 또한, 입출력 인터페이스(150)는 전자 장치(101)의 다른 구성요소(들)로부터 수신된 명령 또는 데이터를 사용자 또는 다른 외부 기기로 출력할 수 있다. The input/output interface 150 may serve as an interface capable of transmitting, for example, a command or data input from a user or other external device to other component(s) of the electronic device 101 . Also, the input/output interface 150 may output a command or data received from other component(s) of the electronic device 101 to a user or other external device.

디스플레이(160)는, 예를 들면, 액정 디스플레이(liquid crystal display(LCD)), 발광 다이오드(light-emitting diode(LED)) 디스플레이, 유기 발광 다이오드(organic light-emitting diode(OLED)) 디스플레이, 또는 마이크로 전자기계 시스템(microelectromechanical systems(MEMS)) 디스플레이, 또는 전자종이(electronic paper) 디스플레이를 포함할 수 있다. 디스플레이(160)는, 예를 들면, 사용자에게 각종 콘텐츠(예: 텍스트, 이미지, 비디오, 아이콘, 또는 심볼 등)을 표시할 수 있다. 디스플레이(160)는, 터치 스크린을 포함할 수 있으며, 예를 들면, 전자 펜 또는 사용자의 신체의 일부를 이용한 터치, 제스쳐, 근접, 또는 호버링 입력을 수신할 수 있다.Display 160 may be, for example, a liquid crystal display (LCD), a light-emitting diode (LED) display, an organic light-emitting diode (OLED) display, or microelectromechanical systems (MEMS) displays, or electronic paper displays. The display 160 may, for example, display various contents (eg, text, image, video, icon, or symbol) to the user. The display 160 may include a touch screen, and may receive, for example, a touch, gesture, proximity, or hovering input using an electronic pen or a part of the user's body.

통신 인터페이스(170)는, 예를 들면, 전자 장치(101)와 외부 장치(예: 제 1 외부 전자 장치(102), 제 2 외부 전자 장치(104), 또는 서버(106)) 간의 통신을 설정할 수 있다. 예를 들면, 통신 인터페이스(170)는 무선 통신 또는 유선 통신을 통해서 네트워크(162)에 연결되어 외부 장치(예: 제 2 외부 전자 장치(104) 또는 서버(106))와 통신할 수 있다.The communication interface 170, for example, sets up communication between the electronic device 101 and an external device (eg, the first external electronic device 102, the second external electronic device 104, or the server 106). can For example, the communication interface 170 may be connected to the network 162 through wireless communication or wired communication to communicate with an external device (eg, the second external electronic device 104 or the server 106 ).

무선 통신은, 예를 들면, 셀룰러 통신 프로토콜로서, 예를 들면, LTE(long-term evolution), LTE-A(LTE Advance), CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), 또는 GSM(Global System for Mobile Communications) 등 중 적어도 하나를 사용할 수 있다. 또한, 무선 통신은, 예를 들면, 근거리 통신(164)을 포함할 수 있다. 근거리 통신(164)은, 예를 들면, WiFi(wireless fidelity), 블루투스(Bluetooth), NFC(near field communication), MST(magnetic stripe transmission), 또는 GNSS(global navigation satellite system) 등 중 적어도 하나를 포함할 수 있다. Wireless communication is, for example, a cellular communication protocol, for example, long-term evolution (LTE), LTE Advance (LTE-A), code division multiple access (CDMA), wideband CDMA (WCDMA), universal (UMTS). At least one of mobile telecommunications system), Wireless Broadband (WiBro), and Global System for Mobile Communications (GSM) may be used. Also, wireless communication may include, for example, short-range communication 164 . The short-range communication 164 includes, for example, at least one of wireless fidelity (WiFi), Bluetooth (Bluetooth), near field communication (NFC), magnetic stripe transmission (MST), or global navigation satellite system (GNSS), etc. can do.

MST는 전자기 신호를 이용하여 전송 데이터에 따라 펄스를 생성하고, 상기 펄스는 자기장 신호를 발생시킬 수 있다. 전자 장치(101)는 상기 자기장 신호를 POS(point of sales)에 전송하고, POS는 MST 리더(MST reader)를 이용하여 상기 자기장 신호는 검출하고, 검출된 자기장 신호를 전기 신호로 변환함으로써 상기 데이터를 복원할 수 있다.The MST may generate a pulse according to transmitted data using an electromagnetic signal, and the pulse may generate a magnetic field signal. The electronic device 101 transmits the magnetic field signal to a point of sales (POS), the POS detects the magnetic field signal using an MST reader, and converts the detected magnetic field signal into an electric signal to convert the data can be restored.

GNSS는 사용 지역 또는 대역폭 등에 따라, 예를 들면, GPS(global positioning system), Glonass(global navigation satellite system), Beidou navigation satellite system(이하 “Beidou”) 또는 Galileo, the European global satellite-based navigation system 중 적어도 하나를 포함할 수 있다. 이하, 본 문서에서는, “GPS”는 “GNSS”와 혼용되어 사용(interchangeably used)될 수 있다. 유선 통신은, 예를 들면, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard232), 또는 POTS(plain old telephone service) 등 중 적어도 하나를 포함할 수 있다. 네트워크(162)는 통신 네트워크(telecommunications network), 예를 들면, 컴퓨터 네트워크(computer network)(예: LAN 또는 WAN), 인터넷, 또는 전화 망(telephone network) 중 적어도 하나를 포함할 수 있다.GNSS is, depending on the region or bandwidth used, for example, global positioning system (GPS), global navigation satellite system (Glonass), Beidou navigation satellite system (hereinafter “Beidou”) or Galileo, the European global satellite-based navigation system. It may include at least one. Hereinafter, in this document, "GPS" may be used interchangeably with "GNSS". Wired communication may include, for example, at least one of universal serial bus (USB), high definition multimedia interface (HDMI), recommended standard232 (RS-232), or plain old telephone service (POTS). The network 162 may include at least one of a telecommunications network, for example, a computer network (eg, LAN or WAN), the Internet, or a telephone network.

제 1 및 제 2 외부 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 한 실시예에 따르면, 서버(106)는 하나 또는 그 이상의 서버들의 그룹을 포함할 수 있다. 다양한 실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 전자 장치(예: 전자 장치(102,104), 또는 서버(106)에서 실행될 수 있다. 한 실시예에 따르면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 다른 장치(예: 전자 장치(102, 104), 또는 서버(106))에게 요청할 수 있다. 다른 전자 장치(예: 전자 장치(102, 104), 또는 서버(106))는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.Each of the first and second external electronic devices 102 and 104 may be the same as or different from the electronic device 101 . According to one embodiment, server 106 may include a group of one or more servers. According to various embodiments, all or part of the operations executed by the electronic device 101 may be executed by one or a plurality of other electronic devices (eg, the electronic devices 102 and 104 , or the server 106 ). Accordingly, when the electronic device 101 is to perform a function or service automatically or upon request, the electronic device 101 performs at least some functions related thereto instead of or in addition to executing the function or service itself. may request from another device (eg, electronic device 102, 104, or server 106) The other electronic device (eg, electronic device 102, 104, or server 106) may request the requested function or The additional function may be executed and the result may be transmitted to the electronic device 101. The electronic device 101 may provide the requested function or service by processing the received result as it is or additionally. For example, cloud computing, distributed computing, or client-server computing technology may be used.

도 2는 다양한 실시예에 따른, 전자 장치(201)를 도시하는 블록도(200)이다. 전자 장치(201)는, 예를 들면, 도 1에 도시된 전자 장치(101)의 전체 또는 일부를 포함할 수 있다. 전자 장치(201)는 하나 이상의 프로세서(예: AP(application processor))(210), 통신 모듈(220), (가입자 식별 모듈(224), 메모리(230), 센서 모듈(240), 입력 장치(250), 디스플레이(260), 인터페이스(270), 오디오 모듈(280), 카메라 모듈(291), 전력 관리 모듈(295), 배터리(296), 인디케이터(297), 및 모터(298) 를 포함할 수 있다.2 is a block diagram 200 illustrating an electronic device 201, according to various embodiments. The electronic device 201 may include, for example, all or a part of the electronic device 101 illustrated in FIG. 1 . The electronic device 201 includes one or more processors (eg, an application processor (AP)) 210 , a communication module 220 , (a subscriber identification module 224 , a memory 230 , a sensor module 240 , an input device ( 250 ), a display 260 , an interface 270 , an audio module 280 , a camera module 291 , a power management module 295 , a battery 296 , an indicator 297 , and a motor 298 . can

프로세서(210)는, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 프로세서(210)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 프로세서(210)는, 예를 들면, SoC(system on chip) 로 구현될 수 있다. 한 실시예에 따르면, 프로세서(210)는 GPU(graphic processing unit) 및/또는 이미지 신호 프로세서(image signal processor)를 더 포함할 수 있다. 프로세서(210)는 도 2에 도시된 구성요소들 중 적어도 일부(예: 셀룰러 모듈(221))를 포함할 수도 있다. 프로세서(210) 는 다른 구성요소들(예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리하고, 다양한 데이터를 비휘발성 메모리에 저장(store)할 수 있다.The processor 210 may control a plurality of hardware or software components connected to the processor 210 by, for example, driving an operating system or an application program, and may perform various data processing and operations. The processor 210 may be implemented as, for example, a system on chip (SoC). According to an embodiment, the processor 210 may further include a graphic processing unit (GPU) and/or an image signal processor. The processor 210 may include at least some of the components shown in FIG. 2 (eg, the cellular module 221 ). The processor 210 may load and process commands or data received from at least one of other components (eg, non-volatile memory) into a volatile memory, and store various data in the non-volatile memory. have.

통신 모듈(220)은, 도 1의 통신 인터페이스(170)와 동일 또는 유사한 구성을 가질 수 있다. 통신 모듈(220)은, 예를 들면, 셀룰러 모듈(221), WiFi 모듈(222), 블루투스 모듈(223), GNSS 모듈(224)(예: GPS 모듈, Glonass 모듈, Beidou 모듈, 또는 Galileo 모듈), NFC 모듈(225), MST 모듈(226), 및 RF(radio frequency) 모듈(227)를 포함할 수 있다.The communication module 220 may have the same or similar configuration to the communication interface 170 of FIG. 1 . The communication module 220 is, for example, a cellular module 221 , a WiFi module 222 , a Bluetooth module 223 , a GNSS module 224 (eg, a GPS module, a Glonass module, a Beidou module, or a Galileo module). , an NFC module 225 , an MST module 226 , and a radio frequency (RF) module 227 .

셀룰러 모듈(221)은, 예를 들면, 통신망을 통해서 음성 통화, 영상 통화, 문자 서비스, 또는 인터넷 서비스 등을 제공할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 가입자 식별 모듈(예: SIM 카드)(229)을 이용하여 통신 네트워크 내에서 전자 장치(201)의 구별 및 인증을 수행할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 프로세서(210)가 제공할 수 있는 기능 중 적어도 일부 기능을 수행할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 커뮤니케이션 프로세서(CP: communication processor)를 포함할 수 있다.The cellular module 221 may provide, for example, a voice call, a video call, a text service, or an Internet service through a communication network. According to an embodiment, the cellular module 221 may use a subscriber identification module (eg, a SIM card) 229 to identify and authenticate the electronic device 201 within a communication network. According to an embodiment, the cellular module 221 may perform at least some of the functions that the processor 210 may provide. According to an embodiment, the cellular module 221 may include a communication processor (CP).

WiFi 모듈(222), 블루투스 모듈(223), GNSS 모듈(224), NFC 모듈(225) 또는 MST 모듈(226) 각각은, 예를 들면, 해당하는 모듈을 통해서 송수신되는 데이터를 처리하기 위한 프로세서를 포함할 수 있다. 어떤 실시예에 따르면, 셀룰러 모듈(221), WiFi 모듈(222), 블루투스 모듈(223), GNSS 모듈(224), NFC 모듈(225) 또는 MST 모듈(226) 중 적어도 일부(예: 두 개 이상)는 하나의 integrated chip(IC) 또는 IC 패키지 내에 포함될 수 있다. Each of the WiFi module 222, the Bluetooth module 223, the GNSS module 224, the NFC module 225, or the MST module 226 includes, for example, a processor for processing data transmitted and received through the corresponding module. may include According to some embodiments, at least some (eg, two or more) of the cellular module 221 , the WiFi module 222 , the Bluetooth module 223 , the GNSS module 224 , the NFC module 225 , or the MST module 226 . ) may be included in one integrated chip (IC) or IC package.

RF 모듈(227)은, 예를 들면, 통신 신호(예: RF 신호)를 송수신할 수 있다. RF 모듈(227)은, 예를 들면, 트랜시버(transceiver), PAM(power amp module), 주파수 필터(frequency filter), LNA(low noise amplifier), 또는 안테나 등을 포함할 수 있다. 다른 실시예에 따르면, 셀룰러 모듈(221), WiFi 모듈(222), 블루투스 모듈(223), GNSS 모듈(224), NFC 모듈(225) 또는 MST 모듈(226) 중 적어도 하나는 별개의 RF 모듈을 통하여 RF 신호를 송수신할 수 있다. The RF module 227 may transmit and receive, for example, a communication signal (eg, an RF signal). The RF module 227 may include, for example, a transceiver, a power amp module (PAM), a frequency filter, a low noise amplifier (LNA), or an antenna. According to another embodiment, at least one of the cellular module 221, the WiFi module 222, the Bluetooth module 223, the GNSS module 224, the NFC module 225, or the MST module 226 is a separate RF module. RF signals can be transmitted and received through

가입자 식별 모듈(229)은, 예를 들면, 가입자 식별 모듈을 포함하는 카드 및/또는 내장 SIM(embedded SIM)을 포함할 수 있으며, 고유한 식별 정보(예: ICCID(integrated circuit card identifier)) 또는 가입자 정보(예: IMSI(international mobile subscriber identity))를 포함할 수 있다. Subscriber identification module 229 may include, for example, a card including a subscriber identification module and/or an embedded SIM (SIM), and may include unique identification information (eg, integrated circuit card identifier (ICCID)) or Subscriber information (eg, international mobile subscriber identity (IMSI)) may be included.

메모리(230)(예: 메모리(130))는, 예를 들면, 내장 메모리(232) 또는 외장 메모리(234)를 포함할 수 있다. 내장 메모리(232)는, 예를 들면, 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM), 또는 SDRAM(synchronous dynamic RAM) 등), 비휘발성 메모리(non-volatile Memory)(예: OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), mask ROM, flash ROM, 플래시 메모리(예: NAND flash 또는 NOR flash 등), 하드 드라이브, 또는 솔리드 스테이트 드라이브(solid state drive(SSD)) 중 적어도 하나를 포함할 수 있다. The memory 230 (eg, the memory 130 ) may include, for example, an internal memory 232 or an external memory 234 . The built-in memory 232 may include, for example, a volatile memory (eg, dynamic RAM (DRAM), static RAM (SRAM), or synchronous dynamic RAM (SDRAM)), a non-volatile memory (eg, a non-volatile memory). One time programmable ROM (OTPROM), programmable ROM (PROM), erasable and programmable ROM (EPROM), electrically erasable and programmable ROM (EEPROM), mask ROM, flash ROM, flash memory (such as NAND flash or NOR flash); It may include at least one of a hard drive and a solid state drive (SSD).

외장 메모리(234)는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD(micro secure digital), Mini-SD(mini secure digital), xD(extreme digital), MMC(multi-media card) 또는 메모리 스틱(memory stick) 등을 더 포함할 수 있다. 외장 메모리(234)는 다양한 인터페이스를 통하여 전자 장치(201)와 기능적으로 및/또는 물리적으로 연결될 수 있다.The external memory 234 is a flash drive, for example, compact flash (CF), secure digital (SD), micro secure digital (Micro-SD), mini secure digital (Mini-SD), extreme xD (xD). digital), a multi-media card (MMC), or a memory stick may be further included. The external memory 234 may be functionally and/or physically connected to the electronic device 201 through various interfaces.

보안 모듈(236)은 메모리(230)보다 상대적으로 보안 레벨이 높은 저장 공간을 포함하는 모듈로써, 안전한 데이터 저장 및 보호된 실행 환경을 보장해주는 회로일 수 있다. 예를 들면, 전자 장치는 높은 보안성이 요구되는 데이터(예:생체 정보, 개인정보, 카드정보)를 암호화하고, 암호화에 사용한 키를 보안 모듈(236)에 저장 할 수 있다. 보안 모듈(236)은 별도의 회로로 구현될 수 있으며, 별도의 프로세서를 포함할 수 있다. 보안 모듈(236)은, 예를 들면, 탈착 가능한 스마트 칩, 시큐어 디지털(secure digital(SD)) 카드 내에 존재하거나, 또는 전자 장치(201)의 고정 칩 내에 내장된 내장형 보안 요소(embedded secure element(eSE))를 포함할 수 있다. 또한, 보안 모듈(236)은 전자 장치(201)의 운영 체제(operating system(OS))와 다른 운영 체제로 구동될 수 있다. 예를 들면, JCOP(java card open platform) 운영 체제를 기반으로 동작할 수 있다. The security module 236 is a module including a storage space having a relatively higher security level than the memory 230 , and may be a circuit that ensures safe data storage and a protected execution environment. For example, the electronic device may encrypt data requiring high security (eg, biometric information, personal information, card information) and store the key used for encryption in the security module 236 . The security module 236 may be implemented as a separate circuit, and may include a separate processor. The secure module 236 may include, for example, an embedded secure element residing within a removable smart chip, a secure digital (SD) card, or embedded within a fixed chip of the electronic device 201 . eSE)) may be included. Also, the security module 236 may be driven by an operating system different from the operating system (OS) of the electronic device 201 . For example, it may operate based on a Java card open platform (JCOP) operating system.

센서 모듈(240)은, 예를 들면, 물리량을 계측하거나 전자 장치(201)의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 센서 모듈(240)은, 예를 들면, 제스처 센서(240A), 자이로 센서(240B), 기압 센서(240C), 마그네틱 센서(240D), 가속도 센서(240E), 그립 센서(240F), 근접 센서(240G), 컬러(color) 센서(240H)(예: RGB(red, green, blue) 센서), 생체 센서(240I), 온/습도 센서(240J), 조도 센서(240K), 또는 UV(ultra violet) 센서(240M) 중의 적어도 하나를 포함할 수 있다. 추가적으로 또는 대체적으로(additionally or alternatively), 센서 모듈(240)은, 예를 들면, 후각 센서(E-nose sensor), EMG 센서(electromyography sensor), EEG 센서(electroencephalogram sensor), ECG 센서(electrocardiogram sensor), IR(infrared) 센서, 홍채 센서 및/또는 지문 센서를 포함할 수 있다. 센서 모듈(240)은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시예에서는, 전자 장치(201)는 프로세서(210)의 일부로서 또는 별도로, 센서 모듈(240)을 제어하도록 구성된 프로세서를 더 포함하여, 프로세서(210)가 슬립(sleep) 상태에 있는 동안, 센서 모듈(240)을 제어할 수 있다.The sensor module 240 may, for example, measure a physical quantity or sense an operating state of the electronic device 201 , and convert the measured or sensed information into an electrical signal. The sensor module 240 is, for example, a gesture sensor 240A, a gyro sensor 240B, a barometric pressure sensor 240C, a magnetic sensor 240D, an acceleration sensor 240E, a grip sensor 240F, a proximity sensor ( 240G), color sensor (240H) (e.g. RGB (red, green, blue) sensor), biometric sensor (240I), temperature/humidity sensor (240J), illuminance sensor (240K), or UV (ultra violet) sensor ) may include at least one of the sensors 240M. Additionally or alternatively, the sensor module 240 may include, for example, an olfactory sensor (E-nose sensor), an electromyography sensor (EMG sensor), an electroencephalogram sensor (EEG sensor), an electrocardiogram sensor (ECG sensor) , an infrared (IR) sensor, an iris sensor, and/or a fingerprint sensor. The sensor module 240 may further include a control circuit for controlling at least one or more sensors included therein. In some embodiments, the electronic device 201 further comprises a processor configured to control the sensor module 240 , either as part of the processor 210 or separately, while the processor 210 is in a sleep state; The sensor module 240 may be controlled.

입력 장치(250)는, 예를 들면, 터치 패널(touch panel)(252), (디지털) 펜 센서(pen sensor)(254), 키(key)(256), 또는 초음파(ultrasonic) 입력 장치(258)를 포함할 수 있다. 터치 패널(252)은, 예를 들면, 정전식, 감압식, 적외선 방식, 또는 초음파 방식 중 적어도 하나의 방식을 사용할 수 있다. 또한, 터치 패널(252)은 제어 회로를 더 포함할 수도 있다. 터치 패널(252)은 택타일 레이어(tactile layer)를 더 포함하여, 사용자에게 촉각 반응을 제공할 수 있다. The input device 250 may include, for example, a touch panel 252 , a (digital) pen sensor 254 , a key 256 , or an ultrasonic input device ( 258) may be included. The touch panel 252 may use, for example, at least one of a capacitive type, a pressure sensitive type, an infrared type, and an ultrasonic type. Also, the touch panel 252 may further include a control circuit. The touch panel 252 may further include a tactile layer to provide a tactile response to the user.

(디지털) 펜 센서(254)는, 예를 들면, 터치 패널의 일부이거나, 별도의 인식용 쉬트(sheet)를 포함할 수 있다. 키(256)는, 예를 들면, 물리적인 버튼, 광학식 키, 또는 키패드를 포함할 수 있다. 초음파 입력 장치(258)는 마이크(예: 마이크(288))를 통해, 입력 도구에서 발생된 초음파를 감지하여, 상기 감지된 초음파에 대응하는 데이터를 확인할 수 있다.The (digital) pen sensor 254 may be, for example, a part of a touch panel or may include a separate recognition sheet. Key 256 may include, for example, a physical button, an optical key, or a keypad. The ultrasonic input device 258 may detect an ultrasonic wave generated by an input tool through a microphone (eg, the microphone 288 ), and check data corresponding to the sensed ultrasonic wave.

디스플레이(260)(예: 디스플레이(160))는 패널(262), 홀로그램 장치(264), 또는 프로젝터(266)를 포함할 수 있다. 패널(262)은, 도 1의 디스플레이(160)와 동일 또는 유사한 구성을 포함할 수 있다. 패널(262)은, 예를 들면, 유연하게(flexible), 투명하게(transparent), 또는 착용할 수 있게(wearable) 구현될 수 있다. 패널(262)은 터치 패널(252)과 하나의 모듈로 구성될 수도 있다. 홀로그램 장치(264)는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 프로젝터(266)는 스크린에 빛을 투사하여 영상을 표시할 수 있다. 스크린은, 예를 들면, 전자 장치(201)의 내부 또는 외부에 위치할 수 있다. 한 실시예에 따르면, 디스플레이(260)는 패널(262), 홀로그램 장치(264), 또는 프로젝터(266)를 제어하기 위한 제어 회로를 더 포함할 수 있다. The display 260 (eg, the display 160 ) may include a panel 262 , a hologram device 264 , or a projector 266 . The panel 262 may have the same or similar configuration to the display 160 of FIG. 1 . The panel 262 may be implemented to be flexible, transparent, or wearable, for example. The panel 262 may be composed of the touch panel 252 and one module. The hologram device 264 may display a stereoscopic image in the air by using light interference. The projector 266 may display an image by projecting light onto the screen. The screen may be located inside or outside the electronic device 201 , for example. According to one embodiment, the display 260 may further include a control circuit for controlling the panel 262 , the hologram device 264 , or the projector 266 .

인터페이스(270)는, 예를 들면, HDMI(high-definition multimedia interface)(272), USB(universal serial bus)(274), 광 인터페이스(optical interface)(276), 또는 D-sub(D-subminiature)(278)를 포함할 수 있다. 인터페이스(270)는, 예를 들면, 도 1에 도시된 통신 인터페이스(170)에 포함될 수 있다. 추가적으로 또는 대체적으로(additionally and alternatively), 인터페이스(270)는, 예를 들면, MHL(mobile high-definition link) 인터페이스, SD(secure digital) 카드/MMC(multi-media card) 인터페이스, 또는 IrDA(infrared data association) 규격 인터페이스를 포함할 수 있다. The interface 270 is, for example, a high-definition multimedia interface (HDMI) 272 , a universal serial bus (USB) 274 , an optical interface 276 , or a D-subminiature (D-sub). ) (278). The interface 270 may be included in, for example, the communication interface 170 shown in FIG. 1 . Additionally or alternatively, the interface 270 may be, for example, a mobile high-definition link (MHL) interface, a secure digital (SD) card/multi-media card (MMC) interface, or an infrared (IrDA) interface. data association) standard interface.

오디오 모듈(280)은, 예를 들면, 소리(sound)와 전기 신호를 쌍방향으로 변환시킬 수 있다. 오디오 모듈(280)의 적어도 일부 구성요소는, 예를 들면, 도 1 에 도시된 입출력 인터페이스(145)에 포함될 수 있다. 오디오 모듈(280)은, 예를 들면, 스피커(282), 리시버(284), 이어폰(286), 또는 마이크(288) 등을 통해 입력 또는 출력되는 소리 정보를 처리할 수 있다. The audio module 280 may interactively convert a sound and an electrical signal, for example. At least some components of the audio module 280 may be included in, for example, the input/output interface 145 illustrated in FIG. 1 . The audio module 280 may process sound information input or output through, for example, the speaker 282 , the receiver 284 , the earphone 286 , or the microphone 288 .

카메라 모듈(291)은, 예를 들면, 정지 영상 및 동영상을 촬영할 수 있는 장치로서, 한 실시예에 따르면, 하나 이상의 이미지 센서(예: 전면 센서 또는 후면 센서), 렌즈, ISP(image signal processor), 또는 플래시(flash)(예: LED 또는 xenon lamp 등)를 포함할 수 있다.The camera module 291 is, for example, a device capable of capturing still images and moving images, and according to an embodiment, one or more image sensors (eg, a front sensor or a rear sensor), a lens, and an image signal processor (ISP). , or a flash (eg, an LED or xenon lamp, etc.).

전력 관리 모듈(295)은, 예를 들면, 전자 장치(201)의 전력을 관리할 수 있다. 한 실시예에 따르면, 전력 관리 모듈(295)은 PMIC(power management integrated circuit), 충전 IC(charger integrated circuit), 또는 배터리 또는 연료 게이지(battery or fuel gauge)를 포함할 수 있다. PMIC는, 유선 및/또는 무선 충전 방식을 가질 수 있다. 무선 충전 방식은, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등을 포함하며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 또는 정류기 등을 더 포함할 수 있다. 배터리 게이지는, 예를 들면, 배터리(296)의 잔량, 충전 중 전압, 전류, 또는 온도를 측정할 수 있다. 배터리(296)는, 예를 들면, 충전식 전지(rechargeable battery) 및/또는 태양 전지(solar battery)를 포함할 수 있다. The power management module 295 may manage power of the electronic device 201 , for example. According to an embodiment, the power management module 295 may include a power management integrated circuit (PMIC), a charger integrated circuit (IC), or a battery or fuel gauge. The PMIC may have a wired and/or wireless charging method. The wireless charging method includes, for example, a magnetic resonance method, a magnetic induction method, or an electromagnetic wave method, and may further include an additional circuit for wireless charging, for example, a coil loop, a resonance circuit, or a rectifier. have. The battery gauge may measure, for example, the remaining amount of the battery 296 , voltage, current, or temperature during charging. The battery 296 may include, for example, a rechargeable battery and/or a solar battery.

인디케이터(297)는 전자 장치(201) 또는 그 일부(예: 프로세서(210))의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 모터(298)는 전기적 신호를 기계적 진동으로 변환할 수 있고, 진동(vibration), 또는 햅틱(haptic) 효과 등을 발생시킬 수 있다. 도시되지는 않았으나, 전자 장치(201)는 모바일 TV 지원을 위한 처리 장치(예: GPU)를 포함할 수 있다. 모바일 TV 지원을 위한 처리 장치는, 예를 들면, DMB(digital multimedia broadcasting), DVB(digital video broadcasting), 또는 미디어플로(mediaFloTM) 등의 규격에 따른 미디어 데이터를 처리할 수 있다. The indicator 297 may display a specific state of the electronic device 201 or a part thereof (eg, the processor 210 ), for example, a booting state, a message state, or a charging state. The motor 298 may convert an electrical signal into mechanical vibration, and may generate vibration or a haptic effect. Although not shown, the electronic device 201 may include a processing unit (eg, GPU) for supporting mobile TV. The processing device for supporting mobile TV may process media data according to standards such as digital multimedia broadcasting (DMB), digital video broadcasting (DVB), or mediaFloTM, for example.

본 문서에서 기술된 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시예에서, 전자 장치는 본 문서에서 기술된 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 또한, 다양한 실시예에 따른 전자 장치의 구성요소들 중 일부가 결합되어 하나의 개체(entity)로 구성됨으로써, 결합되기 이전의 해당 구성요소들의 기능을 동일하게 수행할 수 있다.Each of the components described in this document may be composed of one or more components, and the name of the component may vary depending on the type of the electronic device. In various embodiments, the electronic device may be configured to include at least one of the components described in this document, and some components may be omitted or may further include additional other components. In addition, since some of the components of the electronic device according to various embodiments are combined to form a single entity, the functions of the components prior to being combined may be identically performed.

도 3은 다양한 실시예에 따른, 프로그램 모듈(310)을 도시하는 블록도(300)이다. 한 실시예에 따르면, 프로그램 모듈(310)(예: 프로그램(140))은 전자 장치(예: 전자 장치(101))에 관련된 자원을 제어하는 운영 체제(operating system(OS)) 및/또는 운영 체제 상에서 구동되는 다양한 어플리케이션(예: 어플리케이션 프로그램(147))을 포함할 수 있다. 운영 체제는, 예를 들면, 안드로이드(androidTM), iOSTM, 윈도우즈(windowsTM), 심비안(symbianTM), 타이젠(tizenTM), 또는 바다(badaTM) 등이 될 수 있다.3 is a block diagram 300 illustrating a program module 310, according to various embodiments. According to an embodiment, the program module 310 (eg, the program 140 ) is an operating system (OS) and/or an operating system that controls resources related to the electronic device (eg, the electronic device 101 ). It may include various applications (eg, the application program 147) running on the system. The operating system may be, for example, Android TM , iOS TM , Windows TM , Symbian TM , Tizen TM , or bada TM .

프로그램 모듈(310)은 커널(320), 미들웨어(330), 어플리케이션 프로그래밍 인터페이스(application programming interface (API))(360), 및/또는 어플리케이션(370)을 포함할 수 있다. 프로그램 모듈(310)의 적어도 일부는 전자 장치 상에 프리로드(preload) 되거나, 외부 전자 장치(예: 전자 장치(102, 104), 서버(106) 등)로부터 다운로드(download) 가능하다.The program module 310 may include a kernel 320 , middleware 330 , an application programming interface (API) 360 , and/or an application 370 . At least a portion of the program module 310 may be preloaded on the electronic device or downloaded from an external electronic device (eg, the electronic devices 102 and 104 , the server 106 , etc.).

커널(320)(예: 커널(141))은, 예를 들면, 시스템 리소스 매니저(321) 및/또는 디바이스 드라이버(323)를 포함할 수 있다. 시스템 리소스 매니저(321)는 시스템 리소스의 제어, 할당, 또는 회수 등을 수행할 수 있다. 한 실시예에 따르면, 시스템 리소스 매니저(321)는 프로세스 관리부, 메모리 관리부, 또는 파일 시스템 관리부 등을 포함할 수 있다. 디바이스 드라이버(323)는, 예를 들면, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 공유 메모리 드라이버, USB 드라이버, 키패드 드라이버, WiFi 드라이버, 오디오 드라이버, 또는 IPC(inter-process communication) 드라이버를 포함할 수 있다. The kernel 320 (eg, the kernel 141 ) may include, for example, a system resource manager 321 and/or a device driver 323 . The system resource manager 321 may control, allocate, or recover system resources. According to an embodiment, the system resource manager 321 may include a process manager, a memory manager, or a file system manager. The device driver 323 may include, for example, a display driver, a camera driver, a Bluetooth driver, a shared memory driver, a USB driver, a keypad driver, a WiFi driver, an audio driver, or an inter-process communication (IPC) driver. .

미들웨어(330)는, 예를 들면, 어플리케이션(370)이 공통적으로 필요로 하는 기능을 제공하거나, 어플리케이션(370)이 전자 장치 내부의 제한된 시스템 자원을 효율적으로 사용할 수 있도록 API(360)를 통해 다양한 기능들을 어플리케이션(370)으로 제공할 수 있다. 한 실시예에 따르면, 미들웨어(330)(예: 미들웨어(143))는 런타임 라이브러리(335), 어플리케이션 매니저(application manager)(341), 윈도우 매니저(window manager)(342), 멀티미디어 매니저(multimedia manager)(343), 리소스 매니저(resource manager)(344), 파워 매니저(power manager)(345), 데이터베이스 매니저(database manager)(346), 패키지 매니저(package manager)(347), 연결 매니저(connectivity manager)(348), 통지 매니저(notification manager)(349), 위치 매니저(location manager)(350), 그래픽 매니저(graphic manager)(351), 보안 매니저(security manager)(352), 또는 결제 매니저(354) 중 적어도 하나를 포함할 수 있다.The middleware 330 provides, for example, functions commonly required by the applications 370 or provides various functions through the API 360 so that the applications 370 can efficiently use limited system resources inside the electronic device. Functions may be provided to the application 370 . According to an embodiment, the middleware 330 (eg, middleware 143 ) includes a runtime library 335 , an application manager 341 , a window manager 342 , and a multimedia manager. ) (343), resource manager (344), power manager (345), database manager (346), package manager (347), connectivity manager ) 348 , notification manager 349 , location manager 350 , graphic manager 351 , security manager 352 , or payment manager 354 . ) may include at least one of.

런타임 라이브러리(335)는, 예를 들면, 어플리케이션(370)이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈을 포함할 수 있다. 런타임 라이브러리(335)는 입출력 관리, 메모리 관리, 또는 산술 함수에 대한 기능 등을 수행할 수 있다. The runtime library 335 may include, for example, a library module used by the compiler to add a new function through a programming language while the application 370 is being executed. The runtime library 335 may perform input/output management, memory management, or a function for an arithmetic function.

어플리케이션 매니저(341)는, 예를 들면, 어플리케이션(370) 중 적어도 하나의 어플리케이션의 생명 주기(life cycle)를 관리할 수 있다. 윈도우 매니저(342)는 화면에서 사용하는 GUI 자원을 관리할 수 있다. 멀티미디어 매니저(343)는 다양한 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱(codec)을 이용하여 미디어 파일의 인코딩(encoding) 또는 디코딩(decoding)을 수행할 수 있다. 리소스 매니저(344)는 어플리케이션(370) 중 적어도 어느 하나의 어플리케이션의 소스 코드, 메모리 또는 저장 공간 등의 자원을 관리할 수 있다. The application manager 341 may manage, for example, a life cycle of at least one application among the applications 370 . The window manager 342 may manage GUI resources used in the screen. The multimedia manager 343 may identify a format required for reproduction of various media files, and may encode or decode the media file using a codec suitable for the format. The resource manager 344 may manage resources such as source code, memory, or storage space of at least one of the applications 370 .

파워 매니저(345)는, 예를 들면, 바이오스(BIOS: basic input/output system) 등과 함께 동작하여 배터리(battery) 또는 전원을 관리하고, 전자 장치의 동작에 필요한 전력 정보 등을 제공할 수 있다. 데이터베이스 매니저(346)는 어플리케이션(370) 중 적어도 하나의 어플리케이션에서 사용할 데이터베이스를 생성, 검색, 또는 변경할 수 있다. 패키지 매니저(347)는 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 업데이트를 관리할 수 있다. The power manager 345 may, for example, operate in conjunction with a basic input/output system (BIOS), etc. to manage a battery or power, and provide power information required for the operation of the electronic device. The database manager 346 may create, search, or change a database to be used by at least one of the applications 370 . The package manager 347 may manage installation or update of applications distributed in the form of package files.

연결 매니저(348)는, 예를 들면, WiFi 또는 블루투스 등의 무선 연결을 관리할 수 있다. 통지 매니저(349)는 도착 메시지, 약속, 근접성 알림 등의 사건(event)을 사용자에게 방해되지 않는 방식으로 표시 또는 통지할 수 있다. 위치 매니저(350)는 전자 장치의 위치 정보를 관리할 수 있다. 그래픽 매니저(351)는 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 보안 매니저(352)는 시스템 보안 또는 사용자 인증 등에 필요한 제반 보안 기능을 제공할 수 있다. 한 실시예에 따르면, 전자 장치(예: 전자 장치(101))가 전화 기능을 포함한 경우, 미들웨어(330)는 전자 장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화 매니저(telephony manager)를 더 포함할 수 있다. 결제 매니저(354)는 어플리케이션(370)으로부터 결제를 위한 정보를 어플리케이션(370) 또는 커널(320)에 중계할 수 있다. 또한 외부 장치로부터 수신한 결제에 관련된 정보를 전자 장치(200) 내부에 저장하거나 내부에 저장된 정보를 외부 장치에 전달할 수 있다. The connection manager 348 may manage a wireless connection such as WiFi or Bluetooth, for example. The notification manager 349 may display or notify the user of events such as arrival messages, appointments, and proximity notifications in an unobtrusive manner. The location manager 350 may manage location information of the electronic device. The graphic manager 351 may manage graphic effects to be provided to the user or a user interface related thereto. The security manager 352 may provide various security functions necessary for system security or user authentication. According to an embodiment, when the electronic device (eg, the electronic device 101) includes a phone function, the middleware 330 further includes a telephony manager for managing the voice or video call function of the electronic device. can do. The payment manager 354 may relay information for payment from the application 370 to the application 370 or the kernel 320 . Also, payment related information received from an external device may be stored inside the electronic device 200 or information stored therein may be transmitted to the external device.

미들웨어(330)는 전술한 구성요소들의 다양한 기능의 조합을 형성하는 미들웨어 모듈을 포함할 수 있다. 미들웨어(330)는 차별화된 기능을 제공하기 위해 운영 체제의 종류 별로 특화된 모듈을 제공할 수 있다. 또한, 미들웨어(330)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다.The middleware 330 may include a middleware module that forms a combination of various functions of the aforementioned components. The middleware 330 may provide a specialized module for each type of operating system in order to provide a differentiated function. Also, the middleware 330 may dynamically delete some existing components or add new components.

API(360)(예: API(145))는, 예를 들면, API 프로그래밍 함수들의 집합으로, 운영 체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드(AndroidTM) 또는 iOSTM의 경우, 플랫폼 별로 하나의 API 셋을 제공할 수 있으며, 타이젠(tizenTM)의 경우, 플랫폼 별로 두 개 이상의 API 셋을 제공할 수 있다.The API 360 (eg, the API 145 ) is, for example, a set of API programming functions, and may be provided in a different configuration according to an operating system. For example, in the case of Android TM or iOS TM , one API set may be provided for each platform, and in the case of tizen TM , two or more API sets may be provided for each platform.

어플리케이션(370)(예: 어플리케이션 프로그램(147))은, 예를 들면, 홈(371), 다이얼러(372), SMS/MMS(373), IM(instant message)(374), 브라우저(375), 카메라(376), 알람(377), 컨택트(378), 음성 다이얼(379), 이메일(380), 달력(381), 미디어 플레이어(382), 앨범(383), 시계(384), 결제(385), 건강 관리(health care)(예: 운동량 또는 혈당 등을 측정), 또는 환경 정보 제공(예: 기압, 습도, 또는 온도 정보 등을 제공) 등의 기능을 수행할 수 있는 하나 이상의 어플리케이션을 포함할 수 있다.The application 370 (eg, the application program 147 ) may include, for example, a home 371 , a dialer 372 , an SMS/MMS 373 , an instant message (IM) 374 , a browser 375 , Camera 376, Alarm 377, Contacts 378, Voice Dial 379, Email 380, Calendar 381, Media Player 382, Album 383, Clock 384, Payment 385 ), health care (e.g., measuring exercise volume or blood sugar), or providing environmental information (e.g., providing information about air pressure, humidity, or temperature), etc. can do.

한 실시예에 따르면, 어플리케이션(370)은 전자 장치(예: 전자 장치(101))와 외부 전자 장치(예: 전자 장치(102, 104)) 사이의 정보 교환을 지원하는 어플리케이션(이하, 설명의 편의 상, "정보 교환 어플리케이션")을 포함할 수 있다. 정보 교환 어플리케이션은, 예를 들면, 외부 전자 장치에 특정 정보를 전달하기 위한 알림 전달(notification relay) 어플리케이션, 또는 외부 전자 장치를 관리하기 위한 장치 관리(device management) 어플리케이션을 포함할 수 있다. According to an embodiment, the application 370 is an application that supports information exchange between an electronic device (eg, the electronic device 101) and an external electronic device (eg, the electronic devices 102 and 104) (hereinafter, described below). For convenience, "information exchange application") may be included. The information exchange application may include, for example, a notification relay application for transmitting specific information to an external electronic device or a device management application for managing the external electronic device.

예를 들면, 알림 전달 어플리케이션은 전자 장치의 다른 어플리케이션(예: SMS/MMS 어플리케이션, 이메일 어플리케이션, 건강 관리 어플리케이션, 또는 환경 정보 어플리케이션 등)에서 발생된 알림 정보를 외부 전자 장치(예: 전자 장치(102, 104))로 전달하는 기능을 포함할 수 있다. 또한, 알림 전달 어플리케이션은, 예를 들면, 외부 전자 장치로부터 알림 정보를 수신하여 사용자에게 제공할 수 있다. For example, the notification delivery application transmits notification information generated by another application of the electronic device (eg, an SMS/MMS application, an email application, a health management application, or an environment information application) to an external electronic device (eg, the electronic device 102 ). , 104)). Also, the notification delivery application may receive notification information from, for example, an external electronic device and provide the notification information to the user.

장치 관리 어플리케이션은, 예를 들면, 전자 장치와 통신하는 외부 전자 장치(예: 전자 장치(102, 104))의 적어도 하나의 기능(예: 외부 전자 장치 자체(또는, 일부 구성 부품)의 턴-온/턴-오프 또는 디스플레이의 밝기(또는, 해상도) 조절), 외부 전자 장치에서 동작하는 어플리케이션 또는 외부 전자 장치에서 제공되는 서비스(예: 통화 서비스 또는 메시지 서비스 등)를 관리(예: 설치, 삭제, 또는 업데이트)할 수 있다. The device management application is, for example, the turn-of at least one function (eg, the external electronic device itself (or some component) of the external electronic device (eg, the electronic device 102, 104) that communicates with the electronic device) Manage (eg, install, delete, etc.) applications running on/off or display brightness (or resolution) adjustments), applications running on external electronic devices, or services provided by external electronic devices (eg, call services or message services, etc.) , or update).

한 실시예에 따르면, 어플리케이션(370)은 외부 전자 장치(예: 전자 장치(102, 104))의 속성(에 따라 지정된 어플리케이션(예: 모바일 의료 기기의 건강 관리 어플리케이션 등)을 포함할 수 있다. 한 실시예에 따르면, 어플리케이션(370)은 외부 전자 장치(예: 서버(106) 또는 전자 장치(102, 104))로부터 수신된 어플리케이션을 포함할 수 있다. 한 실시예에 따르면, 어플리케이션(370)은 프리로드 어플리케이션(preloaded application) 또는 서버로부터 다운로드 가능한 제3자 어플리케이션(third party application)을 포함할 수 있다. 도시된 실시예에 따른 프로그램 모듈(310)의 구성요소들의 명칭은 운영 체제의 종류에 따라서 달라질 수 있다. According to an embodiment, the application 370 may include an application (eg, a health management application of a mobile medical device, etc.) designated according to a property (eg, the electronic device 102 or 104 ) of the external electronic device (eg, the electronic device 102 or 104 ). According to an embodiment, the application 370 may include an application received from an external electronic device (eg, the server 106 or the electronic devices 102 and 104). may include a preloaded application or a third party application downloadable from a server The names of components of the program module 310 according to the illustrated embodiment depend on the type of the operating system. Therefore, it may vary.

다양한 실시예에 따르면, 프로그램 모듈(310)의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어, 또는 이들 중 적어도 둘 이상의 조합으로 구현될 수 있다. 프로그램 모듈(310)의 적어도 일부는, 예를 들면, 프로세서(예: 프로세서(210))에 의해 구현(implement)(예: 실행)될 수 있다. 프로그램 모듈(310)의 적어도 일부는 하나 이상의 기능을 수행하기 위한, 예를 들면, 모듈, 프로그램, 루틴, 명령어 세트(sets of instructions) 또는 프로세스 등을 포함할 수 있다.According to various embodiments, at least a portion of the program module 310 may be implemented in software, firmware, hardware, or a combination of at least two or more thereof. At least a portion of the program module 310 may be implemented (eg, executed) by, for example, a processor (eg, the processor 210 ). At least a portion of the program module 310 may include, for example, a module, a program, a routine, sets of instructions, or a process for performing one or more functions.

본 문서에서 사용된 용어 "모듈"은, 예를 들면, 하드웨어, 소프트웨어 또는 펌웨어(firmware) 중 하나 또는 둘 이상의 조합을 포함하는 단위(unit)를 의미할 수 있다. "모듈"은, 예를 들면, 유닛(unit), 로직(logic), 논리 블록(logical block), 부품(component), 또는 회로(circuit) 등의 용어와 바꾸어 사용(interchangeably use)될 수 있다. "모듈"은, 일체로 구성된 부품의 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수도 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있다. 예를 들면,"모듈"은, 알려졌거나 앞으로 개발될, 어떤 동작들을 수행하는 ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays) 또는 프로그램 가능 논리 장치(programmable-logic device) 중 적어도 하나를 포함할 수 있다. As used herein, the term “module” may refer to, for example, a unit including one or a combination of two or more of hardware, software, or firmware. The term “module” may be used interchangeably with terms such as, for example, unit, logic, logical block, component, or circuit. A “module” may be a minimum unit or a part of an integrally configured component. A “module” may be a minimum unit or a part of performing one or more functions. A “module” may be implemented mechanically or electronically. For example, a “module” may be one of an application-specific integrated circuit (ASIC) chip, field-programmable gate arrays (FPGAs) or programmable-logic device, known or to be developed, that performs certain operations. It may include at least one.

다양한 실시예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는, 예컨대, 프로그램 모듈의 형태로 컴퓨터로 읽을 수 있는 저장매체(computer-readable storage media)에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서(예: 프로세서(120))에 의해 실행될 경우, 상기 하나 이상의 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 읽을 수 있는 저장매체는, 예를 들면, 메모리(130)가 될 수 있다. At least a portion of an apparatus (eg, modules or functions thereof) or a method (eg, operations) according to various embodiments is, for example, a computer-readable storage medium in the form of a program module It can be implemented as a command stored in . When the instruction is executed by a processor (eg, the processor 120), the one or more processors may perform a function corresponding to the instruction. The computer-readable storage medium may be, for example, the memory 130 .

컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(magnetic media)(예: 자기테이프), 광기록 매체(optical media)(예: CD-ROM(compact disc read only memory), DVD(digital versatile disc), 자기-광 매체(magneto-optical media)(예: 플롭티컬 디스크(floptical disk)), 하드웨어 장치(예: ROM(read only memory), RAM(random access memory), 또는 플래시 메모리 등) 등을 포함할 수 있다. 또한, 프로그램 명령에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 다양한 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지다.Computer-readable recording media include hard disks, floppy disks, magnetic media (eg, magnetic tape), optical media (eg, compact disc read only memory (CD-ROM), DVD ( digital versatile disc), magneto-optical media (such as floppy disk), hardware devices (such as read only memory (ROM), random access memory (RAM), or flash memory, etc.) ), etc. In addition, the program instructions may include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter, etc. The above-described hardware devices include various It may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

다양한 실시예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 다양한 실시예에 따른 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)한 방법으로 실행될 수 있다. 또한, 일부 동작은 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다. 그리고 본 문서에 개시된 실시예는 개시된, 기술 내용의 설명 및 이해를 위해 제시된 것이며, 본 문서에서 기재된 기술의 범위를 한정하는 것은 아니다. 따라서, 본 문서의 범위는, 본 문서의 기술적 사상에 근거한 모든 변경 또는 다양한 다른 실시예를 포함하는 것으로 해석되어야 한다.A module or program module according to various embodiments may include at least one or more of the above-described components, some may be omitted, or may further include additional other components. Operations performed by a module, a program module, or other components according to various embodiments may be executed sequentially, in parallel, iteratively, or in a heuristic manner. Also, some operations may be executed in a different order, omitted, or other operations may be added. In addition, the embodiments disclosed in this document are presented for explanation and understanding of the disclosed and technical content, and do not limit the scope of the technology described in this document. Accordingly, the scope of this document should be construed to include all modifications or various other embodiments based on the technical spirit of this document.

도 4는, 다양한 실시예에 따른, 전자 장치(예: 전자 장치(101))에서 운용되는 REE(rich execution environment)(410) 및 TEE(trunsted execution environment)(420)를 도시하는 블럭도(400)이다. 다양한 실시예에 따르면, 전자 장치는 보안 강화를 위해 복수의 보안 레벨을 가진 실행 환경을 운용할 수 있다. 복수의 실행 환경은, 예를 들면, REE(410) 및 TEE(420)를 포함할 수 있다. REE는, 예를 들면, 제 1 보안 레벨을 가지는 제 1 실행 환경일 수 있다. TEE는, 예를 들면, 제 1 보안 레벨과 다른(예: 높은) 제 2 보안 레벨을 가지는 제 2 실행 환경일 수 있다. 한 실시예에 따르면, 전자 장치(101)는 제 3 보안 레벨을 가지는 추가적인 다른 싱행 환경(예: 제 3 실행 환경)을 포함할 수 있으며, 이에 한정하는 것은 아니다. 4 is a block diagram 400 illustrating a rich execution environment (REE) 410 and a trusted execution environment (TEE) 420 operated in an electronic device (eg, the electronic device 101 ), according to various embodiments of the present disclosure. )to be. According to various embodiments, the electronic device may operate an execution environment having a plurality of security levels to enhance security. The plurality of execution environments may include, for example, an REE 410 and a TEE 420 . The REE may be, for example, a first execution environment having a first security level. The TEE may be, for example, a second execution environment having a second security level that is different (eg, higher) than the first security level. According to an embodiment, the electronic device 101 may include an additional additional writing environment (eg, a third execution environment) having a third security level, but is not limited thereto.

TEE는 상대적으로 높은 보안 레벨이 요구되는 데이터를 안전한 환경 내에서 저장하고 관련 동작을 수행할 수 있다. TEE는 전자 장치의 어플리케이션 프로세서 상에서 동작하고, 전자 장치의 제조 과정에서 결정된 신뢰할 수 있는 하드웨어 구조에 기반하여 동작할 수 있다. TEE는 어플리케이션 프로세서 또는 메모리를 노멀 영역(normal area)과 보안 영역으로 구분하여 보안 영역에서 동작할 수 있다. TEE는 보안이 필요한 소프트웨어나 하드웨어를 보안 영역에서만 동작하게 하도록 설정할 수 있다. 전자 장치는 하드웨어의 물리적 변경 또는 소프트웨어의 논리적 변경을 통하여 TEE를 운용할 수 있다.The TEE can store data requiring a relatively high security level in a secure environment and perform related operations. The TEE may operate on an application processor of the electronic device and may operate based on a reliable hardware structure determined during a manufacturing process of the electronic device. The TEE divides the application processor or memory into a normal area and a security area to operate in the security area. TEE can be configured to operate software or hardware requiring security only in a secure area. The electronic device may operate the TEE through a physical change of hardware or a logical change of software.

TEE는 REE와 하드웨어적인 제약을 통하여 서로 분리될 수 있고, 동일한 하드웨어에서 소프트웨어적으로 분리되어 동작할 수 있다. REE에서 동작하는 적어도 하나의 어플리케이션(예: 결제, 컨택트, 이메일, 또는 브라우저 등)은 TEE에 접근이 허용된 API(예: TEE functional API 또는 TEE client API)를 이용할 수 있다. 상기 적어도 하나의 어플리케이션은 상기 API를 이용하여 REE의 통신 에이전트(REE communication agent)에서 TEE의 통신 에이전트)(TEE communication agent)로 메시지를 전달할 수 있다. 상기 메시지는 하드웨어적으로 TEE에만 전달될 수 있도록 구현될 수 있다. TEE의 통신 에이전트는 상기 메시지를 수신하여 상기 메시지와 관련된 보안 어플리케이션(trusted application(TA))(예: DRM(digital rights management), 보안 결제 모듈, 또는 보안 생체 정보 모듈 등)에 전달할 수 있다. 보안 어플리케이션은 상기 메시지에 관련된 동작을 수행할 수 있으며, 동작에 대한 결과를 TEE의 통신 에이전트를 통하여 REE의 통신 에이전트에 전달할 수 있다. 상기 REE의 통신 에이전트는 REE에서 운용 중인 적어도 하나의 어플리케이션에 상기 결과를 전달할 수 있다. TEE can be separated from each other through REE and hardware restrictions, and can be operated separately in software on the same hardware. At least one application (eg, payment, contact, e-mail, or browser) operating in the REE may use an API (eg, TEE functional API or TEE client API) that is allowed to access the TEE. The at least one application may transmit a message from a communication agent of the REE to a communication agent of the TEE (TEE communication agent) using the API. The message may be implemented to be delivered only to the TEE in hardware. The communication agent of the TEE may receive the message and transmit it to a trusted application (TA) (eg, digital rights management (DRM), a secure payment module, or a secure biometric information module, etc.) related to the message. The security application may perform an operation related to the message, and may transmit a result of the operation to the communication agent of the REE through the communication agent of the TEE. The communication agent of the REE may transmit the result to at least one application operating in the REE.

도 5(a) 내지 5(c)은, 다양한 실시예에 따른, TEE의 하드웨어 구조를 도시하는 블럭도(500)다. 도 5(a)는 하드웨어적으로 하나의 프로세서와 하나의 메모리를 REE와 TEE로 구분하여 사용하는 경우(예: ARM의 트러스트존(Trustzone(TZ)))를 도시한다. 한 실시예에 따르면, TEE의 하드웨어 구조는 On-SoC(510) 및 external memories(520)를 포함할 수 있다. On-SoC(510)는 마이크로 프로세싱 코어(501), RAM(502), ROM(503), peripheral(504), crypto accelerator(505) 또는 OTP fields(506)를 포함할 수 있다. 트러스트존은 둘 이상의 실행 환경을 운용하기 위해 프로세서를 시간적으로 분리하여 REE와 TEE를 구분하여 사용할 수 있다. 또한, 트러스트존은 하나의 메모리를 REE에서 접근 가능한 영역 및 TEE에서 접근 가능한 영역으로 구분하여 사용할 수 있다. 5(a) to 5(c) are block diagrams 500 illustrating a hardware structure of a TEE, according to various embodiments. FIG. 5(a) shows a case in which one processor and one memory are divided into REE and TEE in terms of hardware (eg, trust zone (TZ) of ARM). According to an embodiment, the hardware structure of the TEE may include an On-SoC 510 and external memories 520 . The On-SoC 510 may include a microprocessing core 501 , RAM 502 , ROM 503 , peripheral 504 , crypto accelerator 505 or OTP fields 506 . In order to operate two or more execution environments, the trust zone can time-separate processors and use REE and TEE separately. In addition, the trust zone can use one memory by dividing it into an area accessible from the REE and an area accessible from the TEE.

도 5(b)는 TEE를 위한 프로세서가 REE를 운용하기 위한 프로세서와 같이 on-chip형태로 구현되어 있지만 별도의 프로세싱 코어 셋으로 구현된 경우를 도시한다. 한 실시예에 따르면, On-SoC(510)는 마이크로 프로세싱 코어(501) 이외에 하나이상의 프로세서를 포함하는 On-chip security subsystem(507)을 추가로 포함할 수 있다. 이런 경우, On-SoC(510)은 REE를 운용하고, On-chip security subsystem(507)은 TEE를 운용하도록 설정될 수 있다. 도 5(b)의 경우에는 도 5(a)와 마찬가지로 하나의 메모리를 REE에서 접근 가능한 영역 및 TEE에서 접근 가능한 영역으로 구분하여 사용할 수 있다. FIG. 5(b) shows a case in which a processor for TEE is implemented in an on-chip form like a processor for operating REE, but is implemented as a separate processing core set. According to one embodiment, the On-SoC 510 may further include an on-chip security subsystem 507 including one or more processors in addition to the microprocessing core 501 . In this case, the On-SoC 510 may be configured to operate the REE, and the On-chip security subsystem 507 may be configured to operate the TEE. In the case of FIG. 5B , as in FIG. 5A , one memory may be divided into an area accessible from the REE and an area accessible from the TEE to be used.

도 5(c)는 TEE를 위한 프로세서가 하드웨어적으로 별도의 chip으로 구현되어 REE를 운용하기 위한 프로세서가 구현된 chip과 분리되어 있는 경우를 도시한다. 도 5(c)를 참조하면, On-Soc(510)는 REE를 운용하고, 상기 On-Soc(510)의 외부에 구비된 하나 이상의 external security co-processor(530)는 TEE를 운용하도록 설정될 수 있다. FIG. 5( c ) shows a case in which a processor for TEE is implemented as a separate chip in hardware, and the processor for operating REE is separated from the implemented chip. Referring to FIG. 5( c ), the On-Soc 510 operates the REE, and one or more external security co-processors 530 provided outside the On-Soc 510 are set to operate the TEE. can

도 6를 참조하면, 다양한 실시예에 따른, 결제 시스템(600)을 도시한다. 6 , a payment system 600 is illustrated, in accordance with various embodiments.

다양한 실시예에 따르면, 결제 시스템(600)은, 전자 장치(device)(610) 및/또는 서버(server)를 포함할 수 있다. 또한, 예를 들면, 상기 서버는 결제 서버(620), 토큰 서버(token server, token service provider)(630), 또는 금융 서버(issuer)(640)를 포함할 수 있다. 상기 전자 장치(610)는, 예를 들면, 결제 어플리케이션(payment application, wallet application)(612) 및/또는 결제 매니저(614)를 포함할 수 있다. 상기 결제 서버(620)는, 예를 들면, 결제 서비스 서버(622)(622) 및/또는 토큰 요구자 서버(token requester, token requester server)(624)를 포함할 수 있다.According to various embodiments, the payment system 600 may include an electronic device 610 and/or a server. Also, for example, the server may include a payment server 620 , a token server (token service provider) 630 , or a financial server (issuer) 640 . The electronic device 610 may include, for example, a payment application (wallet application) 612 and/or a payment manager 614 . The payment server 620 may include, for example, payment service servers 622 and 622 and/or a token requester server (token requester server) 624 .

다양한 실시예에 따르면, 상기 결제 어플리케이션(612)은, 결제 어플리케이션(612)(예: 삼성 페이 어플리케이션(Samsung PayTM application)을 포함할 수 있다. 상기 결제 어플리케이션(612)은, 예를 들면, 결제와 관련된 사용자 인터페이스(예: UI(user interface) 또는 UX(user experience)를 제공할 수 있다. 상기 결제와 관련된 사용자 인터페이스는 월렛 사용자 인터페이스(wallet UI/UX)를 포함할 수 있다. 예를 들면, 상기 결제 어플리케이션(612)은, 카드 등록(card registration), 지불(payment), 또는 거래와 관련된 사용자 인터페이스를 제공할 수 있다. 상기 결제 어플리케이션(612)은, 예를 들면, 문자 판독기(예: OCR(optical character reader/recognition)) 또는 외부 입력(예: 사용자 입력)을 통한 카드 등록과 관련된 인터페이스를 제공할 수 있다. 또한, 상기 결제 어플리케이션(612)은, 예를 들면, 신원 확인(ID&V, identification and verification)를 통한 사용자 인증과 관련된 인터페이스를 제공할 수 있다.According to various embodiments, the payment application 612 may include a payment application 612 (eg, a Samsung Pay TM application). The payment application 612 may include, for example, payment A user interface (eg, a user interface (UI) or user experience (UX)) related to the payment may be provided. The user interface related to the payment may include a wallet UI/UX. For example, The payment application 612 may provide a user interface related to card registration, payment, or transaction, The payment application 612 may include, for example, a text reader (eg, OCR). (optical character reader/recognition)) or an interface related to card registration through an external input (eg, user input) In addition, the payment application 612 may provide, for example, identification (ID&V, identification) and verification) can provide an interface related to user authentication.

다양한 실시예에 따르면, 상기 결제 어플리케이션(612)은, 상기 결제 어플리케이션(612)을 이용하여 결제 거래를 수행할 수 있다. 예를 들면, 상기 결제 어플리케이션(612)은, Simple Pay, Quick Pay 또는 지정된 어플리케이션 실행을 통해 사용자에게 결제 기능을 제공할 수 있다. 사용자는, 상기 결제 어플리케이션(612)을 이용하여 결제 기능을 수행하고, 상기 결제 기능과 연관된 정보를 제공받을 수 있다.According to various embodiments, the payment application 612 may perform a payment transaction using the payment application 612 . For example, the payment application 612 may provide a payment function to the user through Simple Pay, Quick Pay, or a specified application execution. The user may perform a payment function using the payment application 612 and receive information related to the payment function.

다양한 실시예에 따르면, 상기 결제 매니저(614)는, 카드사와 관련된 정보를 포함할 수 있다. 예를 들면, 상기 결제 매니저(614)는, 카드사 SDK(software development kit)를 포함할 수 있다.According to various embodiments, the payment manager 614 may include information related to a card company. For example, the payment manager 614 may include a card company software development kit (SDK).

다양한 실시예에 따르면, 상기 결제 서버(620)는, 전자 결제 또는 모바일 결제를 위한 관리 서버를 포함할 수 있다. 상기 결제 서버(620)는, 예를 들면, 상기 전자 장치(610)로부터 결제와 관련된 정보를 수신해서 외부로 송신하거나 상기 결제 서버(620)에서 처리할 수 있다.According to various embodiments, the payment server 620 may include a management server for electronic payment or mobile payment. The payment server 620 may receive payment-related information from the electronic device 610 and transmit it to the outside or process the payment server 620 .

다양한 실시예에 따르면, 상기 결제 서버(620)는, 상기 결제 서비스 서버(622) 및/또는 토큰 요구자 서버(624)를 이용하여, 상기 전자 장치(610)와 상기 토큰 서버(630) 사이에서 정보를 송수신할 수 있다. 상기 결제 서비스 서버(622)는, 예를 들면, 결제 서버(예: Samsung payment server)(620)를 포함할 수 있다. 상기 결제 서비스 서버(622)는, 예를 들면, 서비스 계정(예: Samsung account) 또는 사용자 계정과 연동된 카드 정보를 관리 할 수 있다. 또한, 상기 결제 서비스 서버(622)는, 상기 결제 어플리케이션(612)와 관련된 API(application program interface) 서버를 포함할 수 있다. 또한, 상기 결제 서비스 서버(622)는, 예를 들면, 상기 계정 관리 모듈(예: account integration 또는 Samsung account integration)을 제공할 수 있다.According to various embodiments, the payment server 620 uses the payment service server 622 and/or the token requestor server 624 to provide information between the electronic device 610 and the token server 630 . can send and receive The payment service server 622 may include, for example, a payment server (eg, Samsung payment server) 620 . The payment service server 622 may manage card information linked to a service account (eg, Samsung account) or a user account, for example. In addition, the payment service server 622 may include an API (application program interface) server related to the payment application 612 . Also, the payment service server 622 may provide, for example, the account management module (eg, account integration or Samsung account integration).

다양한 실시예에 따르면, 상기 토큰 요구자 서버(624)는, 결제와 관련된 정보를 처리하기 위한 인터페이스를 제공할 수 있다. 예를 들면, 상기 토큰 요구자 서버(624)는, 결제와 관련된 정보(예: 토큰(token))의 발급, 삭제, 또는 활성화를 수행할 수 있다. 또는 상기 결제 매니저(614)와 기능적으로 연결되어 상기 결제에 필요한 정보를 제어할 수 있다. According to various embodiments, the token requestor server 624 may provide an interface for processing payment related information. For example, the token requestor server 624 may issue, delete, or activate payment-related information (eg, a token). Alternatively, it may be functionally connected to the payment manager 614 to control information required for the payment.

다양한 실시예에 따르면, 상기 전자 장치(610)에 포함된 상기 결제 어플리케이션(612)과 상기 결제 서버(620)에 포함된 상기 결제 서비스 서버(622)는 기능적으로 연결될 수 있다. 예를 들면, 상기 결제 어플리케이션(612)은 상기 결제 서버(620)로 결제와 관련된 정보를 송수신할 수 있다. 한 실시예에 따르면, 상기 상기 전자 장치(610)에 포함된 상기 결제 매니저(614)와 상기 결제 서버(620)에 포함된 상기 토큰 요구자 서버(624)는 기능적으로 연결될 수 있다. 예를 들면, 상기 결제 매니저(614)는 상기 토큰 요구자 서버(624)로 결제와 관련된 정보를 송수신할 수 있다.According to various embodiments, the payment application 612 included in the electronic device 610 and the payment service server 622 included in the payment server 620 may be functionally connected. For example, the payment application 612 may transmit/receive information related to payment to the payment server 620 . According to an embodiment, the payment manager 614 included in the electronic device 610 and the token requestor server 624 included in the payment server 620 may be functionally connected. For example, the payment manager 614 may transmit and receive payment-related information to the token requestor server 624 .

다양한 실시예에 따르면, 상기 토큰 서버(630)는, 결제와 관련된 정보(예: 토큰)를 발급하거나 결제와 관련된 정보를 관리할 수 있다. 예를 들면, 상기 토큰 서버(630)는, 토큰의 동작 주기(like cycle)을 제어할 수 있고, 상기 동작 주기는 생성, 수정, 또는 삭제 기능을 포함할 수 있다. 또한 상기 토큰 서버(630)는, 예를 들면, 토큰 관리 서버를 포함할 수 있고, 토큰 설정(token provisioning), 신원 확인(ID&V, identification and verification), 갱신(replenishment), 또는 Life Cycle 관리를 수행할 수 있다. 또한 금융 서버와 관련된 정보의 통합(intergration)을 수행할 수 있다.According to various embodiments, the token server 630 may issue payment-related information (eg, a token) or manage payment-related information. For example, the token server 630 may control an operation cycle (like cycle) of a token, and the operation cycle may include a creation, modification, or deletion function. Also, the token server 630 may include, for example, a token management server, and performs token provisioning, identification and verification (ID&V, identification and verification), renewal, or life cycle management. can do. In addition, it is possible to perform integration (integration) of information related to the financial server.

다양한 실시예에 따르면, 상기 결제 서버(620) 및/또는 상기 토큰 서버(630)는 동일 또는 유사한 영역에 위치하거나 서로 분리된 영역에 위치할 수 있다. 예를 들면, 상기 결제 서버(620)는 제 1 서버에, 상기 토큰 서버(630)는 제 2 서버에 포함될 수 있다. 또한, 예를 들면, 상기 결제 서버(620) 및/또는 상기 토큰 서버(630)가 하나의 서버(예: 제 1 서버 또는 제 2 서버)에 구분되어 구현될 수 있다.According to various embodiments, the payment server 620 and/or the token server 630 may be located in the same or similar area or may be located in separate areas. For example, the payment server 620 may be included in a first server, and the token server 630 may be included in a second server. Also, for example, the payment server 620 and/or the token server 630 may be separately implemented in one server (eg, a first server or a second server).

다양한 실시예에 다르면, 상기 금융 서버(640)는 카드 발급을 수행할 수 있다. 예를 들면, 상기 금융 서버(640)는, 카드 발급 은행을 포함할 수 있다. 또한 사용자에게 제공되는 결제에 필요한 정보를 생성할 수 있다. 상기 사용자는 상기 금융 서버(640)에서 생성된 상기 결제에 필요한 정보를 상기 결제 어플리케이션(612)을 이용하여 상기 전자 장치(610)에 저장할 수 있다. 또한 상기 금융 서버(640)는 상기 토큰 서버(630)와 기능적으로 연결되어 상기 결제에 필요한 정보를 송수신할 수 있다. According to various embodiments, the financial server 640 may perform card issuance. For example, the financial server 640 may include a card issuing bank. In addition, information required for payment provided to the user may be generated. The user may store the information necessary for the payment generated by the financial server 640 in the electronic device 610 using the payment application 612 . In addition, the financial server 640 may be functionally connected to the token server 630 to transmit/receive information necessary for the payment.

도 7은, 다양한 실시예에 따른, 결제를 수행하기 위한 결제 시스템을 도시하는 블럭도(700)이다. 도7을 참조하면, 결제 시스템은 전자 장치(710)(예: 전자 장치(101)), 결제 서버(720)(예: 서버(106)), 토큰 서비스 프로바이더(token service provider(TSP))(730)(예: 서버(106) 또는 다른 서버(미도시)) 및 POS(point of sales)(740)(예: 전자 장치(102))를 포함할 수 있다. 한 실시예에 따르면, 결제 시스템은 하나 이상의 추가 전자 장치(750 or 760)를 포함할 수 있다. 상기 하나 이상의 추가 전자 장치는 상기 전자 장치(710)와 기능적으로(예: 통신) 연결 가능한 웨어러블 장치(750)(예: 스마트 시계) 또는 액세서리(760)(예: LoopPayTM사의 fob 형태 장치)를 포함할 수 있다. 한 실시예에 따르면, LoopPayTM 사의 fob 형태 장치는 마이크를 통해 전자 장치(710)와 연결된 외부 결제 모듈을 포함할 수 있다. 7 is a block diagram 700 illustrating a payment system for performing a payment, according to various embodiments. Referring to FIG. 7 , the payment system includes an electronic device 710 (eg, electronic device 101), a payment server 720 (eg, server 106), and a token service provider (TSP). 730 (eg, the server 106 or another server (not shown)) and a point of sales (POS) 740 (eg, the electronic device 102). According to an embodiment, the payment system may include one or more additional electronic devices 750 or 760 . The one or more additional electronic devices include a wearable device 750 (eg, a smart watch) or an accessory 760 (eg, a fob type device of LoopPay TM ) that can be functionally (eg, communicate) with the electronic device 710 . may include According to an embodiment, the fob type device of LoopPay TM may include an external payment module connected to the electronic device 710 through a microphone.

한 실시예에 따르면, 전자 장치(710)는 결제 기능을 동작할 수 있다. 전자 장치(710)는 결제 기능을 수행하기 위해 카드(예: 마스터카드 또는 비자 등의 신용 카드)를 전자 장치(710) 또는 결제 서버(720)에 등록할 수 있다. 결제 서버(720)는 전자 장치(710)를 통해서 등록된 카드 외에도, 전자 장치(710)에 대응하는 사용자의 다른 전자 장치(예: 전자 장치(750))를 통해서 등록된 카드 또는 다른 사용자의 전자 장치를 통해서 등록된 다른 카드를 포함하는 복수의 등록된 카드들에 대한 정보를 관리할 수 있다. According to an embodiment, the electronic device 710 may operate a payment function. The electronic device 710 may register a card (eg, a credit card such as MasterCard or Visa) in the electronic device 710 or the payment server 720 to perform a payment function. In addition to the card registered through the electronic device 710 , the payment server 720 may include a card registered through another electronic device (eg, the electronic device 750 ) of the user corresponding to the electronic device 710 or the electronic device of another user. Information on a plurality of registered cards including other registered cards may be managed through the device.

한 실시예에 따르면, 결제 서버(720)는 등록한 카드 정보에 해당하는 토큰 정보를 토큰 서비스 프로바이더(730)로부터 획득하여 전자 장치(710)에 전달할 수 있다. 결제 서버(720)은, 예를 들면, 결제 서비스 서버 또는 토큰 요구자 서버를 포함할 수 있다. 결제 서비스 서버는 사용자의 카드 정보를 관리할 수 있다. 계정을 기반으로 결제에 관련된 서비스를 제공할 수 있다. 토큰 요구자 서버는 결제 동작에 필요한 토큰 정보를 토큰 서비스 프로바이더(730)에게 요청하여 토큰 정보를 획득할 수 있다.According to an embodiment, the payment server 720 may obtain token information corresponding to registered card information from the token service provider 730 and transmit it to the electronic device 710 . The payment server 720 may include, for example, a payment service server or a token requestor server. The payment service server may manage the user's card information. It is possible to provide services related to payment based on the account. The token requestor server may obtain token information by requesting token information required for a payment operation from the token service provider 730 .

토큰 서비스 프로바이더(730)는 결제 과정에서 사용되는 토큰을 발행할 수 있다. 한 실시예에 따르면, 토큰은 카드의 정보인 primary account number(PAN)을 대체하는 값일 수 있다. 한 실시예에 따르면, 토큰은 bank indentification number(BIN) 등을 이용하여 생성될 수 있다. 또한, 생성된 토큰은 토큰 서비스 프로바이더(730)에 의해서 암호화되거나, 또는 암호화되지 않은 상태로 결제 서버(720)로 전송된 후, 결제 서버(720)에 의해 암호화될 수 있다. 암호화된 토큰 정보는 결제 서버(720)를 통해 전자 장치(710)으로 전달된 후, 전자 장치(710)에서 복호화 될 수 있다. 한 실시예에 따르면, 토큰은 토큰 서비스 프로바이더(730)에서 생성 및 암호화되고, 결제 서버(720)를 거치지 않고 전자 장치(710)로 전달될 수 있다. 다른 실시예에 따르면, 결제 서버(720)는 토큰 생성 기능을 포함할 수도 있으며, 이런 경우, 결제 시스템에는 별도의 토큰 서비스 프로바이더(730)가 사용되지 않을 수도 있다.The token service provider 730 may issue a token used in the payment process. According to one embodiment, the token may be a value replacing the primary account number (PAN), which is information of the card. According to an embodiment, the token may be generated using a bank identification number (BIN) or the like. In addition, the generated token may be encrypted by the token service provider 730 or transmitted to the payment server 720 in an unencrypted state, and then encrypted by the payment server 720 . After the encrypted token information is transmitted to the electronic device 710 through the payment server 720 , the encrypted token information may be decrypted in the electronic device 710 . According to an embodiment, the token may be generated and encrypted by the token service provider 730 and delivered to the electronic device 710 without going through the payment server 720 . According to another embodiment, the payment server 720 may include a token generation function, and in this case, a separate token service provider 730 may not be used in the payment system.

전자 장치(710)는, 예를 들면, 근거리 통신(예: 블루투스 또는 WiFi)에 기반하여 기능적으로 연결된 하나 이상의 다른 전자 장치들(750 또는 760) 중의 적어도 하나를 이용하여 결제를 수행할 수 있다. 한 실시예에 따르면, 다른 전자 장치(750) 는 웨어러블 장치(예: 스마트 시계)일 수 있으며, 이런 경우, 전자 장치(710)는 토큰 서비스 프로바이더(730)로부터 전달된 토큰을 웨어러블 장치에 전달할 수 있다. 한 실시예에 따르면, 다른 전자 장치(760) 는 액세서리(예: LoopPayTM사의 fob 형태 장치))일 수 있으며, 이런 경우, 전자 장치(710)는 그 입출력 인터페이스(150)(예: 이어폰(286))를 통하여 상기 액세서리(예: LoopPayTM사의 fob 형태 장치)과 기능적으로 연결될 수 있다.The electronic device 710 may perform payment using at least one of one or more other electronic devices 750 or 760 that are functionally connected based on, for example, short-range communication (eg, Bluetooth or WiFi). According to an embodiment, the other electronic device 750 may be a wearable device (eg, a smart watch). In this case, the electronic device 710 transmits the token delivered from the token service provider 730 to the wearable device. can According to an embodiment, the other electronic device 760 may be an accessory (eg, a fob type device manufactured by LoopPay TM ). )) through the accessory (eg, LoopPay TM 's fob type device) can be functionally connected.

도 8은, 다양한 실시예에 따른, 결제 기능을 수행할 수 있는 전자 장치(예: 전자 장치(101))의 하드웨어 구조를 도시하는 블록도(800)이다. 한 실시예에 따르면, 전자 장치는, 예를 들면, 카메라 모듈(801), 가속도 센서(803), 자이로 센서(805), 생체 센서(807), MST 모듈(810), NFC 모듈(820), MST 제어 모듈(830), NFC 제어 모듈(840), 프로세서(850), 및 메모리(860)를 포함할 수 있다. 카메라 모듈(801)은 결제에 필요한 카드를 촬영하여 카드 정보를 획득할 수 있다. 카메라 모듈(801)은 OCR(optical character reader) 기능을 통해 카드에 표기되어 있는 카드 정보(예: 카드 회사, 카드 넘버, 카드 유효 날짜, 또는 카드 소유주 등)를 인식할 수 있다. 또는 사용자가 전자 장치에 포함된 입력 장치(예: 터치 패널, 펜 센서, 키, 초음파 입력 장치, 또는 마이크 입력 장치 등)를 이용하여 필요한 카드 정보를 전자 장치에 입력할 수 있다.8 is a block diagram 800 illustrating a hardware structure of an electronic device (eg, the electronic device 101) capable of performing a payment function, according to various embodiments of the present disclosure. According to an embodiment, the electronic device includes, for example, a camera module 801 , an acceleration sensor 803 , a gyro sensor 805 , a biometric sensor 807 , an MST module 810 , an NFC module 820 , It may include an MST control module 830 , an NFC control module 840 , a processor 850 , and a memory 860 . The camera module 801 may acquire card information by photographing a card required for payment. The camera module 801 may recognize card information (eg, card company, card number, card expiration date, card owner, etc.) marked on the card through an optical character reader (OCR) function. Alternatively, the user may input necessary card information into the electronic device using an input device (eg, a touch panel, a pen sensor, a key, an ultrasonic input device, or a microphone input device) included in the electronic device.

한 실시예에 따르면, 가속도 센서(803) 또는 자이로 센서(805)는 결제 시 전자 장치의 위치 상태를 획득할 수 있다. 획득된 전자 장치(예: 전자 장치(101))의 위치 정보는 프로세서(850)에 전달되고, 프로세서는 획득된 전자 장치의 위치 상태에 기반하여 MST 모듈(810)에서 POS로 송출되는 자기장의 세기(전류 세기)를 조절하거나, 코일 안테나가 복수개인 경우, 사용되는 코일 안테나를 선택할 수도 있다. 한 실시예에 따르면, MST 제어 모듈(830)은 데이터 수신 모듈(831) 및 출력 변환 모듈(833)을 포함할 수 있다. 데이터 수신 모듈(831)은 프로세서(850) 또는 보안 모듈(예: eSE)이 전송하는 결제 정보를 포함한 logical low/high 형태의 펄스 시그널(pulse signal)을 전달받을 수 있다. 한 실시예에 따르면 데이터 수신 모듈(831)이 수신한 데이터는 마그네틱 카드의 magnetic stripe의 트랙 데이터의 형태를 가질 수 있다. 예를 들면, 상기 수신한 데이터는 magnetic stripe 의 tack1,2 또는 3의 포맷 중 적어도 하나 이상의 포맷에 토큰과 결제 인증(verification) 데이터를 삽입한 형태일 수 있다.According to an embodiment, the acceleration sensor 803 or the gyro sensor 805 may acquire the position state of the electronic device during payment. The obtained location information of the electronic device (eg, the electronic device 101) is transmitted to the processor 850, and the processor is the strength of the magnetic field transmitted from the MST module 810 to the POS based on the obtained location state of the electronic device. (Intensity of current) may be adjusted or, if there are a plurality of coil antennas, a coil antenna to be used may be selected. According to an embodiment, the MST control module 830 may include a data reception module 831 and an output conversion module 833 . The data receiving module 831 may receive a logical low/high type pulse signal including payment information transmitted by the processor 850 or a security module (eg, eSE). According to an embodiment, the data received by the data receiving module 831 may have the form of track data of a magnetic stripe of a magnetic card. For example, the received data may be in the form of inserting a token and payment verification data into at least one format among the formats of tack 1, 2, and 3 of the magnetic stripe.

출력 변환 모듈(833)은 데이터 수신 모듈(831)에서 인식된 데이터를 MST 모듈(810)로 전달하기 위하여, 필요한 형태로 변환하는 회로를 포함할 수 있다. 상기 회로는, 예를 들면, MST 모듈(810)의 양단에 공급되는 전압의 방향을 제어하는 H-Bridge를 포함할 수 있다. H-Bridge는 4개의 스위치 구조를 이용해서 H 모양으로 연결한 회로 구조를 포함할 수 있다.The output conversion module 833 may include a circuit that converts the data recognized by the data reception module 831 into a necessary form in order to transmit the data to the MST module 810 . The circuit may include, for example, an H-Bridge for controlling the direction of the voltage supplied to both ends of the MST module 810 . The H-Bridge may include a circuit structure connected in an H shape using a four switch structure.

한 실시예에 따르면, 상기 카메라 모듈(801) 또는 입력 장치(예를들면, 터치 패널, 펜 센서 등)를 통해 입력된 카드 정보에 기반하여, 전자 장치는 통신 모듈(미도시)를 통해 카드 회사/은행 서버로부터 마그네틱 카드의 magnetic stripe 에 포함되어 있는 결제 정보(예: track1/2/3 또는 token 정보)를 전달받고 이를 메모리(860) 또는 별도의 보안 모듈(236)(예: eSE)에 필요한 형태로 저장할 수 있다. According to one embodiment, based on the card information input through the camera module 801 or an input device (eg, a touch panel, a pen sensor, etc.), the electronic device is a card company through a communication module (not shown). / Receive payment information (eg, track1/2/3 or token information) included in the magnetic stripe of the magnetic card from the bank server and use it in the memory 860 or a separate security module 236 (eg, eSE) can be saved in the form.

한 실시예에 따르면, MST 모듈(810)과 NFC모듈(820)를 통해 POS로 전달되는 토큰은 기반되는 카드가 같다고 해도 서로 상이 할 수 있다. 예를 들면, MST모듈(810)을 통해 외부기기(예: POS)로 전달되는 토큰(예: 디지털 카드 번호)의 마지막 네 자리가 1111이라고하면 NFC모듈(820)을 통해 외부기기(예: POS)로 전달되는 토큰(예: 디지털 카드 번호)의 마지막 네 자리는 2222일 수 있다. According to an embodiment, the tokens delivered to the POS through the MST module 810 and the NFC module 820 may be different from each other even if the underlying card is the same. For example, if the last four digits of a token (eg, digital card number) delivered to an external device (eg, POS) through the MST module 810 are 1111, an external device (eg, POS) through the NFC module 820 ), the last four digits of the token (eg digital card number) may be 2222.

도 9는, 다양한 실시예에 따른, 결제 시스템(900)을 도시한다. 9 illustrates a payment system 900 , in accordance with various embodiments.

다양한 실시예에 따르면, 결제 시스템(900)은, 전자 장치(device)(910) 및/또는 복수의 서버(server)를 포함할 수 있다. 예를 들면, 상기 복수의 서버는 결제 서버(920), 제 1 토큰 서버(token server, token service provider)(934), 제 2 토큰 서버(token server, token service provider)(944), 또는 제 1 금융 서버(issuer or card network)(932), 제 2 금융 서버(issuer or card network)(942), TSM(trusted service manager)(936)을 포함할 수 있다. 상기 전자 장치(910)는, 예를 들면, 결제 어플리케이션(payment application, wallet application)(912), 결제 매니저(914) 및/또는 보안 저장소(916)를 포함할 수 있다. 상기 결제 서버(920)는, 예를 들면, 결제 서비스 서버(922) 및/또는 토큰 요구자 서버(token requester, token requester server)(924)를 포함할 수 있다. 상기 제 1 금융서버(932), 제 1 토큰서버(934), TSM(936)의 구성요소들의 조합을 하나의 서버(예: 제 1 관리서버)로 구현 될 수 있다. 예를 들면, 제 1 관리서버(930)은 (제 1 금융서버와 제 1 토큰서버) 또는 (제 1 금융서버와 TSM) 또는 (제 1 토큰서버와 TSM) 또는 (제 1 금융서버와 TSM), (제 1 금융서버와 제 1 토큰서버와 TSM)와 같은 조합으로 구성될 수 있다. 상기 제 2 금융서버(942), 제 2 토큰서버(944)는 하나의 서버로(예: 제 2 관리서버(940)) 구현 될 수 있다.According to various embodiments, the payment system 900 may include an electronic device 910 and/or a plurality of servers. For example, the plurality of servers may be a payment server 920 , a first token server (token service provider) 934 , a second token server (token server, token service provider) 944 , or a first It may include a financial server (issuer or card network) 932 , a second financial server (issuer or card network) 942 , and a trusted service manager (TSM) 936 . The electronic device 910 may include, for example, a payment application (wallet application) 912 , a payment manager 914 , and/or a secure storage 916 . The payment server 920 may include, for example, a payment service server 922 and/or a token requester server (token requester, token requester server) 924 . A combination of the components of the first financial server 932 , the first token server 934 , and the TSM 936 may be implemented as one server (eg, the first management server). For example, the first management server 930 is (first financial server and first token server) or (first financial server and TSM) or (first token server and TSM) or (first financial server and TSM) , (the first financial server and the first token server and the TSM) may be configured as a combination. The second financial server 942 and the second token server 944 may be implemented as one server (eg, the second management server 940).

다양한 실시예에 따르면, 상기 결제 어플리케이션(912)(예: 결제 어플리케이션 612)은, 예를 들어, 삼성 페이 어플리케이션(Samsung PayTM Application)을 포함할 수 있다. 상기 결제 어플리케이션(912)은, 예를 들면, 결제와 관련된 사용자 인터페이스(예: UI(user interface) 또는 UX(user experience)를 제공할 수 있다. 상기 결제와 관련된 사용자 인터페이스는 월렛 사용자 인터페이스(wallet UI/UX)를 포함할 수 있다. 예를 들면, 상기 결제 어플리케이션(912)은, 카드 등록(card registration), 지불(payment), 또는 거래와 관련된 사용자 인터페이스를 제공할 수 있다. 상기 결제 어플리케이션(912)은, 예를 들면, 문자 판독기(예: OCR(optical character reader/recognition)) 또는 외부 입력(예: 사용자 입력)을 통한 카드 등록과 관련된 인터페이스를 제공할 수 있다. 또한, 상기 결제 어플리케이션(912)은, 예를 들면, 신원 확인(ID&V, identification and verification)를 통한 사용자 인증과 관련된 인터페이스를 제공할 수 있다.According to various embodiments, the payment application 912 (eg, payment application 612 ) may include, for example, a Samsung Pay application. The payment application 912 may provide, for example, a payment-related user interface (eg, a user interface (UI) or a user experience (UX)). The payment-related user interface may include a wallet UI. /UX) For example, the payment application 912 may provide a user interface related to card registration, payment, or transaction. ), for example, may provide an interface related to card registration through a character reader (eg, optical character reader/recognition (OCR)) or external input (eg, user input). ) may provide an interface related to user authentication through, for example, identification and verification (ID&V).

다양한 실시예에 따르면, 상기 결제 어플리케이션(912)은, 상기 결제 어플리케이션(912)을 이용하여 결제 거래를 수행할 수 있다. 예를 들면, 상기 결제 어플리케이션(912)은, Simple Pay, Quick Pay 또는 지정된 어플리케이션 실행을 통해 사용자에게 결제 기능을 제공할 수 있다. 사용자는, 상기 결제 어플리케이션(912)을 이용하여 결제 기능을 수행하고, 상기 결제 기능과 연관된 정보를 제공받을 수 있다.According to various embodiments, the payment application 912 may perform a payment transaction using the payment application 912 . For example, the payment application 912 may provide a payment function to the user through Simple Pay, Quick Pay, or a specified application execution. The user may perform a payment function using the payment application 912 and receive information related to the payment function.

다양한 실시예에 따르면, 상기 결제 매니저(914)는, 카드사와 관련된 정보를 포함할 수 있다. 예를 들면, 상기 결제 매니저(914)는, 카드사 SDK(software development kit)를 포함할 수 있다.According to various embodiments, the payment manager 914 may include information related to a card company. For example, the payment manager 914 may include a card company software development kit (SDK).

다양한 실시예에 따르면, 상기 보안 저장소(916)는 보안 모듈(236), 보안 영역(예: TEE(trusted execution environment))을 포함할 수 있다. 제 1 금융서버 또는 제 2 금융서버에서 발행한 결제 관련 프로그램(예: applet, trusted application)이 설치 될 수 있다. 한 실시예에 따르면, 상기 결제 관련 프로그램은 MST로 송출하기 위한 결제 정보(예: 토큰, 토큰 크립토그램, 시간 인증 코드, 결제 횟수)를 마그네틱 카드의 트랙 데이터 포맷에 맞게 생성해 줄 수 있다. 예를 들면, 상기 시간 인증 코드는 결제 정보에 대한 유효성을 체크하기 위한 값으로 상기 시간 인증 코드 생성을 위해 특정시간 값을 사용할 수 있다. 한 실시예에 따르면, 상기 특정시간 값으로 UTC(Coordinated Universal Time) 정보를 이용할 수 있다. 예를 들면, 전자장치는 NITZ(network identity and time zone) 또는 NTP(network time protocol)를 통해 UTC 정보를 획득할 수 있고, 외부 서버(예: 제 1 관리서버)도 UTC 정보를 획득하면 전자장치와 외부서버는 시간이 동기화 되어 상기 시간 인증 코드를 인증할 수 있다. 외부 서버도 전자장치와 동일한 방법(예: NITZ 또는 NTP)을 이용해서 특정시간 값을 획득할 수 있다.According to various embodiments, the secure storage 916 may include a secure module 236 and a secure area (eg, a trusted execution environment (TEE)). A payment related program (eg, applet, trusted application) issued by the first financial server or the second financial server may be installed. According to one embodiment, the payment-related program may generate payment information (eg, token, token cryptogram, time authentication code, number of payments) to be transmitted to the MST according to the track data format of the magnetic card. For example, the time authentication code is a value for checking the validity of payment information, and a specific time value may be used to generate the time authentication code. According to an embodiment, Coordinated Universal Time (UTC) information may be used as the specific time value. For example, the electronic device may acquire UTC information through network identity and time zone (NITZ) or network time protocol (NTP), and when an external server (eg, the first management server) also acquires UTC information, the electronic device and the external server can authenticate the time authentication code by synchronizing time. An external server may also acquire a specific time value using the same method as the electronic device (eg, NITZ or NTP).

보안 저장소(916)는 결제 정보(예: 토큰, 토큰 크립토그램 생성을 위한 키)를 저장할 수 있다.The secure storage 916 may store payment information (eg, a token or a key for generating a token cryptogram).

상기 TSM(936)은 보안 저장소(916)에 설치된 상기 결제 관련 프로그램과 통신하여 결제 정보를 저장 및 관리(예: 삭제, 정보 업데이트)를 할 수 있다.The TSM 936 may communicate with the payment-related program installed in the secure storage 916 to store and manage payment information (eg, delete or update information).

다양한 실시예에 따르면, 상기 결제 서버(920)는, 전자 결제 또는 모바일 결제를 위한 관리 서버를 포함할 수 있다. 상기 결제 서버(920)는, 예를 들면, 상기 전자 장치(910)로부터 결제와 관련된 정보를 수신해서 외부로 송신하거나 상기 결제 서버(920)에서 처리할 수 있다.According to various embodiments, the payment server 920 may include a management server for electronic payment or mobile payment. The payment server 920 may receive, for example, payment-related information from the electronic device 910 and transmit it to the outside or may process the information in the payment server 920 .

다양한 실시예에 따르면, 상기 결제 서버(920)는, 상기 결제 서비스 서버(922) 및/또는 토큰 요구자 서버(924)를 이용하여, 상기 전자 장치(910)와 상기 제 1 금융서버(932) 사이에서 정보(예: 토큰 발급 요청)를 송수신할 수 있다. 상기 결제 서비스 서버(922)는, 예를 들면, 결제 서버(예: Samsung payment server)(920)를 포함할 수 있다. 상기 결제 서비스 서버(922)는, 예를 들면, 서비스 계정(예: Samsung account) 또는 사용자 계정과 연동된 카드 정보를 관리 할 수 있다. 또한, 상기 결제 서비스 서버(922)는, 상기 결제 어플리케이션(912)와 관련된 API(application program interface) 서버를 포함할 수 있다. 또한, 상기 결제 서비스 서버(922)는, 예를 들면, 상기 계정 관리 모듈(예: account integration 또는 Samsung account integration)을 제공할 수 있다.According to various embodiments, the payment server 920 is configured between the electronic device 910 and the first financial server 932 using the payment service server 922 and/or the token requestor server 924 . can send and receive information (eg, token issuance request). The payment service server 922 may include, for example, a payment server (eg, Samsung payment server) 920 . The payment service server 922 may manage card information linked to a service account (eg, Samsung account) or a user account, for example. In addition, the payment service server 922 may include an API (application program interface) server related to the payment application 912 . Also, the payment service server 922 may provide, for example, the account management module (eg, account integration or Samsung account integration).

다양한 실시예에 따르면, 상기 토큰 요구자 서버(924)는, 결제와 관련된 정보를 처리하기 위한 인터페이스를 제공할 수 있다. 예를 들면, 상기 토큰 요구자 서버(924)는, 결제와 관련된 정보(예: 토큰(token))의 발급, 삭제, 또는 활성화를 수행할 수 있다. 또는 상기 결제 매니저(914)와 기능적으로 연결되어 상기 결제에 필요한 정보를 제어할 수 있다. According to various embodiments, the token requestor server 924 may provide an interface for processing payment related information. For example, the token requestor server 924 may issue, delete, or activate payment-related information (eg, a token). Alternatively, it may be functionally connected to the payment manager 914 to control information required for the payment.

다양한 실시예에 따르면, 상기 전자 장치(910)에 포함된 상기 결제 어플리케이션(912)과 상기 결제 서버(920)에 포함된 상기 결제 서비스 서버(922)는 기능적으로 연결될 수 있다. 예를 들면, 상기 결제 어플리케이션(912)은 상기 결제 서버(920)로 결제와 관련된 정보를 송수신할 수 있다. 한 실시예에 따르면, 상기 상기 전자 장치(910)에 포함된 상기 결제 매니저(914)와 상기 결제 서버(920)에 포함된 상기 토큰 요구자 서버(924)는 기능적으로 연결될 수 있다. 예를 들면, 상기 결제 매니저(914)는 상기 토큰 요구자 서버(924)로 결제와 관련된 정보를 송수신할 수 있다.According to various embodiments, the payment application 912 included in the electronic device 910 and the payment service server 922 included in the payment server 920 may be functionally connected. For example, the payment application 912 may transmit/receive information related to payment to the payment server 920 . According to an embodiment, the payment manager 914 included in the electronic device 910 and the token requestor server 924 included in the payment server 920 may be functionally connected. For example, the payment manager 914 may transmit and receive payment related information to the token requestor server 924 .

다양한 실시예에 따르면, 상기 제 1 금융서버(932)와 제 2 금융서버(942)는 결제 관련된 정보(예: 토큰)을 발급하기 위한 데이터를 관리할 수 있다. 예를 들면, 제 1 금융서버(932)는 제 2 토큰서버에서 발급한 제 1 결제정보와 연관된 다른 제 2결제정보를 발급하도록 제 1 토큰서버에 요청 할 수 있다. 또한, 제 1 금융서버(932)는 토큰 발급을 제 1 토큰서버(934)로 요청 할 때 제 1 토큰과 제 2 토큰이 관련된 토큰임을 확인 할 수 있는 정보(예: 토큰 ID)를 저장 및 관리 할 수 있다.According to various embodiments, the first financial server 932 and the second financial server 942 may manage data for issuing payment related information (eg, a token). For example, the first financial server 932 may request the first token server to issue another second payment information related to the first payment information issued by the second token server. In addition, the first financial server 932 stores and manages information (eg, token ID) that can confirm that the first token and the second token are related tokens when a token issuance is requested to the first token server 934 . can do.

한 실시예에 따르면, 상기 제 1 결제 정보(예: 디지털 카드 번호, 토큰 또는/및 토큰 크립토그램을 생성하기 위한 키)와 제 2 결제 정보(예: 디지털 카드 번호, 토큰 또는/및 토큰 크립토그램을 생성하기 위한 키)는 전자장치(910)에서 결제 시에 사용하는 전송 방식(예: MST, NFC)에 따라 각각 발급되는 토큰일 수 있다. 예를 들면, 제 1결제 정보는 MST를 이용하여 결제할 때, 제 2 결제정보는 NFC를 이용하여 결제할 때 사용될 수 있다. 하지만, 반대의 경우도 가능하며, 제 1 결제정보와 제 2 결제정보가 같은 경우도 존재할 수 있다. 상기 토큰은 PAN을 대체하는 디지털 카드 번호를 의미하는 것일 수 있다. 상기 제 1 결제정보 중 적어도 일부 또는 제 2 결제정보 중 적어도 일부는 전자장치(910)에서 상점의 POS 기기 또는 네트워크를 통해 외부로 전송되며 금융서버에서는 토큰을 확인하여 결제 승인 여부를 판단할 수 있다.According to one embodiment, the first payment information (eg digital card number, token or/and key for generating token cryptogram) and second payment information (eg digital card number, token or/and token cryptogram) ) may be tokens each issued according to a transmission method (eg, MST, NFC) used for payment by the electronic device 910 . For example, the first payment information may be used when making a payment using MST, and the second payment information may be used when making a payment using NFC. However, the opposite case is also possible, and there may be a case where the first payment information and the second payment information are the same. The token may mean a digital card number replacing the PAN. At least a portion of the first payment information or at least a portion of the second payment information is transmitted from the electronic device 910 to the outside through the POS device or network of the store, and the financial server may check the token to determine whether to approve the payment .

다양한 실시예에 따르면, 상기 제 1 토큰서버(934)와 제 2 토큰서버(944)는 결제와 관련된 정보(예: 토큰)를 발급하거나 결제와 관련된 정보를 관리할 수 있다. 예를 들면, 상기 제 1 토큰 서버(934)는, 토큰의 동작 주기(life cycle)을 제어할 수 있고, 상기 동작 주기는 생성, 수정, 또는 삭제 기능을 포함할 수 있다. 또한 상기 제 1 토큰 서버(934)는, 예를 들면, 토큰 관리 서버를 포함할 수 있고, 토큰 설정(token provisioning), 신원 확인(ID&V, identification and verification), 갱신(replenishment), 또는 Life Cycle 관리를 수행할 수 있다. 또한 금융 서버와 관련된 정보의 통합(integration)을 수행할 수 있다.According to various embodiments, the first token server 934 and the second token server 944 may issue payment-related information (eg, a token) or manage payment-related information. For example, the first token server 934 may control an operation cycle (life cycle) of a token, and the operation cycle may include a creation, modification, or deletion function. Also, the first token server 934 may include, for example, a token management server, token provisioning, identification and verification (ID&V, identification and verification), renewal, or life cycle management. can be performed. In addition, it is possible to perform integration (integration) of information related to the financial server.

다양한 실시예에 따르면, 상기 TSM(936)는 제 1 토큰서버(934)와 제 2 토큰서버(944)에서 발급한 제 1 토큰 및/또는 제 2 토큰을 보안 저장소(916)에 설치 할 수 있다. 또한, 해당 토큰을 포함한 결제 정보를 생성 및 관리 할 수 있게 하기 위한 결제 관련 프로그램을 설치할 수 있다.According to various embodiments, the TSM 936 may install the first token and/or the second token issued by the first token server 934 and the second token server 944 in the secure storage 916 . . In addition, a payment-related program for creating and managing payment information including the corresponding token may be installed.

도 10은 다양한 실시 예에 따른 NFC(near field communication)를 이용한 결제 방식을 지원하는 전자장치를 도시한다.10 illustrates an electronic device supporting a payment method using near field communication (NFC) according to various embodiments of the present disclosure.

상기 도 10을 참조하면, 전자장치(1000)는, 예를 들면, 프로세서(1001), NFC 제어기(1003), NFC RF 모듈(1005), 보안 모듈(secure element)(1007)을 포함하여 구성될 수 있다.Referring to FIG. 10 , the electronic device 1000 may be configured to include, for example, a processor 1001 , an NFC controller 1003 , an NFC RF module 1005 , and a secure element 1007 . can

상기 프로세서(1001)는 전반적인 전자장치의 동작을 제어할 수 있다. 상기 프로세서(1001)는 TEE을 지원하지 않는 프로세서이거나 상기 TEE을 지원하는 프로세서일 수 있다.The processor 1001 may control the overall operation of the electronic device. The processor 1001 may be a processor that does not support the TEE or a processor that supports the TEE.

전자 장치(예: 스마트폰)에 내장되어 있는 NFC 모듈의 경우 안드로이드(AndroidTM)와 같은 Rich OS와 연결되어있고, 보안이 낮은 OS(혹은 Rich OS, 노멀 영역에서 동작하는 OS)의 칩셋과 보안영역을 연결하는 인터페이스로 사용되는 구조일 수 있으나, 이에 한정하는 것은 아니다. In the case of an NFC module built into an electronic device (eg, a smartphone), it is connected to a rich OS such as Android (Android TM ), and the chipset and security of the low-security OS (or Rich OS, OS operating in the normal area) It may be a structure used as an interface for connecting regions, but is not limited thereto.

NFC 제어기(1003)는 NFC 통신방식에 기반하여 데이터를 처리할 수 있다. 예컨대, 카드 에뮬레이션, 리더/라이터(Reader/Writer), P2P(peer to peer)의 세 가지 통신 모드로 동작할 수 있다. 상기 카드 에뮬레이션 모드는 보안 모듈(1007)에 저장된 인증정보를 외부 리더기로 전송하는 방식으로, 결제 기능, 교통카드 기능, ID 카드 등의 사용자 인증 기능 등에 적용할 수 있다. 리더 모드는 외부 태그 정보를 읽어 들이는 방식일 수 있다. P2P는 기기간 데이터 교환을 지원하는 모드로써, 전자적 형태의 명함, 연락처 정보, 디지털 사진, URL 등의 데이터 교환을 수행할 수 있다.The NFC controller 1003 may process data based on the NFC communication method. For example, it can operate in three communication modes: card emulation, reader/writer, and peer to peer (P2P). The card emulation mode is a method of transmitting authentication information stored in the security module 1007 to an external reader, and can be applied to a payment function, a transportation card function, a user authentication function such as an ID card, and the like. The reader mode may be a method of reading external tag information. P2P is a mode that supports data exchange between devices, and data exchange such as electronic business cards, contact information, digital photos, and URLs can be performed.

NFC RF 모듈(1005)은 안테나로부터 수신되는 신호를 해당 복조 방식에 기반하여 복조하여 복조된 신호를 NFC 제어기(1003)로 제공하거나, NFC 제어기(103)로부터 데이터를 해당 변조방식에 기반하여 변조하여 안테나를 통해 송신할 수 있다.The NFC RF module 1005 demodulates a signal received from the antenna based on the corresponding demodulation method and provides a demodulated signal to the NFC controller 1003, or modulates data from the NFC controller 103 based on the corresponding modulation method. It can transmit through an antenna.

보안영역(secure element) 모듈(1007)은 거래 또는 인증과 관련된 정보를 저장할 수 있다. 예컨대, 거래 또는 인증과 관련된 정보는, PAN(primary account number), 토큰, 암호화 키 등의 보안을 요구하는 정보 등을 포함할 수 있다. 상기 PAN은 신용카드의 정보를 포함하는 것으로, 카드의 고유 번호를 의미하고, 상기 신용카드의 고유 번호는 암호화되지 않은 정보일 수 있다. 상기 토큰은 상기 신용카드의 고유 번호를 대체하는 정보로 사용될 수 있다. PAN 또는 토큰 등은 전자 결제 시 이용되는 정보일 수 있고, 암호화 키는 결제 인증을 위한 암호화 데이터를 생성하는데 이용될 수 있다. 상기 토큰 및 PAN은 생성된 암호화 데이터와 같이 전송될 수 있다.The secure element module 1007 may store information related to a transaction or authentication. For example, information related to a transaction or authentication may include information requiring security, such as a primary account number (PAN), a token, and an encryption key. The PAN includes credit card information and means a card unique number, and the credit card unique number may be unencrypted information. The token may be used as information replacing the unique number of the credit card. The PAN or token may be information used for electronic payment, and the encryption key may be used to generate encryption data for payment authentication. The token and the PAN may be transmitted together with the generated encrypted data.

상기 보안 모듈(1007)은 NFC 제어기(1003)에 의해서만 액세스 가능하며, 상기 프로세서(1001)는 상기 보안 모듈(1007)을 액세스할 수 있는 권한이 없을 수 있다.The security module 1007 may be accessible only by the NFC controller 1003 , and the processor 1001 may not have an authority to access the security module 1007 .

다양한 실시 예에서, 전자장치의 NFC 모듈은 노멀 영역의 OS와 연결되어있어, NFC 모듈은 노멀 영역의 OS의 칩셋과 보안영역을 연결하는 인터페이스를 수행할 수 있다. 보안 레벨이 높은 보안영역에 대한 접근은 NFC 모듈 내부의 컨트롤러를 통해서만 가능할 수 있다.In various embodiments, since the NFC module of the electronic device is connected to the OS of the normal area, the NFC module may perform an interface connecting the chipset of the OS of the normal area and the security area. Access to the secure area with a high security level may be possible only through the controller inside the NFC module.

상기 NFC 제어기(1003), 상기 NFC RF 모듈(1005), 상기 보안 모듈(1007)은 하나의 칩 또는 패키지로 구현될 수 있다. 이하, 상기 NFC 제어기(1003), 상기 NFC RF 모듈(1005), 상기 보안 모듈(1007)은 포함하는 하나의 패키지는 NFC 모듈일 수 있다.The NFC controller 1003 , the NFC RF module 1005 , and the security module 1007 may be implemented as a single chip or package. Hereinafter, one package including the NFC controller 1003 , the NFC RF module 1005 , and the security module 1007 may be an NFC module.

도 11은, 다양한 실시예에 따른, 토큰을 이용한 결제 트랜젝션(transaction)을 설명 도 11에 설명하는 구성 요소들은 앞서 설명한 결제 시스템의 구성요소와 일치할 수 있다. 한 실시예에 따르면, 전자장치(910)는 NFC및/또는 MST를 사용하여 결제 트랜잭션을 수행할 수 있다. 이하 동작은 NFC및/또는 MST를 이용한 결제 트랜잭션을 하나의 예로써 설명하지만, 본 발명의 다양한 실시예는 이에 한정되지 않는다. 11 illustrates a payment transaction using a token, according to various embodiments. Components described in FIG. 11 may be identical to components of the payment system described above. According to an embodiment, the electronic device 910 may perform a payment transaction using NFC and/or MST. The following operation describes a payment transaction using NFC and/or MST as an example, but various embodiments of the present invention are not limited thereto.

1111동작은 전자장치(910)에서 NFC를 이용해POS(1101)로 결제 정보(예: 토큰, 토큰 크립토그램)을 전송하는 방법을 설명한다. 예를 들면, 결제 트랜젝션을 시작하면 전자장치(910)는 외부 NFC신호를 감지하는 것을 기다리고 있을 수 있다. 이 때, POS(1101)로부터 active 신호를 받으면 전자장치(910)가 NFC신호를 발생시켜 제 1결제 정보를 전송할 수 있다.Operation 1111 describes a method of transmitting payment information (eg, token, token cryptogram) from the electronic device 910 to the POS 1101 using NFC. For example, when a payment transaction is started, the electronic device 910 may be waiting to detect an external NFC signal. At this time, upon receiving an active signal from the POS 1101, the electronic device 910 may generate an NFC signal to transmit the first payment information.

1113동작은 전자장치(910)에서 MST를 이용해 POS(1101)로 결제 정보(예: 토큰, 토큰 크립토그램)를 전송하는 방법을 설명한다. 예를 들면, 결제 트랜젝션을 시작하면 전자장치(910)는 Track 데이터 포맷에 제 2 결제 정보를 포함시켜 MST 신호를 POS(1101)의 자기신호 리더기로 전송할 수 있다. 한 실시예에 따르면, 상기 Track 데이터 포맷에는 특정 시간을 이용하여 생성한 인증 코드가 포함될 수 있다. 예를 들면, 전자장치(910)는 NITZ 또는 NTP로부터 획득한 UTC를 이용하여 인증 코드를 생성하고 이를 Track 데이터 포맷에 제 2 결제정보와 인증 코드를 넣어 MST 신호를 POS(1101)의 자기신호 리더기로 전송할 수 있다.Operation 1113 describes a method of transmitting payment information (eg, token, token cryptogram) from the electronic device 910 to the POS 1101 using the MST. For example, when a payment transaction is started, the electronic device 910 may transmit the MST signal to the magnetic signal reader of the POS 1101 by including the second payment information in the track data format. According to an embodiment, the Track data format may include an authentication code generated using a specific time. For example, the electronic device 910 generates an authentication code using UTC obtained from NITZ or NTP, and puts the second payment information and the authentication code in the Track data format to transmit the MST signal to the magnetic signal reader of the POS 1101. can be sent to

1115동작에서 POS(1101)에서 전자장치(910)로부터 전달 받은 제 1 결제 정보(1111동작) 또는 제 2 결제 정보(1113동작)를 제 1 금융 서버(932)로 전달할 수 있다. 한 실시예에 따르면, 제 1 금융서버(932)는 1115동작으로 받은 제 1 결제 정보(1111동작) 또는 제 2 결제 정보(1113동작)에 대한 인증을 수행 할 수 있다. 예를 들면, 제 1 금융서버(932)는 제 2 결제 정보(1113동작)에 포함된 또는 함께 전달된 시간 정보 또는 시간 정보를 이용하여 만들어진 인증 코드를 확인하여 설정한 시간을 넘어서 받은 제 2 결제 정보(1113동작)를 결제 인증에 대한 실패를 결과값으로 외부 장치(예: POS, 제 2 금융서버)로 전달할 수 있다. 상기 설명한 인증 방법은 제 2 금융서버에서도 유사하게 수행 될 수 있다.In operation 1115 , the POS 1101 may transmit the first payment information (operation 1111 ) or the second payment information (operation 1113 ) received from the electronic device 910 to the first financial server 932 . According to an embodiment, the first financial server 932 may authenticate the first payment information (operation 1111 ) or the second payment information (operation 1113 ) received in operation 1115 . For example, the first financial server 932 checks the authentication code made using time information or time information included in or transmitted together with the second payment information (operation 1113 ), and the second payment received over a set time period The information (operation 1113 ) may be transmitted to an external device (eg, POS, second financial server) as a result of failure in payment authentication. The authentication method described above may be similarly performed in the second financial server.

1117 동작은, 제1 금융서버가 전달 받은 정보가 제 2 결제 정보일 경우 제 1 토큰 서버(934)가 제 2 결제 정보를 제 1 결제 정보로 변경하는 방법을 설명할 수 있다. 예를 들면, 제1금융서버가 전달 받은 정보가 제 2 결제 정보인 경우에, 제 1 금융서버는 제 1 토큰서버에 제 2 결제정보를 전달할 수 있다. 제 1금융서버는 제 2 결제 정보를 발급할 때(도9에 설명 참조) 제 1 결제 정보와 제 2 결제정보를 매칭할 수 있다. 결제 트랜젝션에서는 상기 매칭된 정보를 이용하여 제 2 결제정보에 매칭되는 제 1 결제정보를 확인할 수 있으며, 관련된 제 1 결제 정보를 확인할 수 있다.Operation 1117 may describe a method in which the first token server 934 changes the second payment information to the first payment information when the information received by the first financial server is the second payment information. For example, when the information received by the first financial server is the second payment information, the first financial server may transmit the second payment information to the first token server. The first financial server may match the first payment information with the second payment information when issuing the second payment information (refer to FIG. 9 ). In the payment transaction, first payment information matching the second payment information may be checked using the matched information, and related first payment information may be checked.

1119 동작에서 제 1 금융서버(932)는 제 2 금융서버(842)에 제 1 결제정보에 대한 인증을 요청할 수 있다.In operation 1119 , the first financial server 932 may request the second financial server 842 to authenticate the first payment information.

1121동작에서 제 2 금융서버(942)는 전달받은 제 1 결제정보에 대한 인증을 POS(1101)로 전달 할 수 있다. 인증 결과에 따라 POS(1101)은 거래 완료의 영수증을 출력하거나, 거래 실패의 메시지를 표시할 수 있다.In operation 1121 , the second financial server 942 may transmit the authentication for the received first payment information to the POS 1101 . According to the authentication result, the POS 1101 may output a receipt of transaction completion or may display a transaction failure message.

도 12는 다양한 실시 예에 따른 전자장치의 구성도를 도시하고 있다.12 is a block diagram of an electronic device according to various embodiments of the present disclosure.

상기 도 12를 참조하면, 전자장치는 프로세서(1200), UICC(1202), 메모리(1204), 입력 장치(1206), 디스플레이 모듈(1208), 기저대역 모듈(1214), RF 모듈(1216), 제 1 통신모듈(1210), 제 2 통신모듈(1212)을 포함할 수 있다.12, the electronic device includes a processor 1200, a UICC 1202, a memory 1204, an input device 1206, a display module 1208, a baseband module 1214, an RF module 1216, It may include a first communication module 1210 and a second communication module 1212 .

프로세서(1200)는 상기 전자장치의 전반적인 동작을 제어할 수 있다. 예를 들어, 음성통화 및 데이터통신을 위한 처리 및 제어를 수행하고, 통상적인 기능에 더하여 다양한 실시 예에서 결제 애플리케이션을 실행하여 결제 서비스 기능을 처리할 수 있다. 그리고 프로세서(1200)는 REE(rich execution environment)/TEE(trusted execution environment)에서 동작할 수 있다. 상기 TEE는 인증정보와 같은 민감한 데이터들을 안전한 환경 내에서 저장하고 실행하고 보호할 수 있다. 상기 REE는 상기 TEE보다 보안이 취약한 환경에서 데이터들을 처리할 수 있다.The processor 1200 may control the overall operation of the electronic device. For example, processing and control for voice calls and data communication may be performed, and payment service functions may be processed by executing payment applications in various embodiments in addition to normal functions. In addition, the processor 1200 may operate in a rich execution environment (REE)/trusted execution environment (TEE). The TEE can store, execute and protect sensitive data such as authentication information in a secure environment. The REE may process data in an environment in which security is weaker than that of the TEE.

예컨대, 프로세서(1200)는 인증정보 전송을 위한 사용자 입력이 있거나 또는 상기 전자장치가 PoS(point of sales) 기기의 리더기에 근접하거나 접촉할 때, 결제 또는 인증과 관련된 정보의 전송 요청을 검출할 수 있다. 즉, 프로세서(1200)는 사용자 입력(혹은 사용자 인터페이스)을 통해 인증정보의 전송 명령을 수신하거나, 상기 PoS 기기로부터 인증정보의 요청을 수신할 수 있다. 더하여, 프로세서(1200)는 상기 요청된 인증정보의 전송을 위한 통신방식을 결정할 수 있다. 예컨대, 프로세서(1200)는 상기 요청된 인증정보가 제 1 통신모듈(1210)에 기반한 결제방식과 관련이 있을 때, 제 1 통신모듈(1210)을 선택하고, 상기 요청된 정보가 제 2 통신모듈(1212)에 기반한 결제방식과 관련이 있을 때, 제 2 통신모듈(1212)을 선택할 수 있다.For example, the processor 1200 may detect a request for transmission of information related to payment or authentication when there is a user input for transmitting authentication information or when the electronic device approaches or contacts a reader of a point of sales (PoS) device. have. That is, the processor 1200 may receive a command to transmit authentication information through a user input (or user interface) or may receive a request for authentication information from the PoS device. In addition, the processor 1200 may determine a communication method for transmitting the requested authentication information. For example, when the requested authentication information is related to the payment method based on the first communication module 1210, the processor 1200 selects the first communication module 1210, and the requested information is transmitted to the second communication module When related to the payment method based on 1212 , the second communication module 1212 may be selected.

한 실시예에 따르면, 상기 프로세서(1200)는 각 통신방식에 대응하는 인증정보들을 수집하는 보안 모듈에서 상기 인증정보 전송 요청에 대응되는 인증정보를 획득할 수 있다. 예컨대, 상기 보안 모듈은 제 1 통신모듈(1210)에 기반한 결제방식에 이용되는 제 1 인증정보 및 제 2 통신모듈(1212)에 기반한 결제방식에 이용되는 제 2 인증정보를 저장할 수 있다. According to an embodiment, the processor 1200 may acquire authentication information corresponding to the authentication information transmission request from a security module that collects authentication information corresponding to each communication method. For example, the security module may store the first authentication information used for the payment method based on the first communication module 1210 and the second authentication information used for the payment method based on the second communication module 1212 .

그리고, 상기 프로세서(1200)는 획득된 인증정보(예: 제 1 인증정보 또는 제 2 인증정보)를 제 1 통신모듈(1210) 또는 제 2 통신모듈(1212)을 통해 전송할 수 있다.In addition, the processor 1200 may transmit the obtained authentication information (eg, first authentication information or second authentication information) through the first communication module 1210 or the second communication module 1212 .

한 실시예에 따르면, 상기 보안 모듈은 다양한 형태로 구현될 수 있다. 예컨대, 상기 보안 모듈은 전자장치의 내부 메모리(1204) 또는 UICC(Universal IC Card)(1202)의 일부 또는 전체 영역에 포함될 수 있다. 또는, 제1 통신모듈(1210) 또는 제2 통신모듈(1212)의 내부에 구현될 수 있다.According to an embodiment, the security module may be implemented in various forms. For example, the security module may be included in a part or the entire area of the internal memory 1204 or the Universal IC Card (UICC) 1202 of the electronic device. Alternatively, it may be implemented inside the first communication module 1210 or the second communication module 1212 .

다양한 실시예에서, 상기 보안 모듈은 별도의 칩으로 분리된 형태(embedded secure element)로 구현될 수도 있고, 소형 이동식 플래시 메모리 카드(micro SD)에 탑재하는 방식으로 구현될 수도 있다.In various embodiments, the security module may be implemented as an embedded secure element as a separate chip, or may be implemented by mounting on a small removable flash memory card (micro SD).

한 실시예에 따르면, 상기 보안 모듈은 프로세서(1200) 내부의 다른 하나의 구성요소와 결합되어 하나의 패키지 형태로 구현될 수도 있다. According to one embodiment, the security module may be implemented in the form of one package by being combined with another component inside the processor 1200 .

상기 프로세서(1200)는 TEE 환경에서 상기 보안영역에 액세스 가능하고, REE 환경에서 상기 보안영역에 액세스되지 않을 수 있다. 또는, TEE 환경이 아니더라도 특정 모듈(예: 제 2 통신모듈(1212), 제 1 통신모듈(1210))만 상기 보안영역에 액세스할 수 있다.The processor 1200 may access the secure area in the TEE environment and may not access the secure area in the REE environment. Alternatively, only specific modules (eg, the second communication module 1212 and the first communication module 1210) may access the security area even if the TEE environment is not present.

상기 거래 또는 인증과 관련된 정보의 전송 요청에 대응하여, 적어도 하나의 보안 모듈로부터 적어도 하나의 인증정보를 획득하는 실시 예들을 하기 도 14 내지 도 31을 참조하기로 한다.Examples of obtaining at least one piece of authentication information from at least one security module in response to a request for transmission of information related to the transaction or authentication will be described with reference to FIGS. 14 to 31 below.

한 실시예에 따르면, 상기 프로세서(1200)는 상기 적어도 하나의 인증정보를 처리하여 적어도 하나의 통신모듈(예, 제 1 통신모듈(1210), 제 2 통신모듈(1212))을 통해 송신할 수 있다. 예컨대, 상기 전자장치는 PAN, 토큰, 암호화 키 같은 거래 또는 인증과 관련된 정보 중 상기 암호화 키를 이용하여 암호화 데이터를 생성하고, 상기 거래 또는 인증과 관련된 정보의 상기 토큰과 상기 생성된 암호화 데이터를 같이 제 1 통신모듈(1210) 또는 제 2 통신모듈(1212) 중 적어도 하나를 통하여 전송할 수 있다.According to an embodiment, the processor 1200 may process the at least one piece of authentication information and transmit it through at least one communication module (eg, the first communication module 1210, the second communication module 1212). have. For example, the electronic device generates encrypted data by using the encryption key among information related to a transaction or authentication such as a PAN, a token, and an encryption key, and uses the token of information related to the transaction or authentication and the generated encrypted data together. The transmission may be performed through at least one of the first communication module 1210 and the second communication module 1212 .

이하의 설명에 있어서 통상적인 프로세서(1200)의 처리 및 제어에 관한 설명은 생략한다.In the following description, a description of the processing and control of the typical processor 1200 will be omitted.

메모리(1204)는 프로그램 메모리, 데이터 메모리 및 불휘발성 메모리 등을 포함할 수 있다. 상기 프로그램 메모리는 상기 전자장치의 전반적인 동작을 제어하기 위한 프로그램을 저장할 수 있다. 상기 프로그램 메모리는 플래시 메모리(flash memory)를 사용할 수 있다. 상기 데이터 메모리는 상기 전자장치 동작 중에 발생되는 데이터를 일시 저장하는 기능을 수행할 수 있다. 상기 데이터 메모리는 램(Random Access Memory)을 사용할 수 있다. 상기 불휘발성 메모리는 시스템 파라미터(system parameter) 및 기타 저장용 데이터(전화번호, SMS 메시지, 화상 데이터 등)를 저장할 수 있다. 상기 불휘발성 메모리는 EEPROM을 사용할 수 있다. 본 발명에 따라 상기 메모리(1204)는 보안영역으로 사용될 수 있다. 다양한 실시 예에서, 상기 메모리(1204)는 REE/TEE에 따라 구분되어 동작할 수 있다. 예를 들어, 도 5a내지 도5c에 도시된 바와 같이, REE환경의 메모리와 TEE환경의 메모리가 별도의 하드웨어 칩으로 구성될 수도 있다. 더하여 REE환경의 메모리와 TEE환경의 메모리가 하나의 하드웨어 칩에서 주소영역(address)를 달리해서 사용될 수도 있다. 다양한 실시예에서, 상기 메모리(1204)에는 상기 인증정보가 저장될 수 있다. 예를 들어, NFC 통신 모듈을 통하여 상기 인증정보를 전송하는 경우, Host Card Emulation mode에서는 상기 메모리(1204)로부터 상기 인증정보를 획득할 수 있다. 더하여 near field magnetic stripe data transmission 의 경우에도 상기 메모리(1204)로부터 상기 인증정보를 획득할 수 있다. 상기 인증 정보는 REE 환경 또는 TEE 환경의 메모리 중 적어도 하나에 저장될 수 있다.Memory 1204 may include program memory, data memory, nonvolatile memory, and the like. The program memory may store a program for controlling the overall operation of the electronic device. The program memory may use a flash memory. The data memory may perform a function of temporarily storing data generated during operation of the electronic device. The data memory may use a random access memory (RAM). The nonvolatile memory may store system parameters and other storage data (phone number, SMS message, image data, etc.). The nonvolatile memory may use an EEPROM. According to the present invention, the memory 1204 may be used as a security area. In various embodiments, the memory 1204 may operate according to REE/TEE. For example, as shown in FIGS. 5A to 5C , the memory in the REE environment and the memory in the TEE environment may be configured as separate hardware chips. In addition, the memory of the REE environment and the memory of the TEE environment may be used with different addresses in one hardware chip. In various embodiments, the authentication information may be stored in the memory 1204 . For example, when the authentication information is transmitted through the NFC communication module, the authentication information may be acquired from the memory 1204 in the Host Card Emulation mode. In addition, the authentication information can be obtained from the memory 1204 even in the case of near field magnetic stripe data transmission. The authentication information may be stored in at least one of a memory of an REE environment or a TEE environment.

입력 장치(1206)는 0 ∼ 9의 숫자키들과, 메뉴키(menu), 취소키(지움), 확인키, 통화키(TALK), 종료키(END), 인터넷 접속키, 네비게이션 키들(상/하/좌/우) 등 다수의 기능키들을 구비하며, 사용자가 누르는 키에 대응하는 키입력 데이터를 상기 프로세서(1200)로 제공할 수 있다. 디스플레이 모듈(1208)는 상기 전자장치의 동작 중에 발생되는 상태 정보, 다양한 동영상 및 정지영상 등을 디스플레이할 수 있다. 상기 디스플레이 모듈(1208)는 칼라 액정 디스플레이 장치(LCD: liquid crystal display)를 사용할 수 있다. 다양한 실시 예에서, 상기 디스플레이 모듈(1208)는 상기 프로세서(1200)로부터 인증 결과를 제공받아 그 결과를 디스플레이할 수 있다.The input device 1206 includes numeric keys 0 to 9, a menu key (menu), a cancel key (delete), a confirmation key, a call key (TALK), an end key (END), an Internet access key, and navigation keys (up/ It has a plurality of function keys such as down/left/right) and may provide key input data corresponding to a key pressed by the user to the processor 1200 . The display module 1208 may display status information generated during operation of the electronic device, various moving images and still images, and the like. The display module 1208 may use a color liquid crystal display (LCD). In various embodiments, the display module 1208 may receive an authentication result from the processor 1200 and display the result.

RF모듈(Radio Frequency module)(1216)은 안테나(1218)를 통해 수신되는 라디오 주파수(RF) 신호를 해당 통신방식에 기반하여 주파수 하강시켜 기저대역 모듈(1214)로 제공하고, 상기 기저대역 모듈(1214)로부터의 기저대역신호를 주파수 상승시켜 상기 안테나(1218)를 통해 송신할 수 있다. 상기 기저대역 모듈(1214)는 상기 RF모듈(1216)과 상기 프로세서(1200) 사이에 송수신되는 기저대역 신호를 처리할 수 있다. 예를 들어, 상기 해당 통신방식은 LTE(long term evolution), LTE-A(long term evolution-advanced), CDMA(code division multiple access), WCDMA(wideband code division multiple access), UMTS(universal mobile telephone system), GSM(global system for mobile communications) 또는 5G 통신방식 중 적어도 하나일 수 있다.The RF module (Radio Frequency module) 1216 lowers the frequency of the radio frequency (RF) signal received through the antenna 1218 based on the corresponding communication method and provides it to the baseband module 1214, and the baseband module ( The baseband signal from 1214 may be increased in frequency and transmitted through the antenna 1218 . The baseband module 1214 may process a baseband signal transmitted/received between the RF module 1216 and the processor 1200 . For example, the corresponding communication method is long term evolution (LTE), long term evolution-advanced (LTE-A), code division multiple access (CDMA), wideband code division multiple access (WCDMA), and universal mobile telephone system (UMTS). ), GSM (global system for mobile communications), and may be at least one of 5G communication method.

상기 제 1 통신모듈(1210)은, 예를 들면, 단방향(예를 들어 송신)통신을 수행할 수 있다. 상기 단방향 통신의 예로 near field magnetic stripe data transmission 통신방식을 이용할 수 있다. 또한, 상기 제1 통신모듈(1210)은 제 1 인증정보를 처리하여 PoS 기기로 전송할 수 있다.The first communication module 1210 may perform, for example, one-way (eg, transmission) communication. As an example of the unidirectional communication, a near field magnetic stripe data transmission communication method may be used. Also, the first communication module 1210 may process the first authentication information and transmit it to the PoS device.

상기 제 2 통신모듈(1212)은, 예를 들면, 양방향 통신(예를 들어 송신 및 수신)을 실행할 수 있다. 상기 양방향 통신의 예로 상기 제 2 통신모듈(1212)은 NFC 통신방식을 사용할 수 있다. 또한, 상기 제 2 통신모듈(1212)은 제 2 인증정보를 처리하여 PoS 기기로 전송할 수 있다.The second communication module 1212 may perform, for example, bidirectional communication (eg, transmitting and receiving). As an example of the two-way communication, the second communication module 1212 may use an NFC communication method. Also, the second communication module 1212 may process the second authentication information and transmit it to the PoS device.

다양한 실시 예에서, 양방향 통신방식(예: NFC 통신모듈)에 기반한 결제방식을 이용하는 경우, 예컨대, 상기 전자장치가 PoS 기기의 리더기에 근접하거나 접촉할 때, 상기 제 2 통신모듈(1212)가 PoS 기기로부터 인증정보의 요청을 통해 직접 수신함으로써, 상기 제 2 통신모듈(1212)이 상기 제 2 통신모듈(1212)에 기반한 결제방식에 대응하는 제 2 인증정보를 PoS 기기로 전송할 수 있다. 단방향 통신방식(예: near field magnetic stripe data transmission)에 기반한 결제방식을 이용하는 경우, 상기 제 1 통신모듈(1210)은 PoS 기기로부터 데이터를 수신할 수 없고 상기 PoS 기기에 데이터를 전송만 할 수 있기 때문에 프로세서(1200)로부터 인증정보의 전송 명령에 따라, 상기 제 1 통신모듈(1210)에 기반한 결제방식에 대응하는 제 1 인증정보를 PoS 기기로 전송할 수 있다. UICC(Universal IC Card)(1202)는 가입자 식별 모듈을 포함하는 카드일 수 있으며, 전자장치의 특정 위치에 형성된 슬롯에 삽입될 수 있다. 상기 UICC (1202)는 고유한 식별 정보(예: ICCID(integrated circuit card identifier)) 또는 가입자 정보(예: IMSI(international mobile subscriber identity))를 포함할 수 있다.In various embodiments, when a payment method based on a two-way communication method (eg, an NFC communication module) is used, for example, when the electronic device approaches or contacts a reader of a PoS device, the second communication module 1212 performs a PoS By directly receiving the authentication information through a request from the device, the second communication module 1212 may transmit the second authentication information corresponding to the payment method based on the second communication module 1212 to the PoS device. When a payment method based on a one-way communication method (eg, near field magnetic stripe data transmission) is used, the first communication module 1210 cannot receive data from the PoS device and can only transmit data to the PoS device. Therefore, according to a transmission command of the authentication information from the processor 1200, the first authentication information corresponding to the payment method based on the first communication module 1210 may be transmitted to the PoS device. The UICC (Universal IC Card) 1202 may be a card including a subscriber identification module, and may be inserted into a slot formed at a specific location of the electronic device. The UICC 1202 may include unique identification information (eg, integrated circuit card identifier (ICCID)) or subscriber information (eg, international mobile subscriber identity (IMSI)).

구현에 따라, 상기 제 1 통신모듈(1210) 또는 상기 제 2 통신모듈(1212)은 상기 전자장치와 분리되어 상기 전자장치의 커넥터(예: 오디오 잭(audio jack)(미도시함) 또는 USB 커넥터)를 통해 연결될 수 있다.Depending on the implementation, the first communication module 1210 or the second communication module 1212 is separated from the electronic device and a connector (eg, an audio jack (not shown)) or a USB connector of the electronic device. ) can be connected via

다양한 실시 예에서, 상기 제1 통신모듈(1210)은 near field magnetic stripe data transmission 방식에 제한되지 않으며, 바코드 혹은 QR 코드, 오디오 데이터를 출력하는 모듈로 대체될 수 있다. 예컨대, 상기 제1 통신모듈(1210) 대신 바코드 혹은 QR 코드를 디스플레이하는 디스플레이 모듈(1208)가 단방향 통신모듈로 사용될 수도 있다. 또는 오디오 데이터를 출력하는 스피커가 단방향 통신모듈로 사용될 수 도 있다.In various embodiments, the first communication module 1210 is not limited to a near field magnetic stripe data transmission method, and may be replaced with a module that outputs a barcode, a QR code, or audio data. For example, instead of the first communication module 1210, the display module 1208 for displaying a barcode or QR code may be used as a one-way communication module. Alternatively, a speaker outputting audio data may be used as a one-way communication module.

마찬가지로, 상기 제2 통신모듈(1212)은 NFC 통신방식 대신에 다른 다양한 양방향 통신방식이 적용될 수 있다.Similarly, the second communication module 1212 may use various other two-way communication methods instead of the NFC communication method.

도 13은 다양한 실시 예에 따른 전자장치의 동작 방법을 위한 흐름도를 도시하고 있다.13 is a flowchart for a method of operating an electronic device according to various embodiments of the present disclosure.

상기 도 13을 참조하면, 전자장치(예: 도 12의 프로세서(1200))는 1300 동작에서 적어도 하나의 인증정보를 전송하기 위한 통신모듈을 선택할 수 있다. 예컨대, 전자장치는 인증정보 전송을 위한 사용자 입력이 있거나 또는 상기 전자장치가 PoS(point of sales) 기기의 리더기에 근접하거나 접촉할 때, 해당 인증정보를 전송을 위한 통신모듈을 선택할 수 있다.Referring to FIG. 13 , the electronic device (eg, the processor 1200 of FIG. 12 ) may select a communication module for transmitting at least one piece of authentication information in operation 1300 . For example, when there is a user input for transmitting authentication information or when the electronic device approaches or contacts a reader of a point of sales (PoS) device, the electronic device may select a communication module for transmitting the authentication information.

예를 들어, 인증정보 전송을 위한 사용자 입력(예: 지문 인증)이 있는 경우, 상기 전자장치는 상기 제 1 통신모듈(1210)을 선택하고 상기 전자장치가 PoS(point of sales) 기기의 리더기에 근접하거나 접촉할 때, 상기 전자장치는 상기 제 2 통신모듈(1212)을 선택할 수 있다.For example, when there is a user input (eg, fingerprint authentication) for transmitting authentication information, the electronic device selects the first communication module 1210 and the electronic device is connected to a reader of a point of sales (PoS) device. Upon proximity or contact, the electronic device may select the second communication module 1212 .

구현에 따라, 인증정보 전송을 위한 트랜잭션이 발생하는 경우(다시 말해, PoS 기기가 NFC 통신방식 및 near field magnetic stripe data transmission 방식을 지원하는 경우), 상기 전자장치는 상기 제 1 통신모듈(1210) 및 상기 제 2 통신모듈(1212)을 모두 선택할 수 있다.According to the implementation, when a transaction for transmitting authentication information occurs (that is, when the PoS device supports the NFC communication method and the near field magnetic stripe data transmission method), the electronic device transmits the first communication module 1210 and the second communication module 1212 may all be selected.

상기 전자장치(예: 도 12의 프로세서(1200))는 1302 동작에서 상기 거래 또는 인증과 관련된 정보의 전송 요청에 대응하여, 적어도 하나의 보안 모듈 또는 메모리 중 적어도 하나로부터 적어도 하나의 인증정보를 획득할 수 있다. 상기 인증 정보는 PAN, 토큰, 또는 키(key) 중 적어도 하나로 구성될 수 있다. 예컨대, 상기 토큰은 사용자의 신용카드를 대체하여 사용하는 디지털 데이터로써, 해당 신용카드를 등록할 시 상기 신용카드 회사의 서버로부터 수신할 수 있다. 상기 키는 상기 신용카드 회사 또는 키를 분배하는 인증센터의 서버로부터 주기적으로 수신하거나 혹은 필요 시 요청되어 보안 모듈 또는 메모리 중 적어도 하나에 저장될 수 있다. 또한, 상기 키는 상품 지불에 대한 인증을 위한 암호화 데이터를 생성하는데 이용될 수 있다. In operation 1302 , the electronic device (eg, the processor 1200 of FIG. 12 ) acquires at least one authentication information from at least one of at least one security module or memory in response to a request for transmission of information related to the transaction or authentication can do. The authentication information may consist of at least one of a PAN, a token, and a key. For example, the token is digital data used in place of a user's credit card, and may be received from a server of the credit card company when the corresponding credit card is registered. The key may be periodically received from the credit card company or a server of the authentication center that distributes the key, or may be requested when necessary and stored in at least one of a security module or a memory. In addition, the key may be used to generate encrypted data for authentication for product payment.

적어도 하나의 보안영역으로부터 적어도 하나의 인증정보를 획득하는 실시 예들을 하기 도 14 내지 도 31를 참조하여 설명할 것이다.Examples of obtaining at least one piece of authentication information from at least one security area will be described with reference to FIGS. 14 to 31 below.

상기 전자장치(예: 도 12의 프로세서(1200))는 1304 동작에서 상기 적어도 하나의 인증정보를 처리하여 적어도 하나의 통신모듈(예: 도 12의 제 1 통신 모듈(1210) 또는 제 2 통신 모듈(1212))을 통해 송신할 수 있다. 예컨대, 상기 전자장치는 상기 인증정보의 키를 통해 암호화 데이터를 생성하고, 상기 인증정보의 토큰과 상기 생성된 암호화 데이터와 같이 송신할 수 있다. 예컨대, 상기 토큰과 상기 키로 생성된 암호화 데이터는 메시지형태로 전송될 수 있다. 그리고 상기 토큰은 동적 데이터일 수 있다. 상기 키는 동적 데이터일 수 있다.The electronic device (eg, the processor 1200 of FIG. 12 ) processes the at least one piece of authentication information in operation 1304 to process at least one communication module (eg, the first communication module 1210 or the second communication module of FIG. 12 ) (1212)). For example, the electronic device may generate encrypted data through the key of the authentication information, and transmit it together with the token of the authentication information and the generated encrypted data. For example, the encrypted data generated by the token and the key may be transmitted in the form of a message. And the token may be dynamic data. The key may be dynamic data.

한편, 인증 타입에 따라, 인증정보의 토큰 및/또는 키가 구분될 수 있다. 예컨대, 제1 인증 방식을 이용하는 경우, 제1 토큰 및 제1 키가 이용되고, 제2 인증 방식을 이용하는 경우, 제2 토큰 및 제2 키가 이용될 수 있다. 다양한 실시예에 따르면, 상기 제1 인증 방식은 상기 near field magnetic stripe data transmission통신을 이용하는 결제 방식이고 상기 제2 인증 방식은 NFC 통신을 이용하는 결제 방식일 수 있다.Meanwhile, a token and/or a key of authentication information may be classified according to an authentication type. For example, when the first authentication method is used, the first token and the first key may be used, and when the second authentication method is used, the second token and the second key may be used. According to various embodiments, the first authentication method may be a payment method using the near field magnetic stripe data transmission communication, and the second authentication method may be a payment method using NFC communication.

도 14는 다양한 실시예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시하고 있다.14 illustrates an interface between internal components of an electronic device according to various embodiments of the present disclosure.

상기 도 14를 참조하면, AP(application processor)(1401)는 상기 도 12의 프로세서(1200)에 대응하고, 제 1 통신모듈(1403)는 상기 도 12의 제 1 통신모듈 (1210)에 대응하고, 그리고 제 2 통신모듈(1405)는 상기 도 12의 제 2 통신모듈 (1212)에 대응할 수 있다. 상기 제 1 통신모듈(1403) 및 제 2 통신모듈(1405)은 전기적으로 AP (1401)에 연결되어 있고, 보안 모듈(1407)은 제 2 통신모듈(1405)에 전기적으로 연결될 수 있다. 그리고 제 1 통신모듈(1403)과 제 2 통신모듈(1405) 사이도 기능적으로 연결될 수 있다.Referring to FIG. 14 , an application processor (AP) 1401 corresponds to the processor 1200 of FIG. 12 , and a first communication module 1403 corresponds to the first communication module 1210 of FIG. 12 , and , and the second communication module 1405 may correspond to the second communication module 1212 of FIG. 12 . The first communication module 1403 and the second communication module 1405 may be electrically connected to the AP 1401 , and the security module 1407 may be electrically connected to the second communication module 1405 . Also, the first communication module 1403 and the second communication module 1405 may be functionally connected.

다양한 실시예에서, 제 1 통신 모듈(1403)은 MST 모듈(예: MST 모듈(810))일 수 있고, 제 2 통신 모듈(1405)은 NFC 모듈(예: NFC 모듈(820))일 수 있다. 보안 모듈(1407)은 내장형 보안 요소(eSE)일 수 있다.In various embodiments, the first communication module 1403 may be an MST module (eg, the MST module 810 ), and the second communication module 1405 may be an NFC module (eg, the NFC module 820 ). . The security module 1407 may be an embedded secure element (eSE).

상기 AP(1401)는 제 1 인증서비스 트랜잭션을 검출하여 제 1 인증서비스 트랜잭션 명령을 상기 제 1 통신모듈(1403)로 전달할 수 있다. 다양한 실시예에 따르면, 상기 제 1 인증 서비스 트랜잭션 명령은 제 1 통신모듈(1403)을 기반한 인증절차를 수행하도록 하는 명령이 될 수 있다. 예를 들어, 상기 입력은 사용자에 의해 발생될 수 있다.The AP 1401 may detect a first authentication service transaction and transmit a first authentication service transaction command to the first communication module 1403 . According to various embodiments, the first authentication service transaction command may be a command to perform an authentication procedure based on the first communication module 1403 . For example, the input may be generated by a user.

또한, 상기 AP(1401)는 상기 제 2 통신모듈(1405)로부터 제 2 인증정보(1407-2)에 대응하는 인증결과를 제공받아 디스플레이 모듈(1208)에 디스플레이하도록 제어할 수 있다.Also, the AP 1401 may receive an authentication result corresponding to the second authentication information 1407 - 2 from the second communication module 1405 and control it to be displayed on the display module 1208 .

상기 제 1 통신모듈(1403)은 상기 AP(1401)로부터 인증서비스 트랜잭션 명령을 수신할 시, 상기 제 2 통신모듈(1405)에 제 1 인증정보(1407-1)를 요청하여 상기 제 2 통신모듈(1405)를 통해 제공받는다. 더하여, 상기 제 1 통신모듈(1403)는 상기 제 1 인증정보(1407-1)를 처리하여(예컨대, 키를 이용하여 암호화 데이터를 생성하고 토큰과 상기 생성된 암호화 데이터를 메시지형태로 생성하는 동작) 상기 POS 기기로 송신할 수 있다.When receiving an authentication service transaction command from the AP 1401, the first communication module 1403 requests the first authentication information 1407-1 from the second communication module 1405 to the second communication module (1405). In addition, the first communication module 1403 processes the first authentication information 1407-1 (eg, generates encrypted data using a key and generates a token and the generated encrypted data in the form of a message) ) to the POS device.

상기 제 2 통신모듈(1405)은 상기 전자장치가 POS 기기에 근접하거나 접속될 시, 제 2 인증서비스 트랜잭션을 검출하고, 상기 보안 모듈(1407)으로부터 상기 제 2 인증정보(1407-2)를 획득하고, 상기 제2 인증정보(1407-2)를 처리하여 상기 POS 기기로 송신할 수 있다. 또한, 상기 제2 통신모듈(1405)는 인증결과에 대한 정보를 피드백 받아 그 결과를 상기 AP(1401)로 제공할 수 있다.The second communication module 1405 detects a second authentication service transaction when the electronic device approaches or is connected to the POS device, and acquires the second authentication information 1407-2 from the security module 1407 and the second authentication information 1407-2 may be processed and transmitted to the POS device. In addition, the second communication module 1405 may receive information on the authentication result as feedback and provide the result to the AP 1401 .

상기 보안 모듈(1407)은 상기 제 2 통신모듈(1405)에 의해서만 액세스 가능하며, 상기 AP(1401) 또는 상기 제 1 통신모듈(1403)가 액세스할 수 없는 저장공간일 수 있다. 실시예에서, 상기 보안 모듈(1407)은 상기 제 1 인증정보(1407-1) 및 상기 제 2 인증정보(1407-2)를 포함할 수 있다.The security module 1407 can be accessed only by the second communication module 1405 and may be a storage space that the AP 1401 or the first communication module 1403 cannot access. In an embodiment, the security module 1407 may include the first authentication information 1407-1 and the second authentication information 1407-2.

다양한 실시 예에서, 상기 보안 모듈(1407)에 저장된 적어도 하나의 인증정보(예를 들어, 제 1 인증정보 (1409-1)는 전기적으로 AP(1401)와 연결되는 일반 메모리(1409)에 저장될 수 있다. 여기서, 상기 일반 메모리(1409)는 노멀 영역의 상기 AP(1401)에 의해 액세스될 수 있다.In various embodiments, at least one piece of authentication information (eg, the first authentication information 1409 - 1) stored in the security module 1407 may be stored in a general memory 1409 electrically connected to the AP 1401. Here, the general memory 1409 may be accessed by the AP 1401 in the normal area.

도 15는 다양한 실시 예에 따른 모바일 근거리 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시하고 있다.15 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile short-distance payment service according to various embodiments of the present disclosure.

상기 도 15를 참조하면, 1500 동작에서 제 1 인증 서비스의 트랜잭션이 발생하는 경우, AP(701)는 1502동작으로 진행하여 제 1 통신모듈(1403)로 상기 제1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.Referring to FIG. 15 , when the transaction of the first authentication service occurs in operation 1500 , the AP 701 proceeds to operation 1502 and transmits the transaction command of the first authentication service to the first communication module 1403 . have.

상기 제 1 통신모듈(1403)는 1504동작에서 제 2 통신모듈(1405)로 지불 결제를 위한 제 1 인증정보를 요청할 수 있다.The first communication module 1403 may request the first authentication information for payment to the second communication module 1405 in operation 1504 .

상기 제 2 통신모듈(1405)는 1506동작에서, 상기 제 2 통신모듈(1405)에서 보안영역(1507)으로부터 지불 결제를 위한 제 1 인증정보를 획득할 수 있다.The second communication module 1405 may obtain the first authentication information for payment from the security area 1507 in the second communication module 1405 in operation 1506 .

상기 제 2 통신모듈(1405)는 1508동작에서, 상기 획득한 지불 결제를 위한 인증 정보를 상기 제 1 통신모듈(1403)로 전달할 수 있다.The second communication module 1405 may transmit the acquired authentication information for payment to the first communication module 1403 in operation 1508 .

상기 제 1 통신모듈(1403)는 1510동작에서, 상기 인증 정보를 처리하여 제 1 통신모듈(1210)을 통해 송신할 수 있다.In operation 1510 , the first communication module 1403 may process the authentication information and transmit it through the first communication module 1210 .

다양한 실시 예에서, 1502동작 이후에 상기 제 1 통신 모듈(1403)은 1516 동작에서 상기 인증 정보를 메모리(1409)로부터 획득할 수 있다. 상기 획득한 인증 정보는 1510 동작에서 송신할 수 있다.In various embodiments, after operation 1502 , the first communication module 1403 may acquire the authentication information from the memory 1409 in operation 1516 . The obtained authentication information may be transmitted in operation 1510 .

반면, 1500동작에서 제 2 인증 서비스의 트랜잭션이 발생하는 경우, 상기 제 2 통신모듈(1405)는 1512동작으로 진행하여 보안 모듈(1407)으로부터 지불 결제를 위한 제 2 인증정보를 획득할 수 있다.On the other hand, when the transaction of the second authentication service occurs in operation 1500 , the second communication module 1405 may proceed to operation 1512 to obtain second authentication information for payment settlement from the security module 1407 .

상기 제 2 통신모듈(1407)는 1514동작에서 상기 인증 정보를 처리한 후 제 2 통신모듈(1212)을 통해 송신할 수 있다.The second communication module 1407 may transmit the authentication information through the second communication module 1212 after processing the authentication information in operation 1514 .

도 16은 다양한 실시예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시하고 있다.16 illustrates an interface between internal components of an electronic device according to various embodiments of the present disclosure.

상기 도 16을 참조하면, AP(1601)는 상기 도 12의 프로세서(1200)에 대응하고, 제 1 통신모듈(1603) 는 상기 도 12의 제 1 통신모듈 (1210)에 대응하고, 제 2 통신모듈(1605)는 상기 도 12의 제 2 통신모듈 (1212)에 대응할 수 있다. 상기 제 1 통신모듈(1603) 및 제 2 통신모듈(1605)는 전기적으로 AP (1601)에 연결되어 있고, 제 1 보안 모듈(1607)은 제 1 통신모듈(1603)에 전기적으로 연결될 수 있다. 그리고 제 2 보안 모듈(1609)은 제 2 통신모듈(1609)에 전기적으로 연결될 수 있다.Referring to FIG. 16 , the AP 1601 corresponds to the processor 1200 of FIG. 12 , the first communication module 1603 corresponds to the first communication module 1210 of FIG. 12 , and the second communication The module 1605 may correspond to the second communication module 1212 of FIG. 12 . The first communication module 1603 and the second communication module 1605 may be electrically connected to the AP 1601 , and the first security module 1607 may be electrically connected to the first communication module 1603 . In addition, the second security module 1609 may be electrically connected to the second communication module 1609 .

다양한 실시예에서, 제 1 통신 모듈(1603)은 MST 모듈(예: MST 모듈(810)) 또는 NFC 모듈(예: NFC 모듈(820)) 중 적어도 하나일 수 있다. 제 2 통신 모듈(1605)은 MST 모듈(예: MST 모듈(810)) 또는 NFC 모듈(예: NFC 모듈(820)) 중 적어도 하나일 수 있다. 제 1 보안 모듈(1607)은 제 1 내장형 보안 요소(eSE)일 수 있다. 제 2 보안 모듈(1609)은 제 2 내장형 보안 요소(eSE)일 수 있다.In various embodiments, the first communication module 1603 may be at least one of an MST module (eg, the MST module 810 ) or an NFC module (eg, the NFC module 820 ). The second communication module 1605 may be at least one of an MST module (eg, MST module 810) or an NFC module (eg, NFC module 820). The first security module 1607 may be a first embedded secure element (eSE). The second security module 1609 may be a second embedded secure element (eSE).

상기 AP(1601)는 제 1 인증서비스 트랜잭션을 검출하고, 제 1 인증서비스 트랜잭션 명령을 상기 제 1 통신모듈(1603)로 전달할 수 있다. 또한, 상기 AP(1601)는 상기 제 2 통신모듈(1605)로부터 상기 제 2 인증정보에 대응하는 인증결과를 제공받아 디스플레이 모듈(1208)에 디스플레이하도록 제어할 수 있다.The AP 1601 may detect a first authentication service transaction and transmit a first authentication service transaction command to the first communication module 1603 . Also, the AP 1601 may receive an authentication result corresponding to the second authentication information from the second communication module 1605 and control it to be displayed on the display module 1208 .

상기 제 1 통신모듈(1603)는 상기 AP(1601)로부터 인증서비스 트랜잭션 명령을 수신할 시, 상기 제 1 보안 모듈(1607)으로부터 상기 제 1 인증정보(1607-1)를 획득하고, 상기 제 1 인증정보(1607-1)를 처리하여 상기 POS 기기로 송신할 수 있다.When receiving an authentication service transaction command from the AP 1601 , the first communication module 1603 obtains the first authentication information 1607-1 from the first security module 1607, and The authentication information 1607-1 may be processed and transmitted to the POS device.

상기 제 2 통신모듈(1605)는 상기 전자장치가 POS 기기에 근접하거나 접속될 시, 인증서비스 트랜잭션을 검출하고, 상기 제 2 보안 모듈(1609)으로부터 상기 제 2 인증정보(1609-2)를 획득하고, 상기 제 2 인증정보(1609-2)를 처리하여 상기 POS 기기로 송신할 수 있다. 또한, 상기 제 2 통신모듈(1605)는 인증결과에 대한 정보를 피드백 받아 그 결과를 상기 AP(1601)로 제공할 수 있다.The second communication module 1605 detects an authentication service transaction when the electronic device approaches or is connected to the POS device, and obtains the second authentication information 1609-2 from the second security module 1609. and process the second authentication information 1609-2 and transmit it to the POS device. In addition, the second communication module 1605 may receive information on the authentication result as feedback and provide the result to the AP 1601 .

상기 제 1 보안 모듈(1607)은 상기 제 1 통신모듈(1603)에 의해서만 액세스 가능하며, 상기 제 2 보안 모듈(1609)은 상기 제 2 통신모듈(1605)에 의해서만 액세스 가능하며, 상기 AP(1601) 또는 상기 제 1 통신모듈(1603)는 상기 제 2 보안 모듈(1609)을 액세스할 수 없고, 상기 AP(1601) 또는 상기 제 2 통신모듈(1605)는 상기 제 1 보안 모듈(1607)을 액세스할 수 없는, 저장공간일 수 있다.The first security module 1607 is accessible only by the first communication module 1603, the second security module 1609 is accessible only by the second communication module 1605, and the AP 1601 ) or the first communication module 1603 cannot access the second security module 1609, and the AP 1601 or the second communication module 1605 accesses the first security module 1607 It may not be possible, it may be a storage space.

다양한 실시 예에서, 상기 제 1 인증정보(1607-1)는 전기적으로 AP(1601)와 연결되는 일반 메모리(1611)에 저장될 수 있다. 여기서, 상기 일반 메모리(1611)는 노멀 영역의 상기 AP(1201)에 의해 액세스될 수 있다.In various embodiments, the first authentication information 1607 - 1 may be stored in a general memory 1611 electrically connected to the AP 1601 . Here, the general memory 1611 may be accessed by the AP 1201 in a normal area.

도 17은 다양한 실시 예에 따른 모바일 근거리 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시하고 있다.17 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile short-distance payment service according to various embodiments of the present disclosure.

상기 도 17을 참조하면, 1700동작에서 제 1 인증 서비스의 트랜잭션이 발생하는 경우, AP(1601)는 1702동작으로 진행하여 제 1 통신모듈(1603)로 상기 제 1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.Referring to FIG. 17 , when the transaction of the first authentication service occurs in operation 1700 , the AP 1601 proceeds to operation 1702 and transmits the transaction command of the first authentication service to the first communication module 1603 . have.

상기 제 1 통신모듈(1603)는 1704동작에서, 제 1 보안 모듈(1607) 또는 메모리(1711) 중 적어도 하나로부터 지불 결제를 위한 인증정보(예: 제 1 인증정보)를 획득할 수 있다.The first communication module 1603 may obtain authentication information (eg, first authentication information) for payment settlement from at least one of the first security module 1607 and the memory 1711 in operation 1704 .

상기 제 2 통신모듈(1605)는 1706동작에서, 상기 인증 정보를 처리하여 제 1 통신모듈(1603)을 통해 송신할 수 있다.In operation 1706 , the second communication module 1605 may process the authentication information and transmit it through the first communication module 1603 .

반면, 1700동작에서 제 2 인증 서비스의 트랜잭션이 발생하는 경우, 상기 제 2 통신모듈(1605)는 1708동작으로 진행하여 제 2 보안 모듈(1609)으로부터 지불 결제를 위한 인증 정보를 획득할 수 있다.On the other hand, when the transaction of the second authentication service occurs in operation 1700 , the second communication module 1605 may proceed to operation 1708 to obtain authentication information for payment from the second security module 1609 .

상기 제 2 통신모듈(1605)는 1710동작에서 상기 인증 정보를 처리하여 제 2 통신모듈(1605)을 통해 송신할 수 있다.The second communication module 1605 may process the authentication information in operation 1710 and transmit it through the second communication module 1605 .

도 18은, 다양한 실시예에 따른, 결제 기능을 수행할 수 있는 전자 장치(예: 전자 장치(101))의 실행 환경(1801)에서 실행되기 위한 프로그램 모듈들을 도시하는 블럭도(1800)이다. 도18을 참조하면, 실행 환경(1801)은, 예를 들면, REE(1810) 및 TEE(1820)를 포함할 수 있다. 18 is a block diagram 1800 illustrating program modules to be executed in an execution environment 1801 of an electronic device (eg, the electronic device 101) capable of performing a payment function, according to various embodiments of the present disclosure. Referring to FIG. 18 , the execution environment 1801 may include, for example, an REE 1810 and a TEE 1820 .

한 실시예에 따르면, REE는 결제를 위해서, 예를 들면, 결제 어플리케이션(1830)(예: 결제 (어플리케이션) 385), 결제 매니저(1840)(예: 결제 매니저(354)), 및 커널(1850)(예: 커널(320))을 포함할 수 있다. 한 실시예에 따르면, 결제 어플리케이션(1830)은, 예를 들면, 결제 관리 모듈(1831), 서버 연동 모듈(1833), 인증 모듈(1835), 주변 장치 관리 모듈(1837)을 포함할 수 있다. 또한, 도 32 내지 도 36의 결제 어플리케이션을 포함할 수 있다.According to one embodiment, the REE is for payment, for example, a payment application 1830 (eg, payment (application) 385), a payment manager 1840 (eg, payment manager 354), and a kernel 1850. ) (eg, the kernel 320). According to an embodiment, the payment application 1830 may include, for example, a payment management module 1831 , a server interworking module 1833 , an authentication module 1835 , and a peripheral device management module 1837 . In addition, the payment application of FIGS. 32 to 36 may be included.

한 실시예에 따르면, 결제 관리 모듈(1831)은 카드 등록, 카드 인증, 카드 삭제, 및 결제를 위한 동작을 수행할 수 있다. 결제 관리 모듈은 사용자의 카드를 등록할 수 있다. 전자 장치(예: 전자 장치(101))는 사용자로부터 카드 등록 요청을 수신할 수 있다. 전자 장치는 카메라 모듈을 이용하여 카드 이미지를 획득할 수 있다. 결제 관리 모듈은 OCR 모듈을 통해 카드 이미지를 획득할 수 있다. 결제 관리 모듈은 카드 정보에 연관된 정보(예: 비밀번호, 집 주소, 이메일 주소, 전화 번호, 또는 계정 ID)를 사용자로부터 입력 받거나 결제 서버(720)로부터 획득할 수 있다. According to an embodiment, the payment management module 1831 may perform operations for card registration, card authentication, card deletion, and payment. The payment management module may register the user's card. The electronic device (eg, the electronic device 101) may receive a card registration request from the user. The electronic device may acquire a card image by using the camera module. The payment management module may acquire the card image through the OCR module. The payment management module may receive information related to card information (eg, password, home address, email address, phone number, or account ID) from a user or obtain it from the payment server 720 .

한 실시예에 따르면, 결제 관리 모듈(1831)은 등록된 카드를 디스플레이(160)를 통해 사용자에게 표시할 수 있다. 사용자는 등록된 카드 중 적어도 일부 정보(예: 카드 이름, 집 주소, 전화 번호, 결제 시도 횟수, 또는 결제 알림 정보 수신 여부 등)를 수정할 수 있다. 결제 관리 모듈(1831)은 각각의 카드에 따른 거래 내역을 표시할 수 있다. 결제 관리 모듈(1831)은 전자 장치와 기능적으로 연결된 웨어러블 장치(예: 스마트 와치)에 등록된 카드 정보를 표시할 수 있다. According to an embodiment, the payment management module 1831 may display the registered card to the user through the display 160 . The user may modify at least some information of the registered cards (eg, card name, home address, phone number, number of payment attempts, or whether payment notification information is received, etc.). The payment management module 1831 may display transaction details for each card. The payment management module 1831 may display card information registered in a wearable device (eg, a smart watch) functionally connected to the electronic device.

한 실시예에 따르면, 결제 관리 모듈(1831)은 등록된 카드를 이용하여 결제 동작을 수행할 수 있다. 사용자는 결제를 위해 등록된 다수의 카드 중 하나의 카드를 선택할 수 있다. 사용자는 전자 장치를 POS(point of sales)(740)로 가져갈 수 있다. 결제 관리 모듈(1831)은 POS(740)로부터 전달받은 제품 정보(예: 가격)를 디스플레이(160) 통해 표시할 수 있다. 결제 관리 모듈(1831)은 결제를 위해 인증 모듈(1835)을 통해 사용자 인증(예: 지문 인증)을 수행할 수 있다. 인증이 완료 된 경우, 결제 관리 모듈(1831)은 결제가 완료되었다는 알림 정보를 디스플레이(160)를 통해 표시할 수 있다.According to an embodiment, the payment management module 1831 may perform a payment operation using a registered card. The user may select one of a plurality of cards registered for payment. The user may bring the electronic device to a point of sales (POS) 740 . The payment management module 1831 may display product information (eg, price) received from the POS 740 through the display 160 . The payment management module 1831 may perform user authentication (eg, fingerprint authentication) through the authentication module 1835 for payment. When authentication is completed, the payment management module 1831 may display notification information indicating that the payment is completed through the display 160 .

한 실시예에 따르면, 전자 장치(전자 장치 101 또는 전자 장치710)는 MST 모듈 또는 NFC 모듈 중 적어도 하나를 이용하여 결제 정보를 POS로 전송할 수 있다. 인식률을 높이기 위해 MST 모듈과 NFC 모듈을 동시에 이용하여 결제 정보를 POS로 전송할수도 있다. 혹은, MST 모듈을 이용하여 전송하고, 결제가 실패했을 경우 NFC 모듈을 이용하여 전송할 수 있다. 결제가 실패한 경우를 인식하는 방법은 POS 또는 3rd party(예: financial institution)로부터 알림을 받거나 지정된 시간을 초과했을 경우를 포함할 수 있다. 다양한 실시예는 순서에 한정하지 않으며, 반대로도 가능하다.According to an embodiment, the electronic device (the electronic device 101 or the electronic device 710) may transmit payment information to the POS using at least one of the MST module and the NFC module. To increase the recognition rate, payment information can be transmitted to the POS by using the MST module and the NFC module at the same time. Alternatively, the transmission may be performed using the MST module, and if the payment fails, the transmission may be performed using the NFC module. A method of recognizing a case in which payment has failed may include receiving a notification from a POS or a 3rd party (eg, a financial institution) or exceeding a specified time. Various embodiments are not limited to the order, and vice versa.

한 실시예에 따르면, 전자 장치는 사용자가 기 등록된 카드 중 적어도 하나의 카드를 삭제하는 요청을 수신할 수 있다. 결제 관리 모듈(1831)은 해당 카드에 해당하는 정보를 메모리(130)로부터 삭제할 수 있다. 결제 관리 모듈(1831)은 상기 적어도 하나의 카드에 해당하는 정보를 삭제할 것을 결제 서버(720)에 요청할 수 있다.According to an embodiment, the electronic device may receive a request for the user to delete at least one card among previously registered cards. The payment management module 1831 may delete information corresponding to the corresponding card from the memory 130 . The payment management module 1831 may request the payment server 720 to delete information corresponding to the at least one card.

한 실시예에 따르면, 결제 관리 모듈(1831)은 카드의 소유주와 카드 등록을 하는 사용자가 일치하는지 확인할 수 있다. 결제 관리 모듈(1831)은, 예를 들면, ID&V(identification & verification) 모듈을 포함할 수 있다. 결제 관리 모듈(1831)은 문자, 이메일, ARS, 또는 전화 통화를 통해 사용자 인증을 수행할 수 있다. 또한, 카드사 또는 은행에서 발행한 어플리케이션을 통해 인증을 수행할 수 있다. 결제 관리 모듈(1831)을 통해 등록된 카드는 인증을 거친 후 사용될 수 있다.According to an embodiment, the payment management module 1831 may check whether the card owner and the card registration user match. The payment management module 1831 may include, for example, an identification & verification (ID&V) module. The payment management module 1831 may perform user authentication through text, email, ARS, or phone call. In addition, authentication may be performed through an application issued by a card company or a bank. The card registered through the payment management module 1831 may be used after authentication.

한 실시예에 따르면, 결제 관리 모듈(1831)은 OCR 모듈을 포함할 수 있다. OCR 모듈은 사람이 쓰거나 기계로 인쇄한 문자의 이미지를 스캐너로 획득하여 기계가 읽을 수 있는 문자로 변환할 수 있다. 전자 장치는 카메라 모듈을 통해 사용자가 소지한 카드의 이미지를 획득할 수 있다. OCR 모듈은 카드 이미지로부터 카드에 기입된 이미지, 문자, 또는 숫자를 기계가 읽을 수 있는 문자로 변환할 수 있다. OCR 모듈은 변환된 문자를 통해 사용자의 카드 정보(예: 카드 번호, 사용자 이름, 또는 유효 기간)를 획득할 수 있다. 전자 장치는 OCR 모듈을 통해 사용자의 카드 정보를 획득하여 카드 등록 과정을 수행할 수 있다.According to an embodiment, the payment management module 1831 may include an OCR module. The OCR module can acquire images of human-written or machine-printed characters with a scanner and convert them into machine-readable characters. The electronic device may acquire an image of the card held by the user through the camera module. The OCR module can convert the image, letter, or number written on the card from the card image into machine-readable characters. The OCR module may acquire the user's card information (eg, card number, user name, or expiration date) through the converted character. The electronic device may obtain card information of the user through the OCR module and perform a card registration process.

한 실시예에 따르면, 결제 관리 모듈(1831)은 결제를 하기 위해 생성된 바코드를 디스플레이(160)를 통해 표시할 수 있다. 예를 들어, 결제 관리 모듈(1831)은 POS(740)로부터 바코드 리더기를 통해 결제가 수행될 수 있는 바코드를 생성하는 명령을 수신할 수 있다. 결제 관리 모듈(1831)은 상기 명령에 기반하여 바코드를 생성할 수 있다.According to an embodiment, the payment management module 1831 may display a barcode generated for payment through the display 160 . For example, the payment management module 1831 may receive a command for generating a barcode through which payment can be performed through a barcode reader from the POS 740 . The payment management module 1831 may generate a barcode based on the command.

한 실시예에 따르면, 서버 연동 모듈(1833)은 결제 서버(720) 또는 토큰 서비스 프로바이더(730)로부터 결제 관련 메시지, 기기 관련 메시지, 또는 서비스 관련 메시지를 수신할 수 있다. 서버 연동 모듈(1833)은 상기 메시지를 결제 관리 모듈(1831)로 전달할 수 있다. According to an embodiment, the server interworking module 1833 may receive a payment-related message, a device-related message, or a service-related message from the payment server 720 or the token service provider 730 . The server interworking module 1833 may transmit the message to the payment management module 1831 .

한 실시예에 따르면, 서버 연동 모듈(1833)은, 예를 들면, 푸시 관리 모듈(push management module) 및 계정 관리 모듈(account management module)을 포함할 수 있다. 예를 들어, 결제 서버(720)로부터 수신한 메시지가 토큰(token)과 연관된 푸시 알림(push notification) 형태면 푸시 관리 모듈에서 수신한 메시지를 처리하고, 수신한 메시지가 계정 관련 정보(예: 삼성 계정)면 계정 관리 모듈에서 수신한 메시지를 처리할 수 있다. According to an embodiment, the server interworking module 1833 may include, for example, a push management module and an account management module. For example, if the message received from the payment server 720 is in the form of a push notification associated with a token, the push management module processes the received message, and the received message is account-related information (eg, Samsung). account), you can process messages received from the account management module.

한 실시예에 따르면, 푸시 관리 모듈은 결제 서버(720)로부터 수신된 푸시 알림 또는 푸시 메시지(push notification 또는 push message) 정보를 연산, 처리(handle)할 수 있다. 푸시 메시지는 결제 매니저(payment manager)(1840 또는 354) 내부의 결제 중계 모듈(1841)을 통하여 결제 어플리케이션(1830) 내부의 서버 연동 모듈(1833)로 전달될 수 있고, 직접적으로 결제 어플리케이션(1830)으로 전달 될 수 있다. 전달된 푸시 메시지 중에서 적어도 일부 메시지는 결제 관리 모듈(1831)로 전달되어 카드 관련 정보를 업데이트 하고 결제 서버(720)와 동기화 될 수 있다.According to an embodiment, the push management module may calculate and handle information about a push notification or a push message received from the payment server 720 . The push message may be delivered to the server interworking module 1833 inside the payment application 1830 through the payment relay module 1841 inside the payment manager 1840 or 354, and directly to the payment application 1830 can be transmitted as At least some of the transmitted push messages may be transmitted to the payment management module 1831 to update card-related information and to be synchronized with the payment server 720 .

한 실시예에 따르면, 결제 서비스(720)는 계정 관련 정보를 관리하는 계정 서버 또는 결제 관련 정보를 제공하는 토큰 요구자 서버를 포함할 수 있다. 계정 서버와 토큰 요구자 서버는 별도의 장치(예: 서버 106)로 구현될 수도 있고, 하나의 장치에 포함될 수도 있다.According to one embodiment, the payment service 720 may include an account server that manages account-related information or a token requestor server that provides payment-related information. The account server and the token requestor server may be implemented as separate devices (eg, server 106), or may be included in one device.

한 실시예에 따르면, 푸시 관리 모듈에서 수신되는 메시지 정보는 아래 표 1과 같이 권한 설정(예: token provisioning), 중지(예: token suspension), 폐기(예: token disposal), 상태 전환(예: token status change), 추가 발급(예: token replenishment), 결제 확인(예: transaction notification) 등의 토큰 및 결제 관련 정보를 포함할 수 있다. According to an embodiment, the message information received from the push management module includes permission setting (eg, token provisioning), suspension (eg, token suspension), disposal (eg, token disposal), and state transition (eg: token provisioning) as shown in Table 1 below. Token status change), additional issuance (eg token replenishment), and payment confirmation (eg transaction notification) may include token and payment-related information.

계정 관리 모듈에서 송신/수신하는 메시지는 분실 전자 장치 확인 기능(예: lost device, find my mobile), 원격 차단(예: remote lock/unlock), 멤버십 관리(예: loyalty/membership cards), 웹 연동 기능(예: website portal-online) 등의 전자 장치 관련된 정보 중 적어도 일부를 포함 할 수 있다.Messages sent/received from the account management module include lost electronic device verification function (eg lost device, find my mobile), remote block (eg remote lock/unlock), membership management (eg loyalty/membership cards), and web linkage. It may include at least a part of information related to the electronic device, such as a function (eg, website portal-online).

Push managementpush management Use caseuse case detailsdetails TokenToken Token provisioning withID & VToken provisioning withID & V 외부서버에서 전자 장치 내 푸시 관리 모듈로 Identification, verification 목적의 카드 정보를 토큰 설치 및 인증을 위해 내려줌From an external server to the push management module in the electronic device, the card information for the purpose of identification and verification is sent down for token installation and authentication Token suspensionToken suspension 외부서버에서 전자 장치 내 푸시 관리 모듈로 토큰의 사용 중지를 위해 전달Passed from an external server to the push management module in the electronic device to stop using the token Token resumeToken resume 외부서버에서 전자 장치내 푸시 관리 모듈로 토큰의 사용 재개를 위해 전달Delivered to resume use of token from external server to push management module in electronic device Token disposalToken disposal 외부서버에서 전자 장치내 푸시 관리 모듈로 토큰 폐기를 위해 전달Delivered for token revocation from external server to push management module in electronic device Token status changeToken status change 외부서버에서 전자 장치내 푸시 관리 모듈로 카드 상태 변경을 위해 전달Delivered for card status change from external server to push management module in electronic device Token ReplenishmentToken Replenishment 외부서버에서 전자 장치내 푸시 관리 모듈로 토큰 추가 발급을 위해 전달Delivered for additional token issuance from the external server to the push management module in the electronic device Transaction NotificationTransaction Notification 외부서버(결제서버)에서 전자 장치내 푸시 관리 모듈로 토큰 결제 내역을 전달Delivery of token payment details from the external server (payment server) to the push management module in the electronic device DeviceDevice Lost Device (Find my mobile)Lost Device (Find my mobile) 외부 서버(서비스서버)와 전자 장치내 계정관리모듈간의 분실 내역 정보 전달Delivery of loss history information between the external server (service server) and the account management module in the electronic device Remote lock /unlockRemote lock /unlock 외부 서버(서비스서버)와 전자 장치내 계정관리모듈간의 원격 기기 차단 명령 전달Transmission of remote device blocking command between the external server (service server) and the account management module in the electronic device Loyalty/Membership cardsLoyalty/Membership cards 외부 서버(서비스서버)와 전자 장치내 계정관리모듈간의 멤버십 정보 전달Transfer of membership information between the external server (service server) and the account management module in the electronic device Website (online)Website (online) 외부 서버(서비스서버)와 전자 장치내 계정관리모듈간의 웹 연동 기능 지원Supports web interworking function between an external server (service server) and the account management module in the electronic device

한 실시 예에 따르면, 결제 관리 모듈에서 획득된 token provisioning ID & V 정보가 결제 서버(720)를 거쳐 외부 서버로 성공적으로 전달되고 전달된 토큰(token) 관련 정보가 유효(validate)하면, 예를 들면, “push token {id} status changed” 메시지를 서버 연동 모듈(1833)에서 이를 수신하여 결제 관리 모듈(1831)로 전달할 수 있다.According to one embodiment, if the token provisioning ID & V information obtained from the payment management module is successfully transferred to the external server through the payment server 720 and the delivered token-related information is validated, an example For example, the “push token {id} status changed” message may be received from the server interworking module 1833 and delivered to the payment management module 1831 .

한 실시 예에 따르면, 전자 장치의 결제 관리 모듈(1831)에서 획득된 카드 정보 일시 중지(예: token suspension) 정보는 결제 서버(720)의 사용 중지 명령을 결제 어플리케이션(1830)으로 전달하여 모바일 결제를 위한 카드 설정 상태를 활성(active) 상태에서 비활성(inactive) 상태로 전환할 수 있다. According to an embodiment, the card information suspension (eg, token suspension) information obtained from the payment management module 1831 of the electronic device transmits a stop command of the payment server 720 to the payment application 1830 to make a mobile payment It is possible to switch the card setting state for , from an active state to an inactive state.

한 실시 예에 따르면, 전자 장치의 분실이 발생하면 결제 서버(720)는 결제 서버(720)에 저장된 모든 토큰 정보를 삭제 혹은 일시 정지시킬 수 있다. 이를 결제 어플리케이션(1830)에 동기화하기 위해 푸시 메시지를 전송할 수 있다. 결제 서버(720)는 상기 결제 중계 모듈(1831) 또는 서버 연동 모듈(1833)(예: 푸시 관리 모듈, 계정 관리 모듈)을 통하여 결제 어플리케이션(1831)으로 전달될 수 있다.According to an embodiment, when the electronic device is lost, the payment server 720 may delete or temporarily suspend all token information stored in the payment server 720 . A push message may be transmitted to synchronize this with the payment application 1830 . The payment server 720 may be transmitted to the payment application 1831 through the payment relay module 1831 or the server interworking module 1833 (eg, a push management module, an account management module).

표 2를 참조하면, 전자 장치 및 결제 중계 모듈(1831)에서 지원하는 푸시 API 내용으로 결제 중계 모듈(1831)에 따라 구분되어 별도로 구현될 수 있다.Referring to Table 2, the contents of the push API supported by the electronic device and the payment relay module 1831 may be divided according to the payment relay module 1831 and implemented separately.

APIAPI DescriptionDescription typetype validationvalidation device.pushdevice.push Contains push platformContains push platform JsonJson requiredrequired device.push.spp.iddevice.push.spp.id Samsung Push Id.Samsung Push ID. StringString requiredrequired device.push.gcm.iddevice.push.gcm.id Google Push Id.Google Push Id. StringString optionaloptional

한 실시 예에 따르면, 계정 관리 모듈(account management module)은 결제 서버(720)와 주고 받는 사용자 고유의 식별자(예: Samsung account id 또는 device id), 카드, 또는 멤버십 등의 정보를 결제 어플리케이션에서 관리 할 수 있다. 상기 사용자 식별자는 여러 사업자의 카드(예: 비자 카드 또는 마스터 카드)를 관리하기 위하여 사용자가 가입한 계정 또는 전자 장치와 관련된 포털 계정 또는 전자 장치의 고유 식별자(예: 모델명, MAC address, IMEI, 고유 번호(serial number), UUID, 또는 아이디(ID) 등)를 포함할 수 있다. 더하여, 상기 고유 식별자는 상기 계정을 통하여 결제 서버(720)에서 생성하여 전달받은 값일 수 있다.According to an embodiment, the account management module manages information such as a user's unique identifier (eg, Samsung account id or device id), card, or membership exchanged with the payment server 720 in the payment application can do. The user identifier is a unique identifier (eg, model name, MAC address, IMEI, unique identifier of an account or electronic device related to an account subscribed by a user or an electronic device to manage cards (eg, Visa or Master Card) of multiple operators) number (serial number), UUID, or ID (ID, etc.). In addition, the unique identifier may be a value generated and transmitted by the payment server 720 through the account.

계정 관리 모듈은 상기 사용자의 계정 또는 전자 장치 식별자를 이용하여 카드의 등록, 추가, 삭제, 중복 등록, 사용 중지, 또는 사용 재개 등을 관리 할 수 있다. 이 외에도 전자 장치와 웨어러블 장치(wearable device))간에 카드 정보를 송출 (import/export)하는 경우에도 생성된 계정 또는 전자 장치 식별자를 기반으로 카드의 등록, 추가, 삭제, 중복 등록 확인, 사용 중지, 또는 사용 재개 등을 관리 할 수 있다. The account management module may manage registration, addition, deletion, duplicate registration, suspension of use, or resumption of use of a card using the user's account or electronic device identifier. In addition to this, even when card information is exported (imported/exported) between an electronic device and a wearable device, registration, addition, deletion, duplicate registration check, suspension of use, Or you can manage resumption of use, etc.

이때, 계정 기반의 관리 방법은 하나의 계정을 공유하는 복수의 전자 장치 또는 복수 사용자가 관리되어 전자 장치 별로 고유의 계정(예: 삼성 계정)을 사용하거나 하나의 계정으로 복수의 전자 장치를 통합 관리될 수 있다. In this case, in the account-based management method, a plurality of electronic devices or multiple users sharing one account are managed to use a unique account (eg, a Samsung account) for each electronic device, or to manage a plurality of electronic devices with one account. can be

한 실시 예에 따르면, 결제 관리 모듈(1831)의 광학 문자 인식 모듈(예: OCR 모듈)을 통해 생성된 제 1 카드(예: 비자 카드)와 제 2카드(예: 마스터 카드) 정보는 삼성 계정 가입 시 생성한 계정(예: registration02@samsung.com)을 기반으로 상기 카드를 등록할 수 있다. 이때, 등록된 정보는 결제 서버(720)와 상기 생성한 계정 기반으로 동기화 될 수 있다. According to an embodiment, the first card (eg, Visa card) and the second card (eg, master card) information generated through the optical character recognition module (eg, OCR module) of the payment management module 1831 is a Samsung account The card can be registered based on the account created during registration (eg, registration02@samsung.com). In this case, the registered information may be synchronized with the payment server 720 based on the created account.

한 실시 예에 따르면, 바코드 인터페이스(barcode interface)를 통해 생성된 멤버십(membership) 정보는 삼성 계정 가입 시 생성한 계정(예: registration01@samsung.com)을 기반으로 제 1카드(예: 삼성 포인트 카드(Samsung points card)), 제 2카드(예: CJ 멤버십 포인트 카드(CJ membership points card))를 등록할 수 있다. 상기 등록된 정보는 결제 서버(720)와 상기 생성한 계정 기반으로 동기화 될 수 있다.According to an embodiment, the membership information generated through the barcode interface is the first card (eg, Samsung point card) based on the account (eg, registration01@samsung.com) created when signing up for a Samsung account. (Samsung points card) and a second card (eg, CJ membership points card) can be registered. The registered information may be synchronized with the payment server 720 based on the created account.

또한 사용자는 결제 어플리케이션에서 로그인 이후 계정 기반으로 카드의 활성/비활성(active / inactive) 상태 결정하여 계정 관리 모듈(1831)을 이용하여 결제 서버(710)로 전달 할 수 있으며 이와는 반대로 서버 관리 웹 페이지(예: 서버 포털)에서 계정 기반의 카드 상태를 관리 전환시킬 수 있다. 또한, 계정 관리 모듈은 서비스 계정(예: registration01@samsung.com)과 연계된 카드 정보(예: 비자 카드 ID & V) 및 멤버십 정보(예: CJ membership points, registraion001@Cj.com)를 서버와 연동하여 관리할 수 있다. 상기 멤버십 정보는 카드 결제 시 결제 처리 정보(예: 결제 금액)와 멤버십 누적 정보(예: 포인트 점수, 마일리지 등)를 연동하여 자동으로 적립, 차감할 수 있다.In addition, the user can determine the active / inactive state of the card based on the account after logging in in the payment application and transmit it to the payment server 710 using the account management module 1831. Conversely, the server management web page ( Account-based card status can be managed toggle (eg server portal). In addition, the account management module transmits card information (eg Visa card ID & V) and membership information (eg CJ membership points, registraion001@Cj.com) associated with the service account (eg registration01@samsung.com) with the server. It can be managed in conjunction. The membership information may be automatically accumulated or deducted by linking payment processing information (eg, payment amount) and membership accumulation information (eg, point scores, mileage, etc.) when paying by card.

이처럼 계정 관리 모듈을 포함하는 결제 어플리케이션이 설치되면 어느 기기에서라도 사용자의 계정 로그인(log in 또는sign in) 과정 한번으로 기존의 등록된 카드 일부 또는 전부의 설정 상태를 지속적으로 연동하여 사용할 수 있다. 또한, 인증 보안 레벨이 상대적으로 낮은 멤버십 정보도 사용자의 계정 중심으로 등록, 연계되어 추가적인 인증 과정을 줄 일 수 있다. As such, when a payment application including an account management module is installed, the user's account login (log in or sign in) process can be used in any device to continuously link and use the setting status of some or all of the existing registered cards. In addition, membership information, which has a relatively low authentication security level, is registered and linked to the user's account, thereby reducing the additional authentication process.

한 실시예에 따르면, 인증 모듈(1835)은 결제를 위한 카드 또는 사용자의 인증을 수행하기 위한 UI(user interface)를 디스플레이(160)를 통해 표시할 수 있다. 인증 모듈은, 예를 들면, 생체 정보 모듈을 포함할 수 있다. According to an embodiment, the authentication module 1835 may display a card for payment or a user interface (UI) for performing user authentication through the display 160 . The authentication module may include, for example, a biometric information module.

한 실시예에 따르면, 생체 정보 모듈은 사용자의 생체 정보를 획득할 수 있다. 사용자의 생체 정보는, 예를 들면, 지문, 홍채, 얼굴 이미지, 목소리, 심장 박동, 또는 혈압 정보를 포함할 수 있다. 전자 장치는 센서 모듈을 통해 사용자의 생체 정보를 획득할 수 있다. 예를 들면, 지문 센서를 통해 사용자의 지문 정보를 획득할 수 있다. 또는, 전자 장치는 카메라 모듈을 통해 사용자의 홍채 정보를 획득할 수 있다. 생체 정보 모듈은 사용자의 생체 정보를 획득하기 위한 UI(user interface)를 디스플레이(160)를 통해 표시할 수 있다. According to an embodiment, the biometric information module may acquire the user's biometric information. The user's biometric information may include, for example, fingerprint, iris, face image, voice, heart rate, or blood pressure information. The electronic device may acquire the user's biometric information through the sensor module. For example, the user's fingerprint information may be acquired through a fingerprint sensor. Alternatively, the electronic device may acquire the user's iris information through the camera module. The biometric information module may display a user interface (UI) for obtaining the user's biometric information through the display 160 .

한 실시예에 따르면, 생체 정보 모듈은 사용자가 전자 장치에 등록된 카드 정보를 이용하여 결제를 시도 할 때, 전자 장치에 기능적으로 연결된 보안 메모리(예: 내장형 보안 요소(eSE) 또는 보안 환경에서 접근 가능한 메모리)로부터 보안 데이터(예: 토큰)를 획득하기 위해 인증을 수행할 수 있다. 전자 장치는 사용자 인증을 위해 생체 정보 모듈을 통해 사용자의 생체 정보(예: 지문 또는 홍채)를 획득할 수 있다. 획득된 생체 정보는 결제 매니저(1840)의 생체 정보 관리 모듈(1843)에게 전달할 수 있다. 한 실시예에 따르면 보안 메모리는 암호화된 키로 저장되는 데이터를 포함하는 메모리일 수 있다. According to one embodiment, the biometric information module accesses a secure memory (eg, a built-in secure element (eSE)) or a secure environment functionally connected to the electronic device when a user attempts to make a payment using card information registered in the electronic device. Authentication can be performed to obtain secure data (eg tokens) from available memory). The electronic device may acquire the user's biometric information (eg, fingerprint or iris) through the biometric information module for user authentication. The obtained biometric information may be transmitted to the biometric information management module 1843 of the payment manager 1840 . According to an embodiment, the secure memory may be a memory including data stored with an encrypted key.

한 실시예에 따르면, 생체 정보 모듈(1843)은 사용자가 인터넷 웹 페이지 상의 전자 결제 진행 시 전자 장치에 등록된 카드 정보와 생체 정보를 이용하여 결제를 진행 할 수 있다. 전자 장치에 기능적으로 연결된 메모리 또는 보안 모듈(예: eSE 또는 보안 환경에서 접근 가능한 메모리)로부터 보안 데이터(예: 토큰)를 획득하기 위해 사용자는 인증을 수행할 수 있다. 전자 장치에서 사용자 인증이 성공적으로 진행되면 이를 외부 서버와 연동하여 별도의 인터넷 웹 페이지 상의 전자 결제 과정 없이 이를 빠른 자동 인증(예: FIDO: fast identity online) 하도록 할 수 있다. 즉, 온라인 결제 시에 필요한 인증 과정을 생체 정보 모듈과 연동하여 빠른 인증을 진행 할 수 있다.According to an embodiment, the biometric information module 1843 may perform payment using card information and biometric information registered in the electronic device when a user performs an electronic payment on an Internet web page. A user may perform authentication to obtain security data (eg, a token) from a memory or security module functionally connected to the electronic device (eg, a memory accessible in an eSE or secure environment). When user authentication is successfully performed in the electronic device, it can be linked with an external server to perform fast automatic authentication (eg, FIDO: fast identity online) without an electronic payment process on a separate Internet web page. That is, it is possible to perform fast authentication by linking the authentication process required for online payment with the biometric information module.

한 실시예에 따르면, 전자 장치는 사용자의 지문과 결제할 카드를 지정해 놓을 수 있다. 예를 들어, 사용자는 결제 어플리케이션에서 지문을 이용하여 인증을 수행하는 경우, 오른손 엄지는 비자 카드, 오른손 검지는 마스터 카드 등으로 지정하여 사용자가 인증하는 순간 해당 카드로 결제하도록 할 수 있다. According to an embodiment, the electronic device may designate a user's fingerprint and a payment card. For example, when the user performs authentication using a fingerprint in a payment application, the right thumb may be designated as a Visa card, the right index finger as a Master Card, or the like, so that the user can make payment with the corresponding card at the moment of authentication.

한 실시예에 따르면, 주변 장치 관리 모듈(1837)은 전자 장치와 기능적으로 연결된 외부 장치를 관리할 수 있다. 주변 장치 관리 모듈(1837)은, 예를 들면, MST 주변 장치 모듈 및 웨어러블 장치 모듈을 포함 할 수 있다. According to an embodiment, the peripheral device management module 1837 may manage an external device functionally connected to the electronic device. The peripheral device management module 1837 may include, for example, an MST peripheral device module and a wearable device module.

한 실시예에 따르면, MST 주변 장치 모듈은 MST 액세서리(예: LoopPayTM사의 fob 형태 장치)와 전자 장치 간의 유무선 연결 여부를 출력하고 이를 기반으로 사용자에게 적합한 UI(user interface)를 제공할 수 있다. UI는 MST 액세서리가 연결된 상태에서 카드 등록, 삭제, 또는 결제 과정을 진행하고 출력 할 수 있다. MST 주변 장치 모듈은 MST 액세서리와 연결된 상태에서 결제에 필요한 다양한 카드 정보를 전자 장치 또는 MST 액세서리 내 별도의 메모리에 저장할 수 있다. 이는 MST 액세서리와 비 연결 상태에서도 전자 장치 또는 MST 액세서리 독립적으로 결제를 진행할 수 있도록 할 수 있다.According to an embodiment, the MST peripheral device module may output whether a wired/wireless connection between an MST accessory (eg, a fob-type device manufactured by LoopPay TM ) and an electronic device is connected, and provide a user interface (UI) suitable for the user based on this. The UI can process and print card registration, deletion, or payment while the MST accessory is connected. The MST peripheral device module may store various card information required for payment in an electronic device or a separate memory within the MST accessory while connected to the MST accessory. This may enable payment to be performed independently of the electronic device or the MST accessory even when the MST accessory is not connected.

웨어러블 장치 모듈은 웨어러블 장치(예: 시계, 헤드셋, 안경, 또는 반지 등)와 전자 장치 간의 유무선 연결 여부를 출력하고 이를 기반으로 사용자에게 적합한 UI(user interface)를 제공할 수 있다. 상기 유무선 연결은 BT, BLE, WiFi, Zigbee, 또는 Z-wave 등의 다양한 인터페이스를 포함할 수 있고, 특정 accessory protocol(samsung accessory protocol(SAP))을 적용하여 구현할 수 있다. 상기 UI는 웨어러블 장치가 연결된 상태에서 카드 등록, 삭제, 결제 수행 과정을 진행하고 이를 출력 할 수 있다. 상기 카드 등록, 삭제, 결제 수행 과정에서 웨어러블 장치 모듈은 웨어러블 장치와 근거리 기반의 secure session을 생성 여부를 출력하고 전자 장치 또는 웨어러블 장치 상의 사용자 입력 값을 송 수신하고 이를 표시할 수 있다. 상기 사용자의 입력은 결제에 필요한 다양한 카드 정보와 그 외의 부가 인증 정보(예: PIN, 사용자 고유 패턴 관련 데이터, 지문 인식 관련 데이터, 웨어러블 장치 베젤부 또는 디스플레이(160)의 터치 입력 값 등)를 포함할 수 있다.The wearable device module may output a wired/wireless connection between the wearable device (eg, a watch, a headset, glasses, or a ring) and an electronic device, and provide a user interface (UI) suitable for the user based thereon. The wired/wireless connection may include various interfaces such as BT, BLE, WiFi, Zigbee, or Z-wave, and may be implemented by applying a specific accessory protocol (samsung accessory protocol (SAP)). The UI may perform card registration, deletion, and payment execution processes while the wearable device is connected and output the same. In the card registration, deletion, and payment execution process, the wearable device module may output whether a secure session based on a short distance with the wearable device is generated, transmit/receive a user input value on the electronic device or the wearable device, and display it. The user's input includes various card information required for payment and other additional authentication information (eg, PIN, user-specific pattern-related data, fingerprint recognition-related data, wearable device bezel unit or touch input value of the display 160, etc.) can do.

한 실시예에 따르면, 전자 장치는 웨어러블 장치 또는 액세서리에 하나의 결제 정보를 공유할 수 있다. 예를 들어, 하나의 비자 카드에 대한 정보를 웨어러블 장치와 전자 장치에 모두 저장할 수 있다. 한 실시예에 따르면, 전자 장치는 웨어러블 장치 또는 액세서리에 하나의 카드 정보에서 발생된 다른 카드 정보를 각각 저장할 수 있다. 예를 들어, 하나의 비자 카드 정보에서 발급된 다른 토큰을 하나는 전자 장치에 저장하고 다른 하나는 액세서리 또는 웨어러블 장치에 저장할 수 있다. 한 실시예에 따르면, 하나의 카드정보에서 발급된 다른 토큰을 하나는 전자 장치에 저장하고 다른 하나는 액세서리 또는 웨어러블 장치에 저장하는 경우, 하나의 장치의 결제 모듈이 활성화 되면, 다른 장치의 결제모듈은 비활성화할 수 있다. 예를 들어, 하나의 비자 카드 정보에서 발급된 다른 토큰이 하나는 전자 장치에 저장되고 다른 하나는 액세서리 또는 웨어러블 장치에 저장되는 경우, 웨어러블 장치로 결제할 때는 전자 장치의 결제가 비활성화 될 수 있다. 더하여, 전자 장치로 결제를 수행할 경우에는 웨어러블 장치의 결제가 비활성화 될 수 있다. According to an embodiment, the electronic device may share one piece of payment information with a wearable device or an accessory. For example, information on one Visa card may be stored in both the wearable device and the electronic device. According to an embodiment, the electronic device may store other card information generated from one card information in the wearable device or the accessory, respectively. For example, one token issued from one piece of Visa card information may be stored in an electronic device and the other token may be stored in an accessory or wearable device. According to an embodiment, when one token issued from one card information is stored in an electronic device and the other is stored in an accessory or wearable device, when a payment module of one device is activated, a payment module of another device can be disabled. For example, when one token issued from one Visa card information is stored in an electronic device and the other is stored in an accessory or a wearable device, payment by the electronic device may be deactivated when paying with the wearable device. In addition, when payment is performed by the electronic device, payment of the wearable device may be deactivated.

한 실시예에 따르면, 결제 매니저(1840)는, 예를 들면, 결제 중계 모듈(1841), 생체 정보 관리 모듈(1843), 및 보안 환경 중계 모듈(1846)을 포함 할 수 있다. 한 실시예에 따르면, 결제 중계 모듈(1841)은 카드 또는 카드에 대응하는 정보(예: 토큰)를 결제 어플리케이션, 커널 또는 결제 서버(710)로 중계할 수 있다. 결제 중계 모듈(1841)은 통신 모듈(예: NFC 모듈, MST 모듈)을 통해 오프라인 결제를 할 수 있다. NFC를 이용한 결제 방식은 POS를 통해서 구동 가능하고, MST 를 이용한 결제 방식은 사용자 입력에 의해 구동 될 수 있다. 또한, 결제 중계 모듈(1841)은 통신 모듈(예: 셀룰러 모듈, RF 모듈, WIFI 모듈 등)을 통해 온라인 결제를 할 수 있다.According to an embodiment, the payment manager 1840 may include, for example, a payment relay module 1841 , a biometric information management module 1843 , and a secure environment relay module 1846 . According to an embodiment, the payment relay module 1841 may relay a card or information (eg, a token) corresponding to the card to the payment application, the kernel, or the payment server 710 . The payment relay module 1841 may make an offline payment through a communication module (eg, an NFC module, an MST module). A payment method using NFC can be driven through POS, and a payment method using MST can be driven by a user input. Also, the payment relay module 1841 may make an online payment through a communication module (eg, a cellular module, an RF module, a WIFI module, etc.).

한 실시예에 따르면, 결제 중계 모듈(1841)은 카드 또는 카드에 대응하는 정보(예: 토큰)의 상태 관리(예: card/token lifecycle 관리)를 할 수 있다. 결제 중계 모듈(1841)은 지불과 관련된 적어도 하나의 API(application programming interface)를 결제 어플리케이션(1830)에 제공할 수 있다.According to an embodiment, the payment relay module 1841 may manage the status of a card or information (eg, token) corresponding to the card (eg, card/token lifecycle management). The payment relay module 1841 may provide at least one application programming interface (API) related to payment to the payment application 1830 .

한 실시예에 따르면, 결제 중계 모듈(1841)은 적어도 하나의 결제와 관련된 시스템 서비스들에 의해 제공되는 인터페이스, 결제 모듈로 접근 하기 위한 결제 서비스, 커널(kernel) 무결성 인증을 위한 TIMA(trustzone-based integrity measurement architecture), 지문인식 결과 조회(예: 보안/비보안 모드 모두 지원), PIN 또는 PAN(primary account number) 입력 등을 위한 보안 UI를 제공하는 시스템 서비스 인터페이스들을 더 포함할 수 있다. 결제 중계 모듈(1841)은 TEE(1820)에 메시지 또는 명령어를 전달하기 위하여, 암호화 라이브러리를 포함할 수 있다. 결제 중계 모듈(1841)은 상기 암호화 라이브러리를 통하여 TEE(1820)와 메시지 또는 명령어를 주고 받을 수 있다. According to one embodiment, the payment relay module 1841 is an interface provided by at least one payment-related system services, a payment service for accessing the payment module, and a trustzone-based (TIMA) for kernel integrity authentication. Integrity measurement architecture), fingerprint recognition result inquiry (eg, both secure/non-secure mode are supported), and may further include system service interfaces that provide a secure UI for inputting a PIN or a primary account number (PAN). The payment relay module 1841 may include an encryption library to transmit a message or a command to the TEE 1820 . The payment relay module 1841 may exchange messages or commands with the TEE 1820 through the encryption library.

한 실시예에 따르면, 결제 중계 모듈(1841)은 일반적인 카드 관리 기능으로서 카드 추가, 삭제, 갱신 등의 기능을 제공하는 카드 관리 기능을 포함 할 수 있다. 결제 중계 모듈(1841)은 제 1 결제 SDK(software development kit) 또는 제 2결제 SDK를 포함할 수 있다. 제 1 결제 SDK(예: 삼성 SDK)는 전자 장치에 내장되어 있을 수 있다. 제 2 결제 SDK는 카드사 또는 은행에서 제공될 수 있으며, 전자 장치에 설치 될 수 있다. 결제 중계 모듈(1841)은 제 1 결제 SDK 또는 제 2 결제 SDK를 이용하여 카드 정보에 따라 해당하는 결제 SDK를 선택할 수 있다. 또한, 기본 카드를 설정 하거나 기본 카드 외의 다른 카드를 선택할 수 있다. According to an embodiment, the payment relay module 1841 may include a card management function that provides functions such as card addition, deletion, and update as a general card management function. The payment relay module 1841 may include a first payment software development kit (SDK) or a second payment SDK. The first payment SDK (eg, Samsung SDK) may be embedded in the electronic device. The second payment SDK may be provided by a card company or a bank, and may be installed in the electronic device. The payment relay module 1841 may select a corresponding payment SDK according to card information using the first payment SDK or the second payment SDK. You can also set a default card or choose a card other than the default card.

한 실시예에 따르면, 결제 중계 모듈(1841)은 일반 토큰 및 키 관리 기능으로서 초기 권한 설정(token provisioning), 추가 발급(token replenishment), 중지(token suspension), 재개(token resume), 폐기(token disposal) 등의 메시지를 결제 서버(710)로 전송할 수 있다. According to one embodiment, the payment relay module 1841 is a general token and key management function, such as initial permission setting (token provisioning), additional issuance (token replenishment), suspension (token suspension), resume (token resume), and revocation (token). disposal) and the like may be transmitted to the payment server 710 .

한 실시예에 따르면, 결제 모듈(1821)은 전자 장치 또는 외부의 다른 전자 장치로부터 토큰 및 토큰 크립토그램(cryptogram)을 획득할 수 있다. 한 실시예에 따르면, 상기 토큰 크립토그램은 이후 암호 정보, 암호, 크립토그램(cryptogram), 암호화, 암호 방법과 같은 의미로 사용 될 수 있다. 한 실시예에 따르면, 상기 토큰 크립토그램은 결제 트랜젝션의 유효성을 체크하기 위한 데이터를 포함할 수 있다. 한 실시예에, 따르면, 결제 모듈(1821)을 도 32 내지 도 35의 보안 어플리케이션을 포함할 수 있다. 예를 들면, 수신한 시간정보를 보안 모듈(예: eSE)에 전달할 수 있다. 또 다른 실시예에 따르면, 상기 TA는 보안 모듈(예: eSE)로부터 트랙2 형태의 데이터를 받아 결제 인증(verification) 데이터를 생성하여 트랙2 형태의 데이터 안에 삽일 할 수 있다. 상기 토큰 및 토큰 크립토그램(cryptogram)을 생성할 수 있는 키(예를 들어, limited used key(LUK) 또는 single used key)는 REE(1810) 또는 TEE(1820)에 저장될 수 있다. 더하여, 상기 REE(1810)에 상기 토큰과 상기 키를 저장하는 경우에는 상기 TEE의 결제 모듈이 TEE(1820)의 키(예를 들어, device root key(DRK))를 이용하여 암호화하여 저장할 수 있다. 전자 장치가 결제를 수행하는 경우, 결제 중계 모듈(1841)은 상기 암호화된 토큰을 결제 모듈을 통해 복호화된 상태로 획득할 수 있다. 상기 전자 장치는 상기 토큰 크립토그램을 생성할 수 있는 키 또는 토큰이 TEE에 저장되는 경우, 상기 TEE의 키를 이용하여 암호화된 형태로 저장할 수 있다.According to an embodiment, the payment module 1821 may obtain a token and a token cryptogram from an electronic device or another external electronic device. According to one embodiment, the token cryptogram may be used in the same meaning as cipher information, cipher, cryptogram, cipher, and cipher method. According to an embodiment, the token cryptogram may include data for checking the validity of a payment transaction. According to one embodiment, the payment module 1821 may include the security application of FIGS. 32 to 35 . For example, the received time information may be delivered to a security module (eg, eSE). According to another embodiment, the TA may receive track 2 format data from a security module (eg, eSE), generate payment verification data, and insert the data into track 2 format data. The token and a key (eg, a limited used key (LUK) or a single used key) capable of generating a token cryptogram may be stored in the REE 1810 or the TEE 1820 . In addition, when storing the token and the key in the REE 1810, the payment module of the TEE may encrypt and store the TEE 1820 using the key (eg, device root key (DRK)). . When the electronic device performs payment, the payment relay module 1841 may obtain the encrypted token in a decrypted state through the payment module. When the key or token for generating the token cryptogram is stored in the TEE, the electronic device may store it in an encrypted form using the key of the TEE.

한 실시예에 따르면, 결제 중계 모듈(1841)은 토큰 서비스 프로바이더(token service provider(TSP))(730)로부터 푸시 메시지(push message)를 받아 결제 어플리케이션에 전달할 수 있다. According to an embodiment, the payment relay module 1841 may receive a push message from a token service provider (TSP) 730 and deliver it to the payment application.

한 실시예에 따르면, 결제 중계 모듈(1841)은 제 1 결제SDK(카드사 또는 은행 제공)가 자체 토큰 관리 기능을 제공하는 경우, 토큰 관리 기능 요청 수신 시 상기 제 2 결제SDK로 중계하는 기능을 더 포함 할 수 있다. 예를 들어, 비자 카드의 SDK로 토큰 또는 key를 획득한 결제 중계 모듈은 삼성 SDK를 이용하여 TEE(1820) 내의 결제 모듈에 전달할 수 있다. 한 실시예에 따르면, 결제 중계 모듈(1841)은 결제 시 별도 하드웨어 장치(예: 보안 모듈 또는 secure element(SE)) 없이 소프트웨어 만으로 가상 카드를 전자 장치에서 사용 가능하게 할 수 있는 HCE(host card emulation) 기능을 결제 프레임워크 상에 더 포함 할 수 있다. 상기 HCE 기능은 토큰 및 토큰 크립토그램(token cryptogram)을 통신 모듈(예: NFC)을 통해 POS와 관련된 메시지 규격(예: application protocol data unit(APDU))을 이용하여 전달 할 수 있다. According to one embodiment, when the first payment SDK (provided by a card company or bank) provides its own token management function, the payment relay module 1841 further adds a function of relaying a token management function request to the second payment SDK when receiving a request for a token management function. may include For example, a payment relay module that has obtained a token or key through the SDK of the Visa card may transmit it to the payment module in the TEE 1820 using the Samsung SDK. According to one embodiment, the payment relay module 1841 is a host card emulation (HCE) capable of enabling a virtual card to be used in an electronic device only with software without a separate hardware device (eg, a security module or secure element (SE)) during payment. ) function can be further included in the payment framework. The HCE function may transmit a token and a token cryptogram using a POS-related message standard (eg, application protocol data unit (APDU)) through a communication module (eg, NFC).

한 실시예에 따르면, 결제 중계 모듈(1841)은 POS로부터 수신 된 메시지를 처리하는 기능을 포함 할 수 있다. 상기 POS 관련 메세지 처리 기능은 POS에 응답 할 결제 데이터를 관리하는 기능을 포함 할 수 있다. 상기 POS 관련 메시지 해석 기능은 제1 결제 SDK가 자체 POS 관련 메세지 처리 기능을 제공하는 경우 상기 POS 관련 메세지를 상기 제1 결제 SDK로 중계하는 기능을 더 포함 할 수 있다. 한 실시예에 따르면, 결제 중계 모듈(1841)은 상기 카드 데이터, 토큰 데이터, 또는 트랜잭션 데이터 등을 저장하기 위한 데이터베이스를 적어도 하나 포함 할 수 있다.According to one embodiment, the payment relay module 1841 may include a function of processing a message received from the POS. The POS-related message processing function may include a function of managing payment data to respond to the POS. The POS-related message interpretation function may further include a function of relaying the POS-related message to the first payment SDK when the first payment SDK provides its own POS-related message processing function. According to an embodiment, the payment relay module 1841 may include at least one database for storing the card data, token data, or transaction data.

한 실시예에 따르면, 결제 중계 모듈(1841)은 NFC로 결제하는 방법과 MST로 결제하는 방법 중 적어도 하나의 방법을 선택할 수 있다. 예를 들어, NFC로 먼저 결제를 수행하고, MST를 결제하는 방법, MST로 먼저 결제를 수행하고 NFC로 결제를 수행하는 방법, NFC와 MST를 같이 결제를 수행하는 방법을 포함할 수 있다. 한 실시예에 따르면, 한 통신 모듈로 결제를 수행한 후 다른 통신 모듈로 결제를 수행하는 경우, 결제 중계 모듈은 먼저 결제를 수행한 통신 모듈로 결제를 수행한 결과에 대한 응답이 없거나 지정된 시간이 지난 후에 다른 통신 모듈로 결제를 수행할 수 있다. According to an embodiment, the payment relay module 1841 may select at least one of a payment method using NFC and a method of payment using MST. For example, the method may include a method of first performing a payment with NFC and then paying MST, a method of first performing a payment with MST and then performing a payment with NFC, and a method of performing both NFC and MST payment. According to one embodiment, when payment is made with one communication module and then payment is performed with another communication module, the payment relay module does not respond to the result of performing payment with the communication module that performed the payment first, or the specified time After that, payment can be performed with another communication module.

한 실시예에 따르면 결제 중계 모듈(1841)은 하나의 카드에 대해서 토큰과 PAN 정보를 모두 가지고 있는 경우, 적어도 하나를 이용하여 결제를 수행할 수 있다. 결제 중계 모듈은 POS가 PAN으로 결제 가능한지 토큰을 결제 가능한지를 확인할 수 있다. 예를 들어, 전자 장치는 BLE를 통해서 결제 가능한 정보를 수신할 수 있고, 결제 중계 모듈은 상기 정보를 확인할 수 있다. 결제 중계 모듈은 확인한 정보를 기반으로 토큰으로 결제 가능한 경우에는 토큰으로 결제를 수행하고, PAN으로 결제 가능한 경우에는 PAN으로 결제를 수행하도록 할 수 있다. According to an embodiment, when the payment relay module 1841 has both the token and the PAN information for one card, the payment may be performed using at least one. The payment relay module can check whether the POS can be paid with the PAN or the token can be paid. For example, the electronic device may receive payment possible information through BLE, and the payment relay module may check the information. Based on the verified information, the payment relay module may perform payment with a token if payment is possible with a token, and may perform payment with the PAN if payment with PAN is possible.

한 실시예에 따르면, 결제 중계 모듈(1841)은 결제 네트워크에 의해 제공되는 SDK를 더 포함 할 수 있다. 상기 SDK는 토큰 관리, POS 관련 메세지 처리, 또는 토큰/카드 데이터베이스를 포함 할 수 있다.According to an embodiment, the payment relay module 1841 may further include an SDK provided by a payment network. The SDK may include token management, POS-related message processing, or a token/card database.

한 실시예에 따르면, 보안 환경 중계 중계 모듈(1846)은, 결제 모듈(1821) 혹은 생체 정보 모듈(1825)에서 제공하는 기능을 사용 하기 위해 생체 정보 드라이버 모듈(1851)이나 보안환경 드라이버 모듈(1853)에 결제 어플리케이션이 접근 할 수 있도록 중계하는 기능을 더 포함할 수 있다. 결제 중계 모듈(1841)은 보안 환경 중계 모듈(1846)에 메시지 또는 명령어를 전달하기 위하여, 암호화 라이브러리를 포함할 수 있다. 결제 중계 모듈(1841)은 상기 암호화 라이브러리를 통하여 보안 환경 중계 모듈(1846)과 메시지 또는 명령어를 주고 받을 수 있다.According to one embodiment, the secure environment relay module 1846 is a biometric information driver module 1851 or a secure environment driver module 1853 to use a function provided by the payment module 1821 or the biometric information module 1825. ) may further include a function of relaying so that the payment application can access. The payment relay module 1841 may include an encryption library in order to transmit a message or a command to the secure environment relay module 1846 . The payment relay module 1841 may exchange messages or commands with the secure environment relay module 1846 through the encryption library.

본 발명의 다양한 실시예는 상기 결제 매니저(1840) 상에 TEE의 보안 식별자 처리 모듈의 기능을 결제 어플리케이션에서 사용 할 수 있도록 연결 된 보안 환경 중계 모듈(1846)을 더 포함 할 수 있다.Various embodiments of the present invention may further include a secure environment relay module 1846 connected to the payment manager 1840 to use the function of the TEE security identifier processing module in a payment application.

한 실시예에 따르면, 상기 결제 중계 모듈(1841)은 결제 어플리케이션(1830)의 PIN 입력을 통한 인증 요청을 TEE(1820)의 보안 식별자 처리 모듈(1823)로 중계하는 기능을 포함 할 수 있다. 구체적인 중계하는 기능은 도 22에서 후술한다. According to an embodiment, the payment relay module 1841 may include a function of relaying an authentication request through PIN input of the payment application 1830 to the security identifier processing module 1823 of the TEE 1820 . A specific relay function will be described later with reference to FIG. 22 .

일반 어플리케이션은 지문 인식 요청 시 성공 또는 실패 여부를 획득할 수 있다. 보안 결제 어플리케이션(payment trusted app)은 보안 생체 결과(secure fingerprint result)를 획득할 수 있다. 상기 보안 생체 결과는 일회성 난수 및 성공/실패 여부를 조합하여 암호화한 형태가 될 수 있다. 상기 일회성 난수는 TEE(1820)의 하드웨어 키(예: device root key(DRK))를 통해 암호화 될 수 있다. A general application may obtain success or failure when requesting fingerprint recognition. A payment trusted app may obtain a secure fingerprint result. The secure biometric result may be in an encrypted form by combining a one-time random number and success/failure. The one-time random number may be encrypted through a hardware key (eg, device root key (DRK)) of the TEE 1820 .

한 실시예에 따르면, 결제 중계 모듈(1841)은 결제를 수행하기 위해 보안 환경 드라이버 모듈(1853)을 통하여, 결제 모듈(1821)을 결제 수행을 하라는 메시지를 전달할 수 있다. 결제 모듈(1821)은 인증 동작이 필요함을 보안 환경 드라이버 모듈(1853)을 통해 결제 중계 모듈(1841)에 알릴 수 있다. 결제 중계 모듈(1841)은 인증 동작을 위해 생체 정보 관리 모듈(1843)과 생체 정보 드라이버 모듈(1851)을 통하여 생체 센서(240I)에 생체 정보를 획득하라는 명령을 내릴 수 있다. 더하여, 결제 중계 모듈(1841)은 생체 정보 관리 모듈(1843)과 보안 환경 드라이버 모듈(1853)을 통하여 TEE(1820)의 생체 정보 모듈(1825)에 인증 확인 메시지를 전달할 수 있다. 생체 센서(240I)는 TEE(1820)의 생체 정보 모듈(1825)에서 획득할 수 있다. 생체 정보 모듈(1825)은 기 저장된 사용자의 생체 정보와 생체 센서로부터 획득된 정보를 비교하여 동일 사용자 여부를 확인할 수 있다. 상기 확인된 정보를 기반으로 생체 정보 모듈(1825)은 보안 환경 드라이버 모듈(1853)을 통하여 생체 정보 관리 모듈(1843)에 인증 여부를 전달하고, 생체 정보 관리 모듈(1843)은 결제 중계 모듈(1841)에 전달할 수 있다. 상기 결제 중계 모듈(1841)과 생체 정보 관리 모듈(1843)은 하나로 구성될 수도 있으며, 별도의 모듈로도 구성될 수 있다.According to an embodiment, the payment relay module 1841 may transmit a message to the payment module 1821 to perform payment through the secure environment driver module 1853 to perform payment. The payment module 1821 may notify the payment relay module 1841 through the secure environment driver module 1853 that an authentication operation is required. The payment relay module 1841 may instruct the biometric sensor 240I to acquire biometric information through the biometric information management module 1843 and the biometric information driver module 1851 for an authentication operation. In addition, the payment relay module 1841 may transmit an authentication confirmation message to the biometric information module 1825 of the TEE 1820 through the biometric information management module 1843 and the secure environment driver module 1853 . The biometric sensor 240I may be acquired from the biometric information module 1825 of the TEE 1820 . The biometric information module 1825 may determine whether the user is the same user by comparing pre-stored biometric information of the user with information obtained from the biometric sensor. Based on the verified information, the biometric information module 1825 transmits whether or not authentication is performed to the biometric information management module 1843 through the secure environment driver module 1853, and the biometric information management module 1843 sends the payment relay module 1841 ) can be passed to The payment relay module 1841 and the biometric information management module 1843 may be configured as one or as separate modules.

한 실시예에 따르면, 결제 중계 모듈(1841)은 외부 장치를 통해서 인증을 수행할 수 있다. 예를 들어, 전자 장치는 결제 서버(720)(예: 삼성 계정 서버 또는 토큰 요구자 서버)에 생체정보(예: 지문 또는 홍채 등)에 대한 인증을 요청할 수 있다. 상기 결제 서버(720)은 사용자의 생체 정보에 대한 인증을 수행하고 해당 결과를 상기 전자 장치에 전달할 수 있다. 상기 결제 중계 모듈(1841)은 인증이 완료된 경우 토큰 서비스 프로바이더에 인증이 완료되었다는 정보를 포함하는 데이터를 전달하여 토큰 프로비저닝하는 과정을 수행할 수 있다. 더하여 상기 전자 장치는 상기 인증 결과에 따라 인증이 완료된 경우 결제를 수행하고, 인증이 완료되지 않거나, 인증되지 않은 경우 결제를 수행하지 않을 수 있다.According to an embodiment, the payment relay module 1841 may perform authentication through an external device. For example, the electronic device may request authentication for biometric information (eg, fingerprint or iris, etc.) from the payment server 720 (eg, a Samsung account server or a token requestor server). The payment server 720 may authenticate the user's biometric information and transmit a corresponding result to the electronic device. When authentication is completed, the payment relay module 1841 may perform a token provisioning process by delivering data including information indicating that authentication is complete to a token service provider. In addition, the electronic device may perform payment when authentication is completed according to the authentication result, and may not perform payment when authentication is not completed or is not authenticated.

한 실시예에 따르면, 커널(1850)은, 예를 들면, 생체 정보 드라이버 모듈(1851) 및 보안 환경 드라이버 모듈(1853)을 포함할 수 있다. 생체 정보 드라이버 모듈(1851)은 결제 매니저(1840)의 생체 정보 관리 모듈(1843)로부터 전달되는 메시지를 생체 센서(240I)에 전달할 수 있다. 생체 센서에서 획득되는 생체 정보는 상기 생체 정보 드라이버 모듈을 통해서 REE(1810) 내의 모듈로 전달되지 않고, TEE(1820)내에 생체 정보 모듈(1825)로 전달될 수 있다.According to an embodiment, the kernel 1850 may include, for example, a biometric information driver module 1851 and a secure environment driver module 1853 . The biometric information driver module 1851 may transmit a message transmitted from the biometric information management module 1843 of the payment manager 1840 to the biometric sensor 240I. The biometric information obtained from the biometric sensor may not be transferred to the module in the REE 1810 through the biometric information driver module, but may be transferred to the biometric information module 1825 in the TEE 1820 .

한 실시예에 따르면, 보안 환경 드라이버 모듈(1853)은 REE(1810) 내의 모듈에서 TEE(1820) 내의 모듈에 전달하기 위한 인터페이스 역할을 할 수 있다. 예를 들어, TEE의 일 실시예인 ARM의 트러스트존(Trustzone)의 경우 어플리케이션 프로세서가 시분할로 REE와 TEE의 동작을 수행하는데, REE에서 TEE로 메시지를 전달하기 위한 별도의 데이터 패스를 하드웨어적으로 구현할 수 있다. 이 경우 이 하드웨어에 접근하기 위한 드라이버 모듈이 상기 보안 환경 드라이버 모듈(1853)일 수 있다. 상기 보안 환경 드라이버 모듈은 TEE 내의 모듈의 동작에 대한 메시지를 REE 내의 모듈에 전달할 수 있다. According to one embodiment, the secure environment driver module 1853 may serve as an interface for passing from a module in the REE 1810 to a module in the TEE 1820 . For example, in the case of Trustzone of ARM, which is an embodiment of TEE, the application processor performs REE and TEE operations in time division, and a separate data path for transferring messages from REE to TEE is implemented in hardware. can In this case, the driver module for accessing this hardware may be the secure environment driver module 1853 . The secure environment driver module may transmit a message about the operation of the module in the TEE to the module in the REE.

한 실시예에 따르면, TEE는 결제 모듈(1821), 보안 식별자 처리 모듈(1823), 생체 정보 모듈(1825), 및 MST 드라이버 모듈(1827)을 포함할 수 있다. 전자 장치(701)는 TEE(1820)를 통해 상대적으로 높은 보안이 요구되는 데이터를 안전한 환경 내에서 저장하고 관련 동작을 수행할 수 있다. TEE(1820)는 전자 장치의 어플리케이션 프로세서 상에서 동작하고, 전자 장치의 제조 동작에서 결정된 신뢰할 수 있는 TEE는 전자 장치 내에 있는 보안 영역을 의미할 수 있다. 상기 전자 장치는 TEE를 통해 상대적으로 높은 보안이 요구되는 데이터를 안전한 하드웨어 구조에 기반하여 동작할 수 있다. TEE는 어플리케이션 프로세서와 메모리 영역을 노멀 영역(Normal)과 보안 영역으로 구분하여 동작하도록 할 수 있다. 더하여, 보안이 필요한 소프트웨어나 하드웨어를 보안 영역에서만 동작하게 하도록 할 수 있다. 전자 장치REE(1810) 민감한 정보에 관련된 동작을 수행해야 하는 경우 TEE(1820)에 접근할 수 있는 API와 드라이버를 통해서만 TEE(1820)에 접근이 가능할 수 있다. TEE(1820)은 관련된 정보에 대한 제한된 데이터를 REE 에 넘겨줄 수 있다. TEE는 내부적으로 저장되는 데이터를 하드웨어 key(예를 들어, device root key(DRK))를 통해서 암호화할 수 있다. TEE 내부의 데이터는 별도의 복호화 과정이 없는 경우 REE에서 해석하지 못할 수 있다. According to an embodiment, the TEE may include a payment module 1821 , a security identifier processing module 1823 , a biometric information module 1825 , and an MST driver module 1827 . The electronic device 701 may store data requiring relatively high security through the TEE 1820 in a safe environment and perform a related operation. The TEE 1820 operates on an application processor of the electronic device, and the trusted TEE determined in the manufacturing operation of the electronic device may mean a security area within the electronic device. The electronic device may operate data requiring relatively high security through the TEE based on a secure hardware structure. The TEE may operate by dividing the application processor and the memory area into a normal area and a security area. In addition, software or hardware requiring security can be operated only in a secure area. When the electronic device REE 1810 needs to perform an operation related to sensitive information, access to the TEE 1820 may be possible only through an API and a driver that can access the TEE 1820 . The TEE 1820 may pass limited data on related information to the REE. TEE may encrypt internally stored data through a hardware key (eg, device root key (DRK)). Data inside the TEE may not be interpreted by the REE unless there is a separate decoding process.

TEE(1820)는 TEE 내부의 어플리케이션(예: 보안 어플리케이션(trusted application) 또는 결제 모듈 등)은 전자 장치 외부의 다른 전자 장치(예: 토큰 서비스 프로바이더(730)) 에 메시지를 전달할 수 있다. The TEE 1820 may transmit a message to an application inside the TEE (eg, a trusted application or a payment module) to another electronic device (eg, the token service provider 730 ) outside the electronic device.

한 실시예에 따르면, TEE는 trusted OS와 보안 어플리케이션 (trusted application)을 포함할 수 있다. 더하여, 보안에 관련된 암호화 모듈, 보안이 필요한 하드웨어에서 데이터를 수집할 수 있는 드라이버 등을 포함할 수 있다. 보안 어플리케이션(trusted application)은 결제 모듈을 포함할 수 있다. 더하여 결제 정보를 통신 모듈을 통해서 외부에 전달할 수 있다. 예를 들어, 결제 정보를 MST 드라이버를 통해MST 컨트롤러(MST제어모듈(830)에, 또는 NFC 드라이버를 통해 NFC 컨트롤러(NFC제어모듈(840))에 전달하여 POS에 전송할 수 있다. According to an embodiment, the TEE may include a trusted OS and a trusted application. In addition, it may include an encryption module related to security, a driver capable of collecting data from hardware requiring security, and the like. A trusted application may include a payment module. In addition, payment information may be transmitted to the outside through a communication module. For example, payment information may be transmitted to the MST controller (MST control module 830) through the MST driver, or to the NFC controller (NFC control module 840) through the NFC driver and transmitted to the POS.

한 실시예에 따르면, REE(1810)에 대한 무결성 여부를 확인할 수 있다. 전자 장치는REE의 이미지의 무결성 여부를 TEE(1820)에 저장할 수 있다. TEE를 지원하는 REE 부팅의 경우, 부팅의 순서는 부트로더가 실행되면, TEE를 부팅하고, REE를 부팅할 수 있다. TEE가 부팅이 되면 TEE의 내부에 REE의 무결성 정보를 확인하여 REE 부팅 후에 사용자에게 나타낼 수 있다. 한 실시예에 따르면, REE가 해킹 또는 루팅 등에 의해서 REE의 이미지가 훼손 되었을 경우 무결성에 문제가 있다고 결정할 수 있다. 무결성에 문제가 발생한 경우, TEE에 접근할 수 없도록 할 수 있다. 예를 들어, 결제 중계 모듈(1841)이 보안 환경 드라이버 모듈(1853)을 통해서 TEE에 메시지나 명령어를 전달하고자 할 때 TEE의 커널에서 이 메시지나 명령어를 무시하거나 메시지 수신을 거부할 수 있다. According to one embodiment, it is possible to check whether the integrity of the REE (1810). The electronic device may store the integrity of the image of the REE in the TEE 1820 . In the case of REE booting supporting TEE, the booting sequence is when the boot loader is executed, the TEE is booted, and the REE can be booted. When the TEE is booted, the integrity information of the REE inside the TEE can be checked and displayed to the user after the REE is booted. According to one embodiment, when the REE image is damaged by hacking or routing, it may be determined that there is a problem in integrity. In the event of an integrity problem, the TEE can be made inaccessible. For example, when the payment relay module 1841 tries to transmit a message or command to the TEE through the secure environment driver module 1853 , the kernel of the TEE may ignore the message or command or reject the message reception.

한 실시예에 따르면, 결제 모듈(1821)은 은행, 카드사(예: 비자 카드(Visa card) 또는 마스터 카드(Master card) 등) 등에서 설치하는 어플리케이션일 수 있다. 상기 결제 모듈은 적어도 하나 이상일 수 있다. 전자 장치에서 사용자가 결제 관리 모듈(1831)을 이용하여 결제 서버(720)(예: mobile application platform, payment gateway, token requestor, token service provider, trusted service manager, 또는 은행 서버 등) 또는 토큰 서비스 프로바이더(730)에 인터넷을 통하여 접속하여 상기 결제 모듈(1821)을 설치하겠다고 승인하면, 토큰 서비스 프로바이더(730)는 설치에 관련한 동작을 수행할 수 있다. 예를 들어, 결제 관리 모듈(1831)은 OCR을 통하여 플라스틱 카드의 카드 넘버와 유효기간 정보를 획득하여 상기 서버에 결제 모듈(1821)을 설치하기 위한 카드 등록 동작을 수행할 수 있다. 카드/은행 회사에 따라 각 토큰 서비스 프로바이더(730)의 연결 정보를 가지고 있는 결제 중계 모듈(1841)을 통하여 네트워크에 있는 상기 토큰 서비스 프로바이더(730)에 연결하여 설치 파일을 수신하고 결제 중계 모듈(1841)은 상기 정보를 TEE에 전달하여 결제 모듈(1821)을 설치하도록 할 수 있다. 이러한 과정은 provisioning 과정 또는 card registration 과정이라고 부를 수 있다. TEE의 결제 모듈(1821)은 여러 개의 모듈이 있을 수 있다. 각각의 결제 모듈들은 TEE 내부에서 데이터를 주고 받을 수 없으며, 격리된 형태로 구성될 수 있다. According to one embodiment, the payment module 1821 may be an application installed by a bank, a credit card company (eg, a Visa card or a Master card, etc.). The payment module may be at least one. In the electronic device, the user uses the payment management module 1831 to the payment server 720 (eg, mobile application platform, payment gateway, token requestor, token service provider, trusted service manager, or bank server) or token service provider When accessing 730 through the Internet and approval to install the payment module 1821, the token service provider 730 may perform an installation related operation. For example, the payment management module 1831 may obtain the card number and expiration date information of the plastic card through OCR and perform a card registration operation for installing the payment module 1821 in the server. Depending on the card/banking company, it connects to the token service provider 730 in the network through the payment relay module 1841 having connection information of each token service provider 730 to receive the installation file and receive the payment relay module 1841 may transmit the information to the TEE to install the payment module 1821 . This process can be called a provisioning process or a card registration process. The payment module 1821 of the TEE may have several modules. Each payment module cannot send and receive data within the TEE, and can be configured in an isolated form.

한 실시예에 따르면, 결제 모듈(1821)은 결제 서버(720)와 데이터 커뮤니케이션에 사용하기 위한 어플리케이션일 수 있다. 상기 결제 모듈은 신용 카드, 직불 카드(debit card), 멤버십 카드 등의 정보를 포함할 수 있다. 상기 결제 모듈은 상기 외부의 다른 전자 장치와 암호화를 통해 통신을 주고 받을 수 있다. 상기 암호화의 과정은 상기 결제 모듈을 전달한 카드 제조 회사에 따라 달라질 수 있다. 상기 서버는 상기 결제 모듈의 상태를 제어할 수 있다. 예를 들어, 상기 결제 모듈을 활성화(activation)하거나 임시로 정지(suspension)하거나, 재활성화(resume)하거나, 삭제(disposal)할 수 있다. According to one embodiment, the payment module 1821 may be an application used for data communication with the payment server 720 . The payment module may include information such as a credit card, a debit card, and a membership card. The payment module may transmit and receive communication with the external electronic device through encryption. The encryption process may vary depending on the card manufacturer that has delivered the payment module. The server may control the state of the payment module. For example, the payment module may be activated, temporarily suspended, reactivated, or disposed of.

한 실시예에 따르면, 결제 모듈(1821)은 카드 정보에 관련되는 정보를 저장할 수 있다. 예를 들어, 상기 카드 정보(예를 들어, PAN(primary account number))에 대응되는 토큰(token), token reference ID, PAN의 일부분, PAN product ID, token requestor ID, token assurance level, token assurance data, 토큰(token)의 유효기간, 암호화 key, 토큰 서비스 프로바이더(730)에서 제공한 값(예: OPT(one time password), 중 적어도 하나일 수 있다. 상기 토큰(token)은 토큰 서비스 프로바이더(730) 의 상태에 의해서 제어될 수 있다. 예를 들어, 토큰(token)은 활성화(activation)하거나 임시로 정지(suspension)하거나, 재활성화(resume)하거나, 삭제(disposal)할 수 있다. 상기 토큰(token)은 기본적으로 카드 정보(예: PAN)에 대응하는 정적인(static) 정보일 수 있다. According to an embodiment, the payment module 1821 may store information related to card information. For example, a token (token) corresponding to the card information (eg, primary account number (PAN)), token reference ID, part of PAN, PAN product ID, token requestor ID, token assurance level, token assurance data , the validity period of a token, an encryption key, and a value (eg, one time password (OPT)) provided by the token service provider 730. The token is the token service provider It may be controlled by the state of 730. For example, a token may be activated, temporarily suspended, resumed, or disposed of. A token may be basically static information corresponding to card information (eg, PAN).

한 실시예에 따르면, 결제 모듈(1821)은 결제를 수행하는 경우 결제할 카드를 결정할 수 있다. 예를 들어, 사용자의 선택에 따라 적어도 하나 이상의 결제 관리 모듈(1831)에서 사용자가 선택한 카드에 대응하는 결제 모듈이 결정될 수 있다. 상기 결정된 카드에 대해 상기 결제 관리 모듈은 결제 중계 모듈(1841)에 전달할 수 있다. 상기 결제 중계 모듈은 결정된 카드 정보에 대해서 보안 환경 드라이버 모듈(1853)을 통해 상기 결제 모듈(1821)에 전달할 수 있다. 상기 결제 모듈은 보유하고 있는 카드 정보들 중에서 실제 결제에 이용되는 카드 리스트를 관리할 수 있다. 상기 결정된 카드 정보에 기반하여 상기 실제 결제에 이용되는 카드 리스트를 변경할 수 있다. 상기 변경은 결정된 카드 정보에 대해서 카드 리스트에서 우선 순위를 높이거나, 결정된 카드 정보 외의 다른 카드 정보는 삭제하는 방법일 수 있다. According to an embodiment, the payment module 1821 may determine a payment card when performing payment. For example, a payment module corresponding to a card selected by the user in at least one payment management module 1831 may be determined according to the user's selection. The payment management module may transmit the determined card to the payment relay module 1841 . The payment relay module may transmit the determined card information to the payment module 1821 through the secure environment driver module 1853 . The payment module may manage a list of cards used for actual payment from among the card information held. The card list used for the actual payment may be changed based on the determined card information. The change may be a method of increasing the priority of the determined card information in the card list or deleting card information other than the determined card information.

한 실시예에 따르면, 결제를 수행하는 경우 카드 정보에 관련되는 정보에 기반하여 결제 모듈은 결제에 이용되는 정보를 만들 수 있다. 표 3을 참조하면, 결제에 이용되는 정보는 token, token reference ID, PAN의 일부분, PAN product ID, token requestor ID, token assurance level, token assurance data, token의 유효기간, token cryptogram, POS entry mode, token requestor indicator 등일 수 있다. According to an embodiment, when performing payment, the payment module may create information used for payment based on information related to card information. Referring to Table 3, information used for payment includes token, token reference ID, part of PAN, PAN product ID, token requestor ID, token assurance level, token assurance data, validity period of token, token cryptogram, POS entry mode, It may be a token requestor indicator or the like.

Field NameField Name CommentComment Payment TokenPayment Token The Payment Token number refers to a surrogate value for a PAN that is a 13 to 19-digit numeric value that passes basic validation rules of an account number, including the Luhn check digit. Payment Tokens are generated within a BIN range or Card range that has been designated as a Token BIN Range and flagged accordingly in all appropriate BIN tables. Payment Tokens are generated such that they will not have the same value as or conflict with a real PAN.
Transaction messages
The Payment Token number will be passed through the authorization, capture, clearing, and exception messages in lieu of the PAN.
The Payment Token number may optionally be passed from the Token Service Provider to the Card Issuer as part of the authorization request.
The Payment Token number refers to a surrogate value for a PAN that is a 13 to 19-digit numeric value that passes basic validation rules of an account number, including the Luhn check digit. Payment Tokens are generated within a BIN range or Card range that has been designated as a Token BIN Range and flagged accordingly in all appropriate BIN tables. Payment Tokens are generated such that they will not have the same value as or conflict with a real PAN.
Transaction messages
The Payment Token number will be passed through the authorization, capture, clearing, and exception messages in lieu of the PAN.
The Payment Token number may optionally be passed from the Token Service Provider to the Card Issuer as part of the authorization request.
Token Expiry DateToken Expiry Date The expiration date of the Payment Token that is generated by and maintained in the Token Vault. The Token Expiry Date field carries a 4-digit numeric value that is consistent with the ISO 8583 format.
Transaction messages
The Token Expiry Date is passed in lieu of PAN Expiry Date.
The value is replaced by the Token Service Provider with the PAN Expiry Date which is then passed to the Card Issuer as part of the authorisation request.
The expiration date of the Payment Token that is generated by and maintained in the Token Vault. The Token Expiry Date field carries a 4-digit numeric value that is consistent with the ISO 8583 format.
Transaction messages
The Token Expiry Date is passed in lieu of PAN Expiry Date.
The value is replaced by the Token Service Provider with the PAN Expiry Date which is then passed to the Card Issuer as part of the authorization request.
Last 4 Digits of PANLast 4 Digits of PAN The last four digits of the PAN to be provided optionally through the Acquirer to the Merchant for customer service usage such as being printed on the consumer receipt.The last four digits of the PAN to be provided optionally through the Acquirer to the Merchant for customer service usage such as being printed on the consumer receipt. PAN Product IDPAN Product ID The last four digits of the PAN to be provided optionally through the Acquirer to the Merchant for customer service usage such as being printed on the consumer receipt.The last four digits of the PAN to be provided optionally through the Acquirer to the Merchant for customer service usage such as being printed on the consumer receipt. PAN Product IDPAN Product ID The PAN Product ID is an optional identifier used for determining the type of Card product that was tokenized. It may be included in cases where transparency of this information is necessary.
Transaction messages
The PAN Product ID may optionally be passed from the Token Service Provider to the Acquirer as part of the authorisation response.
The PAN Product ID is an optional identifier used for determining the type of Card product that was tokenized. It may be included in cases where transparency of this information is necessary.
Transaction messages
The PAN Product ID may optionally be passed from the Token Service Provider to the Acquirer as part of the authorization response.
POS Entry ModePOS Entry Mode This specification uses the POS Entry Mode field to indicate the mode through which the Payment Token is presented for payment. Each Payment Network will define and publish any new POS Entry Mode values as part of its existing message specifications and customer notification procedures.
Transaction messages
POS Entry Mode is an existing field that will be passed through the authorisation, capture, clearing, and exception messages.
This specification uses the POS Entry Mode field to indicate the mode through which the Payment Token is presented for payment. Each Payment Network will define and publish any new POS Entry Mode values as part of its existing message specifications and customer notification procedures.
Transaction messages
POS Entry Mode is an existing field that will be passed through the authorization, capture, clearing, and exception messages.
Token Requestor IDToken Requestor ID This value uniquely identifies the pairing of Token Requestor with the Token Domain. Thus, if a given Token Requestor needs Tokens for multiple domains, it will have multiple Token Requestor IDs, one for each domain. It is an 11-digit numeric value assigned by the Token Service Provider and is unique within the Token Vault:
Positions 1-3: Token Service Provider Code, unique to each Token Service Provider
Positions 4-11: Assigned by the Token Service Provider for each requesting entity and Token Domain
Transaction messages
Token Requestor ID can be optionally passed through the authorisation, capture, clearing, and exception messages.
This value uniquely identifies the pairing of Token Requestor with the Token Domain. Thus, if a given Token Requestor needs Tokens for multiple domains, it will have multiple Token Requestor IDs, one for each domain. It is an 11-digit numeric value assigned by the Token Service Provider and is unique within the Token Vault:
Positions 1-3: Token Service Provider Code, unique to each Token Service Provider
Positions 4-11: Assigned by the Token Service Provider for each requesting entity and Token Domain
Transaction messages
Token Requestor ID can be optionally passed through the authorization, capture, clearing, and exception messages.
Token Assurance LevelToken Assurance Level Token Assurance Level is a value that allows the Token Service Provider to indicate the confidence level of the Payment Token to PAN / Cardholder binding. It is determined as a result of the type of ID&V performed and the entity that performed it.
The Token Assurance Level is set when issuing a Payment Token and may be updated if additional ID&V is performed. It is a two-digit value ranging from 00 which indicates the Payment Token has no ID&V that has been performed to a value of 99 indicating the highest possible assurance. The specific method to produce the value is defined by the Token Service Provider.
Transaction messages
Token Assurance Level will be provided by the Token Service Provider.
The value may be optionally passed to the Card Issuer as part of the authorisation request.
The value may optionally be passed to the Acquirer / Merchant in the authorisation response, capture, clearing, and exception processing messages.
Token Assurance Level is a value that allows the Token Service Provider to indicate the confidence level of the Payment Token to PAN / Cardholder binding. It is determined as a result of the type of ID&V performed and the entity that performed it.
The Token Assurance Level is set when issuing a Payment Token and may be updated if additional ID&V is performed. It is a two-digit value ranging from 00 which indicates the Payment Token has no ID&V that has been performed to a value of 99 indicating the highest possible assurance. The specific method to produce the value is defined by the Token Service Provider.
Transaction messages
Token Assurance Level will be provided by the Token Service Provider.
The value may be optionally passed to the Card Issuer as part of the authorization request.
The value may optionally be passed to the Acquirer / Merchant in the authorization response, capture, clearing, and exception processing messages.
Token Assurance DataToken Assurance Data This data provided by the Token Service Provider contains supporting information for the Token Assurance Level.
Transaction messages
This data may be optionally passed to the Card Issuer as part of the authorisation request.
This data provided by the Token Service Provider contains supporting information for the Token Assurance Level.
Transaction messages
This data may be optionally passed to the Card Issuer as part of the authorization request.
Token CryptogramToken Cryptogram This cryptogram is uniquely generated by the Token Requestor to validate authorised use of the Token. The cryptogram will be carried in different fields in the transaction message based on the type of transaction and associated use case:
NFC contactless transactions will carry the Token Cryptogram in existing chip data fields.
Other transactions, such as those originating from a digital wallet, may carry the Token Cryptogram in an existing field.
Transaction messages
The Token Cryptogram will be passed in the authorisation request and validated by the Token Service Provider and / or the Card Issuer.
This cryptogram is uniquely generated by the Token Requestor to validate authorized use of the Token. The cryptogram will be carried in different fields in the transaction message based on the type of transaction and associated use case:
NFC contactless transactions will carry the Token Cryptogram in existing chip data fields.
Other transactions, such as those originating from a digital wallet, may carry the Token Cryptogram in an existing field.
Transaction messages
The Token Cryptogram will be passed in the authorization request and validated by the Token Service Provider and / or the Card Issuer.
Token Request IndicatorToken Request Indicator An indicator used to indicate that the message is intended to authenticate the Cardholder during a Payment Token Request.An indicator used to indicate that the message is intended to authenticate the Cardholder during a Payment Token Request.

한 실시예에 따르면, 결제 모듈(1821)은 토큰 서비스 프로바이더(730) 또는 결제 서버(720)(예: 결제 서비스 서버 또는 토큰 요구자 서버)를 통해서 토큰 크립토그램(token cryptogram)을 생성할 수 있는 key(예를 들어, limited used key(LUK) 또는 single used key)를 전달 받을 수 있다. 상기 key는 데이터 네트워크 또는 SMS 등을 통해서 전달받을 수 있다. According to one embodiment, the payment module 1821 may generate a token cryptogram through a token service provider 730 or a payment server 720 (eg, a payment service server or a token requestor server). A key (eg, a limited used key (LUK) or a single used key) may be delivered. The key may be delivered through a data network or SMS.

상기 key는 전자 장치와 토큰 서비스 프로바이더(730)에 보안 채널을 이용하여 주고 받을 수 있다. 상기 보안 채널은 상기 key와는 다른 별도의 key(예를 들어, public key, private key를 이용하는 방법)에 의해서 주고 받는 데이터를 암호화하는 논리적 채널일 수 있다. 더하여, 상기 결제 모듈 내부에 토큰 크립토그램을 생성할 수 있는 key를 생성하는 모듈을 포함할 수 있다. 전자 장치는 상기 key를 생성하는 모듈을 상기 토큰 서비스 프로바이더(730) 또는 결제 서버(720)를 통해서 전달받을 수 있다. 또는 전자 장치장치의 제조 동작에서 포함될 수 있다. 전자 장치The key may be exchanged between the electronic device and the token service provider 730 using a secure channel. The secure channel may be a logical channel for encrypting data exchanged by a key different from the key (eg, a method using a public key or a private key). In addition, a module for generating a key capable of generating a token cryptogram may be included in the payment module. The electronic device may receive the module for generating the key through the token service provider 730 or the payment server 720 . Alternatively, it may be included in the manufacturing operation of the electronic device. electronic device

한 실시예에 따르면, 결제 모듈은 상기 토큰 크립토그램을 생성할 수 있는 key(예를 들어 limited used key 또는 single used key)를 이용하여 토큰 크립토그램을 생성할 수 있다. 결제 모듈은 매 거래 또는 특정 횟수의 거래, 특정 시간 내의 거래 등 정해진 규칙에 따라 다른 key를 사용할 수 있다. 토큰 서비스 프로바이더(730)는 상기 key와 쌍(pair)으로 된 key를 소유할 수 있다. 토큰 서비스 프로바이더(730)는 상기 쌍으로 된 key를 통해서 암호화된 토큰 크립토그램을 복호화할 수 있다.According to an embodiment, the payment module may generate a token cryptogram using a key (eg, a limited used key or a single used key) capable of generating the token cryptogram. The payment module can use a different key according to a set rule, such as every transaction, a specific number of transactions, or a transaction within a specific time. The token service provider 730 may own a key paired with the key. The token service provider 730 may decrypt the encrypted token cryptogram through the paired key.

한 실시예에 따르면, 결제 모듈(1821)은 토큰 크립토그램을 생성할 수 있는 key를 이용하여 토큰 크립토그램을 생성할 수 있다. 구체적인 내용은 도 46에서 후술한다. According to an embodiment, the payment module 1821 may generate a token cryptogram using a key capable of generating a token cryptogram. Details will be described later with reference to FIG. 46 .

한 실시예에 따르면, 결제를 수행하는 경우, 전자 장치는 결제 어플리케이션에서 결제를 수행하겠다는 메시지를 결제 중계 모듈(1841)에 전달할 수 있다. 결제 중계 모듈(1841)은 MST로 결제하거나 NFC로 결제할 지를 결정할 수 있다. MST로 결제하는 경우, 결제 수행에 필요한 정보(예를 들어, token, token cryptogram, 결제 인증 데이터, PAN 정보의 일부, 토큰(token) 유효 기간 등)을 TEE의 결제 모듈에서 획득하여 TEE 내의 MST 드라이버 모듈(1827)에 전달할 수 있다. MST 드라이버 모듈(1827)은 상기 정보를 MST 컨트롤러에 전달할 수 있다. 상기 MST 컨트롤러는 상기 정보를 결제 수행하기 위해 송신할 수 있다. 또한, MST 드라이버 모듈(1827)은 도 32 내지 도 35의 MST 드라이버 모듈의 기능을 포함할 수 있다.According to an embodiment, when performing payment, the electronic device may transmit a message indicating that payment is to be performed in the payment application to the payment relay module 1841 . The payment relay module 1841 may determine whether to pay with MST or NFC. In the case of payment with MST, the MST driver in the TEE acquires the information necessary for payment (for example, token, token cryptogram, payment authentication data, part of PAN information, token validity period, etc.) from the payment module of the TEE. module 1827 . The MST driver module 1827 may transmit the information to the MST controller. The MST controller may transmit the information to perform payment. In addition, the MST driver module 1827 may include the functions of the MST driver module of FIGS. 32 to 35 .

한실시예에 따르면, 상기 정보를 결제 어플리케이션(1830)으로 전달할 수 있다. According to one embodiment, the information may be transmitted to the payment application 1830 .

한 실시예에 따르면, 전자 장치는NFC로 결제하는 경우 상기 결제 수행에 필요한 정보를 TEE의 NFC 드라이버 모듈에 전달할 수 있다. NFC드라이버 모듈은 NFC 컨트롤러에 상기 결제 수행에 필요한 정보를 전달할 수 있다. NFC 컨트롤러는 상기 정보를 기반하여 결제를 수행할 수 있다. According to an embodiment, when paying by NFC, the electronic device may transmit information necessary for performing the payment to the NFC driver module of the TEE. The NFC driver module may transmit information necessary for performing the payment to the NFC controller. The NFC controller may perform payment based on the information.

한 실시예에 따르면, 전자 장치는 NFC로 결제하는 경우 POS에서 지정된 메시지가 전달되는 경우 결제를 수행할 수 있다. 예를 들어, NFC 컨트롤러는 POS(750)에서 지정된 메시지가 전달되어 NFC 모듈에서 감지하는 경우 이를 NFC 드라이버 모듈에게 전달할 수 있다. NFC 드라이버 모듈은 POS로부터 메시지가 전달 되었음을 REE의 결제 중계 모듈(1841)에 전달할 수 있다. 상기 결제 중계 모듈(1841)은 결제를 수행하기 위해 토큰 크립토그램을 생성할 수 있다. 상기 토큰 크립토그램은 토큰 크립토그램을 생성할 수 있는 key(예를 들어, limited used key 또는 single used key)를 이용하여 TEE의 결제 모듈(1821)에서 생성할 수 있다. 상기 생성된 토큰 크립토그램은 REE에 전달될 수 있다. 상기 결제 중계 모듈(1841)은 네트워크 모듈(예를 들어, NFC 관련 host card emulation 모듈)을 통해 상기 토큰과 토큰 크립토그램을 포함하는 결제 관련 정보를 전달할 수 있다. 상기 네트워크 모듈은 NFC 모듈을 통하여 상기 결제 관련 정보를 POS로 전달할 수 있다. According to an embodiment, when a payment is made through NFC, the electronic device may perform payment when a specified message is transmitted from the POS. For example, the NFC controller may deliver a designated message from the POS 750 to the NFC driver module when the NFC module detects it. The NFC driver module may transmit that the message has been delivered from the POS to the payment relay module 1841 of the REE. The payment relay module 1841 may generate a token cryptogram to perform payment. The token cryptogram may be generated in the payment module 1821 of the TEE using a key (eg, a limited used key or a single used key) capable of generating a token cryptogram. The generated token cryptogram may be transmitted to the REE. The payment relay module 1841 may transmit payment related information including the token and token cryptogram through a network module (eg, an NFC-related host card emulation module). The network module may transmit the payment related information to the POS through the NFC module.

한 실시예에 따르면, 상기 결제 모듈은 상기 토큰, 토큰 유효 기간, token requestor ID, 토큰 크립토그램등을 포함하는 정보를 외부 전자 장치에 전달할 수 있다. 예를 들어, 상기 결제 모듈은 상기 결제 정보를 MST 통신 모듈을 통해서 POS(point of sales)(750)에 전달할 수 있다. 더하여 NFC 통신 모들을 통해서 POS에 전달할 수 있다. According to an embodiment, the payment module may transmit information including the token, token validity period, token requestor ID, token cryptogram, and the like to the external electronic device. For example, the payment module may transmit the payment information to a point of sales (POS) 750 through the MST communication module. In addition, it can be transmitted to the POS through NFC communication modules.

한 실시예에 따르면, 상기 결제 모듈은 POS(750)와 결제 동작에서 지정된 정보를 송수신할 수 있다. NFC의 경우 POS에서 먼저 정보를 수신하여 수행할 수 있다. MST의 경우에는 사용자의 명시적 입력 또는 전자 장치 내부 알고리즘에 기반하여 POS에 토큰과 토큰 크립토그램을 포함하는 결제 관련 정보를 전송할 수 있다. According to an embodiment, the payment module may transmit/receive information specified in the payment operation to and from the POS 750 . NFC can be performed by first receiving information from the POS. In the case of MST, payment-related information including a token and token cryptogram may be transmitted to the POS based on an explicit input of a user or an algorithm inside the electronic device.

한 실시예에 따르면, 생체 정보 모듈(1825)은 전자 장치를 사용하는 사용자의 생체 정보를 저장하고 생체 센서로부터 받아들이는 정보와 비교하여 사용자를 인증할 수 있다. 상기 생체 정보 모듈(1825)로는 지문 정보 모듈, 홍채 정보 모듈 등이 있을 수 있다. 상기 생체 정보 모듈은 생체 센서(240I)로부터 정보를 수집할 수 있다. 결제 어플리케이션에서 사용자의 생체 정보를 인증하라는 내용을 디스플레이(160)에 보여주면, 사용자는 생체 센서를 통해서 생체 정보를 전달할 수 있다. 상기 결제 어플리케이션의 인증 모듈은 생체 정보 관리 모듈을 통하여 생체 정보 드라이버 모듈(1851)에 생체 정보를 수집하라는 메시지를 전달할 수 있다. 상기 생체 정보 드라이버 모듈은 생체 센서에 상기 메시지를 전달할 수 있다. 상기 생체 센서는 생체 정보를 수집하여 TEE에 전달할 수 있다. 상기 TEE의 생체 정보 모듈은 상기 저장된 사용자의 생체 정보와 비교하여 인증 여부를 보안 환경 드라이버 모듈을 통해 REE의 생체 정보 관리 모듈을 통하여 결제 어플리케이션의 인증 모듈에 전달할 수 있다. 상기 결제 어플리케이션은 상기 인증 여부를 디스플레이에 보여줄 수 있다. 상기 사용자의 생체 정보는 TEE 내에 저장되거나, 암호화된 상태로 REE에 저장되거나, 보안 모듈(236)(예: eSE)에 저장될 수 있다. According to an embodiment, the biometric information module 1825 may store biometric information of a user using the electronic device and authenticate the user by comparing it with information received from a biometric sensor. The biometric information module 1825 may include a fingerprint information module, an iris information module, and the like. The biometric information module may collect information from the biometric sensor 240I. When the payment application shows on the display 160 to authenticate the user's biometric information, the user can transmit the biometric information through the biometric sensor. The authentication module of the payment application may transmit a message to collect biometric information to the biometric information driver module 1851 through the biometric information management module. The biometric information driver module may transmit the message to the biosensor. The biosensor may collect biometric information and transmit it to the TEE. The biometric information module of the TEE compares the stored user's biometric information to the authentication module of the payment application through the security environment driver module and the biometric information management module of the REE. The payment application may show whether the authentication is performed on a display. The user's biometric information may be stored in the TEE, stored in the REE in an encrypted state, or stored in the security module 236 (eg, eSE).

한 실시예에 따르면, 보안 식별자 처리 모듈(1823)은 전자 장치에서 필요하거나 결제에 관련된 인증에 관련된 입력값을 사용자 입력을 통해 획득할 수 있다. 예를 들어, 상기 입력값은 결제 수행 중에 PIN(personal identification number)일 수 있다. 더하여 상기 입력값은 카드에 관련된 정보일 수 있다. 예를 들어 PAN(primary account number), 카드 유효 기간(expiration date) 또는 CVV(card verification value) 등일 수 있다. 더하여 Chip PIN 또는 ATM(Automated teller machine) PIN 등일 수 있다. 상기 보안 식별자 처리 모듈(1823)은 어플리케이션의 형태로 표시될 수 있다. 상기 보안 식별자 처리 모듈의 어플리케이션이 화면 상에 그려지기 위해 필요한 그래픽 라이브러리는 TEE(1820)에 저장되어 있을 수 있다. 상기 TEE 저장되어 있는 그래픽 라이브러리는 REE(1810)에 있는 그래픽 라이브러리와 다를 수 있다. 상기 보안 식별자 처리 모듈은 PIN 등의 입력 값에 의한 사용자 인증을 수행하고 그 결과를 결제 중계 모듈(1841)을 통하여 결제 관리 모듈(1831)에 전달할 수 있다. 한 실시예에 따르면, 보안 환경 중계 모듈(1846)이 보안 환경 드라이버 모듈(1853)을 통해 전달한 암호화된 일회성 난수(예: nonce)를 수신할 수 있다. 보안 식별자 처리 모듈(1823)은 상기 사용자 입력으로 획득한 입력값과 상기 일회성 난수를 TEE 내의 암호화 key(예를 들어, device root key)를 이용하여 암호화하여 보안 환경 중계 모듈(1846)에 전달할 수 있다. 상기 보안 환경 중계 모듈은 보안 환경 드라이버 모듈(1853)을 통하여 결제 모듈(1821)에 암호화된 상기 입력값과 일회성 난수를 전달할 수 있다. 상기 결제 모듈은 상기 입력값과 일회성 난수를 TEE 내의 하드웨어 키를 이용하여 복호화 할 수 있다. 상기 결제 모듈은 상기 일회성 난수의 생성했던 값과 수신한 값이 같다는 것을 이용하여 REE를 통하여 전달된 상기 입력값이 무결하다는 것을 확인할 수 있다. 상기 결제 모듈은 입력값이 무결하다는 것에 기반하여 입력값을 통해 사용자 인증을 수행할 수 있다. 상기 결제 모듈은 사용자 인증을 통하여 결제를 수행할 수 있다. 한 실시예에 따르면, 팩토리 리셋은 전자 장치의 소프트웨어 이미지를 기존 공장에서 출하한 상태로 되돌리는 동작일 수 있다. 상기 동작은 어플리케이션을 통해 사용자의 명시적 동작으로 수행될 수 있다. 더하여 지정된 조건(예: 시스템이 해킹되었다고 판단되는 경우)에 상기 해킹을 판단하여 모니터링하는 모듈이 팩토리 리셋을 수행할 수 있다. 상기 동작이 수행되는 경우, 전자 장치에 저장된 데이터들이 리셋이 되기 때문에, 사용자의 결제 관련 정보 역시 리셋될 수 있다. 상기 결제 관련 정보에 대해서 결제 서버(720)에서 저장될 수 있다. 사용자가 결제 서버(720)에 계정을 기반으로 접속하는 경우, 상기 결제 관련 정보에 기반하여 다시 카드 등록과 결제 모듈을 설치하는 동작을 수행하도록 할 수 있다. 리셋이 되는 경우, 전자 장치 내에 저장된 결제 관련 모듈은 상기 결제 서버(720)를 통해서 토큰 서비스 프로바이더(730)에 알려 비활성화하도록 할 수 있다. 전자 장치의 네트워크가 비활성화 된 경우에는, 상기 알리는 동작을 수행하지 못할 수 있다. 이 경우에는 전자 장치가 팩토리 리셋을 수행한 후, 상기 결제 서버(720)에 계정을 기반으로 접속할 수 있다. 전자 장치는 상기 결제 서버(720)를 통하여 기 등록된 카드 리스트를 확인할 수 있고, 결제 서버(720)를 통하여 토큰 서비스 프로바이더(730)에 상기 기 등록된 전자 장치의 카드 모듈 또는 token 등을 비활성화할 수 있다. 더하여, 결제 서버(720)의 카드 리스트를 기반으로 전자 장치는 카드 등록을 다시 수행하여 결제 모듈 또는 token 등을 수신받을 수 있다. According to an embodiment, the security identifier processing module 1823 may obtain an input value necessary for an electronic device or related to payment-related authentication through a user input. For example, the input value may be a personal identification number (PIN) during payment. In addition, the input value may be card-related information. For example, it may be a primary account number (PAN), a card expiration date, or a card verification value (CVV). In addition, it may be a Chip PIN or an automated teller machine (ATM) PIN. The security identifier processing module 1823 may be displayed in the form of an application. A graphic library necessary for the application of the security identifier processing module to be drawn on the screen may be stored in the TEE 1820 . The graphic library stored in the TEE may be different from the graphic library in the REE 1810 . The security identifier processing module may perform user authentication based on an input value such as a PIN and transmit the result to the payment management module 1831 through the payment relay module 1841 . According to an embodiment, the secure environment relay module 1846 may receive an encrypted one-time random number (eg, nonce) transmitted through the secure environment driver module 1853 . The security identifier processing module 1823 may encrypt the input value obtained as the user input and the one-time random number using an encryption key (eg, device root key) in the TEE and transmit it to the secure environment relay module 1846 . . The secure environment relay module may transmit the encrypted input value and the one-time random number to the payment module 1821 through the secure environment driver module 1853 . The payment module may decrypt the input value and the one-time random number using a hardware key in the TEE. The payment module may confirm that the input value transmitted through the REE is intact by using that the value generated and the received value of the one-time random number are the same. The payment module may perform user authentication through the input value based on the integrity of the input value. The payment module may perform payment through user authentication. According to an embodiment, the factory reset may be an operation of returning a software image of the electronic device to a state shipped from an existing factory. The operation may be performed as an explicit operation of the user through the application. In addition, the module that determines and monitors the hacking under a specified condition (eg, when it is determined that the system has been hacked) may perform a factory reset. When the operation is performed, since data stored in the electronic device is reset, the user's payment related information may also be reset. The payment-related information may be stored in the payment server 720 . When the user accesses the payment server 720 based on an account, an operation of registering a card and installing a payment module may be performed again based on the payment-related information. When reset, the payment related module stored in the electronic device may notify the token service provider 730 through the payment server 720 to deactivate it. When the network of the electronic device is deactivated, the notification operation may not be performed. In this case, after the electronic device performs a factory reset, the electronic device may access the payment server 720 based on an account. The electronic device may check a list of cards registered in advance through the payment server 720 , and deactivate the card module or token of the electronic device registered in the token service provider 730 through the payment server 720 . can do. In addition, based on the card list of the payment server 720 , the electronic device may receive a payment module or token by performing card registration again.

도 19는 다양한 실시예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시하고 있다.19 illustrates an interface between internal components of an electronic device according to various embodiments of the present disclosure.

상기 도 19를 참조하면, 제 1 모드의 AP(1901) 및 제2 모드의 AP(1903)는 상기 도 12의 프로세서(1200)에 대응하고, 제1 통신모듈(1905)은 상기 도 12의 제 1 통신모듈 (1210)에 대응하고, 제 2 통신모듈(1907)는 상기 도 12의 제 2 통신모듈 (1212)에 대응할 수 있다. 여기서, 제 1 모드의 AP(1901)는 노멀 영역(예: REE)에서 동작하는 프로세서(1200)일 수 있고, 제 2 모드의 AP(1903)는 보안영역(secure world)(예: TEE)에서 동작하는 프로세서(1200)일 수 있다. 다양한 실시예에 따르면, 제 1 모드의 AP(1901)와 제 2 모드의 AP(1103)은 하나의 프로세서이거나 또는 분리된 구성의 프로세서일 수 있다.Referring to FIG. 19, the AP 1901 in the first mode and the AP 1903 in the second mode correspond to the processor 1200 of FIG. 12, and the first communication module 1905 is the first communication module 1905 in FIG. It may correspond to the first communication module 1210, and the second communication module 1907 may correspond to the second communication module 1212 of FIG. 12 . Here, the AP 1901 in the first mode may be the processor 1200 operating in a normal area (eg, REE), and the AP 1903 in the second mode operates in a secure world (eg, TEE). It may be an operating processor 1200 . According to various embodiments, the AP 1901 of the first mode and the AP 1103 of the second mode may be one processor or a processor of a separate configuration.

다양한 실시예에서, 제 1 통신 모듈(1905)은 MST 모듈(예: MST 모듈(810))일 수 있고, 제 2 통신 모듈(1907)은 NFC 모듈(예: NFC 모듈(820))일 수 있다. 보안 모듈(1909)은 내장형 보안 요소(eSE)일 수 있다.In various embodiments, the first communication module 1905 may be an MST module (eg, the MST module 810 ), and the second communication module 1907 may be an NFC module (eg, the NFC module 820 ). . The secure module 1909 may be an embedded secure element (eSE).

상기 제 1 통신모듈(1905) 및 상기 제 2 통신모듈(1907)는 기능적으로 제 2 모드의 AP(1903)에 연결되어 있고, 보안 모듈(1909)은 제 2 통신모듈(1907)에 전기적으로 연결되거나 상기 제 2 모드의 AP(1903)에 전기적으로 연결될 수 있다.The first communication module 1905 and the second communication module 1907 are functionally connected to the AP 1903 of the second mode, and the security module 1909 is electrically connected to the second communication module 1907 or may be electrically connected to the AP 1903 of the second mode.

상기 제 1 모드의 AP(1901)는 노멀 영역에서 해당 애플리케이션을 실행하여 처리할 수 있다. The AP 1901 in the first mode may execute and process the corresponding application in the normal area.

상기 제 2 모드의 AP(1903)는 보안이 요구되는 애플리케이션들(예: DRM(digital rights management), 결제 애플리케이션, 기업 정보를 처리하는 애플리케이션, 은행업무 애플리케이션)을 보안영역에서 실행하여 처리할 수 있다. 상기 보안영역에서 안전한 주변장치와의 인터페이싱을 포함해 모든 보안 관련 기능이 수행될 수 있다. 도 19에서 상기 제 1 모드의 AP(1901)와 상기 제 2 모드의 AP(1903)를 구분하여 나타내었지만, 상기 제 1 모드의 AP(1901)와 상기 제 2 모드의 AP(1903)는 하나의 프로세서로 구현 가능하며, 노멀 영역과 보안영역은 시분할(time sharing)로 동작할 수 있다.The AP 1903 of the second mode may execute and process applications requiring security (eg, digital rights management (DRM), payment application, business information processing application, banking application) in the security area. . All security-related functions, including interfacing with a secure peripheral device, may be performed in the security area. 19, the AP 1901 of the first mode and the AP 1903 of the second mode are shown separately, but the AP 1901 of the first mode and the AP 1903 of the second mode are one It can be implemented by a processor, and the normal area and the secure area can operate by time sharing.

상기 제 1 모드의 AP(1901)는 제 1 인증서비스 트랜잭션을 검출하고, 인증서비스 트랜잭션 명령을 상기 제 2 모드의 AP(1903)로 전달할 수 있다.The AP 1901 in the first mode may detect a first authentication service transaction and transmit an authentication service transaction command to the AP 1903 in the second mode.

상기 제 2 모드의 AP(1903)는 인증서비스 트랜잭션 명령 및 제 1 인증정보(1909_1)를 상기 제 1 통신모듈(1905)로 전달할 수 있다. 상기 제 2 모드의 AP(1903)는 보안 모듈(1909)에 접근하여 상기 제 1 인증정보(1909-1)를 획득할 수 있다. 또한, 상기 제 2 모드의 AP(1903)는 상기 제 2 통신모듈(1907)로부터 상기 제 2 인증정보(1909-2)에 대응하는 인증결과를 제공받아 디스플레이 모듈(1208)에 디스플레이하도록 제어할 수 있다.The AP 1903 in the second mode may transmit an authentication service transaction command and first authentication information 1909_1 to the first communication module 1905 . The AP 1903 in the second mode may acquire the first authentication information 1909 - 1 by accessing the security module 1909 . In addition, the AP 1903 in the second mode may receive the authentication result corresponding to the second authentication information 1909-2 from the second communication module 1907 and control it to be displayed on the display module 1208. have.

구현에 따라서, 상기 제 2 모드의 AP(1903)는 상기 제 2 통신모듈(1907)로부터 상기 제 2 인증정보(1909-2)를 요청받을 시, 상기 보안 모듈(1909)으로부터 상기 제 2 인증정보(1909-2)를 획득하여 상기 제 2 통신모듈(1907)로 전달할 수 있다.According to implementation, when the AP 1903 in the second mode receives a request for the second authentication information 1909-2 from the second communication module 1907, the second authentication information from the security module 1909 (1909-2) may be acquired and transmitted to the second communication module 1907.

상기 제 1 통신모듈(1905)는 상기 제 2 모드의 AP(1903)로부터 인증서비스 트랜잭션 명령 및 상기 제 1 인증정보(1909-1)를 수신할 시, 상기 제 1 통신모듈(1905)는 상기 제 1 인증정보(1909-1)를 처리하여 상기 POS 기기로 송신할 수 있다.When the first communication module 1905 receives an authentication service transaction command and the first authentication information 1909-1 from the AP 1903 in the second mode, the first communication module 1905 receives the first authentication information 1909-1. 1 The authentication information 1909-1 may be processed and transmitted to the POS device.

상기 제 2 통신모듈(1907)는 상기 전자장치가 POS 기기에 근접하거나 접속될 시, 제 2 인증서비스 트랜잭션을 검출하고, 상기 보안 모듈(1909)으로부터 상기 제 2 인증정보(1909_2)를 획득하고, 상기 제 2 인증정보(1909-2)를 처리하여 상기 POS 기기로 송신할 수 있다. 또한, 상기 제 2 통신모듈(1907)는 인증결과에 대한 정보를 피드백 받아 그 결과를 상기 제 2 모드의 AP(1903)로 제공할 수 있다.The second communication module 1907 detects a second authentication service transaction when the electronic device approaches or is connected to the POS device, and obtains the second authentication information 1909_2 from the security module 1909, The second authentication information 1909-2 may be processed and transmitted to the POS device. Also, the second communication module 1907 may receive feedback on the authentication result and provide the result to the AP 1903 of the second mode.

구현에 따라서, 상기 제 2 통신모듈(1907)는 상기 전자장치가 POS 기기에 근접하거나 접속될 시, 상기 제 2 모드의 AP(1903)에 상기 제 2 인증정보(1909-2)를 요청하여 상기 제 2 모드의 AP(1903)를 통해 제공받을 수도 있다.According to the implementation, when the electronic device approaches or is connected to the POS device, the second communication module 1907 requests the second authentication information 1909-2 from the AP 1903 in the second mode to obtain the It may be provided through the AP 1903 of the second mode.

상기 보안 모듈(1909)은 상기 제 2 통신모듈(1907) 또는 상기 제 2 모드의 AP(1903)에 의해서만 액세스 가능하며, 상기 제 1 모드의 AP(1901) 및 상기 제 1 통신모듈(1905)가 액세스할 수 없는 저장공간일 수 있다. 실시 예에서, 상기 보안 모듈(1909)은 near field magnetic stripe data transmission용 상기 제 1 인증정보(1909-1) 및 NFC용 상기 제 2 인증정보(1909-2)를 포함할 수 있다.The security module 1909 is accessible only by the second communication module 1907 or the AP 1903 in the second mode, and the AP 1901 in the first mode and the first communication module 1905 It may be inaccessible storage. In an embodiment, the security module 1909 may include the first authentication information 1909-1 for near field magnetic stripe data transmission and the second authentication information 1909-2 for NFC.

다양한 실시 예에서, 상기 제 1 인증정보(1909-1)는 전기적으로 제 1 모드의 AP(1901)와 연결되는 일반 메모리(1911)에 저장될 수 있다.In various embodiments, the first authentication information 1909 - 1 may be stored in a general memory 1911 electrically connected to the AP 1901 in the first mode.

도 20은 다양한 실시예에 따른 모바일 근거리 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시하고 있다.20 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile short-distance payment service according to various embodiments of the present disclosure.

상기 도 20을 참조하면, 2000동작에서 제1 인증 서비스의 트랜잭션이 발생하는 경우, 제 1 모드의 AP(1901)는 2002동작으로 진행하여 제 2 모드의 AP(1903)로 상기 제 1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.Referring to FIG. 20 , when the transaction of the first authentication service occurs in operation 2000, the AP 1901 in the first mode proceeds to operation 2002 and sends the AP 1903 in the second mode to the first authentication service. Transaction commands can be passed.

상기 제 2 모드의 AP(1903)는 2004동작에서 보안 모듈(1909) 또는 메모리(1911) 중 적어도 하나로부터 지불 결제를 위한 인증 정보를 획득할 수 있다.The AP 1903 of the second mode may acquire authentication information for payment from at least one of the security module 1909 and the memory 1911 in operation 2004 .

상기 제 2 모드의 AP(1903)는 2006동작에서 제 1 통신모듈(1905)로 상기 획득한 지불 결제를 위한 제 1 인증 정보를 전달하고 그리고 상기 제 1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.The AP 1903 in the second mode may transmit the acquired first authentication information for payment to the first communication module 1905 in operation 2006 and transmit a transaction command of the first authentication service.

상기 제 1 통신모듈(1905)는 2008동작에서 상기 인증 정보를 처리하여 송신할 수 있다. The first communication module 1905 may process and transmit the authentication information in operation 2008 .

2000동작에서 제 2 인증 서비스의 트랜잭션이 발생하는 경우, 제 2 통신모듈(1907)는 2010동작에서, 상기 제 2 모드의 AP(1903)로 지불 결제를 위한 인증 정보를 요청할 수 있다.When the transaction of the second authentication service occurs in operation 2000 , the second communication module 1907 may request authentication information for payment to the AP 1903 in the second mode in operation 2010 .

상기 제 2 모드의 AP(1903)는 2012동작에서, 보안 모듈(1909)으로부터 지불 결제를 위한 인증 정보를 획득할 수 있다.The AP 1903 of the second mode may obtain authentication information for payment from the security module 1909 in operation 2012 .

상기 제 2 모드의 AP(1903)는 2014동작에서, 제 2 통신모듈(1907)로 상기 획득한 지불 결제를 위한 인증 정보를 전달할 수 있다.The AP 1903 in the second mode may transmit the acquired authentication information for payment to the second communication module 1907 in operation 2014 .

상기 제 2 통신모듈(1907)는 2016동작에서 상기 인증 정보를 송신할 수 있다.The second communication module 1907 may transmit the authentication information in operation 2016.

다양한 실시 예에서, 2000동작에서 제 2 인증 서비스의 트랜잭션이 발생하는 경우, 제 2 통신모듈(1907)는 직접 상기 보안 모듈(1909)으로부터 지불 결제를 위한 인증 정보를 획득하여 송신할 수도 있다.In various embodiments, when a transaction of the second authentication service occurs in operation 2000 , the second communication module 1907 may directly obtain and transmit authentication information for payment from the security module 1909 .

또한, 다양한 실시 예에서, 제 1 모드의 AP(1901)에서 제 2 모드의 AP(1903)로 상기 제1 인증 서비스의 트랜잭션 명령이 전달될 때, 상기 제 2 모드의 AP(1903)에서 직접 상기 보안 모듈(1909)으로부터 지불 결제를 위한 인증 정보를 획득하는 대신에 하기 도 21과 같이 상기 제 2 모드의 AP(1903)에서 제 1 통신모듈(1905)로 상기 제 1 인증 서비스의 트랜잭션 명령을 전달한 후, 제 1 통신모듈(1905)로부터 지불 결제를 위한 인증 정보를 요청받을 수도 있다.In addition, in various embodiments, when the transaction command of the first authentication service is transmitted from the AP 1901 in the first mode to the AP 1903 in the second mode, the AP 1903 in the second mode directly Instead of acquiring authentication information for payment from the security module 1909, the transaction command of the first authentication service is transmitted from the AP 1903 in the second mode to the first communication module 1905 as shown in FIG. Thereafter, authentication information for payment may be requested from the first communication module 1905 .

도 21은 제 3 실시 예에서 모바일 근거리 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 다른 동작 방법을 위한 흐름도를 도시하고 있다.21 is a flowchart for another operating method of an electronic device including a plurality of communication modules for a mobile short-distance payment service according to the third embodiment.

상기 도 21을 참조하면, 제 1 모드의 AP(1901)에서 제 2 모드의 AP(1903)로 상기 제 1 인증 서비스의 트랜잭션 명령이 전달될 때, 2101동작에서 제 2 모드의 AP(1903)에서 상기 제 1 통신모듈(1905)로 상기 제 1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.Referring to FIG. 21, when the transaction command of the first authentication service is transmitted from the AP 1901 in the first mode to the AP 1903 in the second mode, in operation 2101, the AP 1903 in the second mode A transaction command of the first authentication service may be transmitted to the first communication module 1905 .

2103동작에서, 상기 제 1 통신모듈(1905)는 상기 제 2 모드의 AP(1903)에 지불 결제를 위한 인증 정보를 요청할 수 있다.In operation 2103, the first communication module 1905 may request authentication information for payment from the AP 1903 in the second mode.

2105동작에서, 상기 제 2 모드의 AP(1903)는 보안 모듈(1909) 또는 메모리(1911) 중 적어도 하나 지불 결제를 위한 인증 정보를 획득할 수 있다.In operation 2105 , the AP 1903 of the second mode may acquire authentication information for payment of at least one of the security module 1909 and the memory 1911 .

2107동작에서, 상기 제 2 모드의 AP(1903)는 제 1 통신모듈(1905)로 상기 획득한 지불 결제를 위한 인증 정보를 전달할 수 있다.In operation 2107 , the AP 1903 in the second mode may transmit the acquired authentication information for payment to the first communication module 1905 .

2109동작에서, 상기 제 1 통신모듈(1905)는, 상기 인증 정보를 송신할 수 있다.In operation 2109, the first communication module 1905 may transmit the authentication information.

도 22는 다양한 실시예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시하고 있다.22 illustrates an interface between internal components of an electronic device according to various embodiments of the present disclosure.

상기 도 22를 참조하면, 제 1 모드의 AP(2201) 및 제 2 모드의 AP(2203)는 상기 도 12의 프로세서(1200)에 대응하고, 제 1 통신모듈(2205)은 제 1 통신모듈 (1210)에 대응하고, 제 2 통신모듈(2207)는 상기 도 12의 제 2 통신모듈 (1212)에 대응할 수 있다. 여기서, 제 1 모드의 AP(2201)는 노멀 영역(예: REE)에서 동작하는 프로세서일 수 있고, 제 2 모드의 AP(2203)는 보안 영역(예: TEE)에서 동작하는 프로세서일 수 있다.Referring to FIG. 22, the AP 2201 in the first mode and the AP 2203 in the second mode correspond to the processor 1200 of FIG. 12, and the first communication module 2205 is the first communication module ( 1210 , and the second communication module 2207 may correspond to the second communication module 1212 of FIG. 12 . Here, the AP 2201 in the first mode may be a processor operating in a normal area (eg, REE), and the AP 2203 in the second mode may be a processor operating in a security area (eg, TEE).

상기 제 1 통신모듈(2205) 및 상기 제 2 통신모듈(2207)는 전기적으로 제 2 모드의 AP (2203)에 연결되어 있고, 제 2 보안 모듈(2209)은 제 2 통신모듈(2207)에 전기적으로 연결되거나 상기 제 2 모드의 AP(2203)에 전기적으로 연결될 수 있다. 그리고 상기 제 1 보안 모듈(2211)은 상기 제 2 모드의 AP(2203)에 전기적으로 연결될 수 있다.The first communication module 2205 and the second communication module 2207 are electrically connected to the AP 2203 of the second mode, and the second security module 2209 is electrically connected to the second communication module 2207. , or electrically connected to the AP 2203 of the second mode. In addition, the first security module 2211 may be electrically connected to the AP 2203 of the second mode.

다양한 실시예에서, 제 1 통신 모듈(2205)은 MST 모듈(예: MST 모듈(810)) 또는 NFC 모듈(예: NFC 모듈(820)) 중 적어도 하나일 수 있다. 제 2 통신 모듈(2207)은 MST 모듈(예: MST 모듈(810)) 또는 NFC 모듈(예: NFC 모듈(820)) 중 적어도 하나일 수 있다. 제 1 보안 모듈(2211)은 제 1 내장형 보안 요소(eSE)일 수 있다. 제 2 보안 모듈(2209)은 제 2 내장형 보안 요소(eSE)일 수 있다.In various embodiments, the first communication module 2205 may be at least one of an MST module (eg, the MST module 810 ) or an NFC module (eg, the NFC module 820 ). The second communication module 2207 may be at least one of an MST module (eg, the MST module 810) or an NFC module (eg, the NFC module 820). The first security module 2211 may be a first embedded secure element (eSE). The second security module 2209 may be a second embedded secure element (eSE).

상기 제 1 모드의 AP(2201)는 제 1 인증서비스 트랜잭션을 검출하고, 상기 인증서비스 트랜잭션 명령을 상기 제 2 모드의 AP(2203)로 전달할 수 있다.The AP 2201 in the first mode may detect a first authentication service transaction and transmit the authentication service transaction command to the AP 2203 in the second mode.

상기 제 2 모드의 AP(2203)는 상기 인증서비스 트랜잭션 명령 및 제1 인증정보(2211-1)를 상기 제 1 통신모듈(2205)로 전달할 수 있다. 상기 제2 모드의 AP(2203)는 제 1 보안 모듈(2211)에 접근하여 제 1 인증정보(2211-1)를 획득할 수 있다. 또한, 상기 제 2 모드의 AP(2203)는 상기 제 2 통신모듈(2207)로부터 상기 제 2 인증정보(2209-2)에 대응하는 인증결과를 제공받아 디스플레이 모듈(1208)에 디스플레이하도록 제어할 수 있다.The AP 2203 in the second mode may transmit the authentication service transaction command and the first authentication information 2211-1 to the first communication module 2205 . The AP 2203 in the second mode may acquire the first authentication information 2211-1 by accessing the first security module 2211 . In addition, the AP 2203 in the second mode may receive the authentication result corresponding to the second authentication information 2209-2 from the second communication module 2207 and control it to be displayed on the display module 1208. have.

구현에 따라서, 상기 제 2 모드의 AP(2203)는 상기 제 2 통신모듈(2207)로부터 상기 제 2 인증정보(2209-2)를 요청받을 시, 상기 제 2 보안영역(2209)에 액세스하여 상기 제 2 인증정보(2209-2)를 획득하고 획득한 상기 제 2 인증정보(2209-2)를 상기 제 2 통신모듈(2207)로 전달할 수 있다.Depending on the implementation, the AP 2203 of the second mode accesses the second security area 2209 when receiving a request for the second authentication information 2209 - 2 from the second communication module 2207 . After acquiring the second authentication information 2209 - 2 , the acquired second authentication information 2209 - 2 may be transmitted to the second communication module 2207 .

상기 제 1 통신모듈(2205)는 상기 제 2 모드의 AP(2203)로부터 인증서비스 트랜잭션 명령 및 상기 제 1 인증정보(2211-1)를 수신하고 상기 제 1 인증정보(2211-1)를 처리하여 상기 POS 기기로 송신할 수 있다.The first communication module 2205 receives an authentication service transaction command and the first authentication information 2211-1 from the AP 2203 in the second mode, and processes the first authentication information 2211-1. It can transmit to the POS device.

상기 제 2 통신모듈(2207)는 상기 전자장치가 POS 기기에 근접하거나 접속될 시, 제 2 인증서비스 트랜잭션을 검출하고, 상기 제 2 보안 모듈(2209)에 액세스하여 상기 제 2 인증정보(2209_2)를 획득하고, 그리고 획득한 상기 제 2 인증정보(2209_2)를 처리하여 상기 POS 기기로 송신할 수 있다. 또한, 상기 제 2 통신모듈(2207)는 인증결과에 대한 정보를 피드백받아 그 결과를 상기 제 2 모드의 AP(2203)로 제공할 수 있다.When the electronic device approaches or is connected to the POS device, the second communication module 2207 detects a second authentication service transaction, accesses the second security module 2209 to obtain the second authentication information 2209_2 may be obtained, and the obtained second authentication information 2209_2 may be processed and transmitted to the POS device. Also, the second communication module 2207 may receive feedback on the authentication result and provide the result to the AP 2203 in the second mode.

상기 제 1 보안 모듈(2211)은 상기 제2 모드의 AP(2203)에 의해서만 액세스 가능하며, 상기 제 2 보안 모듈(2209)은 상기 제 2 모드의 AP(2203) 및 상기 제 2 통신모듈(2207)에 의해서만 액세스 가능하며, 상기 제 1 모드의 AP(2201) 또는 상기 제 1 통신모듈(2205)은 상기 제 1 보안 모듈(2211) 및 상기 제 2 보안 모듈(2209)을 직접(direct) 액세스할 수 없고, 상기 제 1 모드의 AP(2201) 또는 상기 제 2 통신모듈(2207)는 상기 제 1 보안 모듈(2211)을 직접 (Direct)액세스할 수 없는, 저장공간일 수 있다.The first security module 2211 is accessible only by the AP 2203 in the second mode, and the second security module 2209 is the AP 2203 in the second mode and the second communication module 2207 ), and the AP 2201 or the first communication module 2205 in the first mode directly accesses the first security module 2211 and the second security module 2209. It is not possible, and the AP 2201 or the second communication module 2207 in the first mode cannot directly access the first security module 2211, and may be a storage space.

다양한 실시 예에서, 상기 제 1 인증정보는 전기적으로 제 1 모드의 AP(2201)와 연결되는 일반 메모리(2213)에 저장될 수 있다.In various embodiments, the first authentication information may be stored in a general memory 2213 electrically connected to the AP 2201 in the first mode.

도 23은 다양한 실시예에 따른 모바일 근거리 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시하고 있다.23 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile short-distance payment service according to various embodiments of the present disclosure.

상기 도 23을 참조하면, 2300동작에서 제 1 인증 서비스의 트랜잭션이 발생하는 경우, 2302동작으로 진행하여 제 1 모드의 AP(2201)는 제 2 모드의 AP(2203)로 상기 제 1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.Referring to FIG. 23, when the transaction of the first authentication service occurs in operation 2300, the AP 2201 in the first mode is the AP 2203 in the second mode in operation 2302. Transaction commands can be passed.

2304동작에서, 상기 제 2 모드의 AP(2203)는 제 2 보안 모듈(2209) 또는 메모리(2213) 중 적어도 하나로부터 지불 결제를 위한 인증 정보를 획득할 수 있다.In operation 2304 , the AP 2203 of the second mode may obtain authentication information for payment from at least one of the second security module 2209 and the memory 2213 .

2306동작에서, 상기 제 2 모드의 AP(2203)는 제 1 통신모듈(2205)로 상기 획득한 지불 결제를 위한 인증 정보를 전달하고 그리고 상기 제 1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.In operation 2306 , the AP 2203 in the second mode may transmit the obtained authentication information for payment to the first communication module 2205 and may transmit a transaction command of the first authentication service.

2308동작에서, 상기 제 1 통신모듈(2205)는, 상기 인증 정보를 송신할 수 있다.In operation 2308, the first communication module 2205 may transmit the authentication information.

반면, 2300동작에서 제 2 인증 서비스의 트랜잭션이 발생하는 경우, 2310동작에서, 제 2 통신모듈(2207)는 상기 제 2 모드의 AP(2203)로 지불 결제를 위한 인증 정보를 요청할 수 있다.On the other hand, when a transaction of the second authentication service occurs in operation 2300 , in operation 2310 , the second communication module 2207 may request authentication information for payment from the AP 2203 in the second mode.

2312동작에서, 상기 제 2 모드의 AP(2203)는 제 1 보안 모듈(2211)으로부터 지불 결제를 위한 인증 정보를 획득할 수 있다.In operation 2312 , the AP 2203 in the second mode may obtain authentication information for payment from the first security module 2211 .

2314동작에서, 상기 제 2 모드의 AP(2203)는 제 2 통신모듈(2207)로 상기 획득한 지불 결제를 위한 인증 정보를 전달할 수 있다.In operation 2314 , the AP 2203 in the second mode may transmit the acquired authentication information for payment to the second communication module 2207 .

2316동작에서, 상기 제 2 모드의 AP(2203)는, 제 2 통신모듈(2207)을 이용하여 상기 인증 정보를 송신할 수 있다.In operation 2316 , the AP 2203 in the second mode may transmit the authentication information using the second communication module 2207 .

다양한 실시 예에서, 2300동작에서 제 2 인증 서비스의 트랜잭션이 발생하는 경우, 제 2 통신모듈(2207)는 직접 상기 제 2 보안 모듈(2209)으로부터 지불 결제를 위한 인증 정보를 획득하여 송신할 수도 있다.In various embodiments, when a transaction of the second authentication service occurs in operation 2300 , the second communication module 2207 may directly obtain and transmit authentication information for payment from the second security module 2209 . .

또한, 다양한 실시 예에서, 제 1 모드의 AP(2201)에서 제 2 모드의 AP(2203)로 상기 제1 인증 서비스의 트랜잭션 명령이 전달될 때, 상기 제 2 모드의 AP(2203)에서 직접 상기 제 1 보안영역(2211)으로부터 지불 결제를 위한 인증 정보를 획득하는 대신에 하기 도 24과 같이 상기 제 2 모드의 AP(2203)에서 제 1 통신모듈(2205)로 상기 제 1 인증 서비스의 트랜잭션 명령을 전달한 후, 제 1 통신모듈(2205)로부터 지불 결제를 위한 인증 정보를 요청받을 수도 있다.In addition, in various embodiments, when the transaction command of the first authentication service is transmitted from the AP 2201 in the first mode to the AP 2203 in the second mode, the AP 2203 in the second mode directly Instead of acquiring authentication information for payment from the first security area 2211, the transaction command of the first authentication service from the AP 2203 in the second mode to the first communication module 2205 as shown in FIG. 24 After transmitting , authentication information for payment may be requested from the first communication module 2205 .

도 24는 다양한 실시예에서 모바일 근거리 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 다른 동작 방법을 위한 흐름도를 도시하고 있다.24 is a flowchart for another operating method of an electronic device including a plurality of communication modules for a mobile short-distance payment service according to various embodiments.

상기 도 24를 참조하면, 제 1 모드의 AP(2201)는 제 2 모드의 AP(2203)로 상기 제 1 인증 서비스의 트랜잭션 명령이 전달될 때, 2401 동작에서 제 2 모드의 AP(2203)는 상기 제 1 통신모듈(2205)로 상기 제 1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.Referring to FIG. 24 , when the transaction command of the first authentication service is transmitted from the AP 2201 in the first mode to the AP 2203 in the second mode, in operation 2401, the AP 2203 in the second mode A transaction command of the first authentication service may be transmitted to the first communication module 2205 .

2403동작으로 진행하여 상기 제 1 통신모듈(2205)는 상기 제 2 모드의 AP(2203)에 지불 결제를 위한 인증 정보를 요청할 수 있다.In operation 2403 , the first communication module 2205 may request authentication information for payment from the AP 2203 in the second mode.

2405동작에서, 상기 제 2 모드의 AP(2203)는 제 1 보안 모듈(2211) 또는 메모리(2213) 중 적어도 하나로부터 지불 결제를 위한 인증 정보를 획득할 수 있다.In operation 2405 , the AP 2203 in the second mode may obtain authentication information for payment from at least one of the first security module 2211 and the memory 2213 .

2407동작에서, 상기 제 2 모드의 AP(2203)는 제 1 통신모듈(2205)로 상기 획득한 지불 결제를 위한 인증 정보를 전달할 수 있다.In operation 2407 , the AP 2203 in the second mode may transmit the acquired authentication information for payment to the first communication module 2205 .

2408동작에서, 전자 장치(예: 제 1 통신모듈(2205))는 상기 인증 정보를 외부 장치(예: PoS)로 송신할 수 있다.In operation 2408, the electronic device (eg, the first communication module 2205) may transmit the authentication information to an external device (eg, PoS).

도 25는 다양한 실시예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시하고 있다.25 illustrates an interface between internal components of an electronic device according to various embodiments of the present disclosure.

상기 도 25를 참조하면, 제 1 모드의 AP(2501) 및 제 2 모드의 AP(2503)는 상기 도 12의 프로세서(1200)에 대응하고, 제 1 통신모듈(2505)는 상기 도 12의 제 1 통신모듈 (1210)에 대응하고, 제 2 통신모듈(2507)는 상기 도 12의 제 2 통신모듈 (1212)에 대응할 수 있다. 여기서, 제 1 모드의 AP(2501)는 노멀 영역(예: REE)에서 동작하는 프로세서(1200)일 수 있고, 제 2 모드의 AP(2503)는 보안 영역(예: TEE)에서 동작하는 프로세서(1200)일 수 있다.Referring to FIG. 25, the AP 2501 of the first mode and the AP 2503 of the second mode correspond to the processor 1200 of FIG. 12, and the first communication module 2505 is the first communication module 2505 of FIG. It may correspond to the first communication module 1210, and the second communication module 2507 may correspond to the second communication module 1212 of FIG. Here, the AP 2501 in the first mode may be a processor 1200 operating in a normal area (eg, REE), and the AP 2503 in the second mode is a processor operating in a security area (eg, TEE) ( 1200).

상기 제 1 통신모듈(2505) 및 제 2 통신모듈(2507)는 전기적으로 제 2 모드의 AP (2503)에 연결되어 있고, 보안 모듈(2509)은 제 2 통신모듈(2507)에 전기적으로 연결될 수 있다. 더하여, 상기 보안 모듈(2509)은 제 1 통신모듈(2507)에 전기적으로 연결될 수 있다.The first communication module 2505 and the second communication module 2507 may be electrically connected to the AP 2503 in the second mode, and the security module 2509 may be electrically connected to the second communication module 2507 . have. In addition, the security module 2509 may be electrically connected to the first communication module 2507 .

다양한 실시예에서, 제 1 통신 모듈(2505)은 MST 모듈(예: MST 모듈(810)) 또는 NFC 모듈(예: NFC 모듈(820)) 중 적어도 하나일 수 있다. 제 2 통신 모듈(2507)은 MST 모듈(예: MST 모듈(810)) 또는 NFC 모듈(예: NFC 모듈(820)) 중 적어도 하나일 수 있다. 보안 모듈(2509)은 내장형 보안 요소(eSE)일 수 있다. In various embodiments, the first communication module 2505 may be at least one of an MST module (eg, the MST module 810 ) or an NFC module (eg, the NFC module 820 ). The second communication module 2507 may be at least one of an MST module (eg, the MST module 810) or an NFC module (eg, the NFC module 820). The secure module 2509 may be an embedded secure element (eSE).

상기 제 1 모드의 AP(2501)는 인증서비스 트랜잭션을 검출하고, 제 1 인증서비스 트랜잭션 명령을 상기 제 2 모드의 AP(2503)로 전달할 수 있다.The AP 2501 in the first mode may detect an authentication service transaction and transmit a first authentication service transaction command to the AP 2503 in the second mode.

상기 제 2 모드의 AP(2503)는 제 1 인증서비스 트랜잭션 명령 및 제 1 인증정보(2509-1)를 상기 제 1 통신모듈(2505)로 전달할 수 있다. 또한, 상기 제 2 모드의 AP(2503)는 상기 제 2 통신모듈(2507)로부터 상기 제 2 인증정보(2509-2)에 대응하는 인증결과를 제공받아 디스플레이 모듈(1208)에 디스플레이하도록 제어할 수 있다.The AP 2503 in the second mode may transmit the first authentication service transaction command and the first authentication information 2509 - 1 to the first communication module 2505 . In addition, the AP 2503 in the second mode may receive the authentication result corresponding to the second authentication information 2509-2 from the second communication module 2507 and control it to be displayed on the display module 1208. have.

상기 제 1 통신모듈(2505)은 상기 제 2 모드의 AP(2503)로부터 인증서비스 트랜잭션 명령을 수신할 시, 상기 제 2 통신모듈(2507)에 제 1 인증정보(2509-1)를 요청하여, 상기 제 2 통신모듈(2507)를 통해 제 1 인증정보(2509-1)를 수신할 수 있다.When receiving an authentication service transaction command from the AP 2503 in the second mode, the first communication module 2505 requests the second communication module 2507 for first authentication information 2509-1, The first authentication information 2509 - 1 may be received through the second communication module 2507 .

구현에 따라서, 상기 제 1 통신모듈(2505)는 상기 제 2 모드의 AP(2503)로부터 인증서비스 트랜잭션 명령을 수신할 시, 직접 상기 보안 모듈(2509)을 액세스하여 제1 인증정보(2509_1)를 획득할 수도 있다.According to the implementation, when receiving an authentication service transaction command from the AP 2503 in the second mode, the first communication module 2505 directly accesses the security module 2509 to receive the first authentication information 2509_1 may be obtained.

상기 제1 통신모듈(2505)는 상기 제1 인증정보(2509_1)를 처리하여 상기 POS 기기로 송신할 수 있다.The first communication module 2505 may process the first authentication information 2509_1 and transmit it to the POS device.

상기 제2 통신모듈(2507)는 상기 제1 통신모듈(2505)로부터 제1 인증정보를 요청받을 시, 상기 보안 모듈(2509)을 액세스하여 제1 인증정보(2509_1)를 획득하고 획득한 제1 인증정보(2509_1)를 상기 제1 통신모듈(2505)로 제공할 수 있다.When receiving a request for first authentication information from the first communication module 2505, the second communication module 2507 accesses the security module 2509 to obtain the first authentication information 2509_1 The authentication information 2509_1 may be provided to the first communication module 2505 .

또한, 상기 제2 통신모듈(2507)는 상기 전자장치가 POS 기기에 근접하거나 접속될 시, 제2 인증서비스 트랜잭션을 검출하고, 직접 상기 보안 모듈(2509)에 액세스하여 상기 제2 인증정보(2509_2)를 획득하고, 상기 제2 인증정보(2509_2)를 처리하여 상기 POS 기기로 송신할 수 있다. 또한, 상기 제2 통신모듈(2507)는 인증결과에 대한 정보를 피드백받아 그 결과를 상기 제2 모드의 AP(2503)로 제공할 수 있다.In addition, when the electronic device approaches or is connected to the POS device, the second communication module 2507 detects a second authentication service transaction and directly accesses the security module 2509 to access the second authentication information 2509_2 ), the second authentication information 2509_2 may be processed and transmitted to the POS device. In addition, the second communication module 2507 may receive information on the authentication result as feedback and provide the result to the AP 2503 in the second mode.

상기 보안 모듈(2509)은 상기 제1 통신모듈(2505) 또는 상기 제1 통신모듈(2505)에 의해서만 액세스 가능하며, 상기 제1 모드의 AP(2501) 및 상기 제2 모드의 AP(2503)가 액세스할 수 없는 저장공간일 수 있다. 실시 예에서 상기 보안 모듈(2509)은 상기 제1 인증정보(2509_1) 및 상기 제2 인증정보(2509_2)를 저장할 수 있다.The security module 2509 is accessible only by the first communication module 2505 or the first communication module 2505, and the AP 2501 in the first mode and the AP 2503 in the second mode It may be inaccessible storage. In an embodiment, the security module 2509 may store the first authentication information 2509_1 and the second authentication information 2509_2 .

다양한 실시 예에서, 상기 제1 인증정보는 전기적으로 제1 모드의 AP(2501)와 연결되는 일반 메모리(2511)에 저장될 수 있다.In various embodiments, the first authentication information may be stored in a general memory 2511 electrically connected to the AP 2501 in the first mode.

도 26은 다양한 실시예에 따른 모바일 근거리 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시하고 있다.26 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile short-distance payment service according to various embodiments of the present disclosure.

상기 도 26을 참조하면, 2600동작에서 제1 인증 서비스의 트랜잭션이 발생하는 경우, 2602동작으로 진행하여 제1 모드의 AP(2501)는 제2 모드의 AP(2503)로 상기 제1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.Referring to FIG. 26 , when the transaction of the first authentication service occurs in operation 2600 , in operation 2602 , the AP 2501 in the first mode transfers the AP 2503 in the second mode to the AP 2503 in the second mode. Transaction commands can be passed.

2604동작에서, 상기 제2 모드의 AP(2503)는 상기 제1 통신모듈(2505)로 상기 제1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.In operation 2604 , the AP 2503 in the second mode may transmit a transaction command of the first authentication service to the first communication module 2505 .

2606동작으로 진행하여 상기 제1 통신모듈(2505)는 제2 통신모듈(2507)에 지불 결제를 위한 제1 인증 정보를 요청할 수 있다.In operation 2606 , the first communication module 2505 may request the second communication module 2507 for first authentication information for payment.

2608동작에서, 제2 통신모듈(2507)는 보안 모듈(2509)으로부터 지불 결제를 위한 인증 정보(예를 들어, 제1 인증 정보(2509-1))를 획득할 수 있다.In operation 2608 , the second communication module 2507 may obtain authentication information for payment (eg, the first authentication information 2509 - 1 ) from the security module 2509 .

2610동작에서, 상기 제2 통신모듈(2507)는 상기 제1 통신모듈(2505)로 상기 획득한 지불 결제를 위한 제1 인증 정보를 전달할 수 있다.In operation 2610 , the second communication module 2507 may transmit the acquired first authentication information for payment to the first communication module 2505 .

다양한 실시 예에서, 상기 제2 모드의 AP(2503)는 상기 제1 통신모듈(2505)로 상기 제1 인증 서비스의 트랜잭션 명령이 전달될 때, 2614동작에서 직접 상기 제1 통신모듈(2505)에서 보안 모듈(2509) 또는 메모리(2511) 중 적어도 하나로부터 지불 결제를 위한 제1 인증 정보를 획득할 수도 있다.In various embodiments, when the transaction command of the first authentication service is transmitted to the first communication module 2505 in the second mode AP 2503, in operation 2614, directly in the first communication module 2505 First authentication information for payment may be obtained from at least one of the security module 2509 and the memory 2511 .

2620동작에서, 상기 제1 통신모듈(2505)는, 인증 정보를 송신할 수 있다.In operation 2620, the first communication module 2505 may transmit authentication information.

반면, 2600동작에서 제2 인증 서비스의 트랜잭션이 발생하는 경우, 2616동작으로 진행하여 상기 제2 통신모듈(2507)는 보안 모듈(2509)으로부터 지불 결제를 위한 인증 정보(예를 들어, 제2 인증 정보(2509_2))를 획득할 수 있다.On the other hand, when the transaction of the second authentication service occurs in operation 2600 , in operation 2616 , the second communication module 2507 receives authentication information for payment from the security module 2509 (eg, the second authentication). information 2509_2) may be obtained.

2618동작에서, 상기 제2 통신모듈(2507)는, 상기 인증 정보를 송신할 수 있다.In operation 2618, the second communication module 2507 may transmit the authentication information.

도 27는 제6 실시 예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시하고 있다. 상기 도 27를 참조하면, 제1 모드의 AP(2701) 및 제2 모드의 AP(2703)는 상기 도 12의 프로세서(1200)에 대응하고,, 제1 통신모듈(2705)는 상기 도 12의 제1 통신모듈 (1210), 제2 통신모듈(2709)는 상기 도 12의 제2 통신모듈 (1212)에 대응할 수 있다. 여기서, 제1 모드의 AP(2701)는 노멀 영역(예: REE)에서 동작하는 프로세서(1200)일 수 있고, 제2 모드의 AP(2703)는 보안 영역(예: TEE)에서 동작하는 프로세서(1200)일 수 있다.27 illustrates an interface between internal components of an electronic device according to the sixth embodiment. Referring to FIG. 27 , the AP 2701 in the first mode and the AP 2703 in the second mode correspond to the processor 1200 of FIG. 12 , and the first communication module 2705 of FIG. 12 . The first communication module 1210 and the second communication module 2709 may correspond to the second communication module 1212 of FIG. 12 . Here, the AP 2701 in the first mode may be a processor 1200 operating in a normal area (eg, REE), and the AP 2703 in the second mode is a processor (eg, TEE) operating in a security area (eg, TEE). 1200).

상기 제1 통신모듈(2705) 및 제2 통신모듈(2709)는 전기적으로 제2 모드의 AP (2703)에 연결되어 있고, 제2 보안 모듈(2711)은 제2 통신모듈(2709)에 전기적으로 연결될 수 있다. 그리고 제1 보안 모듈(2707)은 제1 통신모듈(2705)에 전기적으로 연결될 수 있다.The first communication module 2705 and the second communication module 2709 are electrically connected to the AP 2703 of the second mode, and the second security module 2711 is electrically connected to the second communication module 2709. can be connected In addition, the first security module 2707 may be electrically connected to the first communication module 2705 .

다양한 실시예에서, 제 1 통신 모듈(2705)은 MST 모듈(예: MST 모듈(810)) 또는 NFC 모듈(예: NFC 모듈(820)) 중 적어도 하나일 수 있다. 제 2 통신 모듈(2709)은 MST 모듈(예: MST 모듈(810)) 또는 NFC 모듈(예: NFC 모듈(820)) 중 적어도 하나일 수 있다. 제 1 보안 모듈(2707)은 제 1 내장형 보안 요소(eSE)일 수 있다. 제 2 보안 모듈(2711)은 제 2 내장형 보안 요소(eSE)일 수 있다.In various embodiments, the first communication module 2705 may be at least one of an MST module (eg, the MST module 810 ) or an NFC module (eg, the NFC module 820 ). The second communication module 2709 may be at least one of an MST module (eg, the MST module 810) or an NFC module (eg, the NFC module 820). The first security module 2707 may be a first embedded secure element (eSE). The second security module 2711 may be a second embedded secure element (eSE).

상기 제1 모드의 AP(2701)는 인증서비스 트랜잭션을 검출하고, 제1 인증서비스 트랜잭션 명령을 상기 제2 모드의 AP(2703)로 전달할 수 있다.The AP 2701 in the first mode may detect an authentication service transaction and transmit a first authentication service transaction command to the AP 2703 in the second mode.

상기 제2 모드의 AP(2703)는 제1 인증서비스 트랜잭션 명령 및 제1 인증정보(2707_1)를 상기 제1 통신모듈(2705)로 전달할 수 있다. 또한, 상기 제2 모드의 AP(2703)는 상기 제2 통신모듈(2709)로부터 상기 제2 인증정보(2711_2)에 대응하는 인증결과를 제공받아 디스플레이 모듈(508)에 디스플레이하도록 제어할 수 있다.The AP 2703 in the second mode may transmit a first authentication service transaction command and first authentication information 2707_1 to the first communication module 2705 . Also, the AP 2703 in the second mode may receive an authentication result corresponding to the second authentication information 2711_2 from the second communication module 2709 and control it to be displayed on the display module 508 .

상기 제1 통신모듈(2705)는 상기 제2 모드의 AP(2703)로부터 인증서비스 트랜잭션 명령을 수신할 시, 직접 상기 제1 보안영역(2707)을 액세스하여 제1 인증정보(2707_1)를 획득할 수 있다. 그리고 획득한 상기 제1 인증정보(2707_1)를 처리하여 상기 POS 기기로 송신할 수 있다.When receiving the authentication service transaction command from the AP 2703 in the second mode, the first communication module 2705 directly accesses the first security area 2707 to obtain the first authentication information 2707_1. can In addition, the obtained first authentication information 2707_1 may be processed and transmitted to the POS device.

상기 제2 통신모듈(2709)는 상기 전자장치가 POS 기기에 근접하거나 접속될 시, 제2 인증서비스 트랜잭션을 검출하고, 상기 제2 보안 모듈(2711)에 액세스하여 상기 제2 인증정보(2711_2)를 획득하고, 그리고 획득한 상기 제2 인증정보(2711_2)를 처리하여 상기 POS 기기로 송신할 수 있다. 또한, 상기 제2 통신모듈(2709)는 인증결과에 대한 정보를 피드백받아 그 결과를 상기 제2 모드의 AP(2703)로 제공할 수 있다.The second communication module 2709 detects a second authentication service transaction when the electronic device approaches or is connected to the POS device, and accesses the second security module 2711 to obtain the second authentication information 2711_2 may be obtained, and the obtained second authentication information 2711_2 may be processed and transmitted to the POS device. In addition, the second communication module 2709 may receive information on the authentication result as feedback and provide the result to the AP 2703 of the second mode.

상기 제1 보안영역(2707)은 상기 제1 통신모듈(2705)에 의해서만 액세스 가능하며, 상기 제2 보안영역(2711)은 상기 제2 통신모듈(2709)에 의해서만 액세스 가능하며, 상기 제1 모드의 AP(2701) 또는 상기 제2 모드의 AP(2703)는 상기 제1 보안영역(2707) 및 상기 제2 보안영역(2711)을 액세스할 수 없는 저장공간일 수 있다.The first secure area 2707 is accessible only by the first communication module 2705, the second secure area 2711 is accessible only by the second communication module 2709, and the first mode The AP 2701 or the AP 2703 in the second mode may be a storage space that cannot access the first secure area 2707 and the second secure area 2711 .

다양한 실시 예에서, 상기 제1 인증정보는 전기적으로 제1 모드의 AP(2701)와 연결되는 일반 메모리(2713)에 저장될 수 있다.In various embodiments, the first authentication information may be stored in a general memory 2713 electrically connected to the AP 2701 in the first mode.

도 28은 제6 실시 예에 따른 모바일 근거리 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시하고 있다.28 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile short-distance payment service according to a sixth embodiment.

상기 도 28을 참조하면, 2800동작에서 제1 인증 서비스의 트랜잭션이 발생하는 경우, 2802동작으로 진행하여 제1 모드의 AP(2701)는 제2 모드의 AP(2703)로 상기 제1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.Referring to FIG. 28, when the transaction of the first authentication service occurs in operation 2800, the AP 2701 in the first mode is transferred to the AP 2703 in the second mode in operation 2802. Transaction commands can be passed.

2804동작에서, 상기 제2 모드의 AP(2703)는 상기 제1 통신모듈(2705)로 상기 제1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.In operation 2804 , the AP 2703 in the second mode may transmit the transaction command of the first authentication service to the first communication module 2705 .

2806동작에서, 상기 제1 통신모듈(2705)는 제1 보안영역(2707) 또는 메모리(2713) 중 적어도 하나로부터 지불 결제를 위한 인증 정보를 획득할 수 있다.In operation 2806 , the first communication module 2705 may acquire authentication information for payment from at least one of the first security area 2707 and the memory 2713 .

2808동작에서, 상기 제1 통신모듈(2705)는, 상기 인증 정보를 송신할 수 있다.In operation 2808, the first communication module 2705 may transmit the authentication information.

반면, 2800동작에서 제2 인증 서비스의 트랜잭션이 발생하는 경우, 2810동작으로 진행하여 상기 제2 통신모듈(2709)는 제2 보안 모듈(2711)으로부터 지불 결제를 위한 인증 정보를 획득할 수 있다.On the other hand, when the transaction of the second authentication service occurs in operation 2800 , the second communication module 2709 may obtain authentication information for payment from the second security module 2711 in operation 2810 .

2812동작에서, 상기 제2 통신모듈(2709)는, 상기 인증 정보를 송신할 수 있다.In operation 2812, the second communication module 2709 may transmit the authentication information.

다양한 실시 예에서, 2800동작에서 제2 인증 서비스의 트랜잭션이 발생하는 경우, 하기 도 29의 동작 방법으로 지불 결제가 수행될 수도 있다.According to various embodiments, when a transaction of the second authentication service occurs in operation 2800, payment may be performed by the operation method of FIG. 29 below.

도 29는 제6 실시 예에서 모바일 근거리 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 다른 동작 방법을 위한 흐름도를 도시하고 있다.29 is a flowchart for another operating method of an electronic device including a plurality of communication modules for a mobile short-distance payment service according to the sixth embodiment.

상기 도 29를 참조하면, 제2 인증 서비스의 트랜잭션이 발생하는 경우, 2900동작으로 진행하여 제1 모드의 AP(2701)는 제2 모드의 AP(2703)로 상기 제1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.Referring to FIG. 29 , when a transaction of the second authentication service occurs, in operation 2900 , the AP 2701 in the first mode sends a transaction command for the first authentication service to the AP 2703 in the second mode. can transmit

2902동작에서, 상기 제2 모드의 AP(2703)는 상기 제2 통신모듈(2709)로 상기 제2 인증 서비스의 트랜잭션 명령을 전달할 수 있다.In operation 2902 , the AP 2703 in the second mode may transmit a transaction command of the second authentication service to the second communication module 2709 .

2904동작에서, 상기 제2 통신모듈(2709)는 제2 보안 모듈(2711)으로부터 지불 결제를 위한 인증 정보를 획득할 수 있다.In operation 2904 , the second communication module 2709 may obtain authentication information for payment from the second security module 2711 .

2906동작에서, 상기 제2 모드의 AP(2703)는, 제2 통신모듈(2709)을 이용하여 상기 인증 정보를 송신할 수 있다.In operation 2906 , the AP 2703 in the second mode may transmit the authentication information using the second communication module 2709 .

도 30은 제7 실시 예에 따른 전자장치의 내부 구성요소들간 인터페이스를 도시하고 있다.30 illustrates an interface between internal components of an electronic device according to the seventh embodiment.

상기 도 30을 참조하면, 제1 모드의 AP(3001) 및 제2 모드의 AP(3003)는 상기 도 12의 프로세서(1200)에 에 대응하고, 제1 통신모듈(3005)는 상기 도 12의 제1 통신모듈(1210)에 대응하고, 제2 통신모듈(3005)는 상기 도 12의 제2 통신모듈 (1212)에 대응할 수 있다. 여기서, 제1 모드의 AP(3001)는 노멀 영역(예: REE)에서 동작하는 프로세서(1200)일 수 있고, 제2 모드의 AP(3003)는 보안 영역(예: TEE)에서 동작하는 프로세서(1200)일 수 있다.Referring to FIG. 30, the AP 3001 of the first mode and the AP 3003 of the second mode correspond to the processor 1200 of FIG. 12, and the first communication module 3005 of FIG. It may correspond to the first communication module 1210, and the second communication module 3005 may correspond to the second communication module 1212 of FIG. 12 . Here, the AP 3001 in the first mode may be a processor 1200 operating in a normal area (eg, REE), and the AP 3003 in the second mode is a processor operating in a security area (eg, TEE) ( 1200).

상기 제1 통신모듈(3005) 및 제2 통신모듈(3007)는 전기적으로 제2 모드의 AP (3003)에 연결되어 있고, 보안 모듈(3009)은 제1 통신모듈(3005), 제2 통신모듈(3007) 및 제2 모드의 AP(3003)에 각각 전기적으로 연결될 수 있다.The first communication module 3005 and the second communication module 3007 are electrically connected to the AP 3003 in the second mode, and the security module 3009 includes the first communication module 3005 and the second communication module. 3007 and the AP 3003 of the second mode may be electrically connected to each other.

다양한 실시예에서, 제 1 통신 모듈(3005)은 MST 모듈(예: MST 모듈(810)) 또는 NFC 모듈(예: NFC 모듈(820)) 중 적어도 하나일 수 있다. 제 2 통신 모듈(3007)은 MST 모듈(예: MST 모듈(810)) 또는 NFC 모듈(예: NFC 모듈(820)) 중 적어도 하나일 수 있다. 보안 모듈(3009)은 내장형 보안 요소(eSE)일 수 있다.In various embodiments, the first communication module 3005 may be at least one of an MST module (eg, the MST module 810 ) or an NFC module (eg, the NFC module 820 ). The second communication module 3007 may be at least one of an MST module (eg, the MST module 810) or an NFC module (eg, the NFC module 820). The secure module 3009 may be an embedded secure element (eSE).

상기 제1 모드의 AP(3001)는 인증서비스 트랜잭션을 검출하고, 인증서비스 트랜잭션 명령을 상기 제2 모드의 AP(3003)로 전달할 수 있다.The AP 3001 in the first mode may detect an authentication service transaction and transmit an authentication service transaction command to the AP 3003 in the second mode.

상기 제2 모드의 AP(3003)는 제1 인증서비스 트랜잭션 명령을 상기 제1 통신모듈(3003)로 전달하고, 보안 모듈(3009)에 상기 제1 인증정보(3009_1)를 상기 제1 통신모듈(3005)로 전달 요청할 수 있다.The AP 3003 in the second mode transmits a first authentication service transaction command to the first communication module 3003, and transmits the first authentication information 3009_1 to the security module 3009 to the first communication module ( 3005) to request delivery.

다양한 실시예에서, 상기 제2 모드의 AP(3003)는 제2 인증서비스 트랜잭션이 발생할 시, 보안 모듈(3009)에 상기 제2 인증정보(3009_1)를 상기 제2 통신모듈(3003)로 전달 요청할 수 있다.In various embodiments, when a second authentication service transaction occurs, the AP 3003 in the second mode requests the security module 3009 to transmit the second authentication information 3009_1 to the second communication module 3003 . can

상기 제2 모드의 AP(3003)는 보안 모듈(3009)에 접근하여 상기 제1 인증정보(3009_1)를 획득할 수 있다. 또한, 상기 제2 모드의 AP(3003)는 상기 제2 통신모듈(3007)로부터 상기 제2 인증정보(3009_2)에 대응하는 인증결과를 제공받아 디스플레이 모듈(1208)에 디스플레이하도록 제어할 수 있다.The AP 3003 in the second mode may obtain the first authentication information 3009_1 by accessing the security module 3009 . Also, the AP 3003 in the second mode may receive an authentication result corresponding to the second authentication information 3009_2 from the second communication module 3007 and control it to be displayed on the display module 1208 .

상기 제1 통신모듈(3005)는 상기 제2 모드의 AP(3003)로부터 인증서비스 트랜잭션 명령을 수신하고 보안 모듈(3009)으로부터 상기 제1 인증정보(3009_1)를 수신할 수 있다. 그리고, 상기 제1 통신모듈(3005)는 상기 수신한 제1 인증정보(3009_1)를 처리하여 상기 POS 기기로 송신할 수 있다.The first communication module 3005 may receive an authentication service transaction command from the AP 3003 in the second mode and may receive the first authentication information 3009_1 from the security module 3009 . In addition, the first communication module 3005 may process the received first authentication information 3009_1 and transmit it to the POS device.

상기 제2 통신모듈(3007)는 상기 전자장치가 POS 기기에 근접하거나 접속될 시, 제2 인증서비스 트랜잭션을 검출하고, 직접 상기 보안 모듈(3009)에 액세스하여 상기 제2 인증정보(3009_2)를 획득하고, 상기 획득한 제2 인증정보(3009_2)를 처리하여 상기 POS 기기로 송신할 수 있다. 또한, 상기 제2 통신모듈(3007)는 인증결과에 대한 정보를 피드백받아 그 결과를 상기 제2 모드의 AP(3003)로 제공할 수 있다.The second communication module 3007 detects a second authentication service transaction when the electronic device approaches or is connected to the POS device, directly accesses the security module 3009 to provide the second authentication information 3009_2 acquired, and the acquired second authentication information 3009_2 may be processed and transmitted to the POS device. In addition, the second communication module 3007 may receive information on the authentication result as feedback and provide the result to the AP 3003 in the second mode.

구현에 따라서, 상기 제2 통신모듈(3007)는 상기 전자장치가 POS 기기에 근접하거나 접속될 시, 상기 제2 모드의 AP(3003)에 상기 제2 인증정보(3009_2)를 요청하여 상기 제2 모드의 AP(3003)를 통해 제공받을 수도 있다.According to the implementation, when the electronic device approaches or is connected to the POS device, the second communication module 3007 requests the second authentication information 3009_2 from the AP 3003 in the second mode to obtain the second It may be provided through the AP 3003 of the mode.

상기 보안 모듈(3009)은 상기 제2 모드의 AP(3001) 및 상기 제2 통신모듈(3005)에 의해서만 액세스 가능하며, 상기 제1 모드의 AP(3001)가 액세스할 수 없는 저장공간일 수 있다. 다만, 상기 제1 통신모듈(3005)는 보안 모듈(3009)으로부터 단방향으로 제1 인증정보(3009_1)를 수신할 수 있다. 실시 예에서, 상기 보안 모듈(3009)은 상기 제1 인증정보(3009_1) 및 상기 제2 인증정보(3009_2)를 포함할 수 있다.The security module 3009 can be accessed only by the AP 3001 and the second communication module 3005 in the second mode, and may be a storage space that the AP 3001 in the first mode cannot access. . However, the first communication module 3005 may receive the first authentication information 3009_1 unidirectionally from the security module 3009 . In an embodiment, the security module 3009 may include the first authentication information 3009_1 and the second authentication information 3009_2 .

다양한 실시 예에서, 상기 제1 인증정보는 전기적으로 제1 모드의 AP(3001)와 연결되는 일반 메모리(3011)에 저장될 수 있다.In various embodiments, the first authentication information may be stored in a general memory 3011 electrically connected to the AP 3001 in the first mode.

다양한 실시 예에 따르면, 제2 모드의 AP(3001)는 인증정보를 저장할 수 있다. 예를 들어, 도 5a에 기재된 trusted RAM(501)에 인증 정보를 저장할 수 있다. 여기에서, 제2 모드의 AP(3001)에 저장된 인증 정보는 제1 통신모듈(3005) 및 제2 통신모듈(3007)을 통해 전송될 수 있다. 예를 들어, 상기 제2 모드의 AP(3001)는 하나의 인증 정보를 제1 통신모듈(3005) 및 제2 통신모듈(3007)을 통해 수신 장치로 전송할 수 있다. According to various embodiments, the AP 3001 in the second mode may store authentication information. For example, authentication information may be stored in the trusted RAM 501 illustrated in FIG. 5A . Here, the authentication information stored in the AP 3001 in the second mode may be transmitted through the first communication module 3005 and the second communication module 3007 . For example, the AP 3001 in the second mode may transmit one piece of authentication information to the receiving device through the first communication module 3005 and the second communication module 3007 .

다른 실시예에 따르면, 제2 모드의 AP(3001)에 저장된 인증 정보는 제1 통신모듈(3005)을 통해 전송되는 제1 인증 정보와 제2 통신모듈(3007)을 통해 전송되는 제2 인증 정보를 포함할 수 있다. 예를 들어, 상기 제2 모드의 AP(3001)는 제1 인증 정보를 제1 통신모듈(3005)를 통해 수신 장치로 전송할 수 있으며, 제2 인증 정보를 제2 통신모듈(3007)을 통해 수신 장치로 전송할 수 있다. 다양한 실시예에 따르면, 상기 제2 모드의 AP(3001)는 저장된 인증 정보 가운데 적어도 하나의 인증 정보만을 수신 장치로 전송할 수 있다. 예를 들어, 전송하고자 하는 인증 정보에 대응하는 통신 모듈을 통해 수신 장치로 전송할 수 있다.According to another embodiment, the authentication information stored in the AP 3001 in the second mode includes the first authentication information transmitted through the first communication module 3005 and the second authentication information transmitted through the second communication module 3007 . may include. For example, the AP 3001 in the second mode may transmit the first authentication information to the receiving device through the first communication module 3005 , and receive the second authentication information through the second communication module 3007 . can be sent to the device. According to various embodiments, the AP 3001 in the second mode may transmit only at least one piece of authentication information among the stored authentication information to the receiving device. For example, it may transmit to the receiving device through a communication module corresponding to the authentication information to be transmitted.

도 31을 제7 실시 예에 따른 모바일 근거리 결제 서비스를 위한 복수의 통신모듈을 포함한 전자장치의 동작 방법을 위한 흐름도를 도시하고 있다.31 is a flowchart illustrating a method of operating an electronic device including a plurality of communication modules for a mobile short-distance payment service according to a seventh embodiment.

상기 도 31을 참조하면, 3100동작에서 제1 인증 서비스의 트랜잭션이 발생하는 경우, 3102동작으로 진행하여 제1 모드의 AP(3001)는 제2 모드의 AP(3003)로 상기 제1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.Referring to FIG. 31 , when the transaction of the first authentication service occurs in operation 3100, the AP 3001 in the first mode is the AP 3003 in the second mode in operation 3102. Transaction commands can be passed.

3104동작에서, 상기 제2 모드의 AP(3003)는 상기 제1 통신모듈(3005)로 상기 제1 인증 서비스의 트랜잭션 명령을 전달할 수 있다.In operation 3104 , the AP 3003 in the second mode may transmit a transaction command of the first authentication service to the first communication module 3005 .

3106동작에서, 상기 제2 모드의 AP(3003)는 보안 모듈(3009) 또는 메모리(3011) 중 적어도 하나에 상기 제1 통신모듈(3105)로 지불 결제를 위한 인증 정보를 전달 요청할 수 있다.In operation 3106 , the AP 3003 in the second mode may request at least one of the security module 3009 and the memory 3011 to transmit authentication information for payment to the first communication module 3105 .

3108동작에서, 상기 보안 모듈(3009) 또는 메모리(3011) 중 적어도 하나는 상기 제1 통신모듈(3005)로 지불 결제를 위한 인증 정보를 전달할 수 있다.In operation 3108 , at least one of the security module 3009 and the memory 3011 may transmit authentication information for payment to the first communication module 3005 .

3110동작에서, 상기 제1 통신모듈(3005)는, 상기 보안 모듈(3009)으로부터 수신된 상기 인증 정보를 송신할 수 있다.In operation 3110 , the first communication module 3005 may transmit the authentication information received from the security module 3009 .

반면, 3100동작에서 제2 인증 서비스의 트랜잭션이 발생하는 경우, 3112동작으로 진행하여 제1 모드의 AP(3001)는 제2 모드의 AP(3003)로 상기 제2 인증 서비스의 트랜잭션 명령을 전달할 수 있다.On the other hand, when the transaction of the second authentication service occurs in operation 3100, the AP 3001 in the first mode may transmit the transaction command of the second authentication service to the AP 3003 in the second mode in operation 3112. have.

3114동작에서, 상기 제2 모드의 AP(3003)는 상기 제2 통신모듈(2007)로 상기 제2 인증 서비스의 트랜잭션 명령을 전달할 수 있다.In operation 3114 , the AP 3003 in the second mode may transmit a transaction command of the second authentication service to the second communication module 2007 .

3116동작에서, 상기 제2 통신모듈(3007)는 상기 제2 모드의 AP(3003)에 지불 결제를 위한 인증 정보를 요청하여 획득할 수 있다.In operation 3116 , the second communication module 3007 may request and obtain authentication information for payment from the AP 3003 in the second mode.

3118동작에서, 상기 제2 통신모듈(3007)는, 상기 인증 정보를 송신할 수 있다.In operation 3118, the second communication module 3007 may transmit the authentication information.

도 32는 다양한 실시예에 따른 결제를 위한 정보 생성을 위한 전자 장치의 내부 구성 요소들 간의 인터페이스를 도시한다.32 illustrates an interface between internal components of an electronic device for generating information for payment according to various embodiments of the present disclosure;

전자장치(예: 전자장치(101))는 노멀 영역(Normal World, 예를 들어, REE(410)) 및 보안 처리 영역을 포함할 수 있다.The electronic device (eg, the electronic device 101 ) may include a normal world (eg, REE 410 ) and a security processing region.

노멀 영역은 결제 어플리케이션(3201), 예를 들어, 도 9의 결제 어플리케이션(912)을 적어도 하나 이상 포함할 수 있다. 보안 처리 영역은 보안 영역(Secure World, 예를 들어, TEE(420))와 보안 모듈(예: 내장형 보안 요소(embedded Secure Element, eSE)를 포함할 수 있다. 보안 처리 영역은 보안이 요구되는 데이터를 안전한 환경 내에서 저장하고 관련된 동작을 수행할 수 있는 영역일 수 있다. The normal area may include at least one payment application 3201 , for example, the payment application 912 of FIG. 9 . The secure processing area may include a secure world (eg, TEE 420 ) and a security module (eg, an embedded Secure Element (eSE)). The secure processing area may include data requiring security. may be an area that can store and perform related operations in a secure environment.

다양한 실시예에서, 보안 처리 영역은 적어도 하나의 이상의 보안 모듈(예: eSE)로만 구성될 수 있다. 적어도 하나의 이상의 보안 모듈(예: eSE)로만 보안 처리 영역이 구성되면, 보안 모듈(eSE) 중 적어도 하나는 TEE 내의 구성 요소의 동작(예를 들어, MST 드라이버 모듈, 또는 보안 어플리케이션의 동작)을 수행할 수 있다. In various embodiments, the security processing area may be configured only with at least one or more security modules (eg, eSE). If the security processing area is configured only with at least one or more security modules (eg, eSE), at least one of the security modules (eSE) controls the operation of the component in the TEE (eg, the operation of the MST driver module or the security application). can be done

다양한 실시예에서, 보안 처리 영역은 적어도 하나의 이상의 보안 영역(예: TEE)으로만 구성될 수 있다. 적어도 하나의 이상의 보안 영역(예: TEE)으로만 보안 처리 영역이 구성되면, 보안 영역(예: TEE) 중 적어도 하나는 보안 모듈(eSE)의 동작을 수행할 수 있다.보안 영역은 TEE 내부의 어플리케이션(예: 보안 어플리케이션(3202,trusted application, TA), 보안 모듈(3203, 예를 들어, 내장형 보안 요소(eSE), 도 9의 보안 저장소(916)) 및 MST 드라이버 모듈(3205, MST TA, 예를 들어, 도 18의 MST 드라이버 모듈(1827))을 포함할 수 있다. 보안 모듈(3203)은 하나 이상의 결제 관련 프로그램(applet)을 저장할 수 있다. In various embodiments, the security processing area may consist of only at least one or more security areas (eg, TEE). If the security processing area is configured with only at least one security area (eg, TEE), at least one of the security areas (eg, TEE) may perform an operation of the security module (eSE). application (eg, secure application 3202, trusted application, TA), secure module 3203, eg, embedded secure element (eSE), secure store 916 of FIG. 9) and MST driver module 3205, MST TA; For example, it may include the MST driver module 1827 of Fig. 18) The security module 3203 may store one or more payment-related programs (applets).

결제 어플리케이션(3201)은 현재 시간에 관련된 정보(예를 들어, UTC(Coordinated Universal Time) 정보)를 보안 영역으로 전송할 수 있다.The payment application 3201 may transmit information related to the current time (eg, coordinated universal time (UTC) information) to the security area.

예를 들면, 전자장치(예: 전자장치(101))는 전자 장치에 포함된 운영체제(예를 들어, AndroidTM OS) 통해 UTC 정보를 획득할 수 있다. 전자장치(예: 전자장치(101))는 NITZ(network identity and time zone) 또는 NTP(network time protocol)등을 통해 UTC 정보를 획득할 수 있고, 외부 서버(예: 제 1 관리서버)도 UTC 정보를 획득하면 전자장치와 외부서버는 시간이 동기화 되어 상기 시간 인증 코드를 인증할 수 있다. 외부 서버도 전자장치와 동일한 방법(예: NITZ 또는 NTP)을 이용해서 특정시간 값을 획득할 수 있다.For example, the electronic device (eg, the electronic device 101) may acquire UTC information through an operating system (eg, Android TM OS) included in the electronic device. The electronic device (eg, the electronic device 101) may acquire UTC information through a network identity and time zone (NITZ) or a network time protocol (NTP), and an external server (eg, the first management server) may also obtain UTC information. When the information is obtained, the time is synchronized between the electronic device and the external server to authenticate the time authentication code. An external server may also acquire a specific time value using the same method as the electronic device (eg, NITZ or NTP).

결제 어플리케이션(3201)은 현재 시간에 관련된 정보(예: UTC 정보)를 보안 어플리케이션(3202, TA)로 전송할 수 있다. 보안 어플리케이션(3202)는 현재 시간에 관련된 정보(예: UTC 정보)를 보안 모듈(3203)에 전달할 수 있다. The payment application 3201 may transmit information related to the current time (eg, UTC information) to the security application 3202 (TA). The security application 3202 may transmit information related to the current time (eg, UTC information) to the security module 3203 .

보안 모듈(3203)은 적어도 하나 이상의 결제 정보(예: 토큰, 토큰 크립토그램 생성을 위한 키)를 포함할 수 있다. 전자장치(예: 전자장치(101))는 적어도 하나 이상의 통신모듈(예를 들어, 도 12의 제 1 통신 모듈(1210), 및 제 2 통신 모듈(1212)를 포함할 수 있다. 보안 모듈(3203)은 적어도 하나의 통신 모듈 각각에 대응하는 인증 정보를 포함할 수 있다. The security module 3203 may include at least one or more pieces of payment information (eg, a token, a key for generating a token cryptogram). The electronic device (eg, the electronic device 101 ) may include at least one communication module (eg, the first communication module 1210 and the second communication module 1212 of FIG. 12 ). 3203) may include authentication information corresponding to each of the at least one communication module.

보안 모듈(3203)은 결제 관련 프로그램(3204)를 이용하여 카드에서 트랙 2(track 2) 정보를 생성할 수 있다. 결제 관련 프로그램(3204)은, 암호와 관련된 알고리즘, 예를 들어, HMAC (hash-based message authentication code) 알고리즘을 포함할 수 있다.The security module 3203 may generate track 2 information from the card using the payment-related program 3204 . The payment-related program 3204 may include an encryption-related algorithm, for example, a hash-based message authentication code (HMAC) algorithm.

결제 관련 프로그램(3204)은 현재 시간에 관련된 정보(예: UTC 정보) 및 적어도 하나 이상의 결제 정보(예: 토큰, 토큰 크립토그램 생성을 위한 키) 중 적어도 하나에 기초하여, 타임스탬프 정보 및 결제 정보(예를 들어, 트랙 2(track 2) 정보) 중 적어도 하나 이상을 생성할 수 있다. 타임스탬프 정보를 이용하여 생성된 결제 정보는 MST 모듈에 대응하는 인증정보를 이용하여 생성될 수 있다.The payment related program 3204 is based on at least one of information related to the current time (eg, UTC information) and at least one or more payment information (eg, a token, a key for generating a token cryptogram), timestamp information and payment information At least one of (eg, track 2 information) may be generated. The payment information generated using the timestamp information may be generated using authentication information corresponding to the MST module.

트랙 2(track 2) 정보는 결제에 이용되는 결제 정보로서, 결제 정보는 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number) 중 적어도 하나 이상을 포함할 수 있다. 다양한 실시에에서, 결제 정보에 포함된 유효(expiry) 정보는 신용카드의 유효기간에 관한 정보일 수 있다.Track 2 information is payment information used for payment, and payment information includes timestamp information, validity information, service code, random number, verification number, It may include at least one of version information and a sequence number. In various embodiments, the expiry information included in the payment information may be information regarding the validity period of the credit card.

버전 정보(version information)는 결제 정보의 생성의 알고리즘 버전을 나타내는 정보일 수 있고, 시퀀스 번호는 결제 정보가 사용된 횟수를 카운팅하는 정보일 수 있다.The version information may be information indicating an algorithm version of generation of payment information, and the sequence number may be information counting the number of times payment information is used.

타임스탬프 정보는 현재 시간, 프로비저닝 타임(provisioning time), 기준 시간(reference time), 또는 유효 기간(validity period) 중 적어도 하나를 이용하여 생성될 수 있다.The timestamp information may be generated using at least one of a current time, a provisioning time, a reference time, or a validity period.

현재 시간은 UTC 정보에 기초한 시간일 수 있다. 현재 시간은 결제 어플리케이션(3201)이 결제를 요청한 시간일 수 있다. 프로비저닝 타임(provisioning time)은 토큰이 배포될 때, 토큰 서버 또는 토큰 서비스 프로바이더(token service provider(TSP), 예를 들어, 도 7의 730)에서 전자 장치로 토큰이 전달된 시간일 수 있다. 기준 시간(reference time)은 영점 값(zero value)로 설정될 수 있다. 다양한 실시예에서, 기준 시간(reference time)은, 예를 들어, 프로비저닝 타임(provisioning time)과 동일할 수 있다. The current time may be a time based on UTC information. The current time may be a time when the payment application 3201 requests payment. The provisioning time may be a time when a token is delivered from a token server or a token service provider (TSP), for example, 730 of FIG. 7 , to the electronic device when the token is distributed. The reference time may be set to a zero value. In various embodiments, the reference time may be equal to, for example, a provisioning time.

유효 기간(validity period)은 결제 요청한 시간으로부터 시작되어 생성된 토큰(Token)이 유효하게 사용될 수 있도록 미리 설정된 시간으로서, 전자 장치는 결제 서버, 또는 금융 서버로부터 유효 기간에 대한 정보를 수신할 수 있다. 예를 들어, 유효 기간(validity period)은 180초로 설정될 수 있다.The validity period is a time preset so that the generated token can be used effectively starting from the payment request time, and the electronic device may receive information about the validity period from the payment server or the financial server. . For example, the validity period may be set to 180 seconds.

보안 모듈(3201), 보안 어플리케이션(3202) 또는 보안 영역 중 적어도 하나는 UTC 정보에 기초한 현재 시간, 프로비저닝 타임(provisioning time) 및 유효 기간(validity period)을 이용하여 타임스탬프 정보를 생성할 수 있다.At least one of the security module 3201, the security application 3202, or the security area may generate timestamp information using the current time, provisioning time, and validity period based on UTC information.

예를 들어, 타임스탬프 정보는 수학식 1과 같을 수 있다.For example, the timestamp information may be as in Equation (1).

[수학식 1][Equation 1]

타임스탬프 정보=FLOOR((현재 시간- 프로비저닝 타임) / 유효 기간)Timestamp info=FLOOR((current time - provisioning time) / validity period)

FLOOR 함수는 소수점 내림에 관한 함수일 수 있다.The FLOOR function may be a function for rounding off the decimal point.

다양한 실시예에서, 보안 모듈(3201), 보안 어플리케이션(3202) 또는 보안 영역 중 적어도 하나는 UTC 정보에 기초한 현재 시간, 기준 시간(reference time) 및 유효 기간(validity period)을 이용하여 타임스탬프 정보를 생성할 수 있다.In various embodiments, at least one of the security module 3201, the security application 3202, or the security domain uses the current time based on UTC information, a reference time, and a validity period to obtain timestamp information. can create

예를 들어, 타임스탬프 정보는 수학식 2와 같을 수 있다.For example, the timestamp information may be as in Equation (2).

[수학식 2][Equation 2]

타임스탬프 정보=FLOOR((현재 시간- 기준 시간) / 유효 기간)Timestamp info=FLOOR((current time - base time) / valid period)

보안 모듈(3201)은 토큰, 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number) 중 적어도 하나 이상을 포함하는 정보를 토큰 크립토그램 생성을 위한 키를 이용하여 인증 코드 또는 인증 정보를 생성할 수 있다.Security module 3201 is a token, timestamp information, validity (expiry) information, service code (service code), random number (random number), authentication number (verification number), version information (version information) or sequence number (sequence) number), an authentication code or authentication information may be generated by using the key for generating a token cryptogram.

보안 모듈(3201)은 토큰, 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number) 및 인증 코드 또는 인증 정보 중 적어도 하나 이상을 포함하는 결제 정보(예, 트랙 2 정보)를 생성할 수 있다.The security module 3201 includes at least one or more of a token, timestamp information, validity information, service code, random number, verification number, and authentication code or authentication information. payment information (eg, track 2 information) can be created.

다양한 실시예에 따르면, 보안 모듈(3201)은 토큰 크립토그램 생성을 위한 키를 이용하여 UTC 정보를 암호화한 원타임 패스워드(One Time Password) 코드를 생성하고, 원타임 패스워드(One Time Password) 코드를 이용하여 결제 정보를 생성할 수 있다.According to various embodiments, the security module 3201 generates a One Time Password code in which UTC information is encrypted using a key for generating a token cryptogram, and uses the One Time Password code. You can create payment information.

보안 모듈(3201)은 토큰, 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number) 및 원타임 패스워드(one time password) 코드 중 적어도 하나 이상을 포함하는 결제 정보(예, 트랙 2 정보)를 생성할 수 있다.Security module 3201 is at least one of a token, timestamp information, validity information, service code (service code), random number (random number), authentication number (verification number) and one time password (one time password) code Payment information (eg, track 2 information) including the above may be generated.

생성된 결제 정보는 MST 드라이버 모듈(3205, MST TA, 예를 들어, 도 18의 MST 드라이버 모듈(1827))을 이용하여 결제 어플리케이션(3201) 또는 외부 전자 장치로 전송될 수 있다.The generated payment information may be transmitted to the payment application 3201 or an external electronic device using the MST driver module 3205 ( MST TA, for example, the MST driver module 1827 of FIG. 18 ).

다양한 실시예에 따르면, 생성된 결제 정보는 NFC 모듈(예, 도 8의 820)을 이용하여 결제 어플리케이션(3201) 또는 외부 전자 장치로 전송될 수 있다.According to various embodiments, the generated payment information may be transmitted to the payment application 3201 or an external electronic device using an NFC module (eg, 820 of FIG. 8 ).

도 33은 다양한 실시예에 따른 결제를 위한 정보 생성을 위한 전자 장치의 내부 구성 요소들 간의 인터페이스를 도시한다.33 illustrates an interface between internal components of an electronic device for generating information for payment according to various embodiments of the present disclosure;

전자장치(예: 전자장치(101))는 노멀 영역(Normal World, 예를 들어, REE(410)) 및 보안 처리 영역을 포함할 수 있다.The electronic device (eg, the electronic device 101 ) may include a normal world (eg, REE 410 ) and a security processing region.

노멀 영역은 결제 어플리케이션(3301), 예를 들어, 도 9의 결제 어플리케이션(912)을 적어도 하나 이상 포함할 수 있다. 보안 처리 영역은 보안 영역(Secure World, 예를 들어, TEE(420))을 포함할 수 있다. 보안 처리 영역은 보안이 요구되는 데이터를 안전한 환경 내에서 저장하고 관련된 동작을 수행할 수 있는 영역일 수 있다.The normal area may include at least one payment application 3301 , for example, the payment application 912 of FIG. 9 . The secure processing area may include a secure world (eg, TEE 420 ). The security processing area may be an area capable of storing data requiring security in a safe environment and performing a related operation.

보안 영역은 TEE 내부의 어플리케이션(예: 보안 어플리케이션(3304,trusted application(TA)), 토큰 보안 어플리케이션(3302, 예를 들어, 내장형 보안 요소 (eSE), 도 9의 보안 저장소(916)) 및 MST 드라이버 모듈(3305, MST TA, 예를 들어, 도 18의 MST 드라이버 모듈(1827))을 포함할 수 있다. 토큰 보안 어플리케이션(3302)은 결제 관련 프로그램(3303, SDK)을 포함할 수 있다. The security realm includes applications inside the TEE (eg, trusted application (TA) 3304), token security application 3302 (eg, embedded secure element (eSE), secure storage 916 in FIG. 9) and MST. It may include a driver module 3305, MST TA, for example, the MST driver module 1827 of Fig. 18) The token security application 3302 may include a payment-related program 3303 (SDK).

결제 어플리케이션(3301)은 현재 시간에 관련된 정보(예를 들어, UTC(Coordinated Universal Time) 정보)를 보안 영역으로 전송할 수 있다.The payment application 3301 may transmit information related to the current time (eg, coordinated universal time (UTC) information) to the security area.

예를 들면, 전자장치(예: 전자장치(101))는 전자 장치에 포함된 운영체제(예를 들어, AndroidTM OS) 통해 UTC 정보를 획득할 수 있다. 전자장치(예: 전자장치(101))는 NITZ(network identity and time zone) 또는 NTP(network time protocol)를 통해 UTC 정보를 획득할 수 있고, 외부 서버(예: 제 1 관리서버)도 UTC 정보를 획득하면 전자장치와 외부서버는 시간이 동기화 되어 상기 시간 인증 코드를 인증할 수 있다. 외부 서버도 전자장치와 동일한 방법(예: NITZ 또는 NTP)을 이용해서 특정시간 값을 획득할 수 있다.For example, the electronic device (eg, the electronic device 101) may acquire UTC information through an operating system (eg, Android TM OS) included in the electronic device. The electronic device (eg, the electronic device 101) may acquire UTC information through a network identity and time zone (NITZ) or a network time protocol (NTP), and an external server (eg, the first management server) also obtains UTC information Upon obtaining , the electronic device and the external server may synchronize time and authenticate the time authentication code. An external server may also acquire a specific time value using the same method as the electronic device (eg, NITZ or NTP).

결제 어플리케이션(3301)은 현재 시간에 관련된 정보(예: UTC 정보)를 보안 어플리케이션(3304, TA)로 전송할 수 있다. The payment application 3301 may transmit information related to the current time (eg, UTC information) to the security application 3304 (TA).

토큰 보안 어플리케이션(3302)은 적어도 하나 이상의 결제 정보(예: 토큰, 토큰 크립토그램 생성을 위한 키)를 포함할 수 있다. 전자장치(예: 전자장치(101))는 적어도 하나 이상의 통신모듈(예를 들어, 도 12의 제 1 통신 모듈(1210), 및 제 2 통신 모듈(1212)를 포함할 수 있다. 토큰 보안 어플리케이션(3302)은 적어도 하나의 통신 모듈 각각에 대응하는 인증 정보를 포함할 수 있다. The token security application 3302 may include at least one or more payment information (eg, a token, a key for generating a token cryptogram). The electronic device (eg, the electronic device 101) may include at least one communication module (eg, the first communication module 1210 and the second communication module 1212 of FIG. 12 ). Token security application 3302 may include authentication information corresponding to each of the at least one communication module.

토큰 보안 어플리케이션(3302)은 결제 관련 프로그램(3303)를 이용하여 카드에서 트랙 2(track 2) 정보를 생성할 수 있다. 보안 어플리케이션(3304, TA)은 현재 시간에 관련된 정보(예: UTC 정보)및 적어도 하나 이상의 결제 정보(예: 토큰, 토큰 크립토그램 생성을 위한 키) 중 적어도 하나에 기초하여, 타임스탬프 정보 및 결제 정보(예를 들어, 수정된 트랙 2(track 2) 정보) 중 적어도 하나 이상을 생성할 수 있다. 타임스탬프 정보를 이용하여 생성된 결제 정보는 MST 모듈에 대응하는 인증정보를 이용하여 생성될 수 있다. 보안 어플리케이션(3304, TA)은, 암호와 관련된 알고리즘, 예를 들어, HMAC (Hash-based Message Authentication Code) 알고리즘을 포함할 수 있다.The token security application 3302 may generate track 2 information from the card using the payment-related program 3303 . The security application (3304, TA) is based on at least one of information related to the current time (eg, UTC information) and at least one or more payment information (eg, a token, a key for generating a token cryptogram), timestamp information and payment At least one of information (eg, modified track 2 information) may be generated. The payment information generated using the timestamp information may be generated using authentication information corresponding to the MST module. The security application 3304 (TA) may include an algorithm related to encryption, for example, a Hash-based Message Authentication Code (HMAC) algorithm.

수정된 트랙 2(track 2) 정보는 결제에 이용되는 결제 정보로서, 결제 정보는 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number) 중 적어도 하나 이상을 포함할 수 있다. 다양한 실시에에서, 결제 정보에 포함된 유효(expiry) 정보는 신용카드의 유효기간에 관한 정보일 수 있다.The corrected track 2 information is payment information used for payment, and the payment information includes timestamp information, validity information, service code, random number, and verification number. ), version information, and at least one of a sequence number. In various embodiments, the expiry information included in the payment information may be information regarding the validity period of the credit card.

타임스탬프 정보는 현재 시간, 프로비저닝 타임(provisioning time), 기준 시간(reference time), 또는 유효 기간(validity period) 중 적어도 하나를 이용하여 생성될 수 있다.The timestamp information may be generated using at least one of a current time, a provisioning time, a reference time, or a validity period.

현재 시간은 UTC 정보에 기초한 시간일 수 있다. 현재 시간은 결제 어플리케이션(3301)이 결제를 요청한 시간일 수 있다. 프로비저닝 타임(provisioning time)은 토큰이 배포될 때, 토큰 서버 또는 토큰 서비스 프로바이더(token service provider(TSP), 예를 들어, 도 7의 730)에서 전자 장치로 토큰이 전달된 시간일 수 있다. 기준 시간(reference time)은 영점 값(zero value)로 설정될 수 있다. 다양한 실시예에서, 기준 시간(reference time)은, 예를 들어, 프로비저닝 타임(provisioning time)과 동일할 수 있다. The current time may be a time based on UTC information. The current time may be a time when the payment application 3301 requests payment. The provisioning time may be a time when a token is delivered from a token server or a token service provider (TSP), for example, 730 of FIG. 7 , to the electronic device when the token is distributed. The reference time may be set to a zero value. In various embodiments, the reference time may be equal to, for example, a provisioning time.

유효 기간(validity period)은 결제 요청한 시간으로부터 시작되어 생성된 토큰(Token)이 유효하게 사용될 수 있도록 미리 설정된 시간으로서, 전자 장치는 결제 서버, 또는 금융 서버로부터 유효 기간에 대한 정보를 수신할 수 있다. 예를 들어, 유효 기간(validity period)은 180초로 설정될 수 있다.The validity period is a time preset so that the generated token can be used effectively starting from the payment request time, and the electronic device may receive information about the validity period from the payment server or the financial server. . For example, the validity period may be set to 180 seconds.

토큰 보안 어플리케이션(3302), 보안 어플리케이션(3304) 또는 보안 영역 중 적어도 하나는 UTC 정보에 기초한 현재 시간, 프로비저닝 타임(provisioning time) 및 유효 기간(validity period)을 이용하여 타임스탬프 정보를 생성할 수 있다.At least one of the token security application 3302, the security application 3304, or the security domain may generate timestamp information using the current time, provisioning time, and validity period based on UTC information. .

다양한 실시예에서, 토큰 보안 어플리케이션(3302), 보안 어플리케이션(3304) 또는 보안 영역 중 적어도 하나는 UTC 정보에 기초한 현재 시간, 기준 시간(reference time) 및 유효 기간(validity period)을 이용하여 타임스탬프 정보를 생성할 수 있다. In various embodiments, at least one of the token security application 3302 , the security application 3304 , or the security domain uses the current time based on UTC information, a reference time, and a validity period to time stamp information can create

보안 어플리케이션(3304)은 토큰, 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number) 중 적어도 하나 이상을 포함하는 정보를 토큰 크립토그램 생성을 위한 키를 이용하여 인증 코드 또는 인증 정보를 생성할 수 있다. Security application 3304 is a token, timestamp information, validity (expiry) information, service code (service code), random number (random number), authentication number (verification number), version information (version information) or sequence number (sequence) number), an authentication code or authentication information may be generated by using the key for generating a token cryptogram.

보안 어플리케이션(3304)은 토큰, 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number) 및 인증 코드 또는 인증 정보 중 적어도 하나 이상을 포함하는 결제 정보(예, 수정된 트랙 2 정보)를 생성할 수 있다. 다양한 실시에에서, 결제 정보에 포함된 유효(expiry) 정보는 신용카드의 유효기간에 관한 정보일 수 있다.The security application 3304 includes at least one of a token, timestamp information, validity information, a service code, a random number, a verification number, and an authentication code or authentication information. payment information (eg, modified track 2 information) can be created. In various embodiments, the expiry information included in the payment information may be information regarding the validity period of the credit card.

다양한 실시예에 따르면, 보안 어플리케이션(3304)은 토큰 크립토그램 생성을 위한 키를 이용하여 UTC 정보를 암호화한 원타임 패스워드(One Time Password) 코드를 생성하고, 원타임 패스워드(One Time Password) 코드를 이용하여 결제 정보를 생성할 수 있다.According to various embodiments, the security application 3304 generates a One Time Password code in which UTC information is encrypted using a key for generating a token cryptogram, and uses the One Time Password code. You can create payment information.

보안 어플리케이션(3304)은 토큰, 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number) 및 원타임 패스워드(One Time Password) 코드 중 적어도 하나 이상을 포함하는 결제 정보(예, 수정된 트랙 2 정보)를 생성할 수 있다. 다양한 실시에에서, 결제 정보에 포함된 유효(expiry) 정보는 신용카드의 유효기간에 관한 정보일 수 있다.Security application 3304 is at least one of a token, timestamp information, validity information, service code (service code), random number (random number), verification number (verification number) and one-time password (One Time Password) code Payment information (eg, corrected track 2 information) including the above may be generated. In various embodiments, the expiry information included in the payment information may be information regarding the validity period of the credit card.

생성된 결제 정보는 MST 드라이버 모듈(3305, MST TA, 예를 들어, 도 18의 MST 드라이버 모듈(1827))을 이용하여 결제 어플리케이션(3301) 또는 외부 전자 장치로 전송될 수 있다.The generated payment information may be transmitted to the payment application 3301 or an external electronic device using the MST driver module 3305 (MST TA, for example, the MST driver module 1827 of FIG. 18).

다양한 실시예에 따르면, 생성된 결제 정보는 NFC 모듈(예, 도 8의 820)을 이용하여 결제 어플리케이션(3301) 또는 외부 전자 장치로 전송될 수 있다.According to various embodiments, the generated payment information may be transmitted to the payment application 3301 or an external electronic device using an NFC module (eg, 820 of FIG. 8 ).

도 34는 다양한 실시예에 따른 결제를 위한 정보 생성을 위한 전자 장치의 내부 구성 요소들 간의 인터페이스를 도시한다.34 illustrates an interface between internal components of an electronic device for generating information for payment according to various embodiments of the present disclosure;

전자장치(예: 전자장치(101))는 노멀 영역(Normal World, 예를 들어, REE(410)) 및 보안 처리 영역을 포함할 수 있다.The electronic device (eg, the electronic device 101 ) may include a normal world (eg, REE 410 ) and a security processing region.

노멀 영역은 보안 시간 모듈(3401), 결제 어플리케이션(3402), 예를 들어, 도 9의 결제 어플리케이션(912)을 적어도 하나 이상 포함할 수 있다. 보안 처리 영역은 보안 영역(Secure World, 예를 들어, TEE(420))을 포함할 수 있다. 보안 처리 영역은 보안이 요구되는 데이터를 안전한 환경 내에서 저장하고 관련된 동작을 수행할 수 있는 영역일 수 있다.The normal region may include at least one of a secure time module 3401 and a payment application 3402 , for example, the payment application 912 of FIG. 9 . The secure processing area may include a secure world (eg, TEE 420 ). The security processing area may be an area capable of storing data requiring security in a safe environment and performing a related operation.

보안 영역은 TEE 내부의 어플리케이션(예: 보안 어플리케이션(3403,trusted application(TA)), 보안 모듈(3404, 예를 들어, 내장형 보안 요소(eSE), 도 9의 보안 저장소(916)) 및 MST 드라이버 모듈(3406, MST TA, 예를 들어, 도 18의 MST 드라이버 모듈(1827))을 포함할 수 있다. 보안 모듈(3404)은 결제 관련 프로그램(3405, Applet)을 포함할 수 있다. The security realm includes applications inside the TEE (eg, trusted application (TA) 3403), a security module 3404 (eg, embedded secure element (eSE), secure storage 916 in FIG. 9) and MST driver. and a module 3406 (MST TA, for example, the MST driver module 1827 of Fig. 18) The security module 3404 may include a payment-related program 3405 (Applet).

보안 시간 모듈(3401)은 사용자 권한으로 변경되지 않는 시간 정보를 관리하는 모듈로서, 노멀 영역(Normal World, 예를 들어, REE(410))에 포함될 수 있다. 다양한 실시예에서, 노멀 영역(Normal World, 예를 들어, REE(410)), 보안 영역(Secure World, 예를 들어, TEE(420)) 또는 전자장치 외부(예: 서버)에 구현될 수 있다. 시간 정보는 주기적으로 외부 장치와 싱크를 맞출 수 있다. 전자장치(예: 전자장치(101))는 전자 장치 내의 시간 정보를 사용자가 변경할 수 없도록 할 수 있다.The secure time module 3401 is a module for managing time information that is not changed by user authority, and may be included in a normal world (eg, REE 410 ). In various embodiments, it may be implemented in a normal area (eg, the REE 410), a secure area (eg, the TEE 420), or outside the electronic device (eg, a server). . The time information may be periodically synchronized with an external device. The electronic device (eg, the electronic device 101) may prevent the user from changing time information in the electronic device.

보안 시간 모듈(3401)은 현재 시간에 관련된 정보(예를 들어, UTC(Coordinated Universal Time) 정보)를 결제 어플리케이션(3402)에 전송할 수 있다.The secure time module 3401 may transmit information related to the current time (eg, coordinated universal time (UTC) information) to the payment application 3402 .

결제 어플리케이션(3402)은 현재 시간에 관련된 정보(예를 들어, UTC(Coordinated Universal Time) 정보)를 보안 영역으로 전송할 수 있다.The payment application 3402 may transmit information related to the current time (eg, coordinated universal time (UTC) information) to the secure area.

예를 들면, 전자장치(예: 전자장치(101))는 전자 장치에 포함된 운영체제(예를 들어, AndroidTM OS) 통해 UTC 정보를 획득할 수 있다. 전자장치(예: 전자장치(101))는 NITZ(network identity and time zone) 또는 NTP(network time protocol)를 통해 UTC 정보를 획득할 수 있고, 외부 서버(예:제 1 관리서버)도 UTC 정보를 획득하면 전자장치와 외부서버는 시간이 동기화 되어 상기 시간 인증 코드를 인증할 수 있다. 외부 서버도 전자장치와 동일한 방법(예:NITZ 또는 NTP)을 이용해서 특정시간 값을 획득할 수 있다.For example, the electronic device (eg, the electronic device 101) may acquire UTC information through an operating system (eg, Android TM OS) included in the electronic device. The electronic device (eg, the electronic device 101) may acquire UTC information through a network identity and time zone (NITZ) or a network time protocol (NTP), and an external server (eg, the first management server) also obtains UTC information Upon obtaining , the electronic device and the external server may synchronize time and authenticate the time authentication code. An external server may also acquire a specific time value using the same method as the electronic device (eg, NITZ or NTP).

결제 어플리케이션(3402)은 현재 시간에 관련된 정보(예: UTC 정보)를 보안 어플리케이션(3403, TA)로 전송할 수 있다. 보안 어플리케이션(3403)은 현재 시간에 관련된 정보(예: UTC 정보)를 보안 모듈(3404)에 전달할 수 있다. The payment application 3402 may transmit information related to the current time (eg, UTC information) to the security application 3403 (TA). The security application 3403 may transmit information (eg, UTC information) related to the current time to the security module 3404 .

보안 모듈(3404)은 적어도 하나 이상의 결제 정보(예: 토큰, 토큰 크립토그램 생성을 위한 키)를 포함할 수 있다. 전자장치(예: 전자장치(101))는 적어도 하나 이상의 통신모듈(예를 들어, 도 12의 제 1 통신 모듈(1210), 및 제 2 통신 모듈(1212)를 포함할 수 있다. 보안 모듈(3404)은 적어도 하나의 통신 모듈 각각에 대응하는 인증 정보를 포함할 수 있다. The security module 3404 may include at least one or more pieces of payment information (eg, a token, a key for generating a token cryptogram). The electronic device (eg, the electronic device 101 ) may include at least one communication module (eg, the first communication module 1210 and the second communication module 1212 of FIG. 12 ). 3404 may include authentication information corresponding to each of the at least one communication module.

보안 모듈(3404)은 결제 관련 프로그램(3405)를 이용하여 카드에서 트랙 2(track 2) 정보를 생성할 수 있다. 결제 관련 프로그램(3405)은, 암호와 관련된 알고리즘, 예를 들어, HMAC (Hash-based Message Authentication Code) 알고리즘을 포함할 수 있다.The security module 3404 may generate track 2 information in the card using the payment related program 3405 . The payment-related program 3405 may include an encryption-related algorithm, for example, a Hash-based Message Authentication Code (HMAC) algorithm.

결제 관련 프로그램(3405)은 현재 시간에 관련된 정보(예: UTC 정보) 및 적어도 하나 이상의 결제 정보(예: 토큰, 토큰 크립토그램 생성을 위한 키) 중 적어도 하나에 기초하여, 타임스탬프 정보 및 결제 정보(예를 들어, 트랙 2(track 2) 정보) 중 적어도 하나 이상을 생성할 수 있다. 타임스탬프 정보를 이용하여 생성된 결제 정보는 MST 모듈에 대응하는 인증정보를 이용하여 생성될 수 있다.The payment-related program 3405 is based on at least one of information related to the current time (eg, UTC information) and at least one or more payment information (eg, a token, a key for generating a token cryptogram), timestamp information and payment information At least one of (eg, track 2 information) may be generated. The payment information generated using the timestamp information may be generated using authentication information corresponding to the MST module.

트랙 2(track 2) 정보는 결제에 이용되는 결제 정보로서, 결제 정보는 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number) 중 적어도 하나 이상을 포함할 수 있다. 다양한 실시에에서, 결제 정보에 포함된 유효(expiry) 정보는 신용카드의 유효기간에 관한 정보일 수 있다.Track 2 information is payment information used for payment, and payment information includes timestamp information, validity information, service code, random number, verification number, It may include at least one of version information and a sequence number. In various embodiments, the expiry information included in the payment information may be information regarding the validity period of the credit card.

타임스탬프 정보는 현재 시간, 프로비저닝 타임(provisioning time), 기준 시간(reference time), 또는 유효 기간(validity period) 중 적어도 하나를 이용하여 생성될 수 있다.The timestamp information may be generated using at least one of a current time, a provisioning time, a reference time, or a validity period.

현재 시간은 UTC 정보에 기초한 시간일 수 있다. 현재 시간은 결제 어플리케이션(3402)이 결제를 요청한 시간일 수 있다. 프로비저닝 타임(provisioning time)은 토큰이 배포될 때, 토큰 서버 또는 토큰 서비스 프로바이더(token service provider(TSP), 예를 들어, 도 7의 730)에서 전자 장치로 토큰이 전달된 시간일 수 있다. 기준 시간(reference time)은 영점 값(zero value)로 설정될 수 있다. 다양한 실시예에서, 기준 시간(reference time)은, 예를 들어, 프로비저닝 타임(provisioning time)과 동일할 수 있다. The current time may be a time based on UTC information. The current time may be a time when the payment application 3402 requested payment. The provisioning time may be a time when a token is delivered from a token server or a token service provider (TSP), for example, 730 of FIG. 7 , to the electronic device when the token is distributed. The reference time may be set to a zero value. In various embodiments, the reference time may be equal to, for example, a provisioning time.

유효 기간(validity period)은 결제 요청한 시간으로부터 시작되어 생성된 토큰(Token)이 유효하게 사용될 수 있도록 미리 설정된 시간으로서, 전자 장치는 결제 서버, 또는 금융 서버로부터 유효 기간에 대한 정보를 수신할 수 있다. 예를 들어, 유효 기간(validity period)은 180초로 설정될 수 있다.The validity period is a time preset so that the generated token can be used effectively starting from the payment request time, and the electronic device may receive information about the validity period from the payment server or the financial server. . For example, the validity period may be set to 180 seconds.

보안 모듈(3404), 보안 어플리케이션(3403) 또는 보안 영역 중 적어도 하나는 UTC 정보에 기초한 현재 시간, 프로비저닝 타임(provisioning time) 및 유효 기간(validity period)을 이용하여 타임스탬프 정보를 생성할 수 있다.At least one of the security module 3404 , the security application 3403 , and the security region may generate timestamp information using a current time, a provisioning time, and a validity period based on UTC information.

다양한 실시예에서, 보안 모듈(3404), 보안 어플리케이션(3403) 또는 보안 영역 중 적어도 하나는 UTC 정보에 기초한 현재 시간, 기준 시간(reference time) 및 유효 기간(validity period)을 이용하여 타임스탬프 정보를 생성할 수 있다.In various embodiments, at least one of the security module 3404, the security application 3403, or the security domain uses the current time based on UTC information, a reference time, and a validity period to retrieve the timestamp information. can create

보안 모듈(3404)은 토큰, 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number) 중 적어도 하나 이상을 포함하는 정보를 토큰 크립토그램 생성을 위한 키를 이용하여 인증 코드 또는 인증 정보를 생성할 수 있다. 다양한 실시에에서, 결제 정보에 포함된 유효(expiry) 정보는 신용카드의 유효기간에 관한 정보일 수 있다.Security module 3404 is a token, timestamp information, validity (expiry) information, service code (service code), random number (random number), authentication number (verification number), version information (version information) or sequence number (sequence) number), an authentication code or authentication information may be generated by using the key for generating a token cryptogram. In various embodiments, the expiry information included in the payment information may be information regarding the validity period of the credit card.

보안 모듈(3404)은 토큰, 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number) 및 인증 코드 또는 인증 정보 중 적어도 하나 이상을 포함하는 결제 정보(예, 트랙 2 정보)를 생성할 수 있다. 다양한 실시에에서, 결제 정보에 포함된 유효(expiry) 정보는 신용카드의 유효기간에 관한 정보일 수 있다.The security module 3404 includes at least one or more of a token, timestamp information, validity information, service code, random number, verification number, and authentication code or authentication information. payment information (eg, track 2 information) can be created. In various embodiments, the expiry information included in the payment information may be information regarding the validity period of the credit card.

다양한 실시예에 따르면, 보안 모듈(3404)은 토큰 크립토그램 생성을 위한 키를 이용하여 UTC 정보를 암호화한 원타임 패스워드(One Time Password) 코드를 생성하고, 원타임 패스워드(One Time Password) 코드를 이용하여 결제 정보를 생성할 수 있다.According to various embodiments, the security module 3404 generates a One Time Password code in which UTC information is encrypted using a key for generating a token cryptogram, and uses the One Time Password code. You can create payment information.

보안 모듈(3404)은 토큰, 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number) 및 원타임 패스워드(One Time Password) 코드 중 적어도 하나 이상을 포함하는 결제 정보(예, 트랙 2 정보)를 생성할 수 있다. 다양한 실시에에서, 결제 정보에 포함된 유효(expiry) 정보는 신용카드의 유효기간에 관한 정보일 수 있다.The security module 3404 is at least one of a token, timestamp information, validity information, service code, random number, verification number, and One Time Password code. Payment information (eg, track 2 information) including the above may be generated. In various embodiments, the expiry information included in the payment information may be information regarding the validity period of the credit card.

생성된 결제 정보는 MST 드라이버 모듈(3406, MST TA, 예를 들어, 도 18의 MST 드라이버 모듈(1827))을 이용하여 결제 어플리케이션(3402) 또는 외부 전자 장치로 전송될 수 있다.The generated payment information may be transmitted to the payment application 3402 or an external electronic device using the MST driver module 3406 (MST TA, for example, the MST driver module 1827 of FIG. 18).

다양한 실시예에 따르면, 생성된 결제 정보는 NFC 모듈(예, 도 8의 820)을 이용하여 결제 어플리케이션(3402) 또는 외부 전자 장치로 전송될 수 있다.According to various embodiments, the generated payment information may be transmitted to the payment application 3402 or an external electronic device using an NFC module (eg, 820 of FIG. 8 ).

도 35는 다양한 실시예에 따른 결제를 위한 정보 생성을 위한 전자 장치의 내부 구성 요소들 간의 인터페이스를 도시한다.35 illustrates an interface between internal components of an electronic device for generating information for payment according to various embodiments of the present disclosure;

전자장치(예: 전자장치(101))는 노멀 영역(Normal World, 예를 들어, REE(410)) 및 보안 처리 영역을 포함할 수 있다.The electronic device (eg, the electronic device 101 ) may include a normal world (eg, REE 410 ) and a security processing region.

노멀 영역은 결제 어플리케이션(3501), 예를 들어, 도 9의 결제 어플리케이션(912)을 적어도 하나 이상 포함할 수 있다. 보안 처리 영역은 보안 영역(Secure World, 예를 들어, TEE(420))을 포함할 수 있다. 보안 처리 영역은 보안이 요구되는 데이터를 안전한 환경 내에서 저장하고 관련된 동작을 수행할 수 있는 영역일 수 있다.The normal area may include at least one payment application 3501 , for example, the payment application 912 of FIG. 9 . The secure processing area may include a secure world (eg, TEE 420 ). The security processing area may be an area capable of storing data requiring security in a safe environment and performing a related operation.

보안 영역은 보안 시간 모듈(3502), TEE 내부의 어플리케이션(예: 보안 어플리케이션(3503,trusted application(TA)), 보안 모듈(3504, 예를 들어, 내장형 보안 요소(eSE), 도 9의 보안 저장소(916)) 및 MST 드라이버 모듈(3506, MST TA, 예를 들어, 도 18의 MST 드라이버 모듈(1827))을 포함할 수 있다. 보안 모듈(3504)은 결제 관련 프로그램(3505, Applet)을 포함할 수 있다. The secure domain includes a secure time module 3502 , an application inside the TEE (eg, a trusted application (TA) 3503 ), a secure module 3504 , such as an embedded secure element (eSE), and the secure storage of FIG. 9 . 916) and an MST driver module 3506, MST TA, for example, the MST driver module 1827 of Fig. 18) The security module 3504 includes a payment-related program 3505, Applet. can do.

보안 시간 모듈(3502)은 사용자 권한으로 변경되지 않는 시간 정보를 관리하는 모듈로서, 보안 영역(Secure World, 예를 들어, TEE(420))에 포함될 수 있다. 다양한 실시예에서, 노멀 영역(Normal World, 예를 들어, REE(410)), 보안 영역(Secure World, 예를 들어, TEE(420)) 또는 전자장치 외부(예: 서버)에 구현될 수 있다. 시간 정보는 주기적으로 외부 장치와 싱크를 맞출 수 있다. 전자장치(예: 전자장치(101))는 전자 장치 내의 시간 정보를 사용자가 변경할 수 없도록 할 수 있다.The secure time module 3502 is a module for managing time information that is not changed by user authority, and may be included in a secure area (Secure World, for example, TEE 420 ). In various embodiments, it may be implemented in a normal area (eg, the REE 410), a secure area (eg, the TEE 420), or outside the electronic device (eg, a server). . The time information may be periodically synchronized with an external device. The electronic device (eg, the electronic device 101) may prevent the user from changing time information in the electronic device.

결제 어플리케이션(3501)은 보안 시간 모듈(3502)에 보안 시간을 요청할 수 있다.The payment application 3501 may request a secure time from the secure time module 3502 .

보안 시간 모듈(3502)은 현재 시간에 관련된 정보(예를 들어, UTC(Coordinated Universal Time) 정보)를 보안 어플리케이션(3503)에 전송할 수 있다.The secure time module 3502 may transmit information related to the current time (eg, coordinated universal time (UTC) information) to the secure application 3503 .

예를 들면, 전자장치(예: 전자장치(101))는 전자 장치에 포함된 운영체제(예를 들어, AndroidTM OS) 통해 UTC 정보를 획득할 수 있다. 전자장치(예: 전자장치(101))는 NITZ(network identity and time zone) 또는 NTP(network time protocol)를 통해 UTC 정보를 획득할 수 있고, 외부 서버(예:제 1 관리서버)도 UTC 정보를 획득하면 전자장치와 외부서버는 시간이 동기화 되어 상기 시간 인증 코드를 인증할 수 있다. 외부 서버도 전자장치와 동일한 방법(예:NITZ 또는 NTP)을 이용해서 특정시간 값을 획득할 수 있다.For example, the electronic device (eg, the electronic device 101) may acquire UTC information through an operating system (eg, Android TM OS) included in the electronic device. The electronic device (eg, the electronic device 101) may acquire UTC information through a network identity and time zone (NITZ) or a network time protocol (NTP), and an external server (eg, the first management server) also obtains UTC information Upon obtaining , the electronic device and the external server may synchronize time and authenticate the time authentication code. An external server may also acquire a specific time value using the same method as the electronic device (eg, NITZ or NTP).

보안 어플리케이션(3503)은 현재 시간에 관련된 정보(예: UTC 정보)를 보안 모듈(3504)에 전달할 수 있다. The security application 3503 may transmit information (eg, UTC information) related to the current time to the security module 3504 .

보안 모듈(3504)은 적어도 하나 이상의 결제 정보(예: 토큰, 토큰 크립토그램 생성을 위한 키)를 포함할 수 있다. 전자장치(예: 전자장치(101))는 적어도 하나 이상의 통신모듈(예를 들어, 도 12의 제 1 통신 모듈(1210), 및 제 2 통신 모듈(1212)를 포함할 수 있다. 보안 모듈(3504)은 적어도 하나의 통신 모듈 각각에 대응하는 인증 정보를 포함할 수 있다. The security module 3504 may include at least one or more pieces of payment information (eg, a token, a key for generating a token cryptogram). The electronic device (eg, the electronic device 101 ) may include at least one communication module (eg, the first communication module 1210 and the second communication module 1212 of FIG. 12 ). 3504) may include authentication information corresponding to each of the at least one communication module.

보안 모듈(3504)은 결제 관련 프로그램(3505)를 이용하여 카드에서 트랙 2(track 2) 정보를 생성할 수 있다. 결제 관련 프로그램(3505)은, 암호와 관련된 알고리즘, 예를 들어, HMAC (Hash-based Message Authentication Code) 알고리즘을 포함할 수 있다.The security module 3504 may generate track 2 information in the card using the payment-related program 3505 . The payment-related program 3505 may include an encryption-related algorithm, for example, a Hash-based Message Authentication Code (HMAC) algorithm.

결제 관련 프로그램(3505)은 현재 시간에 관련된 정보(예: UTC 정보) 및 적어도 하나 이상의 결제 정보(예: 토큰, 토큰 크립토그램 생성을 위한 키) 중 적어도 하나에 기초하여, 타임스탬프 정보 및 결제 정보(예를 들어, 트랙 2(track 2) 정보) 중 적어도 하나 이상을 생성할 수 있다. 타임스탬프 정보를 이용하여 생성된 결제 정보는 MST 모듈에 대응하는 인증정보를 이용하여 생성될 수 있다.The payment-related program 3505 is based on at least one of information related to the current time (eg, UTC information) and at least one or more payment information (eg, a token, a key for generating a token cryptogram), timestamp information and payment information At least one of (eg, track 2 information) may be generated. The payment information generated using the timestamp information may be generated using authentication information corresponding to the MST module.

트랙 2(track 2) 정보는 결제에 이용되는 결제 정보로서, 결제 정보는 타임스탬프 정보, 유효(expiry), 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number) 중 적어도 하나 이상을 포함할 수 있다. 다양한 실시에에서, 결제 정보에 포함된 유효(expiry) 정보는 신용카드의 유효기간에 관한 정보일 수 있다.Track 2 information is payment information used for payment, and payment information includes timestamp information, validity, service code, random number, verification number, version It may include at least one of version information and a sequence number. In various embodiments, the expiry information included in the payment information may be information regarding the validity period of the credit card.

타임스탬프 정보는 현재 시간, 프로비저닝 타임(provisioning time), 기준 시간(reference time), 또는 유효 기간(validity period) 중 적어도 하나를 이용하여 생성될 수 있다.The timestamp information may be generated using at least one of a current time, a provisioning time, a reference time, or a validity period.

현재 시간은 UTC 정보에 기초한 시간일 수 있다. 현재 시간은 결제 어플리케이션(3501)이 결제를 요청한 시간일 수 있다. 프로비저닝 타임(provisioning time)은 토큰이 배포될 때, 토큰 서버 또는 토큰 서비스 프로바이더(token service provider(TSP), 예를 들어, 도 7의 730)에서 전자 장치로 토큰이 전달된 시간일 수 있다. 기준 시간(reference time)은 영점 값(zero value)로 설정될 수 있다. 다양한 실시예에서, 기준 시간(reference time)은, 예를 들어, 프로비저닝 타임(provisioning time)과 동일할 수 있다. The current time may be a time based on UTC information. The current time may be a time when the payment application 3501 requests payment. The provisioning time may be a time when a token is delivered from a token server or a token service provider (TSP), for example, 730 of FIG. 7 , to the electronic device when the token is distributed. The reference time may be set to a zero value. In various embodiments, the reference time may be equal to, for example, a provisioning time.

유효 기간(validity period)은 결제 요청한 시간으로부터 시작되어 생성된 토큰(Token)이 유효하게 사용될 수 있도록 미리 설정된 시간으로서, 전자 장치는 결제 서버, 또는 금융 서버로부터 유효 기간에 대한 정보를 수신할 수 있다. 예를 들어, 유효 기간(validity period)은 180초로 설정될 수 있다.The validity period is a time preset so that the generated token can be used effectively starting from the payment request time, and the electronic device may receive information about the validity period from the payment server or the financial server. . For example, the validity period may be set to 180 seconds.

보안 모듈(3504), 보안 어플리케이션(3503) 또는 보안 영역 중 적어도 하나는 UTC 정보에 기초한 현재 시간, 프로비저닝 타임(provisioning time) 및 유효 기간(validity period)을 이용하여 타임스탬프 정보를 생성할 수 있다.At least one of the security module 3504, the security application 3503, or the security area may generate timestamp information using the current time, provisioning time, and validity period based on UTC information.

다양한 실시예에서, 보안 모듈(3504), 보안 어플리케이션(3503) 또는 보안 영역 중 적어도 하나는 UTC 정보에 기초한 현재 시간, 기준 시간(reference time) 및 유효 기간(validity period)을 이용하여 타임스탬프 정보를 생성할 수 있다.In various embodiments, at least one of the security module 3504, the security application 3503, or the security domain uses the current time based on UTC information, a reference time, and a validity period to retrieve the timestamp information. can create

보안 모듈(3504)은 토큰, 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number) 중 적어도 하나 이상을 포함하는 정보를 토큰 크립토그램 생성을 위한 키를 이용하여 인증 코드 또는 인증 정보를 생성할 수 있다.The security module 3504 may include a token, timestamp information, validity information, service code, random number, verification number, version information, or sequence number (sequence). number), an authentication code or authentication information may be generated by using the key for generating a token cryptogram.

보안 모듈(3504)은 토큰, 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number) 및 인증 코드 또는 인증 정보 중 적어도 하나 이상을 포함하는 결제 정보(예, 트랙 2 정보)를 생성할 수 있다.The security module 3504 includes at least one of a token, timestamp information, validity information, a service code, a random number, a verification number, and an authentication code or authentication information. payment information (eg, track 2 information) can be created.

다양한 실시예에 따르면, 보안 모듈(3504)은 토큰 크립토그램 생성을 위한 키를 이용하여 UTC 정보를 암호화한 원타임 패스워드(One Time Password) 코드를 생성하고, 원타임 패스워드(One Time Password) 코드를 이용하여 결제 정보를 생성할 수 있다.According to various embodiments, the security module 3504 generates a One Time Password code in which UTC information is encrypted using a key for generating a token cryptogram, and uses the One Time Password code. You can create payment information.

보안 모듈(3504)은 토큰, 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number) 및 원타임 패스워드(One Time Password) 코드 중 적어도 하나 이상을 포함하는 결제 정보(예, 트랙 2 정보)를 생성할 수 있다. 다양한 실시에에서, 결제 정보에 포함된 유효(expiry) 정보는 신용카드의 유효기간에 관한 정보일 수 있다.The security module 3504 is at least one of a token, timestamp information, validity information, a service code, a random number, a verification number, and a One Time Password code. Payment information (eg, track 2 information) including the above may be generated. In various embodiments, the expiry information included in the payment information may be information regarding the validity period of the credit card.

생성된 결제 정보는 MST 드라이버 모듈(3506, MST TA, 예를 들어, 도 18의 MST 드라이버 모듈(1827))을 이용하여 결제 어플리케이션(3501) 또는 외부 전자 장치로 전송될 수 있다.The generated payment information may be transmitted to the payment application 3501 or an external electronic device using the MST driver module 3506 (MST TA, for example, the MST driver module 1827 of FIG. 18).

다양한 실시예에 따르면, 생성된 결제 정보는 NFC 모듈(예, 도 8의 820)을 이용하여 결제 어플리케이션(3501) 또는 외부 전자 장치로 전송될 수 있다.According to various embodiments, the generated payment information may be transmitted to the payment application 3501 or an external electronic device using an NFC module (eg, 820 of FIG. 8 ).

다양한 실시예에 따르면, 전자장치(예: 전자장치(101)) 적어도 하나의 토큰을 저장하도록 동작할 수 있는 보안 모듈(예: 보안모듈(3203)); 제 1 통신 모듈(예: NFC 모듈(820)); 제 2 통신 모듈(예: MST 모듈(810)); 및 상기 보안 모듈(3203, eSE), 상기 제 1 통신 모듈(예: NFC 모듈(820))및 상기 제2 통신 모듈(예: MST 모듈(810))에 기능적으로 연결된 적어도 하나의 프로세서(예: 프로세서(1200))를 포함하며, 상기 적어도 하나의 프로세서(예: 프로세서(1200))는 상기 제 1 통신 모듈(예: NFC 모듈(820)) 또는 상기 제 2 통신 모듈(예: MST 모듈(810)) 중 결제를 위해 이용될 적어도 하나의 통신 모듈을 결정하고, 및 상기 적어도 하나의 토큰 중 상기 적어도 하나의 통신 모듈에 관련된 토큰을 포함하는 결제 정보를 외부 전자 장치(예: 결제 서버, 금융 서버, POS)에 전송하도록 설정될 수 있다.According to various embodiments, an electronic device (eg, the electronic device 101) may include a security module (eg, the security module 3203) operable to store at least one token; a first communication module (eg, NFC module 820); a second communication module (eg, MST module 810); and at least one processor (eg: and a processor 1200), wherein the at least one processor (eg, processor 1200) includes the first communication module (eg, NFC module 820) or the second communication module (eg, MST module 810). )) determines at least one communication module to be used for payment, and transmits payment information including a token related to the at least one communication module among the at least one token to an external electronic device (eg, a payment server, a financial server) , POS).

다양한 실시예에 따르면, 상기 프로세서(예: 프로세서(1200))는 타임스탬프, 카드의 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number) 중 적어도 하나를 이용하여 상기 결제 정보를 생성하도록 설정될 수 있다.According to various embodiments, the processor (eg, the processor 1200 ) includes a timestamp, card expiry information, service code, random number, verification number, and version. It may be set to generate the payment information using at least one of version information and a sequence number.

다양한 실시예에 따르면, 상기 타임스탬프는 프로비저닝 타임(provisioning time), 기준 시간(reference time), 또는 유효 기간(validity period) 중 적어도 하나에 기초하여 생성될 수 있다.According to various embodiments, the timestamp may be generated based on at least one of a provisioning time, a reference time, or a validity period.

다양한 실시예에 따르면, 상기 적어도 하나의 토큰은 상기 제 1 통신 모듈(예: NFC 모듈(820))과 관련된 제 1 토큰 및 상기 제 2 통신 모듈(예: MST 모듈(810))과 관련된 제 2 토큰을 포함하고, 상기 결제 정보는 상기 제 1 토큰 또는 상기 제 2 토큰 중 적어도 하나를 포함할 수 있다.According to various embodiments, the at least one token is a first token associated with the first communication module (eg, NFC module 820 ) and a second token associated with the second communication module (eg, MST module 810 ). and a token, and the payment information may include at least one of the first token and the second token.

다양한 실시예에 따르면, 상기 보안 모듈(예: 보안 모듈(3203))은 내장형 보안 요소(eSE)를 포함할 수 있다.According to various embodiments, the security module (eg, the security module 3203) may include an embedded security element (eSE).

다양한 실시예에 따르면, 상기 제 1 통신 모듈(예: NFC 모듈(820))은 적어도 하나의 근거리 통신(NFC, Near Field Communication) 모듈을 포함할 수 있다.According to various embodiments, the first communication module (eg, the NFC module 820 ) may include at least one Near Field Communication (NFC) module.

다양한 실시예에 따르면, 상기 제 2 통신 모듈(예: MST 모듈(810))은 적어도 하나의 MST(Magnetic Stripe data Transmission) 통신 모듈을 포함하는 전자 장치.According to various embodiments, the second communication module (eg, the MST module 810 ) includes at least one Magnetic Stripe Data Transmission (MST) communication module.

다양한 실시예에 따르면, 상기 적어도 하나의 프로세서(예: 프로세서(1200))는 상기 보안 모듈(예: 제 1 보안 모듈(1607), 보안 모듈(3203)) 또는 상기 프로세서(예: 프로세서(1200))와 기능적으로 연결된 다른(another) 보안 모듈(예: 제 2 보안 모듈(1609), 토큰 보안 어플리케이션(3302)) 중 적어도 하나에서 타임스탬프를 생성하고, 상기 타임스탬프 및 상기 적어도 하나의 통신 모듈에 관련된 상기 토큰 중 적어도 하나에 기초하여, 상기 다른 보안 모듈(예: 제 2 보안 모듈(1609), 토큰 보안 어플리케이션(3302))에서 상기 결제 정보를 생성하도록 설정된 전자 장치.According to various embodiments, the at least one processor (eg, the processor 1200) is the security module (eg, the first security module 1607, the security module 3203) or the processor (eg, the processor 1200) ) and another security module (eg, the second security module 1609, the token security application 3302), and generate a timestamp in the timestamp and the at least one communication module. an electronic device configured to generate the payment information in the other security module (eg, the second security module 1609, the token security application 3302) based on at least one of the associated tokens.

다양한 실시예에 따르면, 상기 적어도 하나의 프로세서(예: 프로세서(1200))는 상기 타임스탬프 및 상기 토큰 중 적어도 하나에 기초하여 토큰 크립토그램 (cryptogram)를 생성하도록 설정될 수 있다.According to various embodiments, the at least one processor (eg, the processor 1200 ) may be configured to generate a token cryptogram based on at least one of the timestamp and the token.

다양한 실시예에 따르면, 상기 보안 모듈(예: 제 1 보안 모듈(1607), 보안 모듈(3203))은 결제 관련 프로그램(예: 결제 관련 프로그램(3204), payment applet)을 포함할 수 있다.According to various embodiments, the security module (eg, the first security module 1607 and the security module 3203) may include a payment-related program (eg, a payment-related program 3204, a payment applet).

다양한 실시예에 따르면, 제 1 보안 영역(예: 보안 모듈(3203)), 제 2 보안 영역(예: 토큰 보안 어플리케이션(3302)) 및 적어도 하나의 결제 신호 모듈(예: 예: MST 모듈(810) 또는 NFC 모듈(820))을 포함하는 전자 장치(예: 전자 장치(101))의 결제 정보 보안 방법에서, 상기 방법은 상기 제 1 보안 영역(예: 보안 모듈(3203))에 상기 적어도 하나의 결제 신호 모듈(예: MST 모듈(810) 또는 NFC 모듈(820)) 각각에 대응되는 적어도 하나의 토큰을 저장하는 동작; 상기 제 1 보안 영역(예: 보안 모듈(3203)) 또는 상기 제 2 보안 영역(예: 토큰 보안 어플리케이션(3302)) 중 적어도 하나의 보안 영역에서 타임스탬프를 생성하는 동작; 상기 적어도 하나의 토큰 중에서 상기 적어도 하나의 결제 신호 모듈(예: MST 모듈(810) 또는 NFC 모듈(820)) 중 하나에 대응하는 토큰 및 상기 타임스탬프 중 적어도 하나에 기초하여, 상기 제 2 보안 영역(예: 토큰 보안 어플리케이션(3302))에서 결제 신호를 생성하는 동작; 및 상기 결제 신호를 외부 전자 장치(예: 결제 서버, 금융 서버, POS)에 전송하는 동작을 포함할 수 있다.According to various embodiments, a first security domain (eg, security module 3203), a second security domain (eg, token security application 3302), and at least one payment signal module (eg, MST module 810) ) or NFC module 820), in the payment information security method of an electronic device (eg, the electronic device 101), the method includes the at least one in the first security area (eg, the security module 3203) storing at least one token corresponding to each of the payment signal modules (eg, the MST module 810 or the NFC module 820); generating a timestamp in at least one of the first security region (eg, the security module 3203) or the second security region (eg, the token security application 3302); Based on at least one of a token corresponding to one of the at least one payment signal module (eg, the MST module 810 or the NFC module 820 ) among the at least one token and the timestamp, the second security area generating a payment signal in (eg, token security application 3302 ); and transmitting the payment signal to an external electronic device (eg, a payment server, a financial server, or a POS).

다양한 실시예에 따르면, 상기 결제 신호를 생성하는 동작은 상기 타임스탬프 및 상기 토큰 중 적어도 하나에 기초하여 토큰 크립토그램(cryptogram)을 생성하는 동작을 포함하고, 상기 결제 신호는 상기 토큰 및 상기 토큰 크립토그램을 포함할 수 있다.According to various embodiments, the generating of the payment signal includes generating a token cryptogram based on at least one of the timestamp and the token, and the payment signal includes the token and the token cryptogram. grams may be included.

다양한 실시예에 따르면, 상기 결제 신호는 카드의 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number) 중 적어도 하나를 포함할 수 있다.According to various embodiments, the payment signal includes card validity information, service code, random number, verification number, version information, or sequence number. number) may be included.

다양한 실시예에 따르면, 상기 타임스탬프는 프로비저닝 타임(provisioning time), 기준 시간(reference time), 또는 유효 기간(validity period) 중 적어도 하나에 기초하여 생성될 수 있다.According to various embodiments, the timestamp may be generated based on at least one of a provisioning time, a reference time, or a validity period.

다양한 실시예에 따르면, 상기 제 1 보안 영역(예: 보안 모듈(3203))은 결제 관련 프로그램(payment applet)을 포함할 수 있다.According to various embodiments, the first security area (eg, the security module 3203) may include a payment applet.

다양한 실시예에 따르면, 상기 제 2 보안 영역(예: 토큰 보안 어플리케이션(3302))은 상기 적어도 하나의 결제 신호 모듈과 관련된 적어도 하나의 어플리케이션을 포함할 수 있다.According to various embodiments, the second security area (eg, the token security application 3302) may include at least one application related to the at least one payment signal module.

다양한 실시예에 따르면, 상기 결제 신호는 적어도 하나의 어플리케이션으로 생성될 수 있다.According to various embodiments, the payment signal may be generated by at least one application.

다양한 실시예에 따르면, 상기 적어도 하나의 결제 신호 모듈(예: MST 모듈(810) 또는 NFC 모듈(820))은 적어도 하나의 MST(Magnetic Stripe data Transmission) 통신 모듈 또는 적어도 하나의 근거리 통신(NFC, Near Field Communication) 모듈을 포함할 수 있다.According to various embodiments, the at least one payment signal module (eg, the MST module 810 or the NFC module 820) may include at least one Magnetic Stripe Data Transmission (MST) communication module or at least one short-range communication (NFC, Near Field Communication) module.

다양한 실시예에 따르면, 상기 제 1 보안 영역(예: TEE)은 제 1 보안 모듈(예 : eSE, 결제 관련 프로그램)을 포함하거나, 또는 상기 제 2 보안 영역(예: TEE)은 제 2 보안 모듈을 포함하고, 상기 적어도 하나의 토큰은 상기 제 1 보안 모듈(예 : eSE, 결제 관련 프로그램)에 저장되거나, 또는 상기 결제 신호는 상기 제 2 보안 모듈(예 : eSE, 결제 관련 프로그램)에서 생성될 수 있다.According to various embodiments, the first security area (eg, TEE) includes a first security module (eg, eSE, payment-related program), or the second security area (eg, TEE) includes a second security module Including, wherein the at least one token is stored in the first security module (eg, eSE, payment-related program), or the payment signal is to be generated in the second security module (eg, eSE, payment-related program) can

도 36은 다양한 실시예에 다른 결제 정보의 유효 시간에 관한 도면이다.36 is a diagram illustrating an effective time of payment information according to various embodiments of the present disclosure;

도 32 내지 도 35를 참조하면, 결제 정보는 토큰, 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number) 및 인증 코드 또는 인증 정보 중 적어도 하나 이상을 포함할 수 있다. 다양한 실시에에서, 결제 정보에 포함된 유효(expiry) 정보는 신용카드의 유효기간에 관한 정보일 수 있다.Referring to FIGS. 32 to 35 , payment information includes a token, timestamp information, validity information, service code, random number, verification number, and authentication code or authentication information. It may include at least one or more of In various embodiments, the expiry information included in the payment information may be information regarding the validity period of the credit card.

유효 기간(validity period)은 결제 요청한 시간으로부터 미리 설정된 시간으로서, 전자 장치는 결제 서버, 또는 금융 서버로부터 유효 기간에 대한 정보를 수신할 수 있다. 예를 들어, 유효 기간(validity period)은 180초로 설정될 수 있다.The validity period is a preset time from a payment request time, and the electronic device may receive information on the validity period from a payment server or a financial server. For example, the validity period may be set to 180 seconds.

유효 기간 내에 타임스탬프 정보를 포함하는 결제 정보가 금융서버로 전송되면 결제를 완료할 수 있다. 유효 기간 이후에 타임스탬프 정보를 포함하는 결제 정보가 금융서버로 전송되지 않으면, 결제가 이루어 지지 않을 수 있다.If payment information including timestamp information is transmitted to the financial server within the validity period, the payment can be completed. If payment information including timestamp information is not transmitted to the financial server after the validity period, payment may not be made.

다양한 실시예에서, 타임스탬프 정보는 수학식 3에 의해서 생성될 수 있다.In various embodiments, the timestamp information may be generated by Equation (3).

[수학식 3][Equation 3]

타임스탬프 정보=(현재시간-타임윈도우)/타임윈도우Timestamp information = (current time-timewindow)/timewindow

수학식 3을 참조하면, 타임윈도우(time window)값이 도36과 같이 90 초면, verification_code 2가 생성되는 타임프레임이 0~89초이면 타임스탬프 정보가 0이 될 수 있다. TSP(토큰 서비스 프로바이더) 서버에서는 지연값(delay)를 계산하여 0~179 초까지는 유효 기간으로 판단할 수 있다.Referring to Equation 3, if the time window value is 90 seconds as shown in FIG. 36, and the time frame at which verification_code 2 is generated is 0 to 89 seconds, the timestamp information may be 0. The TSP (Token Service Provider) server can calculate the delay and determine the validity period from 0 to 179 seconds.

도 37 내지 도 39는 다양한 실시예에 따른 결제 정보(예, 카드)의 구조의 일 예에 대한 도면이다.37 to 39 are diagrams illustrating an example of a structure of payment information (eg, a card) according to various embodiments of the present disclosure;

도 37에서, 카드를 판독기(예, POS)에 통과시키면 카드의 마그네틱 선에 기록된 정보가 판독기의 철심 주변의 코일에 전기 신호를 유도함으로서, 카드에 관한 정보에 관한 유도된 자기장을 판독기가 신호로서 감지하여 정보를 처리할 수 있다.In Figure 37, when the card is passed through a reader (eg POS), the information written on the magnetic wire of the card induces an electrical signal in a coil around the iron core of the reader, so that the reader signals the induced magnetic field for the information about the card It can be detected and processed as information.

다양한 실시예에 따른, 카드에 포함된 마그네틱 선에는 적어도 하나 이상의 트랙을 포함할 수 있다. 마그네틱 선은 트랙 1, 트랙2, 트랙 3에 정보를 포함할 수 있는데 이중 트랙 2의 정보를 이용하여 결제를 진행할 수 있다. According to various embodiments, the magnetic line included in the card may include at least one or more tracks. The magnetic line may include information on track 1, track 2, and track 3, and payment can be made using the information of track 2 among them.

다양한 실시예에 따른 카드는 적어도 하나 이상의 트랙을 포함하는 정보를 포함할 수 있다.A card according to various embodiments may include information including at least one or more tracks.

도 38에서, 트랙 1에는 은행계좌 정보가 포함될 수 있고, 트랙 1의 데이터 정보 량은 79kb일 수 있다. 트랙 2에는 신용카드 번호, 발급일, 유효기간 등의 정보가 포함될 수 있고, 트랙 2의 데이터 정보 량은 40kb일 수 있다. 트랙 3에는 제휴사 등의 정보가 포함될 수 있다. 예를 들어, 결제에 이용되는 정보는 트랙 2 정보일 수 있다.In FIG. 38 , bank account information may be included in track 1, and the amount of data information in track 1 may be 79 kb. Track 2 may include information such as a credit card number, issue date, and expiration date, and the amount of data information in track 2 may be 40 kb. Track 3 may include information such as affiliates. For example, the information used for payment may be track 2 information.

도 39에서, 트랙 2에 포함되는 정보는 다음과 같을 수 있다.In FIG. 39 , information included in track 2 may be as follows.

SS: 감시 시작(Start sentinel) -한 문자(one character, 예를 들어, ';')SS: Start sentinel - one character (eg ';')

PAN: 기본 계좌 번호(Primary account number (PAN))- 19개까지 문자, 예를들어, 카드 앞면에 인쇄된 카드 번호와 일치될 수 있음(up to 19 characters. Usually, but not always, matches the credit card number printed on the front of the card.)PAN: Primary account number (PAN) - up to 19 characters, for example, may match the card number printed on the front of the card (up to 19 characters. Usually, but not always, matches the credit card number printed on the front of the card.)

FS: 필드 구분자 (Field Separator) - 한 문자(예를 들어, '=')FS: Field Separator - one character (eg '=')

만료일(Expiration date) - YYMM양식의 4개 문자(four characters in the form YYMM) Expiration date - four characters in the form YYMM

서비스 코드(Service code) - 세 문자(three characters) 첫 번째 문자는 교환 규칙을 특정하고, 두 번째 문자는 인증처리를 특정하고, 세 번째 문자는 서비스 범위를 특정할 수 있음(The first digit specifies the interchange rules, the second specifies authorisation processing and the third specifies the range of services.)Service code - three characters The first digit specifies the exchange rule, the second character specifies the authentication process, and the third character specifies the service scope (The first digit specifies the interchange rules, the second specifies authorization processing and the third specifies the range of services.)

임의적 데이터(DISCRETIONARY DATA)는 트랙 1과 동일할 수 있다.DISCRETIONARY DATA may be the same as track 1.

ES: 감시 종료(End sentinel) - 한 문자(예를 들어 ‘?’)ES: End sentinel - one character (eg ‘?’)

LRC: 세로 중복 검사(Longitudinal redundancy check (LRC)) - 한 문자 일 수 있고, 트랙의 다른 데이터에서 계산된 유효 문자 (it is one character and a validity character calculated from other data on the track.) 대부분의 판독 장치는 카드를 프레젠테이션 층에 접촉할 때, 이 값을 리턴하지 않고, 판독 장치 내부적으로 입력을 확인하는데 이용할 수 있다. (Most reader devices do not return this value when the card is swiped to the presentation layer, and use it only to verify the input internally to the reader.)LRC: Longitudinal redundancy check (LRC) - can be one character, it is one character and a validity character calculated from other data on the track. Most readings When the device touches the card to the presentation layer, it does not return this value and can be used to validate the input internally to the reading device. (Most reader devices do not return this value when the card is swiped to the presentation layer, and use it only to verify the input internally to the reader.)

금융 카드의 서비스 코드 값은 다음과 같다(Service code values common in financial cards):Service code values common in financial cards:

제 1 문자(First digit)First digit

1: 국제 교환 확인(International interchange OK)1: International interchange OK

2: 국제 교환, 가능하면 IC 칩 사용(International interchange, use IC (chip) where feasible)2: International interchange, use IC (chip) where feasible)

5: 양자 간 계약에 따라 네셔널 교환 만 제외 (National interchange only except under bilateral agreement)5: National interchange only except under bilateral agreement

6: 양자 간 계약에 따라 네셔널 교환만 제외, 가능하면 IC 칩 사용(National interchange only except under bilateral agreement, use IC (chip) where feasible)6: National interchange only except under bilateral agreement, use IC (chip) where feasible

7: 양자 간 계약에 따라 국제 교환 제외(No interchange except under bilateral agreement (closed loop))7: No interchange except under bilateral agreement (closed loop)

9: 테스트(Test)9: Test

제 2 문자(Second digit)Second digit

0: 정상(Normal)0: Normal

2: 온라인 수단을 통한 연락 발급자(Contact issuer via online means)2: Contact issuer via online means

4: 양자 간 계약에 따라 온라인 수단을 통한 연락 발급자 제외(Contact issuer via online means except under bilateral agreement)4: Contact issuer via online means except under bilateral agreement

제 3 문자(Third digit)Third digit

0: 제한없음, PIN 필요(No restrictions, PIN required)0: No restrictions, PIN required

1: 제한없음(No restrictions)1: No restrictions

2: (현금 없이)상품 및 서비스만(Goods and services only (no cash))2: Goods and services only (no cash)

3: ATM 만, PIN 필요( ATM only, PIN required)3: ATM only, PIN required

4: 현금 만(Cash only)4: Cash only

5: (현금 없이)상품 및 서비스만, PIN 필요 (Goods and services only (no cash), PIN required)5: Goods and services only (no cash), PIN required

6: 제한없음, 가능하면 PIN 사용(No restrictions, use PIN where feasible)6: No restrictions, use PIN where feasible

7: 현금 없이)상품 및 서비스만, 가능하면 PIN 사용(Goods and services only (no cash), use PIN where feasible)7: Goods and services only (no cash), use PIN where feasible)

도 40은 다양한 실시예에 따른 결제 정보의 구조를 도시한다.40 illustrates a structure of payment information according to various embodiments.

결제 정보는 토큰(4001) 및 결제 인증 데이터(4002)를 포함할 수 있다. 토큰(4001)은 digital PAN(실제 카드번호를 대체하여 가상적으로 전자기기에서 사용할 수 있는 카드 번호)를 포함할 수 있다.The payment information may include a token 4001 and payment authentication data 4002 . The token 4001 may include a digital PAN (a card number that can be used in an electronic device virtually in place of an actual card number).

결제 인증 데이터(4002)는 토큰 크립토그램(4003, cryptogram) 및 트랜젝션 데이터(4004)를 포함할 수 있다. The payment authentication data 4002 may include a token cryptogram 4003 and transaction data 4004 .

결제 인증 데이터(4002)는 결제 트랜젝션 시에 해당 결제가 유효한지 전자 장치 외부 장치에서 체크하기 위해 필요할 수 있다. 토큰 크립토그램(4003)은 암호 정보, 암호, 크립토그램(cryptogram), 암호화, 암호 방법과 같은 의미로 사용 될 수 있다.The payment authentication data 4002 may be required to check whether a corresponding payment is valid during a payment transaction in an external device of the electronic device. The token cryptogram 4003 may be used in the same meaning as password information, password, cryptogram, encryption, and encryption method.

도 41은 다양한 실시예에 따른 트랜젝션 데이터의 구조를 도시한다.41 illustrates a structure of transaction data according to various embodiments.

트랜젝션 데이터(4101, transaction data)는 카드 유효 날짜(4102, card expired date)과 상점 정보(4103, merchant ID)를 포함할 수 있다. 상점 정보(4103, merchant ID)는 전자장치의 통신 모듈(3G, 4G, WiFI, NFC 등)을 이용하여 외부 장치로부터 획득할 수 있다.The transaction data (4101, transaction data) may include a card expiration date (4102, card expired date) and store information (4103, merchant ID). The store information (4103, merchant ID) may be obtained from an external device using a communication module (3G, 4G, WiFI, NFC, etc.) of the electronic device.

도 42는 다양한 실시예에 따른 결제 인증 데이터의 구조를 도시한다.42 illustrates a structure of payment authentication data according to various embodiments.

결제 인증 데이터(4201)는 랜덤 번호(4202, random number), 인증 코드(4203, verification code) 또는 제너레이션 카운터(4204, generation counter) 중 적어도 하나 이상을 포함할 수 있다.The payment authentication data 4201 may include at least one of a random number 4202, a verification code 4203, and a generation counter 4204.

한 실시예에 따르면, 원타임 패스워드 번호(OTP number)는 토큰 크립토그램(cryptogram)의 하나의 예시일 수 있다.According to an embodiment, the one-time password number (OTP number) may be an example of a token cryptogram.

도 43를 참조하면, 다양한 실시예에 따른, 결제 중계 모듈이 결제 어플리케이션의 PIN 입력을 통한 인증 요청을 TEE의 보안 식별자 처리 모듈로 중계하는 기능에 대해 도시한다. Referring to FIG. 43 , a function of the payment relay module relaying an authentication request through PIN input of a payment application to the security identifier processing module of the TEE according to various embodiments is illustrated.

상기 결제 중계 모듈은 일회성 난수(예: nonce)를 보안 환경 중계 모듈을 통해 TEE의 결제 모듈로부터 수신하는 기능, 보안 환경 중계 모듈을 통해 보안 식별자 처리 모듈로 PIN 결과를 요청하여 알아낸 PIN과 암호화된 PIN결과를 알아내는 기능, 결제 모듈에 기 암호화된 PIN 결과의 검증을 요청하는 기능을 포함 할 수 있다.The payment relay module has a function of receiving a one-time random number (eg, nonce) from the payment module of the TEE through the secure environment relay module, and the PIN obtained by requesting the PIN result from the security identifier processing module through the secure environment relay module and encrypted It may include a function to find out the PIN result, and a function to request verification of the pre-encrypted PIN result from the payment module.

도 44 내지 45는, 다양한 실시예에 따른, 결제 중계 모듈(1841)이 생체 정보를 이용하여 인증을 수행한 결과를 이용하여 결제를 수행하는 방법(4400)을 도시한다. 한 실시예에 따르면, 결제 중계 모듈은 보안 환경 중계 모듈(1846)과 보안 환경 드라이버 모듈(1853)을 통하여 TEE 내의 결제 모듈(1821)에 일회성 난수(예: nonce)를 요청할 수 있다. 44 to 45 illustrate a method 4400 in which the payment relay module 1841 performs a payment using a result of performing authentication using biometric information, according to various embodiments of the present disclosure. According to an embodiment, the payment relay module may request a one-time random number (eg, nonce) from the payment module 1821 in the TEE through the secure environment relay module 1846 and the secure environment driver module 1853 .

한 실시예에 따르면, 상기 결제 모듈은 상기 일회성 난수를 생성하여, TEE 내의 key(예: device root key(DRK))를 이용하여 암호화할 수 있다. 상기 결제 모듈은 상기 암호화된 일회성 난수를 보안 환경 드라이버 모듈(1853)을 통하여 보안 환경 중계 모듈(1846)에 전달할 수 있다. 동일 장치 안에서 실행 중인 어플리케이션 또는 모듈 간의 데이터 전송/전달은 메모리에 저장된 데이터를 접근할 수 있는 상태를 포함할수 있다. According to an embodiment, the payment module may generate the one-time random number and encrypt it using a key in the TEE (eg, a device root key (DRK)). The payment module may transmit the encrypted one-time random number to the secure environment relay module 1846 through the secure environment driver module 1853 . Data transfer/transfer between applications or modules running within the same device may include access to data stored in memory.

한 실시예에 따르면, 상기 보안 환경 중계 모듈(1846)은 상기 암호화된 일회성 난수를 보안 환경 드라이버 모듈을 통하여 생체 정보 모듈(1825)에 전달할 수 있다. 상기 생체 정보 모듈은 상기 key를 이용하여 복호화할 수 있다. 상기 생체 정보 모듈은 생체 센서로부터 획득한 정보를 이용하여 사용자를 인증할 수 있다. 상기 생체 정보 모듈은 상기 사용자 인증 여부 정보를 상기 일회성 난수와 함께 상기 key로 암호화할 수 있다. 상기 생체 정보 모듈은 상기 암호화된 인증 여부 정보와 일회성 난수를 보안 환경 드라이버 모듈을 통하여 보안 환경 중계 모듈에 전달할 수 있다. 상기 보안 환경 중계 모듈은 상기 암호화된 인증 여부 정보와 일회성 난수를 보안 환경 드라이버 모듈을 통하여 상기 결제 모듈에 전달할 수 있다. According to an embodiment, the secure environment relay module 1846 may transmit the encrypted one-time random number to the biometric information module 1825 through the secure environment driver module. The biometric information module may decrypt using the key. The biometric information module may authenticate the user using information obtained from the biometric sensor. The biometric information module may encrypt the user authentication information with the key together with the one-time random number. The biometric information module may transmit the encrypted authentication status information and the one-time random number to the secure environment relay module through the secure environment driver module. The secure environment relay module may transmit the encrypted authentication information and the one-time random number to the payment module through the secure environment driver module.

한 실시예에 따르면, 상기 결제 모듈은 상기 key를 통하여 상기 암호화된 인증 여부 정보와 일회성 난수를 복호화할 수 있다. 상기 결제 모듈은 상기 수신된 일회성 난수가 생성한 일회성 난수와 같은 지를 비교하여 인증 여부 정보가 REE에서 변질되었는지를 확인할 수 있다. 상기 비교는 전송한 일회성 난수와 수신한 일회성 난수가 완전히 일치하는지 여부를 판단할 수도 있고, 상기 전송한 일회성 난수와 상기 수신한 일회성 난수가 일치하지는 않으나 전송한 일회성 난수에 기반하여 생성된 일회성 난수인 경우 이를 일치하다고 판단할 수도 있다. 상기 두 일회성 난수가 일치하고, 인증이 성공한 경우 상기 결제 모듈은 결제를 수행할 수 있다. 상기 일회성 난수가 일치하지 않거나 인증이 성공하지 못한 경우 상기 결제 모듈은 결제를 수행하지 못할 수 있다. According to an embodiment, the payment module may decrypt the encrypted authentication information and the one-time random number through the key. The payment module may compare whether the received one-time random number is the same as the one-time random number generated to check whether the authentication information is corrupted in the REE. The comparison may determine whether the transmitted one-time random number and the received one-time random number completely match, and the transmitted one-time random number and the received one-time random number do not match, but a one-time random number generated based on the transmitted one-time random number In this case, it may be judged to be consistent. If the two one-time random numbers match and authentication is successful, the payment module may perform payment. If the one-time random number does not match or authentication is not successful, the payment module may not be able to perform payment.

한 실시예에 따르면, 상기 비교는 TEE 또는 REE 내에서 실행되는 다른 어플리케이션 또는 agent(예: 결제 매니저 또는 커널)에서 실행될 수도 있다.According to an embodiment, the comparison may be performed in another application or agent (eg, payment manager or kernel) running within the TEE or REE.

도 46은, 다양한 실시예에 따른, 토큰 크립토그램을 생성하는 방법(4500)을 도시한다. 한 실시예에 따르면, 결제 모듈은 상기 토큰 크립토그램을 생성할 수 있는 key를 이용하여 토큰 크립토그램을 생성할 수 있다. 결제 모듈은 매 거래 또는 특정 횟수의 거래, 특정 시간 내의 거래 등 정해진 규칙에 따라 다른 key를 사용할 수 있다. 토큰 서비스 프로바이더(730)는 상기 key와 쌍(pair)으로 된 key를 소유할 수 있다. 상기 토큰 서비스 프로바이더(730)는 상기 쌍으로 된 key를 통해서 암호화된 토큰 크립토그램을 복호화할 수 있다.46 illustrates a method 4500 of generating a token cryptogram, in accordance with various embodiments. According to one embodiment, the payment module may generate a token cryptogram using a key capable of generating the token cryptogram. The payment module can use a different key according to a set rule, such as every transaction, a specific number of transactions, or a transaction within a specific time. The token service provider 730 may own a key paired with the key. The token service provider 730 may decrypt the encrypted token cryptogram through the paired key.

상기 결제 모듈은 상기 key를 이용하여 토큰 크립토그램을 만드는 경우, key로 암호화하는 데이터와 암호화 엔진은 암호화 방법(예: AES, TKIP 등)에 따라 다양하게 달라질 수 있다.When the payment module uses the key to create a token cryptogram, data encrypted with the key and an encryption engine may vary according to an encryption method (eg, AES, TKIP, etc.).

도 47은 다양한 실시예에 따른 타임스탬프 정보를 기초하여 생성된 결제 정보를 이용하여 결제 과정을 나타내는 순서도이다.47 is a flowchart illustrating a payment process using payment information generated based on timestamp information according to various embodiments of the present disclosure;

결제 어플리케이션(4701, 예를 들어, 도 32의 결제 어플리케이션(3201))은 보안 영역(4703)에 결제 정보(예를 들어, 트랙 2 정보) 생성을 요청할 수 있다.The payment application 4701 (eg, the payment application 3201 of FIG. 32 ) may request the security area 4703 to generate payment information (eg, track 2 information).

결제 어플리케이션(4701)으로부터 결제 정보(예를 들어, 트랙 2 정보) 생성을 요청받으면, 보안 영역(4703)은 결제 관련 프로그램(4705, 예를 들어, 도 32의 결제 관련 프로그램(3204))는 타임스탬프 정보를 이용하여 결제 정보(예를 들어, 트랙 2 정보)를 생성할 수 있다.When receiving a request to generate payment information (eg, track 2 information) from the payment application 4701 , the security area 4703 is configured with a payment-related program 4705 (eg, the payment-related program 3204 of FIG. 32 ) in time Payment information (eg, track 2 information) may be generated using the stamp information.

결제 정보(예를 들어, 트랙 2 정보)가 생성되면, 결제 관련 프로그램(4705)는 보안 영역(4703)에 생성된 결제 정보(예를 들어, 트랙 2 정보)를 전송할 수 있다.When payment information (eg, track 2 information) is generated, the payment related program 4705 may transmit the generated payment information (eg, track 2 information) to the security area 4703 .

보안 영역(4703)은 예를 들어, 도 32의 MST 드라이버 모듈(3205)을 통해, POS(4707)로 생성된 결제 정보(예를 들어, 트랙 2 정보)를 이용하여 트랜젝션 승인을 요청할 수 있다.The security area 4703 may request transaction approval using payment information (eg, track 2 information) generated by the POS 4707 through the MST driver module 3205 of FIG. 32 , for example.

보안 영역(4703)으로부터 트랜젝션 승인을 요청을 전송받은 POS(4707)는 제 1 금융 서버(4711)에 생성된 결제 정보(예를 들어, 트랙 2 정보) 및 트랜젝션 승인 요청을 전달할 수 있다. The POS 4707 receiving the transaction approval request from the security area 4703 may transmit the generated payment information (eg, track 2 information) and the transaction approval request to the first financial server 4711 .

제 1 금융 서버(4711, 예를 들어, 도 9의 제 1 금융서버(932))는 토큰 서버(4713) 또는 토큰 서비스 프로바이더(token service provider(TSP))에 생성된 결제 정보(예를 들어, 트랙 2 정보)에 포함된 토큰(token)을 전송할 수 있다.The first financial server 4711 (eg, the first financial server 932 of FIG. 9 ) generates payment information (eg, the token server 4713 or a token service provider (TSP)) , track 2 information) can be transmitted.

토큰 서버(4713) 또는 토큰 서비스 프로바이더(token service provider(TSP))는 제 1 금융 서버(4711)로부터 전달받은 토큰을 인증하고, 토큰 인증 결과를 제 1 금융 서버(4711)로 전송할 수 있다.The token server 4713 or a token service provider (TSP) may authenticate the token received from the first financial server 4711 , and transmit a token authentication result to the first financial server 4711 .

토큰 서버(4713) 또는 토큰 서비스 프로바이더(token service provider(TSP))는 결제 정보에 포함된 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number)를 토큰 서버(4713) 또는 토큰 서비스 프로바이더(token service provider(TSP))에 저장된 프로비저닝 타임(provisioning time), 기준 시간(reference time), 또는 유효 기간(validity period)과 비교하여 토큰의 유효 여부를 판단할 수 있다. 다양한 실시에에서, 결제 정보에 포함된 유효(expiry) 정보는 신용카드의 유효기간에 관한 정보일 수 있다.Token server 4713 or token service provider (token service provider (TSP)) includes timestamp information, validity information, service code, random number, authentication number included in payment information (verification number), version information (version information) or sequence number (sequence number) stored in the token server 4713 or token service provider (token service provider (TSP)) (provisioning time), reference time (reference) time) or the validity period can be compared to determine whether the token is valid. In various embodiments, the expiry information included in the payment information may be information regarding the validity period of the credit card.

제 1 금융 서버(4711)은 토큰 인증 결과를 토큰 서버(4713) 또는 토큰 서비스 프로바이더(token service provider(TSP))로부터 수신하고, 제 2 금융 서버(4709, 도 9의 제 2금융서버(942))에 토큰 인증 결과 전송 및/또는 트랜젝션 승인을 요청할 수 있다.The first financial server 4711 receives the token authentication result from the token server 4713 or a token service provider (TSP), and the second financial server 4709, the second financial server 942 of FIG. 9 . )) to transmit the token authentication result and/or request transaction approval.

제 2 금융 서버(4709)는 토큰 인증 결과 및 트랜젝션 승인 요청에 따라 트랜젝션 승인 여부를 판단할 수 있다. 토큰 인증 결과 토큰이 유효한 것으로 판단되면, 제 2 금융 서버(4709)는 트랜젝션 승인 결과를 제 1 금융 서버(4711)에 전달할 수 있다.The second financial server 4709 may determine whether to approve the transaction according to the token authentication result and the transaction approval request. If the token authentication result determines that the token is valid, the second financial server 4709 may transmit the transaction approval result to the first financial server 4711 .

제 1 금융 서버(4711)는 트랜젝션 승인 결과를 POS(4707)로 전달할 수 있다.The first financial server 4711 may transmit the transaction approval result to the POS 4707 .

도 48은 다양한 실시예에 따른 타임스탬프 정보를 기초하여 생성된 결제 정보를 이용하여 결제 과정을 나타내는 순서도이다.48 is a flowchart illustrating a payment process using payment information generated based on timestamp information according to various embodiments of the present disclosure;

결제 어플리케이션(4801, 예를 들어, 도 32의 결제 어플리케이션(3201))은 보안 영역(4803)에 결제 정보(예를 들어, 트랙 2 정보) 생성을 요청할 수 있다.The payment application 4801 (eg, the payment application 3201 of FIG. 32 ) may request the security area 4803 to generate payment information (eg, track 2 information).

결제 어플리케이션(4801)으로부터 결제 정보(예를 들어, 트랙 2 정보) 생성을 요청받으면, 보안 영역(4803)은 결제 관련 프로그램(4805, 예를 들어, 도 32의 결제 관련 프로그램(3204))는 타임스탬프 정보를 이용하여 결제 정보(예를 들어, 트랙 2 정보)를 생성할 수 있다.When receiving a request to generate payment information (eg, track 2 information) from the payment application 4801, the security area 4803 is a payment-related program 4805 (eg, the payment-related program 3204 of FIG. 32) is time Payment information (eg, track 2 information) may be generated using the stamp information.

결제 정보(예를 들어, 트랙 2 정보)가 생성되면, 결제 관련 프로그램(4805)는 보안 영역(4803)에 생성된 결제 정보(예를 들어, 트랙 2 정보)를 전송할 수 있다.When payment information (eg, track 2 information) is generated, the payment related program 4805 may transmit the generated payment information (eg, track 2 information) to the security area 4803 .

보안 영역(4803)은 예를 들어, 도 32의 MST 드라이버 모듈(3205)을 통해, POS(4804)로 생성된 결제 정보(예를 들어, 트랙 2 정보)를 이용하여 트랜젝션 승인을 요청할 수 있다.The security area 4803 may request transaction approval using payment information (eg, track 2 information) generated by the POS 4804 through the MST driver module 3205 of FIG. 32 , for example.

보안 영역(4803)으로부터 트랜젝션 승인을 요청을 전송받은 POS(4804)는 제 2 금융 서버(4807, 도 9의 제 2금융서버(942))에 생성된 결제 정보(예를 들어, 트랙 2 정보) 및 트랜젝션 승인 요청을 전달할 수 있다. The POS 4804 receiving the transaction approval request from the security area 4803 transmits payment information (eg, track 2 information) generated in the second financial server 4807 (the second financial server 942 in FIG. 9 ). and a transaction approval request.

제 2 금융 서버(4807)는 토큰 서버(4809) 또는 토큰 서비스 프로바이더(token service provider(TSP))에 생성된 결제 정보(예를 들어, 트랙 2 정보)에 포함된 토큰(token)을 전송할 수 있다.The second financial server 4807 may transmit a token included in the payment information (eg, track 2 information) generated to the token server 4809 or a token service provider (TSP). have.

토큰 서버(4809) 또는 토큰 서비스 프로바이더(token service provider(TSP))는 제 2 금융 서버(4807)로부터 전달받은 토큰을 인증하고, 토큰 인증 결과를 제 2 금융 서버(4807)로 전송할 수 있다.The token server 4809 or a token service provider (TSP) may authenticate the token received from the second financial server 4807 , and transmit a token authentication result to the second financial server 4807 .

토큰 서버(4809) 또는 토큰 서비스 프로바이더(token service provider(TSP))는 결제 정보에 포함된 타임스탬프 정보, 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number)를 토큰 서버(4713) 또는 토큰 서비스 프로바이더(token service provider(TSP))에 저장된 프로비저닝 타임(provisioning time), 기준 시간(reference time), 또는 유효 기간(validity period)과 비교하여 토큰의 유효 여부를 판단할 수 있다. 다양한 실시에에서, 결제 정보에 포함된 유효(expiry) 정보는 신용카드의 유효기간에 관한 정보일 수 있다.Token server 4809 or token service provider (token service provider (TSP)) includes timestamp information, validity information, service code, random number, authentication number included in payment information (verification number), version information (version information) or sequence number (sequence number) stored in the token server 4713 or token service provider (token service provider (TSP)) (provisioning time), reference time (reference) time) or the validity period can be compared to determine whether the token is valid. In various embodiments, the expiry information included in the payment information may be information regarding the validity period of the credit card.

제 2 금융 서버(4807)는 트랜젝션 승인 결과를 POS(4707)로 전달할 수 있다.The second financial server 4807 may transmit the transaction approval result to the POS 4707 .

도 49는 다양한 실시예에 따른 토큰을 이용한 결제 트랜젝션(transaction)하기 위한 방법을 도시한다.49 illustrates a method for performing a payment transaction using a token according to various embodiments.

결제 트랜젝션을 시작하면 결제 어플리케이션(4901, 예를 들어, 도 32의 결제 어플리케이션(3201))은 보안 모듈(4903, 예를 들어, 도 32의 보안 모듈(3203))에 보안 어플리케이션(TA)을 통해 타임스탬프 정보를 전송할 수 있다.When a payment transaction is started, the payment application 4901 (eg, the payment application 3201 of FIG. 32) is transferred to the security module 4903 (eg, the security module 3203 of FIG. 32) through the security application (TA). Timestamp information may be transmitted.

보안 모듈(4903)은 결제 관련 프로그램(4905, 예를 들어, 도 32의 결제 관련 프로그램(3204))을 포함할 수 있다. 결제 관련 프로그램(4905)은 타임스탬프 정보 및 적어도 하나 이상의 결제 정보(예: 토큰, 토큰 크립토그램 생성을 위한 키) 중 적어도 하나에 기초하여, 결제 정보(예를 들어, 트랙 2(track 2) 정보)를 생성할 수 있다.The security module 4903 may include a payment-related program 4905 (eg, the payment-related program 3204 of FIG. 32 ). The payment-related program 4905 is based on at least one of timestamp information and at least one or more payment information (eg, a token, a key for generating a token cryptogram), payment information (eg, track 2) information ) can be created.

보안 모듈(4903)은 제 1 금융 서버(예를 들어, 도 9의 제 1 금융서버(932))의 TSM(4909)과 결제와 관련된 정보(예를 들어, 결제 정보)를 송수신할 수 있다.The security module 4903 may transmit and receive payment-related information (eg, payment information) with the TSM 4909 of the first financial server (eg, the first financial server 932 of FIG. 9 ).

결제 서버(4907, 예를 들어, 도 9의 결제 서버(920))는 결제 어플리케이션(4901)과 결제와 관련된 정보(예를 들어, 결제 정보)를 송수신할 수 있다.The payment server 4907 (eg, the payment server 920 of FIG. 9 ) may transmit/receive information related to payment (eg, payment information) to the payment application 4901 .

제 1 금융 서버의 TSM(4909)은 제 1 금융 서버의 TSP(4911), 제 2 금융서버(4915, 예를 들어, 도 9의 제 2 금융서버(942)), 및 제 2 금융 서버의 TSP와 결제에 관련된 정보를 송수신하고 결제를 승인할 수 있다.The TSM 4909 of the first financial server is the TSP 4911 of the first financial server, the second financial server 4915 (eg, the second financial server 942 in FIG. 9), and the TSP of the second financial server. You can send and receive payment-related information with and approve the payment.

본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. "모듈"은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있으며, 예를 들면, 어떤 동작들을 수행하는, 알려졌거나 앞으로 개발될, ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays), 또는 프로그램 가능 논리 장치를 포함할 수 있다. 다양한 실시예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는 프로그램 모듈의 형태로 컴퓨터로 판독 가능한 저장 매체(예: 메모리(130))에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서(예: 프로세서(120))에 의해 실행될 경우, 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(예: 자기테이프), 광기록 매체(예: CD-ROM, DVD, 자기-광 매체 (예: 플롭티컬 디스크), 내장 메모리 등을 포함할 수 있다.As used herein, the term “module” includes a unit composed of hardware, software, or firmware, and may be used interchangeably with terms such as, for example, logic, logic block, component, or circuit. A “module” may be an integrally formed component or a minimum unit or a part of performing one or more functions. A “module” may be implemented mechanically or electronically, for example, known or to be developed, application-specific integrated circuit (ASIC) chips, field-programmable gate arrays (FPGAs), or It may include a programmable logic device. At least a portion of an apparatus (eg, modules or functions thereof) or a method (eg, operations) according to various embodiments includes instructions stored in a computer-readable storage medium (eg, memory 130 ) in the form of a program module can be implemented as When the instruction is executed by a processor (eg, the processor 120), the processor may perform a function corresponding to the instruction. Computer-readable recording media include hard disks, floppy disks, magnetic media (eg, magnetic tape), optical recording media (eg, CD-ROM, DVD, magneto-optical media (eg, floppy disks), built-in memory, etc.) may include

다양한 실시예에 따르면, 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체는 보안 영역(예: TEE) 및 적어도 하나의 결제 신호 모듈(예: MST 모듈(810) 또는 NFC 모듈(820))을 포함하는 전자 장치(예: 전자 장치(101))에서, 상기 보안 영역에 상기 적어도 하나의 결제 신호 모듈(예: MST 모듈(810) 또는 NFC 모듈(820))에 대응되는 적어도 하나의 토큰을 저장하는 동작; 상기 보안 영역(TEE)에서 타임스탬프를 생성하는 동작; 상기 적어도 하나의 토큰 중에서 상기 적어도 하나의 결제 신호 모듈(예: MST 모듈(810) 또는 NFC 모듈(820)) 중 하나에 대응하는 토큰 및 상기 타임스탬프에 적어도 일부 기초하여, 상기 보안 영역(예: TEE)에서 결제 신호를 생성하는 동작; 및 상기 결제 신호를 외부 전자 장치(예: 결제 서버, 금융 서버, POS)에 전송하는 동작을 실행할 수 있다.According to various embodiments, a computer-readable recording medium recording a program is an electronic device (eg, TEE) and at least one payment signal module (eg, MST module 810 or NFC module 820) including a security area (eg, TEE). Example: in the electronic device 101), storing at least one token corresponding to the at least one payment signal module (eg, the MST module 810 or the NFC module 820) in the secure area; generating a timestamp in the secure area (TEE); Among the at least one token, the security area (eg: generating a payment signal in TEE); and transmitting the payment signal to an external electronic device (eg, a payment server, a financial server, or a POS).

명령어는 컴파일러에 의해 만들어지는 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 다양한 실시예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 다른 구성요소를 더 포함할 수 있다. 다양한 실시예에 따른, 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.Instructions may include code generated by a compiler or code that can be executed by an interpreter. A module or program module according to various embodiments may include at least one or more of the above-described components, some may be omitted, or may further include other components. According to various embodiments, operations performed by a module, program module, or other component are sequentially, parallel, repetitively or heuristically executed, or at least some operations are executed in a different order, are omitted, or other operations are added. can be

Claims (20)

적어도 하나의 토큰을 저장하도록 동작할 수 있는 보안 스토리지;
제 1 통신 모듈;
제 2 통신 모듈; 및
상기 보안 스토리지, 상기 제 1 통신 모듈 및 상기 제 2 통신 모듈에 기능적으로 연결된 적어도 하나의 프로세서를 포함하며,
상기 적어도 하나의 프로세서는
상기 제 1 통신 모듈 또는 상기 제 2 통신 모듈 중 적어도 하나를 이용하여 복수의 토큰 중 하나의 토큰을 포함하는 결제 정보를 외부 전자 장치에 전송하며,
상기 외부 전자 장치로부터 미리 설정된 시간 내에 응답을 수신하였는지 여부를 판단하고,
상기 응답을 수신하지 못하면, 상기 제 1 통신 모듈 또는 상기 제 2 통신 모듈 중 다른 하나를 이용하여 상기 복수의 토큰 중 하나의 토큰을 포함하는 추가 결제 정보를 상기 외부 전자 장치에 전송하도록 설정된 전자 장치.
secure storage operable to store at least one token;
a first communication module;
a second communication module; and
at least one processor operatively coupled to the secure storage, the first communication module and the second communication module;
the at least one processor
Transmitting payment information including one token among a plurality of tokens to an external electronic device using at least one of the first communication module and the second communication module,
It is determined whether a response has been received from the external electronic device within a preset time,
If the response is not received, the electronic device is configured to transmit additional payment information including one token among the plurality of tokens to the external electronic device by using the other one of the first communication module or the second communication module.
제 1항에 있어서, 상기 프로세서는,
타임스탬프, 카드의 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number) 중 적어도 하나를 이용하여 상기 결제 정보를 생성하도록 설정된 전자 장치.
The method of claim 1, wherein the processor comprises:
Use at least one of a timestamp, card expiry information, service code, random number, verification number, version information, or sequence number an electronic device set to generate the payment information.
◈청구항 3은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 3 was abandoned when paying the registration fee.◈ 제 2항에 있어서,
상기 타임스탬프는
프로비저닝 타임(provisioning time), 기준 시간(reference time), 또는 유효 기간(validity period) 중 적어도 하나에 기초하여 생성되는 전자 장치.
3. The method of claim 2,
The timestamp is
An electronic device generated based on at least one of a provisioning time, a reference time, and a validity period.
◈청구항 4은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 4 was abandoned when paying the registration fee.◈ 제 1항에 있어서,
상기 적어도 하나의 토큰은 상기 제 1 통신 모듈과 관련된 제 1 토큰 및 상기 제 2 통신 모듈과 관련된 제 2 토큰을 포함하고,
상기 결제 정보는 상기 제 1 토큰 또는 상기 제 2 토큰 중 적어도 하나를 포함하는 전자 장치.
The method of claim 1,
the at least one token comprises a first token associated with the first communication module and a second token associated with the second communication module;
The payment information includes at least one of the first token and the second token.
제 1항에 있어서,
상기 보안 스토리지는
보안 요소 또는 보안 영역 중 적어도 하나를 포함하는 전자 장치.
The method of claim 1,
The secure storage is
An electronic device comprising at least one of a secure element or a secure area.
제 1항에 있어서,
상기 제 1 통신 모듈은
적어도 하나의 근거리 통신(NFC, Near Field Communication) 모듈을 포함하는 전자 장치.
The method of claim 1,
The first communication module is
An electronic device including at least one Near Field Communication (NFC) module.
제 1항에 있어서,
상기 제 2 통신 모듈은
적어도 하나의 MST(Magnetic Stripe data Transmission) 통신 모듈을 포함하는 전자 장치.
The method of claim 1,
The second communication module is
An electronic device comprising at least one Magnetic Stripe Data Transmission (MST) communication module.
◈청구항 8은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 8 was abandoned when paying the registration fee.◈ 제 1항에 있어서,
상기 적어도 하나의 프로세서는
상기 보안 스토리지 또는 상기 프로세서와 기능적으로 연결된 다른(another) 보안 스토리지 중 적어도 하나에서 타임스탬프를 생성하고,
상기 타임스탬프 및 상기 제 1 통신 모듈 또는 상기 제 2 통신 모듈에 관련된 토큰 중 적어도 하나에 기초하여, 상기 다른 보안 스토리지에서 상기 결제 정보를 생성하도록 설정된 전자 장치.
The method of claim 1,
the at least one processor
generate a timestamp in at least one of the secure storage or another secure storage operatively associated with the processor;
an electronic device configured to generate the payment information in the other secure storage based on at least one of the timestamp and a token related to the first communication module or the second communication module.
◈청구항 9은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 9 was abandoned at the time of payment of the registration fee.◈ 제 8항에 있어서,
상기 적어도 하나의 프로세서는
상기 타임스탬프 및 상기 토큰 중 적어도 하나에 기초하여 토큰 크립토그램 (cryptogram)를 생성하도록 설정된 전자 장치.
9. The method of claim 8,
the at least one processor
An electronic device configured to generate a token cryptogram based on at least one of the timestamp and the token.
◈청구항 10은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 10 was abandoned when paying the registration fee.◈ 제 1항에 있어서,
상기 보안 스토리지는
결제 관련 프로그램(payment applet)을 포함하는 전자 장치.
The method of claim 1,
The secure storage is
An electronic device including a payment applet.
적어도 하나의 토큰을 저장하는 보안 스토리지, 제 1 통신 모듈, 제 2 통신 모듈, 및 상기 보안 스토리지, 상기 제 1 통신 모듈 및 상기 제 2 통신 모듈에 기능적으로 연결된 적어도 하나의 프로세서를 포함하는 전자 장치의 결제 방법에 있어서,
상기 제 1 통신 모듈 또는 상기 제 2 통신 모듈 중 적어도 하나를 이용하여 복수의 토큰 중 하나의 토큰을 포함하는 결제 정보를 외부 전자 장치에 전송하는 동작;
상기 외부 전자 장치로부터 미리 설정된 시간 내에 응답을 수신하였는지 여부를 판단하는 동작; 및
상기 응답을 수신하지 못하면, 상기 제 1 통신 모듈 또는 상기 제 2 통신 모듈 중 다른 하나를 이용하여 상기 복수의 토큰 중 하나의 토큰을 포함하는 추가 결제 정보를 상기 외부 전자 장치에 전송하는 동작을 포함하는 방법.
An electronic device comprising a secure storage configured to store at least one token, a first communication module, a second communication module, and at least one processor operatively connected to the secure storage, the first communication module, and the second communication module. In the payment method,
transmitting payment information including one token among a plurality of tokens to an external electronic device using at least one of the first communication module and the second communication module;
determining whether a response is received from the external electronic device within a preset time; and
if the response is not received, transmitting additional payment information including one token among the plurality of tokens to the external electronic device using the other one of the first communication module or the second communication module Way.
제 11항에 있어서,
상기 적어도 하나의 토큰 및 타임 스탬프 중 적어도 하나에 기초하여 토큰 크립토그램(cryptogram)을 생성하는 동작을 더 포함하는 방법.
12. The method of claim 11,
and generating a token cryptogram based on at least one of the at least one token and a timestamp.
◈청구항 13은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 13 was abandoned when paying the registration fee.◈ 제 11항에 있어서,
카드의 유효(expiry) 정보, 서비스 코드(service code), 랜덤 번호(random number), 인증 번호(verification number), 버전 정보(version information) 또는 시퀀스 번호(sequence number) 중 적어도 하나를 이용하여 상기 결제 정보를 생성하는 동작을 더 포함하는 방법.
12. The method of claim 11,
The payment using at least one of card validity information, service code, random number, verification number, version information, or sequence number The method further comprising generating the information.
◈청구항 14은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 14 was abandoned when paying the registration fee.◈ 제 12항에 있어서,
상기 타임 스탬프는
프로비저닝 타임(provisioning time), 기준 시간(reference time), 또는 유효 기간(validity period) 중 적어도 하나에 기초하여 생성되는 방법.
13. The method of claim 12,
The timestamp is
A method generated based on at least one of a provisioning time, a reference time, or a validity period.
제 11항에 있어서,
상기 보안 스토리지는
보안 요소 또는 보안 영역 중 적어도 하나를 포함하는 방법.
12. The method of claim 11,
The secure storage is
A method comprising at least one of a secure element or a secure realm.
◈청구항 16은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 16 has been abandoned at the time of payment of the registration fee.◈ 제 11항에 있어서,
상기 보안 스토리지 또는 상기 프로세서와 기능적으로 연결된 다른(another) 보안 스토리지 중 적어도 하나에서 타임스탬프를 생성하는 동작; 및
상기 타임스탬프 및 상기 제 1 통신 모듈 또는 상기 제 2 통신 모듈에 관련된 토큰 중 적어도 하나에 기초하여, 상기 다른 보안 스토리지에서 상기 결제 정보를 생성하는 동작을 포함하는 방법.
12. The method of claim 11,
generating a timestamp in at least one of the secure storage or another secure storage operatively coupled to the processor; and
and generating the payment information in the other secure storage based on at least one of the timestamp and a token related to the first communication module or the second communication module.
◈청구항 17은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 17 was abandoned when paying the registration fee.◈ 제 11항에 있어서,
상기 적어도 하나의 토큰은 상기 제 1 통신 모듈과 관련된 제 1 토큰 및 상기 제 2 통신 모듈과 관련된 제 2 토큰을 포함하고,
상기 결제 정보는 상기 제 1 토큰 또는 상기 제 2 토큰 중 적어도 하나를 포함하는 방법.
12. The method of claim 11,
the at least one token comprises a first token associated with the first communication module and a second token associated with the second communication module;
The payment information includes at least one of the first token or the second token.
제 11항에 있어서,
상기 제 1 통신 모듈은
적어도 하나의 근거리 통신(NFC, Near Field Communication) 모듈을 포함하는 방법.
12. The method of claim 11,
The first communication module is
A method comprising at least one Near Field Communication (NFC) module.
제 11항에 있어서,
상기 제 2 통신 모듈은
적어도 하나의 MST(Magnetic Stripe data Transmission) 통신 모듈을 포함하는 방법.
12. The method of claim 11,
The second communication module is
A method comprising at least one Magnetic Stripe Data Transmission (MST) communication module.
삭제delete
KR1020150158476A 2015-09-09 2015-11-11 Appratus and method for payment KR102458145B1 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
EP16187868.1A EP3142056A1 (en) 2015-09-09 2016-09-08 Method and apparatus for performing payment
EP19170815.5A EP3537362A1 (en) 2015-09-09 2016-09-08 Method and apparatus for performing payment
US15/259,609 US10546291B2 (en) 2015-09-09 2016-09-08 Method and apparatus for performing payment
PCT/KR2016/010137 WO2017043904A1 (en) 2015-09-09 2016-09-09 Method and apparatus for performing payment
CN201610814064.4A CN107067250A (en) 2015-09-09 2016-09-09 For performing the method and apparatus paid
US16/750,413 US10803452B2 (en) 2015-09-09 2020-01-23 Method and apparatus for performing payment

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562216041P 2015-09-09 2015-09-09
US62/216,041 2015-09-09

Publications (2)

Publication Number Publication Date
KR20170030408A KR20170030408A (en) 2017-03-17
KR102458145B1 true KR102458145B1 (en) 2022-10-24

Family

ID=58502103

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150158476A KR102458145B1 (en) 2015-09-09 2015-11-11 Appratus and method for payment

Country Status (2)

Country Link
KR (1) KR102458145B1 (en)
CN (1) CN107067250A (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180293561A1 (en) * 2017-04-06 2018-10-11 Peter Muscat Method And Hand Held Electronic Device For Executing Cashless And Creditless Financial Transactions
CN107362535B (en) 2017-07-19 2019-04-26 腾讯科技(深圳)有限公司 Target object locking means, device and electronic equipment in scene of game
EP3659092A1 (en) * 2017-10-12 2020-06-03 Samsung Electronics Co., Ltd. Method and apparatus for secure offline payment
CN108090341A (en) * 2017-12-15 2018-05-29 深圳市文鼎创数据科技有限公司 Java card control method and java card
CN108737402B (en) * 2018-05-10 2021-04-27 北京握奇智能科技有限公司 Mobile terminal safety protection method and device
CN108830605B (en) * 2018-05-28 2020-06-23 阿里巴巴集团控股有限公司 Mobile payment method, device and payment system
CN111712815A (en) * 2018-08-14 2020-09-25 华为技术有限公司 Artificial intelligence AI processing method and AI processing device
CN109040088B (en) * 2018-08-16 2022-02-25 腾讯科技(深圳)有限公司 Authentication information transmission method, key management client and computer equipment
WO2020076845A1 (en) * 2018-10-11 2020-04-16 Visa International Service Association Tokenized contactless transaction enabled by cloud biometric identification and authentication
CN114565382A (en) * 2022-03-01 2022-05-31 汪泽希 Transaction account anonymous payment method and system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101264791B1 (en) * 2012-12-05 2013-05-15 (주)세이퍼존 Security certification and storage combined device having wireless communication function
WO2015025282A2 (en) * 2013-08-21 2015-02-26 Visa International Service Association Methods and systems for transferring electronic money

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102831734A (en) * 2011-06-15 2012-12-19 上海博路信息技术有限公司 Payment method of mobile terminal client
CN102243739A (en) * 2011-07-04 2011-11-16 中国建设银行股份有限公司 Mobile-phone bank payment method, mobile-phone bank payment system and mobile-phone bank client based on two-dimension code
US8690059B1 (en) * 2013-01-20 2014-04-08 George Wallner System and method for a baseband nearfield magnetic stripe data transmitter
KR101613194B1 (en) * 2013-11-15 2016-04-19 주식회사 스마비스 Method of providing linkage-type on-line card-related services between card payment processing system and smart payment system using a hybrid smart-card which having both legacy interface and short-range wireless interface, and computer-readable recording medium for the same
JP6296598B2 (en) * 2013-11-26 2018-03-20 エムイービー株式会社 Integrated communication system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101264791B1 (en) * 2012-12-05 2013-05-15 (주)세이퍼존 Security certification and storage combined device having wireless communication function
WO2015025282A2 (en) * 2013-08-21 2015-02-26 Visa International Service Association Methods and systems for transferring electronic money

Also Published As

Publication number Publication date
CN107067250A (en) 2017-08-18
KR20170030408A (en) 2017-03-17

Similar Documents

Publication Publication Date Title
US10803452B2 (en) Method and apparatus for performing payment
KR102577054B1 (en) Electronic device providing electronic payment function and operating method thereof
EP3262582B1 (en) Electronic device providing electronic payment function and operating method thereof
KR102530888B1 (en) Electronic device and method for payment transaction
CN107408251B (en) Electronic device providing electronic payment function and method of operating the same
KR102458145B1 (en) Appratus and method for payment
KR102461042B1 (en) Payment processing method and electronic device supporting the same
US20170061419A1 (en) Payment information processing method and apparatus of electronic device
US20160253669A1 (en) Method for providing payment service and electronic device thereof
EP3057047B1 (en) Electronic device or payment processing method
US20170083882A1 (en) Secure payment method and electronic device adapted thereto
EP3244357A1 (en) Electronic apparatus providing electronic payment and operating method thereof
KR102586443B1 (en) Electronic device for providing electronic payment and method thereof
KR101775667B1 (en) Payment system, electronic device and payment method thereof
KR102646892B1 (en) Method for performing payment and electronic device supporting the same
EP3262586B1 (en) Payment means operation supporting method and electronic device for supporting the same
KR20170102696A (en) Method for providing electronic payment function and electronic device supporting the same
KR20170026060A (en) Apparatus and method for processing payment information of electronic device

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