CN109492444B - 用于在移动电话中实施主机卡模拟命令堆栈的系统和方法 - Google Patents

用于在移动电话中实施主机卡模拟命令堆栈的系统和方法 Download PDF

Info

Publication number
CN109492444B
CN109492444B CN201810999768.2A CN201810999768A CN109492444B CN 109492444 B CN109492444 B CN 109492444B CN 201810999768 A CN201810999768 A CN 201810999768A CN 109492444 B CN109492444 B CN 109492444B
Authority
CN
China
Prior art keywords
command
apdu
hce
response
stack
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.)
Active
Application number
CN201810999768.2A
Other languages
English (en)
Other versions
CN109492444A (zh
Inventor
简·胡格布鲁格
威赫穆斯·P·A·J·米歇尔
乔普·威廉·波斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NXP BV
Original Assignee
NXP BV
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 NXP BV filed Critical NXP BV
Publication of CN109492444A publication Critical patent/CN109492444A/zh
Application granted granted Critical
Publication of CN109492444B publication Critical patent/CN109492444B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10009Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
    • G06K7/10297Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves arrangements for handling protocols designed for non-contact record carriers such as RFIDs NFCs, e.g. ISO/IEC 14443 and 18092
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/0723Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips the record carrier comprising an arrangement for non-contact communication, e.g. wireless communication circuits on transponder cards, non-contact smart cards or RFIDs
    • G06K19/0725Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips the record carrier comprising an arrangement for non-contact communication, e.g. wireless communication circuits on transponder cards, non-contact smart cards or RFIDs the arrangement being a circuit for emulating a plurality of record carriers, e.g. a single RFID tag capable of representing itself to a reader as a cloud of RFID tags
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/327Short range or proximity payments by means of M-devices
    • G06Q20/3278RFID or NFC payments by means of M-devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B5/00Near-field transmission systems, e.g. inductive or capacitive transmission systems
    • H04B5/70Near-field transmission systems, e.g. inductive or capacitive transmission systems specially adapted for specific purposes
    • H04B5/72Near-field transmission systems, e.g. inductive or capacitive transmission systems specially adapted for specific purposes for local intradevice communication
    • 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/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/04Details of telephonic subscriber devices including near field communication means, e.g. RFID

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Toxicology (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Business, Economics & Management (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • Computer Security & Cryptography (AREA)
  • Medical Informatics (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Telephonic Communication Services (AREA)
  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

提供一种用于在远程近场通信(NFC)装置中实施主机卡模拟(HCE)服务的方法。在所述方法中,在所述远程NFC装置处从NFC读取器接收第一命令应用程序协议数据单元(APDU)。计算对所述第一命令APDU的第一响应。预测来自所述NFC读取器的第二命令APDU,所述第二命令APDU可能在从所述NFC读取器接收到所述第一命令APDU之后被接收。计算对所述预测的第二命令APDU的第二响应。从所述NFC读取器接收第三命令APDU。确定所述第二命令APDU的所述预测是否匹配于所述第三命令APDU。如果所述第二和第三命令APDU匹配,那么所述计算出的第二响应被直接发送到所述NFC读取器,而不必遍历NFC堆栈。

Description

用于在移动电话中实施主机卡模拟命令堆栈的系统和方法
技术领域
本公开大体上涉及主机卡模拟(host card emulation;HCE),并且更具体来说,涉及用于在移动电话中实施HCE命令堆栈的系统和方法。
背景技术
基于近场通信(near field communication;NFC)的非接触式智能卡通常用于支付、建筑物门禁、交通应用等等。一些基于安卓的移动电话和其它装置提供被称作主机卡模拟(HCE)的NFC功能,其允许移动电话充当智能卡以用于各种应用。HCE处理指令堆栈中的命令。所述命令通过例如移动电话接收,且被移动电话上的用户应用程序处理。这通过包括在NFC读取器与移动电话中的HCE服务之间交换的应用程序层面包的命令APDU(ApplicationProtocol Data Unit;应用程序协议数据单元)来完成。移动电话接收和执行命令,且随后借助NFC场将响应APDU命令发送回读取器。通常命令序列由10到20条命令和响应构成。
HCE的一个问题是接收命令APDU、处理命令和提供回到NFC读取器的响应可能耗费大量时间。每次接收到命令APDU时,命令APDU在堆栈中从NFC控制器向上移动到应用程序。应用程序计算响应,然后所述响应在堆栈中向下遍历回NFC控制器。以“向上”(命令)和“向下”(响应)方向遍历HCE软件堆栈的时间占据了执行命令所花费的时间。遍历HCE堆栈需要很长时间的一个原因是由于提供安全系统所必需的上下文切换。
命令的执行时间越长,用户就需要将移动电话对着NFC读取器保持越长时间以成功执行交易。较长执行时间对于用户可能是不便的。
因此,需要一种减少命令和响应遍历HCE堆栈的执行时间的方法。
发明内容
根据实施例,提供一种用于在远程近场通信(NFC)装置中实施主机卡模拟(HCE)服务的方法,所述方法包括:在所述远程NFC装置处从NFC读取器接收第一命令应用程序协议数据单元(APDU);计算对所述第一命令APDU的第一响应;预测来自所述NFC读取器的第二命令APDU,所述第二命令APDU可能在接收到所述第一命令APDU之后被接收;计算对所述第二命令APDU的第二响应;从所述NFC读取器接收第三命令APDU;以及确定所述第二命令APDU的所述预测是否匹配于所述第三命令APDU。预测第二命令APDU可以还包括预测可能在接收到所述第一命令APDU之后接收的一系列命令APDU。计算对所述第二命令APDU的响应可以还包括计算对所述预测的一系列命令APDU中的每一个的响应。所述方法可以还包括在HCE堆栈底部处的预测队列中存储所述预测的第二命令APDU和对所述第二命令APDU的所述响应。确定所述第二命令APDU的所述预测是否匹配于所述第三命令APDU可以还包括确定所述第二命令APDU并不匹配所述第三命令APDU且清空所述预测队列。确定所述第二命令APDU的所述预测是否匹配于所述第三命令APDU可以还包括确定所述预测确实匹配,且响应于所述匹配,将所述第二响应发送到所述NFC读取器。所述方法可以还包括基于数个正确地预测的命令,确定所述远程NFC装置的处理状态。远程NFC装置可以被表征为移动电话。所述方法可以用于在所述远程NFC装置上实施门禁应用程序、交通应用程序或支付应用程序。预测所述第二命令APDU可以还包括使用学习算法预测所述第二命令APDU,所述学习算法至少部分地基于所述下一个可能的命令APDU已被所述远程NFC装置接收的次数来预测下一个可能的命令APDU。
在另一个实施例中,提供一种用于在远程近场通信(NFC)装置中实施主机卡模拟(HCE)服务的方法,所述方法包括:在所述远程NFC装置处从NFC读取器接收第一命令应用程序协议数据单元(APDU);计算对所述第一命令APDU的第一响应;预测可能被确定为下一个从所述NFC读取器接收的命令的命令APDU;计算对所述预测的命令APDU的响应;在所述远程NFC装置的HCE堆栈的底层处的预测的命令/响应队列中保存所述预测的命令APDU和对所述预测的命令APDU的所述响应;从所述NFC读取器接收第二命令APDU;以及比较所述预测的命令APDU与所述第二命令APDU。预测第二命令APDU可以还包括预测可能在接收到所述第二命令APDU之后接收的一系列命令APDU。计算对所述预测的命令APDU的响应可以还包括计算对所述预测的一系列命令APDU中的每一个的响应。所述方法可以还包括确定所述预测的命令APDU并不匹配所述第二命令APDU,且清空所述预测的命令/响应队列。所述方法可以还包括确定所述预测的命令APDU匹配于所述第二命令APDU,且将所述计算出的响应发送到所述NFC读取器。所述方法可以还包括基于数个正确地预测的命令,确定所述远程NFC装置的处理状态。远程NFC装置可以被表征为移动电话。所述方法可以用于在所述远程NFC装置上实施门禁应用程序、交通应用程序或支付应用程序。预测所述命令APDU可以还包括使用学习算法预测所述命令APDU,所述学习算法至少部分地基于命令APDU先前已被所述远程NFC装置接收的次数来预测下一个可能的命令APDU。所述方法可以被实施在用于移动电话的操作系统中。
在又一实施例中,提供一种具有主机卡模拟(HCE)服务的远程近场通信(NFC)系统,所述系统包括:用于与NFC读取器无线通信的NFC控制器,所述NFC控制器接收命令应用程序协议数据单元(APDU)且将计算出的对所述命令APDU的响应发送到所述NFC读取器;以及HCE堆栈,来自所述NFC控制器的所述接收的命令从所述HCE堆栈的底部遍历所述HCE堆栈到所述HCE堆栈的顶部,以被提供给用户应用程序,所述用户应用程序借助所述HCE堆栈接收所述命令APDU,所述用户应用程序计算对所述命令APDU的所述响应,所述响应从上到下遍历所述HCE堆栈,所述用户应用程序预测下一个被所述NFC控制器接收的命令且计算对所述预测的命令的响应,所述计算出的响应被直接提供到所述NFC读取器而不用遍历所述HCE堆栈。
本发明的这些和其它方面将根据下文中所描述的实施例显而易见,且参考这些实施例予以阐明。
附图说明
本发明借助于例子示出并且不受附图的限制,在附图中的类似标记指示类似元件。为简单和清晰起见,示出图中的元件,并且这些元件未必按比例绘制。
图1示出根据实施例的用于在移动电话中实施HCE服务的系统。
图2示出根据实施例的用于在移动电话中实施HCE服务的方法。
具体实施方式
一般来说,提供一种用于减少远程NFC装置的HCE命令堆栈中的遍历次数的方法。所述方法预测下一个命令,且计算对预测的下一个命令的响应,使得在预测正确时响应已经就绪。预测的下一个命令和计算出的响应被保存在HCE命令堆栈的底层中的预测队列中,以便准备好直接被提供给NFC读取器,而无需通过HCE命令堆栈向上发送命令然后通过堆栈向下发回响应。学习算法被用于确定预测。可以预先计算对预测的命令序列的数个响应,并准备好将其发送到NFC读取器。
所公开的预测系统和方法减少了HCE命令堆栈中的命令序列的执行时间,因此减少了处理例如支付交易所需的时间。这提高例如移动电话等远程NFC装置的功能性。
图1示出根据实施例的用于在移动电话中实施HCE服务的系统10。系统10包括用户应用程序12、HCE命令堆栈14、校验区块15、预测队列16,和NFC控制器18。用户应用程序12包括预测器区块22、处理状态24,和响应计算机26。系统10被示出为与NFC读取器20处于无线NFC通信。在主中央处理单元(central processing unit;CPU)上运行的应用程序,诸如应用程序12,被用于提供所需的功能性。响应于NFC控制器10与NFC读取器20之间的NFC通信,可以调用应用程序。HCE命令堆栈14为软件架构,其允许具有NFC的电子装置,例如运行安卓(Android)操作系统的支持NFC移动电话模拟智能卡,以供用于安全门禁、支付,或交通应用程序。HCE命令堆栈包括一系列指令,每次从NFC读取器20接收命令时都需要遍历这些指令。当应用程序12被激活时,如图1中所示,来自NFC读取器20的命令从下到上遍历HCE堆栈14。NFC控制器18从NFC读取器20接收命令,且这些命令从“HCE堆栈底部”遍历HCE堆栈14到“HCE堆栈顶部”。由应用程序12中的响应计算机26计算对命令的响应。用于响应的堆栈遍历开始于“HCE堆栈的顶部”并且前进到“HCE堆栈的底部”到NFC控制器,其中响应被发送到NFC读取器20。
命令和对命令的响应可能需要耗费大量时间来遍历堆栈。为了减小命令和响应遍历堆栈所需的时间,当NFC控制器18接收命令时,除计算对所述命令的响应以外,应用程序12的预测器22还作出对下一个命令将是什么的预测。随后使用响应计算机26计算对下一个命令的响应。为预测下一个命令,可使用学习算法。在执行当前命令以产生响应之后,可以预测下一个命令,且可以预计算对预测命令的响应。可以重复预测以产生一系列命令预测,直到学习算法不再能确定接下来是哪个命令。具有用于包括用于计算和预测的函数的HCE的新API(应用程序编程接口;application program interface)的处理函数可以是:
其中c是从NFC读取器20接收的命令APDU,而r是对接收的命令的响应。命令c1...cn是预测的命令APDU。响应r1...rn是计算出的对预测的命令的响应。参数i是正确地预测的命令APDU的数目。在系统10中,所有预测的命令APDU和其计算出的响应将在一个步骤中在堆栈中向下从上到下遍历。预测的命令APDU和相应的响应将保存在堆栈14底部的底层中的预测队列16中。响应r可能随后被直接发送到NFC读取器20,而不必遍历HCE堆栈14。交替地,预测的命令和响应可以被存储在NFC控制器18中,而不是在HCE堆栈14底部中的底层中。当下一个来自NFC读取器20的传入命令APDU匹配于预测命令c1时,NFC控制器18或处理传入命令的中断处理程序(未示出)将直接复位对应响应r1。所述预测对于这一命令APDU节省了遍历HCE命令堆栈14的时间。类似地,如果来自NFC读取器20的下一个命令APDU是预测的命令c2,那么传回响应r2而不用遍历整个堆栈。重复此操作直到处理完所有命令响应或直到接收到预测错误的命令。如果命令被错误预测,那么预测队列16被清空或排空,且开始新的一系列预测。
正确地预测的命令APDU的参数i被传递给处理函数。预测器22使用参数i来确定哪个内部状态继续执行命令APDU c。在先前的过程函数调用中执行命令APDU ci之后,应该使用应用程序12的状态。可以预期,对于典型的命令序列,在执行命令APDU之后可以正确地预测3到8个命令APDU。这将HCE堆栈的遍历次数减少相同的量,从而对执行时间产生显著影响。
图2示出根据实施例的用于在移动电话中实施HCE服务的方法40。方法40开始于步骤42。在步骤42,在移动电话处从NFC读取器接收第一命令APDU。在步骤44,使用响应计算机26计算对第一命令APDU的第一响应。在步骤46,预测可能是下一个从NFC读取器20接收的命令APDU的命令APDU。在步骤48,计算对预测的命令APDU的响应。在步骤50,预测的命令APDU被保存在HCE堆栈14的底部处的底层中的队列16中。在步骤52,从NFC读取器52接收第二命令APUD。在步骤54,预测的命令APDU被与第二命令APDU比较。在决策步骤56处,确定第二命令是否匹配于预测命令。如果否,那么取NO路径进入步骤60。在步骤60,因为预测不正确,所以预测队列16被清空。如果在决策步骤56处预测的命令与第二命令匹配,那么取YES路径到步骤62。在步骤62,将计算出的对正确预测的命令APDU的响应发送到NFC读取器20。
各种实施例或实施例的一部分可以实施成硬件或实施成非暂时性机器可读存储介质上的指令,所述媒体包括用于以例如个人计算机、笔记本电脑、文件服务器、智能移动电话或其它计算装置的机器可读的形式存储信息的任何机制。非暂时性机器可读存储媒体可包括易失性和非易失性存储器,例如只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁盘存储媒体、光学存储媒体、闪存存储器等等。非暂时性机器可读存储媒体不包括暂时性信号。
虽然本文中参考具体实施例描述了本发明,但是可以在不脱离如所附权利要求书中所阐述的本发明的范围的情况下进行各种修改和改变。因此,说明书和图式应视为说明性而不是限制性意义,并且预期所有这些修改都包括在本发明的范围内。本文中对于具体实施例描述的任何优势、优点或问题解决方案并不意图被理解为任何或全部权利要求的重要的、需要的或基本特征或元素。
此外,如本文中所使用,术语“一(a或an)”被限定为一个或超过一个。而且,权利要求书中例如“至少一个”和“一个或多个”等介绍性短语的使用不应被解释为暗示由不定冠词“一”导入的另一权利要求要素将含有此导入的权利要求要素的任何特定权利要求限于仅含有一个此要素的发明,甚至是在同一权利要求包含介绍性短语“一个或多个”或“至少一个”和例如“一”等不定冠词时。上述同样适用于定冠词的使用。
除非另外说明,否则例如“第一”和“第二”等术语用于任意地区别这些术语所描述的元件。因此,这些术语未必意图指示此些元件的时间上的优先级或其它优先级。

Claims (7)

1.一种用于在远程近场通信(NFC)装置中实施主机卡模拟(HCE)服务的方法,其特征在于,所述方法包括:
由所述远程NFC装置的NFC控制器,从NFC读取器接收第一命令应用程序协议数据单元(APDU),其中,所述接收的第一命令APDU从HCE命令堆栈的底部遍历HCE命令堆栈到HCE命令堆栈的顶部,以被提供给用户应用程序;
由所述用户应用程序,计算对所述第一命令APDU的第一响应,其中,所述第一响应从所述HCE命令堆栈的顶部遍历所述HCE命令堆栈到所述HCE命令堆栈的底部,以被提供给所述NFC控制器;
预测来自所述NFC读取器的第二命令APDU,所述第二命令APDU可能在接收到所述第一命令APDU之后被接收;
计算对所述第二命令APDU的第二响应;
在所述HCE命令堆栈的底部处的预测队列中存储所述预测的第二命令APDU和对所述第二命令APDU的所述第二响应;
从所述NFC读取器接收第三命令APDU;以及
确定所述第二命令APDU的所述预测是否匹配于所述第三命令APDU,且响应于所述匹配,将所述第二响应发送到所述NFC读取器而不用遍历所述HCE命令堆栈。
2.根据权利要求1所述的方法,其特征在于,预测第二命令APDU进一步包括预测可能在接收到所述第一命令APDU之后接收的一系列命令APDU。
3.根据权利要求2所述的方法,其特征在于,计算对所述第二命令APDU的响应进一步包括计算对所述预测的一系列命令APDU中的每一个的响应。
4.根据权利要求1所述的方法,其特征在于,确定所述第二命令APDU的所述预测是否匹配于所述第三命令APDU进一步包括确定所述第二命令APDU并不匹配所述第三命令APDU且清空所述预测队列。
5.根据权利要求1所述的方法,其特征在于,进一步包括基于数个正确地预测的命令,确定所述远程NFC装置的处理状态。
6.根据权利要求1所述的方法,其特征在于,预测所述第二命令APDU进一步包括使用学习算法预测所述第二命令APDU,所述学习算法至少部分地基于下一个可能的命令APDU已被所述远程NFC装置接收的次数来预测所述下一个可能的命令APDU。
7.一种具有主机卡模拟(HCE)服务的远程近场通信(NFC)系统,其特征在于,所述系统包括:
用于与NFC读取器无线通信的NFC控制器,所述NFC控制器接收命令应用程序协议数据单元(APDU)且将计算出的对所述命令APDU的响应发送到所述NFC读取器;以及
HCE命令堆栈,来自所述NFC控制器的接收的命令从所述HCE命令堆栈的底部遍历所述HCE命令堆栈到所述HCE命令堆栈的顶部,以被提供给用户应用程序,
所述用户应用程序借助所述HCE命令堆栈接收所述命令APDU,所述用户应用程序计算对所述命令APDU的所述响应,所述响应从上到下遍历所述HCE命令堆栈,以被提供给所述NFC控制器,所述用户应用程序预测下一个被所述NFC控制器接收的命令且计算对所述预测的命令的响应,其中,所述预测的下一个命令和对所述计算的响应存储在HCE命令堆栈底部处的预测队列中,
响应于确定所述预测的下一个命令匹配于所述接收的下一个命令,所述计算出的响应被直接提供到所述NFC读取器而不用遍历所述HCE命令堆栈。
CN201810999768.2A 2017-09-12 2018-08-29 用于在移动电话中实施主机卡模拟命令堆栈的系统和方法 Active CN109492444B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/701,764 2017-09-12
US15/701,764 US10068114B1 (en) 2017-09-12 2017-09-12 System and method for implementing a host card emulation (HCE) command stack in a mobile phone

Publications (2)

Publication Number Publication Date
CN109492444A CN109492444A (zh) 2019-03-19
CN109492444B true CN109492444B (zh) 2023-12-26

Family

ID=63295361

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810999768.2A Active CN109492444B (zh) 2017-09-12 2018-08-29 用于在移动电话中实施主机卡模拟命令堆栈的系统和方法

Country Status (3)

Country Link
US (1) US10068114B1 (zh)
EP (1) EP3454278A1 (zh)
CN (1) CN109492444B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2192486A1 (en) * 2008-12-01 2010-06-02 Research In Motion Limited Anticipatory responses to commands
EP2801930A1 (en) * 2013-05-09 2014-11-12 ST-Ericsson SA A near field communication reader adapted for NFC A anti collision and a method of NFC A anti collision
CN105046177A (zh) * 2014-04-29 2015-11-11 恩智浦有限公司 通信设备的接近检查
CN105472546A (zh) * 2015-12-31 2016-04-06 华为技术有限公司 近场通信方法及移动终端
CN105550863A (zh) * 2015-07-31 2016-05-04 宇龙计算机通信科技(深圳)有限公司 一种移动支付方法及可穿戴设备
CN106415591A (zh) * 2014-06-10 2017-02-15 索尼公司 用于nfc的电子设备、系统及方法
CN106503782A (zh) * 2015-09-06 2017-03-15 上海复旦微电子集团股份有限公司 Nfc智能卡模拟方法及装置
CN106980526A (zh) * 2017-04-25 2017-07-25 努比亚技术有限公司 Hce应用启动方法、移动终端及计算机可读存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7162631B2 (en) * 2001-11-02 2007-01-09 Activcard Method and system for scripting commands and data for use by a personal security device
EP1895743A1 (en) * 2006-08-31 2008-03-05 Incard SA A method for implementing a wireless personal communication protocol for an IC Card
US8813029B2 (en) * 2012-05-24 2014-08-19 International Business Machines Corporation Remote card content management using synchronous server-side scripting
TWI572218B (zh) * 2014-07-17 2017-02-21 新力股份有限公司 用於近場通訊(nfc)之電子裝置、控制器及控制方法
US9843361B2 (en) * 2014-10-06 2017-12-12 Google Llc Communicating via near field communications
US10531276B2 (en) * 2015-08-21 2020-01-07 Samsung Electronics Co., Ltd. Method and apparatus for intelligent communication selection

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2192486A1 (en) * 2008-12-01 2010-06-02 Research In Motion Limited Anticipatory responses to commands
EP2801930A1 (en) * 2013-05-09 2014-11-12 ST-Ericsson SA A near field communication reader adapted for NFC A anti collision and a method of NFC A anti collision
CN105046177A (zh) * 2014-04-29 2015-11-11 恩智浦有限公司 通信设备的接近检查
CN106415591A (zh) * 2014-06-10 2017-02-15 索尼公司 用于nfc的电子设备、系统及方法
CN105550863A (zh) * 2015-07-31 2016-05-04 宇龙计算机通信科技(深圳)有限公司 一种移动支付方法及可穿戴设备
CN106503782A (zh) * 2015-09-06 2017-03-15 上海复旦微电子集团股份有限公司 Nfc智能卡模拟方法及装置
CN105472546A (zh) * 2015-12-31 2016-04-06 华为技术有限公司 近场通信方法及移动终端
CN106980526A (zh) * 2017-04-25 2017-07-25 努比亚技术有限公司 Hce应用启动方法、移动终端及计算机可读存储介质

Also Published As

Publication number Publication date
CN109492444A (zh) 2019-03-19
EP3454278A1 (en) 2019-03-13
US10068114B1 (en) 2018-09-04

Similar Documents

Publication Publication Date Title
US11741455B2 (en) Systems and methods for providing near field communications
CN105704332B (zh) 移动支付方法和装置
US20110283274A1 (en) Firmware image update and management
US9817972B2 (en) Electronic assembly comprising a disabling module
EP3188065A1 (en) Secure intelligent terminal device and information processing method
EP3401823B1 (en) Security verification method and device for smart card application
US11099889B2 (en) Method-call-chain tracking method, electronic device, and computer readable storage medium
CN101310255A (zh) 硬件辅助的装置配置检测
CN105938596B (zh) 用于方便交易的装置和方法
US9978056B2 (en) Smart card having multiple payment instruments
CN112926710A (zh) Nfc模拟卡切换方法、移动终端及计算机可读存储介质
CN109492444B (zh) 用于在移动电话中实施主机卡模拟命令堆栈的系统和方法
CN111885568B (zh) 近场通信配置参数的加载方法、装置、电子设备
JP5754287B2 (ja) Icチップ、icチップにおける処理方法、uim、携帯端末、及びicチップ用処理プログラム
CN113170300B (zh) 快速nfc处理
JP6307938B2 (ja) Icチップ、コマンド実行方法、及びicチップ用プログラム
JP4734838B2 (ja) 情報記録媒体とプログラム、及びコマンド実行制御方法
JP5066884B2 (ja) Cpuを内蔵した情報記録媒体及びプログラム
EP3761515A1 (en) Near field communication device and method of operating the same
US10504112B2 (en) Method, server, and system for processing a transportation fare
KR20150099697A (ko) 애플리케이션 제어방법 및 이를 위한 제어시스템
KR20150045053A (ko) 애플리케이션 제어방법 및 이를 위한 제어시스템
JP2011034408A (ja) 半導体装置、半導体装置の制御方法および半導体装置の制御プログラム
JP2008134880A (ja) 携帯可能情報記録媒体及びそのプログラム
JP2008134882A (ja) Icカードとそのプログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant