KR20110000666A - 전자 디바이스에서 복수의 디스커버리 매니저들을 이용한 자동적인 어플리케이션 선택을 위한 방법 및 장치 - Google Patents

전자 디바이스에서 복수의 디스커버리 매니저들을 이용한 자동적인 어플리케이션 선택을 위한 방법 및 장치 Download PDF

Info

Publication number
KR20110000666A
KR20110000666A KR1020107023960A KR20107023960A KR20110000666A KR 20110000666 A KR20110000666 A KR 20110000666A KR 1020107023960 A KR1020107023960 A KR 1020107023960A KR 20107023960 A KR20107023960 A KR 20107023960A KR 20110000666 A KR20110000666 A KR 20110000666A
Authority
KR
South Korea
Prior art keywords
application
near field
range wireless
field communication
short range
Prior art date
Application number
KR1020107023960A
Other languages
English (en)
Other versions
KR101194509B1 (ko
Inventor
블라디미르 스클로브스키
또마 뷔오
Original Assignee
모토로라 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 모토로라 인코포레이티드 filed Critical 모토로라 인코포레이티드
Publication of KR20110000666A publication Critical patent/KR20110000666A/ko
Application granted granted Critical
Publication of KR101194509B1 publication Critical patent/KR101194509B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/72412User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories using two-way short-range wireless interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)

Abstract

복수의 실행 환경들 내에 저장된 복수의 근거리 무선 통신 어플리케이션들을 구비하는 휴대용 전자 디바이스에서, 근거리 무선 통신 어플리케이션들 중 하나의 자동 선택은 프로토콜 디스커버리 매니저 및 어플리케이션 디스커버리 매니저에 의해 수행된다. 어플리케이션 디스커버리 매니저는 디폴트 실행 환경 내에 배치된다. 근거리 무선 통신 회로 컨트롤러에서 동작하는 프로토콜 디스커버리 매니저는 모드 스위치 레벨, 충돌 검출 레벨, 및 프로토콜 레벨에서 어플리케이션 디스커버리를 수행한다. 어플리케이션 디스커버리 매니저는 어플리케이션 레벨에서 어플리케이션 디스커버리를 수행한다. 프로토콜 디스커버리 매니저는 어플리케이션을 선택하는 경우에, 데이터를 적절한 실행 환경으로 라우팅하도록 라우팅 스위치를 구성할 수 있고, 단지 식별의 프로토콜 레벨만이 요구되는 경우에 선택된 어플리케이션을 런칭한다. 다른 레벨들이 요구되는 경우에, 프로토콜 디스커버리 매니저는 선택하고, 데이터를 어플리케이션 디스커버리 매니저를 포함하는 디폴트 실행 환경으로 라우팅한다. 어플리케이션 디스커버리 매니저는, 어플리케이션을 선택하는 경우에, 어플리케이션을 런칭하거나, 선택된 어플리케이션에 의해 요구되는 바와 같은 추가 실행을 위해 메시지를 적절한 실행 환경으로 포워딩할 수 있다.

Description

전자 디바이스에서 복수의 디스커버리 매니저들을 이용한 자동적인 어플리케이션 선택을 위한 방법 및 장치{METHOD AND APPARATUS FOR AUTOMATIC APPLICATION SELECTION IN AN ELECTRONIC DEVICE USING MULTIPLE DISCOVERY MANAGERS}
본 발명은 일반적으로는 근거리 무선 통신 회로 및 근거리 무선 통신 어플리케이션들을 구비하는 전자 디바이스들에 관한 것으로, 특히 상이한 프로토콜 스택 레벨들에서 다수의 근거리 무선 통신 어플리케이션들로부터 하나의 근거리 무선 통신 어플리케이션을 선택할 수 있는 어플리케이션 디스커버리 매니저 및 프로토콜 매니저를 구비하는 디바이스에 관한 것이다.
모바일 디바이스들은 오늘날 더욱 더 복잡하게 되고 있다. 예를 들면, 모바일 전화기는 단지 전화 통화를 하는 데에만 이용되었다 - 그렇게 오래 전도 아님 -. 그러나, 오늘날, 일부 모바일 전화기들은 무선 주파수 식별(radio frequency identification: RFID) 회로들, 적외선 통신 회로들 등과 같은 근거리 무선 통신 기술을 구비하고 있다. 이러한 근거리 무선 통신 기술은 다른 근거리 무선 통신 디바이스들로부터 정보를 획득하고, 정보를 근거리 무선 통신 터미널들에게 전달하며, 심지어 금융 거래들에 사용할 수 있다.
예를 들면, 근거리 무선 통신 기술을 구비한 디바이스를 휴대하는 경우에, 그 사람은 전통적인 카드들, 화폐들, 또는 티켓들을 대신하여 그 디바이스를 이용할 수 있다. 예를 들어, "가상 카드들"은 디바이스 내의 "가상 지갑"내에 로딩될 수 있다. 가상 지갑은 단지 가상 카드 소프트웨어 어플리케이션을 포함하는 디바이스 상의 전자 어플리케이션이다. 가상 카드 소프트웨어 어플리케이션은 신용카드, 직불카드, 공공 교통 패스, 연극 티켓, 등을 포함할 수 있는 다양한 가상 카드들을 호스팅한다. 가상 카드 어플리케이션은 가상 카드들을 관리하고 카드들의 사용자 선택도 허용한다.
사용자가 음식점의 지불 단말기 또는 지하철의 티켓 게이트와 같은 근거리 무선 통신 단말기에 접근하는 경우, 사용자는 가상 지갑으로부터 가상 카드를 수동으로 선택하고 근거리 무선 통신 단말기를 가로질러 모바일 디바이스를 흔든다. 그러면, 모바일 디바이스는 근거리 무선 통신 회로를 통해 근거리 무선 통신 단말기에 무선으로 정보를 송신한다. 그럼으로써, 모바일 디바이스는 물리적 지갑을 대신한다.
가상 카드들을 이용할 수 있을 뿐만 아니라, 근거리 무선 통신 기술을 가지고 있는 휴대용 전자 디바이스들은 근거리 무선 판독기들로도 동작할 수 있다. 전자 디바이스 내의 판독기 어플리케이션은 RFID 태그들 또는 스마트 포스터들과 같은 외부 오브젝트들을 판독할 수 있다. (스마트 포스터는 무선 근거리 무선 트랜시버에 의해 판독될 수 있는 근거리 무선 통신 태그를 포함하는 포스터이다. 영화에 대한 스마트 포스터는 상영 시간들, 영화 상품, 등에 관한 정보를 가지고 있는 근거리 무선 통신 태그를 포함한다. 사용자가 그러한 포스터의 소정 거리 내에서 무선 근거리 무선 통신 회로를 가지고 있는 전자 디바이스를 지나가는 경우에, 디바이스는 정보를 판독하여 대응하는 정보를 디스플레이 상에 프리젠팅할 수 있다.)
다수의 가상 카드들, 판독기 어플리케이션들 및 다른 어플리케이션들을 포함하여 이들 근거리 무선 통신 어플리케이션들 모두의 문제는, 사용자가 특정 근거리 무선 통신 디바이스에 대해 적절한 어플리케이션을 선택하는 것이 귀찮고 어려울 수 있다는 것이다. 예를 들면, 서류가방 및 컴퓨터 가방을 지니고 있는 통근자는 지하철을 탈 수 있는 가상 지하철 카드를 액세스하기 위해 모바일 전화기에서 어플리케이션 아이콘들 및 메뉴들의 스택을 통해 가려내는 것을 원하지 않을 수 있다. 그 동일한 통근자는 또한 직장에 도착했을 때 가상 식별 카드에 액세스하기 위해 메뉴들 및 아이콘들을 더듬거리는 것을 원하지 않을 것이다. 문제를 더 복잡하게 하는 것은, 다양한 근거리 무선 통신 단말기들이 상이한 기술들을 이용할 수 있다. 이것은 사용자가 대응하는 근거리 무선 통신이 어떤 타입의 기술을 이용하는지에 관해 모바일 디바이스에게 통지하는 것을 요구한다.
요약하면, 모바일 디바이스들에서의 근거리 무선 통신 기술의 출현은 사용자들에게 매우 다양한 근거리 무선 통신 어플리케이션들을 이용하여 매우 다양한 근거리 무선 통신 기술들과 무선으로 통신할 수 있는 능력을 제공한다. 그러나, 어플리케이션들 사이에서의 네비게이션은 시간 소비적이고 귀찮다. 그러므로, 사용자가 아이콘들 또는 메뉴들의 리스트들을 통해 수동으로 가려내는 것을 요구하지 않는 근거리 무선 통신 어플리케이션의 자동 선택을 용이하게 하는 방법 및 장치에 대한 필요성이 존재한다.
유사한 참조번호들은 분리된 도면들 전체에 걸쳐 동일하거나 기능적으로 유사한 구성요소들을 지칭하고 이하의 상세한 설명과 함께 명세서에 포함되며 그 일부를 형성하는 첨부된 도면들은, 다양한 실시예들을 추가 예시하고 본 발명에 따른 다양한 원리들 및 장점들 모두를 설명하도록 서브한다.
도 1은 다양한 외부 근거리 무선 통신 디바이스들과 통신하는 본 발명의 실시예들에 따른 휴대용 전자 디바이스를 예시하고 있다.
도 2는 본 발명의 실시예들에 따른 휴대용 전자 디바이스의 블록도를 예시하고 있다.
도 3은 본 발명의 실시예들에 따른 근거리 무선 통신 회로의 개략적인 블록도를 예시하고 있다.
도 4는 본 발명의 실시예들에 따라 근거리 무선 통신 어플리케이션을 자동으로 선택하고 런칭하는 하나의 방법을 예시하고 있다.
도 5는 본 발명의 실시예들에 따라 어플리케이션을 선택하는 어플리케이션 디스커버리 매니저의 하나의 방법을 예시하고 있다.
도 6은 본 발명의 실시예들에 따라 근거리 무선 통신 어플리케이션을 자동으로 선택하고 런칭하는 하나의 방법의 신호 흐름도를 예시하고 있다.
본 기술분야의 숙련자들이라면, 도면들의 구성요소들은 단순성 및 명료성을 위해 예시되어 있고 반드시 스케일링되도록 그려질 필요는 없다는 것을 잘 알고 있을 것이다. 예를 들면, 도면들에서 일부 구성요소들의 치수들은 다른 구성요소들에 비해 과장되어, 본 발명의 실시예들의 이해를 개선하는데 도움을 줄 수 있다.
본 발명에 따른 실시예들을 상세하게 설명하기에 앞서서, 본 실시예들은 주로 전자 디바이스에서 근거리 무선 통신 어플리케이션의 그룹으로부터 근거리 무선 통신 어플리케이션의 자동 선택에 관련된 방법 단계들 및 장치 컴포넌트들의 조합에 있는 것으로 사료된다. 따라서, 장치 컴포넌트들 및 방법 단계들은 적절한 경우에 도면들에서 관례적인 심볼들에 의해 표현되었고, 본 설명의 잇점을 가지는 본 기술분야의 통상의 기술자들에게 용이하게 명백한 세부사항들로 본 공개를 모호하지 않게 하도록 본 발명의 실시예들을 이해하는 것과 관련된 특정 세부사항들만을 도시하고 있다.
여기에 기재된 본 발명의 실시예들은 하나 이상의 종래의 프로세서들, 및 하나 이상의 프로세서들이 일부 비-프로세서 회로들과 조합하여 여기에 기재된 바와 같은 근거리 무선 통신 어플리케이션의 자동 선택의 기능들 중 일부, 대부분 또는 모두를 구현하도록 제어하는 고유 저장된 프로그램 명령들을 포함할 수 있다는 것은 자명하다. 비-프로세서 회로들은 무선 수신기, 무선 송신기, 신호 드라이버들, 클럭 회로들, 전원 회로들, 및 사용자 입력 디바이스들을 포함하고, 이들로 제한되지 않는다. 그럼으로써, 이들 기능들은 근거리 무선 통신 어플리케이션의 자동 선택을 수행하는 방법의 단계들로서 해석될 수 있다. 대안으로, 일부 또는 모든 기능들은 어떠한 저장된 프로그램 명령들도 가지지 않은 상태 머신에 의해, 또는 각 기능 및 일부 기능들의 일부 조합들이 관례적인 로직으로 구현되는 하나 이상의 어플리케이션 특정 집적 회로들(ASICs)에서 구현될 수 있다. 물론, 2가지 접근법들의 조합도 이용될 수 있다. 그러므로, 이들 기능들에 대한 방법들 및 수단이 여기에 기재되었다. 또한, 본 기술분야의 통상의 기술자라면, 예를 들면 가용 시간, 현재 기술 및 경제적 고려들에 의해 동기가 되는 가능한 상당한 노력 및 다수의 설계 선택들에도 불구하고, 여기에 개시된 개념들 및 원리들에 의해 유도되는 경우에, 그러한 소프트웨어 명령들 및 프로그램들, 및 IC들을 최소의 실험으로 용이하게 생성할 수 있을 것으로 예상된다.
이제, 본 발명의 실시예들이 상세하게 설명된다. 도면들을 참조하면, 유사한 번호들은 도면 전체에 걸쳐 유사한 부분들을 나타낸다. 본 설명 및 청구항들 전체에 걸쳐 이용된 바와 같이, 이하의 용어들은 컨텍스트가 명백하게 다르게 지시되지 않는 한 여기에 명시적으로 연관된 의미들을 취한다. "하나(a, an)" 및 "그(the)"는 복수의 참조를 포함하고, "내부(in)"의 의미는 "내부(in)" 및 "그 위(on)"을 포함한다. 제1 및 제2, 상부 및 기저부, 등과 같은 관계 용어들은 그러한 실체들 또는 액션들 사이에 임의의 그러한 실제적인 관계 또는 순서를 반드시 요구하거나 함축하지는 않고 하나의 실체 또는 액션을 또 하나의 실체 또는 액션으로부터 구별하는데에만 이용될 수 있다. 또한, 여기에 괄호에 도시된 참조부호들은 설명 중인 것 이외의 도면에 도시된 컴포넌트들도 나타낸다. 예를 들면, 도 A를 설명하는 동안에 디바이스(10)에 관해 이야기하는 것은 도 A 이외의 도면에 도시된 구성요소, 10을 지칭할 것이다.
본 발명의 실시예들은 휴대용 전자 디바이스에서 근거리 무선 통신 어플리케이션을 자동으로 선택하기 위한 방법을 제공한다. 하나의 실시예에서, 휴대용 전자 디바이스는 복수의 실행 환경들에 저장된 복수의 근거리 무선 통신 어플리케이션들을 가지고 있다. 이들 실행 환경들은 내장된 메모리 디바이스들, 가입자 식별 모듈(Subscriber Identification Module: SIM) 카드들, 범용 집적 회로 카드(Universal Integrated Circuit Card: UICC)들, 마이크로SD 카드들과 같은 제거가능한 디바이스들, 등을 포함할 수 있다. 이들 실행 환경들은 신뢰받은 실행 환경들인 것으로 확인된 경우, 이들은 "보안 구성요소들(secure elements)"로서 지칭된다.
다양한 실행 환경들의 다양한 어플리케이션들로부터 근거리 무선 통신 어플리케이션들 중 하나를 선택하기 위해 여기에 제시된 방법들 및 장치들은 근거리 무선 통신 회로들과 연관된 타이밍 요구조건들을 수용하는 시스템을 제공한다. 예를 들면, 무접촉의 근거리 무선 통신 프로토콜들을 위한 다수의 표준들은 데이터 통신에 대한 공격적인 타이밍 제한들을 제시한다. 이들 요구조건들을 수용하기 위해, 본 발명의 하나의 실시예는 다양한 실행 환경들 사이에서 통신하도록 구성된 메시징 모듈을 포함한다.
예를 들어, 제1 어플리케이션이 선택되고 그 어플리케이션이 또 하나의 실행 환경에 상주하는 것으로 판명된 경우, 메시징 모듈은 선택에 관한 정보를 또 하나의 실행 환경에 포워딩하고, 그럼으로써 프로토콜 선택 및 다른 식별 태스크들에서의 오버헤드를 제거한다. 또한, 메시징 모듈의 존재는 제1 실행 환경에서 또 하나의 실행 환경으로 변이할 때 선택 프로세스 또는 트랜잭션 프로세스를 재설정하거나 재시작할 필요성을 제거한다. 메시징 모듈은 또한 일부 명령들을 하나의 실행 환경에서 또 하나의 실행환경으로 포워딩할 수 있는 능력을 제공한다. 이것은 하나의 실행 환경으로부터 다른 하나로 변이할 때 새로운 세션 식별자와 특정 트랜잭션을 재시작해야 할 필요성을 제거한다.
하나의 실시예에서, 어플리케이션 디스커버리 매니저는 디폴트 실행 환경 내에 로케이팅된다. 이하에 설명되는 바와 같이, 어플리케이션 디스커버리 매니저는 프로토콜 스택의 어플리케이션 레벨에서 이용되는 근거리 무선 통신 어플리케이션을 선택하는 기능을 담당한다. 어플리케이션 디스커버리 매니저가 근거리 무선 통신 회로 내에 로케이팅될 수 있지만, 하나의 실시예에서, 이것은 디폴트 실행 환경 내에 상주한다. 외부 근거리 무선 통신 디바이스가 휴대용 전자 디바이스의 통신 근처 내에 다가오고 어플리케이션 레벨에서 어플리케이션 선택이 수행되는 경우, 디폴트 실행 환경내의 어플리케이션 디스커버리 매니저가 인에이블된다. 그리고나서, 근거리 무선 통신 회로는 하나 이상의 인에이블된 근거리 무선 통신 어플리케이션들과 연관된 파일 제어 정보를 근거리 무선 통신 컨트롤러를 통해 송신한다. 파일 제어 정보는 인에이블된 근거리 무선 통신 어플리케이션들과 연관된 어플리케이션 식별자들의 리스트를 포함할 수 있다.
그리고나서, 외부 근거리 무선 통신 디바이스는 선택된 어플리케이션 식별자를 식별하는 명령을 어플리케이션 식별자들의 리스트로부터 근거리 무선 통신 회로에 송신한다. 그리고나서, 어플리케이션 디스커버리 매니저는 선택된 어플리케이션 식별자로부터 어느 근거리 무선 통신 어플리케이션이 선택될 지를 결정한다. 하나의 실시예에서, 어플리케이션 디스커버리 매니저는 디폴트 실행 환경 내에 저장된 레지스트리 테이블에 액세스함으로써 이를 수행한다.
일단 근거리 무선 통신 어플리케이션 선택되었다면, 어플리케이션 디스커버리 매니저는 이것이 어느 실행 환경 내에 상주하는지를 결정한다. 선택된 근거리 무선 통신 어플리케이션이 디폴트 실행 환경 내에 상주하는 경우, 어플리케이션 디스커버리 매니저는 어플리케이션을 간단하게 액튜에이팅할 수 있다. 그러나, 선택된 근거리 무선 통신 어플리케이션이 또 하나의 실행 환경에서 상주하는 경우에, 어플리케이션 디스커버리 매니저는 포워딩 메시지를 송신함으로써 그 실행 환겨을 액튜에이팅하도록 작용한다.
하나의 실시예에서, 어플리케이션 디스커버리 매니저는 어플리케이션 포워딩 메시지를, 선택된 근거리 무선 통신 어플리케이션에 대응하는 선택된 실행 환경에 전송한다. 어플리케이션 디스커버리 매니저는 이것이 선택된 어플리케이션 식별자에 대응하기 때문에 실행 환경을 선택한다.
포워딩 메시지는 선택된 실행 환경의 어플리케이션 매니저가 디스커버리 프로세스를 재시작할 필요가 없다는 점에서 "본격적으로 시작하도록(hit the ground running)"허용하는 정보를 포함한다. 예를 들면, 포워딩 메시지는 검출의 포워딩 레벨을 포함하고, 여기에서 검출의 포워딩 레벨은 프로토콜 레벨, 충돌방지 레벨, 전달 레벨, 및 어플리케이션 레벨로 구성된 그룹에서 선택된다. 포워딩 메시지는 레이어 검출 시퀀스의 상태의 표시자, 가장 최근에 수신된 명령 응답, 및 근거리 무선 통신 디바이스 식별자를 더 포함할 수 있다. 뿐만 아니라, 포워딩 메시지는 근거리 무선 통신 트랜잭션이 방해받지 않도록 트랜잭션 상태 및 다른 제어 정보(예를 들면 세션 식별 번호)를 포워딩하는데 이용될 수 있다.
포워딩 메시지를 전달할 뿐만 아니라, 어플리케이션 디스커버리 매니저는 데이터가 근거리 무선 통신 회로와 선택된 실행 환경 사이에서 라우팅되는 것을 보장하도록 라우팅 스위칭을 추가적으로 제어할 수 있다. 본 발명의 실시예들과 연관된 하드웨어 구조들뿐만 아니라 이러한 및 다른 방법들이 이하의 도면들을 참조하여 더 상세하게 설명될 것이다.
본 발명의 실시예들은 또한 근거리 무선 통신 회로 컨트롤러에서 운용되는 프로토콜 디스커버리 매니저를 포함한다. 프로토콜 디스커버리 매니저는, 그 선택-수행 알고리즘들이 스택의 모드 스위치, 충돌 검출, 및 프로토콜 레벨들에서 작용하지만, 선택 성능도 가지고 있다. 이들 레벨들에서 선택이 수행되는 경우에, 프로토콜 디스커버리 매니저는 선택을 수행하고, 적절한 실행 환경을 인에이블시키며, 데이터 라우팅을 위해 스위치를 구성한다.
이제, 도 1을 참조하면, 여기에 예시되어 있는 것은 본 발명의 실시예들에 따라 근거리 무선 통신 성능을 가지고 있는 휴대용 전자 디바이스(100)의 하나의 실시예이다. 특히, 휴대용 전자 디바이스(100)는 근거리 무선 통신 회로 컨트롤러(102)가 거기에 결합된 근거리 무선 통신 회로(101)를 포함한다. 근거리 무선 통신 회로 컨트롤러(102)는 휴대용 전자 디바이스(100)가 다양한 근거리 무선 통신 기술들 및 프로토콜들을 채용하는 다양한 근거리 무선 통신 디바이스들과 무선으로 통신할 수 있도록 단일 근거리 무선 통신 인터페이스를 에뮬레이팅한다. 예로 든 근거리 무선 통신 디바이스들은 지불 단말기(103), 교통 티켓 단말기(104), 스마트 포스터(105), 및 RFID 태그(106)를 포함한다.
근거리 무선 통신 회로(101)는 특정 통신 주파수에서 근거리 무선 통신을 위해 구성된 통신 코일을 안테나로서 포함할 수 있다. 여기에 이용되는 바와 같이, 용어 "근거리 무선(near field)"은 일반적으로 약 1미터 미만 정도의 거리를 지칭한다. 통신 코일은 전류가 코일에 인가될 때 통신 코일로부터 발원되는 자계를 통해 통신한다. 통신 오실레이터는 전류 파형을 코일에 인가한다. 근거리 무선 통신 회로 컨트롤러는 결과적인 전류를 추가 변조하여 데이터를 송신하고 수신할 수 있다.
근거리 무선 통신 회로 컨트롤러(102)는 내장된 코드를 운용하는 마이크로프로세서, 트랜시버 집적 회로, 어플리케이션 특정 집적 회로, RFID 디바이스, 또는 등가적인 디바이스일 수 있다. 근거리 무선 통신 회로 컨트롤러(102)는 무선 주파수 형태로 데이터를 송신함으로써 다른 근거리 무선 통신 디바이스들과의 데이터 통신을 용이하게 하도록 작용한다. 추가 세부사항들에 대해서는, 참고로 여기에 포함된 www.ecma-international.org/publications/files/ECMA-ST/Ecma-340.pdf에서의 공식적으로 가용한 표준을 참조할 수 있다. 근거리 무선 통신이 예를 들면 RFID 통신인 경우, 이러한 주파수는 인정된 RFID 표준들에 의해 지시되는 바와 같이 약 13.56MHz일 수 있다.
휴대용 전자 디바이스(100) 내에서 운용할 수 있는 근거리 무선 통신 어플리케이션들은 복수의 실행 환경들 내에 저장된다. 각 실행 환경은 그 내부에 배치된 어플리케이션들을 실행할 수 있는 어플리케이션 매니저를 포함한다. 하나의 실행 환경은 "디폴트(default)" 실행 환경으로 선택되고 어플리케이션 디스커버리 매니저를 포함한다.
이제, 도 2를 참조하면, 여기에 예시되어 있는 것은 도 1의 휴대용 전자 디바이스(100)의 근거리 무선 통신 구성요소들의 예로 든 개략적인 블록도이다. 설명의 목적상, 여기에 기재된 휴대용 전자 디바이스(100)는 매우 유행하고 있으므로, 모바일 전화기의 것이다. 설명의 목적상 모바일 전화기가 예시적인 실시예로서 여기에 이용되고 있지만, 본 개시의 잇점을 가지는 본 기술분야의 통상의 기술자들에게는, 본 발명이 그렇게 제한되지 않는다는 것은 자명하다. 여기에 기재된 어플리케이션 디스커버리 매니저, 프로토콜 디스커버리 매니저, 및 연관된 방법들 및 장치들은 개인휴대단말기들, 페이저들, 휴대용 컴퓨터들, 등을 포함하여 다른 휴대용 전자 디바이스들에서도 구현될 수 있다.
하나의 실시예에서, 휴대용 전자 디바이스(100)는 와이드 영역 네트워크와의 통신을 위한 트랜시버(202) 및 휴대용 전자 디바이스(100)의 동작들을 실행하기 위한 프로세서(204)를 포함한다. 아날로그 대 디지털 컨버터(A/D, 206), 입력 디코더(208), 메모리(212), 표시 드라이버(214), 및 디지털 대 아날로그 컨버터(D/A, 218)와 같은 다른 표준 컴포넌트들도 포함될 수 있다. 각 컴포넌트는 디지털 신호 버스(220)를 통해 함께 결합된다.
트랜시버 모듈(202)은 안테나(242)에 결합된다. 휴대용 전자 디바이스(100)가 모바일 전화기와 같은 통신 디바이스인 경우, 데이터의 의해 변조된 캐리어 신호들, 예를 들면 MFT를 구동하기 위한 디지털로 인코딩된 신호들 또는 디지털로 인코딩된 음성 오디오는 안테나(242)와 트랜시버(202) 사이에서 패싱한다.
입력 디바이스(210)는 입력 디코더(208)에 결합된다. 입력 디코더(208)는 예를 들면 눌러진 키들을 식별하고, 각 눌러진 키를 식별하는 정보를 프로세서(204)에 제공하도록 서브한다. 표시 드라이버(214)는 디스플레이(226)에게 결합된다.
D/A(218)는 오디오 증폭기(232)를 통해 스피커(234)에 결합된다. D/A(218)는 디코딩된 디지털 오디오를 아날로그 신호들로 변환하고 스피커(234)를 구동한다. 오디오 증폭기(232)는 각각이 분리된 스피커를 구동하는 복수의 증폭기들을 포함할 수 있다.
메모리(212)는 휴대용 전자 디바이스(100)의 동작의 양태들을 제어하는 프로그램들을 저장하는데 이용된다. 메모리(212)는 컴퓨터 판독가능 매체의 형태이다.
트랜시버(202), 프로세서(204), A/D(206), 입력 디코더(208), 메모리(212), 표시 드라이버(214), D/A(618), 근거리 무선 통신 회로(216), 오디오 증폭기(232), 및 디지털 신호 버스(620)는 회로 보드를 따라 전기 회로 컴포넌트들 및 인터커넥션들에서 실시된다.
이하에 더 상세하게 설명될 근거리 무선 통신 회로(216)는 외부 근거리 무선 통신 디바이스들과 무선으로 통신하도록 구성된다. 적절한 경우에, 휴대용 전자 디바이스(100)는 근거리 무선 통신 회로(216)와 이용하기 적합한 가상 카드들, 스마트 카드 판독기, 등과 같은 근거리 무선 통신 어플리케이션들을 포함할 것이다. 하나의 실시예에서, 이들 근거리 무선 통신 어플리케이션들은 수 개의 실행 환경들(217) 중 하나에 저장된다. 이들 실행 환경들 중 하나는 "디폴트" 실행 환경으로 지정되고, 근거리 무선 통신 어플리케이션을 선택하는 것을 담당하는 어플리케이션 디스커버리 매니저를 포함한다.
디폴트 실행 환경 내에 배치된 어플리케이션 디스커버리 매니저뿐만 아니라, 제2 어플리케이션 선택 디바이스가 근거리 무선 통신 회로(216)의 근거리 무선 통신 회로 컨트롤러에서 동작한다. 이러한 "듀얼(dual)" 선택 매니저 구조는 시간-민감한 디스커버리 동작들의 핸들링을 용이하게 한다. 하나의 실시예에서, 어플리케이션 디스커버리 매니저는 어플리케이션 레벨에서 어플리케이션 선택에 이용되는데 반해, 제2 어플리케이션 선택 디바이스는 RF 또는 프로토콜 레벨들에서 선택에 이용된다.
이러한 듀얼 모드 선택 시스템을 예시하기 위해, 선택 프로세스가 일반적으로 프로토콜 스택의 레벨들에서 수행된다고 하자. 시간 결정적인 어플리케이션들의 선택들은 RFID/NFC 프로토콜 표준들 요구조건들(ISO 14443 및 ISO 18092에 의해 제시되고, 여기에 참고로 포함되어 있음)로 인해, 일반적으로 대부분 모드 스위치 액티비티 레벨 및 충돌 검출 레벨과 같은 프로토콜 레벨들에서 발생한다. 예를 들어, 하나의 근거리 무선 통신 기술에 있어서, 타겟으로부터 응답 명령에 대한 선정 프로세스 동안에 발생하는 응답 시간은 80-150 마이크로초를 초과할 수 없다. 다른 근거리 무선 통신 어플리케이션들에 대해, 충돌 검출 레벨에서 발생하는 것들과 같은 프로토콜 명령들은 일반적으로 단지 4-5밀리초의 시간 지연들을 가질 수 있다.
APDU 또는 독점적 명령들에 기초할 수 있는 선택의 다른 상부 레벨들은 덜 엄격한 요구조건들을 가지고 있다. 그럼으로써, 대응하는 어플리케이션 선택 프로세스는 덜 시간 민감하다. 예를 들면, 프로토콜의 최상부에서 운용되는 NFC 또는 RFID 어플리케이션들은 시간 지연들이 수십 밀리초 이상으로 측정될 수 있다는 점에서 덜 시간 민감하다.
어플리케이션들의 선택을 수용하기 위해, 근거리 무선 통신 회로 컨트롤러는 RF 레벨에서 프로토콜 선택으로 태스킹된다. 디폴트 실행 환경에서 운용되는 어플리케이션 디스커버리 매니저는 어플리케이션 레벨에서 어플리케이션 선택을 담당한다. 그럼으로써, 디스커버리 프로세스는 이들 2개의 모듈들 사이에 "분할(split)"된다.
이제, 도 3을 참조하면, 여기에 예시되어 있는 것은 본 발명에 따른 근거리 무선 통신 회로(216) 및 대응하는 실행 환경들의 하나의 실시예이다. 마이크로프로세서, 어플리케이션 특정 집적 회로 또는 다른 유사한 디바이스일 수 있는 근거리 무선 통신 회로 컨트롤러(301)는 외부 근거리 무선 통신 디바이스들과 근거리 무선 통신을 용이하게 하도록 구성된다. 근거리 무선 통신 회로 컨트롤러(301)는 인쇄 회로 보드 또는 다른 기판 상에 배치된 코일로 실시될 수 있는 근거리 무선 통신 회로 안테나(302)에 결합된다. 통신 신호들(303)은 근거리 무선 통신 회로 안테나(302)를 통해 송신되고 수신된다. 근거리 무선 통신 회로 컨트롤러(301)는 근거리 무선 통신 트랜시버를 통해 통신한다.
근거리 무선 통신 회로 컨트롤러(301)는 다양한 실행 환경들(217)에 상주하는 근거리 무선 통신 어플리케이션들과 근거리 무선 통신 트랜잭션들에 이용되는 데이터 통신을 용이하게 한다. 메모리 디바이스들, SIM 카드들, 메모리 카드들, 내장된 디바이스들, 등은 각각 실행 환경일 수 있다. 각 실행 환경은 그 내부에 저장된 복수의 근거리 무선 통신 어플리케이션들을 가질 수 있다. 실행 환경이 신뢰받은 경우, 이는 "보안 구성요소"로 지칭된다.
도 3에서, 4개의 실행 환경들(304, 305, 306, 307)이 도시되어 있다. 본 개시의 잇점을 가지는 본 기술분야의 통상의 기술자들에게는, 임의의 개수 또는 타입의 실행 환경들이 본 발명의 실시예들과 이용될 수 있다는 것은 자명하다. 실행 환경들(304, 305, 306, 307)은 그 내부에, 각각이 근거리 무선 통신 회로 컨트롤러(301)와 동작가능한 복수의 근거리 무선 통신 어플리케이션들(308, 309, 310, 311)을 저장하고 있다. 도 3의 예로 든 실시예에서, 실행 환경(304)은 근거리 무선 통신 어플리케이션들의 하나의 세트(308)를 포함하는데 대해, 실행 환경(305)은 근거리 무선 통신 어플리케이션들의 또 하나의 세트(309)를 가지고 있다. 실행 환경(307)이 근거리 무선 통신 어플리케이션들의 또 하나의 세트(311)를 가지고 있는 것처럼, 실행 환경(306)은 근거리 무선 통신 어플리케이션들의 또 하나의 세트(310)를 포함한다. 실행 환경(307)은 디폴트 실행 환경으로 지정된다.
각 실행 환경(304, 305, 306, 307)은 또한 어플리케이션 매니저(312, 313, 314, 315)를 포함한다. 어플리케이션 매니저(312, 313, 314, 315)는 그 실행 환경 내에 저장된 근거리 무선 통신 어플리케이션들과 통신하고 어플리케이션 디스커버리 매니저(316)로부터 포워딩 메시지들을 수신하도록 구성된다. 각 어플리케이션 매니저(312, 313, 314, 315)는 이하의 기능들을 더 가지고 있다. 우선, 사용자 인터페이스로부터 수신된 사용자 명령들을 포함하여 수신된 명령들을 해석하는 것을 담당한다. 다음으로, 각 어플리케이션 매니저(312, 313, 314, 315)는 그 실행 환경 내에 저장된 다양한 근거리 무선 통신 어플리케이션들의 대응하는 레지스트리를 유지하는 것을 담당한다. 레지스트리는 어플리케이션 매니저의 데이터베이스의 일부이고, 그 실행 환경의 각 근거리 무선 통신 어플리케이션의 식별 파라미터들을 포함한다. 식별 파라미터들의 예들은 어플리케이션 식별 번호, UID, PUPI, AID, SAK, ATQB_DAT, ATQA, 등을 포함한다. 레지스트리는 또한 임의의 요구되는 근거리 무선 통신 프로토콜 파라미터들을 포함할 수 있다. 이는 ISO 1444-3B 타입 어플리케이션들에 대해, 어플리케이션 데이터 또는 어플리케이션 패밀리 식별자들을 포함할 수 있다. 각 어플리케이션의 식별자들은 레지스트리 내에 완전한 테이블로서 저장될 수 있다.
유의할 점은, 사용자가 일부 상황들에서 근거리 무선 통신 어플리케이션들 중 하나를 의도적으로 선택함에 따라, 각 어플리케이션 매니저(312, 313, 314, 315)는 그 실행 환경을 향하여 지시된 사용자 인터페이스로부터 수신된 입력에 기초하여 선택된 근거리 무선 통신 어플리케이션을 인에이블시키도록 더 구성된다는 점이다. 각 어플리케이션 매니저(312, 313, 314, 315)는 사용자에 의해 선택된 경우에 그러한 어플리케이션들을 런칭할 수 있다. 각 어플리케이션 매니저(312, 313, 314, 315)는 사용자에 의해 그렇게 하도록 지시되는 경우에 그 근거리 무선 통신 어플리케이션들을 추가적으로 디스에이블시킬 수 있다.
그러나, 본 발명의 실시예들의 특징들 중 하나는, 이것은 디스커버리 레벨에 따라 어플리케이션 디스커버리 매니저(316) 또는 프로토콜 디스커버리 매니저(319)에 의해 수행될 수 있으므로, 사용자가 근거리 무선 통신 어플리케이션을 선택하기 위해 메뉴들 및 명령들을 더듬거릴 필요가 없다는 점이다. 프로토콜 디스커버리 매니저(319)는 어플리케이션을 선택하는 경우, 데이터를 적절한 실행 환경으로 라우팅하도록 라우팅 스위치(219)를 구성할 수 있고 선택된 어플리케이션을 런칭할 수 있다. 이것은 통상적으로 식별의 프로토콜 레벨만이 요구되는 경우에 발생한다. 다른 레벨들이 요구되는 경우, 프로토콜 디스커버리 매니저(319)는 데이터를 선택하여 어플리케이션 디스커버리 매니저(316)를 포함하는 디폴트 실행 환경으로 라우팅한다. 어플리케이션 디스커버리 매니저(316)는, 어플리케이션을 선택한 경우에, 어플리케이션을 런칭하거나 선택된 어플리케이션에 의해 요구되는 추가 실행을 위해 메시지를 적절한 실행 환경으로 포워딩할 수 있다.
어플리케이션 디스커버리 매니저(316)는 실행 환경들(307) 중 하나에 상주한다. 이러한 실행 환경(307)은 디폴트 실행 환경으로 지칭된다. 어플리케이션 디스커버리 매니저(316)는 어플리케이션 레벨(프로토콜 디스커버리 매니저(319)에 의해 핸들링되는 근거리 무선 기술 레벨, 충돌 검출 레벨, 또는 프로토콜 레벨과는 반대됨)에서 근거리 무선 통신 어플리케이션을 선택하도록 구성된다.
디폴트 실행 환경은 어플리케이션 디스커버리 매니저(316)뿐만 아니라, 대응하는 레지스트리 테이블(317)도 포함한다. 레지스트리 테이블(317)은 선택의 어플리케이션 레벨을 요구하는 모든 근거리 무선 통신 어플리케이션들을 포함한다. 예를 들면, 레지스트리 테이블(317)은 어플리케이션 식별 번호들, 다른 실행 환경들에 대응하는 구성요소 식별 번호들, 등을 포함한 어플리케이션 식별자들을 포함할 수 있다. 어플리케이션 디스커버리 매니저(316)는, 그 메시징 모듈(318)을 통해, 구성요소 식별 번호들을 이용하여 메시지들을 다른 실행 환경들에게 포워딩할 수 있다. 하나의 실시예에서, 레지스트리 테이블(317)은 적어도 복수의 근거리 무선 어플리케이션들의 각각과 연관된 근거리 무선 통신 어플리케이션 식별자, 및 디폴트 실행 환경(307)이 아니고 어플리케이션들이 상주하는 실행 환경들과 연관되는 구성요소 식별자를 포함한다.
그 메시지 포워딩 모듈(318)을 통해, 어플리케이션 디스커버리 매니저(316)는 포워딩 메시지들을 디폴트 실행 환경(307) 이외의 실행 환경들에게 전송할 수 있다. 메시지 포워딩 모듈(318)은 디폴트 실행 환경(307)으로부터 다른 실행 환경들(304, 305, 306)로 어플리케이션 디스커버리 메시지들을 송신하도록 구성된다. 이들 메시지들은 근거리 무선 통신 회로 컨트롤러(301)를 통해 포워딩된다. 하나의 실시예에서, 포워딩 메시지는 수신하는 실행 환경의 식별자를 포함한다. 이러한 실행 환경은 선택된 근거리 무선 통신 어플리케이션이 상주하는 환경일 것이다. 포워딩 메시지는 어느 프로토콜 스택 레벨들에서, 어느 어플리케이션들이 시도되었는지, 등을 포함하여 어플리케이션 디스커버리의 상태를 포함할 수도 있다.
하나의 실시예에서, 예로 예시하기 위해, 어플리케이션 디스커버리 매니저(316)는 메시지들을 디폴트 실행 환경으로부터 근거리 무선 통신 제어 회로를 통해 또 하나의 실행 환경 또는 보안 구성요소에 전송할 수 있도록 구성된다. 그러한 메시지의 하나의 예는 특정 어플리케이션 또는 애플릿이 상주하는 다른 실행 환경의 물리적 식별자를 포함할 것이다. 이러한 물리적 식별자는 트랜잭션 프로토콜의 실행을 다른 실행 환경 또는 보안 구성요소에게 포워딩하는데 이용될 수 있다.
일단 이러한 메시지가 라우팅되면, 어플리케이션 디스커버리 매니저(316) 또는 프로토콜 디스커버리 매니저(319)는 메시지에서 수신된 구성요소 식별자 및 논리적 레지스트리 테이블의 대응하는 식별자들에 기초하여 데이터를 다른 실행 환경 또는 보안 구성요소에게 라우팅하도록 스위치를 구성할 수 있다. 그리고나서, 어플리케이션 디스커버리 매니저(316) 또는 프로토콜 디스커버리 매니저(319)는 다른 실행 환경 또는 보안 구성요소를 초기화하여, 상기 설명된 절차, 또는 초기화의 큰 레이턴시 시간이 있는 경우에 적용될 수 있는 미리선택된 어플리케이션 우선권에 따라, 특정 애플릿 또는 애플리케이션을 운용할 수 있다.
어플리케이션 디스커버리 매니저(316)와 나란히 동작하는 것은 하나의 실시예에서 근거리 무선 통신 회로 컨트롤러(301) 상에서 운용되는 실행가능한 소프트웨어인 프로토콜 디스커버리 매니저(319)이다. 프로토콜 디스커버리 매니저(319)뿐만 아니라, 근거리 무선 통신 회로 컨트롤러(301)는 또한 근거리 무선 통신 트랜시버(320)로의 액세스, 및 라우팅 스위치(219)로의 인터페이스도 포함한다. 근거리 무선 통신 회로 컨트롤러(301)는 라우팅 스위치(219)를 통해 실행 환경들(304, 305, 306, 307) 중 하나로 데이터를 전달하는 성능을 포함한다.
하나의 실시예에서, 프로토콜 디스커버리 매니저(319)는 프로토콜 레벨(323), 근거리 무선 통신 기술 레벨(321) 및 충돌 검출 레벨(322)에서 외부 근거리 무선 통신 디바이스와 연관된 근거리 무선 통신 기술을 식별하도록 구성된다. 다르게 말하면, 프로토콜 디스커버리 매니저(319)는 프로토콜 스택의 모드 스위치 레벨(321), 충돌 검출 레벨(322), 및 프로토콜 활성화 레벨(323)과 연관된 프로토콜 레벨 식별자들을 검출하도록 구성된다. 프로토콜 디스커버리 매니저(319)는 UID 번호, PUPI 번호, 등에 기초한 것들을 포함하여, 디스커버리의 어플리케이션 레벨을 요구하지 않는 근거리 무선 통신 어플리케이션들을 활성화시키도록 더 구성된다. 프로토콜 디스커버리 매니저(319)는 라우팅 스위치(219)도 구성하는 라우팅 성능으로 구성된다.
프로토콜 디스커버리 매니저(319)는 어플리케이션 레지스트리(324)를 더 포함한다. 어플리케이션 레지스트리(324)는 어플리케이션 레벨 디스커버리를 요구하지 않는 이들 근거리 무선 통신 어플리케이션들을 포함한다는 것을 제외하고는 실질적으로 레지스트리 테이블(317)과 같은 레지스트리 테이블이다.
어플리케이션 디스커버리 매니저(316) 및 프로토콜 디스커버리 매니저(319) 양쪽 모두는 스위치 구성 메시지를 라우팅 스위치(219)에 송신할 수 있는 성능으로 구성된다. 근거리 무선 통신 회로 컨트롤러(301)와 동작가능한 라우팅 스위치(219)는 근거리 무선 통신 회로 컨트롤러(301)와 하나 이상의 실행 환경들(304, 305, 306, 307) 사이에서 데이터 통신을 선택적으로 라우팅하도록 구성된다. 그럼으로써, 어플리케이션 디스커버리 매니저(316) 또는 프로토콜 디스커버리 매니저(319) 중 어느 하나는 스위치 구성 메시지를 라우팅 스위치(219)에 송신하여, 라우팅 스위치(219)가 근거리 무선 통신 회로 컨트롤러(301)와 선택된 근거리 무선 통신 어플리케이션과 연관된 실행 환경 사이에서 데이터 통신을 라우팅하도록 지시할 수 있다. 또한, 프로토콜 디스커버리 매니저(319)는 다양한 보안 구성요소들을 활성화시킬 수 있는데 대해, 어플리케이션 디스커버리 매니저(316)는 다른 보안 구성요소들을 활성화시킬 수 있다.
어플리케이션 디스커버리 프로세스는 근거리 무선 통신 어플리케이션 또는 어플리케이션들의 패밀리와 연관된 어플리케이션 또는 애플릿에 적용된다. 어플리케이션 디스커버리 매니저(316)에 의해 디스커버리가 수행되는 경우, 근거리 무선 통신 회로(216)와 외부 근거리 무선 통신 디바이스 사이에 어플리케이션 레벨 명령들이 교환될 수 있도록, 이러한 어플리케이션 레벨 디스커버리는 프로토롤 레벨들 이후에 시작된다.
예로서 예시하기 위해, 여기에 참고로 첨부된 ISO 7816 및 Global Platform Card Specification, ver.2.1.1, March, 2008, from GlobalPlatform, Inc.에 제시된 바와 같은, 어플리케이션 식별자에 기초하여 어플리케이션 디스커버리 매니저(316)에 의해 수행되는 디스커버리를 고려하자. ISO7816 표준은 SELECT APDU 명령과 같은 근거리 무선 통신 명령들에 대한 디폴트 파라미터들을 정의한다. 그러나, 일부 시스템들에서, ISO7816 명령은 글로벌 플랫폼 스펙에 제시된 명령들 또는 파라미터들에 의해 무시될 수 있다. 또한, 글로벌 플랫폼 스펙은 어플리케이션 디스커버리 프로세스에 유용한 명령들에 대한 추가적인 파라미터들 및 옵션들을 제시한다. 그러한 디스커버리는 예를 들면, 근거리 무선 통신에 의해 실행되는 지불 트랜잭션에 이용될 수 있다. 어플리케이션 디스커버리 매니저(316)는, 하나의 실시예에서, 외부 근거리 무선 통신 디바이스로부터 단말기 SELECT_APDU 명령을 수신함으로써 선택된 근거리 무선 통신 어플리케이션을 식별한다. 이러한 디바이스는 어플리케이션 식별 번호와 SELECT_AID 명령을 더 전송한다. 이러한 어플리케이션 식별 번호는 외부 근거리 무선 통신 디바이스에 대응한다. 이러한 식별자로부터, 어플리케이션 디스커버리 매니저는 그 특정 어플리케이션 식별자를 지원하는 어플리케이션들을 선택할 수 있다.
또 하나의 예에서, ISO 14443 B에 제시된 바와 같은, 어플리케이션 패밀리 식별자에 기초하여 어플리케이션 디스커버리 매니저(316)에 의해 수행된 디스커버리를 고려하자. 그러한 패밀리 식별자는 명령 REQB/WUPB에서 송신된다. 이러한 명령은 수신자에게 외부 근거리 무선 통신 디바이스의 트랜잭션을 지원하기 위해 어떤 타입의 어플리케이션이 초기화되어야 하는지에 관해 경보한다. 또한, 요구의 포맷은 CRC_B(AID) 데이터뿐만 아니라 어플리케이션 패밀리 식별자를 제공한다. CRC_B(AID)는 REQB/WUPB 명령에 제시된 어플리케이션 패밀리 식별자를 매칭하는 수신자의 제어 회로에서 어플리케이션의 AID(ISO/IEC 7816-5에 정의된 바와 같음)의 CRC_B의 계산 결과이다. 이러한 데이터에 대한 포맷은 외부 근거리 무선 통신 디바이스가 복수의 근거리 무선 통신 어플리케이션들을 포함하는 것을 나타낼 수 있다.
따라서, 어플리케이션 디스커버리 매니저(316)는 매칭되는 어플리케이션 패미리 식별자 또는 CRC_B(AID)를 얻을 때까지, 복수의 REQB/WUPB 명령들을 송신하고 외부 근거리 무선 통신 디바이스로부터 복수의 ATQB 응답들을 수신할 수 있다. ATQB 응답을 수신한 경우에, 어플리케이션 디스커버리 매니저(316)는 SLOT-MARKER 명령을 송신함으로써, 충돌에 대해 다수의 슬롯들(16개까지)을 셋업할 수 있다.
어플리케이션 디스커버리 매니저(316)에 의해 어플리케이션이 선택되고 그 어플리케이션이 어플리케이션 디스커버리 매니저의 실행 환경(307) 내에 상주하는 경우, 어플리케이션 디스커버리는 그 어플리케이션을 런칭할 수 있다. 어플리케이션이 또 하나의 실행 환경에 상주하는 경우, 어플리케이션 디스커버리 매니저(317)는 그 메시지 포워딩 모듈(318)로부터 포워딩 메시지를 송신할 것이다.
상기 언급된 바와 같이, 포워딩 메시지는 어플리케이션 레벨과는 다른 레벨들일 수 있는 검출의 포워딩 레벨, 및 검출 시퀀스의 레벨을 나타내는 포워딩된 검출 레벨의 내부 서브-레벨을 포함할 수 있다. 포워딩 메시지는 또한 외부 근거리 무선 통신 디바이스로부터의 최종 명령 응답, UID 번호 또는 PUPI 번호와 같은 디바이스 식별 번호, 또는 다른 제어 정보를 포함할 수 있다. 하나의 실시예에서, 포워딩 메시지는 선택된 근거리 무선 통신 어플리케이션이 상주하는 실행 환경에 대응하는 구성요소 식별자, 어플리케이션 디스커버리의 상태, 어플리케이션 디스커버리의 현재 레벨을 포함한다.
포워딩 메시지가 ISO 7186 타입 어플리케이션 식별자 디스커버리와 연관되는 경우에, 포워딩 메시지는 포워딩할 어플리케이션 레벨(레벨 4), 서브레벨(레벨 4가 요구되는 어플리케이션 식별자의 식별로 완료된 것을 의미하는 0), 및 어플리케이션 식별자를 포함할 수 있다. (유의할 점은, 구성요소 식별자는 대안 메시지에서 스위치 구성을 위해 근거리 무선 통신 회로 컨트롤러(301)에 송신될 수 있다는 점이다.)
ISO 14443 B 타입 디스커버리의 경우에, 포워딩 메시지는 포워딩할 레벨 2(충돌 검출) 레벨, 서브레벨 2(레벨 2는 복수의 어플리케이션들의 식별에 대해서만 완료되고, PUPI 번호 - 의사-고유 PICC 식별자(PUPI)는 충돌 방지(anti collision) 동안에 PICC들을 구별하는데 이용된다는 것을 의미한다. 이러한 4-바이트 번호는 PICC에 의해 다이나믹하게 생성된 번호이거나 다양화된 고정 번호 중 하나일 수 있다), PUPI 번호, 충돌방지 검출에 전용되는 슬롯들의 전체 개수, 및 이미 차지된 슬롯들의 양을 포함할 수 있다.
어플리케이션 디스커버리 매니저(316)가 이해되었으므로, 하나의 예로 든 프로토콜 디스커버리 매니저(319) 선택 동작이 설명될 것이다. 이러한 예의 목적상, 실행 환경(304)은 독점적 및 다른 어플리케이션들이 저장될 수 있는 "안전한" 영역이 없는 일반적인 실행 환경이라고 가정하자. 또한, 실행 환경(304)은 프로토콜 디스커버리 매니저(319)에 의해 액세스가능한 근거리 무선 통신 어플리케이션들(즉, 어플리케이션 레벨 이외의 레벨들 상에서 발견 가능한 어플리케이션들)만을 포함한다고 가정하자. (유의할 점은, 이것은 스위치(219)를 통과하는 화살표에 의해 도 3에 그려진 통신 구조라는 점이다.)
이제, 실행 환경(305)은 프로토콜 디스커버리 매니저(319)에 의해 활성화될 수 있는 적어도 하나의 근거리 무선 통신 어플리케이션, 및 어플리케이션 디스커버리 매니저(316)에 의해 활성화될 수 있는 어플리케이션을 포함한다고 가정하자. 실행 환경(306)은 어플리케이션 디스커버리 매니저(316)에 의해 식별되고, 선택되며, 활성화될 수 있는 근거리 무선 통신 어플리케이션들을 포함하고, 실행 환경(307)은 물론 어플리케이션 디스커버리 매니저(316)를 포함하는 디폴트 실행 환경이다. 실행 환경(307)은 어플리케이션 디스커버리 매니저(316)에 의해 식별될 수 있는 근거리 무선 통신 어플리케이션들을 더 포함한다.
이러한 예의 목적상, 이들 가정들을 이용하여, 카드 에뮬레이션 모드에서 외부 단말기로부터의 통신에 대한 요구 시에, 프로토콜 디스커버리 매니저(319)는 프로토콜 레벨들에서 어플리케이션 디스커버리 식별 정보를 송신한다. 프로토콜 디스커버리 매니저(319)는, 상기 설명된 바와 같이, 충돌 검출 레벨에 기초하여 근거리 무선 통신 어플리케이션 선택을 할 수 있다. 이것은 근거리 무선 통신 회로 인터페이스와, 그 선택된 근거리 무선 통신 어플리케이션의 실행 환경 사이에서 데이터 통신을 지시하도록 라우팅 스위치(219)를 더 구성할 수 있다. 이러한 타입의 선택은 어플리케이션들 패턴에 기초하여 UID 번호들(ISO 14443A), PUPI 번호(ISO 14443B), 또는 다른 독점적 ID에 의해 식별되는 어플리케이션들에 이용될 수 있다.
선택된 근거리 무선 통신 어플리케이션에 대응하는 실행 환경이 초기화되는 경우, 이하의 프로세스들이 발생할 수 있다. 우선, 실행 환경을 초기화하는데 비교적 많은 시간이 걸리는 경우, 프로토콜 디스커버리 매니저(319)는 실행 환경을 사전-인에이블시키도록 구성될 수 있다. 다음으로, 실행 환경에 대한 초기화 시간이 비교적 짧은 경우, 프로토콜 디스커버리 매니저(319)는 단지 구성된 라우팅 스위치(219)를 통해 웨이크-업 명령을 전송할 수 있다.
이제, 어플리케이션 디스커버리 매니저(316) 및 프로토콜 디스커버리 매니저(319)에 의한 선택 프로세스를 참조하면, 하나의 실시예에서, 제1 충돌 검출 레벨 동안에, 프로토콜 디스커버리 매니저(319)는 외부 근거리 무선 통신 디바이스로부터 RATS 명령을 수신한다. 이러한 명령은 근거리 무선 통신 회로(216)에게 외부 디바이스가 검출되어 있다는 것과 디바이스가 ISO 14443 표준에 따른다는 것을 통지한다.
그리고나서, 프로토콜 디스커버리 매니저(319)는 디폴트 실행 환경(307)을 호출하여 프로토콜 디스커버리 매니저(319)를 활성화시킨다. 이것은 어플리케이션 디스커버리 프로세스를 시작하는 어플리케이션 디스커버리 매니저(316)를 개시시킨다. 그러므로, 프로토콜 디스커버리 매니저는 데이터를 디폴트 실행 환경(307)으로 보내도록 라우팅 스위치(219)를 구성한다.
선택 프로세스를 추가 지원하기 위해, 이하의 선택적 동작들이 완료될 수 있다. 우선, 디폴트 실행 환경(307)은 디폴트 실행 환경(307) 인에이블화가 비교적 늦는 경우에 임의의 근거리 무선 통신 트랜잭션 이전에 사전-인에이블될 수 있다. 대안으로, 프로토콜 디스커버리 매니저(319)는 비교적 짧은 활성화 시간이 요구되는 경우에, 웨이크-업 명령을 구성된 라우팅 스위치(219)를 통해 디폴트 실행 환경(307)에게 전송할 수 있다.
이제 도 4를 참조하면, 여기에 예시되어 있는 것은 본 발명에 따라 근거리 무선 통신 회로 컨트롤러(301)에 대한 실행가능 코드로서 코딩하는데 적합한 하나의 방법(400)이다.
단계 401에서, 근거리 무선 통신 회로(216)는 외부 근거리 무선 통신 디바이스의 존재를 검출한다. 대안으로, 사용자는 어플리케이션 디스커버리 특징 또는 근거리 무선 통신 회로를 선행적으로 인에이블시킬 수 있다. 이러한 검출/활성화는 근거리 무선 통신 회로(216)를 인에이블시켜, 외부 근거리 무선 통신 디바이스와 통신을 시작한다.
단계 402에서, 근거리 무선 통신 회로(216)는 외부 근거리 무선 통신 디바이스로부터 SENS_REQ 명령을 수신한다. 이러한 통신으로부터, 근거리 무선 통신 회로 컨트롤러(301)는 단계 403에서, 그 프로토콜 디스커버리 매니저(319)를 통해, 프로토콜 레벨, 기술 레벨 및 충돌방지 레벨에서 근거리 무선 통신 기술을 식별한다. 근거리 무선 통신 회로 컨트롤러(301)는, 하나의 실시예에서, 매우 다양한 근거리 무선 통신 기술들 및 디바이스들과 통신할 수 있다. 근거리 무선 통신 회로 컨트롤러(301)는 원격 근거리 무선 통신 디바이스들과 통신할 때 단일 근거리 무선 통신 회로 인터페이스를 에뮬레이팅함으로써 이것을 달성한다. 프로토콜 스택의 다양한 레벨들(321, 322, 323)에서 프로토콜 디스커버리 매니저(319)와 협력하여 동작하는 근거리 무선 통신 회로 컨트롤러(301)는 근거리 무선 통신 기술을 식별한다.
단계 404에서, 프로토콜 디스커버리 매니저(319)는 그 레지스트리에 액세스하여, 근거리 무선 통신 기술과 대응하는 인에이블된 어플리케이션들의 파라미터들이 존재하는지 여부를 결정한다. 결정 405에서 결정된 바와 같이, 파라미터들이 지원되는 경우에, 프로세스는 단계 407로 이동한다. 어떠한 양립가능한 근거리 무선 통신 어플리케이션들도 존재하지 않는다는 사실을 나타내는, 근거리 무선 통신 기술에 대응하는 어떠한 파라미터들도 존재하지 않는 경우, 프로세스는 단계 406에서 종료한다. 종료 프로세스는 오류 응답의 송신을 포함할 수 있다.
단계 407에서, 근거리 무선 통신 회로(216)는 응답을 외부 근거리 무선 통신 디바이스에 송신한다. 이러한 응답은 근거리 무선 통신 기술에 대응하는 인에이블된 어플리케이션들의 리스트를 포함할 수 있다. 대안으로, 이러한 통신은 선택된 근거리 무선 통신 어플리케이션을 포함할 수 있다.
결정 408에서, 근거리 무선 통신 회로는 트리거링 이벤트를 검출한다. 그러한 트리거링 이벤트는 외부 근거리 무선 통신 디바이스로부터 수신되고 있는 확인 메시지를 포함할 수 있다. 예를 들면, 단계 407에서 전송된 응답이 잠재적으로 양립가능한 근거리 무선 통신 어플리케이션들의 선택을 나타낸 경우에, 외부 근거리 무선 통신 디바이스는 특정 선택으로 응답할 수 있고, 이는 트리거링 이벤트를 구성할 것이다.
결정 408에서 어떠한 트리거링 이벤트도 검출되지 않는 경우, 식별 및 선택 프로세스는 다음 레벨에서 계속된다. 예를 들면, 식별 및 선택 프로세스가 처음에는 스위치 모드 레벨에 있었는데 대해, 충돌 검출 레벨 등에서 반복될 수 있다. 결정 414에서 검출되는 바와 같이, 모든 레벨들이 처리되고 어떠한 트리거링 이벤트도 발생되지 않는 경우, 근거리 무선 통신 회로(216)는 단계 413에서 오류 응답을 외부 디바이스에게 리턴한다.
단계 409에서, 트리거링 이벤트가 발생한 경우에, 근거리 무선 통신 회로 컨트롤러(301)는 선택하고, 선택된 근거리 무선 통신 어플리케이션이 상주하는 실행 환경을 인에이블시킨다. 선택된 실행 환경은 그 내부에 저장된 어플리케이션 디스커버리 매니저(316) 및 레지스트리 테이블(318)을 가지고 있다.
단계 411에서, 프로토콜 디스커버리 매니저(319)와 조합하여 동작하는 근거리 무선 통신 회로(216)는 선택된 실행 환경과의 통신을 위해 라우팅 스위치(219)를 구성한다. 단계 411에서, 선택된 근거리 무선 통신 어플리케이션이 런칭된다. 선택된 근거리 무선 통신 어플리케이션의 트랜잭션이 처리하고 있는 동안에, 데이터는 단계 412에서 선택된 근거리 무선 통신 어플리케이션 및 그 실행 환경에 라우팅된다.
유의할 점은, 런칭 단계(411)는 어플리케이션 디스커버리 프로세스와, 선택된 근거리 무선 통신 어플리케이션이 상주하는 실행 환경 사이에서 파티셔닝될 수 있다는 점이다. 이러한 파티셔닝은 어플리케이션의 타입, 전체 실행 환경들 전체에 걸친 어플리케이션들의 할당시 디자인 선호도, 근거리 무선 통신 어플리케이션 스택의 특정 구현 파티셔닝, 등에 좌우될 수 있다. 각 실행 환경에서의 각 어플리케이션은 근거리 무선 통신 회로 컨트롤러에서 모든 프로토콜 레벨들의 처리에 좌우될 수 있다. 각 실행 환경 내에서의 어플리케이션 실행은 모드 스위치 레벨 이후에 예를 들면, 다음 3개의 상위 레벨들로부터 시작될 수 있다. 그럼으로써, 실행의 모드 스위치 레벨은 어플리케이션 디스커버리 메커니즘(예를 들면, 프로토콜 디스커버리 매니저 또는 어플리케이션 디스커버리 매니저)으로 파티셔닝될 수 있는데 대해, 실행의 상부 레벨들은 실행 환경으로 파티셔닝될 수 있다.
레지스트리로부터의 라우팅 플래그는 이러한 실행 파티셔닝을 결정하는데 이용될 수 있다. 예를 들면, 라우팅 플래그가 어플리케이션 레벨 선택 프로세스의 특정 파라미터에 대응하는 참(true) 상태에 있는 경우, 이것은 실행 프로세스의 잔여 파티션이 할당되는 실행 환경으로 데이터를 라우팅하도록 어플리케이션 디스커버리 모듈에 시그널링할 수 있다.
이제 도 5를 참조하면, 여기에 예시되어 있는 것은 어플리케이션 디스커버리 매니저(316)의 기능에 대한 실행가능한 코드로서 코딩하는데 적합한 하나의 방법(500)이다. 도 5의 방법은 참조번호 501에 나타낸 바와 같이, 어플리케이션 레벨에서 선택 프로세스가 일어나는 경우에 발생한다. 또한, 도 5의 방법(500)은 참조번호 502에 의해 표시된 바와 같이, 요구된 어플리케이션 프로토콜이 프로토콜 디스커버리 매니저(319)에 의해 식별되었다고 가정한다. 상기 언급된 바와 같이, 프로토콜 디스커버리 매니저(319)는 패밀리 식별들(예를 들면, ISO 14443 타입 A에 대해 RATS 명령, 및 ISO 14443 B에 대해 AFI, CID 번호들)에 기초하여 요구된 어플리케이션을 어플리케이션들 패밀리 중 하나로 식별할 수 있다. 이 경우에, 프로토콜 디스커버리 매니저(319)는 그 내부에 어플리케이션 디스커버리 매니저가 배치된 디폴트 실행 환경을 선택했고, 스위치를 구성하며 데이터를 어플리케이션 디스커버리 매니저(316)를 가지는 디폴트 실행 환경에 라우팅한다.
단계 503에서, 디폴트 실행 환경에서 동작하는 어플리케이션 디스커버리 매니저(316)는 외부 근거리 무선 통신 디바이스로부터 통신을 수신한다. 이러한 통신은 하나의 실시예에서, SELECT_APDU 명령을 포함할 수 있다.
단계 504에서, 어플리케이션 디스커버리 매니저(316)는 SELECT_APDU 명령에 대응하는 식별 파라미터들에 대해 레지스트리 테이블을 참조한다. 결정 505에서 결정되는 바와 같이 파라미터들이 존재하는 경우에, 양립가능한 근거리 무선 통신 어플리케이션이 존재한다. 파라미터들이 존재하지 않는 경우, 어플리케이션 디스커버리 매니저(316)는 단계 506에서 오류 응답을 외부 근거리 무선 통신 디바이스에 송신할 수 있다.
양립가능한 파라미터들이 존재하는 경우에, 어플리케이션 디스커버리 매니저(316)는 단계 507에서, 근거리 무선 통신 회로(216)가 근거리 무선 통신 회로 컨트롤러(301)를 통해 인에이블된 근거리 무선 통신 어플리케이션들과 연관된 파일 제어 정보를 송신하도록 유발한다. (어플리케이션 디스커버리 매니저(316)는 프로토콜 디스커버리 매니저(319)가 수신된 근거리 무선 통신 신호의 특성들을 검출하는 경우에 일부 어플리케이션들 또는 어플리케이션들의 패밀리들을 인에이블시킨다는 것을 기억하라.) 하나의 실시예에서, 파일 제어 정보는 적어도 인에이블된 근거리 무선 통신 어플리케이션들과 연관된 어플리케이션 식별자들의 리스트를 포함한다.
단계 508에서, 근거리 무선 통신 회로(216)는 외부 근거리 무선 통신 디바이스로부터 응답 명령을 수신하고, 이를 디폴트 실행 환경(307) 및 어플리케이션 디스커버리 매니저(316)에게 전달한다. 하나의 실시예에서, 리턴 명령은 인에이블된 어플리케이션들에 대응하는 어플리케이션 식별자들의 리스트로부터 선택된 어플리케이션 식별자를 식별한다.
단계 509에서, 어플리케이션 디스커버리 매니저(316)는 인에이블된 근거리 무선 어플리케이션들로부터 근거리 무선 통신 어플리케이션을 결정하거나 선택한다. 상기 설명된 바와 같이, 하나의 실시예에서, 이러한 선택은 레지스트리 테이블(319)에 기초한다. 이것은 단계 508의 리턴 명령에서 발견되는 어플리케이션 식별자에 기초하여 특정 근거리 무선 어플리케이션을 결정하도록 액세스된다. 또한, 선택된 근거리 무선 통신 어플리케이션이 어느 실행 환경에 상주하는지를 나타내는 실행 환경 식별자는 레지스트리 테이블(319)로부터 검색될 수 있다.
결정 510에서, 어플리케이션 디스커버리 매니저(316)는 선택된 근거리 무선 통신 어플리케이션이 그 실행 환경 또는 또 하나의 실행 환경에 상주하는지 여부를 결정한다. 선택된 근거리 무선 어플리케이션이 그 실행 환경 내에 상주하는 경우에, 어플리케이션 디스커버리 매니저(316)는 단계 513에서 근거리 무선 통신 어플리케이션을 런칭할 수 있다.
단계 511에서, 어플리케이션 디스커버리 매니저(316)는 포워딩 메시지를 그 메시지 포워딩 모듈(318)로부터, 선택된 근거리 무선 어플리케이션이 상주하는 실행 환경의 어플리케이션 매니저에게 송신한다. 하나의 실시예에서, 이러한 메시지는 디폴트 실행 환경으로부터 근거리 무선 통신 제어 회로를 통해 또 하나의 실행 환경 또는 보안 구성요소에 전송된다. 메시지는 특정 어플리케이션 또는 애플릿이 상주하는 다른 실행 환경의 물리적 식별자를 포함할 수 있다. 이러한 물리적 식별자는 트랜잭션 프로토콜의 실행을 다른 실행 환경 또는 보안 구성요소에게 포워딩하는데 이용될 수 있다.
일단 이러한 메시지가 라우팅되면, 어플리케이션 디스커버리 매니저(316)는 단계 512에서, 메시지에서 수신된 구성요소 식별자 및 로컬 레지스트리 테이블의 대응하는 식별자들에 기초하여, 데이터를 다른 실행 환경 또는 보안 구성요소로 라우팅하도록 스위치를 구성할 수 있다. 그리고나서, 어플리케이션 디스커버리 매니저(316)는 다른 실행 환경 또는 보안 구성요소를 초기화하여, 상기 설명된 절차에 따라, 또는 큰 초기화의 레이턴시 시간이 있는 경우에 적용될 수 있는 바와 같이 미리선택된 어플리케이션 우선권에 따라 특정 애플릿 또는 어플리케이션을 운용할 수 있다. 어플리케이션 디스커버리 매니저(316)는 라우팅 스위치(219)를 직접 구성하거나, 근거리 무선 통신 회로 컨트롤러(301)에게 지시하여 근거리 무선 통신 회로 컨트롤러(301)와 선택된 근거리 무선 통신 어플리케이션이 상주하는 실행 환경 사이에서 데이터 통신을 라우팅하도록 라우팅 스위치(219)를 구성한다. 이러한 스위치 구성은 데이터가 외부 근거리 무선 통신 디바이스로부터, 인에이블되고 런칭된 근거리 무선 통신 어플리케이션이 상주하는 실행 환경으로 흐를 수 있도록 허용한다.
이제, 도 6을 참조하면, 여기에 예시되어 있는 것은 본 발명의 실시예들에 따라 근거리 무선 통신 어플리케이션 선택에 대응하는 하나의 라우팅 흐름도이다. 도 6은 하나의 동작 예에 대한 신호 흐름도를 예시하고 있다. 이하의 예는 ISO 7816 표준에 의해 정의된 APDU 레벨에 기초하여 애플릿의 선택을 기재하고 있다.
액티비티 601에서, 근거리 무선 통신 회로(216)가 인에이블된다. 이것은 다양한 방식들로 발생할 수 있다. 예를 들면, 사용자는 사용자 인터페이스 상에서 아이콘을 선택함으로써 그의 모바일 디바이스의 근거리 무선 통신 회로 특징을 활성화시키도록 선택할 수 있다.
액티비티 602에서, 근거리 무선 통신 회로 컨트롤러(301)는 외부 근거리 무선 통신 디바이스(600)와 통신을 확립한다. 하나의 실시예에서, 이것은 SENS_RESP 메시지들을 교환함으로써 달성된다. 액티비티 603에서, 모드 스위치가 초기화된다. 유의할 점은, 모드 스위치 액티비티 레벨(321) 및 충돌 검출 레벨(322) 양쪽 모두가 초기화 동안에 어플리케이션 레지스트리(324)로부터 인에이블된 근거리 무선 통신 어플리케이션 식별 파라미터들을 이용한다는 점이다. 처리 프로토콜 동안에 어플리케이션 레지스트리(324)에 어떠한 인에이블된 식별 파라미터도 없는 경우에, 근거리 무선 통신 프로세스가 종료한다. 타입 A, B 또는 F와 같은 근거리 무선 통신 기술이 식별되는 경우에, 근거리 무선 통신 회로 컨트롤러(301)는 액티비티 604에서 대응하는 기술 명령 응답을 송신한다. 또한, 충돌 검출 레벨(322)인 다음 레벨에서, 근거리 무선 통신 회로 컨트롤러(301)는 카드 또는 피어-투-피어 타겟, PUPI, UID 번호와 같은 어플리케이션 식별자, 또는 APDU 또는 MAP 기반 애플릿들에 대한 패밀리 식별자, 등과 같은 타겟 식별로, 외부 근거리 무선 통신 디바이스(600)에 응답한다.
액티비티 605에서 송신된 외부 근거리 무선 통신 디바이스 단말기 SELECT_APDU 명령(ISO 7816 표준에 의해 지원됨)에 응답하여, 초기화된 디폴트 실행 환경(307), 및 더 구체적으로는 그 실행 환경(307)에서 운용되는 어플리케이션 디스커버리 매니저(316)는 액티비티 606에서 근거리 무선 통신 회로 컨트롤러(301)를 통해 파일 제어 정보를 송신한다. 하나의 실시예에서, 이러한 파일 제어 정보는 다양한 실행 환경들에 배치된 일부의 인에이블된 근거리 무선 어플리케이션들에 대응하는 어플리케이션 식별 번호들의 리스트를 포함한다.
리턴 시, 외부 근거리 무선 통신 디바이스(600)는 액티비티 607에서 ISO 7816/글로벌 플랫폼 APDU 명령 SELECT_APDU를 송신한다. 이러한 명령은 어플리케이션 식별자(application identifier: AID), 및 이것이 선택하기 원하는 인에이블된 어플리케이션을 고유하게 식별하는 파일 식별자(file identifier: FID)를 운반한다. 그리고나서, 어플리케이션 디스커버리 매니저(316)는 이에 응답하여 파일 제어 정보(file control information: FCI)를 송신한다. 이러한 식별자는 선택된 어플리케이션에 대한 정보를 제공하고, 그럼으로써 근거리 무선 통신 어플리케이션의 선택을 시그널링한다. SELECT_APDU 명령에 대한 FCI 응답은 선택된 어플리케이션에 대응하는 정보를 포함하는 동안에, 어플리케이션 디스커버리 매니저(316)가 관리할 수 있는 다른 어플리케이션들의 일부 AID를 또한 운반할 수 있다. FCI를 수신한 경우, 외부 근거리 무선 통신 디바이스(600)는 이러한 정보에 기초하여 또 하나의 어플리케이션을 선택할 수 있다. 이것이 적용되는 경우에, 이는 대안 어플리케이션의 AID를 가지는 새로운 SELECT_APDU 명령을 발행한다. 응답은 또한 FCI이다. 프로세스는 - 시스템의 구성에 따라 반복될 수 있다.
외부 근거리 무선 통신 디바이스가 수락가능한 어플리케이션 식별자를 찾을 수 없는 경우, 어플리케이션 디스커버리 매니저(316)는 트랜잭션을 종료시킬 것이다. 그러나, 근거리 무선 통신 어플리케이션이 선택되는 경우에, 어플리케이션 디스커버리 매니저(316)는 액티비티 608에서 어플리케이션의 할당을 위해 그 레지스트리 테이블(317)을 체크한다.
선택된 근거리 무선 통신 어플리케이션이 디폴트 실행 환경(307)에 상주하는 경우, 어플리케이션 디스커버리 매니저(316)는 어플리케이션을 런칭한다. 그러나, 선택된 근거리 무선 통신 어플리케이션이 또 하나의 실행 환경에 상주하는 경우에, 어플리케이션 디스커버리 매니저(316)는 액티비티 609에서 포워딩 메시지를 송신한다. 선택된 근거리 무선 통신 어플리케이션이 런칭되고, 트랜잭션은 액티비티 610에서 실행된다. 예를 들면, 트랜잭션이 지불 트랜잭션이고 선택된 근거리 무선 통신 어플리케이션이 가상 신용 카드인 경우, 지불 트랜잭션이 발생한다.
트랜잭션이 완료된 경우에, 액티비티 611에서 트랜잭션의 종료 메시지가 전송될 수 있다. 이것은 사용자 인터페이스(531)에게 트랜잭션이 완료된 것으로 통지하고, 선택적으로는 근거리 무선 통신 회로(216)를 턴오프할 있다.
요약하면, 디스커버리의 상위(어플리케이션) 레벨이 요구되지 않기 때문에, 선택의 프로토콜 레벨에서, 프로토콜 디스커버리 매니저(319)는 근거리 무선 통신 어플리케이션을 선택할 수 있다. 그러한 경우에, 프로토콜 디스커버리 매니저(319)는 데이터를 적절한 실행 환경으로 라우팅하도록 라우팅 스위치(219)를 더 구성할 수 있다. 그러나, 어플리케이션 레벨 디스커버리, 예를 들면 UID 번호, PUPI 번호 등에 기초한 디스커버리가 요구되는 경우에, 어플리케이션 디스커버리 매니저(316)는 디스커버리 프로세스를 수행한다. 그리고나서, 어플리케이션이 디폴트 실행 환경에 상주하는 경우에, 어플리케이션 디스커버리 매니저(316)는 선택된 어플리케이션을 런칭할 수 있다. 그렇지 않은 경우, 어플리케이션 디스커버리 매니저(316)는 메시지를 적절한 실행 환경에 송신할 수 있다.
상기 명세서에서, 본 발명의 특정 실시예들이 설명되었다. 그러나, 본 기술분야의 통상의 기술자들이라면, 이하의 청구항들에 제시된 본 발명의 범주에서 벗어나지 않고서도 다양한 변형들 및 변경들이 만들어질 수 있다는 것을 잘 알고 있을 것이다. 그러므로, 본 발명의 양호한 실시예들이 예시되고 기재되어 있지만, 본 발명은 그렇게 제한되지 않는다는 것은 자명하다. 이하의 청구항들에 의해 정의된 본 발명의 사상 및 범주에서 벗어나지 않고서도 본 기술분야의 숙련자들에게 다수의 변형들, 변경들, 변동들, 대체들 및 등가물들이 발생할 것이다. 따라서, 명세서 및 도면들은 제한적 의미라기보다는 예시적인 것으로 간주되어야 하고, 모든 그러한 변형들은 본 발명의 범주 내에 포함된다고 할 것이다. 잇점들, 장점들, 문제들에 대한 해결책들, 및 임의의 잇점, 장점 또는 해결책이 발생하거나 더 현저하게 되도록 야기하는 임의의 구성요소(들)는 임의의 하나 또는 모든 청구항들의 핵심적이고, 요구되거나 필수적인 특징들 또는 구성요소들로서 간주되어서는 안 된다.

Claims (19)

  1. 휴대용 전자 디바이스로서,
    근거리 무선 통신 회로(near field communication circuit) - 상기 근거리 무선 통신 회로는, 상기 근거리 무선 통신 회로와 함께 동작가능한 근거리 무선 통신 회로 컨트롤러를 구비함 -;
    하나 이상의 실행 환경들에 저장된 복수의 근거리 무선 통신 어플리케이션들 - 상기 복수의 근거리 무선 통신 어플리케이션들 각각은 상기 근거리 무선 통신 회로 컨트롤러와 함께 동작가능하고, 상기 복수의 근거리 무선 통신 어플리케이션들 중 적어도 하나는 디폴트 실행 환경 내에 저장됨 -; 및
    프로토콜 디스커버리 매니저 - 상기 프로토콜 디스커버리 매니저는, 상기 근거리 무선 통신 회로 컨트롤러와 함께 동작가능하고, 프로토콜 레벨, 근거리 무선 통신 기술 레벨, 및 충돌 검출 레벨에서 외부 근거리 무선 통신 디바이스와 연관된 근거리 무선 통신 기술을 식별하며 상기 근거리 무선 통신 기술에 기초하여 상기 디폴트 실행 환경을 선택하도록 구성됨 -
    를 포함하고,
    상기 디폴트 실행 환경은 상기 프로토콜 레벨, 상기 기술 레벨, 또는 상기 충돌 검출 레벨 이외의 레벨에서 상기 복수의 근거리 무선 통신 어플리케이션들 중 하나를 선택하도록 구성되는 어플리케이션 디스커버리 매니저를 포함하는 휴대용 전자 디바이스.
  2. 제1항에 있어서, 상기 어플리케이션 디스커버리 매니저는 어플리케이션 디스커버리 메시지를 상기 디폴트 실행 환경으로부터 상기 하나 이상의 실행 환경 중 다른 하나에 송신하도록 구성된 메시지-포워딩 모듈을 더 포함하는 휴대용 전자 디바이스.
  3. 제1항에 있어서, 상기 휴대용 전자 디바이스는, 상기 근거리 무선 통신 컨트롤러와 함께 동작가능하고, 상기 근거리 무선 통신 회로 컨트롤러와 상기 하나 이상의 실행 환경들 사이에서 데이터 통신을 선택적으로 라우팅하도록 구성된 인터페이스 스위치를 더 포함하는 휴대용 전자 디바이스.
  4. 제3항에 있어서, 상기 어플리케이션 디스커버리 매니저 및 상기 프로토콜 디스커버리 매니저는 각각 상기 근거리 무선 통신 회로 컨트롤러와, 상기 복수의 근거리 무선 통신 어플리케이션들 중 하나와 연관된 실행 환경 사이에서 데이터 통신을 라우팅하도록 상기 인터페이스 스위치에게 지시하기 위한 스위치 구성 메시지를 상기 근거리 무선 통신 회로 컨트롤러에게 송신하는 성능을 갖도록 구성된 휴대용 전자 디바이스.
  5. 제1항에 있어서, 상기 하나 이상의 실행 환경들의 각각은, 그 내부에 저장된 근거리 무선 통신 어플리케이션들의 실행을 관리하도록 구성된 어플리케이션 매니저를 포함하고, 상기 하나 이상의 실행 환경들 중 하나 내에 저장된 상기 어플리케이션 디스커버리 매니저는, 어플리케이션 디스커버리 포워딩 메시지를, 상기 하나 이상의 실행 환경들 중 적어도 하나의 다른 것의 어플리케이션 매니저에게 송신하도록 구성된 메시지 포워딩 모듈을 포함하는 휴대용 전자 디바이스.
  6. 제5항에 있어서, 상기 어플리케이션 디스커버리 매니저는 또한 상기 복수의 실행 환경들 내에 상주하는 상기 복수의 근거리 무선 통신 어플리케이션들의 레지스트리 테이블을 포함하고, 상기 레지스트리 테이블은 상기 복수의 근거리 무선 통신 어플리케이션들의 각각과 연관된 적어도 하나의 근거리 무선 통신 어플리케이션 식별자, 및 상기 하나 이상의 실행 환경들 중 또 다른 하나와 연관된 적어도 하나의 구성요소 식별자를 포함하는 휴대용 전자 디바이스.
  7. 제6항에 있어서, 상기 어플리케이션 디스커버리 포워딩 메시지는 상기 하나 이상의 실행 환경들 중 하나에 대응하는 적어도 하나의 구성요소 식별자를 포함하는 휴대용 전자 디바이스.
  8. 제7항에 있어서, 상기 어플리케이션 디스커버리 포워딩 메시지는 어플리케이션 디스커버리의 상태, 및 어플리케이션 디스커버리의 현재 레벨을 더 포함하는 휴대용 전자 디바이스.
  9. 제1항에 있어서, 상기 하나 이상의 실행 환경들은 복수의 보안 구성요소들을 포함하고, 상기 디폴트 실행 환경은 상기 복수의 보안 구성요소들 중 하나를 포함하며, 또한 상기 어플리케이션 디스커버리 매니저에 의해 발견가능한 근거리 무선 통신 어플리케이션들은 디폴트 보안 구성요소 내에 저장되어 있는 휴대용 전자 디바이스.
  10. 제9항에 있어서, 상기 프로토콜 디스커버리 매니저는 상기 복수의 보안 구성요소들 중 하나를 활성화시키도록 구성되며, 상기 어플리케이션 디스커버리 매니저는 상기 복수의 보안 구성요소들 중 적어도 또 하나를 활성화시키도록 구성된 휴대용 전자 디바이스.
  11. 근거리 무선 통신 성능들, 및 복수의 실행 환경에 저장된 복수의 근거리 무선 통신 어플리케이션들을 구비하는 휴대용 전자 디바이스에서, 하나 이상의 근거리 무선 통신 어플리케이션들을 자동으로 선택하기 위한 방법으로서,
    외부 근거리 무선 통신 디바이스를 검출하는 단계;
    프로토콜 레벨, 기술 레벨, 및 충돌방지 레벨에서 근거리 무선 통신 기술을 식별하는 단계;
    상기 근거리 무선 통신 어플리케이션 식별자에 기초하여, 어플리케이션 디스커버리 매니저 및 레지스트리 테이블이 저장되어 있는 디폴트 실행 환경을 선택하는 단계; 및
    상기 근거리 무선 통신 어플리케이션을 실행하는 단계
    를 포함하고,
    상기 어플리케이션 디스커버리 매니저는 상기 레지스트리 테이블에 저장된 어플리케이션 식별자를 참조함으로써 어플리케이션 레벨에서 근거리 무선 통신 어플리케이션을 식별하는, 하나 이상의 근거리 무선 통신 어플리케이션들을 자동으로 선택하는 방법.
  12. 제11항에 있어서,
    상기 복수의 실행 환경들은 복수의 보안 구성요소들을 포함하고,
    상기 근거리 무선 어플리케이션이 상주하는 보안 구성요소를 결정하도록 상기 레지스트리 테이블을 참조하는 단계를 더 포함하는, 하나 이상의 근거리 무선 통신 어플리케이션들을 자동으로 선택하는 방법.
  13. 제12항에 있어서, 인터페이스 스위치를 통해 상기 디폴트 실행 환경으로부터, 상기 근거리 무선 어플리케이션이 상주하는 상기 보안 구성요소로, 데이터 통신을 보내는 단계를 더 포함하는, 하나 이상의 근거리 무선 통신 어플리케이션들을 자동으로 선택하는 방법.
  14. 제13항에 있어서, 상기 근거리 무선 통신 어플리케이션이 상주하는 상기 보안 구성요소를 초기화하는 단계를 더 포함하는, 하나 이상의 근거리 무선 통신 어플리케이션들을 자동으로 선택하는 방법.
  15. 근거리 무선 통신 컨트롤러와 함께 동작가능한 디폴트 실행 환경에서, 하나 이상의 실행 환경들 내에 저장된 복수의 근거리 무선 통신 어플리케이션들로부터 근거리 무선 통신 어플리케이션을 선택하기 위한 방법으로서,
    상기 근거리 무선 통신 컨트롤러를 통해 상기 인에이블된 근거리 무선 통신 어플리케이션들과 연관된 파일 제어 정보를 송신하는 단계 - 상기 파일 제어 정보는 상기 인에이블된 근거리 무선 통신 어플리케이션들과 연관된 어플리케이션 식별자들의 리스트를 포함함 -;
    상기 어플리케이션 식별자들의 리스트로부터, 선택된 어플리케이션 식별자를 식별하는 명령을 수신하는 단계;
    레지스트리 테이블을 액세스함으로써, 상기 선택된 어플리케이션 식별자로부터 상기 근거리 무선 통신 어플리케이션을 결정하는 단계; 및
    상기 근거리 무선 통신 어플리케이션을 액튜에이팅(actuating)하는 단계, 또는 상기 선택된 어플리케이션 식별자에 대응하는 선택된 실행 환경에 어플리케이션 포워딩 메시지를 전송하는 단계 중 하나
    를 포함하는, 근거리 무선 통신 어플리케이션 선택 방법.
  16. 제15항에 있어서, 상기 어플리케이션 포워딩 메시지는 적어도 검출의 포워딩 레벨을 포함하고, 상기 검출의 포워딩 레벨은 프로토콜 레벨, 충돌방지 레벨, 전달 레벨, 및 어플리케이션 레벨로 구성된 그룹에서 선택되는, 근거리 무선 통신 어플리케이션 선택 방법.
  17. 제16항에 있어서, 상기 어플리케이션 포워딩 메시지는 레이어 검출 시퀀스의 상태의 표시자, 가장 최근에 수신된 명령 응답, 및 근거리 무선 통신 디바이스 식별자를 더 포함하는, 근거리 무선 통신 어플리케이션 선택 방법.
  18. 제15항에 있어서, 상기 근거리 무선 통신 회로 컨트롤러와 상기 선택된 실행 환경 사이에 데이터 통신을 라우팅하도록 스위치를 구성할 것을 상기 근거리 무선 통신 회로 컨트롤러에 지시하는 단계를 더 포함하는, 근거리 무선 통신 어플리케이션 선택 방법.
  19. 제15항에 있어서, 상기 근거리 무선 통신 어플리케이션을 결정하는 단계는 어플리케이션 레벨에서 발생하는, 근거리 무선 통신 어플리케이션 선택 방법.
KR1020107023960A 2008-03-27 2009-03-19 전자 디바이스에서 복수의 디스커버리 매니저들을 이용한 자동적인 어플리케이션 선택을 위한 방법 및 장치 KR101194509B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP08305073.2 2008-03-27
EP08305073.2A EP2106108B1 (en) 2008-03-27 2008-03-27 Method and apparatus for automatic application selection in an electronic device using multiple discovery managers
PCT/US2009/037607 WO2009120564A2 (en) 2008-03-27 2009-03-19 Method and apparatus for automatic application selection in an electronic device using multiple discovery managers

Publications (2)

Publication Number Publication Date
KR20110000666A true KR20110000666A (ko) 2011-01-04
KR101194509B1 KR101194509B1 (ko) 2012-10-25

Family

ID=39764910

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107023960A KR101194509B1 (ko) 2008-03-27 2009-03-19 전자 디바이스에서 복수의 디스커버리 매니저들을 이용한 자동적인 어플리케이션 선택을 위한 방법 및 장치

Country Status (7)

Country Link
US (1) US8229354B2 (ko)
EP (1) EP2106108B1 (ko)
KR (1) KR101194509B1 (ko)
CN (1) CN102047748B (ko)
ES (1) ES2436117T3 (ko)
RU (1) RU2489813C2 (ko)
WO (1) WO2009120564A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140068221A (ko) * 2011-09-23 2014-06-05 퀄컴 인코포레이티드 Nfcee 발견 프로세스를 개선하기 위한 방법들 및 장치
KR20160150608A (ko) * 2015-06-22 2016-12-30 오베르뛰르 테크놀로지스 수신 메시지로부터, 보안 요소에서 애플리케이션을 암시적 선택하는 개선된 방법 및 시스템

Families Citing this family (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2436117T3 (es) 2008-03-27 2013-12-27 Motorola Mobility Llc Método y aparato para la selección automática de aplicaciones en un dispositivo electrónico utilizando múltiples administradores de descubrimiento
ES2386164T3 (es) * 2008-03-27 2012-08-10 Motorola Mobility, Inc. Método y aparato para la selección automática de una aplicación de comunicación de campo cercano en un dispositivo electrónico
JP4609550B2 (ja) * 2008-08-20 2011-01-12 ソニー株式会社 通信装置、通信システム、通信方法及びプログラム
US8447669B2 (en) 2008-08-26 2013-05-21 Visa U.S.A. Inc. System and method for implementing financial assistance programs
US9572025B2 (en) * 2009-04-16 2017-02-14 Telefonaktiebolaget Lm Ericsson (Publ) Method, server, computer program and computer program product for communicating with secure element
IN2012DN01925A (ko) * 2009-12-04 2015-07-24 Ericsson Telefon Ab L M
JP5633730B2 (ja) * 2010-06-28 2014-12-03 ソニー株式会社 情報処理装置および方法、並びにプログラム
FR2962571B1 (fr) * 2010-07-08 2012-08-17 Inside Contactless Procede d'execution d'une application securisee dans un dispositif nfc
US8068011B1 (en) 2010-08-27 2011-11-29 Q Street, LLC System and method for interactive user-directed interfacing between handheld devices and RFID media
US20120124496A1 (en) 2010-10-20 2012-05-17 Mark Rose Geographic volume analytics apparatuses, methods and systems
US9390298B2 (en) * 2010-11-17 2016-07-12 Blackberry Limited Application routing configuration for NFC controller supporting multiple NFCEEs
JP5633336B2 (ja) * 2010-11-29 2014-12-03 ソニー株式会社 通信装置および通信方法、通信制御装置および通信制御方法、並びにプログラム
US9424002B2 (en) 2010-12-03 2016-08-23 Microsoft Technology Licensing, Llc Meta-application framework
US10204327B2 (en) 2011-02-05 2019-02-12 Visa International Service Association Merchant-consumer bridging platform apparatuses, methods and systems
WO2012109628A2 (en) 2011-02-10 2012-08-16 Visa International Service Assocation Electronic coupon issuance and redemption apparatuses, methods and systems
US10586227B2 (en) 2011-02-16 2020-03-10 Visa International Service Association Snap mobile payment apparatuses, methods and systems
AU2012217606A1 (en) 2011-02-16 2013-05-09 Visa International Service Association Snap mobile payment apparatuses, methods and systems
WO2012116125A1 (en) 2011-02-22 2012-08-30 Visa International Service Association Universal electronic payment apparatuses, methods and systems
WO2012118870A1 (en) 2011-02-28 2012-09-07 Visa International Service Association Secure anonymous transaction apparatuses, methods and systems
US9996838B2 (en) 2011-03-04 2018-06-12 Visa International Service Association Cloud service facilitator apparatuses, methods and systems
US9575777B2 (en) * 2011-03-08 2017-02-21 Sony Corporation Information processing device for performing contactless communication with an external device using multiple communication standards
US20120238206A1 (en) * 2011-03-14 2012-09-20 Research In Motion Limited Communications device providing near field communication (nfc) secure element disabling features related methods
WO2012155081A1 (en) 2011-05-11 2012-11-15 Visa International Service Association Electronic receipt manager apparatuses, methods and systems
US8998076B2 (en) 2011-06-03 2015-04-07 Arthur Chang Establishing connections among electronic devices
EP2715633A4 (en) 2011-06-03 2014-12-17 Visa Int Service Ass APPARATUSES, METHODS, AND SYSTEMS FOR SELECTING VIRTUAL PORTFOLIO CARD
US8538845B2 (en) 2011-06-03 2013-09-17 Mozido, Llc Monetary transaction system
US20120329388A1 (en) * 2011-06-27 2012-12-27 Broadcom Corporation NFC-Enabled Devices to Store and Retrieve Portable Application-Specific Personal Information for Use with Computational Platforms
US9582598B2 (en) 2011-07-05 2017-02-28 Visa International Service Association Hybrid applications utilizing distributed models and views apparatuses, methods and systems
AU2012278963B2 (en) 2011-07-05 2017-02-23 Visa International Service Association Electronic wallet checkout platform apparatuses, methods and systems
US9355393B2 (en) 2011-08-18 2016-05-31 Visa International Service Association Multi-directional wallet connector apparatuses, methods and systems
US10438176B2 (en) 2011-07-17 2019-10-08 Visa International Service Association Multiple merchant payment processor platform apparatuses, methods and systems
US9710807B2 (en) 2011-08-18 2017-07-18 Visa International Service Association Third-party value added wallet features and interfaces apparatuses, methods and systems
US10318941B2 (en) 2011-12-13 2019-06-11 Visa International Service Association Payment platform interface widget generation apparatuses, methods and systems
US10825001B2 (en) 2011-08-18 2020-11-03 Visa International Service Association Multi-directional wallet connector apparatuses, methods and systems
US10242358B2 (en) 2011-08-18 2019-03-26 Visa International Service Association Remote decoupled application persistent state apparatuses, methods and systems
US9117225B2 (en) 2011-09-16 2015-08-25 Visa International Service Association Apparatuses, methods and systems for transforming user infrastructure requests inputs to infrastructure design product and infrastructure allocation outputs
US10223730B2 (en) 2011-09-23 2019-03-05 Visa International Service Association E-wallet store injection search apparatuses, methods and systems
EP2584769B1 (en) * 2011-10-21 2020-04-01 BlackBerry Limited Mobile communications device providing NFC applet compatibility features and related methods
EP2590107B1 (en) * 2011-11-03 2019-08-21 STMicroelectronics Application GmbH Method of managing incoming commands related to contactless applications within a wireless apparatus such as a NFC enabled mobile phone
US10438196B2 (en) 2011-11-21 2019-10-08 Mozido, Inc. Using a mobile wallet infrastructure to support multiple mobile wallet providers
US9208488B2 (en) 2011-11-21 2015-12-08 Mozido, Inc. Using a mobile wallet infrastructure to support multiple mobile wallet providers
US9953378B2 (en) 2012-04-27 2018-04-24 Visa International Service Association Social checkout widget generation and integration apparatuses, methods and systems
WO2013090611A2 (en) 2011-12-13 2013-06-20 Visa International Service Association Dynamic widget generator apparatuses, methods and systems
US10223710B2 (en) 2013-01-04 2019-03-05 Visa International Service Association Wearable intelligent vision device apparatuses, methods and systems
US10262148B2 (en) 2012-01-09 2019-04-16 Visa International Service Association Secure dynamic page content and layouts apparatuses, methods and systems
US11308227B2 (en) 2012-01-09 2022-04-19 Visa International Service Association Secure dynamic page content and layouts apparatuses, methods and systems
AU2013214801B2 (en) 2012-02-02 2018-06-21 Visa International Service Association Multi-source, multi-dimensional, cross-entity, multimedia database platform apparatuses, methods and systems
US8896868B2 (en) 2012-02-08 2014-11-25 Toshiba Tec Kabushiki Kaisha Mobile device implementing near field communication to print with multifunction peripheral device
DE102012102383A1 (de) * 2012-03-21 2013-09-26 Infineon Technologies Ag Steuerungsverfahren mittels Weiterleitung für eine Kommunikation zwischen elektronischen Geräten, und entsprechende Geräte
DE102012102381A1 (de) * 2012-03-21 2013-09-26 Infineon Technologies Ag Steuerungsverfahren mit gezielter Stummschaltung für eine Kommunikation zwischen elektronischen Geräten, und entsprechende Geräte
DE102012102382B4 (de) * 2012-03-21 2019-05-02 Infineon Technologies Ag Steuerungsverfahren für eine Kommunikation zwischen elektronischen Geräten und entsprechende Geräte
EP2648386B1 (en) * 2012-04-08 2021-08-25 Samsung Electronics Co., Ltd. Management Server and Method for Controlling Device, User Terminal Apparatus and Method for Controlling Device, and User Terminal Apparatus and Control Method Thereof
EP2677790B8 (en) * 2012-06-21 2019-03-27 Telefonaktiebolaget LM Ericsson (publ) NFC system comprising a plurality of secure elements
CN102811376B (zh) * 2012-07-04 2016-06-22 深圳Tcl新技术有限公司 激活电视机应用的方法、系统和电视机
CN103532913B (zh) * 2012-07-05 2016-12-07 中国银联股份有限公司 安全性信息交互装置和方法
KR101421568B1 (ko) 2012-07-27 2014-07-22 주식회사 케이티 스마트카드, 스마트카드 서비스 단말 및 스마트카드 서비스 방법
US8706081B1 (en) 2012-12-18 2014-04-22 Google Inc. Packet inspection in near field communication controller for secure element protection
KR20140097832A (ko) 2013-01-30 2014-08-07 주식회사 케이티 가상 카드를 물리적 카드로 생성 및 만료하는 장치
US9069770B2 (en) 2013-02-12 2015-06-30 Adidas Ag Method of providing digital content for users of physical items
EP2816825B1 (en) 2013-02-13 2019-04-24 Nxp B.V. NFC-enabled Mobile Device, NFC reader and NFC system for Supporting a Plurality of Proximity Services
KR20140103210A (ko) 2013-02-14 2014-08-26 주식회사 케이티 주거래 결제수단 설정 장치 및 방법
KR101546410B1 (ko) * 2013-02-20 2015-08-25 주식회사 케이티 전자 쿠폰 관리 장치 및 방법
EP2775739B1 (en) 2013-03-05 2018-06-13 Nxp B.V. Near-field communications and routing
US9781598B2 (en) 2013-03-15 2017-10-03 Tyfone, Inc. Personal digital identity device with fingerprint sensor responsive to user interaction
US9436165B2 (en) 2013-03-15 2016-09-06 Tyfone, Inc. Personal digital identity device with motion sensor responsive to user interaction
US9231945B2 (en) 2013-03-15 2016-01-05 Tyfone, Inc. Personal digital identity device with motion sensor
US9086689B2 (en) 2013-03-15 2015-07-21 Tyfone, Inc. Configurable personal digital identity device with imager responsive to user interaction
US9183371B2 (en) 2013-03-15 2015-11-10 Tyfone, Inc. Personal digital identity device with microphone
US9319881B2 (en) 2013-03-15 2016-04-19 Tyfone, Inc. Personal digital identity device with fingerprint sensor
US9215592B2 (en) 2013-03-15 2015-12-15 Tyfone, Inc. Configurable personal digital identity device responsive to user interaction
US9207650B2 (en) 2013-03-15 2015-12-08 Tyfone, Inc. Configurable personal digital identity device responsive to user interaction with user authentication factor captured in mobile device
US9154500B2 (en) * 2013-03-15 2015-10-06 Tyfone, Inc. Personal digital identity device with microphone responsive to user interaction
US9143938B2 (en) 2013-03-15 2015-09-22 Tyfone, Inc. Personal digital identity device responsive to user interaction
US9448543B2 (en) 2013-03-15 2016-09-20 Tyfone, Inc. Configurable personal digital identity device with motion sensor responsive to user interaction
US20140266606A1 (en) * 2013-03-15 2014-09-18 Tyfone, Inc. Configurable personal digital identity device with microphone responsive to user interaction
CN104077155B (zh) 2013-03-28 2018-09-21 中国银联股份有限公司 移动设备上应用程序的启动
FR3004884B1 (fr) * 2013-04-17 2016-09-09 Oberthur Technologies Element securise pour terminal de telecommunications
US9100059B2 (en) 2013-05-07 2015-08-04 Xerox Corporation System and method for mapping multiple applications to a single NFC tag
EP2824628A1 (en) * 2013-07-10 2015-01-14 Vodafone Holding GmbH Direct debit procedure
CN103457641B (zh) * 2013-07-19 2015-08-12 金硕澳门离岸商业服务有限公司 多功能nfc实现方法和装置
BR112016005760B1 (pt) 2013-09-18 2023-10-24 Telefonaktiebolaget Lm Ericsson (Publ) Métodos para processamento e difusão de pacotes sem fio, e,primeiro e segundo dispositivos de comunicação sem fio
US9948752B2 (en) * 2015-02-02 2018-04-17 Stmicroelectronics International N.V. Default data packet routing in a NFC device
US11216468B2 (en) 2015-02-08 2022-01-04 Visa International Service Association Converged merchant processing apparatuses, methods and systems
SG11201605005YA (en) 2015-02-20 2016-09-29 Samsung Pay Inc Detachable electronic payment device
US9965604B2 (en) 2015-09-10 2018-05-08 Microsoft Technology Licensing, Llc De-duplication of per-user registration data
US10069940B2 (en) 2015-09-10 2018-09-04 Microsoft Technology Licensing, Llc Deployment meta-data based applicability targetting
EP3425815A4 (en) * 2016-03-28 2019-03-06 Huawei Technologies Co., Ltd. METHOD FOR PROCESSING DATA FRAME ROUTING, CLOSING COMMUNICATION CONTROL DEVICE AND END DEVICE
WO2018198813A1 (ja) * 2017-04-28 2018-11-01 ソニー株式会社 通信装置および方法
US10795527B1 (en) * 2019-04-26 2020-10-06 Capital One Services, Llc Systems and methods configured to provide the improved real time user experience involving mobile computing devices, a back-end server and NFC-coupled interactive posters including encryption, network operation and/or other features
KR20210069321A (ko) * 2019-12-03 2021-06-11 삼성전자주식회사 전자 장치 및 근거리 무선 통신을 기반하여 제품 확인하는 방법
CN112906409A (zh) * 2019-12-03 2021-06-04 宇龙计算机通信科技(深圳)有限公司 Nfc卡的切换方法、装置、存储介质和电子设备

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19509517C1 (de) 1995-03-20 1996-10-10 Angewandte Digital Elektronik Vorrichtung, bestehend aus mindestens einem Kartenendgerät zur Übertragung von Energie zu einer Chipkarte und zum Datenaustausch mit der Chipkarte über elektromagnetische Wellen
US6852031B1 (en) * 2000-11-22 2005-02-08 Igt EZ pay smart card and tickets system
EP1516269B1 (en) * 2002-06-26 2009-09-30 Nokia Corporation System, apparatus, and method for effecting network connections via wireless devices using radio frequency identification
KR20060105425A (ko) 2003-10-20 2006-10-11 마쯔시다덴기산교 가부시키가이샤 비접촉식 ic 카드
CZ14415U1 (cs) * 2003-12-29 2004-06-07 Tůmaáeduard Systém pro čtení a vyhodnocování identifikačních prvků
CN1914823A (zh) * 2004-01-27 2007-02-14 阿尔特维拉有限公司 诊断性无线射频识别传感器及其应用
JP2006135674A (ja) 2004-11-05 2006-05-25 Ntt Docomo Inc 移動通信用受信装置、移動通信用送信装置、移動通信用受信方法、および、移動通信用送信方法
KR100603612B1 (ko) * 2004-12-20 2006-07-24 한국전자통신연구원 멀티프로토콜 기반의 이기종 리더 지원을 위한 전파식별리더 인터페이스 및 이벤트 관리 장치 및 그 방법
EP1872564B1 (en) * 2005-04-19 2010-05-05 Nokia Corporation Method, device and system for controlling application launching in a mobile terminal device
JP4435076B2 (ja) * 2005-11-18 2010-03-17 フェリカネットワークス株式会社 携帯端末,データ通信方法,およびコンピュータプログラム
US20070131759A1 (en) 2005-12-14 2007-06-14 Cox Mark A Smartcard and magnetic stripe emulator with biometric authentication
GB0525635D0 (en) 2005-12-16 2006-01-25 Innovision Res & Tech Plc Chip card and method of data communication
EP1855229B1 (fr) 2006-05-10 2010-08-11 Inside Contactless Procédé de routage de données sortantes et entrantes dans un chipset NFC
US7775442B2 (en) 2006-07-12 2010-08-17 Nokia Corporation Method for accessing after-operation information of secure element applications
JP4462341B2 (ja) * 2007-12-18 2010-05-12 ソニー株式会社 情報処理装置および方法、並びにプログラム
ES2436117T3 (es) 2008-03-27 2013-12-27 Motorola Mobility Llc Método y aparato para la selección automática de aplicaciones en un dispositivo electrónico utilizando múltiples administradores de descubrimiento
ES2386164T3 (es) * 2008-03-27 2012-08-10 Motorola Mobility, Inc. Método y aparato para la selección automática de una aplicación de comunicación de campo cercano en un dispositivo electrónico
US20100222000A1 (en) * 2009-02-27 2010-09-02 Research In Motion Limited Methods And Apparatus For Use In Selectively Retrieving And Displaying User Interface Information Of A Wireless Peripheral Device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140068221A (ko) * 2011-09-23 2014-06-05 퀄컴 인코포레이티드 Nfcee 발견 프로세스를 개선하기 위한 방법들 및 장치
US9326222B2 (en) 2011-09-23 2016-04-26 Qualcomm Incorporated Methods and apparatus for improving a NFCEE discovery process
KR20160150608A (ko) * 2015-06-22 2016-12-30 오베르뛰르 테크놀로지스 수신 메시지로부터, 보안 요소에서 애플리케이션을 암시적 선택하는 개선된 방법 및 시스템

Also Published As

Publication number Publication date
CN102047748B (zh) 2015-06-03
WO2009120564A2 (en) 2009-10-01
US8229354B2 (en) 2012-07-24
RU2489813C2 (ru) 2013-08-10
EP2106108A1 (en) 2009-09-30
EP2106108B1 (en) 2013-08-21
KR101194509B1 (ko) 2012-10-25
CN102047748A (zh) 2011-05-04
ES2436117T3 (es) 2013-12-27
RU2010143856A (ru) 2012-05-10
WO2009120564A3 (en) 2010-01-07
US20090247078A1 (en) 2009-10-01

Similar Documents

Publication Publication Date Title
KR101194509B1 (ko) 전자 디바이스에서 복수의 디스커버리 매니저들을 이용한 자동적인 어플리케이션 선택을 위한 방법 및 장치
US8060012B2 (en) Method and apparatus for automatic near field communication application selection in an electronic device
EP2296292B1 (en) A near field communication device
KR101389208B1 (ko) 전자 장치에서 데이터 통신
EP2294534B1 (en) A method for application selection in a wireless mobile communication device in an nfc system and a corresponding wireless mobile communication device
CN114781415A (zh) 自动选择nfc模拟卡的方法、电子设备及通信系统
EP2221984A1 (en) Wireless communication device for providing at least one near field communication service
CN112069848B (zh) 用于nfc卡模拟模式的选卡方法、芯片、终端和存储介质
WO2010103414A1 (en) Method for transmitting an nfc application and computer device
CN117494746A (zh) 一种模拟卡的切换方法、电子设备和通信系统
CN113965228B (zh) 扩展nfc卡模拟功能的方法、nfc扩展设备和nfc终端
US11652512B2 (en) Fast NFC processing
US9600695B2 (en) Apparatus and method for providing data transmission/reception in a terminal using near field communication
KR20140142996A (ko) 복수의 시큐어 엘리먼트에 구비된 애플릿의 데이터 처리 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20151006

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161011

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20171012

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20181010

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20191008

Year of fee payment: 8