CN107993062A - Pos终端交易方法、装置、计算机设备及可读存储介质 - Google Patents
Pos终端交易方法、装置、计算机设备及可读存储介质 Download PDFInfo
- Publication number
- CN107993062A CN107993062A CN201711205927.9A CN201711205927A CN107993062A CN 107993062 A CN107993062 A CN 107993062A CN 201711205927 A CN201711205927 A CN 201711205927A CN 107993062 A CN107993062 A CN 107993062A
- Authority
- CN
- China
- Prior art keywords
- card
- user
- ciphertext
- pos terminal
- input equipments
- 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.)
- Pending
Links
Classifications
-
- 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
- G06Q20/206—Point-of-sale [POS] network systems comprising security or operator identification provisions, e.g. password entry
-
- 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/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4012—Verifying personal identification numbers [PIN]
Abstract
本发明涉及一种POS终端交易方法、装置、计算机设备及可读存储介质。一种POS终端交易方法,包括:检测是否存在与POS终端进行交易的用户卡片;当存在与POS终端进行交易的用户卡片时,则通过嵌入POS终端的PIN输入设备对用户卡片进行认证;在用户卡片认证成功后,通过安装于POS终端的应用程序向用户卡片发送交易请求;接收用户卡片返回的与交易请求对应的交易数据。上述POS终端交易方法、装置、计算机设备及可读存储介质,通过POS终端的PIN输入设备直接获取CPU卡的交易信息,并根据交易信息选择对应的解密程序,对CPU卡的交易密钥进行解密,而不需要借助SAM卡完成交易,使得POS终端交易成本低。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种POS终端交易方法、装置、计算机设备及可读存储介质。
背景技术
随着电子与网络技术的发展,电子交易也得到越来越广泛的应用,其中卡交易在其中占有重要的地位,POS(Point Of Sale支付终端)机也随之成为当前热门的交易终端。
传统的POS终端使用的CPU卡(如DESfire卡)在应用在支付领域时通常采用对称密钥,即CPU卡与读卡器具有相同的密钥,CPU卡有密钥的存储功能,在外售前会注入密钥;读卡器的密钥存储在SAM卡中,在部署读卡器前注入密钥,运行在读卡器的应用程序负责CPU卡的业务通讯逻辑,接触不到密钥明文。
因而传统POS机在针对CPU卡交易时,需要通过SAM卡来对CPU卡中的密钥解密,实现安全交易,这就需要POS机支持SAM卡的使用,交易过程也需要通过SAM卡完成,使得成本增加。
发明内容
基于此,有必要针对传统的POS终端交易成本高的问题,提供一种POS终端交易方法。
一种POS终端交易方法,包括:
检测是否存在与POS终端进行交易的用户卡片;
当存在与所述POS终端进行交易的用户卡片时,则通过嵌入POS终端的PIN输入设备对所述用户卡片进行认证;
在所述用户卡片认证成功后,通过安装于所述POS终端的应用程序向所述用户卡片发送交易请求;
接收所述用户卡片返回的与所述交易请求对应的交易数据。
在其中一个实施例中,所述通过嵌入POS终端的PIN输入设备对所述用户卡片进行认证的步骤,包括:
通过嵌入POS终端的PIN输入设备接收所述用户卡片发送的第一密文;
通过所述PIN输入设备对所述第一密文进行处理得到第二密文,并发送所述第二密文至所述用户卡片;
在所述用户卡片通过所述第二密文对所述PIN输入设备认证成功后,通过所述PIN输入设备接收所述用户卡片返回的第三密文;
通过所述PIN输入设备根据所述第三密文对所述用户卡片进行认证。
在其中一个实施例中,所述对所述第一密文进行处理得到第二密文的步骤,包括:
根据与所述用户卡片对应的终端密钥对所述第一密文进行解密处理得到终端明文;
生成第一附加明文,将所述终端明文和所述第一附加明文进行拼接;
通过所述终端密钥对拼接后的终端明文和第一附加明文进行加密处理得到第二密文。
在其中一个实施例中,所述接收所述用户卡片返回的第三密文的步骤,包括:
接收所述用户卡片发送的根据对所述第二密文解密得到的第二附加明文生成的第三密文。
在其中一个实施例中,所述根据所述第三密文对所述用户卡片进行认证的步骤,包括:
根据所述终端密钥对所述第三密文进行解密处理得到第二附加明文;
当所述第一附加明文与所述第二附加明文相同时,则所述用户卡片认证成功;
当所述第一附加明文与所述第二附加明文不同时,则所述用户卡片认证失败。
在其中一个实施例中,所述检测是否存在与POS终端进行交易的用户卡片的步骤之前,包括:
通过应用程序接收服务器发送的与用户卡片对应的加密后的终端密钥,并将加密后的终端密钥注入至PIN输入设备;
通过所述PIN输入设备对所述加密后的密钥进行解密得到与用户卡片对应的与用户卡片对应的密钥。
在其中一个实施例中,所述交易数据为密文数据;
所述接收所述用户卡片返回的与所述交易请求对应的交易数据的步骤之后,还包括:
通过所述应用程序将所述密文数据发送至所述PIN输入设备;
通过所述PIN输入设备对所述密文数据进行解密处理得到明文数据;
通过所述PIN输入设备将所述明文数据返回至所述应用程序。
一种POS终端交易装置,包括:
检测模块,用于检测是否存在与POS终端进行交易的用户卡片;
认证模块,用于当存在与所述POS终端进行交易的用户卡片时,则通过嵌入POS终端的PIN输入设备对所述用户卡片进行认证;
交易模块,用于在所述用户卡片认证成功后,通过安装于所述POS终端的应用程序向所述用户卡片发送交易请求;
接收模块,用于接收所述用户卡片返回的与所述交易请求对应的交易数据。
一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法中的步骤。
一种可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法中的步骤。
上述POS终端交易方法、装置、计算机设备及可读存储介质,通过POS终端的PIN输入设备直接获取CPU卡的交易信息,并根据所述交易信息选择对应的解密程序,对CPU卡的交易密钥进行解密,而不需要借助SAM卡完成交易,使得POS终端交易成本低。
附图说明
图1为一实施例中POS终端交易方法应用场景图;
图2为一实施例中POS终端交易方法的流程示意图;
图3为图2所示实施例中的步骤S204的流程示意图;
图4为一实施例中一次实际交易中的认证步骤的流程示意图;
图5为图2所示实施例中的步骤S208的流程示意图;
图6为一实施例中POS终端交易装置的结构示意图;
图7为一实施例中计算机设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。
在详细说明根据本发明的实施例前,应该注意到的是,的实施例主要在于与POS终端交易方法、装置、计算机设备及可读存储介质相关的步骤和系统组件的组合。因此,所属系统组件和方法步骤已经在附图中通过常规符号在适当的位置表示出来了,并且只示出了与理解本发明的实施例有关的细节,以免因对于得益于本发明的本领域普通技术人员而言显而易见的那些细节模糊了本发明的公开内容。
在本文中,诸如左和右,上和下,前和后,第一和第二之类的关系术语仅仅用来区分一个实体或动作与另一个实体或动作,而不一定要求或暗示这种实体或动作之间的任何实际的这种关系或顺序。术语“包括”、“包含”或任何其他变体旨在涵盖非排他性的包含,由此使得包括一系列要素的过程、方法、物品或者设备不仅包含这些要素,而且还包含没有明确列出的其他要素,或者为这种过程、方法、物品或者设备所固有的要素。
请参见图1,图1提供一实施例中POS终端交易方法应用场景图,其中包括POS终端交易设备和用户卡片;POS(Point Of Sale一种支付设备)终端交易设备主要是指商家使用的POS机或一卡通刷卡机等,用户卡片是能够通过POS终端交易设备实现交易操作的CPU(Central Processing Unit)卡片,如DESfire卡;用户卡片可插入POS终端交易设备,或者二者通过非接触式磁片感应、网络连接等方式连接。POS终端交易设备设置有PIN输入设备和应用程序,当POS终端检测到与用户卡片连接成功时,PIN输入设备对卡片进行认证,认证成功后应用程序向卡片发送交易请求,接收用户卡片返回的交易数据,完成交易流程。
请参见图2,提供一实施例中POS终端交易方法的流程图,本实施例以该方法应用到上述图1中的POS终端交易设备来举例说明,该POS终端交易设备上运行有终端交易程序,通过该终端交易程序来完成用户卡片的交易流程,该方法包括如下步骤:
S202:检测是否存在与POS终端进行交易的用户卡片。
其中,用户卡片是能够通过POS终端交易设备实现交易操作的CPU(CentralProcessing Unit)卡片,如DESfire卡。
DESfire卡一种非接触式芯片卡,在市场上常被制作成非接触式CPU卡,卡内的集成电路中带有微处理器CPU、存储单元(包括随机存储器RAM、程序存储器ROM(FLASH)、用户数据存储器EEPROM)以及芯片操作系统COS。相当于一台微型计算机,不仅具有数据存储功能,同时具有命令处理和数据安全保护等功能,广泛应用于公交一卡通、门禁、校园一卡通等小额支付领域。
具体地,POS终端检测是否存在与其进行交易的用户卡片,即是否存在与POS终端成功连接的用户卡片。用户卡片可以通过插入POS终端交易设备的方式与POS终端进行连接,或者二者通过非接触式磁片感应、网络连接等方式连接。
S204:当存在与POS终端进行交易的用户卡片时,则通过嵌入POS终端的PIN输入设备对用户卡片进行认证。
其中,嵌入POS终端的PIN输入设备是在POS终端上设置的个人身份识别密码(Personal Identification Number)输入设备,其主要包括了如下功能:
a)读取存储在CPU中的根密钥SEK(System Encryption Key系统加密密钥),管理交易密钥,保证安装的应用程序无法获取根密钥和交易密钥。
b)支持交易中需要的算法,比如3DES(Triple Data Encryption Algorithm三重数据加密算法)、RSA(一种公钥加密算法)、AES(Advanced Encryption Standard在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准)、CMAC(Cypher-BasedMessage Authentication Code基于AES等对称加密方式实现消息认证,一种保障信息完整性和认证的密码学方法)算法。
由于上述中DESfire卡可使用在支付行业,对于敏感的数据均采用加密传输,那么就要求有一个交易密钥,目前使用较多的为对称密钥,即DESfire卡与读卡器具有相同的密钥,均涉及密钥的存储与运算,DESfire有密钥的存储功能,在外售前会注入密钥;读卡器的密钥存储,则一般有两种情况:
a)密钥存储在SAM(Security Access module)卡中,在部署读卡器前注入密钥,运行在读卡器的应用程序负责DESfire的业务通讯逻辑,接触不到密钥明文。
b)密钥存储在应用程序中,应用程序负责密钥的存储和运算。
传统的POS终端是通过外置的SAM卡实现认证功能。SAM卡,也是一种CPU卡,存储了密钥和加解密算法,一般安装在智能卡终端设备上,作为智能卡终端的安全管控,实现终端与卡片之间的合法性认证,可广泛用于城市--卡通、企业--卡通、身份识别、安全控制、小额支付等领域。即在传统的POS终端对用户卡片进行认证时,需要借助SAM卡中存储的密钥对用户卡片的密文进行解密,从而完成整个验证的过程;而本申请则通过POS终端中自带的PIN输入设备完成用户卡片认证的过程,而不需借助SAM卡,从而可以降低成本。
具体地,当POS终端检测到用户卡片已经连接成功时,需要通过嵌入POS终端的PIN输入设备对用户卡片进行认证,而认证的过程是通过嵌入POS终端的PIN输入设备完成传统交易中通过SAM卡认证卡片的过程,实际上是一个密钥与密文匹配解密的过程。
S206:在用户卡片认证成功后,通过安装于POS终端的应用程序向用户卡片发送交易请求。
其中,POS终端的应用程序是安装在POS终端存储有交易执行规则的程序,用于完成用户卡片和PIN输入设备的交互以及向用户卡片发送交易请求等功能。
交易请求是当线下确定交易内容后,通过安装于POS终端的应用程序向用户卡片发送的交易信息,包括刷卡金额、查询用户卡片信息等。
具体地,用户卡片认证成功,即为通过嵌入POS终端的PIN输入设备对用户卡片中的密码解密成功,确认用户卡片可在此环境中进行安全交易,则通过POS终端的应用程序向用户卡片发送交易请求,开始交易。
S208:接收用户卡片返回的与交易请求对应的交易数据。
具体地,用户卡片接收到POS终端的应用程序发送的交易请求后,根据交易请求,用户卡片返回交易数据,POS终端接收用户卡片返回的交易数据,此交易数据包括:扣除固定金额成功,或返回要读取的用户卡片信息,交易失败信息等等。
本申请中采用POS终端嵌入的PIN输入设备在完成上述两个功能之外,还负责存储原存储在SAM卡中的密钥存储,且PIN输入设备支持SAM卡所具有的密钥运算能力,实现读卡器(POS终端)在省略SAM卡后,又具有与拥有SAM相同安全等级的功能。相比于传统CPU卡在支付行业应用的两种情况,PIN输入设备能安全存储密钥,而应用程序则存储在普通的存储环境,并非安全存储,保证了密钥存储的安全性;且本申请的POS终端交易方法,不需要采购SAM卡,降低了设备成本。
请参见图3,在其中一实施例中,上述方法中的步骤S204中,通过嵌入POS终端的PIN输入设备对用户卡片进行认证的步骤可以包括:
S302:通过嵌入POS终端的PIN输入设备接收用户卡片发送的第一密文。
其中,第一密文是用户卡片在与POS终端连接成功后,自动产生的认证密文。
具体地,用户卡片为DESfire卡时,用户卡片与POS终端连接成功后,产生一个多位的随机数(如8位),采用DSK_C(卡端的DSK,DSK即DESfire key卡密钥)加密,得到一个与随机数相同位数的认证密文,为第一密文,将此第一密文发送给POS终端,嵌入POS终端的PIN输入设备接收此第一密文。
S304:通过PIN输入设备对第一密文进行处理得到第二密文,并发送第二密文至用户卡片。
其中,第二密文是嵌入POS终端的PIN输入设备接收到用户卡片发送的第一密文后,将第一密文进行解密,并对第一密文的解密结果进行处理得到的POS终端验证密文。
具体地,嵌入POS终端的PIN输入设备接收到用户卡片发送的第一密文后,采用DSK_R(读卡器端的DSK,与用户卡片端的加密方式相同)将第一密文进行解密,并将解密后的结果进行处理产生POS终端验证密文,即第二密文,通过PIN输入设备将第二密文发送至用户卡片。
S306:在用户卡片通过第二密文对PIN输入设备认证成功后,通过PIN输入设备接收用户卡片返回的第三密文。
其中,第三密文是用户卡片在接收到PIN输入设备发送的第二密文后,根据第二密文的解密结果与之前发送的加密前的第一密文相比较,进行认证,若认证成功,则向POS终端发送的用于完成PIN输入设备对用户卡片认证的终端密文。
具体地,步骤S304中,将第一密文的解密结果再发送至用户卡片端,若第一密文的解密结果与用户卡片端发送的第一密文相同,则用户卡片对POS终端的认证成功。用户卡片端认证成功后,还需要POS终端的认证,则用户卡片发送用于此次认证的第三密文,POS终端通过PIN输入设备接收第三密文。
S308:通过PIN输入设备根据第三密文对用户卡片进行认证。
PIN输入设备接收到用户卡片发送的第三密文后,再对其进行解密处理,完成整个认证的过程。
上述通过多次的加密解密信息,完成POS终端对用户卡片的认证和用户卡片对POS终端的验证,保证双方满足交易安全的要求,保证交易的安全。
在其中一个实施例中,对第一密文进行处理得到第二密文的步骤,包括:根据与用户卡片对应的终端密钥对第一密文进行解密处理得到终端明文;生成第一附加明文,将终端明文和第一附加明文进行拼接;通过终端密钥对拼接后的终端明文和第一附加明文进行加密处理得到第二密文。
其中,上述终端密钥,是POS终端中嵌入的PIN输入设备在生产时被注入的,用于解密用户卡片发送的密文的密钥。第一附加明文是PIN输入设备在解析出终端明文后,针对终端明文生成的可与之拼接的明文,用于实现POS终端对用户卡片认证的过程。
具体地,POS终端中嵌入PIN输入设备接收到用户卡片发送的第一密文后,需要通过生产时注入的与用户卡片加密方式匹配的终端密钥对第一密文进行解密,解密后得到的明文结果即为终端明文,而解密出的终端明文主要是用于实现用户卡片对POS终端认证的过程,为保证交易的安全性,需要双向认证,故在本实施例中,POS终端根据解密得到终端明文生成一个可与其拼接的附加明文,可结合后续步骤实现POS终端对用户卡片认证的过程;POS终端在发送拼接后的终端明文和第一附加明文之前,必须要对拼接后的内容进行加密,加密后的内容为第二密文,如此才能保证信息传输的安全,同时保证只有可交易的拥有匹配密钥的设备(即在交易的用户卡片)才能对此加密后的信息进行解密,完成认证。
上述实施例中,通过与用户卡片对应的终端密钥完成认证中的加密与解密过程,并通过终端明文和第一附加明文实现双方的认证,通过此实施例中的处理过程,能够更加具体地完成POS终端与用户卡片的认证,确保交易的安全。
在其中一个实施例中,接收用户卡片返回的第三密文的步骤,包括:接收用户卡片发送的根据对第二密文解密得到的第二附加明文生成的第三密文。
具体地,用户卡片接收到POS终端在发送拼接后的终端明文和第一附加明文(即第二密文)后,通过终端明文与步骤S302中的第一密文加密前的内容进行对比,若相同,则用户卡片对POS终端的认证成功;若不同,则认证失败。而需要完成POS终端对用户卡片的认证,则需要用户卡片将接收到的第二密文解析出第二附加明文,再加密后产生第三密文发送至POS终端,POS终端的PIN输入设备将接收到的第三密文通过终端密钥解密后,与POS终端生成的第一附加明文进行对比认证。
在其中一实施例中,若用户卡片对POS终端的认证失败,用户卡片可向POS终端的应用程序发送失败信息。
上述实施例中,在POS终端接收用户卡片返回的第三密文的步骤,用户卡片需要对POS终端发送的第二密文进行解密以及认证的步骤,在认证成功后,才会发送第三密文用以下一步的认证步骤,本实施例详细描述了用户卡片生成第三密文的过程,使得POS终端交易方法中的认证过程更加清楚,也再一次确保了每一认证步骤的安全性。
在其中一个实施例中,通过PIN输入设备根据第三密文对用户卡片进行认证的步骤,包括:根据终端密钥对第三密文进行解密处理得到第二附加明文;当第一附加明文与第二附加明文相同时,则用户卡片认证成功;当第一附加明文与第二附加明文不同时,则用户卡片认证失败。
具体地,在实现上述实施例中用户卡片对POS终端的认证过程后,POS终端也需要进行一次对比认证的过程,而此对比过程则是对比在步骤S中PIN输入设备生成的第一附加明文和通过解密用户卡片发送的第三密文得到的第二附加明文,若相同,则认证成功,若不同,则认证失败;认证成功后则可进入下面的交易流程,而若认证失败,则PIN输入设备可返回一个失败信息至应用程序。
上述的实施例中,详细介绍了POS终端与用户卡片交易前的认证过程,进一步保证交易的安全。
请参见图4,在一次实际交易中,以DESfire卡为例,将用户卡片插入POS机的插卡口,此例中的用户卡片为DESfire卡,POS机检测到插入的DESfire卡连接成功后,开始对插入的卡片进行认证过程。在POS机对插入的卡片检测连接成功的过程中,DESfire卡也进行连接成功的检测。上述的认证步骤具体可以包括:
在DESfire卡检测连接成功后,DESfire卡产生8字节的随机数A,采用DSK_C加密,加密后的随机数A为8字节的密文A_EN。
DESfire卡将密文A_EN发送给POS机。
POS机接收到DESfire卡发送的密文A_EN,通过PIN输入设备采用DSK_R解密A_EN,得到A1,并产生一个8字节的随机数B,将A1与B进行拼接,得到一个16位数的C,并将C加密得到密文C_EN。
POS机密文C_EN发送至DESfire卡。
DESfire卡采用DSK_C解密C_EN,得到C1,并从C1中获取A2与B1,对比A和A2,如果A和A2相同,则DESfire卡端的认证成功,并采用DSK_C将B1加密得到B1_EN;如果A和A2不同,则DESfire卡端的认证失败。
在DESfire卡端的认证成功时,DESfire卡将B1_EN发送至POS机。
POS机接收B1_EN,采用DSK_R将B1_EN解密得到B2,对比B和B2,如果B和B2相同,则POS机卡端的认证成功,继续之后的交易过程;如果B和B2不同,则POS机卡端的认证失败,可在POS终端返回交易失败的信息。
上述实施例中,描述了一种DESfire卡和POS机在实际应用中的认证过程,通过此实施例中所采用的认证流程和方法,按照上述POS终端交易方法满足实际交易的认证需求。
在其中一实施例中,上述方法中的步骤S202中,检测是否存在与POS终端进行交易的用户卡片的步骤之前可以包括:通过应用程序接收服务器发送的与用户卡片对应的加密后的终端密钥,并将加密后的终端密钥注入至PIN输入设备;通过PIN输入设备对加密后的密钥进行解密得到与用户卡片对应的与用户卡片对应的密钥。
在POS终端用于本申请中的交易方法之前,需要将与用户卡片对应的加密后的终端密钥注入到POS终端中嵌入的PIN输入设备中,以完成POS终端与用户卡片的认证,保证交易的安全。
POS终端中嵌入的PIN输入设备中的内存RAM用于存储终端密钥(SEK),如果有外电使用,则用外电供电;如果没有外电,则使用终端上的纽扣电池供电,确保即使在切断外电或者在关机状态下也能保持供电,如果停止所有供电,比如没有外电供电切纽扣电池电量耗尽,RAM数据丢失,SEK被清除。受攻击检测包括了安全CPU收到高温、高压、高频攻击后自动清除SEK,同样POS机在收到开盖等外部攻击后,CPU会自动清除SEK;其中所有的交易密钥都是经过SEK加密后,将密文保存在Flash中,安全CPU收到攻击会丢失SEK,交易密钥密文则无法被解密,这样保证了交易密钥不会被窃取。
注入终端密钥的具体方式为:PIN输入设备主要负责密钥存储和密钥运算工作,应UPTS(UnionPay PIN Transaction Security银联卡受理终端安全规范)要求,包括三层密钥体系(TLK/TMK/TWK),其中,TLK:Terminal Key Loading Key收单行等POS运营商的私有密钥。TMK:Terminal Master Key,Acquirer Master Key终端主密钥,或者称为收单行主密钥。TWK:Transaction Working Key终端工作密钥。顶层密钥TLK注入以明文方式在安全房注入。TMK和TWK则以密文方式注入,采用上一级密钥加入后注入,然后在PED内解密并存储,比如注入一个TWK,首先在后台服务端需要用TMK加密TWK,生产TWK_EN,然后通过交易应用,将TWK_EN写入PIN输入设备,PIN输入设备采用TMK解密TWK_EN,得到TWK,然后采用SEK加密并存储。如需使用TWK,从Flash读取TWK_EN,通过SEK解密,得到TWK明文用于交易。
CPU卡和SAM卡都会有初始化密码,由卡生产商提供,后期可以修改密码,在卡商用前运营商会修改好,其中密钥的修改需要先正确输入原有密钥。
POS机在部署到商户前都会注入TMK,服务后台会用TMK加密DSK_R得到DSK_R_EN,然后通过交易应用将DSK_R_EN注入到PED中,PED采用TMK解密DSK_R_EN得到DSK_R,然后采用SEK加密DSK_R并存储到Flash中。交易应用无法接触到DSK_R,只能透传密文DSK_R_EN到PED,这样的密钥注入更加安全。
请参见图5,在其中一实施例中,上述方法中的步骤S208中,接收用户卡片返回的与交易请求对应的交易数据的步骤之后,还可以包括:
S502:通过应用程序将密文数据发送至PIN输入设备。
具体地,在完成认证阶段后,POS终端与CPU卡通讯包括敏感数据通讯与非敏感数据通讯,对于敏感数据需要采用加密传输,涉及的加解密算法主要包括AES算法、3DES算法和CMAC算法,这些算法PIN输入设备都能够支持;在上述POS终端交易方法认证成功后,需要通过POS终端的应用程序将交易信息发送至用户卡片,此交易信息若为敏感数据,则需要进行加密操作,加密后的交易信息,此处的敏感信息包括改变卡的数据,比如修改金额,读取敏感类卡数据等,用户卡片则根据对接收到加密后的交易信息进行解密后,回复相应的交易数据,此处用户卡片回复的交易数据也需要进行加密操作,即密文数据;POS终端的应用程序具有数据交互的公共,所以主要的发送与接收操作都需要通过应用程序实现,应用程序接收到密文数据后,需要将密文数据转发给PIN输入设备,才能进行解密操作。
S504:通过PIN输入设备对密文数据进行解密处理得到明文数据。
具体地,PIN输入设备接收到应用程序转发的密文数据后,根据注入的终端密钥对密文数据进行解密,得到明文数据,即得到用户卡片的交易数据。
S506:通过PIN输入设备将明文数据返回至应用程序。
具体地,交易是否成功,且能够显示交易数据给用户以及POS终端的使用者也需要通过应用程序来实现,所以在PIN输入设备解密出明文数据后,需要将此明文数据发送给应用程序进行判断和显示等操作。
在另一个实施例中,若上述交易数据为非敏感信息,比如查询账户信息,不需要采用加密传输。即POS终端的应用程序发送读取非敏感信息指令给用户卡片,用户卡片直接根据该指令回复非敏感信息即可。
上述的POS终端交易方法中,通过交易数据的敏感与否,进行不同的处理方式,对于敏感数据,能够保护交易数据,避免造成信息泄露;而对于非敏感信息,则直接返回交易数据,节省了计算资源,提升了交易效率。
在其中一个实施例中,可参见图6,提供一实施例中POS终端交易装置的结构示意图,该POS终端交易装置600包括:
检测模块602,用于检测是否存在与POS终端进行交易的用户卡片。
认证模块604,用于当存在与POS终端进行交易的用户卡片时,则通过嵌入POS终端的PIN输入设备对用户卡片进行认证。
交易模块606,用于在用户卡片认证成功后,通过安装于POS终端的应用程序向用户卡片发送交易请求。
接收模块608,用于接收用户卡片返回的与交易请求对应的交易数据。
在其中一个实施例中,上述POS终端交易装置中的认证模块604可以包括:
第一密文单元,用于通过嵌入POS终端的PIN输入设备接收用户卡片发送的第一密文。
第二密文单元,用于通过PIN输入设备对第一密文进行处理得到第二密文,并发送第二密文至用户卡片。
第三密文单元,用于在用户卡片通过第二密文对PIN输入设备认证成功后,通过PIN输入设备接收用户卡片返回的第三密文。
卡片认证单元,用于通过PIN输入设备根据第三密文对用户卡片进行认证。
在其中一个实施例中,POS终端交易装置中的第二密文单元可以包括:
终端明文子单元,用于根据与用户卡片对应的终端密钥对第一密文进行解密处理得到终端明文。
附加明文子单元,用于生成第一附加明文,将终端明文和第一附加明文进行拼接。
第二密文子单元,用于通过终端密钥对拼接后的终端明文和第一附加明文进行加密处理得到第二密文。
在其中一个实施例中,POS终端交易装置中的第三密文单元可以包括:
接收用户卡片发送的根据对第二密文解密得到的第二附加明文生成的第三密文。
在其中一个实施例中,POS终端交易装置中的卡片认证单元可以包括:
第二附加明文子单元,用于根据终端密钥对第三密文进行解密处理得到第二附加明文。
认证成功子单元,用于当第一附加明文与第二附加明文相同时,则用户卡片认证成功。
认证失败子单元,用于当第一附加明文与第二附加明文不同时,则用户卡片认证失败。
在其中一个实施例中,POS终端交易装置还可以包括:
注入模块,用于在检测是否存在与POS终端进行交易的用户卡片之前,通过应用程序接收服务器发送的与用户卡片对应的加密后的终端密钥,并将加密后的终端密钥注入至PIN输入设备。
解码模块,用于通过PIN输入设备对加密后的密钥进行解密得到与用户卡片对应的与用户卡片对应的密钥。
在其中一个实施例中,POS终端交易装置中的接收模块608还可以包括:
密文发送单元,用于通过应用程序将密文数据发送至PIN输入设备。
解密单元,用于通过PIN输入设备对密文数据进行解密处理得到明文数据。
返回单元,用于通过PIN输入设备将明文数据返回至应用程序。
上述关于POS终端交易装置的具体限定可以参见上文中关于POS终端交易方法的限定,在此不再赘述。
在其中一个实施例中,请参见图7,提供一实施例中执行POS终端交易的计算机设备的结构示意图,该计算机设备可以执行POS终端交易设备、是常规服务器或其他任何合适的计算机设备,包括存储器、处理器、操作系统、数据库以及存储在存储器上并可在处理器上运行的POS终端交易程序,其中存储器可以包括内存储器,处理器执行POS终端交易程序时实现以下步骤:检测是否存在与POS终端进行交易的用户卡片;当存在与POS终端进行交易的用户卡片时,则通过嵌入POS终端的PIN输入设备对用户卡片进行认证;用于在用户卡片认证成功后,通过安装于POS终端的应用程序向用户卡片发送交易请求。
在其中一个实施例中,处理器执行程序时所实现的通过嵌入POS终端的PIN输入设备对用户卡片进行认证的步骤可以包括:通过嵌入POS终端的PIN输入设备接收用户卡片发送的第一密文;通过PIN输入设备对第一密文进行处理得到第二密文,并发送第二密文至用户卡片;在用户卡片通过第二密文对PIN输入设备认证成功后,通过PIN输入设备接收用户卡片返回的第三密文;通过PIN输入设备根据第三密文对用户卡片进行认证。
在其中一个实施例中,处理器执行程序时所实现的对第一密文进行处理得到第二密文的步骤可以包括:根据与用户卡片对应的终端密钥对第一密文进行解密处理得到终端明文;生成第一附加明文,将终端明文和第一附加明文进行拼接;通过终端密钥对拼接后的终端明文和第一附加明文进行加密处理得到第二密文。
在其中一个实施例中,处理器执行程序时所实现的接收用户卡片返回的第三密文的步骤可以包括:接收用户卡片发送的根据对第二密文解密得到的第二附加明文生成的第三密文。
在其中一个实施例中,处理器执行程序时所实现的通过PIN输入设备根据第三密文对用户卡片进行认证的步骤可以包括:根据终端密钥对第三密文进行解密处理得到第二附加明文;当第一附加明文与第二附加明文相同时,则用户卡片认证成功;当第一附加明文与第二附加明文不同时,则用户卡片认证失败。
在其中一个实施例中,处理器执行程序时所实现的检测是否存在与POS终端进行交易的用户卡片的步骤之前,还可以包括:通过应用程序接收服务器发送的与用户卡片对应的加密后的终端密钥,并将加密后的终端密钥注入至PIN输入设备;通过PIN输入设备对加密后的密钥进行解密得到与用户卡片对应的与用户卡片对应的密钥。
在其中一个实施例中,处理器执行程序时所实现的接收用户卡片返回的与交易请求对应的交易数据的步骤可以包括通过应用程序将密文数据发送至PIN输入设备;通过PIN输入设备对密文数据进行解密处理得到明文数据;通过PIN输入设备将明文数据返回至应用程序。
上述关于计算机设备的具体限定可以参见上文中关于POS终端交易方法的限定,在此不再赘述。
在一个实施例中,请继续参阅图7,提供一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:检测是否存在与POS终端进行交易的用户卡片;当存在与POS终端进行交易的用户卡片时,则通过嵌入POS终端的PIN输入设备对用户卡片进行认证;用于在用户卡片认证成功后,通过安装于POS终端的应用程序向用户卡片发送交易请求。
在其中一个实施例中,处理器执行程序时所实现的通过嵌入POS终端的PIN输入设备对用户卡片进行认证的步骤可以包括:通过嵌入POS终端的PIN输入设备接收用户卡片发送的第一密文;通过PIN输入设备对第一密文进行处理得到第二密文,并发送第二密文至用户卡片;在用户卡片通过第二密文对PIN输入设备认证成功后,通过PIN输入设备接收用户卡片返回的第三密文;通过PIN输入设备根据第三密文对用户卡片进行认证。
在其中一个实施例中,处理器执行程序时所实现的对第一密文进行处理得到第二密文的步骤可以包括:根据与用户卡片对应的终端密钥对第一密文进行解密处理得到终端明文;生成第一附加明文,将终端明文和第一附加明文进行拼接;通过终端密钥对拼接后的终端明文和第一附加明文进行加密处理得到第二密文。
在其中一个实施例中,处理器执行程序时所实现的接收用户卡片返回的第三密文的步骤可以包括:接收用户卡片发送的根据对第二密文解密得到的第二附加明文生成的第三密文。
在其中一个实施例中,处理器执行程序时所实现的通过PIN输入设备根据第三密文对用户卡片进行认证的步骤可以包括:根据终端密钥对第三密文进行解密处理得到第二附加明文;当第一附加明文与第二附加明文相同时,则用户卡片认证成功;当第一附加明文与第二附加明文不同时,则用户卡片认证失败。
在其中一个实施例中,处理器执行程序时所实现的检测是否存在与POS终端进行交易的用户卡片的步骤之前,还可以包括:通过应用程序接收服务器发送的与用户卡片对应的加密后的终端密钥,并将加密后的终端密钥注入至PIN输入设备;通过PIN输入设备对加密后的密钥进行解密得到与用户卡片对应的与用户卡片对应的密钥。
在其中一个实施例中,处理器执行程序时所实现的接收用户卡片返回的与交易请求对应的交易数据的步骤可以包括通过应用程序将密文数据发送至PIN输入设备;通过PIN输入设备对密文数据进行解密处理得到明文数据;通过PIN输入设备将明文数据返回至应用程序。
上述关于计算机存储介质的具体限定可以参见上文中关于POS终端交易方法的限定,在此不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成的程序可存储于一非易失性计算机可读取计算机存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,计算机可读取的计算机存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种POS终端交易方法,其特征在于,包括:
检测是否存在与POS终端进行交易的用户卡片;
当存在与所述POS终端进行交易的用户卡片时,则通过嵌入POS终端的PIN输入设备对所述用户卡片进行认证;
在所述用户卡片认证成功后,通过安装于所述POS终端的应用程序向所述用户卡片发送交易请求;
接收所述用户卡片返回的与所述交易请求对应的交易数据。
2.根据权利要求1所述的方法,其特征在于,所述通过嵌入POS终端的PIN输入设备对所述用户卡片进行认证的步骤,包括:
通过嵌入POS终端的PIN输入设备接收所述用户卡片发送的第一密文;
通过所述PIN输入设备对所述第一密文进行处理得到第二密文,并发送所述第二密文至所述用户卡片;
在所述用户卡片通过所述第二密文对所述PIN输入设备认证成功后,通过所述PIN输入设备接收所述用户卡片返回的第三密文;
通过所述PIN输入设备根据所述第三密文对所述用户卡片进行认证。
3.根据权利要求2所述的方法,其特征在于,所述对所述第一密文进行处理得到第二密文的步骤,包括:
根据与所述用户卡片对应的终端密钥对所述第一密文进行解密处理得到终端明文;
生成第一附加明文,将所述终端明文和所述第一附加明文进行拼接;
通过所述终端密钥对拼接后的终端明文和第一附加明文进行加密处理得到第二密文。
4.根据权利要求3所述的方法,其特征在于,所述接收所述用户卡片返回的第三密文的步骤,包括:
接收所述用户卡片发送的根据对所述第二密文解密得到的第二附加明文生成的第三密文。
5.根据权利要求4所述的方法,其特征在于,所述通过所述PIN输入设备根据所述第三密文对所述用户卡片进行认证的步骤,包括:
根据所述终端密钥对所述第三密文进行解密处理得到第二附加明文;
当所述第一附加明文与所述第二附加明文相同时,则所述用户卡片认证成功;
当所述第一附加明文与所述第二附加明文不同时,则所述用户卡片认证失败。
6.根据权利要求1所述的方法,其特征在于,所述检测是否存在与POS终端进行交易的用户卡片的步骤之前,包括:
通过应用程序接收服务器发送的与用户卡片对应的加密后的终端密钥,并将加密后的终端密钥注入至PIN输入设备;
通过所述PIN输入设备对所述加密后的密钥进行解密得到与用户卡片对应的与用户卡片对应的密钥。
7.根据权利要求1所述的方法,其特征在于,所述接收所述用户卡片返回的与所述交易请求对应的交易数据的步骤之后,还包括:
通过所述应用程序将所述密文数据发送至所述PIN输入设备;
通过所述PIN输入设备对所述密文数据进行解密处理得到明文数据;
通过所述PIN输入设备将所述明文数据返回至所述应用程序。
8.一种POS终端交易装置,其特征在于,包括:
检测模块,用于检测是否存在与POS终端进行交易的用户卡片;
认证模块,用于当存在与所述POS终端进行交易的用户卡片时,则通过嵌入POS终端的PIN输入设备对所述用户卡片进行认证;
交易模块,用于在所述用户卡片认证成功后,通过安装于所述POS终端的应用程序向所述用户卡片发送交易请求;
接收模块,用于接收所述用户卡片返回的与所述交易请求对应的交易数据。
9.一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至7任一所述方法中的步骤。
10.一种可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至7任一所述方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711205927.9A CN107993062A (zh) | 2017-11-27 | 2017-11-27 | Pos终端交易方法、装置、计算机设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711205927.9A CN107993062A (zh) | 2017-11-27 | 2017-11-27 | Pos终端交易方法、装置、计算机设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107993062A true CN107993062A (zh) | 2018-05-04 |
Family
ID=62033496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711205927.9A Pending CN107993062A (zh) | 2017-11-27 | 2017-11-27 | Pos终端交易方法、装置、计算机设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107993062A (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000057262A1 (en) * | 1999-03-24 | 2000-09-28 | Radiant Systems, Inc. | System for securing entry of encrypted and non-encrypted information on a touch screen |
US20050250538A1 (en) * | 2004-05-07 | 2005-11-10 | July Systems, Inc. | Method and system for making card-based payments using mobile devices |
CN1928936A (zh) * | 2005-09-07 | 2007-03-14 | 吕航 | 一种pos机 |
CN101131737A (zh) * | 2006-08-23 | 2008-02-27 | 江国庆 | 非接触式信用卡及金融卡及其非接触式交易方法 |
WO2010004317A1 (en) * | 2008-07-08 | 2010-01-14 | Tailwind Solutions Limited | Methods, systems and apparatus for electronic financial transactions |
CN101656007A (zh) * | 2009-08-14 | 2010-02-24 | 通联支付网络服务股份有限公司 | 一种在pos机上实现一机多密的安全系统及方法 |
CN103491094A (zh) * | 2013-09-26 | 2014-01-01 | 成都三零瑞通移动通信有限公司 | 一种基于c/s模式的快速身份认证方法 |
CN103701812A (zh) * | 2013-03-15 | 2014-04-02 | 福建联迪商用设备有限公司 | 一种终端主密钥tmk安全下载方法及系统 |
WO2014081390A1 (en) * | 2012-11-20 | 2014-05-30 | Mobile Credit Payment Pte Ltd | Secure mobile financial transaction system and methods |
-
2017
- 2017-11-27 CN CN201711205927.9A patent/CN107993062A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000057262A1 (en) * | 1999-03-24 | 2000-09-28 | Radiant Systems, Inc. | System for securing entry of encrypted and non-encrypted information on a touch screen |
US20050250538A1 (en) * | 2004-05-07 | 2005-11-10 | July Systems, Inc. | Method and system for making card-based payments using mobile devices |
CN1928936A (zh) * | 2005-09-07 | 2007-03-14 | 吕航 | 一种pos机 |
CN101131737A (zh) * | 2006-08-23 | 2008-02-27 | 江国庆 | 非接触式信用卡及金融卡及其非接触式交易方法 |
WO2010004317A1 (en) * | 2008-07-08 | 2010-01-14 | Tailwind Solutions Limited | Methods, systems and apparatus for electronic financial transactions |
CN101656007A (zh) * | 2009-08-14 | 2010-02-24 | 通联支付网络服务股份有限公司 | 一种在pos机上实现一机多密的安全系统及方法 |
WO2014081390A1 (en) * | 2012-11-20 | 2014-05-30 | Mobile Credit Payment Pte Ltd | Secure mobile financial transaction system and methods |
CN103701812A (zh) * | 2013-03-15 | 2014-04-02 | 福建联迪商用设备有限公司 | 一种终端主密钥tmk安全下载方法及系统 |
CN103714639A (zh) * | 2013-03-15 | 2014-04-09 | 福建联迪商用设备有限公司 | 一种实现对pos终端安全操作的方法及系统 |
CN103491094A (zh) * | 2013-09-26 | 2014-01-01 | 成都三零瑞通移动通信有限公司 | 一种基于c/s模式的快速身份认证方法 |
Non-Patent Citations (1)
Title |
---|
李传科: "强生SAM卡模式计价器", 《城市公用事业》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106789018B (zh) | 密钥远程获取方法和装置 | |
CN105684346B (zh) | 确保移动应用和网关之间空中下载通信安全的方法 | |
US8214298B2 (en) | Systems and methods for performing wireless financial transactions | |
CN103714639B (zh) | 一种实现对pos终端安全操作的方法及系统 | |
JP5050066B2 (ja) | 携帯型電子的課金/認証デバイスとその方法 | |
CN113243024A (zh) | 用于非接触式卡的密码认证的系统和方法 | |
Yang | Security enhanced EMV-based mobile payment protocol | |
EP3017580B1 (en) | Signatures for near field communications | |
US20060031173A1 (en) | Method and apparatus for secure electronic commerce | |
CN101770619A (zh) | 一种用于网上支付的多因子认证方法和认证系统 | |
US20200234295A1 (en) | Systems and methods for cryptographic authentication of contactless cards | |
CN104240074A (zh) | 基于身份认证的预付卡联机支付系统及其支付方法 | |
EP3702991A1 (en) | Mobile payments using multiple cryptographic protocols | |
KR100939725B1 (ko) | 모바일 단말기 인증 방법 | |
CN105827656A (zh) | 基于nfc支付的身份认证方法及装置 | |
CN104318437A (zh) | 一种虚拟预付卡线上支付系统及其支付方法 | |
US20230254339A1 (en) | Systems and methods for signaling an attack on contactless cards | |
CA3114753A1 (en) | Systems and methods for cryptographic authentication of contactless cards | |
CN112639854A (zh) | 非接触式卡的密码认证的系统和方法 | |
US20110022837A1 (en) | Method and Apparatus For Performing Secure Transactions Via An Insecure Computing and Communications Medium | |
CN104835038A (zh) | 一种联网支付装置及方法 | |
Abughazalah et al. | Secure mobile payment on NFC-enabled mobile phones formally analysed using CasperFDR | |
CN113595714A (zh) | 带有多个旋转安全密钥的非接触式卡 | |
KR20220086135A (ko) | 블록체인 기반의 전력 거래 운영 시스템 | |
TW201504964A (zh) | 安全的行動裝置購物系統及方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180504 |