CN108604280B - 交易方法、交易信息处理方法、交易终端及服务器 - Google Patents
交易方法、交易信息处理方法、交易终端及服务器 Download PDFInfo
- Publication number
- CN108604280B CN108604280B CN201680080768.1A CN201680080768A CN108604280B CN 108604280 B CN108604280 B CN 108604280B CN 201680080768 A CN201680080768 A CN 201680080768A CN 108604280 B CN108604280 B CN 108604280B
- Authority
- CN
- China
- Prior art keywords
- transaction
- data
- identifier
- safety
- rule
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- 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/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
-
- 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/327—Short range or proximity payments by means of M-devices
- G06Q20/3278—RFID or NFC payments by means of 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/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/351—Virtual cards
-
- 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/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3821—Electronic credentials
-
- 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
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
- H04L9/0897—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
-
- 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/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- 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
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Finance (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明提供的交易方法、交易信息处理方法、交易终端及服务器,涉及通信领域。用于交易终端本地获取安全交易数据,避免在交易时联网获取所述安全交易数据,提高了交易效率。包括:交易终端的安全功能模块接收交易应用模块“送的第一交易消息,第一交易消息包括第一标识和/或安全交易数据需求参数;安全功能模块根据所述第一交易消息、或所述第一交易消息和第二标识获取安全交易数据,所述第二标识用于唯一标识所述安全功能模块;安全功能模块将安全交易数据“送给所述应用模块;交易应用模块向收单终端“送第二交易消息,所述第二交易消息中包括安全交易数据、第一标识和第三标识,第三标识用于标识交易终端。
Description
技术领域
本发明涉及通信领域,尤其涉及交易方法、交易信息处理方法、交易终端及服务器。
背景技术
卡模拟(Card Emulation,CE)功能,是指利用支持近场通信(Near FieldCommunication,NFC)功能并且具有安全单元(Secure Element,SE)的终端,模拟非接触式芯片卡(Contactless IC Card)。卡模拟应用安装到终端的SE中,并在SE中运行。SE一般允许安装多个CE应用,这使得用户携带一部终端就相当于携带了多张实体卡片,为用户带来了极大便利。
主机卡模拟(Host-based Card Emulation或Host Card Emulation,HCE)是指卡模拟应用无需安装到安全单元中,而是像普通的应用一样直接安装到终端的操作系统中,并运行在终端主机(Device Host,或者称之为设备主机)上。HCE广泛应用于近场通信(NearField Communication,NFC)中。
目前,HCE应用通过终端的NFC接口与POS机或者读卡器等读卡设备进行通信。目前,HCE应用通常将应用数据保存在富执行环境REE(Rich Execution Environment),REE是一种安全级别较低的运行环境,即任何来源的应用程序经用户许可都可安装到终端的REE中。这样,对于一些安全性能要求较高的支付类HCE应用,诸如银行发布的HCE等支付应用,其关键信息,如银行交易账户信息、用于交易的安全凭证(如:交易令牌Token)、以及用于交易信息加密处理的密钥等信息,很容易被恶意程序的窃取。因此,HCE应用的上述关键信息通常会存储在服务器中,终端利用HCE应用进行交易时,终端需要连接网络,依赖服务器完成交易。
发明内容
本发明的实施例提供的交易方法、交易信息处理方法、交易终端及服务器,交易终端能够在本地安全的进行交易数据和关键信息的保存和处理,避免在交易时联网的需求,提高了交易效率。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,公开了一种交易方法,应用于交易终端,所述交易终端包括一个安全功能模块和至少一个交易应用模块。另外,本发明提供的方法适用于交易系统,该系统包括交易终端、收单终端、以及服务器。
所述方法包括:首先,交易终端的所述安全功能模块接收所述交易应用模块发送的第一交易消息。这里的交易应用模块是交易终端包括的至少一个交易应用模块中的任意一个,所述安全功能模块运行于所述交易终端中的TEE(Trust Execution Environment,可信执行环境)。另外,所述第一交易消息包括第一标识和/或安全交易数据需求参数,其中,所述第一标识用于标识所述交易应用模块或当前所述交易应用模块使用的虚拟卡。所述虚拟卡,是指没有物理介质,可加载到主机卡模拟应用中,利用终端提供的通信链路与POS交互完成支付的一种软件实体。虚拟卡可以依托银行发行的实体卡产生,也可以是银行发行的没有物理介质的虚拟卡片。
所述安全交易数据需求参数包括以下参数中的至少一个:安全交易数据长度参数、安全交易数据加密类型参数。所述安全交易数据长度参数用于指示所述安全功能模块提供的安全交易数据的长度要求。所述安全交易数据加密类型参数,用于指示所述安全交易数据在提供的所述安全交易数据加密类型,如是否加密,或者使用的加密算法的种类(如对称加密算法、非对称加密算法),或者使用的加密算法的类型(如AES算法)等。
其次,所述安全功能模块会根据所述第一交易消息或所述第一交易消息和第二标识获取安全交易数据。这里的第二标识用于标识所述安全功能模块。所述的安全交易数据,是指交易过程中使用的可以提升安全性的数据,例如,交易令牌,或者是经过加密处理的交易信息等。
之后,所述安全功能模块将获取到的安全交易数据发送给所述交易应用模块。
需要说明一点,这里所述安全功能模块获取安全交易数据是在所述交易终端本地获取的,具体实现中可以是获取交易终端预中存储的安全交易数据,也可以是利用特定规则获得安全交易数据。
最后,所述交易应用模块向收单终端发送第二交易消息,所述第二交易消息中包括所述安全交易数据、所述第一标识和所述第三标识,其中,所述第三标识用于标识所述交易终端;以便所述收单终端将第三交易消息转发给所述服务器进行交易处理,所述第三交易消息为所述第二交易消息或者是所述收单终端根据所述第二交易消息生成的,且所述第三交易消息包括所述安全交易数据、所述第一标识和所述第三标识。
需要说明一点,所述第二交易消息中包括的所述第一标识,可以独立于所述安全交易数据,即与所述安全交易数据并列的存在于所述第二交易消息中,也可以是被包含在所述安全交易数据中,即作为所述安全交易数据的一个组成部分。同样的,所述第三交易消息中包括的所述第一标识,也可以是独立于所述安全交易数据,即与所述安全交易数据并列的存在于所述第三交易消息中,也可以是被包含在所述安全交易数据中,即作为所述安全交易数据的一个组成部分。
本发明提供的交易方法,交易终端包括的安全功能模块可以在本地获取安全交易数据,在交易时终端无需联网向云端处理器获取安全交易数据(如:交易令牌Token等),可以根据终端本地获取的安全交易数据进行交易。不受网络条件限制,提高了交易效率;同时,无需针对每一个交易应用模块开发不同的安全功能模块,降低了产业成本。
结合第一方面,在第一方面的第一种可能的实现方式中,,在所述安全功能模块根据所述第一交易消息或所述第一交易消息和第二标识获取安全交易数据之前,所述方法还包括:
所述安全功能模块接收所述交易应用模块发送的交易信息。这里的交易信息是交易过程中会用到的安全辅助数据信息或业务数据,如安全验证数据或者交易结算数据等。示例的,所述交易信息包含交易应用模块从POS接收到的扣款信息(如授权金额,终端验证结果等)和交易应用模块保存的虚拟卡信息,所述虚拟卡信息包括交易计数器、应用交互特征等。
需要说明的是,所述交易信息可以是包括在所述第一交易消息之中,由所述交易应用模块发送给所述安全功能模块,也可以是在所述安全功能模块接受所述交易应用模块发送的第一交易消息之后,所述交易应用模块通过另一条消息发送给所述安全功能模块。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述安全功能模块根据所述第一交易消息或所述第一交易消息和第二标识获取安全交易数据,具体包括:
所述安全功能模块将与所述第一标识对应的至少一个第一安全处理数据中的一个作为所述安全交易数据。其中,所述第一安全处理数据是由所述服务器为所述交易终端中的所述第一标识生成的,即仅可作为所述交易终端中的所述第一标识所对应的所述交易应用的安全交易数据,不能作为其他交易应用的安全交易数据。所述第一安全处理数据是由所述安全功能模块预先从所述服务器获得并保存在所述TEE中。
或者,所述安全功能模块根据与所述第一标识对应的第一规则获得第二安全处理数据。所述安全功能模块将所述第二安全处理数据作为所述安全交易数据,或者所述安全功能模块根据所述第一标识和所述第二安全处理数据组成所述安全交易数据。其中,所述第一规则是所述安全功能模块预置或从所述服务器获取的,所述第一规则包括第一算法和第一数值(如一个字符串或一个数字),这里的第一算法是一个不可逆加密算法,如哈希算法。
或者,所述安全功能模块还可以根据与所述第一标识对应的第二规则,对第一数据进行加密得到第三安全处理数据,这里的第一数据包括所述交易信息和/或所述第二标识。进而将所述第三安全处理数据作为所述安全交易数据。其中,所述第二规则是所述安全功能模块预置或从所述服务器获取的,所述第二规则包括第一加密算法和至少一个第一密钥,这里的第一加密算法,可以是对称加密算法或者是非对称加密算法。
这样,交易终端可以根据所述第一交易消息或第一交易消息和第二标识获取所述安全交易数据,在交易时无需联网获取安全交易数据;同时,无需针对每一个交易应用模块开发不同的安全功能模块,降低了产业成本。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第三种实现方式中,所述安全功能模块根据所述第一交易消息或所述第一交易消息和第二标识以获取安全交易数据,具体包括:
所述安全功能模块将与所述安全交易数据需求参数对应的至少一个第四安全处理数据中的一个作为所述安全交易数据。这里所述安全交易数据需求参数是所述第一交易消息中携带的安全交易数据长度参数和/或安全交易数据加密类型参数,所述至少一个第四安全处理数据符合所述第一交易消息中携带的全部安全交易数据需求参数;所述至少一个第四安全处理数据是由服务器根据所述安全交易数据需求参数生成的,由所述安全功能模块预先从所述服务器获得并保存在所述可信执行环境。
或者,所述安全功能模块根据与所述安全交易数据需求参数对应的第三规则生成第五安全处理数据,所述安全功能模块将所述第五安全处理数据作为所述安全交易数据,或者所述安全功能模块根据所述第一标识和所述第五安全处理数据组成所述安全交易数据。这里,所述第三规则是所述安全功能模块预置或从所述服务器获取的,所述第三规则包括第二算法和第二数值(如一个字符串或一个数字),这里的第二算法是一个不可逆加密算法,如哈希算法。
或者,所述安全功能模块根据与所述安全交易数据需求参数对应的第四规则,对第二数据进行加密得到第六安全处理数据,所述第四规则是所述安全功能模块预置或从所述服务器获取的,所述第四规则包括第二加密算法和至少一个第二密钥,所述第二数据包括所述交易信息和/或所述第二标识。所述安全功能模块将所述第六安全处理数据作为所述安全交易数据。这里的第二加密算法,可以是对称加密算法或者是非对称加密算法。
交易终端可以根据所述第一交易消息包括的安全交易数据需求参数在交易终端本地获取所述安全交易数据,在交易时无需联网获取安全交易数据。交易不受网络条件的影响,提高了交易效率;同时,无需针对每一个交易应用开发不同的安全功能模块,降低了产业成本。
结合第一方面,在第一方面的第四种可能的实现方式中,所述安全功能模块接收所述交易应用模块发送的第一交易消息之前,所述方法还包括:
所述交易应用模块向所述服务器提交注册请求消息,所述注册请求消息包括所述第一标识和所述交易应用模块对应的交易账户信息以及第三标识,所述第三标识用于标识所述交易终端,以便所述服务器记录所述第一标识、所述交易应用模块对应的交易账户信息以及所述第三标识,因此,所述服务器可以根据所述第一标识、所述第三标识,唯一确定所述交易应用模块对应的交易账户信息。示例的,所述交易账户信息包括个人账户号码PAN(Personal Account Number)。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第五种可能的实现方式中,所述交易终端还包括校验模块,所述安全功能模块接收所述交易应用模块发送的第一交易消息之前,所述方法还包括:
所述校验模块进行安全校验。这里的所述安全校验的方法,包括密码校验或者生物特征校验的至少一种;所述生物特征校验包括指纹校验,虹膜校验,声纹校验,人脸识别、PPG识别、ECG识别的至少一种。校验模块可以是指纹识别模块、摄像头识别模块、虹膜识别模块、或密码校验模块,不同的校验方式由不同的校验模块实现,指纹校验由指纹识别模块实现,虹膜校验由摄像头、虹膜识别模块实现,密码校验由密码校验模块实现。
若所述校验模块判断所述安全校验的结果为通过,则将所述第一交易消息发送给所述安全功能模块;否则,就不发送第一交易消息给所述所述安全功能模块。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第六种可能的实现方式中,所述校验模块进行安全校验之前,所述方法还包括:
所述交易应用模块生成所述第一交易消息,根据所述第一交易消息确定需要进行安全校验。
具体地,所述第一交易消息中包括所述第一标识和/或所述安全交易数据需求参数。所述校验模块根据所述第一标识和/或所述安全交易数据需求参数,确定需要进行安全校验。
第二方面,公开了一种交易方法,应用于交易系统,该系统包括交易终端、收单终端以及服务器,包括:
首先,服务器从收单终端接收到第三交易消息;所述第三交易消息至少包含安全交易数据,第一标识和第三标识;所述安全交易数据是交易终端的安全功能模块接收交易应用模块发送的第一交易消息后生成的;所述交易应用模块是所述交易终端包括的至少一个交易应用模块中的一个;所述第一标识用于标识所述交易应用模块或当前所述交易应用模块使用的虚拟卡,所述第三标识用于标识所述交易终端。
其次,所述服务器根据所述第三交易消息,获得所述第一标识和所述第三标识,并对所述安全交易数据进行交易校验。
然后,所述服务器确定所述交易校验的结果为通过,则根据所述第一标识和所述第三标识,确定交易账户。
最后,所述服务器对所述交易账户进行交易处理,并向所述收单终端发送交易结果。
交易时,服务器接收交易终端本地获取的安全交易数据,确定交易账户进行相应的交易处理,避免交易终端联网获取安全交易数据进行交易时,交易受到网络条件的影响,提高了交易效率;同时,无需针对每一个交易应用开发不同的安全功能模块,降低了产业成本。
结合第二方面,在第二方面的第一种可能的实现方式中,服务器从收单终端接收到第三交易消息之前,所述方法还包括:
接收所述交易应用模块发送的注册请求信息;所述注册请求信息包括第一标识、所述交易应用模块对应的交易账户信息以及第三标识;
保存所述第一标识、所述交易应用模块对应的交易账户信息以及所述第三标识,以便所述服务器可以根据所述第一标识和所述第三标识,唯一确定所述交易应用模块对应的交易账户信息。
需要说明的是,在所述服务器中,可能也记录了第二标识,所述第二标识用于标识所述第三标识对应的交易终端中的所述安全功能模块。所述第二标识和所述第三标识有唯一对应的关系,因此,所述服务器也可以根据所述第一标识,所述第二标识,唯一确定所述交易应用模块对应的交易账户信息。
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述服务器根据所述第三交易消息,获得所述第一标识和所述第三标识,并对所述安全交易数据进行交易校验,具体包括:
所述服务器根据所述第一标识和所述第三标识,确定对应的第七安全处理数据,并使用所述第七安全处理数据对所述安全交易数据进行交易校验。所述第七安全处理数据是所述服务器预先为所述第三标识对应的所述交易终端中的所述第一标识生成的。如果所述第一安全处理数据和所述安全交易数据相同,则交易校验的结果通过;否则,交易校验不通过。
或者,所述服务器根据所述第一标识和所述第三标识确定对应的第五规则,然后根据第五规则得到第八安全处理数据,并使用所述第八安全处理数据对所述安全交易数据进行校验。所述第五规则包括第三算法和第三数值,所述第五规则与所述交易终端中所述安全功能模块中对应于所述第一标识的第一规则相对应,所述第一规则包括第一算法和第一数值,这里的第五规则与第一规则相对应是指所述第三算法与所述第一算法相同,所述第三数值与所述第一数值相同。另外,所述第一规则是所述安全功能模块中预置或从所述服务器获取的,并用于获取所述安全交易数据的。具体地,如果所述第八安全处理数据和所述安全交易数据相同,则交易校验的结果为通过;否则,交易校验不通过。
需要说明的是,在服务器中,所述第五规则与所述第一标识和所述第三标识对应,即服务器可以根据所述第一标识和所述第三标识,唯一确定对应的第五规则。需要说明的是,由于在服务器中所述第二标识和所述第三标识也是唯一对应,服务器也可以根据所述第一标识和所述第二标识,唯一确定对应的所述第五规则。
示例的,第五规则与第一规则相对应,即第一规则和第五规则中包括有一个相同的数值A(如数字、字符串等)与一个相同的算法B(如哈希函数)。当收到第一交易消息时,安全功能模块使用所述算法B去计算所述数值A+当前时间,得到安全交易数据,并向收单终端发送该第二交易消息,其中包含所述安全交易数据和第一标识及第三标识;之后,服务器接收到来自收单终端的第三交易消息,所述第三交易消息是所述第二交易消息或者是所述收单终端根据所述第二交易消息生成的,且其中至少包含所述安全交易数据和所述第一标识及第三标识。所述服务器得到所述第一标识和所述第三标识后,确定了对应的第五规则,同样也是利用所述算法B去计算所述数值A+当前时间,得到的用于校验的第二安全处理数据,并用第二安全处理数据与接收到的安全交易数据进行比较,以此实现验证。
或者,所述服务器根据所述第一标识和所述第三标识,确定对应的第六规则,并根据第六规则对所述安全交易数据进行校验,具体的,所述服务器根据第六规则对所述安全交易数据进行处理,得到第一数据,如果所述第一数据所包含符合预定要求(如内容符合约定要求,可成功解析)的交易信息和/或所述第二标识,则校验通过;否则,校验不通过。所述第六规则包括第三加密算法和至少一个第三密钥,所述第六规则与所述交易终端中所述安全功能模块的第二规则相对应,所述第二规则包括第一加密算法和至少一个第一密钥,这里第六规则与第二规则相对应是指使用所述第六规则可以对所述第二规则所加密的数据进行解密处理得到加密前数据。所述第二规则是所述安全功能模块中预置或从所述服务器获取的,并用于获取所述安全交易数据的。所述交易信息是用于交易过程中会用到的安全辅助数据信息或业务数据,即与业务处理相关的数据信息,如安全验证数据或者交易结算数据等。
结合第二方面的第一种可能的实现方式,在第二方面的第三种可能的实现方式中,所述服务器根据所述第三交易消息,获得所述第一标识和所述第三标识,并对所述安全交易数据进行交易校验,具体包括:
所述服务器获得安全交易数据需求参数和所述第三标识,其中,所述安全交易数据需求参数包括以下参数中的至少一个:安全交易数据长度参数、安全交易数据加密类型参数。所述安全交易数据长度参数用于指示所述安全功能模块提供的安全交易数据的长度要求。所述安全交易数据加密类型参数,用于指示所述安全交易数据在提供的所述安全交易数据的类型。需要说明的是,所述服务器获得所述安全交易数据需求参数的方法,包括所述第三交易消息中携带有所述安全交易数据需求参数,或者所述服务器和所述交易应用模块预先约定好所述安全交易数据需求参数,或者所述服务器根据所述安全交易数据的数据特征(如长度)确定所述安全交易数据需求参数。
所述服务器根据所述安全交易数据需求参数和第三标识,确定对应的第九安全处理数据,并使用所述第九安全处理数据对所述安全交易数据进行交易校验。所述第一安全处理数据是所述服务器预先为所述第三标识对应的所述交易终端中的所述交易安全数据需求参数生成的。如果所述第九安全处理数据和所述安全交易数据相同,则交易校验的结果通过;否则,交易校验不通过。
或者,所述服务器根据所述安全交易数据需求参数和第三标识确定对应的第七规则,然后根据第七规则得到第十安全处理数据,并使用所述第十安全处理数据对所述安全交易数据进行校验。所述第七规则包括第四算法和第四数值,所述第七规则与所述交易终端中所述安全功能模块的第三规则相对应,所述第三规则包括第二算法和第二数值,这里第七规则与第三规则相对应是指所述第四算法与所述第二算法相同,所述第四数值与所述第二数值相同。其中,所述第三规则是所述安全功能模块中预置或从所述服务器获取的,并用于获取所述安全交易数据的。具体地,如果所述第十安全处理数据和所述安全交易数据相同,则交易校验的结果为通过;否则,交易校验的结果为不通过。
或者,所述服务器根据所述安全交易数据需求参数和第三标识,确定对应的第八规则,并根据第八规则对所述安全交易数据进行交易检验,具体的,所述服务器根据第八规则对所述安全交易数据进行处理得到第二数据,如果所述第二数据所包含符合预定要求(如内容符合约定要求,可成功解析)的交易信息和/或所述第二标识,则交易校验的结果为通过;否则,则交易校验的结果为不通过。所述第八规则包括第四加密算法和至少一个第四密钥,所述第八规则与所述交易终端中所述安全功能模块的第四规则相对应,所述第四规则包括第二加密算法和至少一个第二密钥,这里第八规则与第四规则相对应是指使用所述第八规则可以对所述第四规则所加密的数据进行解密处理得到加密前数据。其中,所述第四规则是所述安全功能模块中预置或从所述服务器获取的,并用于获取所述安全交易数据的。这里的交易信息是交易过程中的安全辅助数据信息或业务数据,如安全验证数据或者交易结算数据等。
第三方面,公开了一种交易信息处理方法,应用于具有可信执行环境TEE(TrustedExcution Environment)的交易终端,所述交易终端包括一个安全功能模块和至少一个交易应用模块,所述安全功能模块运行于所述可信执行环境,包括:
所述安全功能模块与所述交易应用模块建立会话连接,并获得所述交易应用模块对应的第四标识,所述第四标识用于标识所述交易应用模块或当前所述交易应用模块使用的虚拟卡;这里的所述交易应用模块,运行在富执行环境(REE,Rich ExecutionEnvironment);
所述安全功能模块获取所述交易应用模块发送的第一消息;所述第一消息包括交易信息。
所述安全功能模块获取所述第四标识对应的业务密钥,使用第五算法和所述业务密钥,对所述交易信息进行加密处理,获得安全交易数据;所述第五算法是一种加密算法,如3DES算法或AES算法;所述第五算法是所述安全功能模块和服务器约定的,所述第五算法可以是所述安全功能模块中预置或者从服务器获取的。需要说明的是,这里的所述第四标识对应的业务密钥,是指所述业务密钥用于所述第四标识对应的所述交易应用的交易信息处理。
所述安全功能模块将所述安全交易数据发送给所述交易应用模块,以便所述交易应用模块使用所述安全交易数据进行后续的交易处理。
这样,安全功能模块会对交易应用模块提供的交易信息,调用和交易应用的第四标识相对应的业务密钥进行加密,以便在本地生成用于交易的安全交易数据,无需联网获取安全交易数据,交易不受网络条件的影响,提高了交易效率;同时,无需针对每一个交易应用模块开发不同的安全功能模块,降低了产业成本。
结合第三方面,在第三方面的第一种可能的实现方式中,所述安全功能模块接收所述交易应用模块发送的第一消息之前,还包括:
所述安全功能模块接收所述交易应用模块发送的第二消息,所述第二消息用于请求生成支付数据;所述第二消息是用于指示所述安全功能模块获取所述交易应用模块对应的支付数据,所述支付数据包括所述业务密钥。
所述安全功能模块使用第六算法,所述交易应用模块对应的账户数据和预置的设备密钥进行预置处理,获得第五密钥并保存在所述可信执行环境中,所述安全功能模块将所述第五密钥作为所述业务密钥;所述设备密钥是非对称密钥,对于不同的交易终端,所述设备密钥是不同的;所述第六算法是密钥导出算法,如3DES算法或AES算法,需要说明的是,对于不同的所述第四标识,可以对应不同的所述第六算法;所述账户数据是所述第二消息中携带的或者是所述安全功能模块从服务器获取的,所述账户数据可以包括个人账户号码PAN(Personal Account Number)或虚拟账户号码,所述虚拟账户号码是服务器生成的,且所述虚拟账户号码只对应于一个的PAN。
需要说明的是,服务器也保存有所述设备密钥,所以服务器可以对应的采用相同的方法获得所述第五密钥,并使用所述第五密钥对所述安全交易数据进行解密处理;因此,所述服务器无需向所述安全功能模块配置所述第五密钥,所述安全功能模块也无需在生成所述第五密钥后发送到服务器,避免了所述第五密钥在传输过程中泄露的风险,并且所述安全功能模块也可以在没有网络链接的情况下获取第五密钥,增强了用户体验。
结合第三方面,在第三方面的第二种可能的实现方式中,所述安全功能模块获取所述第四标识对应的业务密钥,具体包括:
所述安全功能模块确认所述业务密钥不存在,则所述安全功能模块使用第七算法对第三数据进行处理获得第六密钥并保存在所述可信执行环境,所述安全功能模块使用所述第六密钥作为所述业务密钥;所述使用阈值限制包括使用时间阈值限制或使用次数阈值限制,所述第七算法是密钥导出算法,所述第三数据包括第七密钥,所述第七密钥是所述安全功能模块从服务器获取的,所述第六密钥有所述使用阈值限制,所述第七密钥有所述使用阈值限制;
或者,所述安全功能模块确认所述业务密钥不存在,则所述安全功能模块向服务器发送密钥获取请求,并接收所述服务器的应答消息,所述应答消息包括第八密钥,所述安全功能模块获取所述应答消息中的所述第八密钥,并将所述第八密钥更新或保存在所述可信执行环境;所述使用阈值限制包括使用时间阈值限制或使用次数阈值限制,所述第八密钥有使用阈值限制。
结合第三方面或第三方面的第一种或第二种可能的实现方式,在第三方面的第三种可能的实现方式中,交易终端还包括校验模块,所述安全功能模块接收所述交易应用模块发送的第一消息之前,所述方法还包括:
所述校验模块进行安全校验。这里的所述安全校验的方法,包括密码校验或者生物特征校验的至少一种;所述生物特征校验包括指纹校验,虹膜校验,声纹校验,人脸识别、PPG识别、ECG识别的至少一种。
若所述交易终端判断所述安全校验的结果为通过,则将所述第一消息发送给所述安全功能模块;否则,不发送第一消息给所述所述安全功能模块。
第四方面,公开了一种交易终端,包括:
处理器,用于根据第一交易消息或所述第一交易消息和第二标识获取安全交易数据;所述第一交易消息包括第一标识和/或安全交易数据需求参数,所述第一标识用于标识所述交易终端的交易应用模块或当前所述交易应用模块使用的虚拟卡,所述第二标识用于唯一标识所述交易终端的安全功能模块,所述安全功能模块运行于所述交易终端的可信执行环境;所述安全交易数据需求参数包括以下参数中的至少一个:安全交易数据长度参数、安全交易数据加密类型参数。所述安全交易数据长度参数用于指示所述安全功能模块提供的安全交易数据的长度要求。所述安全交易数据加密类型参数,用于指示所述安全交易数据在提供的所述安全交易数据加密类型,如是否加密,或者使用的加密算法的种类(如对称加密算法或非对称加密算法),或者使用的加密算法的类型(如3DES算法或AES算法)等。
发射器,用于向收单终端发送第二交易消息,所述第二交易消息中包括所述安全交易数据、所述第一标识和第三标识,所述第三标识用于标识所述交易终端。
结合第四方面,在第四方面的第一种可能的实现方式中,所述处理器具体用于,将与所述第一标识对应的至少一个第一安全处理数据中的一个作为所述安全交易数据;所述第一安全处理数据是由服务器为所述交易终端中的所述第一标识生成的,且所述第一安全处理数据是预先从所述服务器获得并保存在所述可信执行环境;
或者,根据与所述第一标识对应的第一规则获得第二安全处理数据,将所述第二安全处理数据作为所述安全交易数据;所述第一规则是预置或从所述服务器获取的,所述第一规则包括第一算法和第一数值;
或者,根据与所述第一标识对应的第二规则,对第一数据进行加密得到第三安全处理数据,将所述第三安全处理数据作为所述安全交易数据;所述第二规则是所述安全功能模块预置或从所述服务器获取的,所述第二规则包括第一加密算法和至少一个第一密钥,所述第一数据包括所述交易信息和/或所述第二标识,所述交易信息是由所述交易应用模块发送给所述安全功能模块的,所述交易信息是交易过程中的安全辅助数据信息或业务数据。示例的,所述交易信息包含交易应用模块从POS接收到的扣款信息(如授权金额,终端验证结果等)和交易应用模块保存的虚拟卡信息,所述虚拟卡信息包括交易计数器、应用交互特征等。
结合第四方面,在第四方面的第二种可能的实现方式中,所述处理器具体用于,将与所述安全交易数据需求参数对应的至少一个第四安全处理数据中的一个作为所述安全交易数据;所述至少一个第四安全处理数据是由服务器根据所述安全交易数据需求参数生成的,预先从所述服务器获得并保存在所述可信执行环境;
或者,根据与所述安全交易数据需求参数对应的第三规则生成第五安全处理数据,将所述第五安全处理数据作为所述安全交易数据;所述第三规则是预置或从所述服务器获取的,所述第一规则包括第二算法和第二数值;
或者,根据与所述安全交易数据需求参数对应的第四规则,对第二数据进行加密得到第六安全处理数据,将所述第六安全处理数据作为所述安全交易数据;所述第四规则是预置或从所述服务器获取的,所述第四规则包括第二加密算法和至少一个第二密钥,所述第二数据包括所述交易信息和/或所述第二标识,所述交易信息是交易过程中会用到的安全辅助或业务处理相关的数据信息。示例的,所述交易信息包含交易应用模块从POS接收到的扣款信息(如授权金额,终端验证结果等)和交易应用模块保存的虚拟卡信息,所述虚拟卡信息包括交易计数器、应用交互特征等。
结合第四方面,在第四方面的第三种可能的实现方式中,所述发射器还用于,向所述服务器提交注册请求消息,所述注册请求消息包括所述第一标识、所述交易应用模块对应的交易账号和所述第三标识,以便所述服务器保存所述第一标识、所述交易应用模块对应的交易账户信息和所述第三标识;
需要说明的是,所述第三标识和所述第二标识在所述服务器中有唯一对应关系。
结合第四方面,在第四方面的第四种可能的实现方式中,所述处理器还用于,根据第一交易消息或所述第一交易消息和第二标识获取安全交易数据之前,进行安全校验,且确定所述安全校验的结果为通过。
结合第四方面的第四种可能的实现方式,在第四方面的第五种可能的实现方式中,所述处理器还用于,进行安全校验之前,生成所述第一交易消息,根据所述第一交易消息确定需要进行安全校验。
具体地,所述第一交易消息中包括所述第一标识和/或所述安全交易数据需求参数;根据所述第一标识和/或所述安全交易数据需求参数,确定需要进行安全校验。
第五方面,公开了一种服务器,包括:
接收器,用于从收单终端接收到第三交易消息,所述第三交易消息至少包含安全交易数据、第一标识和第三标识;所述安全交易数据是交易终端的安全功能模块生成的,所述第一标识用于标识所述交易终端中的一个交易应用模块或当前所述交易应用模块使用的虚拟卡,所述第三标识用于标识所述交易终端;
处理器,根据所述第三交易消息,获得所述第一标识和所述第三标识,并对所述安全交易数据进行交易校验;
所述处理器还用于,确定所述交易校验的结果为通过,则根据所述第一标识和所述第三标识确定对应的交易账号,并对所述交易账号进行交易处理。
结合第五方面,在第五方面的第一种可能的实现方式中,所述接收器还用于,从收单终端接收到第三交易消息之前,接收所述交易终端发送的注册请求信息,所述注册请求信息包括所述第一标识,所述交易应用模块对应的所述交易账号以及所述第三标识;
所述处理器用于,保存所述第一标识,所述交易账号和所述第三标识;
其中,所述第三标识和第二标识在所述服务器中有唯一对应关系,所述第二标识用于标识所述交易终端中的所述安全功能模块。
结合第五方面的第一种可能的实现方式,在第五方面的第二种可能的实现方式中,所述处理器具体用于,根据所述第一标识和所述第三标识,确定对应的第七安全处理数据,并使用所述第七安全处理数据对所述安全交易数据进行交易校验;如果所述第七安全处理数据和所述安全交易数据相同,则判定交易校验通过;否则,判定交易校验不通过;所述第七安全处理数据是所述服务器预先为所述第三标识对应的所述交易终端中的所述第一标识生成的;
或者,根据所述第一标识和所述第三标识确定对应的第五规则,然后根据第五规则得到第八安全处理数据,并使用所述第八安全处理数据对所述安全交易数据进行交易校验;如果所述第八安全处理数据和所述安全交易数据相同,则判定交易校验通过;否则,判定交易校验不通过;所述第五规则包括第三算法和第三数值,所述第五规则与所述交易终端中所述安全功能模块的第一规则相对应,所述第一规则包括第一算法和第一数值;
或者,根据所述第一标识和所述第三标识,确定对应的第六规则,并根据第六规则对所述安全交易数据进行校验,具体的,所述服务器根据第六规则对所述安全交易数据进行处理,得到第一数据,如果所述第一数据所包含符合预定要求(如内容符合约定要求,可成功解析)的交易信息和/或所述第二标识,则校验通过;否则,校验不通过。所述第六规则包括第三加密算法和至少一个第三密钥,所述第六规则与所述交易终端中所述安全功能模块的第二规则相对应,所述第二规则包括第一加密算法和至少一个第一密钥,这里第六规则与第二规则相对应是指使用所述第六规则可以对所述第二规则所加密的数据进行解密处理得到加密前数据。所述第二规则是所述安全功能模块中预置或从所述服务器获取的,并用于获取所述安全交易数据的。所述交易信息是用于交易过程中的安全辅助数据信息或业务处理相关的数据信息,如安全验证数据或者交易结算数据等。
结合第五方面的第一种可能的实现方式,在第五方面的第三种可能的实现方式中,所述处理器具体用于,获得安全交易数据需求参数和所述第三标识,其中,所述安全交易数据需求参数包括以下参数中的至少一个:安全交易数据长度参数、安全交易数据加密类型参数;所述安全交易数据长度参数用于指示提供的所述安全交易数据的长度要求;所述安全交易数据加密类型参数用于指示所述安全功能模块提供的所述安全交易数据的类型;
根据所述安全交易数据需求参数和第三标识,确定对应的第三安全处理数据,并使用所述第三安全处理数据对所述安全交易数据进行交易校验;如果所述第三安全处理数据和所述安全交易数据相同,则判定交易校验通过;否则,判定交易校验不通过;所述第三安全处理数据是所述服务器预先为所述安全交易数据需求参数对应的所述交易终端中的所述第一标识生成的;
或者,根据所述安全交易数据需求参数和第三标识确定对应的第七规则,然后根据第七规则得到第十安全处理数据,并使用所述第十安全处理数据对所述安全交易数据进行交易校验;如果所述第十安全处理数据和所述安全交易数据相同,则判定交易校验通过;否则,判定交易校验不通过;所述第七规则包括第四算法和第四数值,所述第七规则与所述安全功能模块的第三规则相对应;所述第三规则包括第二算法和第二数值;
或者,根据所述安全交易数据需求参数和第三标识,确定对应的第八规则,并根据第八规则对所述安全交易数据进行交易检验,具体的,所述服务器根据第八规则对所述安全交易数据进行处理得到第二数据,如果所述第二数据所包含符合预定要求(如内容符合约定要求,可成功解析)的交易信息和/或所述第二标识,则交易校验的结果为通过;否则,则交易校验的结果为不通过。所述第八规则包括第四加密算法和至少一个第四密钥,所述第八规则与所述交易终端中所述安全功能模块的第四规则相对应,所述第四规则包括第二加密算法和至少一个第二密钥,这里第八规则与第四规则相对应是指使用所述第八规则可以对所述第四规则所加密的数据进行解密处理得到加密前数据。其中,所述第四规则是所述安全功能模块中预置或从所述服务器获取的,并用于获取所述安全交易数据的。这里的交易信息是交易过程中会用到的安全辅助数据信息或业务处理相关的数据信息,如安全验证数据或者交易结算数据等。
第六方面,公开了一种交易终端,包括:
处理器,获取第四标识,所述第四标识用于标识所述交易终端的一个交易应用模块,或者所述第四标识用于标识当前所述交易应用模块使用的虚拟卡;获取第一消息,所述第一消息包括交易信息。
所述处理器还用于,获取所述第四标识对应的业务密钥,使用第五算法和所述业务密钥,对所述交易信息进行加密处理,获得安全交易数据。
结合第六方面,在第六方面的第一种可能的实现方式中,所述处理器还用于,获取所述第一交易消息之前,包括:
获取第二消息,所述第二消息用于请求生成支付数据。
使用第六算法,对账户数据和预置的设备密钥进行预设处理,获得第五密钥并保存在所述可信执行环境中,将所述第五密钥作为所述业务密钥;所述第六算法是密钥导出算法,所述账户数据是所述第二消息中携带的或者是所述安全功能模块从服务器获取的。
结合第六方面,在第六方面的第二种可能的实现方式中,还包括发射器、接收器,
所述发射器具体用于,向所述服务器发送密钥获取请求;
所述接收器用于,接收所述服务器的应答消息,所述应答消息中包括第八密钥;
所述处理器用于,确认所述业务密钥存在且已超出使用阈值限制,获取所述应答消息中的所述第八密钥,将所述第八密钥更新为所述业务密钥并保存在所述可信执行环境;所述使用阈值限制包括使用时间阈值限制或使用次数阈值限制,所述第八密钥有所述使用阈值限制;
所述处理器还用于,确认所述业务密钥存在且已超出使用阈值限制,则使用第八算法对第三数据进行处理获得第六密钥,并将所述业务密钥更新为所述第六密钥并保存在所述可信执行环境;所述使用阈值限制包括使用时间阈值限制或使用次数阈值限制,所述第八算法是密钥导出算法,所述第三数据包括第七密钥,所述第七密钥是所述安全功能模块从服务器获取的,所述第六密钥有所述使用阈值限制,所述第七密钥有所述使用阈值限制。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的交易系统的示意图;
图2为本发明实施例提供的交易方法的流程示意图;
图3为本发明实施例提供的注册流程的方法示意图;
图4为本发明实施例提供的交易方法的另一流程示意图;
图5为本发明实施例提供的交易信息处理方法的流程示意图;
图6为本发明实施例提供的交易终端的结构框图;
图7为本发明实施例提供的服务器的结构框图;
图8为本发明实施例提供的交易终端的另一结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
移动交易业务对于用户隐私数据的安全保护日益得到产业重视,例如,移动支付业务涉及用户的账户金融安全,对于数据安全性要求很高。目前业界主流的安全技术包括SE、TEE和HCE三种。其中,
SE(Secure Element)安全单元是一种具有防内容篡改功能的微控制器,其能够为安装在SE上的应用提供安全的存储和运行环境。SE作为移动支付的安全载体,除对交易关键数据进行安全存储和运算,确保进行的敏感交易具有安全认证和不可抵赖性外,还支持多应用动态管理及运行安全。在终端领域,常见的SE形态包括UICC(Universal IntegratedCircuit Card,通用集成电路卡)SE和eSE(embedded SE,即嵌入式在终端主板上的SE)等。
可信执行环境(Trusted Execution Environment,TEE)与REE共存于智能终端的运行环境中,通过硬件的支撑,具有安全能力并且能够满足一定的安全需求,实现与REE相隔离的运行机制。TEE有自身的运行空间,定义了严格的保护措施,因此比REE的安全级别更高,只有授权的安全软件才能在TEE中安装和运行,能够保护TEE中的数据、软件等免受攻击,抵抗特定类型的安全威胁,从而保护了安全软件的资源和数据的机密性。因此,相比REE,TEE能够更好的保护数据和资源的安全性。
通常,向TEE或SE进行应用(App)写入或修改时,均需要对应的TEE或SE控制端TSM(Trusted Service Manager,可信服务管理)授权,且开发应用时存在适配的需求。因此,整体而言,虽然TEE或SE安全性较好,但产业链成本也较高。
HCE应用可以通过终端的NFC接口与POS终端或者读卡器等读卡设备进行通信。但是由于REE中存储的数据的保护不足以抵御各种恶意软件的威胁,故当HCE应用将相关的用户账户等机密数据保存在REE时,这些机密数据较容易被窃取。因此,REE中的HCE程序的关联数据处于比较危险的状态。
因此,HCE应用的关键数据通常会保存在服务器,在需要交易时与服务器通信以获取安全交易数据,如交易令牌(Token)或加密的交易信息等。这样,终端需要连接网络,依赖服务器才能完成交易。需要说明的是,Token可以认为是用户账号的替代码数据,可以被服务器识别,但不是真实账号。
基于此,本发明的原理在于:在TEE中提供一种公用的安全功能模块,在交易时,利用这个安全功能模块为一个或多个交易应用模块(如HCE应用的客户端应用CA(ClientApplication))提供安全交易数据的处理,即无需为每一个交易应用模块分别开发并安装对应的安全功能模块。例如,安全功能模块可以根据交易应用的特征(如交易应用的标识)或需求(如对安全交易数据的长度和/或加密处理方法的要求),提供相应的Token或者对交易信息进行本地加密等方式进行交易,这样可以保证交易的安全性,保障用户的账户安全,同时,避免了在交易时需要联网获取Token,提高了交易效率。并且,无需针对每一个交易应用模块开发不同的安全功能模块,降低了产业成本。
首先,本发明实施例提供一种交易系统。如图1所示,所述交易系统包括:交易终端、收单终端以及服务器。
其中,交易终端包括TEE和REE,多个交易应用模块(如HCE应用的CA)的运行在REE中。TEE中包括接入控制模块以及安全功能模块,其中,安全功能模块用于在交易终端本地获取安全交易数据。收单终端可以是收单POS终端。服务器是与交易应用模块相对应的服务器。示例的,APP1为工行交易应用,则服务器可以是工行服务器或银联服务器等能为工行交易应用提供交易处理的服务器。
另外,该交易系统适用于支付、会员卡积分兑换,电影卷使用等交易。
实施例1:
本发明实施例提供一种交易方法,如图2所示,所述方法包括以下步骤:
101、安全功能模块接收交易应用模块发送的第一交易消息。
这里的交易应用模块是交易终端包括的至少一个交易应用模块中的任意一个,所述安全功能模块运行于所述交易终端中的可信执行环境,即TEE环境。另外,所述第一交易消息包括第一标识和/或安全交易数据需求参数,所述第一标识用于标识所述交易应用模块或当前所述交易应用模块使用的虚拟卡。所述虚拟卡,是指没有物理介质,可加载到主机卡模拟应用中,利用终端提供的通信链路与POS交互完成支付的一种软件实体。虚拟卡可以依托银行发行的实体卡产生,也可以是银行发行的没有物理介质的虚拟卡片。
示例的,所述第一标识可以是交易应用模块加载的虚拟卡的AID和/或交易应用模块的证书、数字签名。例如,所述第一标识是AID(Application Identifier,应用标识符),所述AID是在ISO 7816-4标准中定义的,AID由RID(Registered application provideridentifier注册应用提供商标识)+PIX(Proprietary application identifierextension专用应用标识符扩展信息)两部分组成。
所述安全交易数据需求参数包括以下参数中的至少一个:安全交易数据长度参数、安全交易数据加密类型参数。其中,所述安全交易数据长度参数用于指示所述安全功能模块提供的安全交易数据的长度要求。所述安全交易数据加密类型参数,用于指示所述安全交易数据在提供的所述安全交易数据加密类型,如是否加密,或者使用的加密算法的种类(如对称加密算法、非对称加密算法),或者使用的加密算法的类型(如AES(AdvancedEncryption Standard)算法、3DES(Triple Data Encryption Algorithm)算法)等。
这样,安全功能模块提供的安全交易数据就一定是交易应用模块进行本次交易所需要的,进而使得交易终端无需联网获取安全交易数据就可以交易。
具体实现中,交易终端还可以在步骤101之前进行安全校验,这里的所述安全校验的方法,包括密码校验或者生物特征校验的至少一种;所述生物特征校验包括指纹校验、虹膜校验、声纹校验、人脸识别、PPG识别、ECG识别的至少一种。当交易终端确定所述安全校验的结果为通过时,则将所述第一交易消息发送给所述安全功能模块,即进行步骤101。否则,交易应用模块就不发送第一交易消息给所述所述安全功能模块。
102、安全功能模块在本地获取安全交易数据。
具体实现中,所述安全功能模块会根据所述第一交易消息,或所述第一交易消息和第二标识在交易终端的TEE中获取安全交易数据;例如,安全功能模块可以是根据所述第一交易消息获取终端的TEE预存储的安全交易数据,也可以利用加密算法计算获得安全交易数据也可以根据所述第一交易消息,或第一交易消息和第二标识,利用特定规则计算获得安全交易数据。
需要说明的是,这里的第二标识用于标识所述安全功能模块,示例的,可以是服务器为所述安全功能模块分配的标识。所述安全交易数据,是指交易过程中使用的可以提升安全性的数据,例如,交易令牌,或者是经过加密处理的交易信息等。
103、安全功能模块将获取到的安全交易数据发送给所述交易应用模块。
104、所述交易应用模块向收单终端发送第二交易消息。
所述第二交易消息中包括所述安全交易数据、所述第一标识和所述第三标识,其中,所述第三标识用于标识所述交易终端。
也就是交易应用模块接收安全功能模块发送的安全交易数据,根据安全交易数据生成第二交易消息。另外,第二交易消息还可以包括与本次交易相关的其他信息,如:交易金额等。
需要说明一点,所述第二交易消息中包括的所述第一标识,可以独立于所述安全交易数据,即与所述安全交易数据并列的存在于所述第二交易消息中,也可以是被包含在所述安全交易数据中,即作为所述安全交易数据的一个组成部分。
105、收单终端将第三交易消息转发给服务器以便进行交易处理。
其中,所述第三交易消息是所述第二交易消息或者是由所述收单终端根据生成的,且所述第三交易消息包括所述安全交易数据、所述第一标识和所述第三标识。
另外,所述第三交易消息中包括的所述第一标识,也可以是独立于所述安全交易数据,即与所述安全交易数据并列的存在于所述第三交易消息中,也可以是被包含在所述安全交易数据中,即作为所述安全交易数据的一个组成部分。
106、所述服务器接收所述第三交易消息,根据所述第三交易消息,获得所述第一标识和所述第三标识。
107、所述服务器对所述安全交易数据进行交易校验,并确定所述交易校验的结果为通过。
具体实现中,对应于交易终端的安全功能模块获取安全交易数据的方式,服务器有不同的校验方法。示例的,所述安全功能模块会根据所述第一交易消息获取在所述交易终端的TEE中保存的安全交易数据,那么服务器也预先存储了同样的安全交易数据,当服务器接收到来自所述交易终端的所述安全交易数据时,会获取在服务器侧存储的对应的安全交易数据并进行比较,以完成交易校验。
或者,交易终端的安全功能模块利用特定规则获得所述安全交易数据,如利用特定规则生成所述安全交易数据,或利用特定规则对交易信息进行加密得到所述交易数据。服务器则利用与该特定规则相对应的规则进行交易校验。
108、所述服务器根据所述第一标识和所述第三标识,确定交易账户,对所述交易账户进行交易处理。
需要说明的是,服务器在步骤106之前接收所述交易应用模块发送的注册请求信息,其中,所述注册请求信息包括第一标识、所述交易应用模块对应的交易账户信息以及第三标识。进而,服务器会保存所述第一标识、所述交易应用模块对应的交易账户信息以及所述第三标识。所述服务器可以根据所述第一标识、所述第三标识,唯一确定所述交易应用模块对应的交易账户信息。所述交易账户信息包括个人账号号码PAN(Personal AccountNumber)。
需要说明的是,本发明实施例中第一标识与第二标识存在明显的差别。具体在于,第一标识是表示交易应用的类别,在不同的交易终端上可以存在具有相同第一标识的交易应用;第二标识是标识特定交易终端中特定安全功能模块,即第二标识在同一时间,只存在于一个交易终端上,不会在其他交易终端上出现。
109、所述服务器进行交易处理,并向所述收单终端发送交易结果。
需要说明的是,这里的服务器包括令牌服务器(示例的,令牌服务器负责安全交易数据的验证,以及根据安全交易数据获取交易账户信息)和/或交易服务器(示例的,交易服务器负责交易处理),在具体实现中,可以是一个服务器同时作为令牌服务器和交易服务器,也可以是不同的服务器分别作为令牌服务器和交易服务器。
110、可选的,所述收单终端向所述交易终端转发所述交易结果。
在本发明的优选实施例中,交易终端的安全功能模块可以通过以下六种方式在交易终端本地获取安全交易数据。包括:
第一、所述安全功能模块将与所述第一标识对应的至少一个第一安全处理数据中的一个作为所述安全交易数据。
其中,所述第一安全处理数据是由服务器为所述交易终端中的所述第一标识生成的,即仅可作为所述交易终端中的所述第一标识所对应的所述交易应用的安全交易数据,不能作为其他交易应用的安全交易数据。所述第一安全处理数据是由所述安全功能模块预先从所述服务器获得并保存在所述可信执行环境。
第二、所述安全功能模块根据与所述第一标识对应的第一规则获得第二安全处理数据,将所述第二安全处理数据作为所述安全交易数据。
其中,所述第一规则是所述安全功能模块预置或从所述服务器获取的,所述第一规则包括第一算法(如哈希算法)和第一数值(如一个字符串或一个数字)。
示例的,安全功能模块预先存储数值A(如数字、字符串等)与一套相同的算法B(如哈希函数),当收到第一交易消息时,安全功能模块使用算法B去计算(数值A+当前时间),得到安全交易数据。
需要说明的是,所述安全功能模块还可以根据所述第一标识和所述第二安全处理数据组成所述安全交易数据。示例的,第一标识是AID,为12345678,其中RID部分是1234,第二安全处理数据是abcdefgh,那么Token(安全交易数据)还可以是1234abcdefgh,或者12348765abcdefgh。
第三、安全功能模块还可以根据与所述第一标识对应的第二规则,对第一数据进行加密得到第三安全处理数据,将所述第三安全处理数据作为所述安全交易数据。
这里的第一数据包括交易信息和/或所述第二标识。其中,交易信息是所述安全功能模块从所述交易应用模块获得的,所述交易信息是交易过程中会用到的安全辅助数据信息或业务处理相关的数据信息,如安全验证数据或者交易结算数据等。
需要说明的是,所述第二规则是所述安全功能模块预置或从所述服务器获取的,所述第二规则包括第一加密算法和至少一个第一密钥,这里的第一加密算法,可以是对称加密算法或者是非对称加密算法。
第四、所述安全功能模块将与所述安全交易数据需求参数对应的至少一个第四安全处理数据中的一个作为所述安全交易数据。
这里所述安全交易数据需求参数是所述第一交易消息中携带的安全交易数据长度参数和/或安全交易数据加密类型参数,所述至少一个第四安全处理数据符合所述第一交易消息中携带的全部安全交易数据需求参数;所述至少一个第四安全处理数据是由服务器根据所述安全交易数据需求参数生成的,由所述安全功能模块预先从所述服务器获得并保存在所述可信执行环境。
第五、所述安全功能模块根据与所述安全交易数据需求参数对应的第三规则生成第五安全处理数据,将所述第五安全处理数据作为所述安全交易数据。
其中,所述第三规则是所述安全功能模块预置或从所述服务器获取的,所述第三规则包括第二算法(如哈希算法)和第二数值(如一个字符串或一个数字)。
具体地,安全功能模块利用第二算法对第二数值进行算法处理,获得所述安全交易数据。
第六、所述安全功能模块根据与所述安全交易数据需求参数对应的第四规则,对第二数据进行加密得到第六安全处理数据,将所述第六安全处理数据作为所述安全交易数据。
这里的第二数据包括交易信息和/或所述第二标识,交易信息是所述安全功能模块从所述交易应用模块获得的。所述第四规则是所述安全功能模块预置或从所述服务器获取的,所述第四规则包括第二加密算法和至少一个第二密钥,第二加密算法可以是对称加密算法或者是非对称加密算法。
相对于交易终端的安全功能模块获取安全交易数据的六种方式,步骤107中,服务器也可以通过以下六种方式对所述安全交易数据进行交易校验,确定交易校验的结果,具体包括:
第一、服务器根据所述第一标识和所述第三标识,确定对应的第一安全处理数据,并使用所述第一安全处理数据对所述安全交易数据进行交易校验。
其中,所述第一安全处理数据是所述服务器预先为所述第三标识对应的所述交易终端中的所述第一标识生成的。
具体地,如果所述第一安全处理数据和所述安全交易数据相同,则交易校验的结果为通过;否则,交易校验不通过。
第二、服务器根据所述第一标识和所述第三标识确定对应的第五规则,然后根据第五规则得到第二安全处理数据,并使用所述第二安全处理数据对所述安全交易数据进行校验。
具体地,如果所述第二安全处理数据和所述安全交易数据相同,则交易校验的结果为通过;否则,交易校验不通过。
需要说明的是,所述第五规则包括第三算法和第三数值,所述第五规则与所述交易终端中所述安全功能模块的第一规则相对应,所述第一规则包括第一算法和第一数值。这里的第五规则与第一规则相对应是指所述第三算法与所述第一算法相同,所述第三数值与所述第一数值相同。
示例的,举例而言,第五规则与第一规则相对应,即安全功能模块与服务器中存储相同的规则,包括有一个相同的数值A(如数字、字符串等)与一套相同的算法B(如哈希函数),且在服务器中第五规则与安全功能模块的第一标识关联。
当收到第一交易消息时,安全功能模块使用所述算法B去计算所述数值A+当前时间,得到安全交易数据,并向服务器发送该安全交易数据;服务器接收到所述安全交易数据后,获得所述第一标识(可以是安全交易数据的一部分,也可以是第二交易消息中携带),同样也是利用所述算法B去计算所述数值A+当前时间,得到的数据与交易终端获取到的安全交易数据相同,用得到的数据去比较接收到的安全交易数据,以此实现验证。
第三、所述服务器根据所述第一标识和所述第三标识,确定对应的第六规则,并根据第六规则对所述安全交易数据进行处理,得到第一数据,根据第一数据进行交易校验。
其中,所述第六规则包括第三加密算法和至少一个第三密钥,所述第六规则与所述交易终端中所述安全功能模块的第二规则相对应,所述第二规则包括第一加密算法和至少一个第一密钥。这里第六规则与第二规则相对应是指使用所述第六规则可以对所述第二规则所加密的数据进行解密处理得到加密前数据。所述第二规则是所述安全功能模块中预置或从所述服务器获取的,并用于获取所述安全交易数据的。
具体地,如果所述第一数据所包含符合预定要求(如内容符合约定要求,可成功解析)的交易信息和/或所述第二标识,则校验通过;否则,校验不通过。所述交易信息是用于交易过程中会用到的安全辅助或业务处理相关的数据信息,如安全验证数据或者交易结算数据等。
第四、所述服务器获得安全交易数据需求参数和所述第三标识,确定对应的第三安全处理数据,并使用所述第三安全处理数据对所述安全交易数据进行交易校验。所述第一安全处理数据是所述服务器预先为所述第三标识对应的所述交易终端中的所述交易安全数据需求参数生成的。如果所述第三安全处理数据和所述安全交易数据相同,则交易校验的结果通过;否则,交易校验不通过。
其中,所述安全交易数据需求参数包括以下参数中的至少一个:安全交易数据长度参数、安全交易数据加密类型参数。所述安全交易数据长度参数用于指示所述安全功能模块提供的安全交易数据的长度要求。所述安全交易数据加密类型参数,用于指示所述安全交易数据在提供的所述安全交易数据的类型。需要说明的是,所述服务器获得所述安全交易数据需求参数的方法,包括所述第三交易消息中携带有所述安全交易数据需求参数,或者所述服务器和所述交易应用模块预先约定好所述安全交易数据需求参数,或者所述服务器根据所述安全交易数据的数据特征(如长度)推断出所述安全交易数据需求参数。
第五、所述服务器根据所述安全交易数据需求参数和第三标识确定对应的第七规则,然后根据第七规则得到第十安全处理数据,并使用所述第十安全处理数据对所述安全交易数据进行校验。
具体地,如果所述第四安全处理数据和所述安全交易数据相同,则交易校验的结果为通过;否则,交易校验的结果为不通过。
需要说明的是,所述第七规则包括第四算法和第四数值,所述第七规则与所述交易终端中所述安全功能模块的第三规则相对应,所述第三规则包括第二算法和第二数值,这里第七规则与第三规则相对应是指所述第四算法与所述第二算法相同,所述第四数值与所述第二数值相同。其中,所述第三规则是所述安全功能模块中预置或从所述服务器获取的,并用于获取所述安全交易数据的。
第六、所述服务器根据所述安全交易数据需求参数和第三标识,确定对应的第八规则,并根据第八规则对所述安全交易数据进行处理,得到第二数据。如果所述第二数据所包含符合预定要求(如内容符合约定要求,可成功解析)的交易信息和/或所述第二标识,则交易校验的结果为通过;否则,则交易校验的结果为不通过。
需要说明的是,所述第八规则包括第四加密算法和至少一个第四密钥,所述第八规则与所述交易终端中所述安全功能模块的第四规则相对应,所述第四规则包括第二加密算法和至少一个第二密钥,这里第八规则与第四规则相对应是指使用所述第八规则可以对所述第四规则所加密的数据进行解密处理得到加密前数据。其中,所述第四规则是所述安全功能模块中预置或从所述服务器获取的,并用于获取所述安全交易数据的。这里的交易信息是所述安全功能模块从所述交易应用模块获得的,是交易过程中会用到的安全辅助或业务处理相关的数据信息,如安全验证数据或者交易结算数据等。
需要说明的是,在上述六种对安全交易数据进行安全验证的方式中,因为在服务器上所述第二标识和所述第三标识有唯一对应关系,因此,服务器也可以先根据所述第三标识确定所述第二标识,然后使用所述第二标识代替所述第三标识来进行上述处理。
在本发明的另一优选实施例中,所述安全功能模块接收所述交易应用模块发送的第一交易消息之前,所述方法还包括:
所述交易应用模块向所述服务器提交注册请求消息,所述注册请求消息包括所述第一标识和所述交易应用模块对应的交易账户信息以及第三标识,所述第三标识用于标识所述交易终端,以便所述服务器记录所述第一标识、所述交易应用模块对应的交易账户信息以及所述第三标识三者的对应关系,因此,所述服务器可以根据所述第一标识、所述第三标识,唯一确定所述交易应用模块对应的交易账户信息。
在本发明的另一优选实施例中,所述安全功能模块接收所述交易应用模块发送的第一交易消息之前,所述方法还包括:
所述交易终端的校验模块进行安全校验。这里的所述安全校验的方法,包括密码校验或者生物特征校验的至少一种;所述生物特征校验包括指纹校验,虹膜校验,声纹校验,人脸识别、PPG识别、ECG识别的至少一种。
若所述交易终端判断所述安全校验的结果为通过,则将所述第一交易消息发送给所述安全功能模块;否则,就不发送第一交易消息给所述所述安全功能模块。
进一步地,所述交易终端的校验模块进行安全校验之前,所述方法还包括:
所述交易应用模块生成所述第一交易消息,根据所述第一交易消息确定需要进行安全校验。具体地,所述第一交易消息中包括所述第一标识或所述第一标识和所述安全交易数据需求参数。所述交易终端的校验模块根据所述第一标识和/或所述安全交易数据需求参数,确定需要进行安全校验。
本发明实施例提供的交易方法,交易终端的安全功能模块接收交易应用模块发送的第一交易消息,并根据第一交易消息在交易终端本地获取安全交易数据,并发送给交易应用模块,以便提交给服务器确定交易账户,进行相应的交易处理。相比现有技术,HCE进行交易时,必须联网获取安全交易数据,受限于网络状况,网络状况较差时,则无法获取安全交易数据,进而无法进行交易,交易效率较低。本发明提供的方法,交易时无需联网获取安全交易数据,可以根据本地获取的安全交易数据进行交易,保证交易安全的同时,不受网络状况限制,提高了交易效率。
实施例2:
为利用本发明提供的方法进行交易处理,交易终端的交易应用模块还需要通过安全功能模块需要预先完成注册,以保证交易安全性。如图3所示,安全功能模块的注册流程包括以下步骤:
201、服务器为安全功能模块分配第二标识。
其中,所述第二标识用于标识所述交易终端的安全功能模块。具体实现中,服务器会为每一个安全功能模块分配一个标识信息,但每个安全功能模块的标识信息是不同的。示例的,所述第二标识就唯一标识所述交易终端的安全功能模块。
另外,服务器还会获取所述交易终端的标识信息,并维护安全功能模块的标识信息以及交易终端的标识信息的对应关系,即记录了第二标识与第三标识(即所述交易终端的标识信息)的对应关系。
202、服务器接收所述交易应用模块发送的注册请求信息。
其中,所述注册请求信息包括第一标识和所述交易应用模块对应的交易账户信息和第三标识;所述第一标识标识所述交易应用模块,所述第三标识用于标识所述交易终端。
需要说明的是,由于第三标识和第二标识在服务器具有唯一对应的关系,因此所述注册请求信息中的第三标识,也可以用第二标识所代替。
203、服务器记录所述第一标识和所述交易应用模块对应的交易账户信息以及所述第三标识。
示例的,服务器记录account ID(交易账户信息)、APP ID(第一标识,即交易应用的标识信息)以及device ID(第三标识,即交易终端的标识信息),并且,所述服务器可以根据其中的device ID和APP ID,唯一确定对应的account ID信息。
204、服务器向交易应用模块返回配置结果。
示例的,向交易应用模块返回OK消息,指示已完成配置。
基于上述注册流程,服务器记录了记录交易应用模块的标识信息和所述交易应用模块对应的交易账户信息以及所述第三标识,并可以根据所述第一标识和所述第三标识唯一确定交易账户。结合图3所示的注册流程,以交易终端为device1、安全功能模块为TA(可信)应用、交易应用模块为APP1为例详细介绍本发明实施例提供的交易方法,如图4所示,所述方法具体包括以下步骤:
301、TA应用接收APP1发送的第一交易消息。
具体的,所述第一交易消息携带用于标识APP1的第一标识和/或APP1请求的安全交易数据需求参数,示例的,所述第一标识可以是AID1;所述安全交易数据需求参数用于指示所述安全功能模块提供与所述安全交易数据需求参数对应的安全交易数据;所述安全交易数据需求参数包括以下参数中的至少一个:安全交易数据长度参数、安全交易数据加密类型参数;所述安全交易数据长度参数用于指示所述安全功能模块提供的所述安全交易数据的长度要求;所述安全交易数据加密类型参数用于指示所述安全功能模块提供的所述安全交易数据的类型。
302、TA应用在本地生成TK1,并向APP1发送TK1。
需要说明一点,这里TA应用可以在device1本地TEE中获取安全交易数据TK1,也可以利用特定规则加密算法计算获得安全交易数据TK1。
其中,TK1是APP1对应的安全交易数据。具体实现中,TA应用可以通过上述实施例1提供的六种实现方式中的任一种获取到TK1,在此不作赘述。
具体地,可以通过以下几种方式获取TK1:
第一、将与APP ID1对应的至少一个第一安全处理数据中的一个作为所述安全交易数据。
其中,所述第一安全处理数据是由服务器为所述交易终端中的所述第一标识生成的,并保存在所述可信执行环境。
第二、确定APP ID1对应的第一规则,包括第一算法和第一数值,利用第一算法对(第一数值+当前时间)进行运算,获得第二安全处理数据,将所述第二安全处理数据作为所述安全交易数据。
其中,第一算法可以是哈希算法,第一数值可以是一个字符串或一个数字。
需要说明的是,所述安全功能模块还可以根据APP ID1和所述第二安全处理数据组成所述安全交易数据。示例的,第一标识是12348765,第二安全处理数据是abcdefgh,那么TK1(安全交易数据)可以是1234abcdefgh,或者12348765abcdefgh。
第三、确定与APP ID1对应的第二规则,包括第一加密算法和至少一个第一密钥,根据第二规则对第一数据(包括交易信息和/或TA应用的标识TKID)进行加密得到第三安全处理数据,将所述第三安全处理数据作为所述安全交易数据;所述交易信息是用于交易过程中会用到的安全辅助或业务处理相关的数据信息,如安全验证数据或者交易结算数据等,所述交易消息是所述安全功能模块从所述交易应用模块获取的,所述交易消息可以是所述第一交易消息中携带的,或者是在所述第一交易消息之后所述交易应用模块通过另一条消息发送给所述安全功能模块的。
这里的第一加密算法,可以是对称加密算法或者是非对称加密算法。
第四、将与所述安全交易数据需求参数对应的至少一个第四安全处理数据中的一个作为所述安全交易数据。
其中,所述第四安全处理数据是由服务器为所述交易终端中的所述安全交易数据需求参数生成的,并保存在所述可信执行环境;所述安全交易数据需求参数是所述第一交易消息中携带的安全交易数据长度参数和/或安全交易数据加密类型参数。
第五、根据与所述安全交易数据需求参数对应的第三规则生成第五安全处理数据,将所述第五安全处理数据作为所述安全交易数据。
其中,所述第三规则包括第二算法(如哈希算法)和第二数值(如一个字符串或一个数字)。
第六、根据与所述安全交易数据需求参数对应的第四规则,对第二数据进行加密得到第六安全处理数据,将所述第六安全处理数据作为所述安全交易数据。
这里的第二数据包括交易信息和/或所述第二标识,交易信息是所述安全功能模块从所述交易应用模块获得的。所述第四规则包括第二加密算法和至少一个第二密钥,第二加密算法可以是对称加密算法或者是非对称加密算法;所述交易信息是用于交易过程中会用到的安全辅助或业务处理相关的数据信息,如安全验证数据或者交易结算数据等,所述交易消息是所述安全功能模块从所述交易应用模块获取的,所述交易消息可以是所述第一交易消息中携带的,或者是在所述第一交易消息之后所述交易应用模块通过另一条消息发送给所述安全功能模块的。
303、APP1向POS终端提交第二交易消息。
需要说明的是,这里的POS终端即本发明所述的收单终端,另外,第二交易消息包括安全交易数据TK1、第一标识APP ID1(用于标识APP1)以及第三标识Device ID1(设备ID1),Device ID1用于标识所述交易终端。
304、POS终端向服务器提交第三交易消息。
其中,服务器可以是所述交易应用模块对应的收单银行支付服务器(acquiringbank payment server)和/或所述安全功能模块对应的服务器。具体地,POS终端会将APP1提交的第二交易消息发送给APP1对应的收单银行支付服务器(即发卡行的支付服务器),或者POS终端将APP1提交的第二交易消息发送给TA对应的服务器。示例的,APP1为银行A的交易应用,则POS终端会将APP1提交的第二交易消息发送给银行A的支付服务器,或者POS终端会将APP1提交的第二交易消息发送给TA对应的服务器。需要说明的是,收单银行支付服务器和TA对应的服务器还可以合作进行安全交易数据的处理,示例的,APP1为银行A的交易应用,POS终端将APP1提交的第二交易消息发送给银行A的支付服务器后,银行A的支付服务器可以将第二交易消息中的安全交易数据、第一标识和第三标识发送给TA对应的服务器对安全交易数据进行处理,并获取处理结果进行后续的交易处理。
另外,所述第三交易消息可以是所述第二交易消息,或者是POS终端根据所述第二交易消息生成的信息。所述第三交易消息包括安全交易数据TK1、第一标识APP ID1以及第三标识device ID1,当然还可以包括密码、交易金额等信息。
305、服务器接收第三交易消息,获得TK1、APP ID1以及device ID1,并对TK1进行交易校验。
具体实现中,对应于TA应用获取TK1的不同方式,服务器可以用不同的交易方式,包括:
第一、服务器根据APP ID1和device ID1,确定对应的第七安全处理数据,如果所述第七安全处理数据和所述安全交易数据相同,则交易校验的结果为通过;否则,交易校验不通过。
第二、服务器根据APP ID1和device ID1确定对应的第五规则,然后根据第五规则得到第八安全处理数据,如果所述第八安全处理数据和所述安全交易数据相同,则交易校验的结果为通过;否则,交易校验不通过。
需要说明的是,所述第五规则包括第三算法和第三数值,所述第三算法与所述第一算法相同,所述第三数值与所述第一数值相同。
示例的,第五规则与第一规则相对应,即安全功能模块与服务器中存储相同的规则,包括有一个相同的数值A(如数字、字符串等)与一套相同的算法B(如哈希函数),且在服务器中第五规则与安全功能模块的第一标识关联。
当收到第一交易消息时,安全功能模块使用所述算法B去计算所述数值A+当前时间,得到安全交易数据,并向服务器发送该安全交易数据;服务器接收到所述安全交易数据后,获得所述第一标识(可以是安全交易数据的一部分,也可以是第二交易消息中携带),同样也是利用所述算法B去计算所述数值A+当前时间,得到的数据与交易终端获取到的安全交易数据相同,用得到的数据去比较接收到的安全交易数据,以此实现验证。
第三、所述服务器根据APP ID1和device ID1,确定对应的第六规则,并根据第六规则对所述安全交易数据进行处理,得到第一数据,如果所述第一数据所包含符合预定要求(如内容符合约定要求,可成功解析)的交易信息和/或所述第二标识,则校验通过;否则,校验不通过。
所述交易信息是用于交易过程中会用到的安全辅助或业务处理相关的数据信息,如安全验证数据或者交易结算数据等。
其中,所述第六规则包括第三加密算法和至少一个第三密钥,使用所述第六规则可以对所述第二规则所加密的数据进行解密处理得到加密前数据。
第四、所述服务器根据所述安全交易数据需求参数和device ID1,确定对应的第九安全处理数据,并使用所述第九安全处理数据对所述安全交易数据进行交易校验。所述第九安全处理数据是所述服务器预先为所述第三标识对应的所述交易终端中的所述交易安全数据需求参数生成的。如果所述第九安全处理数据和所述安全交易数据相同,则交易校验的结果通过;否则,交易校验不通过。
第五、所述服务器根据所述安全交易数据需求参数和第三标识确定对应的第七规则,然后根据第七规则得到第十安全处理数据,如果所述第十安全处理数据和所述安全交易数据相同,则交易校验的结果为通过;否则,交易校验的结果为不通过。
需要说明的是,所述第七规则包括第四算法和第四数值,指所述第四算法与所述第二算法相同,所述第四数值与所述第二数值相同。其中,所述第三规则是所述安全功能模块中预置或从所述服务器获取的,并用于获取所述安全交易数据的。
第六、所述服务器根据所述安全交易数据需求参数和device ID1,确定对应的第八规则,并根据第八规则对所述安全交易数据进行处理,得到第二数据。如果所述第二数据所包含符合预定要求(如内容符合约定要求,可成功解析)的交易信息和/或所述第二标识,则交易校验的结果为通过;否则,则交易校验的结果为不通过。
需要说明的是,所述第八规则包括第四加密算法和至少一个第四密钥,使用所述第八规则可以对所述第四规则所加密的数据进行解密处理得到加密前数据。
306、服务器确定步骤305交易校验的结果为通过,则根据APP ID1和device ID1,确定交易账户为account1(账户1)。
参考上述针对图3的描述可知,服务器预先记录了交易应用模块的标识信息(第一标识)以及交易终端的标识信息(第三标识)以及交易应用模块对应的交易账户信息。也就是说,服务器预先记录了APP ID1(即交易应用模块的标识信息)与device ID1(即device1的标识信息)以及account(账户)1,account1即交易应用模块的交易账户信息,并可以根据APP ID1和device ID1唯一确定对应的account1;因此,服务器可以根据APP ID1与deviceID1确定对应的交易账户account1。
307、服务器向对account1进行交易处理。
具体地,对account1进行交易处理,如:结算、优惠券兑换等。
308、服务器向POS终端提交交易结果。
309、POS终端向APP1转发交易结果。
本发明实施例提供的交易方法,交易终端的安全功能模块接收交易应用模块发送的第一交易消息,并根据第一交易消息在交易终端本地获取安全交易数据,并发送给交易应用模块,以便提交给服务器确定交易账户,进行相应的交易处理。相比现有技术,HCE进行交易时,必须联网获取安全交易数据,受限于网络状况,网络状况较差时,则无法获取安全交易数据,进而无法进行交易,交易效率较低。本发明提供的方法,交易时无需联网获取安全交易数据,可以根据本地获取的安全交易数据进行交易,保证交易安全的同时,不受网络状况限制,提高了交易效率;同时,无需针对每一个交易应用模块开发不同的安全功能模块,降低了产业成本。
实施例3:
本发明实施例提供了一种交易信息处理方法,应用于具有可信执行环境的交易终端,所述交易终端包括一个安全功能模块和至少一个交易应用模块,所述安全功能模块运行于所述可信执行环境,如图5所示,所述方法包括以下步骤:
401、所述安全功能模块与所述交易应用模块建立会话连接。
402、获取所述交易应用模块对应的第四标识。
其中,所述第四标识用于标识所述交易应用模块或当前所述交易应用模块使用的虚拟卡。需要说明的是,所述交易应用模块是所述交易终端中当前正运行在REE中的交易应用模块;所述虚拟卡,是指没有物理介质,可加载到主机卡模拟应用中,利用终端提供的通信链路与POS交互完成支付的一种软件实体。虚拟卡可以依托银行发行的实体卡产生,也可以是银行发行的没有物理介质的虚拟卡片。优选的,所述第四标识可以是交易应用模块加载的虚拟卡的AID和/或交易应用模块的证书、数字签名,所述交易信息包含交易应用模块从POS接收到的扣款信息(如授权金额,终端验证结果等)和交易应用模块保存的虚拟卡信息,所述虚拟卡信息包括交易计数器、应用交互特征等。
需要说明的是,这里的“获取”可以是所述安全交易模块接收所述交易应用模块发送的所述第四标识,还可以是所述安全交易模块主动从所述交易应用模块获得所述第四标识。
403、安全功能模块获取交易应用模块发送的第一消息。
其中,所述第一消息包括交易信息,所述交易信息是交易过程中的业务数据。具体实现中,安全功能模块通过所述会话连接获取第一消息。
404、安全功能模块获取所述第四标识对应的业务密钥,使用第五算法和所述业务密钥,对所述交易信息进行加密处理,获得安全交易数据。
其中,所述第五算法是一种加密算法,如3DES算法或AES算法;所述第五算法是所述安全功能模块和服务器约定的,所述第五算法可以是所述安全功能模块中预置或者从服务器获取的。需要说明的是,这里的所述第四标识对应的业务密钥,是指所述业务密钥用于所述第四标识对应的所述交易应用的交易信息处理。
405、安全功能模块将所述安全交易数据发送给所述交易应用模块。
这样,安全功能模块会对交易应用提供的交易信息,调用和交易应用的标识相对应的密钥进行加密,以便在本地生成用于交易的安全交易数据,无需联网以获取安全交易数据,交易不受网络条件的影响,提高了交易效率;同时,无需针对每一个交易应用模块开发不同的安全功能模块,降低了产业成本。
需要说明的是,步骤405之后,交易终端还可以向收单终端发送至少包含安全交易数据的交易信息,以便收单终端将该交易信息转发给服务器进行交易处理。
在本发明的优选实施中,所述安全功能模块接收所述交易应用模块发送的第一消息之前,还包括:
所述安全功能模块接收所述交易应用模块发送的第二消息,所述第二消息用于请求生成支付数据;所述第二消息是用于指示所述安全功能模块获取所述交易应用模块对应的支付数据,所述支付数据包括所述业务密钥。
所述安全功能模块使用第六算法,所述交易应用模块对应的账户数据和预置的设备密钥进行预置处理,获得第五密钥并保存在所述可信执行环境中,所述安全功能模块将所述第五密钥作为所述业务密钥;所述设备密钥是非对称密钥,对于不同的交易终端,所述设备密钥是不同的;所述第六算法是密钥导出算法,如3DES算法或AES算法,需要说明的是,对于不同的所述第四标识,可以对应不同的所述第六算法;所述账户数据是所述第二消息中携带的或者是所述安全功能模块从服务器获取的,所述账户数据可以包括个人账户号码PAN(Personal Account Number)或虚拟账户号码,所述虚拟账户号码是服务器生成的,且所述虚拟账户号码只对应于一个的PAN。
需要说明的是,服务器也保存有所述设备密钥,所以服务器可以对应的采用相同的方法获得所述第五密钥,并使用所述第五密钥对所述安全交易数据进行解密处理;因此,所述服务器无需向所述安全功能模块配置所述第五密钥,所述安全功能模块也无需在生成所述第五密钥后发送到服务器,避免了所述第五密钥在传输过程中泄露的风险,并且所述安全功能模块也可以在没有网络链接的情况下获取第五密钥,增强了用户体验。
在本发明的另一优选实施中,所述安全功能模块获取所述第四标识对应的业务密钥,具体包括:
所述安全功能模块确认所述业务密钥不存在,则所述安全功能模块使用第七算法对第三数据进行处理获得第六密钥并保存在所述可信执行环境,所述安全功能模块使用所述第六密钥作为所述业务密钥;所述使用阈值限制包括使用时间阈值限制或使用次数阈值限制,所述第七算法是密钥导出算法,所述第三数据包括第七密钥,所述第七密钥是所述安全功能模块从服务器获取的,所述第六密钥有所述使用阈值限制,所述第七密钥有所述使用阈值限制;
或者,所述安全功能模块确认所述业务密钥不存在,则所述安全功能模块向服务器发送密钥获取请求,并接收所述服务器的应答消息,所述应答消息包括第八密钥,所述安全功能模块获取所述应答消息中的所述第八密钥,并将所述第八密钥更新或保存在所述可信执行环境;所述使用阈值限制包括使用时间阈值限制或使用次数阈值限制,所述第八密钥有使用阈值限制。
在本发明的另一优选实施中,所述安全功能模块接收所述交易应用模块发送的第一消息之前,所述方法还包括:
所述交易终端的校验模块进行安全校验。这里的所述安全校验的方法,包括密码校验或者生物特征校验的至少一种;所述生物特征校验包括指纹校验,虹膜校验,声纹校验,人脸识别、PPG识别、ECG识别的至少一种。
若所述交易终端判断所述安全校验的结果为通过,则将所述第一消息发送给所述安全功能模块;否则,不发送第一消息给所述所述安全功能模块。
本发明实施例提供的交易方法,交易终端的安全功能模块接收交易应用模块发送的第一交易消息,并根据第一交易消息在交易终端本地获取安全交易数据,并发送给交易应用模块,以便提交给服务器确定交易账户,进行相应的交易处理。相比现有技术,HCE进行交易时,必须联网获取安全交易数据,受限于网络状况,网络状况较差时,则无法获取安全交易数据,进而无法进行交易,交易效率较低。本发明提供的方法,在获取业务密钥时,可以在终端本地生成,无需联网并接受服务器配置的业务密钥或将终端本地生成的业务密钥同步给服务器,简化了配置管理的步骤,降低了业务密钥在传输中泄露的风险;交易时无需联网获取安全交易数据,可以根据本地获取的安全交易数据进行交易,保证交易安全的同时,不受网络状况限制,提高了交易效率;同时,无需针对每一个交易应用模块开发不同的安全功能模块,降低了产业成本。
实施例4:
本发明实施例提供一种交易终端50,如图6所示,所述交易终端50包括:处理器501、存储器502以及发射器503。
处理器501,用于根据第一交易消息或所述第一交易消息和第二标识获取安全交易数据;所述第一交易消息包括第一标识和/或安全交易数据需求参数,所述第一标识用于标识所述交易终端的交易应用模块或当前所述交易应用模块使用的虚拟卡,所述第二标识用于唯一标识所述交易终端的安全功能模块,所述安全功能模块运行于所述交易终端的可信执行环境;所述安全交易数据需求参数包括以下参数中的至少一个:安全交易数据长度参数、安全交易数据加密类型参数。所述安全交易数据长度参数用于指示所述安全功能模块提供的安全交易数据的长度要求。所述安全交易数据加密类型参数,用于指示所述安全交易数据在提供的所述安全交易数据加密类型,如是否加密,或者使用的加密算法的种类(如对称加密算法或非对称加密算法),或者使用的加密算法的类型(如3DES算法或AES算法)等。
发射器503,用于向收单终端发送第二交易消息,所述第二交易消息中包括所述安全交易数据、所述第一标识和第三标识,所述第三标识用于标识所述交易终端。
所述处理器501具体用于,将与所述第一标识对应的至少一个第一安全处理数据中的一个作为所述安全交易数据;所述第一安全处理数据是由服务器为所述交易终端中的所述第一标识生成的,且所述第一安全处理数据是预先从所述服务器获得并保存在所述可信执行环境;
或者,根据与所述第一标识对应的第一规则获得第二安全处理数据,将所述第二安全处理数据作为所述安全交易数据;所述第一规则是预置或从所述服务器获取的,所述第一规则包括第一算法和第一数值;
或者,根据与所述第一标识对应的第二规则,对第一数据进行加密得到第三安全处理数据,将所述第三安全处理数据作为所述安全交易数据;所述第二规则是所述安全功能模块预置或从所述服务器获取的,所述第二规则包括第一加密算法和至少一个第一密钥,所述第一数据包括所述交易信息和/或所述第二标识,所述交易信息是由所述交易应用模块发送给所述安全功能模块的,所述交易信息是交易过程中会用到的安全辅助或业务处理相关的数据信息。示例的,所述交易信息包含交易应用模块从POS接收到的扣款信息(如授权金额,终端验证结果等)和交易应用模块保存的虚拟卡信息,所述虚拟卡信息包括交易计数器、应用交互特征等。
所述处理器501具体用于,将与所述安全交易数据需求参数对应的至少一个第四安全处理数据中的一个作为所述安全交易数据;所述至少一个第四安全处理数据是由服务器根据所述安全交易数据需求参数生成的,预先从所述服务器获得并保存在所述可信执行环境;
或者,根据与所述安全交易数据需求参数对应的第三规则生成第五安全处理数据,将所述第五安全处理数据作为所述安全交易数据;所述第三规则是预置或从所述服务器获取的,所述第一规则包括第二算法和第二数值;
或者,根据与所述安全交易数据需求参数对应的第四规则,对第二数据进行加密得到第六安全处理数据,将所述第六安全处理数据作为所述安全交易数据;所述第四规则是预置或从所述服务器获取的,所述第四规则包括第二加密算法和至少一个第二密钥,所述第二数据包括所述交易信息和/或所述第二标识,所述交易信息是交易过程中会用到的安全辅助或业务处理相关的数据信息。示例的,所述交易信息包含交易应用模块从POS接收到的扣款信息(如授权金额,终端验证结果等)和交易应用模块保存的虚拟卡信息,所述虚拟卡信息包括交易计数器、应用交互特征等。
所述发射器503还用于,向所述服务器提交注册请求消息,所述注册请求消息包括所述第一标识、所述交易应用模块对应的交易账号和所述第三标识,以便所述服务器保存所述第一标识、所述交易应用模块对应的交易账户信息和所述第三标识;
需要说明的是,所述第三标识和所述第二标识在所述服务器中有唯一对应关系。
所述处理器501还用于,根据第一交易消息或所述第一交易消息和第二标识获取安全交易数据之前,进行安全校验,且确定所述安全校验的结果为通过。
所述处理器501还用于,进行安全校验之前,生成所述第一交易消息,根据所述第一交易消息确定需要进行安全校验。
本发明实施例提供的交易终端,根据第一交易消息在交易终端本地获取安全交易数据,以便提交给服务器确定交易账户,进行相应的交易处理。相比现有技术,HCE进行交易时,必须联网获取安全交易数据,受限于网络状况,网络状况较差时,则无法获取安全交易数据,进而无法进行交易,交易效率较低。本发明提供的交易终端,交易时无需联网获取安全交易数据,可以根据本地获取的安全交易数据进行交易,保证交易安全的同时,不受网络状况限制,提高了交易效率;同时,无需针对每一个交易应用模块开发不同的安全功能模块,降低了产业成本。
实施例5:
本发明实施例提供了一种服务器60,如图7所示,所述服务器60包括:接收器601、处理器602以及存储器603。
接收器601,用于从收单终端接收到第三交易消息,所述第三交易消息至少包含安全交易数据、第一标识和第三标识;所述安全交易数据是交易终端的安全功能模块生成的,所述第一标识用于标识所述交易终端中的一个交易应用模块或当前所述交易应用模块使用的虚拟卡,所述第三标识用于标识所述交易终端。
处理器601,根据所述第三交易消息,获得所述第一标识和所述第三标识,并对所述安全交易数据进行交易校验。
所述处理器602还用于,确定所述交易校验的结果为通过,则根据所述第一标识和所述第三标识确定对应的交易账号,并对所述交易账号进行交易处理。
所述接收器601还用于,从收单终端接收到第三交易消息之前,接收所述交易终端发送的注册请求信息,所述注册请求信息包括所述第一标识,所述交易应用模块对应的所述交易账号以及所述第三标识。
所述处理器602用于,保存所述第一标识,所述交易账号和所述第三标识;
其中,所述第三标识和第二标识在所述服务器中有唯一对应关系,所述第二标识用于标识所述交易终端中的所述安全功能模块。
所述处理器602具体用于,根据所述第一标识和所述第三标识,确定对应的第七安全处理数据,并使用所述第七安全处理数据对所述安全交易数据进行交易校验;如果所述第七安全处理数据和所述安全交易数据相同,则判定交易校验通过;否则,判定交易校验不通过;所述第七安全处理数据是所述服务器预先为所述第三标识对应的所述交易终端中的所述第一标识生成的。
或者,根据所述第一标识和所述第三标识确定对应的第五规则,然后根据第五规则得到第八安全处理数据,并使用所述第八安全处理数据对所述安全交易数据进行交易校验;如果所述第八安全处理数据和所述安全交易数据相同,则判定交易校验通过;否则,判定交易校验不通过;所述第五规则包括第三算法和第三数值,所述第五规则与所述交易终端中所述安全功能模块的第一规则相对应,所述第一规则包括第一算法和第一数值。
或者,根据所述第一标识和所述第三标识,确定对应的第六规则,并根据第六规则对所述安全交易数据进行校验,具体的,所述服务器根据第六规则对所述安全交易数据进行处理,得到第一数据,如果所述第一数据所包含符合预定要求(如内容符合约定要求,可成功解析)的交易信息和/或所述第二标识,则校验通过;否则,校验不通过。所述第六规则包括第三加密算法和至少一个第三密钥,所述第六规则与所述交易终端中所述安全功能模块的第二规则相对应,所述第二规则包括第一加密算法和至少一个第一密钥,这里第六规则与第二规则相对应是指使用所述第六规则可以对所述第二规则所加密的数据进行解密处理得到加密前数据。所述第二规则是所述安全功能模块中预置或从所述服务器获取的,并用于获取所述安全交易数据的。所述交易信息是用于交易过程中会用到的安全辅助或业务处理相关的数据信息,如安全验证数据或者交易结算数据等。
所述处理器602具体用于,获得安全交易数据需求参数和所述第三标识,其中,所述安全交易数据需求参数包括以下参数中的至少一个:安全交易数据长度参数、安全交易数据加密类型参数;所述安全交易数据长度参数用于指示提供的所述安全交易数据的长度要求;所述安全交易数据加密类型参数用于指示所述安全功能模块提供的所述安全交易数据的类型。
根据所述安全交易数据需求参数和第三标识,确定对应的第三安全处理数据,并使用所述第三安全处理数据对所述安全交易数据进行交易校验;如果所述第三安全处理数据和所述安全交易数据相同,则判定交易校验通过;否则,判定交易校验不通过;所述第三安全处理数据是所述服务器预先为所述安全交易数据需求参数对应的所述交易终端中的所述第一标识生成的。
或者,根据所述安全交易数据需求参数和第三标识确定对应的第七规则,然后根据第七规则得到第十安全处理数据,并使用所述第十安全处理数据对所述安全交易数据进行交易校验;如果所述第四安全处理数据和所述安全交易数据相同,则判定交易校验通过;否则,判定交易校验不通过;所述第七规则包括第四算法和第四数值,所述第七规则与所述交易终端中所述安全功能模块的第三规则相对应;所述第三规则包括第二算法和第二数值。
或者,根据所述安全交易数据需求参数和第三标识,确定对应的第八规则,并根据第八规则对所述安全交易数据进行交易检验,具体的,所述服务器根据第八规则对所述安全交易数据进行处理得到第二数据,如果所述第二数据所包含符合预定要求(如内容符合约定要求,可成功解析)的交易信息和/或所述第二标识,则交易校验的结果为通过;否则,则交易校验的结果为不通过。所述第八规则包括第四加密算法和至少一个第四密钥,所述第八规则与所述交易终端中所述安全功能模块的第四规则相对应,所述第四规则包括第二加密算法和至少一个第二密钥,这里第八规则与第四规则相对应是指使用所述第八规则可以对所述第四规则所加密的数据进行解密处理得到加密前数据。其中,所述第四规则是所述安全功能模块中预置或从所述服务器获取的,并用于获取所述安全交易数据的。这里的交易信息是交易过程中会用到的安全辅助或业务处理相关的数据信息,如安全验证数据或者交易结算数据等。
本发明实施例提供的服务器,接收交易终端在交易终端本地获取的安全交易数据,进行相应的交易处理。相比现有技术,HCE进行交易时,必须联网获取安全交易数据,受限于网络状况,网络状况较差时,则无法获取安全交易数据,进而无法进行交易,交易效率较低。本发明提供的方法,交易时无需联网获取安全交易数据,可以根据本地获取的安全交易数据进行交易,保证交易安全的同时,不受网络状况限制,提高了交易效率;同时,无需针对每一个交易应用模块开发不同的安全功能模块,降低了产业成本。
实施例6:
本发明实施例提供了一种交易终端70,如图8所示,所述包括:处理器701以及存储器702、发射器703、以及接收器704。
处理器701,获取第四标识,所述第四标识用于标识所述交易终端的一个交易应用模块,或者所述第四标识用于标识当前所述交易应用模块使用的虚拟卡;获取第一消息,所述第一消息包括交易信息;所述虚拟卡,是指没有物理介质,可加载到主机卡模拟应用中,利用终端提供的通信链路与POS交互完成支付的一种软件实体。虚拟卡可以依托银行发行的实体卡产生,也可以是银行发行的没有物理介质的虚拟卡片。
所述处理器701还用于,获取所述第四标识对应的业务密钥,使用第五算法和所述业务密钥,对所述交易信息进行加密处理,获得安全交易数据。
所述处理器701还用于,获取所述第一交易消息之前,包括:
获取第二消息,所述第二消息用于请求生成支付数据;
使用第六算法,对账户数据和预置的设备密钥进行预设处理,获得第五密钥并保存在所述可信执行环境中,将所述第五密钥作为所述业务密钥;所述第六算法是密钥导出算法,所述账户数据是所述第二消息中携带的或者是所述安全功能模块从服务器获取的。
所述发射器703具体用于,向所述服务器发送密钥获取请求;
所述接收器704用于,接收所述服务器的应答消息,所述应答消息中包括第八密钥;
所述处理器701用于,确认所述业务密钥存在且已超出使用阈值限制,获取所述应答消息中的所述第八密钥,将所述第八密钥更新为所述业务密钥并保存在所述可信执行环境;所述使用阈值限制包括使用时间阈值限制或使用次数阈值限制,所述第八密钥有所述使用阈值限制。
所述处理器701还用于,确认所述业务密钥存在且已超出使用阈值限制,则使用第八算法对第三数据进行处理获得第六密钥,并将所述业务密钥更新为所述第六密钥并保存在所述可信执行环境;所述使用阈值限制包括使用时间阈值限制或使用次数阈值限制,所述第八算法是密钥导出算法,所述第三数据包括第七密钥,所述第七密钥是所述安全功能模块从服务器获取的,所述第六密钥有所述使用阈值限制,所述第七密钥有所述使用阈值限制。具体实现中,所述第八算法与上述第七算法相同。
本发明实施例提供的交易终端,能够在本地获取安全交易数据。相比现有技术,交易终端的HCE进行交易时,必须联网获取安全交易数据,受限于网络状况,网络状况较差时,则无法获取安全交易数据,进而无法进行交易,交易效率较低。本发明提供的方法,交易时无需联网获取安全交易数据,可以根据本地获取的安全交易数据进行交易,保证交易安全的同时,不受网络状况限制,提高了交易效率;同时,无需针对每一个交易应用模块开发不同的安全功能模块,降低了产业成本。
需要说明的是,本发明实施例中的处理器可以为中央处理器(英文:centralprocessing unit,缩写:CPU)。
接收器可以由光接收器,电接收器,无线接收器或其任意组合实现。例如,光接收器可以是小封装可插拔(英文:small form-factor pluggable transceiver,缩写:SFP)接收器(英文:transceiver),增强小封装可插拔(英文:enhanced small form-factorpluggable,缩写:SFP+)接收器或10吉比特小封装可插拔(英文:10 Gigabit small form-factor pluggable,缩写:XFP)接收器。电接收器可以是以太网(英文:Ethernet)网络接口控制器(英文:network interface controller,缩写:NIC)。无线接收器可以是无线网络接口控制器(英文:wireless network interface controller,缩写:WNIC)。
同样,发射器可以由光发射器,电发射器,无线发射器或其任意组合实现。例如,光发射器可以是小封装可插拔发射器,增强小封装可插拔发射器或10吉比特小封装可插拔发射器。电发射器可以是以太网(英文:Ethernet)网络接口控制器。无线发射器可以是无线网络接口控制器。
存储器,用于存储程序代码,并将该程序代码传输给该处理器,根据程序代码执行下述指令。存储器可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器也可以包括非易失性存储器(英文:non-volatile memory),例如只读存储器(英文:read-only memory,缩写:ROM),快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD)。存储器还可以包括上述种类的存储器的组合。
这里,处理器可以是上述处理器501或处理器602或处理器701。存储器可以是上述存储器502或存储器603或存储器702。接收器可以是接收器601或接收器704。发射器可以是发射器503或发射器703。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (29)
1.一种交易方法,应用于具有可信执行环境TEE的交易终端,所述交易终端包括一个安全功能模块和至少一个交易应用模块,所述安全功能模块运行于所述TEE,其特征在于,包括:
所述安全功能模块接收所述交易应用模块发送的第一交易消息;所述第一交易消息包括第一标识和/或安全交易数据需求参数,所述第一标识用于标识所述交易应用模块或当前所述交易应用模块使用的虚拟卡;所述安全交易数据需求参数用于指示所述安全功能模块提供与所述安全交易数据需求参数对应的安全交易数据;
所述安全功能模块根据所述第一交易消息、或所述第一交易消息和第二标识获取安全交易数据,所述第二标识用于唯一标识所述安全功能模块;所述安全交易数据,是指交易过程中使用的可以提升安全性的数据;
所述安全功能模块将所述安全交易数据发送给所述交易应用模块;
所述交易应用模块向收单终端发送第二交易消息,所述第二交易消息中包括所述安全交易数据、所述第一标识和第三标识,所述第三标识用于标识所述交易终端。
2.根据权利要求1所述的方法,其特征在于,在所述安全功能模块根据所述第一交易消息、或所述第一交易消息和第二标识获取安全交易数据之前,所述方法还包括:
所述安全功能模块接收所述交易应用模块发送的交易信息,所述交易信息是交易过程中的安全辅助数据信息或业务数据。
3.根据权利要求2所述的方法,其特征在于,所述安全功能模块根据所述第一交易消息、或所述第一交易消息和第二标识获取安全交易数据,具体包括:
所述安全功能模块将与所述第一标识对应的至少一个第一安全处理数据中的一个作为所述安全交易数据;所述第一安全处理数据是由服务器为所述交易终端中的所述第一标识生成的,且所述第一安全处理数据是所述安全功能模块预先从所述服务器获得并保存在所述TEE中;
或者,所述安全功能模块根据与所述第一标识对应的第一规则获得第二安全处理数据,将所述第二安全处理数据作为所述安全交易数据;所述第一规则是所述安全功能模块预置或从所述服务器获取的,所述第一规则包括第一算法和第一数值;
或者,所述安全功能模块根据与所述第一标识对应的第二规则,对第一数据进行加密得到第三安全处理数据,将所述第三安全处理数据作为所述安全交易数据;所述第二规则是所述安全功能模块预置或从所述服务器获取的,所述第二规则包括第一加密算法和至少一个第一密钥,所述第一数据包括所述交易信息和/或所述第二标识。
4.根据权利要求2所述的方法,其特征在于,所述安全交易数据需求参数包括以下参数中的至少一个:安全交易数据长度参数、安全交易数据加密类型参数;所述安全交易数据长度参数用于指示所述安全功能模块提供的所述安全交易数据的长度要求;所述安全交易数据加密类型参数用于指示所述安全功能模块提供的所述安全交易数据的类型;
所述安全功能模块根据所述第一交易消息、或所述第一交易消息和第二标识获取安全交易数据,具体包括:
所述安全功能模块将与所述安全交易数据需求参数对应的至少一个第四安全处理数据中的一个作为所述安全交易数据;所述至少一个第四安全处理数据是由服务器根据所述安全交易数据需求参数生成的,由所述安全功能模块预先从所述服务器获得并保存在所述TEE中;
或者,所述安全功能模块根据与所述安全交易数据需求参数对应的第三规则生成第五安全处理数据,将所述第五安全处理数据作为所述安全交易数据;所述第三规则是所述安全功能模块预置或从所述服务器获取的,所述第三规则包括第二算法和第二数值;
或者,所述安全功能模块根据与所述安全交易数据需求参数对应的第四规则,对第二数据进行加密得到第六安全处理数据,将所述第六安全处理数据作为所述安全交易数据;所述第四规则是所述安全功能模块预置或从所述服务器获取的,所述第四规则包括第二加密算法和至少一个第二密钥,所述第二数据包括所述交易信息和/或所述第二标识。
5.根据权利要求1所述的方法,其特征在于,所述安全功能模块接收所述交易应用模块发送的第一交易消息之前,所述方法还包括:
所述交易应用模块向服务器提交注册请求消息,所述注册请求消息包括所述第一标识、所述交易应用模块对应的交易账户信息和所述第三标识,以便所述服务器保存所述第一标识、所述交易应用模块对应的交易账户信息和所述第三标识。
6.根据权利要求1或2所述的方法,其特征在于,所述交易终端还包括校验模块,所述安全功能模块接收所述交易应用模块发送的第一交易消息之前,所述方法还包括:
所述校验模块进行安全校验;
所述校验模块确定所述安全校验的结果为通过。
7.根据权利要求6所述的方法,其特征在于,所述校验模块进行安全校验之前,所述方法还包括:
所述交易应用模块生成所述第一交易消息;
所述校验模块根据所述第一交易消息确定需要进行安全校验。
8.一种交易方法,其特征在于,包括:
服务器从收单终端接收到第三交易消息,所述第三交易消息包括安全交易数据、第一标识和第三标识;所述安全交易数据是交易终端的安全功能模块生成的,是指交易过程中使用的可以提升安全性的数据;所述第一标识用于标识所述交易终端中的一个交易应用模块或当前所述交易应用模块使用的虚拟卡,所述第三标识用于标识所述交易终端;
所述服务器根据所述第三交易消息,获得所述第一标识和所述第三标识,并对所述安全交易数据进行交易校验;
所述服务器确定所述交易校验的结果为通过,则根据所述第一标识和所述第三标识确定对应的交易账号,并对所述交易账号进行交易处理。
9.根据权利要求8所述的方法,其特征在于,所述服务器从收单终端接收到第三交易消息之前,所述方法还包括:
接收所述交易应用模块发送的注册请求信息,所述注册请求信息包括所述第一标识、所述交易应用模块对应的交易账户信息和所述第三标识;
保存所述第一标识、所述交易账户信息和所述第三标识。
10.根据权利要求9所述的方法,其特征在于,所述服务器根据所述第三交易消息,获得所述第一标识和所述第三标识,并对所述安全交易数据进行交易校验,具体包括:
所述服务器根据所述第一标识和所述第三标识,确定对应的第七安全处理数据,并使用所述第七安全处理数据对所述安全交易数据进行交易校验;所述第七安全处理数据是所述服务器预先为所述交易应用模块生成的;
或者,所述服务器根据所述第一标识和所述第三标识确定对应的第五规则,根据第五规则得到第八安全处理数据,并使用所述第八安全处理数据对所述安全交易数据进行交易校验;所述第五规则包括第三算法和第三数值,所述第五规则与所述安全功能模块的第一规则相对应,所述第一规则包括第一算法和第一数值;其中,所述第三算法与所述第一算法相同,所述第三数值与所述第一数值相同;
或者,所述服务器根据所述第一标识和所述第三标识,确定对应的第六规则,并根据第六规则对所述安全交易数据进行交易校验;所述第六规则包括第三加密算法和至少一个第三密钥,所述第六规则与所述安全功能模块的第二规则相对应;所述第二规则包括第一加密算法和至少一个第一密钥;其中,所述第六规则可以用于对所述第二规则所加密的数据进行解密处理,得到加密前数据。
11.根据权利要求9所述的方法,其特征在于,所述服务器根据所述第三交易消息,获得所述第一标识和所述第三标识,并对所述安全交易数据进行交易校验,具体包括:
所述服务器获得安全交易数据需求参数和所述第三标识,根据所述安全交易数据需求参数和所述第三标识对所述安全交易数据进行交易校验;所述安全交易数据需求参数包括以下参数中的至少一个:安全交易数据长度参数、安全交易数据加密类型参数;所述安全交易数据长度参数用于指示所述安全功能模块提供的所述安全交易数据的长度要求;所述安全交易数据加密类型参数用于指示所述安全功能模块提供的所述安全交易数据的类型;
其中,所述根据所述安全交易数据需求参数和所述第三标识对所述安全交易数据进行交易校验包括:
所述服务器根据所述安全交易数据需求参数和所述第三标识,确定对应的第九安全处理数据,并使用所述第九安全处理数据对所述安全交易数据进行交易校验;所述第九安全处理数据是所述服务器预先为所述第一标识生成的;
或者,所述服务器根据所述安全交易数据需求参数和所述第三标识,确定对应的第七规则,根据所述第七规则得到第十安全处理数据,并使用所述第十安全处理数据对所述安全交易数据进行交易校验;所述第七规则包括第四算法和第四数值,所述第七规则与所述安全功能模块的第三规则相对应;所述第三规则包括第二算法和第二数值;其中,所述第四算法与所述第二算法相同,所述第四数值与所述第二数值相同;
或者,所述服务器根据所述安全交易数据需求参数和第三标识,确定对应的第八规则,并根据所述第八规则对所述安全交易数据进行校验;所述第八规则包括第四加密算法和至少一个第四密钥,所述第八规则与所述安全功能模块的第四规则相对应;所述第四规则包括第二加密算法和至少一个第二密钥;其中,所述第八规则可以用于对所述第四规则所加密的数据进行解密处理,得到加密前数据。
12.一种交易信息处理方法,应用于具有可信执行环境TEE的交易终端,所述交易终端包括一个安全功能模块和至少一个交易应用模块,所述安全功能模块运行于所述TEE,其特征在于,包括:
所述安全功能模块与所述交易应用模块建立会话连接;
所述安全功能模块获取所述交易应用模块对应的第四标识,所述第四标识用于标识所述交易应用模块或当前所述交易应用模块使用的虚拟卡;
所述安全功能模块获取所述交易应用模块发送的第一消息;所述第一消息包括交易信息,所述交易信息是交易过程中的业务数据;
所述安全功能模块获取所述第四标识对应的业务密钥,使用第五算法和所述业务密钥,对所述交易信息进行加密处理,获得安全交易数据,所述第五算法是加密算法;所述安全交易数据,是指交易过程中使用的可以提升安全性的数据;
所述安全功能模块将所述安全交易数据发送给所述交易应用模块。
13.根据权利要求12所述的方法,其特征在于,所述安全功能模块获取所述交易应用模块发送的第一消息之前,还包括:
所述安全功能模块接收所述交易应用模块发送的第二消息,所述第二消息用于请求生成支付数据;
所述安全功能模块使用第六算法,对所述交易应用模块对应的账户数据和预置的设备密钥进行预设处理,获得第五密钥并保存在所述TEE中,将所述第五密钥作为所述业务密钥;
所述第六算法是密钥导出算法,所述账户数据是所述第二消息中携带的或者是所述安全功能模块从服务器获取的。
14.根据权利要求12所述的方法,其特征在于,所述安全功能模块获取所述第四标识对应的业务密钥包括:
所述安全功能模块确认所述业务密钥不存在,则使用第七算法对第三数据进行处理获得第六密钥并保存在所述TEE中,将所述第六密钥作为所述业务密钥;
其中,所述第七算法是密钥导出算法,所述第三数据包括第七密钥,所述第七密钥是所述安全功能模块从服务器获取的;
或者,所述安全功能模块确认所述业务密钥不存在,则向服务器发送密钥获取请求,并接收所述服务器的应答消息,所述应答消息包括第八密钥;所述安全功能模块获取所述应答消息中的所述第八密钥,并将所述第八密钥更新或保存在所述TEE中,作为所述业务密钥。
15.根据权利要求12所述的方法,其特征在于,所述安全功能模块获取所述第四标识对应的业务密钥包括:
所述安全功能模块确认所述业务密钥存在且已超出使用阈值限制,则使用第八算法对第三数据进行处理获得第六密钥,所述安全功能模块将所述业务密钥更新为所述第六密钥并保存在所述TEE中;所述使用阈值限制包括使用时间阈值限制或使用次数阈值限制,所述第八算法是密钥导出算法,所述第三数据包括第七密钥,所述第七密钥是所述安全功能模块从服务器获取的,所述第六密钥有所述使用阈值限制,所述第七密钥有所述使用阈值限制;
或者,所述安全功能模块确认所述业务密钥存在且已超出使用阈值限制,则所述安全功能模块向服务器发送密钥获取请求,并接收所述服务器的应答消息,所述应答消息包括第八密钥,所述安全功能模块获取所述应答消息中的所述第八密钥,将所述第八密钥更新为所述业务密钥并保存在所述TEE中;所述使用阈值限制包括使用时间阈值限制或使用次数阈值限制,所述第八密钥有所述使用阈值限制。
16.根据权利要求12-15任一项所述的方法,其特征在于,所述交易终端还包括校验模块,所述安全功能模块接收所述交易应用模块发送的第一消息之前,所述方法还包括:
所述校验模块进行安全校验;
所述校验模块确定所述安全校验的结果为通过。
17.一种交易终端,具有可信执行环境TEE,其特征在于,包括:
处理器,所述处理器包括安全功能模块,所述安全功能模块用于根据第一交易消息或所述第一交易消息和第二标识获取安全交易数据;所述第一交易消息包括第一标识和/或安全交易数据需求参数,所述第一标识用于标识所述交易终端的交易应用模块或当前所述交易应用模块使用的虚拟卡;所述第二标识用于唯一标识所述交易终端的安全功能模块,所述安全功能模块运行于所述TEE;所述安全交易数据需求参数用于指示所述安全功能模块提供与所述安全交易数据需求参数对应的安全交易数据;所述安全交易数据,是指交易过程中使用的可以提升安全性的数据;
发射器,用于向收单终端发送第二交易消息,所述第二交易消息中包括所述安全交易数据、所述第一标识和第三标识,所述第三标识用于标识所述交易终端。
18.根据权利要求17所述的交易终端,其特征在于,
所述处理器具体用于,将与所述第一标识对应的至少一个第一安全处理数据中的一个作为所述安全交易数据;所述第一安全处理数据是由服务器为所述交易终端中的所述第一标识生成的,且所述第一安全处理数据是预先从所述服务器获得并保存在所述TEE中;
或者,根据与所述第一标识对应的第一规则获得第二安全处理数据,将所述第二安全处理数据作为所述安全交易数据;所述第一规则是预置或从所述服务器获取的,所述第一规则包括第一算法和第一数值;
或者,根据与所述第一标识对应的第二规则,对第一数据进行加密得到第三安全处理数据,将所述第三安全处理数据作为所述安全交易数据;所述第二规则是所述安全功能模块预置或从所述服务器获取的,所述第二规则包括第一加密算法和至少一个第一密钥,所述第一数据包括交易信息和/或所述第二标识,所述交易信息是由所述交易应用模块发送给所述安全功能模块的,所述交易信息是交易过程中的安全辅助数据信息或业务数据。
19.根据权利要求17所述的交易终端,其特征在于,所述安全交易数据需求参数包括以下参数中的至少一个:安全交易数据长度参数、安全交易数据加密类型参数;所述安全交易数据长度参数用于指示所述安全功能模块提供的所述安全交易数据的长度要求;所述安全交易数据加密类型参数用于指示所述安全功能模块提供的所述安全交易数据的类型;
所述处理器具体用于,将与所述安全交易数据需求参数对应的至少一个第四安全处理数据中的一个作为所述安全交易数据;所述至少一个第四安全处理数据是由服务器根据所述安全交易数据需求参数生成的,预先从所述服务器获得并保存在所述TEE中;
或者,根据与所述安全交易数据需求参数对应的第三规则生成第五安全处理数据,将所述第五安全处理数据作为所述安全交易数据;所述第三规则是预置或从所述服务器获取的,所述第三规则包括第二算法和第二数值;
或者,根据与所述安全交易数据需求参数对应的第四规则,对第二数据进行加密得到第六安全处理数据,将所述第六安全处理数据作为所述安全交易数据;所述第四规则是预置或从所述服务器获取的,所述第四规则包括第二加密算法和至少一个第二密钥,所述第二数据包括交易信息和/或所述第二标识,所述交易信息是由所述交易应用模块发送给所述安全功能模块的,所述交易信息是交易过程中的安全辅助数据信息或业务数据。
20.根据权利要求17所述的交易终端,其特征在于,所述发射器还用于,向服务器提交注册请求消息,所述注册请求消息包括所述第一标识、所述交易应用模块对应的交易账户信息和所述第三标识,以便所述服务器保存所述第一标识、所述交易应用模块对应的交易账户信息和所述第三标识。
21.根据权利要求17所述的交易终端,其特征在于,所述处理器还用于,根据第一交易消息或所述第一交易消息和第二标识获取安全交易数据之前,进行安全校验,且确定所述安全校验的结果为通过。
22.根据权利要求21所述的交易终端,其特征在于,所述处理器还用于,进行安全校验之前,生成所述第一交易消息,根据所述第一交易消息确定需要进行安全校验。
23.一种服务器,其特征在于,包括:
接收器,用于从收单终端接收到第三交易消息,所述第三交易消息至少包含安全交易数据、第一标识和第三标识;所述安全交易数据是交易终端的安全功能模块生成的,所述安全交易数据,是指交易过程中使用的可以提升安全性的数据;所述第一标识用于标识所述交易终端中的一个交易应用模块或当前所述交易应用模块使用的虚拟卡,所述第三标识用于标识所述交易终端;
处理器,根据所述第三交易消息,获得所述第一标识和所述第三标识,并对所述安全交易数据进行交易校验;
所述处理器还用于,确定所述交易校验的结果为通过,则根据所述第一标识和所述第三标识确定对应的交易账号,并对所述交易账号进行交易处理。
24.根据权利要求23所述的服务器,其特征在于,所述接收器还用于,从收单终端接收到第三交易消息之前,接收所述交易终端发送的注册请求信息,所述注册请求信息包括所述第一标识,所述交易应用模块对应的所述交易账号以及所述第三标识;
所述处理器用于,保存所述第一标识,所述交易账号和所述第三标识。
25.根据权利要求24所述的服务器,其特征在于,所述处理器具体用于,根据所述第一标识和所述第三标识,确定对应的第七安全处理数据,并使用所述第七安全处理数据对所述安全交易数据进行交易校验;所述第七安全处理数据是所述服务器预先为所述交易应用模块生成的;
或者,根据所述第一标识和所述第三标识确定对应的第五规则,根据第五规则得到第八安全处理数据,并使用所述第八安全处理数据对所述安全交易数据进行交易校验;所述第五规则包括第三算法和第三数值,所述第五规则与所述安全功能模块的第一规则相对应,所述第一规则包括第一算法和第一数值;其中,所述第三算法与所述第一算法相同,所述第三数值与所述第一数值相同;
或者,根据所述第一标识和所述第三标识,确定对应的第六规则,并根据第六规则对所述安全交易数据进行交易校验;所述第六规则包括第三加密算法和至少一个第三密钥,所述第六规则与所述安全功能模块的第二规则相对应;所述第二规则包括第一加密算法和至少一个第一密钥;其中,所述第六规则可以用于对所述第二规则所加密的数据进行解密处理得到加密前数据。
26.根据权利要求24所述的服务器,其特征在于,所述处理器具体用于,获得安全交易数据需求参数和所述第三标识,根据所述安全交易数据需求参数和所述第三标识对所述安全交易数据进行交易校验;所述安全交易数据需求参数包括以下参数中的至少一个:安全交易数据长度参数、安全交易数据加密类型参数;所述安全交易数据长度参数用于指示提供的所述安全交易数据的长度要求;所述安全交易数据加密类型参数用于指示所述安全功能模块提供的所述安全交易数据的类型;
其中,所述根据所述安全交易数据需求参数和所述第三标识对所述安全交易数据进行交易校验包括:
根据所述安全交易数据需求参数和所述第三标识,确定对应的第九安全处理数据,并使用所述第九安全处理数据对所述安全交易数据进行交易校验;所述第九安全处理数据是所述服务器预先为所述第一标识生成的;
或者,根据所述安全交易数据需求参数和所述第三标识,确定对应的第七规则,根据所述第七规则得到第十安全处理数据,并根据所述第十安全处理数据对所述安全交易数据进行交易校验;所述第七规则包括第四算法和第四数值,所述第七规则与所述安全功能模块的第三规则相对应;所述第三规则包括第二算法和第二数值;其中,所述第四算法与所述第二算法相同,所述第四数值与所述第二数值相同;
或者,根据所述安全交易数据需求参数和第三标识,确定对应的第八规则,并根据所述第八规则对所述安全交易数据进行校验;所述第八规则包括第四加密算法和至少一个第四个密钥,所述第八规则与所述交易终端中所述安全功能模块的第四规则相对应;所述第四规则包括第二加密算法和至少一个第二密钥;其中,所述第八规则可以用于对所述第四规则所加密的数据进行解密处理得到加密前数据。
27.一种交易终端,具有可信执行环境TEE,其特征在于,包括:
处理器,所述处理器包括安全功能模块,所述安全功能模块运行于所述TEE;所述安全功能模块用于获取第四标识,所述第四标识用于标识所述交易终端的一个交易应用模块,或者所述第四标识用于标识当前所述交易应用模块使用的虚拟卡;获取第一消息,所述第一消息包括交易信息;其中,所述第四标识和所述第一消息来自所述交易终端的交易应用模块;
所述安全功能模块还用于,获取所述第四标识对应的业务密钥,使用第五算法和所述业务密钥,对所述交易信息进行加密处理,获得安全交易数据;所述安全交易数据,是指交易过程中使用的可以提升安全性的数据。
28.根据权利要求27所述的交易终端,其特征在于,所述处理器还用于,获取所述第一消息之前,获取第二消息,所述第二消息用于请求生成支付数据;
使用第六算法,对账户数据和预置的设备密钥进行预设处理,获得第五密钥并保存在所述TEE中,将所述第五密钥作为所述业务密钥;所述第六算法是密钥导出算法,所述账户数据是所述第二消息中携带的或者是所述交易终端的安全功能模块从服务器获取的。
29.根据权利要求27所述的交易终端,其特征在于,还包括发射器、接收器,
所述发射器具体用于,向服务器发送密钥获取请求;
所述接收器用于,接收所述服务器的应答消息,所述应答消息中包括第八密钥;
所述处理器用于,确认所述业务密钥存在且已超出使用阈值限制,获取所述应答消息中的所述第八密钥,将所述第八密钥更新为所述业务密钥并保存在所述TEE中;所述使用阈值限制包括使用时间阈值限制或使用次数阈值限制,所述第八密钥有所述使用阈值限制;
所述处理器还用于,确认所述业务密钥存在且已超出使用阈值限制,则使用第八算法对第三数据进行处理获得第六密钥,并将所述业务密钥更新为所述第六密钥并保存在所述TEE中;所述使用阈值限制包括使用时间阈值限制或使用次数阈值限制,所述第八算法是密钥导出算法,所述第三数据包括第七密钥,所述第七密钥是所述交易终端的安全功能模块从服务器获取的,所述第六密钥有所述使用阈值限制,所述第七密钥有所述使用阈值限制。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2016/077899 WO2017166135A1 (zh) | 2016-03-30 | 2016-03-30 | 交易方法、交易信息处理方法、交易终端及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108604280A CN108604280A (zh) | 2018-09-28 |
CN108604280B true CN108604280B (zh) | 2021-05-04 |
Family
ID=59963235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680080768.1A Active CN108604280B (zh) | 2016-03-30 | 2016-03-30 | 交易方法、交易信息处理方法、交易终端及服务器 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10949530B2 (zh) |
EP (1) | EP3425550B1 (zh) |
CN (1) | CN108604280B (zh) |
WO (1) | WO2017166135A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3116161B1 (en) | 2014-04-01 | 2018-03-14 | Huawei Device (Dongguan) Co., Ltd. | Security unit management method and terminal |
CN107645403B (zh) * | 2016-07-22 | 2020-07-03 | 阿里巴巴集团控股有限公司 | 终端规则引擎装置、终端规则运行方法 |
US20210090077A1 (en) * | 2019-09-19 | 2021-03-25 | Bank Of America Corporation | System architectures for point-of-sale data obfuscation, data removal and data encryption |
CN111740827B (zh) * | 2020-07-28 | 2022-10-28 | 北京金山云网络技术有限公司 | 数据传输方法、装置、计算机设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067335A (zh) * | 2011-10-18 | 2013-04-24 | 中国移动通信集团公司 | 一种非接触方式实现信息交互的方法、相关设备及系统 |
CN104063790A (zh) * | 2013-09-18 | 2014-09-24 | 腾讯科技(深圳)有限公司 | 通过移动终端提供授权的方法及系统 |
CN104283687A (zh) * | 2013-07-10 | 2015-01-14 | Ca公司 | 用于预生成用于电子交易的会话密钥的方法及设备 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1265676C (zh) * | 2004-04-02 | 2006-07-19 | 华为技术有限公司 | 一种实现漫游用户使用拜访网络内业务的方法 |
US11018724B2 (en) * | 2006-09-24 | 2021-05-25 | Rfcyber Corp. | Method and apparatus for emulating multiple cards in mobile devices |
US8621168B2 (en) * | 2010-12-17 | 2013-12-31 | Google Inc. | Partitioning the namespace of a contactless smart card |
EP2681701A4 (en) * | 2011-03-04 | 2014-08-20 | Visa Int Service Ass | INTEGRATION OF PAYMENT OPTIONS IN SAFE ITEMS OF COMPUTERS |
US8433657B2 (en) * | 2011-04-15 | 2013-04-30 | Ofinno Technologies, Llc | Secure and mobile financial transaction |
FR2985063B1 (fr) * | 2011-12-21 | 2014-07-04 | Morpho | Procede de routage au sein d'un terminal mobile emulant une carte de paiement sans contact |
US11836706B2 (en) | 2012-04-16 | 2023-12-05 | Sticky.Io, Inc. | Systems and methods for facilitating a transaction using a virtual card on a mobile device |
US9317689B2 (en) * | 2012-06-15 | 2016-04-19 | Visa International Service Association | Method and apparatus for secure application execution |
JP5964499B2 (ja) | 2012-07-09 | 2016-08-03 | インテル コーポレイション | モバイル・デバイスとのセキュア・トランザクションを可能にするシステム及び方法 |
US9973501B2 (en) * | 2012-10-09 | 2018-05-15 | Cupp Computing As | Transaction security systems and methods |
US20160019536A1 (en) | 2012-10-17 | 2016-01-21 | Royal Bank Of Canada | Secure processing of data |
WO2015009765A1 (en) | 2013-07-15 | 2015-01-22 | Visa International Service Association | Secure remote payment transaction processing |
EP3085128A4 (en) | 2013-12-19 | 2017-05-03 | Google, Inc. | Systems, methods, and computer program products for obtaining mobile device data |
CN105830107A (zh) * | 2013-12-19 | 2016-08-03 | 维萨国际服务协会 | 基于云的交易方法和系统 |
EP2911076A1 (en) | 2014-02-24 | 2015-08-26 | Mastercard International Incorporated | Biometric authentication |
EP3116161B1 (en) | 2014-04-01 | 2018-03-14 | Huawei Device (Dongguan) Co., Ltd. | Security unit management method and terminal |
WO2016033499A1 (en) | 2014-08-29 | 2016-03-03 | Mastercard International Incorporated | Secure on device cardholder authentication usning biometric data |
US9373113B2 (en) * | 2014-09-12 | 2016-06-21 | Amadeus S.A.S. | Payment terminal sharing |
US20170364911A1 (en) * | 2014-12-12 | 2017-12-21 | Cryptomathic Ltd | Systems and method for enabling secure transaction |
CN204360381U (zh) * | 2014-12-31 | 2015-05-27 | 北京握奇智能科技有限公司 | 移动设备 |
FR3031614B1 (fr) * | 2015-01-09 | 2018-03-23 | Ingenico Group | Procede de traitement d'une transaction a partir d'un terminal de communication. |
CN104881779A (zh) | 2015-06-17 | 2015-09-02 | 恒宝股份有限公司 | 一种移动融合支付装置、系统及支付方法 |
-
2016
- 2016-03-30 CN CN201680080768.1A patent/CN108604280B/zh active Active
- 2016-03-30 EP EP16895916.1A patent/EP3425550B1/en active Active
- 2016-03-30 WO PCT/CN2016/077899 patent/WO2017166135A1/zh active Application Filing
- 2016-03-30 US US16/090,243 patent/US10949530B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067335A (zh) * | 2011-10-18 | 2013-04-24 | 中国移动通信集团公司 | 一种非接触方式实现信息交互的方法、相关设备及系统 |
CN104283687A (zh) * | 2013-07-10 | 2015-01-14 | Ca公司 | 用于预生成用于电子交易的会话密钥的方法及设备 |
CN104063790A (zh) * | 2013-09-18 | 2014-09-24 | 腾讯科技(深圳)有限公司 | 通过移动终端提供授权的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
US20190114620A1 (en) | 2019-04-18 |
US10949530B2 (en) | 2021-03-16 |
CN108604280A (zh) | 2018-09-28 |
EP3425550A4 (en) | 2019-01-09 |
WO2017166135A1 (zh) | 2017-10-05 |
EP3425550A1 (en) | 2019-01-09 |
EP3425550B1 (en) | 2020-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110337797B (zh) | 用于执行双因素认证的方法 | |
CN107925572B (zh) | 软件应用程序到通信装置的安全绑定 | |
CN106797311B (zh) | 用于安全密码生成的系统、方法和存储介质 | |
EP3146747B1 (en) | Offline authentication | |
US10120993B2 (en) | Secure identity binding (SIB) | |
CA2838763C (en) | Credential authentication methods and systems | |
US11824998B2 (en) | System and method for software module binding | |
US9218493B2 (en) | Key camouflaging using a machine identifier | |
US10223690B2 (en) | Alternative account identifier | |
US20160182543A1 (en) | Software tampering detection and reporting process | |
CA2980114A1 (en) | Authentication in ubiquitous environment | |
CN104662864A (zh) | 使用了移动认证应用的用户方便的认证方法和装置 | |
US11880832B2 (en) | Method and system for enhancing the security of a transaction | |
CN107210912B (zh) | 对应用程序库的授权访问 | |
US20160191504A1 (en) | Mobile terminal for providing one time password and operating method thereof | |
CN108604280B (zh) | 交易方法、交易信息处理方法、交易终端及服务器 | |
EP3416118A1 (en) | Method of controlling compliance between a payment key and a cardholder verification method | |
CN110313005B (zh) | 用于设备应用的安全性架构 | |
KR101522136B1 (ko) | 지정 단말을 경유하는 카드와 서버 간 종단 간 인증 방법 | |
CN112567682B (zh) | 用于生成密码以进行令牌交互的令牌密钥 | |
KR20150071346A (ko) | 래크형 보안서버를 이용한 보안 데이터 처리 서비스 시스템 및 방법 |
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 |