KR20160118794A - 시큐어 엘리먼트를 이용한 데이터 통신 방법 및 이를 적용한 전자 시스템 - Google Patents
시큐어 엘리먼트를 이용한 데이터 통신 방법 및 이를 적용한 전자 시스템 Download PDFInfo
- Publication number
- KR20160118794A KR20160118794A KR1020150047516A KR20150047516A KR20160118794A KR 20160118794 A KR20160118794 A KR 20160118794A KR 1020150047516 A KR1020150047516 A KR 1020150047516A KR 20150047516 A KR20150047516 A KR 20150047516A KR 20160118794 A KR20160118794 A KR 20160118794A
- Authority
- KR
- South Korea
- Prior art keywords
- secure element
- application processor
- information
- coupon
- secure
- Prior art date
- Legal status (The legal status 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 status listed.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
- H04L9/3228—One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/322—Aspects of commerce using mobile devices [M-devices]
- G06Q20/3226—Use of secure elements separate from M-devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/322—Aspects of commerce using mobile devices [M-devices]
- G06Q20/3227—Aspects of commerce using mobile devices [M-devices] using secure elements embedded in M-devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, 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/401—Transaction verification
- G06Q20/4012—Verifying personal identification numbers [PIN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3234—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/08—Access security
- H04W12/086—Access security using security domains
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- Signal Processing (AREA)
- Accounting & Taxation (AREA)
- Theoretical Computer Science (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Finance (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
시큐어 엘리먼트를 이용한 데이터 통신 방법 및 이를 적용한 전자 시스템에 관하여 개시한다. 시큐어 엘리먼트를 이용한 데이터 통신 방법은 전자 장치의 애플리케이션 프로세서와 시큐어 엘리먼트 사이의 인증 정보를 교환하는 단계, 상기 인증 정보 교환을 마치고 나서, 공개 키와 비밀 키를 이용하여 상기 애플리케이션 프로세서와 상기 시큐어 엘리먼트의 상호 인증 처리를 통하여 시큐어 채널을 생성하는 단계 및, 상기 시큐어 채널을 통하여 상기 애플리케이션 프로세서와 상기 시큐어 엘리먼트 사이의 데이터 통신을 수행하는 단계를 포함한다.
Description
본 발명은 데이터 처리 방법 및 장치에 관한 것으로서, 자세하게는 시큐어 엘리먼트를 이용한 데이터 통신 방법 및 이를 적용한 전자 시스템에 관한 것이다.
최근 모바일 장치에서 제공하는 서비스 및 부가 기능들이 점차 다양화되고 있다. 모바일 장치의 효용 가치를 높이고 사용자들의 다양한 욕구를 만족시키기 위하여 모바일 장치에서 실행 가능한 다양한 애플리케이션들이 개발되고 있다. 이와 같이 모바일 장치에서 지원하는 기능이 확대되면서 보안을 강화하는 기술이 필요하게 되었다.
본 발명의 목적은 트러스티드 실행 환경과 시큐어 엘리먼트간의 암호화 채널을 통하여 정보 유출을 방지하기 위한 시큐어 엘리먼트를 이용한 데이터 통신 방법을 제공하는데 있다.
본 발명의 다른 목적은 트러스티드 실행 환경과 시큐어 엘리먼트간의 암호화 채널을 통하여 정보 유출을 방지하기 위한 시큐어 엘리먼트를 이용한 데이터 통신 방법이 적용되는 전자 시스템을 제공하는데 있다.
본 발명의 기술적 사상의 일면에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법은 전자 장치의 애플리케이션 프로세서와 시큐어 엘리먼트 사이의 인증 정보를 교환하는 단계, 상기 인증 정보 교환을 마치고 나서, 공개 키와 비밀 키를 이용하여 상기 애플리케이션 프로세서와 상기 시큐어 엘리먼트의 상호 인증 처리를 통하여 시큐어 채널을 생성하는 단계 및, 상기 시큐어 채널을 통하여 상기 애플리케이션 프로세서와 상기 시큐어 엘리먼트 사이의 데이터 통신을 수행하는 단계를 포함한다.
본 발명의 실시 예에 따르면, 상기 시큐어 채널을 생성하는 단계는 상기 애플리케이션 프로세서 내의 트러스티드 실행 환경과 상기 시큐어 엘리먼트 사이의 상호 인증을 통하여 시큐어 채널을 생성할 수 있다.
본 발명의 실시 예에 따르면, 상기 시큐어 채널을 생성하는 단계는 상기 시큐어 엘리먼트에서 상기 애플리케이션 프로세서의 인증 정보를 검증 처리한 후에 랜덤 값을 생성하여 상기 애플리케이션 프로세서로 전송하는 단계, 상기 애플리케이션 프로세서에서 상기 랜덤 값을 이용하여 서명 정보 및 공개 키를 생성하고, 상기 서명 정보 및 공개 키와 함께 인증을 요구하는 메시지를 상기 시큐어 엘리먼트를 전송하는 단계, 상기 시큐어 엘리먼트에서 상기 애플리케이션 프로세서의 공개 키를 이용하여 서명 정보를 검증 처리한 후에 상기 애플리케이션 프로세서의 공개 키 및 시큐어 엘리먼트의 비밀 키를 이용하여 생성된 인증 값을 상기 애플리케이션 프로세서로 전송하는 단계 및, 상기 애플리케이션 프로세서에서 시큐어 엘리먼트의 공개 키 및 애플리케이션 프로세서의 비밀 키를 이용하여 인증 값에 대한 인증 처리를 수행하는 단계를 더 포함할 수 있다.
본 발명의 실시 예에 따르면, 상기 데이터 통신을 수행하는 단계는 상기 애플리케이션 프로세서와 상기 시큐어 엘리먼트 사이에서 암호화된 정보를 전송하거나 수신할 수 있다.
본 발명의 실시 예에 따르면, 상기 시큐어 채널을 통하여 상기 시큐어 엘리먼트로 수신되는 개인 식별 번호에 대한 검증 프로세스를 수행하는 단계를 더 포함하고, 상기 개인 식별 번호에 대한 검증 프로세스를 마친 후에 상기 데이터 통신을 수행할 수 있다.
본 발명의 실시 예에 따르면, 상기 데이터 통신에 따라서 상기 애플리케이션 프로세서로부터 수신되는 암호화된 정보를 해독하여 상기 시큐어 엘리먼트 내의 스토리지에 저장하는 단계를 더 포함할 수 있다.
본 발명의 실시 예에 따르면, 상기 시큐어 엘리먼트 내의 스토리지에 저장되는 정보는 사용자 정보, 쿠폰 정보 또는 결제 정보 중의 적어도 하나를 포함할 수 있다.
본 발명의 실시 예에 따르면, 상기 데이터 통신을 수행하는 단계는 쿠폰 발급, 저장, 사용 또는 업데이트 프로세스들 중의 적어도 하나의 프로세스에 관련된 데이터 통신을 포함할 수 있다.
본 발명의 기술적 사상의 다른 면에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법은 전자 장치의 애플리케이션 프로세서와 시큐어 엘리먼트 사이의 상호 인증을 통하여 시큐어 채널을 생성하는 단계, 상기 시큐어 채널을 통하여 개인 식별 번호에 대한 검증을 요청하는 메시지를 애플리케이션 프로세서의 트러스티드 실행 환경으로부터 시큐어 엘리먼트로 전송하는 단계, 상기 시큐어 엘리먼트에서 상기 개인 식별 번호에 대한 검증 처리를 수행하고, 상기 검증 처리 결과에 대한 메시지를 상기 시큐어 채널을 통하여 상기 애플리케이션 프로세서의 트러스티드 실행 환경으로 전송하는 단계 및, 상기 개인 식별 번호에 대한 검증 처리에 성공한 경우에 상기 시큐어 채널을 통하여 상기 애플리케이션 프로세서의 트러스티드 실행 환경과 상기 시큐어 엘리먼트 사이에서의 전자 비즈니스 서비스에 관련된 데이터 통신을 수행하는 단계를 포함할 수 있다.
본 발명의 실시 예에 따르면, 상기 전자 비즈니스 서비스에 관련된 데이터 통신은 쿠폰 발행 프로세스, 쿠폰 상환 프로세스 또는 결제 프로세스 중의 적어도 하나의 프로세스를 위한 데이터 통신을 포함할 수 있다.
본 발명의 실시 예에 따르면, 상기 전자 비즈니스 서비스에 관련된 데이터 통신을 수행하는 단계는 상기 애플리케이션 프로세서로 수신된 암호화된 쿠폰 정보 및 저장 요청 메시지를 상기 트러스티드 실행 환경을 통하여 상기 시큐어 엘리먼트로 전송하는 단계, 상기 암호화된 쿠폰 정보를 해독 처리하여 상기 시큐어 엘리먼트 내의 스토리지에 저장하는 단계 및, 상기 저장 요청 메시지에 대한 응답 정보를 상기 시큐어 엘리먼트로부터 상기 애플리케이션 프로세서의 트러스티드 실행 환경으로 전송하는 단계를 더 포함할 수 있다.
본 발명의 실시 예에 따르면, 상기 전자 비즈니스 서비스에 관련된 데이터 통신을 수행하는 단계는 상기 애플리케이션 프로세서로 수신된 회원 정보 및 쿠폰 정보 요청 메시지를 상기 트러스티드 실행 환경을 통하여 상기 시큐어 엘리먼트로 전송하는 단계, 상기 시큐어 엘리먼트 내의 스토리지로부터 상기 회원 정보 및 쿠폰 정보를 읽어내어 암호화 처리하는 단계 및, 상기 암호화 처리된 회원 정보 및 쿠폰 정보를 상기 시큐어 엘리먼트로부터 상기 애플리케이션 프로세서의 트러스티드 실행 환경으로 전송하는 단계를 더 포함할 수 있다.
본 발명의 실시 예에 따르면, 상기 전자 비즈니스 서비스에 관련된 데이터 통신을 수행하는 단계는 쿠폰을 이용한 결제 서비스에 기초하여 업데이트된 쿠폰 정보 및 저장 요청 메시지를 상기 애플리케이션 프로세서의 트러스티드 실행 환경을 통하여 상기 시큐어 엘리먼트로 전송하는 단계, 상기 업데이트된 쿠폰 정보를 해독 처리하여 상기 시큐어 엘리먼트 내의 스토리지에 저장하는 단계 및, 상기 저장 요청 메시지에 대한 응답 정보를 상기 시큐어 엘리먼트로부터 상기 애플리케이션 프로세서의 트러스티드 실행 환경으로 전송하는 단계를 더 포함할 수 있다.
발명의 기술적 사상의 또 다른 면에 따른 전자 시스템은 통신 네트워크를 이용하여 결제 서비스를 제공하는 POS(Point of Sales) 단말기 및, 쿠폰 정보를 매개로 하여 상기 POS 단말기와의 데이터 통신을 통한 결제 프로세스를 수행하는 전자 장치를 포함하고, 상기 전자 장치는 상기 쿠폰 정보, 사용자 정보 및 결제 정보를 저장하는 시큐어 엘리먼트, 및 쿠폰 관리 서비스 또는 결제 서비스에 관련된 데이터 처리를 위하여 상기 시큐어 엘리먼트와의 데이터 통신을 수행하는 애플리케이션 프로세서를 더 포함하며, 상기 애플리케이션 프로세서는 상기 시큐어 엘리먼트와의 상호 인증을 통하여 시큐어 채널을 생성하고, 상기 시큐어 채널을 통하여 상기 시큐어 엘리먼트와의 데이터 통신을 수행하는 것을 특징으로 한다.
본 발명의 실시 예에 따르면, 상기 시큐어 엘리먼트는 신용카드 결제 애플리케이션 또는 체크카드 결제 애플리케이션 중의 적어도 하나의 애플리케이션을 저장할 수 있다.
본 발명의 실시 예에 따르면, 상기 통신 네트워크를 이용하여 쿠폰 발급 및 인증 서비스를 제공하는 CRM(Customer Relationship Management) 서버를 더 포함하고, 상기 CRM 서버는 상기 통신 네트워크를 통하여 수신되는 쿠폰 발급 요청 메시지에 응답하여 상기 전자 장치로 상기 쿠폰 정보를 전송할 수 있다.
본 발명의 실시 예에 따르면, 상기 POS 단말기는 접촉 또는 비접촉 방식으로 상기 전자 장치와의 데이터 통신을 통한 결제 서비스를 제공할 수 있다.
본 발명의 실시 예에 따르면, 상기 애플리케이션 프로세서는 상기 쿠폰 정보에 대한 발급 요청에 기초하여 수신되는 암호화된 쿠폰 정보를 상기 시큐어 엘리먼트로 전달하기 전에 상호 인증을 통하여 상기 애플리케이션 프로세서와 상기 시큐어 채널 사이에 시큐어 채널을 생성할 수 있다.
본 발명의 실시 예에 따르면, 상기 시큐어 엘리먼트는 상기 시큐어 채널을 통하여 상기 애플리케이션 프로세서로부터 수신되는 암호화 쿠폰 정보를 해독하고, 상기 해독된 쿠폰 정보를 저장할 수 있다.
본 발명의 실시 예에 따르면 상기 전자 장치는 상기 POS 단말기로부터 수신되는 쿠폰 정보 전송 요청에 따라서 상기 시큐어 엘리먼트로부터 읽어낸 쿠폰 정보를 암호화 처리하여 상기 POS 단말기로 전송하고, 전자 결제 시의 상기 쿠폰 정보의 사용에 기초하여 상기 쿠폰 정보를 업데이트 처리할 수 있다.
도 1은 본 발명의 실시 예에 따른 전자 장치 구성의 일 예를 보여준다.
도 2는 도 1의 전자 장치를 이용한 쿠폰 및 결제 서비스의 비즈니스 모델을 설명하기 위한 개략적인 전자 시스템 구성도이다.
도 3은 본 발명의 실시 예에 따른 전자 장치를 이용한 쿠폰 및 결제 서비스를 제공하기 위한 전자 시스템 구성도이다.
도 4는 도 1에 도시된 애플리케이션 프로세서와 시큐어 엘리먼트의 세부 구성을 예시적으로 보여주는 블록 구성도이다.
도 5는 본 발명의 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법이 적용되는 모바일 장치의 세부 구성도이다.
도 6은 본 발명의 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법의 흐름도이다.
도 7은 본 발명의 다른 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법의 흐름도이다.
도 8은 본 발명의 또 다른 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법의 흐름도이다.
도 9는 본 발명의 또 다른 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법의 흐름도이다.
도 10은 도 1의 전자 장치에서의 애플리케이션 프로세서와 시큐어 엘리먼트 사이의 시큐어 채널 형성 과정을 보여주는 흐름도의 일 예이다.
도 11은 도 2에 도시된 전자 시스템에서의 쿠폰 발행 프로세스를 수행하는 과정을 보여주는 흐름도의 일 예이다.
도 12는 도 2에 도시된 전자 시스템에서의 쿠폰 상환 프로세스를 수행하는 과정을 보여주는 흐름도의 일 예이다.
도 13은 도 2에 도시된 전자 시스템에서의 쿠폰 상환 프로세스를 수행하는 과정을 보여주는 흐름도의 다른 예이다.
도 14는 도 2에 도시된 전자 시스템에서의 쿠폰을 이용한 결제 프로세스를 수행하는 과정을 보여주는 흐름도의 일 예이다.
도 15는 본 발명의 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법이 적용되는 컴퓨팅 시스템의 구성을 예시적으로 보여준다.
도 2는 도 1의 전자 장치를 이용한 쿠폰 및 결제 서비스의 비즈니스 모델을 설명하기 위한 개략적인 전자 시스템 구성도이다.
도 3은 본 발명의 실시 예에 따른 전자 장치를 이용한 쿠폰 및 결제 서비스를 제공하기 위한 전자 시스템 구성도이다.
도 4는 도 1에 도시된 애플리케이션 프로세서와 시큐어 엘리먼트의 세부 구성을 예시적으로 보여주는 블록 구성도이다.
도 5는 본 발명의 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법이 적용되는 모바일 장치의 세부 구성도이다.
도 6은 본 발명의 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법의 흐름도이다.
도 7은 본 발명의 다른 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법의 흐름도이다.
도 8은 본 발명의 또 다른 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법의 흐름도이다.
도 9는 본 발명의 또 다른 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법의 흐름도이다.
도 10은 도 1의 전자 장치에서의 애플리케이션 프로세서와 시큐어 엘리먼트 사이의 시큐어 채널 형성 과정을 보여주는 흐름도의 일 예이다.
도 11은 도 2에 도시된 전자 시스템에서의 쿠폰 발행 프로세스를 수행하는 과정을 보여주는 흐름도의 일 예이다.
도 12는 도 2에 도시된 전자 시스템에서의 쿠폰 상환 프로세스를 수행하는 과정을 보여주는 흐름도의 일 예이다.
도 13은 도 2에 도시된 전자 시스템에서의 쿠폰 상환 프로세스를 수행하는 과정을 보여주는 흐름도의 다른 예이다.
도 14는 도 2에 도시된 전자 시스템에서의 쿠폰을 이용한 결제 프로세스를 수행하는 과정을 보여주는 흐름도의 일 예이다.
도 15는 본 발명의 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법이 적용되는 컴퓨팅 시스템의 구성을 예시적으로 보여준다.
이하, 첨부한 도면을 참조하여 본 발명의 실시 예에 대해 상세히 설명한다. 본 발명의 실시 예는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되는 것이다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하거나 축소하여 도시한 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 발명의 실시 예에 따른 전자 장치 구성의 일 예를 보여준다.
도 1에 도시된 바와 같이, 전자 장치(100)는 애플리케이션 프로세서(AP; Application processor, 110)와 시큐어 엘리먼트(SE; Secure Element, 120)를 포함한다.
예로서, 전자 장치(100)는 모바일 장치, 개인용 컴퓨터, 디지털 카메라, 네비게이션 장치, 스마트 카드 시스템 등이 될 수도 있다. 세부적으로, 모바일 장치는 개인 정보 단말기(PDA; Personal Digital Assistant), 휴대폰, 스마트 폰 등이 포함될 수 있다.
애플리케이션 프로세서(110)는 전자 장치(100)의 전반적인 동작 및 전자 장치(100) 내부 구성 수단들 간의 신호의 흐름을 제어하고, 데이터를 처리하는 동작을 수행한다.
세부적으로, 애플리케이션 프로세서(110)는 운영체계 또는 애플리케이션을 실행하여 전자 장치(100)의 하드웨어 또는 소프트웨어들을 제어하고, 각종 데이터 처리 및 연산을 수행할 수 있다. 애플리케이션 프로세서(110)는 전자 장치(100)와 네트워크로 연결된 다른 외부 장치들 간의 통신에서 데이터 링크를 관리하고, 통신 프로토콜을 변환하는 기능을 수행할 수도 있다. 세부적으로, 애플리케이션 프로세서(110)는 다른 외부 장치들과 전자 비즈니스 서비스에 관련된 데이터 통신을 수행할 수 있다. 예로서, 전자 비즈니스 서비스에 관련된 데이터 통신은 쿠폰 발행 프로세스, 쿠폰 상환 프로세스 또는 결제 프로세스 중의 적어도 하나의 프로세스를 위한 데이터 통신이 포함될 수 있다.
예로서, 애플리케이션 프로세서(110)에서 실행되는 애플리케이션에는 시큐어 엘리먼트(120)와의 상호 인증을 수행하는데 필요한 애플리케이션, 또는 외부 장치들 간의 통신을 통하여 쿠폰 서비스를 수행하는데 필요한 애플리케이션 등이 포함될 수 있다.
예로서, 애플리케이션 프로세서(110)에서의 실행 환경은 리치 실행 환경(Rich Execution Environment REE)과 트러스티드 실행 환경(Trusted Execution Environment; TEE)으로 구분될 수 있다. 즉, 애플리케이션 프로세서(110)에는 리치 운영 체계(Rich Operating System)에서 애플리케이션을 수행하는 리치 실행 환경과 트러스티드 운영 체계(Trusted Operating System)에서 애플리케이션을 수행하는 트러스티드 실행 환경이 존재한다.
여기에서, 리치 실행 환경(Rich Execution Environment; REE)은 논-트러스티드 실행 환경(Non-Trusted Execution Environment; NTEE)이라 칭해질 수도 있다. 리치 실행 환경(REE)은 비-보안 실행 환경을 의미하며, 트러스티드 실행 환경(TEE)은 보안 실행 환경을 의미한다.
시큐어 엘리먼트(120)는 애플리케이션을 설치, 관리할 수 있는 플랫폼이다. 시큐어 엘리먼트(120)는 보안 저장 및 지불, 인증 또는 다른 다양한 서비스를 위한 애플리케이션의 실행을 제공하는 하드웨어, 소프트웨어, 인터페이스, 및 프로토콜로 구성된다.
예로서, 시큐어 엘리먼트(120)는 전자 장치(100)의 슬롯에 삽입될 수 있는 범용 집적 회로 카드(Universal Integrated Circuit Card; UICC) 형태 또는 전자 장치(100)에 매립된 형태로 장착될 수 있다.
예로서, 시큐어 엘리먼트(120)에는 애플리케이션 프로세서(110)와의 상호 인증을 수행하는데 필요한 애플리케이션, 쿠폰 서비스를 수행하는데 필요한 애플리케이션, 또는 카드 결제 서비스를 수행하는데 필요한 애플리케이션 등이 저장될 수 있다. 예로서, 시큐어 엘리먼트(120)에서 자바(Java) 언어로 프로그램이 구현되는 경우에 위의 애플리케이션은 애플릿(Applet)이 될 수 있다.
본 발명에서 제안하는 전자 장치(100)에서의 데이터 통신 방법은 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 상호 인증을 실행하여 시큐어 채널(Secure Channel; 130)을 생성한 후에, 시큐어 채널(130)을 통하여 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 데이터 통신을 수행한다. 예로서, 애플리케이션 프로세서(110) 또는 시큐어 엘리먼트(120)는 시큐어 채널(130)을 통하여 쿠폰 정보 또는 결제 정보 중 적어도 하나의 정보를 전송할 수 있다.
예로서, 애플리케이션 프로세서(110) 내의 트러스티드 실행 환경과 시큐어 엘리먼트(120) 사이의 상호 인증을 통하여 시큐어 채널(130)을 생성할 수 있다.
예로서, 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 시큐어 채널(130)를 생성시키고 나서, 개인 식별 번호(Personal Identification Number PIN)에 대한 검증 처리를 수행한 후에 데이터 통신을 수행할 수도 있다.
애플리케이션 프로세서(110) 및 시큐어 엘리먼트(120)는 시큐어 채널(130)을 통하여 암호화된 정보를 전송하거나 수신할 수 있다.
시큐어 엘리먼트(120)는 시큐어 채널(130)을 통하여 애플리케이션 프로세서(110)로부터 수신된 암호화된 정보를 해독하여 시큐어 엘리먼트(120) 내의 스토리지에 저장할 수 있다. 예로서, 시큐어 엘리먼트(120) 내의 스토리지에 저장되는 정보는 사용자 정보, 쿠폰 정보 또는 결제 정보 중의 적어도 하나를 포함할 수 있다.
도 2는 도 1의 전자 장치를 이용한 쿠폰 및 결제 서비스의 비즈니스 모델을 설명하기 위한 개략적인 전자 시스템 구성도이다.
도 2에 도시된 바와 같이, 전자 시스템(1000)은 전자 장치(100), CRM(Customer Relationship Management) 서버(200) 및 POS(Point of Sales) 단말기(300)를 포함한다.
전자 장치(100)에 대한 기본적인 동작 설명은 도 1에서 하였으므로, 중복적인 설명은 피하기로 한다. 여기에서, 애플리케이션 프로세서(110)는 쿠폰 애플리케이션을 관리하고, 또한 시큐어 엘리먼트(120) 사이의 시큐어 채널(130)을 생성시키기 위한 애플리케이션을 관리한다. 예로서, 애플리케이션 프로세서(110)의 리치 실행 환경(Rich Execution Environment; REE)과 트러스티드 실행 환경(Trusted Execution Environment; TEE)으로 나누어진 실행 환경에서 트러스티드 실행 환경(TEE)과 시큐어 엘리먼트(120) 사이의 상호 인증을 통하여 시큐어 채널(130)을 생성할 수 있다. 시큐어 채널(130)을 통하여 쿠폰 서비스 또는 결제 서비스를 위한 데이터 통신을 수행할 수 있다.
CRM 서버(200)는 쿠폰 발급 및 인증 서비스를 제공하는 서버이다. POS 단말기(300)는 결제 서비스를 제공하는 단말기로서, 접촉 또는 비접촉방식으로 구현될 수 있다.
전자 장치(100), CRM 서버(200) 및 POS 단말기(300)는 상호 간에 유선 또는 무선 통신 네트워크를 통하여 데이터를 주고 받을 수 있다. 전자 장치(100), CRM 서버(200) 및 POS 단말기(300) 사이에서의 주요 정보는 암호화되어 전달된다. 예로서, 주요 정보에는 개인 정보, 쿠폰 정보, 또는 결제 정보가 포함될 수 있다.
본 발명에서 제안하는 쿠폰 및 결제 서비스를 제공하는 비즈니스 모델의 일 예는 다음과 같다.
전자 장치(100)의 애플리케이션 프로세서(110)에서 CRM 서버(200)로 쿠폰 발급을 요청한다. 그러면, CRM 서버(200)는 쿠폰 발급 요청에 기초하여 전자 장치(100)의 애플리케이션 프로세서(110)로 암호화된 쿠폰 정보를 전송한다.
전자 장치(100)의 애플리케이션 프로세서(110)는 CRM 서버(200)로부터 수신된 암호화된 쿠폰 정보를 시큐어 엘리먼트(120)로 전달하기 전에 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에 시큐어 채널(130)이 생성되었는지를 확인한다. 만일, 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에 시큐어 채널(130)이 생성되어 있지 않은 경우에는 상호 인증을 실행하여 시큐어 채널(130)을 생성하는 프로세스를 수행한다.
애플리케이션 프로세서(110)는 CRM 서버(200)로부터 수신된 암호화된 쿠폰 정보를 시큐어 채널(130)을 통하여 시큐어 엘리먼트(120)로 전송한다. 그러면, 시큐어 엘리먼트(120)는 암호화된 쿠폰 정보를 해독하여 시큐어 엘리먼트(120) 내의 스토리지에 저장한다.
CRM 서버(200)로부터 발급받은 쿠폰을 이용하여 결제하고자 하는 경우에, 애플리케이션 프로세서(110)는 쿠폰 애플리케이션을 실행시켜서 POS 단말기(300)에 쿠폰 사용 요청을 한다.
그러면, POS 단말기(300)는 전자 장치(100)의 애플리케이션 프로세서(110)로부터 수신한 암호화된 쿠폰 정보를 CRM 서버(200)로 전달하여 인증을 요청한다.
CRM 서버(200)는 쿠폰 발급 기록과 비교하여 쿠폰을 인증한 뒤에 결제할 금액에서 쿠폰 금액만큼 차감한 실제 결제할 금액 정보를 POS 단말기(300)로 전송한다.
그러면, 전자 장치(100)의 시큐어 엘리먼트(120)에 저장되어 있는 결제 애플리케이션을 실행시켜서 POS 단말기(300)에서의 결제 처리를 수행한다. 이에 따라서, 총 구매 금액에서 쿠폰 금액만큼 차감한 금액에 대한 결제 처리가 이루어진다. 예로서, 시큐어 엘리먼트(120)는 신용카드 결제 애플리케이션 또는 체크카드 결제 애플리케이션 등의 다양한 결제 방식의 애플리케이션을 실행시켜서 결제 처리를 수행할 수 있다.
CRM 서버(200)는 결제 처리 완료 후에 POS 단말기(300)를 통하여 시큐어 엘리먼트(120)로 쿠폰 업데이트 요구 정보를 전송한다. 그러면, 시큐어 엘리먼트(120)는 쿠폰 업데이트 요구 정보에 기초하여 쿠폰 업데이트 처리를 수행한다.
도 3은 본 발명의 실시 예에 따른 전자 장치를 이용한 쿠폰 및 결제 서비스를 제공하기 위한 전자 시스템 구성도이다.
도 3에 도시된 바와 같이, 전자 시스템(2000)은 전자 장치(100A), CRM 서버(200), POS 단말기(300) 및 네트워크(400)를 포함한다.
전자 장치(100A)는 애플리케이션 프로세서(110), 시큐어 엘리먼트(120) 및 통신 모듈(140)을 포함한다.
애플리케이션 프로세서(110)는 전자 장치(100A)의 전반적인 동작 및 전자 장치(100A) 내부 구성 수단들 간의 신호의 흐름을 제어하고, 데이터를 처리하는 동작을 수행한다.
세부적으로, 애플리케이션 프로세서(110)는 운영체계 또는 애플리케이션을 실행하여 전자 장치(100A)의 하드웨어 또는 소프트웨어들을 제어하고, 각종 데이터 처리 및 연산을 수행할 수 있다. 애플리케이션 프로세서(110)는 전자 장치(100A)와 네트워크(400)로 연결된 CRM 서버(200) 또는 POS 단말기(300)와의 통신에서의 데이터 링크를 관리하고, 통신 프로토콜을 변환하는 기능을 수행할 수도 있다.
예로서, 애플리케이션 프로세서(110)는 쿠폰 애플리케이션 또는 결제 애플리케이션을 관리하고, 시큐어 엘리먼트(120) 사이의 시큐어 채널(130)을 생성시키기 위한 애플리케이션을 관리한다. 다른 예로서, 시큐어 엘리먼트(120)에서 결제 애플리케이션을 관리할 수도 있다.
애플리케이션 프로세서(110) 및 시큐어 엘리먼트(120)에 대한 기본적인 동작은 도 1 및 도 2에서 이미 설명하였으므로, 중복적인 설명은 피하기로 한다.
통신 모듈(140)은 네트워크(400)를 통하여 CRM 서버(200) 또는 POS 단말기(300)로부터 수신되는 신호를 처리하여 애플리케이션 프로세서(110)로 전송하거나, 애플리케이션 프로세서(110)로부터 수신되는 신호를 처리하여 네트워크(400)를 통하여 CRM 서버(200) 또는 POS 단말기(300)로 전송하는 신호 처리를 실행한다.
예로서, 통신 모듈(140)은 유선 통신 서비스 또는 무선 통신 서비스를 지원하기 위한 하드웨어 및 소프트웨어를 구비한다. 세부적으로, 통신 모듈(140)은 이동 통신 모듈, 근거리 통신 모듈(예로서, Wi-Fi), 블루투스(Bluetooth) 통신 모듈, NFC(Near Field Communication) 모듈 등의 다양한 통신 서비스를 지원하는 하드웨어 및 소프트웨어를 구비할 수 있다.
네트워크(400)는 유선 통신 네트워크 또는 무선 통신 네트워크로 구현될 수 있다. 네트워크(400)를 통하여 전자 장치(100A), CRM 서버(200) 및 POS 단말기(300) 사이의 데이터 통신을 수행할 수 있다.
CRM 서버(200)는 네트워크(400)를 통하여 접속되는 전자 장치(100A) 또는 POS 단말기(300)로 쿠폰 발급 서비스 또는 인증 서비스를 제공하기 위한 하드웨어 및 소프트웨어를 구비한다. POS 단말기(300)는 네트워크(400)를 통하여 접속되는 CRM 서버(200) 또는 전자 장치(100A)로 쿠폰 사용 서비스 또는 결제 서비스를 제공하기 위한 하드웨어 및 소프트웨어를 구비한다.
그러면, 전자 시스템(2000)에서의 쿠폰 및 결제 서비스를 실행하는 데이터 처리 과정을 설명하기로 한다.
전자 장치(100)의 애플리케이션 프로세서(110)는 쿠폰 애플리케이션을 실행하여 쿠폰 다운로드 요청 메시지를 생성하여 통신 모듈(140)로 전달한다. 통신 모듈(140)은 네트워크(400)를 통하여 CRM 서버(200)에 접속한 후에 쿠폰 다운로드 요청 메시지를 전송한다. 그러면, CRM 서버(200)는 쿠폰 발급 요청에 기초하여 전자 장치(100A)로 암호화된 쿠폰 정보를 전송한다.
전자 장치(100A)의 통신 모듈(140)은 CRM 서버(200)로부터 암호화된 쿠폰 정보를 수신하고 나서 통신 규격에 따른 신호 처리를 수행한 후에, 애플리케이션 프로세서(110)로 전달한다.
전자 장치(100A)의 애플리케이션 프로세서(110)는 암호화된 쿠폰 정보를 시큐어 엘리먼트(120)로 전달하기 전에 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에 시큐어 채널(130)이 생성되었는지를 확인한다. 만일, 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에 시큐어 채널(130)이 생성되어 있지 않은 경우에는 상호 인증을 실행하여 시큐어 채널(130)을 생성하는 프로세스를 수행한다. 이 때, 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120)는 각각 인증 애플리케이션을 실행하여 인증 처리를 수행할 수 있다.
그리고, 시큐어 채널(130)을 셋업(set up)시키고 나서, 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에서 개인 식별 번호(Personal Identification Number; PIN)에 대한 검증 처리를 수행할 수 있다.
개인 식별 번호(PIN)에 대한 검증 처리를 마치고 나서, 애플리케이션 프로세서(110)는 암호화된 쿠폰 정보를 시큐어 채널(130)을 통하여 시큐어 엘리먼트(120)로 전송한다. 그러면, 시큐어 엘리먼트(120)는 암호화된 쿠폰 정보를 해독하여 시큐어 엘리먼트(120) 내의 스토리지에 저장한다.
이와 같은 동작을 통하여 CRM 서버(200)에서 발급된 쿠폰 정보는 전자 장치(100A)의 시큐어 엘리먼트(120)에 저장된다.
시큐어 엘리먼트(120)에 저장된 쿠폰 정보를 이용하여 결제하고자 하는 경우에, POS 단말기(300)를 통하여 쿠폰 정보 사용 요청을 한다. 그러면, POS 단말기(300)는 네트워크(400)에 접속된 전자 장치(100A)로 쿠폰 정보 전송을 요청한다. NFC(Near Field Communication) 모듈을 이용하여 POS 단말기(300)와 전자 장치(100A) 사이에서의 데이터 통신을 수행할 수 있다.
예로서, NFC 모듈을 이용하여 POS 단말기(300)와 전자 장치(100A)의 애플리케이션 프로세서(110) 사이에서의 데이터 통신을 수행할 수 있다. 다른 예로서, NFC 모듈을 이용하여 POS 단말기(300)와 전자 장치(100A)의 시큐어 엘리먼트(120) 사이에서의 데이터 통신을 수행할 수 있다.
예로서, POS 단말기(300)는 통신 모듈(140)에 포함된 NFC 모듈을 이용하여 전자 장치(100A)의 애플리케이션 프로세서(110)로 쿠폰 정보 전송을 요청할 수 있다. 그러면, 애플리케이션 프로세서(110)는 시큐어 채널(130)을 통하여 시큐어 엘리먼트(120)로부터 암호화된 쿠폰 정보를 전달받은 후에 통신 모듈(140)을 통하여 POS 단말기(300)로 전송할 수 있다.
다른 예로서, POS 단말기(300)는 통신 모듈(140)에 포함된 NFC 모듈을 이용하여 전자 장치(100A)의 시큐어 엘리먼트(120)로 직접 쿠폰 정보 전송을 요청할 수 있다. 그러면, 시큐어 엘리먼트(120)는 요청받은 쿠폰 정보를 암호화 처리한 후에 통신 모듈(140)에 포함된 NFC 모듈을 통하여 POS 단말기(300)로 전송할 수 있다. 이 경우에는 애플리케이션 프로세서(110)를 경유할 필요가 없게 된다.
그러면, POS 단말기(300)는 전자 장치(100A)로부터 수신한 암호화된 쿠폰 정보를 네트워크(400)에 접속된 CRM 서버(200)로 전달하여 인증 및 금액 차감을 요청한다.
CRM 서버(200)는 쿠폰 발급 기록과 비교하여 쿠폰을 인증한 뒤에 결제할 총 금액에서 쿠폰 금액만큼 차감하고 남은 금액에대한정보를 POS 단말기(300)로 전송한다.
그러면, 전자 장치(100)의 시큐어 엘리먼트(120)에 저장되어 있는 결제 애플리케이션을 실행시켜서 통신 모듈(140)을 통하여 POS 단말기(300)와의 데이터 통신을 통하여 결제 처리를 수행한다. 이에 따라서, 총 구매 금액에서 쿠폰 금액만큼 차감한 금액에 대한 결제 처리가 이루어진다. 예로서, 시큐어 엘리먼트(120)는 신용카드 결제 애플리케이션 또는 체크카드 결제 애플리케이션 등의 다양한 결제 방식의 애플리케이션을 실행시켜서 결제 처리를 수행할 수 있다.
CRM 서버(200)는 결제 처리 완료 후에 POS 단말기(300)를 통하여 전자 장치(100A)로 쿠폰 업데이트 요구 정보를 전송한다. 그러면, 전자 장치(100A)의 애플리케이션 프로세서(110)는 통신 모듈(140)을 통하여 수신된 쿠폰 업데이트 요구 정보를 시큐어 채널(120)을 통하여 시큐어 엘리먼트(120)로 전송한다. 이에 따라서, 시큐어 엘리먼트(120)는 수신된 쿠폰 업데이트 요구 정보에 기초하여 쿠폰 업데이트 처리를 수행한다.
도 4는 도 1에 도시된 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120)의 세부 구성을 예시적으로 보여주는 블록 구성도이다.
도 4에 도시된 바와 같이, 애플리케이션 프로세서(110)는 리치 실행 환경(Rich Execution Environment; REE, 111)과 트러스티드 실행 환경(Trusted Execution Environment; TEE, 112)으로 나누어진다.
리치 실행 환경(111)은 비-보안 실행 환경으로서, 리치 운영 체계(Rich OS, 111-1), TEE API(111-2) 및 복수의 애플리케이션들(APP #1 ~ #N, 111-3)을 구비한다. 그리고, 트러스티드 실행 환경(112)은 보안 실행 환경으로서, 트러스티드 운영 체계(Trusted OS, 112-1), TEE 코어(112-2), TEE 내부 API(112-3) 및 복수의 트러스티드 애플리케이션들(Trusted APP #1 ~ #M, 112-4)을 구비한다.
리치 운영 체계(111-1)는 비-보안 실행 환경인 리치 실행 환경(111)에서의 하드웨어와 소프트웨어를 제어하는 동작을 수행한다. 세부적으로, 리치 운영 체계(111-1)는 리치 실행 환경(111)에서 복수의 애플리케이션들(APP #1 ~ #N)이 효율적으로 실행될 수 있도록 하드웨어와 소프트웨어를 제어한다.
복수의 애플리케이션들(APP #1 ~ #N, 111-3)에는 리치 실행 환경(111)에서 쿠폰 서비스 및 결제 서비스를 수행하기 위한 애플리케이션이 포함될 수 있다. 예로서, 복수의 애플리케이션들(APP #1 ~ #N, 111-3)에는 도 6 내지 도 14의 흐름도에 포함된 태스크들 중에서 리치 실행 환경(111)에서의 쿠폰 서비스 및 결제 서비스를 제공하기 위한 태스크를 수행하는 하나 이상의 애플리케이션이 포함될 수 있다.
TEE API(Trusted Execution Environment Application Program Interface, 111-2)는 복수의 애플리케이션들(APP #1 ~ #N, 111-3)을 실행하는데 사용되는 리소스들을 제어 또는 관리하는 인터페이스이다. 그리고, 복수의 애플리케이션들(APP #1 ~ #N, 111-3)이 실행되는 과정에서 트러스티드 실행 환경(112)과의 정보 교환이 필요한 경우에, 보안 실행 환경 기능이 있는 TEE API(111-2)를 통하여 트러스티드 실행 환경(112)과의 정보 교환을 수행한다. 이에 따라서, TEE API(111-2)를 거치지 않고서는 트러스티드 실행 환경(112)에 접속할 수 없게 된다.
트러스티드 운영 체계(Trusted OS, 112-1)는 비-보안 실행 환경인 트러스티드 실행 환경(TEE, 112)에서의 하드웨어와 소프트웨어를 제어하는 동작을 수행한다. 세부적으로, 트러스티드 운영 체계(112-1)는 트러스티드 실행 환경(112)에서 복수의 트러스티드 애플리케이션들(Trusted APP #1 ~ #M, 112-4)이 효율적으로 실행될 수 있도록 하드웨어와 소프트웨어를 제어한다.
복수의 트러스티드 애플리케이션들(Trusted APP #1 ~ #M, 112-4)에는 트러스티드 실행 환경(112)에서 쿠폰 서비스 및 결제 서비스를 수행하기 위한 애플리케이션이 포함될 수 있다. 그리고, 복수의 트러스티드 애플리케이션들(Trusted APP #1 ~ #M, 112-4)에는 트러스티드 실행 환경(112)과 시큐어 엘리먼트(120) 사이에 시큐어 채널을 생성시키기 위하여 시큐어 엘리먼트(130)와의 상호 인증을 수행하기 위한 애플리케이션도 포함될 수 있다.
예로서, 복수의 트러스티드 애플리케이션들(Trusted APP #1 ~ #M, 112-4)에는 도 6 내지 도 14의 흐름도에 포함된 태스크들 중에서 트러스티드 실행 환경(112)에서의 쿠폰 서비스 및 결제 서비스를 제공하기 위한 태스크를 수행하는 하나 이상의 애플리케이션이 포함될 수 있다.
TEE 코어(112-2)는 트러스티드 실행 환경(112)에서 트러스티드 운영 체계(Trusted OS, 112-1) 및 복수의 트러스티드 애플리케이션들(Trusted APP #1 ~ #M, 112-4)을 실행시키는 하드웨어 및 소프트웨어이다. 그리고, TEE 코어(112-2)는 복수의 트러스티드 애플리케이션들(Trusted APP #1 ~ #M, 112-4)이 실행되는 과정에서 리치 실행 환경(111)과의 정보 교환이 필요한 경우에, 보안 실행 환경 기능이 있는 TEE API(111-2)를 통하여 리치 실행 환경(111)과의 정보 교환을 수행한다.
TEE 내부 API(Trusted Execution Environment Internal Application Program Interface, 112-3)는 트러스티드 실행 환경(112)에서 복수의 트러스티드 애플리케이션들(Trusted APP #1 ~ #M, 112-4)을 실행하는데 사용되는 리소스들을 제어 또는 관리하는 인터페이스이다.
도 4를 참조하면, 시큐어 엘리먼트(120)는 SE 운영 체계(Secure Element Operating System, 121), 복수의 SE 애플리케이션들(Secure Element APP #1 ~ #K, 122), SE API(Secure Element Application Program Interface, 123) 및 스토리지(Storage, 124)를 구비한다.
SE 운영 체계(121)는 시큐어 엘리먼트(120)에서의 하드웨어와 소프트웨어를 제어하는 동작을 수행한다. 세부적으로, SE 운영 체계(121)는 복수의 SE 애플리케이션들(Secure Element APP #1 ~ #K, 122)이 효율적으로 실행될 수 있도록 시큐어 엘리먼트(120)의 하드웨어와 소프트웨어를 제어한다.
복수의 SE 애플리케이션들(Secure Element APP #1 ~ #K, 122)에는 시큐어 엘리먼트(120)에서 쿠폰 서비스 및 결제 서비스를 수행하기 위한 애플리케이션이 포함될 수 있다. 그리고, 복수의 SE 애플리케이션들(Secure Element APP #1 ~ #K, 122)에는 시큐어 엘리먼트(120)와 트러스티드 실행 환경(112) 사이에 시큐어 채널을 생성시키기 위하여 트러스티드 실행 환경(112)과의 상호 인증을 수행하기 위한 애플리케이션도 포함될 수 있다.
예로서, 복수의 SE 애플리케이션들(Secure Element APP #1 ~ #K, 122)에는 도 6 내지 도 14의 흐름도에 포함된 태스크들 중에서 시큐어 엘리먼트(120)에서의 쿠폰 서비스 및 결제 서비스를 제공하기 위한 태스크를 수행하는 하나 이상의 애플리케이션이 포함될 수 있다.
SE API(123)는 복수의 SE 애플리케이션들(SE APP #1 ~ #K, 122)을 실행하는데 사용되는 리소스들을 제어 또는 관리하는 인터페이스이다.
스토리지(Storage, 124)는 비휘발성 메모리 장치로서 플래시 메모리 장치 등으로 구현될 수 있다. 예로서, 스토리지(124)에는 사용자 정보, 쿠폰 정보 또는 결제 정보 중의 적어도 하나가 저장될 수 있다.
이에 따라서, 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에서의 데이터 통신을 수행하고자 하는 경우에는, 애플리케이션 프로세서(110)의 트러스티드 실행 환경(112)과 시큐어 엘리먼트(120) 사이의 상호 인증을 수행하는 애플리케이션을 실행시켜 시큐어 채널(130)을 생성시킨다.
이와 같이 생성된 시큐어 채널(130)을 통하여 애플리케이션 프로세서(110)의 트러스티드 실행 환경(112)과 시큐어 엘리먼트(120) 사이에서 데이터 통신을 수행함으로써, 불법적인 데이터 유출을 방지할 수 있게 된다. 그리고, 애플리케이션 프로세서(110)의 리치 실행 환경(111)에서 TEE API(111-2)를 통해서만 트러스티드 실행 환경(112)에 접속할 수 있어서 불법적인 데이터 유출을 방지할 수 있게 된다.
도 5는 본 발명의 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법이 적용되는 모바일 장치(500)의 세부 구성도이다.
도 5에 도시된 바와 같이, 모바일 장치(500)는 제어부(510), 시큐어 엘리먼트(SE, 520), 통신 모듈(530), 키 입력부(540), 메모리(550), 오디오 처리부(560) 및 표시부(570)를 포함한다.
제어부(510)는 모바일 장치(500)의 전반적인 동작 및 구성 수단들간의 신호 흐름을 제어하고, 데이터를 처리하는 기능을 수행한다. 예로서, 제어부(510)는 음성 통화 서비스, 영상 통화 서비스, 문자 메시지 서비스 또는 다양한 네트워크를 통한 데이터 통신 서비스를 제공하도록 구성 수단들을 제어하는 기능을 수행할 수 있다. 그리고, 제어부(510)는 도 6 내지 도 14에 도시된 흐름도에 따른 쿠폰 서비스 및 결제 서비스를 제공하도록 하드웨어 및 소프트웨어를 제어하는 동작을 수행할 수 있다.
제어부(510)에는 하나 이상의 애플리케이션 프로세서(511)를 포함할 수 있다. 애플리케이션 프로세서(511)는 도 1 내지 도 4에서 설명된 애플리케이션 프로세서(110)가 적용될 수 있다.
시큐어 엘리먼트(SE, 520)는 도 1 내지 도 4에서 설명된 시큐어 엘리먼트(120)가 적용될 수 있다.
통신 모듈(530)은 유선 통신 서비스 또는 무선 통신 서비스를 지원하기 위한 하드웨어 및 소프트웨어를 구비한다. 세부적으로, 통신 모듈(530)은 이동 통신 서비스, 근거리 통신 모듈(예로서, Wi-Fi), 블루투스(Bluetooth) 통신 모듈, NFC(Near Field Communication) 모듈 등의 다양한 통신 서비스를 지원하는 하드웨어 및 소프트웨어를 구비할 수 있다.
키 입력부(540)는 하나 이상의 터치 키를 포함할 수 있다. 이러한 터치 키는 인체 또는 사물의 터치 또는 접근을 인식할 수 있는 다양한 종류의 입력 수단을 의미한다. 키 입력부(540)는 쿠폰 서비스를 위한 입력 수단으로 활용될 수 있다. 예로서, 사용자는 키 입력부(540)를 통하여 쿠폰 서비스 수행 과정에서의 개인 식별 번호(Personal Identification Number; PIN) 입력 또는 쿠폰 선택 입력을 수행할 수 있다.
메모리(550)는 메인 메모리(Main Memory)와 보조 메모리(Secondary Memory)를 포함할 수 있다. 예로서, 메인 메모리는 RAM(Random Access Memory) 등으로 구현될 수 있다. 보조 메모리는 ROM(Read Only Memory) 또는 플래시 메모리 등으로 구현될 수 있다. 보조 메모리에는 각종 프로그램들 예컨대, 부팅 프로그램, 운영체계 및 애플리케이션들이 저장될 수 있다. 세부적으로, 보조 메모리에는 리치 운영 체계(Rich OS) 및 트러스티드 운영 체계(Trusted OS)가 포함될 수 있다. 또한, 보조 메모리에는 도 6 내지 도 14에 도시된 흐름도에 따른 쿠폰 서비스를 제공하는데 필요한 애플리케이션들이 저장될 수 있다. 제어부(510)는 보조 메모리로부터 부팅 프로그램, 운영체계 및 애플리케이션들을 읽어내어 메인 메모리에 로딩시킬 수 있다.
이에 따라서, 제어부(510)의 애플리케이션 프로세서(511)는 메인 메모리에 로딩된 프로그램들을 이용하여 모바일 장치(500)의 하드웨어 및 소프트웨어를 제어할 수 있다.
예로서, 메모리(550)의 일부 또는 전체를 제어부(510)에 포함되도록 회로 설계를 할 수 있다. 다른 예로서, 메모리(550)의 일부 또는 전체를 제어부(510)의 애플리케이션 프로세서(511)에 포함되도록 회로 설계를 할 수도 있다. 그리고, 제어부(510)를 포함하여 모바일 장치(500)의 하드웨어 일부 또는 전체를 하나의 칩으로 설계하는 SoC(System on Chip)로 구현할 수도 있다.
오디오 처리부(560)는 통화 서비스를 제공하기 위한 오디오 신호 처리를 수행한다. 표시부(570)는 제어부(510)에서 처리된 화상 데이터를 출력하는 수단이다. 예로서, 표시부(570)는 LCD(Liquid Crystal Display) 또는 OLED(Organic Light Emitting Diode) 등으로 구현할 수 있다.
도 5에는 도시되지 않았지만, 모바일 장치(500)는 메모리 카드, USB 장치 등과 통신하거나, 또는 다른 전자 장치들과 통신할 수 있는 포트(port)들을 더 포함할 수 있다. 또한, 모바일 장치(500)는 카메라 및 센서 등을 더 포함할 수도 있다.
다음으로, 본 발명의 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법에 대하여 도 6 내지 도 9의 흐름도를 참조하여 설명하기로 한다.
예로서, 도 6 내지 도 9의 흐름도는 도 1 내지 도 4에 도시된 전자 장치(100) 또는 도 5에 도시된 모바일 장치(500)에서 실행될 수 있다. 물론, 도 6 내지 도 9의 흐름도에 도시된 시큐어 엘리먼트를 이용한 데이터 통신 방법은 도 1 내지 도 5에 도시된 전자 장치(100) 또는 모바일 장치(500)뿐만 아니라 시큐어 엘리먼트가 포함된 다양한 형태의 장치들에서도 실행될 수 있다.
설명의 편의를 위하여 도 1 내지 도 4에 도시된 전자 장치(100)를 참조하여 도 6 내지 도 9의 흐름도를 설명하기로 한다.
도 6은 본 발명의 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법의 흐름도이다.
우선, 시큐어 엘리먼트(120)를 구비하는 전자 장치(100)는 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 상호 인증을 통하여 시큐어 채널(130)을 생성하는 동작을 수행한다(S110). 예로서, 애플리케이션 프로세서(110) 내의 트러스티드 실행 환경과 시큐어 엘리먼트(120) 사이의 상호 인증을 통하여 시큐어 채널(130)을 생성할 수 있다. 예로서, 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에서의 인증 정보를 교환한 후에 공개 키와 비밀 키를 이용하여 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120)의 상호 인증 프로세스를 수행할 수 있다. 시큐어 채널(130)을 생성하는 상호 인증 과정에 대해서는 도 10에서 구체적으로 설명될 것이다.
다음으로, 전자 장치(100)는 오퍼레이션 S110에서 생성된 시큐어 채널(130)을 통하여 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 데이터 통신을 수행한다(S120). 예로서, 데이터 통신은 쿠폰 발급, 저장, 사용 또는 업데이트 프로세스들 중의 적어도 하나의 프로세스에 관련된 데이터 통신이 포함될 수 있다. 예로서, 시큐어 채널(130)을 통하여 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에서 암호화된 데이터를 주고 받을 수 있다.
도 7은 본 발명의 다른 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법의 흐름도이다.
우선, 시큐어 엘리먼트(120)를 구비하는 전자 장치(100)는 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 상호 인증을 통하여 시큐어 채널(130)을 생성하는 동작을 수행한다(S210).
다음으로, 전자 장치(100)는 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 시큐어 채널(130)을 생성시킨 후에 개인 식별 번호(Personal Identification Number; PIN)에 대한 검증 처리를 수행한다(S220). 예로서, 애플리케이션 프로세서(110)는 시큐어 채널(130)을 통하여 시큐어 엘리먼트(120)로 개인 식별 번호에 대한 검증을 요청한다. 그러면, 시큐어 엘리먼트(120)는 애플리케이션 프로세서(110)로부터 수신된 개인 식별 번호(PIN)에 대한 인증 절차를 거친 후에 인증 결과를 애플리케이션 프로세서(110)로 전달한다.
다음으로, 전자 장치(100)는 개인 식별 번호(PIN)에 대한 인증 절차에 성공한 경우에, 시큐어 채널(130)을 통하여 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 데이터 통신을 수행한다(S230).
도 8은 본 발명의 또 다른 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법의 흐름도이다.
전자 장치(100)는 시큐어 엘리먼트(120)에 대한 액세스 요구가 발생되었는지를 판단한다(S310). 세부적으로, 전자 장치(100)의 애플리케이션 프로세서(110)에서 시큐어 엘리먼트(120)에 대한 액세스 요구가 발생되었는지를 판단할 수 있다. 예로서, 쿠폰 서비스 또는 결제 서비스를 제공받기 위하여 시큐어 엘리먼트(120)에 대하 액세스 요구가 발생될 수 있다.
오퍼레이션 S310의 판단 결과 시큐어 엘리먼트(120)에 대한 액세스 요구가 발생된 경우에, 전자 장치(100)는 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에 시큐어 채널(130)이 형성되어 있는지를 판단한다(S320). 세부적으로, 전자 장치(100)의 애플리케이션 프로세서(110)는 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에 시큐어 채널(130)이 형성되어 있는지를 판단할 수 있다.
오퍼레이션 S320의 판단 결과 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에 시큐어 채널(130)이 형성되어 있지 않는 경우에, 전자 장치(100)는 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 상호 인증을 통하여 시큐어 채널(130)을 생성하는 동작을 수행한다(S330).
그리고 나서, 전자 장치(100)는 시큐어 채널(130)을 통하여 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 데이터 통신을 수행한다(S340).
만일 오퍼레이션 S320의 판단 결과 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에 시큐어 채널(130)이 형성되어 있는 경우에는 오퍼레이션 S330을 스킵(skip)하고 바로 오퍼레이션 S340을 수행한다.
도 9는 본 발명의 또 다른 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법의 흐름도이다.
전자 장치(100)는 시큐어 엘리먼트(120)에 대한 액세스 요구가 발생되었는지를 판단한다(S410).
오퍼레이션 S410의 판단 결과 시큐어 엘리먼트(120)에 대한 액세스 요구가 발생된 경우에, 전자 장치(100)는 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에 시큐어 채널(130)이 형성되어 있는지를 판단한다(S420).
오퍼레이션 S420의 판단 결과 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에 시큐어 채널(130)이 형성되어 있지 않는 경우에, 전자 장치(100)는 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 상호 인증을 통하여 시큐어 채널(130)을 생성하는 동작을 수행한다(S430).
다음으로, 전자 장치(100)는 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 시큐어 채널(130)을 생성시킨 후에 개인 식별 번호(PIN)에 대한 검증 처리를 수행한다(S440).
만일 오퍼레이션 S420의 판단 결과 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이에 시큐어 채널(130)이 형성되어 있는 경우에는 오퍼레이션 S430을 스킵(skip)하고 바로 오퍼레이션 S440을 수행한다.
다음으로, 전자 장치(100)는 개인 식별 번호(PIN)에 대한 검증에 성공하였는지를 판단한다(S450). 예로서, 애플리케이션 프로세서(110)에서 시큐어 엘리먼트(120)로 개인 식별 번호(PIN)에 대한 검증을 요청하면, 시큐어 엘리먼트(120)는 애플리케이션 프로세서(110)로부터 수신된 개인 식별 번호(PIN)에 대한 인증 절차를 거치고 나서 검증 성공 여부를 판정할 수 있다.
오퍼레이션 S450의 판단 결과 개인 식별 번호(PIN)에 대한 검증에 성공한 경우에, 전자 장치(100)는 시큐어 채널(130)을 통하여 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 데이터 통신을 수행한다(S460).
만일 오퍼레이션 S450의 판단 결과 개인 식별 번호(PIN)에 대한 검증에 실패한 경우에, 전자 장치(100)는 검증 실패 메시지를 생성한다(S470). 예로서, 검증 실패 메시지는 전자 장치(100)의 디스플레이 수단(도면에 미도시)을 통하여 출력될 수 있다.
도 10은 도 1의 전자 장치에서의 애플리케이션 프로세서(AP, 110)와 시큐어 엘리먼트(SE, 120) 사이의 시큐어 채널(130) 형성 과정을 보여주는 흐름도의 일 예이다.
우선, 애플리케이션 프로세서(110)는 시큐어 엘리먼트(120)로 인증 정보를 요구한다(S501). 시큐어 엘리먼트(120)는 인증 정보 요구에 기초하여 시큐어 엘리먼트(120)의 인증 정보를 애플리케이션 프로세서(110)로 전달한다(S502).
다음으로, 애플리케이션 프로세서(110)는 애플리케이션 프로세서(110)의 인증 정보와 함께 검증을 요구하는 메시지를 시큐어 엘리먼트(120)로 전달한다(S503). 그러면, 시큐어 엘리먼트(120)는 애플리케이션 프로세서 인증 정보의 공개 키를 이용하여 애플리케이션 프로세서(110)의 인증 정보를 검증 처리한 후에 랜덤 값을 생성한다. 시큐어 엘리먼트(120)는 검증 요구에 응답하여 랜덤 값을 애플리케이션 프로세서(110)로 전달한다(S504).
다음으로, 애플리케이션 프로세서(110)는 수신된 랜덤 값을 이용하여 서명 정보 및 공개 키(예로서, 일회용 공개 키)를 생성하고, 생성된 서명 정보 및 공개 키와 함께 인증을 요구하는 메시지를 시큐어 엘리먼트(120)로 전달한다(S505).
그러면, 시큐어 엘리먼트(120)는 애플리케이션 프로세서 공개 키를 이용하여 서명 정보를 검증 처리한다. 그리고 나서, 애플리케이션 프로세서 공개 키 및 시큐어 엘리먼트의 비밀 키를 이용하여 인증 값을 유도한다.
시큐어 엘리먼트(120)는 인증 요구에 응답하여 유도된 인증 값을 애플리케이션 프로세서(110)로 전달한다(S506). 그러면, 애플리케이션 프로세서(110)는 시큐어 엘리먼트 공개 키 및 애플리케이션 프로세서 비밀 키를 이용하여 인증 값에 대한 인증 처리를 수행한다.
이와 같은 애플리케이션 프로세서(110)와 시큐어 엘리먼트(120) 사이의 상호 인증 처리에 성공하면 시큐어 채널(130)이 생성된다.
다음으로, 도 2에 도시된 전자 시스템(1000)에서의 쿠폰 발행, 쿠폰 상환 및 쿠폰을 이용한 결제 처리를 수행하는 과정에 대하여 도 11 내지 도 14의 흐름도를 참조하여 설명하기로 한다.
위에서 언급한 바와 같이, 전자 시스템(1000)에 포함된 전자 장치(100)의 애플리케이션 프로세서(110) 및 시큐어 엘리먼트(120)는 도 4에 도시된 바와 같은 구성을 가질 수 있다. 이에 따라서, 애플리케이션 프로세서(110)의 실행 환경은 리치 실행 환경(REE, 111)과 트러스티드 실행 환경(TEE, 112)으로 나누어진다.
그러면, 전자 시스템(1000)을 구성하는 CRM 서버(200), POS 단말기(300), 전자 장치(100)에서의 애플리케이션 프로세서(110)의 리치 실행 환경(REE, 111), 트러스티드 실행 환경(TEE, 112) 및 시큐어 엘리먼트(SE, 120) 사이에서의 쿠폰 서비스 및 결제 서비스 실행 과정을 설명하기로 한다.
도 11은 도 2에 도시된 전자 시스템(1000)에서의 쿠폰 발행(Coupon Issuance) 프로세스를 수행하는 과정을 보여주는 흐름도의 일 예이다.
애플리케이션 프로세서(110)는 리치 실행 환경(REE, 111)에서 CRM 서버(200)로 쿠폰 다운로드를 요청한다(S1101). CRM 서버(200)는 전자 장치(100)의 쿠폰 다운로드 요청에 응답하여 암호화된 쿠폰 정보를 애플리케이션 프로세서(110)의 리치 실행 환경(REE, 111)으로 전송한다(S1102). 예로서, CRM 서버(200)는 암호화된 쿠폰 정보(encrypted coupon credential)와 함께 랜덤 값을 애플리케이션 프로세서(110)의 리치 실행 환경(REE, 111)으로 전송할 수 있다.
다음으로, 애플리케이션 프로세서(110)는 리치 실행 환경(REE, 111)에서 트러스티드 실행 환경(TEE, 112)을 거쳐서 시큐어 엘리먼트(SE, 120)로 SE 쿠폰 애플리케이션 선택을 요청한다(S1103). 그러면, 시큐어 엘리먼트(SE, 120)는 SE 쿠폰 애플리케이션 선택하여 실행시킨다. 그리고 나서, 시큐어 엘리먼트(SE, 120)는 SE 쿠폰 애플리케이션 선택 요청에 대한 응답 정보를 트러스티드 실행 환경(TEE, 112)을 거쳐서 리치 실행 환경(REE, 111)으로 전송한다(S1104).
다음으로, 애플리케이션 프로세서(110)는 리치 실행 환경(REE, 111)에서 트러스티드 실행 환경(TEE, 112)를 거쳐서 시큐어 엘리먼트(SE, 120)로 시큐어 채널 설정을 요청한다(S1105).
그러면, 애플리케이션 프로세서(110)의 트러스티드 실행 환경(TEE, 112)과 시큐어 엘리먼트(SE, 120)의 상호 인증 처리를 통하여 시큐어 채널을 생성한 후에 시큐어 엘리먼트(SE, 120)는 시큐어 채널 설정 요청에 대한 응답 정보를 트러스티드 실행 환경(TEE, 112)을 거쳐서 리치 실행 환경(REE, 111)으로 전송한다(S1106).
예로서, 오퍼레이션 S1105 및 S1106의 시큐어 채널 생성 프로세스는 도 10과 같은 과정을 거쳐서 수행될 수 있다.
다음으로, 애플리케이션 프로세서(110)는 리치 실행 환경(REE, 111)에서 트러스티드 실행 환경(TEE, 112)를 거쳐서 시큐어 엘리먼트(SE, 120)로 개인 식별 번호(PIN)에 대한 검증을 요청한다(S1107). 시큐어 엘리먼트(SE, 120)는 개인 식별 번호(PIN)에 대한 검증 처리를 수행한 후에 검증 처리 결과에 대한 메시지를 애플리케이션 프로세서(110)의 트러스티드 실행 환경(TEE, 112)을 거쳐서 리치 실행 환경(REE, 111)으로 전송한다(S1108).
다음으로, 애플리케이션 프로세서(110)는 CRM 서버(200)로부터 수신된 암호화된 쿠폰 정보 및 저장 요청 메시지를 리치 실행 환경(REE, 111)에서 트러스티드 실행 환경(TEE, 112)를 거쳐서 시큐어 엘리먼트(SE, 120)로 전송한다(S1109). 그러면, 시큐어 엘리먼트(SE, 120)는 암호화된 쿠폰 정보를 해독 처리한 후에 시큐어 엘리먼트(SE, 120) 내의 스토리지에 저장한다(S1110). 그리고 나서, 시큐어 엘리먼트(SE, 120)는 쿠폰 정보 저장 요청에 대한 응답 정보를 트러스티드 실행 환경(TEE, 112)을 거쳐서 리치 실행 환경(REE, 111)으로 전송한다(S1111).
이와 같은 과정을 통하여 CRM 서버(200)에서 발행된 쿠폰 정보는 시큐어 엘리먼트(SE, 120)에 저장된다.
도 12는 도 2에 도시된 전자 시스템(1000)에서의 쿠폰 상환(Coupon Redemption) 프로세스를 수행하는 과정을 보여주는 흐름도의 일 예이다.
POS 단말기(300)를 통하여 사용할 쿠폰이 선택되면(S1201), POS 단말기(300)는 CRM 서버(200)로 랜덤 값(Random Value)을 요청한다(S1202). 그러면, CRM 서버(200)는 랜덤 값을 생성하여 POS 단말기(300)로 전송한다(S1203).
다음으로, 애플리케이션 프로세서(110)는 리치 실행 환경(REE, 111)에서 사용할 쿠폰을 선택하는 처리를 수행한다(S1204). 쿠폰 선택이 완료되면, 애플리케이션 프로세서(110)는 리치 실행 환경(REE, 111)에서 트러스티드 실행 환경(TEE, 112)으로 개인 식별 번호(PIN)에 대한 검증 처리를 요청한다(S1205). 개인 식별 번호(PIN)에 대한 검증 처리 요청에 따라서 트러스티드 실행 환경(TEE, 112)에서 개인 식별 번호(PIN)가 입력되면, 애플리케이션 프로세서(110)는 트러스티드 실행 환경(TEE, 112)에서 입력된 개인 식별 번호(PIN)에 대한 검증 요청 메시지를 시큐어 엘리먼트(SE, 120)로 전달한다(S1206).
시큐어 엘리먼트(SE, 120)는 개인 식별 번호(PIN)에 대한 검증 처리를 수행한 후에(S1207), 검증 처리 결과에 대한 메시지를 트러스티드 실행 환경(TEE, 112)을 거쳐서 리치 실행 환경(REE, 111)으로 전송한다(S1208).
그리고 나서, POS 단말기(300)는 애플리케이션 프로세서(110)의 리치 실행 환경(REE, 111) 및 트러스티드 실행 환경(TEE, 112)을 거쳐서 시큐어 엘리먼트(SE, 120)로 회원 정보와 쿠폰 정보 요청 메시지를 전송한다(S1209). 이 때 POS 단말기(300)는 오퍼레이션 S1203에서 CRM 서버(200)로부터 수신된 랜덤 값을 시큐어 엘리먼트(SE, 120)로 전달한다.
그러면, 시큐어 엘리먼트(SE, 120)는 내부 스토리지로부터 회원 정보 및 쿠폰 정보를 읽어낸 후에, 수신된 랜덤 값을 이용하여 회원 정보와 쿠폰 정보를 각각 암호화 처리한다(S1210). 그리고 나서, 시큐어 엘리먼트(SE, 120)는 암호화 처리된 회원 정보와 쿠폰 정보를 애플리케이션 프로세서(110)의 트러스티드 실행 환경(TEE, 112) 및 리치 실행 환경(REE, 111)을 거쳐서 POS 단말기(300)로 전송한다(S1211).
다음으로, POS 단말기(300)는 CRM 서버(200)로 쿠폰 승인을 요청한다(S1212). 이 때, POS 단말기(300)는 암호화된 회원 정보 및 쿠폰 정보와 함께 오리지널 결제 금액 정보를 POS 단말기(300)로 전달한다.
CRM 서버(200)는 쿠폰 승인 요청에 대한 응답 정보를 POS 단말기(300)로 전송한다(S1213). 이 때, CRM 서버(200)는 쿠폰 승인 처리에 성공하면 오리지널 결제 금액에서 쿠폰에 의한 할인 금액을 차감한 실제 결제할 금액 정보와 랜덤 값을 POS 단말기(300)로 전송한다.
그러면, POS 단말기(300)는 CRM 서버(200)에서 수신된 실제 결제할 금액 정보를 처리하여 디스플레이 한다(S1214).
도 13은 도 2에 도시된 전자 시스템(1000)에서의 쿠폰 상환(Coupon Redemption) 프로세스를 수행하는 과정을 보여주는 흐름도의 다른 예이다.
POS 단말기(300)를 통하여 사용할 쿠폰이 선택되면(S1201A), POS 단말기(300)는 CRM 서버(200)로 랜덤 값(Random Value)을 요청한다(S1202A). 그러면, CRM 서버(200)는 랜덤 값을 생성하여 POS 단말기(300)로 전송한다(S1203A).
다음으로, 애플리케이션 프로세서(110)는 리치 실행 환경(REE, 111)에서 사용할 쿠폰을 선택하는 처리를 수행한다(S1204A). 쿠폰 선택이 완료되면, 애플리케이션 프로세서(110)는 리치 실행 환경(REE, 111)에서 트러스티드 실행 환경(TEE, 112)으로 개인 식별 번호(PIN)에 대한 검증 처리를 요청한다(S1205A). 개인 식별 번호(PIN)에 대한 검증 처리 요청에 따라서 트러스티드 실행 환경(TEE, 112)에서 개인 식별 번호(PIN)가 입력되면, 애플리케이션 프로세서(110)는 트러스티드 실행 환경(TEE, 112)에서 입력된 개인 식별 번호(PIN)에 대한 검증 요청 메시지를 시큐어 엘리먼트(SE, 120)로 전달한다(S1206A).
시큐어 엘리먼트(SE, 120)는 개인 식별 번호(PIN)에 대한 검증 처리를 수행한 후에(S1207A), 검증 처리 결과에 대한 메시지를 트러스티드 실행 환경(TEE, 112)을 거쳐서 리치 실행 환경(REE, 111)으로 전송한다(S1208A).
그리고 나서, POS 단말기(300)는 애플리케이션 프로세서(110)의 리치 실행 환경(REE, 111) 및 트러스티드 실행 환경(TEE, 112)을 거치지 않고 직접 시큐어 엘리먼트(SE, 120)로 회원 정보와 쿠폰 정보를 요청하는 메시지를 전송한다(S1209A). 이 때 POS 단말기(300)는 오퍼레이션 S1203에서 CRM 서버(200)로부터 수신된 랜덤 값을 시큐어 엘리먼트(SE, 120)로 전달한다.
그러면, 시큐어 엘리먼트(SE, 120)는 내부 스토리지로부터 회원 정보 및 쿠폰 정보를 읽어낸 후에, 수신된 랜덤 값을 이용하여 회원 정보와 쿠폰 정보를 각각 암호화 처리한다(S1210A). 그리고 나서, 시큐어 엘리먼트(SE, 120)는 애플리케이션 프로세서(110)의 트러스티드 실행 환경(TEE, 112) 및 리치 실행 환경(REE, 111)을 거치지 않고 직접 POS 단말기(300)로 암호화 처리된 회원 정보와 쿠폰 정보를 전송한다(S1211A).
다음으로, POS 단말기(300)는 CRM 서버(200)로 쿠폰 승인을 요청한다(S1212A). 이 때, POS 단말기(300)는 암호화된 회원 정보 및 쿠폰 정보와 함께 오리지널 결제 금액 정보를 CRM 서버(200)로 전달한다.
CRM 서버(200)는 쿠폰 승인 요청에 대한 응답 정보를 POS 단말기(300)로 전송한다(S1213A). 이 때, CRM 서버(200)는 쿠폰 승인 처리에 성공하면 오리지널 결제 금액에서 쿠폰에 의한 할인 금액을 차감한 실제 결제할 금액 정보와 랜덤 값을 POS 단말기(300)로 전송한다.
그러면, POS 단말기(300)는 CRM 서버(200)에서 수신된 실제 결제할 금액 정보를 처리하여 디스플레이 한다(S1214A).
도 14는 도 2에 도시된 전자 시스템(1000)에서의 쿠폰을 이용한 결제 프로세스를 수행하는 과정을 보여주는 흐름도의 일 예이다.
POS 단말기(300)는 전자 장치(100)의 시큐어 엘리먼트(120)로 결제 요청을 한다(S1301). 여기에서, 결제 금액은 도 12 또는 도 13의 오퍼레이션 S1213 또는 S1213A에서 CRM 서버(200)로부터 수신된 실제 결제할 금액 정보에 해당된다. 즉, 오리지널 결제 금액에서 쿠폰에 의한 할인 금액을 차감한 금액이 결제 요청된다. 예로서, POS 단말기(300)는 애플리케이션 프로세서(110)의 트러스티드 실행 환경(TEE, 112) 및 리치 실행 환경(REE, 111)을 거치지 않고 바로 시큐어 엘리먼트(120)로 결제 요청을 한다.
그러면, 시큐어 엘리먼트(120)는 결제 애플리케이션을 실행시켜 POS 단말기(300)로 결제 요청에 대한 응답 정보를 전송한다(S1302). 예로서, 결제 애플리케이션은 신용카드 결제 애플리케이션 또는 체크카드 결제 애플리케이션 등의 다양한 결제 방식의 애플리케이션이 포함될 수 있다.
POS 단말기(300)는 전자 장치(100)의 애플리케이션 프로세서(110)를 거쳐서 시큐어 엘리먼트(120)로 결제 성공 메시지와 랜덤 값을 전송한다(S1303). 즉, 애플리케이션 프로세서(110)의 트러스티드 실행 환경(TEE, 112) 및 리치 실행 환경(REE, 111)을 거쳐서 시큐어 엘리먼트(120)로 결제 성공 메시지와 랜덤 값을 전송한다.
시큐어 엘리먼트(120)는 POS 단말기(300)로부터 수신된 랜덤 값을 저장한 후에(S1304), 애플리케이션 프로세서(110)의 트러스티드 실행 환경(TEE, 112) 및 리치 실행 환경(REE, 111)을 거쳐서 수신된 결제 성공 메시지에 대한 응답 정보를 POS 단말기(300)로 전송한다(S1305).
다음으로, POS 단말기(300)는 CRM 서버(200)로 쿠폰 업데이트 요청 메시지를 전송한다(S1306). CRM 서버(200)는 쿠폰 업데이트 요청 메시지에 응답하여 업데이트된 쿠폰 정보를 POS 단말기(300)로 전송한다(S1307). 참고적으로, POS 단말기(300)로 수신되는 업데이트된 쿠폰 정보는 암호화 처리된 정보이다.
POS 단말기(300)는 전자 장치(100)의 애플리케이션 프로세서(110)를 거쳐서 시큐어 엘리먼트(120)로 업데이트된 쿠폰 정보와 함께 저장 요청 메시지를 전송한다(S1308). 즉, 애플리케이션 프로세서(110)의 트러스티드 실행 환경(TEE, 112) 및 리치 실행 환경(REE, 111)을 거쳐서 시큐어 엘리먼트(120)로 업데이트된 쿠폰 정보와 함께 저장 요청 메시지를 전송한다.
시큐어 엘리먼트(120)는 업데이트된 쿠폰 정보를 오퍼레이션 S1304에서 저장된 랜덤 값을 이용하여 해독 처리한 후에 내부 스토리지에 저장한다(S1309). 그리고 나서, 시큐어 엘리먼트(120)는 애플리케이션 프로세서(110)를 거쳐서 POS 단말기(300)로 업데이트된 쿠폰 정보 저장 요청에 대한 응답 메시지를 전송한다(S1310). 즉, 애플리케이션 프로세서(110)의 트러스티드 실행 환경(TEE, 112) 및 리치 실행 환경(REE, 111)을 거쳐서 POS 단말기(300)로 응답 메시지를 전송한다.
이와 같은 과정을 통하여 쿠폰을 이용한 전자 결제 및 쿠폰 업데이트 처리가 수행될 수 있다.
도 15는 본 발명의 실시 예에 따른 시큐어 엘리먼트를 이용한 데이터 통신 방법이 적용되는 컴퓨팅 시스템(3000)의 구성을 예시적으로 보여준다.
도 15를 참조하면, 컴퓨팅 시스템(3000)은 프로세서(3100), RAM(3200), 입출력 장치(3300), 시큐어 엘리먼트(SE, 3400), 스토리지 장치(3500), 전원 공급 장치(3600) 및 버스(3700)를 포함할 수 있다. 한편, 도 15에는 도시되지 않았지만, 컴퓨팅 시스템(3000)은 비디오 카드, 사운드 카드, 메모리 카드, USB 장치 등과 통신하거나, 또는 다른 전자 장치들과 통신할 수 있는 포트(port)들을 더 포함할 수 있다. 컴퓨팅 시스템(3000)은 퍼스널 컴퓨터로 구현되거나, 노트북 컴퓨터, 휴대폰, PDA(personal digital assistant) 및 카메라 등과 같은 휴대용 전자 장치로 구현될 수 있다.
프로세서(3100)는 특정 계산들 또는 태스크(task)들을 수행할 수 있다. 프로세서(3100)는 도 1 내지 도 4에 도시된 애플리케이션 프로세서(110)가 적용될 수 있다. 실시 예에 따라, 프로세서(3100)는 마이크로프로세서(micro-processor), 중앙 처리 장치(Central Processing Unit; CPU), 애플리케이션 프로세서(Application Processor)일 수 있다. 프로세서(3100)는 어드레스 버스(address bus), 제어 버스(control bus) 및 데이터 버스(data bus) 등과 같은 버스(3700)를 통하여 컴퓨팅 시스템(3000)의 구성 수단들과의 통신을 수행할 수 있다.
일 실시 예에 따라, 프로세서(3100)는 주변 구성요소 상호연결(Peripheral Component Interconnect; PCI) 버스와 같은 확장 버스에도 연결될 수 있다.
RAM(3200)는 컴퓨팅 시스템(3000)의 동작에 필요한 프로그램들 및 데이터를 저장할 수 있다. RAM(3200)에는 도 1 내지 도 4에서 언급한 다양한 애플리케이션들이 저장될 수 있다. 전술한 바와 같이, RAM(3200)은 프로세서(3100)에 통합될 수 있다. 예로서, 디램(DRAM), 모바일 디램, 에스램(SRAM), 피램(PRAM), 에프램(FRAM), 엠램(MRAM) 등이 RAM(4300)으로 이용될 수 있다.
입출력 장치(3300)는 키보드, 키패드, 마우스 등과 같은 입력 수단 및 프린터, 디스플레이 등과 같은 출력 수단을 포함할 수 있다.
시큐어 엘리먼트(3400)는 애플리케이션을 설치, 관리할 수 있는 플랫폼이다. 시큐어 엘리먼트(3400)는 보안 저장 및 지불, 인증 또는 다른 다양한 서비스를 위한 애플리케이션의 실행을 제공하는 하드웨어, 소프트웨어, 인터페이스, 및 프로토콜로 구성된다. 시큐어 엘리먼트(3400)는 도 1 내지 도 4에 도시된 시큐어 엘리먼트(120)가 적용될 수 있다.
스토리지 장치(3500)는 비휘발성 저장 장치로서, 컴퓨팅 시스템(3000)의 동작에 필요한 프로그램들 및 데이터를 저장한다. 스토리지 장치(3500)에 저장된 프로그램들 및 데이터는 프로세서(3100)의 제어에 따라서 RAM(3200)에 로딩될 수 있다.
전원 공급 장치(3600)는 컴퓨팅 시스템(3000)의 동작에 필요한 동작 전압을 공급할 수 있다.
본 발명은 방법, 장치, 시스템 등으로서 실행될 수 있다. 소프트웨어로 실행될 때, 본 발명의 구성 수단들은 필연적으로 필요한 작업을 실행하는 코드 세그먼트들이다. 프로그램 또는 코드 세그먼트들은 프로세서 판독 가능 매체에 저장될 수 있다. 프로세서 판독 가능 매체는 정보를 저장할 수 있는 어떠한 매체도 포함한다. 프로세서 판독 가능 매체의 예로는 전자 회로, 반도체 메모리 소자, ROM, 플래시 메모리, 이레이져블 ROM(EROM Erasable ROM), 플로피 디스크, 광 디스크, 하드디스크 등이 있다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
1000, 2000: 전자 시스템 3000: 컴퓨팅 시스템
100, 100A: 전자 장치 200: CRM서버
300: POS 단말기 400: 네트워크
110, 511: 애플리케이션 프로세서 120: 시큐어 엘리먼트
130: 시큐어 채널 140: 통신 모듈
111: 리치 실행 환경 112: 트러스티드 실행 환경
111-1: 리치 운영 체계 111-2: TEE API
111-3: 복수의 애플리케이션들 112-1: 트러스티드 운영 체계
112-2: TEE 코어 112-3: TEE 내부 API
112-4: 복수의 트러스티드 애플리케이션들
121: SE 운영 체계 122: 복수의 SE 애플리케이션들
123: SE API 124: 스토리지
500: 모바일 장치 510: 제어부
520: 시큐어 엘리먼트 530: 통신 모듈
540: 키 입력부 550: 메모리
560: 오디오 처리부 570: 표시부
3100: 프로세서 3200: RAM
3300: 입출력 장치 3400: 시큐어 엘리먼트
3500: 스토리지 장치 3600: 전원 공급 장치
3700: 버스
100, 100A: 전자 장치 200: CRM서버
300: POS 단말기 400: 네트워크
110, 511: 애플리케이션 프로세서 120: 시큐어 엘리먼트
130: 시큐어 채널 140: 통신 모듈
111: 리치 실행 환경 112: 트러스티드 실행 환경
111-1: 리치 운영 체계 111-2: TEE API
111-3: 복수의 애플리케이션들 112-1: 트러스티드 운영 체계
112-2: TEE 코어 112-3: TEE 내부 API
112-4: 복수의 트러스티드 애플리케이션들
121: SE 운영 체계 122: 복수의 SE 애플리케이션들
123: SE API 124: 스토리지
500: 모바일 장치 510: 제어부
520: 시큐어 엘리먼트 530: 통신 모듈
540: 키 입력부 550: 메모리
560: 오디오 처리부 570: 표시부
3100: 프로세서 3200: RAM
3300: 입출력 장치 3400: 시큐어 엘리먼트
3500: 스토리지 장치 3600: 전원 공급 장치
3700: 버스
Claims (10)
- 전자 장치의 애플리케이션 프로세서와 시큐어 엘리먼트 사이의 인증 정보를 교환하는 단계
상기 인증 정보 교환을 마치고 나서, 공개 키와 비밀 키를 이용하여 상기 애플리케이션 프로세서와 상기 시큐어 엘리먼트의 상호 인증 처리를 통하여 시큐어 채널을 생성하는 단계 및
상기 시큐어 채널을 통하여 상기 애플리케이션 프로세서와 상기 시큐어 엘리먼트 사이의 데이터 통신을 수행하는 단계를 포함함을 특징으로 하는 시큐어 엘리먼트를 이용한 데이터 통신 방법. - 제1항에 있어서, 상기 시큐어 채널을 생성하는 단계는 상기 애플리케이션 프로세서 내의 트러스티드 실행 환경과 상기 시큐어 엘리먼트 사이의 상호 인증을 통하여 시큐어 채널을 생성하는 것을 특징으로 하는 시큐어 엘리먼트를 이용한 데이터 통신 방법.
- 제1항에 있어서, 상기 시큐어 채널을 생성하는 단계는
상기 시큐어 엘리먼트에서 상기 애플리케이션 프로세서의 인증 정보를 검증 처리한 후에 랜덤 값을 생성하여 상기 애플리케이션 프로세서로 전송하는 단계
상기 애플리케이션 프로세서에서 상기 랜덤 값을 이용하여 서명 정보 및 공개 키를 생성하고, 상기 서명 정보 및 공개 키와 함께 인증을 요구하는 메시지를 상기 시큐어 엘리먼트를 전송하는 단계
상기 시큐어 엘리먼트에서 상기 애플리케이션 프로세서의 공개 키를 이용하여 서명 정보를 검증 처리한 후에 상기 애플리케이션 프로세서의 공개 키 및 시큐어 엘리먼트의 비밀 키를 이용하여 생성된 인증 값을 상기 애플리케이션 프로세서로 전송하는 단계 및
상기 애플리케이션 프로세서에서 시큐어 엘리먼트의 공개 키 및 애플리케이션 프로세서의 비밀 키를 이용하여 인증 값에 대한 인증 처리를 수행하는 단계를 더 포함함을 특징으로 하는 - 제1항에 있어서, 상기 시큐어 채널을 통하여 상기 시큐어 엘리먼트로 수신되는 개인 식별 번호에 대한 검증 프로세스를 수행하는 단계를 더 포함하고, 상기 개인 식별 번호에 대한 검증 프로세스를 마친 후에 상기 데이터 통신을 수행하는 것을 특징으로 하는 시큐어 엘리먼트를 이용한 데이터 통신 방법.
- 전자 장치의 애플리케이션 프로세서와 시큐어 엘리먼트 사이의 상호 인증을 통하여 시큐어 채널을 생성하는 단계
상기 시큐어 채널을 통하여 개인 식별 번호에 대한 검증을 요청하는 메시지를 애플리케이션 프로세서의 트러스티드 실행 환경으로부터 시큐어 엘리먼트로 전송하는 단계
상기 시큐어 엘리먼트에서 상기 개인 식별 번호에 대한 검증 처리를 수행하고, 상기 검증 처리 결과에 대한 메시지를 상기 시큐어 채널을 통하여 상기 애플리케이션 프로세서의 트러스티드 실행 환경으로 전송하는 단계 및
상기 개인 식별 번호에 대한 검증 처리에 성공한 경우에 상기 시큐어 채널을 통하여 상기 애플리케이션 프로세서의 트러스티드 실행 환경과 상기 시큐어 엘리먼트 사이에서의 전자 비즈니스 서비스에 관련된 데이터 통신을 수행하는 단계를 포함함을 특징으로 하는 시큐어 엘리먼트를 이용한 데이터 통신 방법. - 제5항에 있어서, 상기 전자 비즈니스 서비스에 관련된 데이터 통신을 수행하는 단계는
상기 애플리케이션 프로세서로 수신된 암호화된 쿠폰 정보 및 저장 요청 메시지를 상기 트러스티드 실행 환경을 통하여 상기 시큐어 엘리먼트로 전송하는 단계
상기 암호화된 쿠폰 정보를 해독 처리하여 상기 시큐어 엘리먼트 내의 스토리지에 저장하는 단계 및
상기 저장 요청 메시지에 대한 응답 정보를 상기 시큐어 엘리먼트로부터 상기 애플리케이션 프로세서의 트러스티드 실행 환경으로 전송하는 단계를 더 포함함을 특징으로 하는 시큐어 엘리먼트를 이용한 데이터 통신 방법. - 제5항에 있어서, 상기 전자 비즈니스 서비스에 관련된 데이터 통신을 수행하는 단계는
상기 애플리케이션 프로세서로 수신된 회원 정보 및 쿠폰 정보 요청 메시지를 상기 트러스티드 실행 환경을 통하여 상기 시큐어 엘리먼트로 전송하는 단계
상기 시큐어 엘리먼트 내의 스토리지로부터 상기 회원 정보 및 쿠폰 정보를 읽어내어 암호화 처리하는 단계 및
상기 암호화 처리된 회원 정보 및 쿠폰 정보를 상기 시큐어 엘리먼트로부터 상기 애플리케이션 프로세서의 트러스티드 실행 환경으로 전송하는 단계를 더 포함함을 특징으로 하는 시큐어 엘리먼트를 이용한 데이터 통신 방법. - 제5항에 있어서, 상기 전자 비즈니스 서비스에 관련된 데이터 통신을 수행하는 단계는
쿠폰을 이용한 결제 서비스에 기초하여 업데이트된 쿠폰 정보 및 저장 요청 메시지를 상기 애플리케이션 프로세서의 트러스티드 실행 환경을 통하여 상기 시큐어 엘리먼트로 전송하는 단계
상기 업데이트된 쿠폰 정보를 해독 처리하여 상기 시큐어 엘리먼트 내의 스토리지에 저장하는 단계 및
상기 저장 요청 메시지에 대한 응답 정보를 상기 시큐어 엘리먼트로부터 상기 애플리케이션 프로세서의 트러스티드 실행 환경으로 전송하는 단계를 더 포함함을 특징으로 하는 시큐어 엘리먼트를 이용한 데이터 통신 방법. - 통신 네트워크를 이용하여 결제 서비스를 제공하는 POS(Point of Sales) 단말기 및
쿠폰 정보를 매개로 하여 상기 POS 단말기와의 데이터 통신을 통한 결제 프로세스를 수행하는 전자 장치를 포함하고,
상기 전자 장치는
상기 쿠폰 정보, 사용자 정보 및 결제 정보를 저장하는 시큐어 엘리먼트 및
쿠폰 관리 서비스 또는 결제 서비스에 관련된 데이터 처리를 위하여 상기 시큐어 엘리먼트와의 데이터 통신을 수행하는 애플리케이션 프로세서를 더 포함하며, 상기 애플리케이션 프로세서는 상기 시큐어 엘리먼트와의 상호 인증을 통하여 시큐어 채널을 생성하고, 상기 시큐어 채널을 통하여 상기 시큐어 엘리먼트와의 데이터 통신을 수행하는 것을 특징으로 하는 전자 시스템. - 제9항에 있어서, 상기 통신 네트워크를 이용하여 쿠폰 발급 및 인증 서비스를 제공하는 CRM(Customer Relationship Management) 서버를 더 포함하고, 상기 CRM 서버는 상기 통신 네트워크를 통하여 수신되는 쿠폰 발급 요청 메시지에 응답하여 상기 전자 장치로 상기 쿠폰 정보를 전송하는 것을 특징으로 하는 전자 시스템.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150047516A KR20160118794A (ko) | 2015-04-03 | 2015-04-03 | 시큐어 엘리먼트를 이용한 데이터 통신 방법 및 이를 적용한 전자 시스템 |
US15/067,170 US10609026B2 (en) | 2015-04-03 | 2016-03-10 | Data communication method using secure element and electronic system adopting the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150047516A KR20160118794A (ko) | 2015-04-03 | 2015-04-03 | 시큐어 엘리먼트를 이용한 데이터 통신 방법 및 이를 적용한 전자 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20160118794A true KR20160118794A (ko) | 2016-10-12 |
Family
ID=57015454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150047516A Withdrawn KR20160118794A (ko) | 2015-04-03 | 2015-04-03 | 시큐어 엘리먼트를 이용한 데이터 통신 방법 및 이를 적용한 전자 시스템 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10609026B2 (ko) |
KR (1) | KR20160118794A (ko) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9218468B1 (en) | 2013-12-16 | 2015-12-22 | Matthew B. Rappaport | Systems and methods for verifying attributes of users of online systems |
EP3101607A1 (en) * | 2015-06-02 | 2016-12-07 | Orange | NFC-ENABLED DEVICES FOR & xA;PERFORMING SECURE CONTACTLESS TRANSACTIONS AND USING HCE |
KR102453705B1 (ko) | 2015-09-25 | 2022-10-11 | 삼성전자주식회사 | 호스트의 정당성 여부에 따라 선택적으로 결제 기능을 온(on)하는 결제 장치의 동작 방법 |
US10546302B2 (en) | 2016-06-30 | 2020-01-28 | Square, Inc. | Logical validation of devices against fraud and tampering |
US20180013816A1 (en) * | 2016-07-06 | 2018-01-11 | Saeid Safavi | Method and Apparatus for On Demand Mobile Data Transfer |
US11017423B2 (en) * | 2016-09-23 | 2021-05-25 | Apple Inc. | Redeeming multiple redeemable codes in a single transaction |
CN106845285B (zh) * | 2016-12-28 | 2023-04-07 | 北京握奇智能科技有限公司 | 一种tee系统与ree系统配合以实现服务的方法及终端设备 |
US20180217971A1 (en) * | 2017-01-27 | 2018-08-02 | Saeid Safavi | Method and Apparatus for Efficient Creation and Secure Transfer of User Data Including E-Forms |
US20190012699A1 (en) * | 2017-07-05 | 2019-01-10 | Freckle Iot, Ltd. | Systems and methods for first party mobile attribution |
CN109815749B (zh) * | 2017-11-21 | 2021-01-15 | 华为技术有限公司 | 控制se的系统、方法及芯片 |
US10474613B1 (en) | 2017-12-22 | 2019-11-12 | Fend, Inc. | One-way data transfer device with onboard system detection |
EP3729773B1 (en) | 2017-12-22 | 2021-11-03 | Fend Incorporated | One-way data transfer device with onboard system detection |
US10715536B2 (en) | 2017-12-29 | 2020-07-14 | Square, Inc. | Logical validation of devices against fraud and tampering |
US10997622B2 (en) * | 2018-09-07 | 2021-05-04 | Sap Se | Encryption-based validation of coupons |
US11507958B1 (en) | 2018-09-26 | 2022-11-22 | Block, Inc. | Trust-based security for transaction payments |
US11494762B1 (en) | 2018-09-26 | 2022-11-08 | Block, Inc. | Device driver for contactless payments |
CN109766152B (zh) * | 2018-11-01 | 2022-07-12 | 华为终端有限公司 | 一种交互方法及装置 |
US11657393B2 (en) * | 2019-09-30 | 2023-05-23 | Kddi Corporation | Privilege granting method and privilege granting device |
US11153345B1 (en) * | 2020-05-20 | 2021-10-19 | Fend Incorporated | One-way transfer device with secure reverse channel |
CN112036860B (zh) * | 2020-08-31 | 2024-06-21 | 百富计算机技术(深圳)有限公司 | 一种安全设备 |
EP4068686A1 (en) * | 2021-03-31 | 2022-10-05 | Siemens Aktiengesellschaft | Signing system for validating stateful hash-based digital signatures |
CN116660824A (zh) * | 2022-02-18 | 2023-08-29 | 北京小米移动软件有限公司 | 测距方法、装置、电子设备和存储介质 |
US11546323B1 (en) * | 2022-08-17 | 2023-01-03 | strongDM, Inc. | Credential management for distributed services |
US11736531B1 (en) | 2022-08-31 | 2023-08-22 | strongDM, Inc. | Managing and monitoring endpoint activity in secured networks |
US11765159B1 (en) | 2022-09-28 | 2023-09-19 | strongDM, Inc. | Connection revocation in overlay networks |
TWI817807B (zh) * | 2022-11-02 | 2023-10-01 | 華南商業銀行股份有限公司 | 任務整合系統及方法 |
US11709970B1 (en) | 2022-12-19 | 2023-07-25 | Fend Incorporated | One-way communication data diode on a chip |
US11916885B1 (en) | 2023-01-09 | 2024-02-27 | strongDM, Inc. | Tunnelling with support for dynamic naming resolution |
WO2024177705A1 (en) * | 2023-02-24 | 2024-08-29 | Emerja Corporation | Cloud communications gateway and protocol |
US11765207B1 (en) | 2023-03-17 | 2023-09-19 | strongDM, Inc. | Declaring network policies using natural language |
US12242599B1 (en) | 2024-09-27 | 2025-03-04 | strongDM, Inc. | Fine-grained security policy enforcement for applications |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7275685B2 (en) * | 2004-04-12 | 2007-10-02 | Rearden Capital Corporation | Method for electronic payment |
US7647024B2 (en) | 2005-10-03 | 2010-01-12 | Sellerbid, Inc. | Method and system for improving client server transmission over fading channel with wireless location and authentication technology via electromagnetic radiation |
US9171187B2 (en) | 2005-05-13 | 2015-10-27 | Nokia Technologies Oy | Implementation of an integrity-protected secure storage |
US8352323B2 (en) | 2007-11-30 | 2013-01-08 | Blaze Mobile, Inc. | Conducting an online payment transaction using an NFC enabled mobile communication device |
US8109444B2 (en) * | 2007-09-12 | 2012-02-07 | Devicefidelity, Inc. | Selectively switching antennas of transaction cards |
US20160210491A9 (en) | 2008-09-30 | 2016-07-21 | Apple Inc. | Systems and methods for secure wireless financial transactions |
US10992817B2 (en) * | 2009-03-18 | 2021-04-27 | Mastercard International Incorporated | Methods, systems and computer readable media for selecting and delivering electronic value certificates using a mobile device |
TWI429213B (zh) * | 2009-12-11 | 2014-03-01 | Toro Dev Ltd | 用於nfc服務之行動整合散佈與交易系統與方法,及其行動電子裝置 |
KR20110122452A (ko) | 2010-05-04 | 2011-11-10 | 주식회사 비티웍스 | 전자서명 검증 서버 및 이를 이용한 전자거래 방법 |
WO2012037255A2 (en) * | 2010-09-14 | 2012-03-22 | Vivotech Inc. | Methods, systems, and computer readable media for secure near field communication of a non-secure memory element payload |
US8712407B1 (en) | 2012-04-05 | 2014-04-29 | Sprint Communications Company L.P. | Multiple secure elements in mobile electronic device with near field communication capability |
US20130346245A1 (en) | 2012-06-26 | 2013-12-26 | Ebay, Inc. | System and Method for Conducting Delegated Payments |
KR20140023606A (ko) | 2012-08-16 | 2014-02-27 | 삼성전자주식회사 | 트러스트 존에 의한 실행 환경에서 결제 요청을 처리하는 디바이스 및 방법 |
KR101289545B1 (ko) | 2012-09-26 | 2013-07-24 | 사단법인 금융결제원 | 근접 통신을 이용한 전자화폐 결제 방법 및 이를 위한 휴대단말 |
US9292712B2 (en) | 2012-09-28 | 2016-03-22 | St-Ericsson Sa | Method and apparatus for maintaining secure time |
CN104838399B (zh) * | 2012-12-10 | 2019-08-27 | 维萨国际服务协会 | 使用移动设备认证远程交易 |
US8935746B2 (en) * | 2013-04-22 | 2015-01-13 | Oracle International Corporation | System with a trusted execution environment component executed on a secure element |
US11120442B2 (en) * | 2014-06-20 | 2021-09-14 | Apple Inc. | Management of reloadable credentials on an electronic device using an online resource |
EP3048776B2 (en) * | 2015-01-22 | 2021-03-17 | Nxp B.V. | Methods for managing content, computer program products and secure element |
-
2015
- 2015-04-03 KR KR1020150047516A patent/KR20160118794A/ko not_active Withdrawn
-
2016
- 2016-03-10 US US15/067,170 patent/US10609026B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US10609026B2 (en) | 2020-03-31 |
US20160294826A1 (en) | 2016-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20160118794A (ko) | 시큐어 엘리먼트를 이용한 데이터 통신 방법 및 이를 적용한 전자 시스템 | |
JP5572755B2 (ja) | セントラル・トラスティド・サービス・マネージャーを使用したセキュア・サービス・プロバイダ間からユーザが選択することを可能にすること | |
US9049194B2 (en) | Methods and systems for internet security via virtual software | |
CN111213171A (zh) | 用于安全离线支付的方法和装置 | |
US20140012750A1 (en) | Systems, methods, and computer program products for integrating third party services with a mobile wallet | |
EP3200425A1 (en) | Enabling users to select between secure service providers using a key escrow service | |
US20130318592A1 (en) | Systems and methods for providing account information | |
CN109559105A (zh) | 基于tee及加密芯片的数字钱包生成方法及系统 | |
JP2014529964A (ja) | モバイル機器経由の安全なトランザクション処理のシステムおよび方法 | |
CN114143784A (zh) | 使用无线信标提供对安全网络的接入证书 | |
US20230122885A1 (en) | Provisioning credentials on multiple electronic devices | |
US20150310432A1 (en) | Secure element architectural services | |
US20220327536A1 (en) | Account binding method and apparatus, computer device, and storage medium | |
US20240104550A1 (en) | Mobile wallet with offline payment | |
CN112184429A (zh) | 用户信息的处理方法以及区块链节点 | |
KR101795849B1 (ko) | 핀테크 서비스 연동을 위한 인증 장치 및 방법과 이를 위한 컴퓨터 프로그램 | |
KR101625065B1 (ko) | 휴대단말기에서의 사용자 인증방법 | |
CN109872148A (zh) | 基于tui的可信数据处理方法、装置以及移动终端 | |
KR102117871B1 (ko) | 공개키 및 개인키 요소들의 분산저장을 통한 간편인증 방법 및 시스템 | |
JP2019040547A (ja) | 情報処理装置およびプログラム | |
TWI487400B (zh) | 空中發行多張近場通訊會員卡系統及其方法 | |
KR102394694B1 (ko) | 결제 서버, 결제 시스템 및 그 카드 등록 방법 | |
US20180089646A1 (en) | Transferring funds between financial accounts of two accountholders | |
KR20150049119A (ko) | Otp 생성수단 발급 방법 및 시스템 | |
JP2008152612A (ja) | 認証システム及び認証方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20150403 |
|
PG1501 | Laying open of application | ||
PC1203 | Withdrawal of no request for examination |