CN101635075A - 一种交易方法及系统 - Google Patents
一种交易方法及系统 Download PDFInfo
- Publication number
- CN101635075A CN101635075A CN 200910086338 CN200910086338A CN101635075A CN 101635075 A CN101635075 A CN 101635075A CN 200910086338 CN200910086338 CN 200910086338 CN 200910086338 A CN200910086338 A CN 200910086338A CN 101635075 A CN101635075 A CN 101635075A
- Authority
- CN
- China
- Prior art keywords
- message
- hand
- held device
- module
- teller machine
- 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.)
- Granted
Links
Images
Landscapes
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种交易方法,属于智能卡领域。所述方法包括:支付服务器接收柜员机装置发送的第一报文,生成第二报文通过柜员机装置发送给手持装置;手持装置对第二报文进行解析,生成消息验证码,根据消息验证码和全局流水号生成第三报文,并通过柜员机装置发送给支付服务器进行认证。所述系统包括:支付服务器,柜员机装置和手持装置。本发明提供的技术方案在实施过程中,使用加密等一系列手段,提高了系统交易的安全性,同时在生成一次性的消息验证码时需要有手持装置持有者进行确认,这样进一步增加了系统安全性,同时保障交易的安全性。
Description
技术领域
本发明涉及智能卡领域,特别涉及一种交易方法及系统。
背景技术
随着科学技术的飞速发展,商业也进入了一个急速发展的阶段,与此同时,银行的金融业务也在不断的状态,金融产品种类也如雨后春笋一般,不断出现增加。例如,人们在商场购物时,银行卡付款的电子交易已经代替了现金交易,免去了随身携带现金的不便。
虽然电子交易的发展给我们带来很多的方便,但是其负面影响也是不容忽视的,如手持装置持有者的银行卡因为账号和密码的泄露,使得银行卡被盗刷,造成手持装置持有者的损失。为了在交易中确认持卡人的身份,现有技术中可以由商家对持卡人确实进行身份识别(例如由商家请刷卡者出示其身份证明文件)或者由发卡银行对持卡人确实进行刷卡进行确认(例如由银行致电询问持卡人是否进行刷卡消费)等方法来提高电子交易的安全性,但是这样不仅会耗费很多的人力物力,而且也会使手持装置持有者感觉到极大的不方便。
发明内容
一种交易方法,所述方法包括:
柜员机装置获取交易信息和手持装置持有者ID,生成第一报文,发送给支付服务器;其中,所述第一报文包括所述交易信息和所述手持装置持有者ID;
所述支付服务器接收所述第一报文,生成全局流水号,根据所述第一报文中的手持装置持有者ID检索手持装置ID和第一预置密钥,利用所述第一预置密钥对所述手持装置ID、所述交易信息和所述全局流水号进行处理,生成第二报文,发送给所述柜员机装置;
所述柜员机装置将所述第二报文发送给所述手持装置;
所述手持装置接收并解析所述第二报文,提取并显示交易信息,当接收到手持装置持有者对所述交易信息确认正确的信息后,利用第二预置密钥,对所述交易信息、所述手持装置ID和所述全局流水号进行处理生成消息验证码,并利用所述消息验证码和所述全局流水号生成第三报文,将所述第三报文发送给所述柜员机装置;
所述柜员机装置将所述第三报文发送给所述支付服务器;
所述支付服务器接收所述第三报文,根据所述第三报文中的全局流水号检索交易信息和手持装置ID,验证所述消息验证码的有效性,并向所述柜员机装置返回验证结果;如果所述消息验证码有效,则交易成功,否则,交易失败。
所述根据所述第一报文中的手持装置持有者ID检索手持装置ID和第一预置密钥包括:
所述支付服务器接收所述第一报文,并生成全局流水号,并根据所述手持装置持有者ID检索手持装置ID、第一预置密钥和手持装置持有者账号;
如果检索失败,向所述柜员机装置返回错误信息;
否则查询所述手持装置持有者账号的余额,判断交易金额是否超过所述手持装置持有者账号的当前余额,如果超过,则向所述柜员机装置返回错误信息;否则,执行利用所述第一预置密钥对所述手持装置ID、所述交易信息和所述全局流水号进行处理,生成第二报文的步骤。
所述柜员机装置获取交易信息和手持装置持有者ID之前,还包括对柜员机装置操作者身份进行认证。
所述第三报文的生成方式还包括以下几种:利用所述第二预置密钥对所述交易信息、所述手持装置ID和所述全局流水号进行处理生成所述消息验证码;将所述消息验证码、所述全局流水号和动态口令生成所述第三报文;
或利用所述第二预置密钥对所述交易信息、所述手持装置ID和动态因子进行处理生成所述消息验证码;将所述消息验证码、所述全局流水号生成所述第三报文;
或所述利用第二预置密钥对所述交易信息、所述手持装置ID和动态口令进行处理生成所述消息验证码;将所述消息验证码、所述全局流水号生成第三报文。
所述动态口令由所述手持装置生成。
所述动态因子包括时间因子或事件因子。
所述动态口令具体的生成方式为通过预置密钥种子,对所述动态因子按照预设方式处理生成动态口令。
所述方法还包括,所述支付服务器对动态口令进行验证,具体为:将动态因子在预设范围内进行变化,生成动态因子序列,通过所述预置密钥种子和所述动态因子序列生成动态口令序列,将所述动态口令序列与接收到的动态口令比对,如果其中有一个动态口令与所述接收到的动态口令相同,则验证通过,如果所述动态口令序列均与所述接收到的动态口令不同,则验证失败;其中,所述预置密钥种子是所述支付服务器根据所述手持装置ID检索到的。
验证所述消息验证码的有效性具体为:
所述支付服务器按照与生成所述消息验证码相同的方式生成消息密码,将所述消息密码与所述消息验证码进行比对,如果一致,则所述消息验证码有效;否则,所述消息验证码无效。
所述第一报文还包括柜员机装置操作者ID。
所述生成第二报文,发送给所述柜员机装置包括:
生成第二报文,并对所述第二报文进行加密,将所述加密后的第二报文发送给所述柜员机装置;
相应地,所述手持装置接收并解析所述第二报文,包括:
所述手持装置接收所述第二报文,对所述第二报文进行解密,并对解密后的第二报文进行解析。
将所述第三报文发送给所述柜员机装置;所述柜员机装置将所述第三报文发送给所述支付服务器,包括:
所述手持装置对所述第三报文加密,将加密后的所述第三报文发送给所述柜员机装置;
所述柜员机装置对收到的所述第三报文进行解密,将解密后的所述第三报文发送给所述支付服务器。
一种交易系统,所述系统包括:柜员机装置,支付服务器和手持装置;
所述柜员机装置用于获取交易信息和手持装置持有者ID,生成第一报文,将所述第一报文发送给所述支付服务器;还用于接收所述支付服务器返回的第二报文并转发给所述手持装置;还用于接收所述手持装置发送的第三报文并转发给所述支付服务器;还用于接收所述支付服务器返回验证结果并转发给所述手持装置;
所述支付服务器用于接收所述第一报文,生成全局流水号,根据所述第一报文检索手持装置ID和第一预置密钥,利用所述第一预置密钥对所述手持装置ID、所述交易信息和所述全局流水号进行处理生成第二报文,并发送给所述柜员机装置;还用于接收所述第三报文,根据所述第三报文中的全局流水号检索交易信息和手持装置ID,根据所述手持装置ID检索第二预置密钥,验证所述消息验证码的有效性,并向所述柜员机装置返回验证结果;如果有效,则交易成功,否则,交易失败;
所述手持装置用于接收并解析所述第二报文,提取并输出交易信息,当接收到手持装置持有者对所述交易信息确认正确的信息后,利用所述第二预置密钥对所述交易信息和所述全局流水号进行处理生成消息验证码,并利用所述消息验证码和所述全局流水号生成第三报文,并发送给所述柜员机装置。
所述柜员机装置包括获取模块、生成模块和第一通信模块;
所述获取模块用于获取所述交易信息和所述手持装置持有者ID;
所述生成模块用于生成所述第一报文;
所述第一通信模块用于将所述第一报文发送给所述支付服务器;还用于接收所述支付服务器返回的第二报文并转发给所述手持装置;还用于接收所述手持装置发送的第三报文并转发给所述支付服务器;还用于接收所述支付服务器返回验证结果并转发给所述手持装置。
所述支付服务器包括第二通信模块、流水号生成模块、第一检索模块、第二报文生成模块、第二检索模块、验证模块和交易模块;
所述第二通信模块用于接收所述柜员机装置发送的第一报文,并触发所述流水号生成模块;还用于将所述第二报文发送给所述柜员机装置;还用于接收所述手持装置通过所述柜员机装置发送的第三报文;还用于将所述消息验证码的验证结果返回给所述柜员机装置;
所述流水号生成模块,用于接收到所述第一通信模块的触发后,生成全局流水号;
所述第一检索模块,用于根据所述第一报文检索手持装置ID和第一预置密钥;
所述第二报文生成模块,用于利用所述第一预置密钥对所述手持装置ID、交易信息、全局流水号进行处理生成第二报文,并触发所述第二通信模块;
所述第二检索模块,用于根据所述第三报文检索对应的交易信息、手持装置ID;根据所述手持装置ID检索第二预置密钥;
所述验证模块,用于验证消息验证码的有效性;
所述交易模块,用于在所述验证模块验证所述消息验证码有效后,进行交易。
所述手持装置包括第三通信模块、解析模块、输出模块、确认模块、验证码生成模块、第三报文生成模块;
所述第三通信模块,用于接收所述支付服务器通过柜员机装置发送的第二报文;还用于将所述第三报文发送给所述柜员机装置;
所述解析模块,用于对所述第二报文解析,得到交易信息;
所述输出模块,用于输出所述交易信息;
所述确认模块,用于接收到对所述交易信息确认正确的信息后;
所述验证码生成模块,用于生成消息验证码;
所述第三报文生成模块,用于利用所述消息验证码和所述全局流水号生成第三报文,并触发所述第三通信模块。
所述验证模块包括消息密码生成单元和比对单元;
所述消息密码生成单元用于利用所述第二预置密钥,对所述交易信息、所述手持装置ID和所述全局流水号进行处理生成消息密码;
所述比对单元用于将所述消息密码与所述消息验证码进行比对,如果一致,则所述消息验证码有效;否则,所述消息验证码无效。
所述验证码生成模块包括验证码生成单元,用于利用所述第二预置密钥,对所述交易信息、所述手持装置ID和所述全局流水号进行处理生成消息验证码。
所述验证码生成模块还包括动态口令生成单元,用于生成动态口令。
所述第三报文生成模块还用于利用所述第二预置密钥对所述交易信息、所述手持装置ID和所述全局流水号进行处理生成消息验证码;将所述消息验证码、所述全局流水号和动态口令生成第三报文;
或者,还用于利用所述第二预置密钥对所述交易信息、所述手持装置ID和动态因子进行处理生成消息验证码;将所述消息验证码、所述全局流水号生成第三报文;
或者,还用于利用所述第二预置密钥对所述交易信息、所述手持装置ID和动态口令进行处理生成消息验证码;将所述消息验证码、所述全局流水号生成第三报文。
所述验证模块还包括动态口令验证单元用于当所述第三报文包括动态口令时,对所述动态口令进行验证。
所述动态因子包括时间因子或事件因子。
所述支付服务器中还包括认证模块,用于对柜员机装置操作者身份进行认证。
所述柜员机装置还包括加解密模块,用于对所述第二报文进行加密;还用于对所述第三报文进行解密;
相应地,所述手持装置还包括解密模块和加密模块,
所述解密模块用于对所述第二报文进行解密;所述加密模块对所述第三报文进行加密。
有益效果:本发明提供的技术方案在实施过程中,使用加密等一系列手段,提高了系统交易的安全性,同时在生成一次性的消息验证码时需要有手持装置持有者进行确认,这样进一步增加了系统安全性,同时保障交易的安全性。
附图说明
图1是本发明实施例1提供的一种交易方法的流程图;
图2是本发明实施例2提供的一种交易系统结构示意图;
图3是本发明实施例2提供的另一种交易系统结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
参见图1,本发明实施例提供了一种交易方法。
本实施例中,手持装置中保存第一预置密钥和第二预置密钥(二者可以相同)。除此之外,手持装置还可保存预置密钥种子,基于时间因子或者事件因子生成动态口令。
在使用手持装置之前,需要预先将手持装置注册到交易系统中,关联存储手持装置ID、手持装置持有者账号、手持装置持有者ID、第一预置密钥、第二预置密钥。如果手持装置保存有预置密钥种子,还要关联存储预置密钥种子。
在使用该交易方法之前,还需要进行以下准备工作:将柜员机装置ID预先注册该交易系统中;将商户的银行账号和其他相关信息记录在支付服务器的数据库中。
在交易之前需要将柜员机装置激活,可以通过输入柜员机装置操作者姓名和密码来激活柜员机装置。类似地,手持装置和柜员机装置进行数据交互之前,需要验证该手持装置持有者的身份。
该方法包括:
步骤101、柜员机装置获取交易信息和手持装置持有者ID,生成第一报文,发送给支付服务器;
其中,该第一报文包括:柜员机装置ID、手持装置持有者ID、交易信息。
其中,该交易信息包括交易金额、交易类型、交易明细、交易时间和柜员机装置流水号等。本实施例不对交易信息的具体内容做限制。
优选地,本实施例中,该第一报文包括柜员机装置ID、手持装置持有者ID、交易金额。
其中,该第一报文可以是加密形式,相应地,支付服务器接收到加密后的第一报文后需要首先对第一报文进行解密,进行下一步处理。
其中,在步骤101之前还包括对柜员机装置操作者的身份进行认证。
步骤102、支付服务器接收第一报文,生成全局流水号,并根据所述手持装置持有者ID检索手持装置ID和第一预置密钥;
其中,步骤102还包括当支付服务器接收到第一报文后,生成全局流水号,并根据手持装置持有者ID检索手持装置ID、第一预置密钥和手持装置持有者账号;如果检索失败,向柜员机装置返回错误信息;否则查询所述手持装置持有者账号的余额,判断交易金额是否超过手持装置持有者账号的当前余额,如果超过,则向柜员机装置返回错误信息;否则,则执行步骤103。
步骤103、支付服务器利用所述第一预置密钥对所述手持装置ID、交易金额、全局流水号进行加密,生成第二报文,并发送给柜员机装置;
步骤104、柜员机装置将第二报文转发给手持装置;
在转发过程中,柜员机也可以使用事先与手持装置协商的会话密钥对第二报文进行加密。相应地,手持装置接收到加密的第二报文之后首先对其解密,然后再进行下一步处理。
步骤105、手持装置接收第二报文,利用第一预置密钥对第二报文进行解密,得到手持装置ID、交易金额、全局流水号并通过自身的显示屏输出交易金额,等待手持装置持有者按键确认;
除了通过自身的显示屏输出交易金额之外,也可使用语音等其它输出方式。本实施例不对输出交易金额的方式做限制。
如果在事先约定的时间内没有接收到手持装置持有者的按键消息,或者接收到手持装置持有者的取消消息(如按取消键),手持装置向柜员机装置发送取消交易的指令,结束;否则执行步骤106。
步骤106、当手持装置接收到手持装置持有者对交易金额确认正确的信息后,利用第二预置密钥,对交易金额、手持装置ID、全局流水号进行HMAC运算生成消息验证码,并利用该消息验证码和全局流水号生成第三报文,发送给柜员机装置;
其中,将该消息验证码和全局流水号生成第三报文的方式可以是将该消息验证码和全局流水号以拼接的方式生成第三报文。本实施例不对生成第三报文的具体形式进行限制。
其中,第三报文的生成方式还包括以下几种:
1)利用第二预置密钥对交易金额、手持装置ID和全局流水号进行HMAC运算生成消息验证码;利用消息验证码、全局流水号和动态口令生成第三报文;
2)利用第二预置密钥对交易金额、手持装置ID和动态因子进行HMAC运算生成消息验证码;利用消息验证码、全局流水号生成第三报文;
3)利用第二预置密钥对交易信息、手持装置ID和动态口令进行HMAC运算生成消息验证码;利用消息验证码、全局流水号生成第三报文。
其中,HMAC运算还可以通过加密算法或hash运算替换。
其中,HMAC运算包括HMAC-MD5算法和HMAC-SHA算法等;加密算法包括3DES算法、AES算法、RSA算法等;hash运算包括MD4算法、MD-5算法、SHA-1算法等。本实施例不对HMAC运算、加密算法和hash运算的具体实现内容做限制。
其中,该动态口令是由手持装置生成的,即当手持装置接收到手持装置持有者对交易金额确认正确的信息后,生成动态口令。
其中,生成动态口令的具体过程为:手持装置和服务器均预先保存有相同的预置密钥种子和动态因子,通过预置密钥种子,对动态因子按照预设方式处理生成动态口令;其中双方的动态因子类型一致,并且双方事先预定按照相同的方式对各自的动态因子进行更新。其中,手持装置的动态因子和支付服务器的动态因子可以均为时间因子或事件因子,当为时间因子时,更新方式为获取当前的时间,当为事件因子时,更新方式为记录事件发生的次数;优选地,本实施例使用时间因子,更新方式为获取当前时间。
步骤107、柜员机装置将第三报文发给支付服务器;
在发送过程中,手持装置也可以使用事先与柜员机装置协商的会话密钥对第三报文进行加密;相应地,柜员机装置接收到加密的第三报文之后首先对其解密,然后再进行下一步处理。
步骤108、支付服务器根据接收到第三报文中的全局流水号检索交易金额、手持装置ID、全局流水号;根据手持装置ID检索第二预置密钥,并计算消息密码,比对消息验证码与消息密码是否一致,如果一致,则交易成功,向柜员机装置返回交易成功的信息;如果不一致,则交易失败,向柜员机装置返回交易失败的信息。
其中,计算消息密码具体为根据与消息验证码相同的生成方式生成消息密码。
其中,当交易成功后,交易金额从手持装置持有者账号划入商户账号。
当手持装置可以生成动态口令时,支付服务器还包括对动态口令进行验证;具体过程为:将动态因子在预设范围内进行变化,生成动态因子序列,通过预置密钥种子和动态因子序列生成动态口令序列,将动态口令序列与接收到的动态口令比对,如果其中有一个动态口令与动态口令相同,则验证通过,如果均与动态口令不同,则验证失败。例如,对于时间因子在前后各10分钟的范围进行变化,则服务器收到动态口令后,如果获取的当前时间值为9:20,则将9:10至9:30之间的每分钟都对应生成一个动态口令,共得到20个动态口令,只要该20个动态口令中有一个和动态口令相同,则认为验证通过。
其中,该预置密钥种子是支付服务器根据手持装置ID检索到的。
实施例2
参见图2,本发明实施例提供了一种交易系统,该系统包括:柜员机装置201、支付服务器202和手持装置203;本实施例中,手持装置中保存第一预置密钥和第二预置密钥(二者可以相同)。除此之外,手持装置还可保存预置密钥种子,基于时间因子或者事件因子生成动态口令。
其中,柜员机装置201用于获取交易信息和手持装置持有者ID,生成第一报文,或向支付服务器202发送第一报文,或接收支付服务器202返回的第二报文并转发给手持装置203,或接收手持装置203发送的第三报文并转发给支付服务器202,或接收支付服务器202返回的验证结果并转发给手持装置203;
支付服务器202用于接收柜员机装置201发送的第一报文,生成全局流水号,根据第一报文检索手持装置ID和第一预置密钥,利用第一预置密钥对手持装置ID、交易信息和全局流水号按照预设方式进行处理生成第二报文,并转发给柜员机装置201,或接收第三报文,根据第三报文中的全局流水号检索交易信息和手持装置ID,根据手持装置ID检索第二预置密钥,验证消息验证码的有效性;
手持装置203用于接收并解析所述第二报文,提取并输出交易信息,当接收到手持装置持有者对交易信息进行确认正确的信息后,利用第二预置密钥对交易信息、手持装置ID和全局流水号按照预设方式处理生成消息验证码,并利用消息验证码和全局流水号生成第三报文,并将第三报文发送给柜员机装置。
参见图3,
柜员机装置201还包括获取模块2011、生成模块2012和第一通信模块2013,
获取模块2011用于获取交易信息和手持装置持有者ID;
生成模块2012用于根据交易信息和手持装置持有者ID生成第一报文;
第一通信模块2013用于向支付服务器202发送第一报文,或接收支付服务器201返回的第二报文,并转发给手持装置203,或接收手持装置203发送的第三报文,并转发给支付服务器202,或接收支付服务器202返回的验证结果,并转发给手持装置203。
支付服务器202包括:第二通信模块2021、流水号生成模块2022、第一检索模块2023、第二报文生成模块2024、第二检索模块2025、验证模块2026和交易模块2027;
第二通信模块2021、用于接收柜员机装置201发送第一报文,并触发流水号生成模块2022;或接收手持装置203通过柜员机装置201发送第三报文;或将第二报文发送给柜员机装置201;或将消息验证码的验证结果返回柜员机装置201;
流水号生成模块2022、用于接收到第一通信模块2021的触发后,生成全局流水号,并触发第一检索模块2023;
第一检索模块2023、用于根据第一报文检索手持装置ID和第一预置密钥,并触发第二报文生成模块2024;
第二报文生成模块2024、用于利用第一检索模块2023检索到的第一预置密钥对所述手持装置ID、交易信息、全局流水号进行处理生成第二报文,并触发第二通信模块2021;
第二检索模块2025、用于根据接收到的第三报文检索对应的交易信息、手持装置ID,并触发验证模块2026;或根据手持装置ID检索第二预置密钥或预置密钥种子;
验证模块2026、用于验证消息验证码;
其中,该验证模块2026包括消息密码生成单元2026a和比对单元2026b;
其中,消息密码生成单元2026a用于利用第二预置密钥,对第二检索模块2025检索到的交易信息、手持装置ID和全局流水号按照预设方式处理生成消息密码;
其中,该预设方式可以为加密方式。本实施例不对预设方式的具体形式做限制。
比对单元2026b、用于对消息验证码进行验证,即将消息验证码与消息密码进行比对,并触发第二通信模块2021;如果一致,则交易成功,;如果不一致,则交易失败;
交易模块2027、当交易成功后,交易金额从手持装置持有者账号划入柜员机装置所在商户账号。
其中,手持装置203包括:第三通信模块2031、解析模块2032、输出模块2033、确认模块2034、验证码生成模块2035、第三报文生成模块2036;
第三通信模块2031、用于接收支付服务器202通过柜员机装置201发送的第二报文;或将第三报文发送给柜员机装置201;
解析模块2032、用于对接收到的第二报文解析,得到交易信息,并触发输出模块2033;
输出模块2033、用于输出解析模块2032得到的交易信息,并触发确认模块2034;
其中,该输出模块2033可以通过自身的显示屏实现,也可使用语音提示实现。本实施例不对该输出模块的实现形式做限制。
确认模块2034、用于接收对输出模块2033输出的交易信息进行确认的信息,并触发验证码生成模块2035;
验证码生成模块2035、用于生成消息验证码,并触发第三报文生成模块2036;
其中,验证码生成模块2035包括验证码生成单元2035a用于利用第二预置密钥,对交易信息、手持装置ID和全局流水号按照预设方式生成消息验证码;
第三报文生成模块2036、用于利用消息验证码和全局流水号生成第三报文,并触发第三通信模块2031;
其中,验证码生成模块2035中还包括动态口令生成单元2035b用于当确认模块2034接收到对交易信息进行确认信息后,生成动态口令;
其中,当验证码生成模块2035中还包括动态口令生成单元2035b时,验证码生成单元2035a还用于利用第二预置密钥对交易金额、手持装置ID和全局流水号生成消息验证码;相应地,第三报文生成模块2036用于利用消息验证码、全局流水号和动态口令生成第三报文。
当验证码生成模块2035中还包括动态口令生成单元2035b时,验证码生成单元2035a还用于利用第二预置密钥对交易金额、手持装置ID和动态因子生成消息验证码;相应地,第三报文生成模块2036还用于利用消息验证码、全局流水号生成第三报文。
其中,该动态因子包括时间因子或事件因子。
当验证码生成模块2035中还包括动态口令生成单元2035b时,验证码生成单元2035a还用于利用第二预置密钥对交易信息、手持装置ID和动态口令生成消息验证码;第三报文模块2036还用于利用消息验证码和全局流水号生成第三报文。
本实施例不对消息验证码和第三报文的生成方式进行限制。
相应地,支付服务器中,验证模块2026还包括动态口令验证单元2026c用于对动态口令进行验证;具体为将动态因子在预设范围内进行变化,生成动态因子序列,通过预置密钥种子和动态因子序列生成动态口令序列,将动态口令序列与接收到的动态口令比对,如果其中有一个动态口令与动态口令相同,则验证通过,如果均与动态口令不同,则验证失败。
其中,支付服务器中,第一检索模块2023还用于根据第一报文检索手持装置ID、第一预置密钥和手持装置持有者账号,并判断是否可以检索到手持装置持有者账号,如果检索到,则判断交易金额是否超过手持装置持有者账号的余额,如果超过,则触发第三通信模块2031;如果未超过,则提示执行第二报文生成模块2024的功能;如果未检索到,则触发第三通信模块2031。
相应地,第三通信模块2031还用于当交易金额超过手持装置持有者账号的余额时,向柜员机装置返回错误信息;或用于当为检索到手持装置持有者账号时,向柜员机装置返回错误信息。
其中,支付服务器中还包括认证模块用于在柜员机装置向手持装置发送第一报文之前,对柜员机装置操作者身份进行认证。
其中,柜员机装置201还包括加解密模块,用于对第二报文进行加密或对第三报文进行解密;
其中,当加解密模块用于在通信模块2011将第二报文转发给手持装置之前,对第二报文进行加密时,手持装置还包括解密模块,用于对接收到的第二报文进行解密;
其中,当加解密模块用于对第三报文进行解密时,手持装置还包括加密模块用于对第三报文进行加密。
本发明实施例的有益效果是:本发明实施例提供的技术方案在实施过程中,使用加密等一系列手段,提高了系统交易的安全性,同时在生成一次性的消息验证码时需要有手持装置持有者进行确认,这样进一步增加了系统安全性,同时保障交易的安全性。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (24)
1.一种交易方法,其特征在于,所述方法包括:
柜员机装置获取交易信息和手持装置持有者ID,生成第一报文,发送给支付服务器;其中,所述第一报文包括所述交易信息和所述手持装置持有者ID;
所述支付服务器接收所述第一报文,生成全局流水号,根据所述第一报文中的手持装置持有者ID检索手持装置ID和第一预置密钥,利用所述第一预置密钥对所述手持装置ID、所述交易信息和所述全局流水号进行处理,生成第二报文,发送给所述柜员机装置;
所述柜员机装置将所述第二报文发送给所述手持装置;
所述手持装置接收并解析所述第二报文,提取并显示交易信息,当接收到手持装置持有者对所述交易信息确认正确的信息后,利用第二预置密钥,对所述交易信息、所述手持装置ID和所述全局流水号进行处理生成消息验证码,并利用所述消息验证码和所述全局流水号生成第三报文,将所述第三报文发送给所述柜员机装置;
所述柜员机装置将所述第三报文发送给所述支付服务器;
所述支付服务器接收所述第三报文,根据所述第三报文中的全局流水号检索交易信息和手持装置ID,验证所述消息验证码的有效性,并向所述柜员机装置返回验证结果;如果所述消息验证码有效,则交易成功,否则,交易失败。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一报文中的手持装置持有者ID检索手持装置ID和第一预置密钥包括:
所述支付服务器接收所述第一报文,并生成全局流水号,并根据所述手持装置持有者ID检索手持装置ID、第一预置密钥和手持装置持有者账号;
如果检索失败,向所述柜员机装置返回错误信息;
否则查询所述手持装置持有者账号的余额,判断交易金额是否超过所述手持装置持有者账号的当前余额,如果超过,则向所述柜员机装置返回错误信息;否则,执行利用所述第一预置密钥对所述手持装置ID、所述交易信息和所述全局流水号进行处理,生成第二报文的步骤。
3.根据权利要求1所述的方法,其特征在于,所述柜员机装置获取交易信息和手持装置持有者ID之前,还包括对柜员机装置操作者身份进行认证。
4.根据权利要求1所述的方法,其特征在于,所述第三报文的生成方式还包括以下几种:利用所述第二预置密钥对所述交易信息、所述手持装置ID和所述全局流水号进行处理生成所述消息验证码;将所述消息验证码、所述全局流水号和动态口令生成所述第三报文;
或利用所述第二预置密钥对所述交易信息、所述手持装置ID和动态因子进行处理生成所述消息验证码;将所述消息验证码、所述全局流水号生成所述第三报文;
或所述利用第二预置密钥对所述交易信息、所述手持装置ID和动态口令进行处理生成所述消息验证码;将所述消息验证码、所述全局流水号生成第三报文。
5.根据权利要求4所述的方法,其特征在于,
所述动态口令由所述手持装置生成。
6.根据权利要求4所述的方法,其特征在于,
所述动态因子包括时间因子或事件因子。
7.根据权利要求5所述的方法,其特征在于,
所述动态口令具体的生成方式为通过预置密钥种子,对所述动态因子按照预设方式处理生成动态口令。
8.根据权利要求7所述的方法,所述方法还包括,所述支付服务器对动态口令进行验证,具体为:将动态因子在预设范围内进行变化,生成动态因子序列,通过所述预置密钥种子和所述动态因子序列生成动态口令序列,将所述动态口令序列与接收到的动态口令比对,如果其中有一个动态口令与所述接收到的动态口令相同,则验证通过,如果所述动态口令序列均与所述接收到的动态口令不同,则验证失败;其中,所述预置密钥种子是所述支付服务器根据所述手持装置ID检索到的。
9.根据权利要求4所述的方法,其特征在于,验证所述消息验证码的有效性具体为:
所述支付服务器按照与生成所述消息验证码相同的方式生成消息密码,将所述消息密码与所述消息验证码进行比对,如果一致,则所述消息验证码有效;否则,所述消息验证码无效。
10.根据权利要求1所述的方法,其特征在于,所述第一报文还包括柜员机装置操作者ID。
11.根据权利要求1所述的方法,其特征在于,所述生成第二报文,发送给所述柜员机装置包括:
生成第二报文,并对所述第二报文进行加密,将所述加密后的第二报文发送给所述柜员机装置;
相应地,所述手持装置接收并解析所述第二报文,包括:
所述手持装置接收所述第二报文,对所述第二报文进行解密,并对解密后的第二报文进行解析。
12.根据权利要求1所述的方法,其特征在于,将所述第三报文发送给所述柜员机装置;所述柜员机装置将所述第三报文发送给所述支付服务器,包括:
所述手持装置对所述第三报文加密,将加密后的所述第三报文发送给所述柜员机装置;
所述柜员机装置对收到的所述第三报文进行解密,将解密后的所述第三报文发送给所述支付服务器。
13.一种交易系统,其特征在于,所述系统包括:柜员机装置,支付服务器和手持装置;
所述柜员机装置用于获取交易信息和手持装置持有者ID,生成第一报文,将所述第一报文发送给所述支付服务器;还用于接收所述支付服务器返回的第二报文并转发给所述手持装置;还用于接收所述手持装置发送的第三报文并转发给所述支付服务器;还用于接收所述支付服务器返回验证结果并转发给所述手持装置;
所述支付服务器用于接收所述第一报文,生成全局流水号,根据所述第一报文检索手持装置ID和第一预置密钥,利用所述第一预置密钥对所述手持装置ID、所述交易信息和所述全局流水号进行处理生成第二报文,并发送给所述柜员机装置;还用于接收所述第三报文,根据所述第三报文中的全局流水号检索交易信息和手持装置ID,根据所述手持装置ID检索第二预置密钥,验证所述消息验证码的有效性,并向所述柜员机装置返回验证结果;如果有效,则交易成功,否则,交易失败;
所述手持装置用于接收并解析所述第二报文,提取并输出交易信息,当接收到手持装置持有者对所述交易信息确认正确的信息后,利用所述第二预置密钥对所述交易信息和所述全局流水号进行处理生成消息验证码,并利用所述消息验证码和所述全局流水号生成第三报文,并发送给所述柜员机装置。
14.根据权利要求13所述的系统,其特征在于,
所述柜员机装置包括获取模块、生成模块和第一通信模块;
所述获取模块用于获取所述交易信息和所述手持装置持有者ID;
所述生成模块用于生成所述第一报文;
所述第一通信模块用于将所述第一报文发送给所述支付服务器;还用于接收所述支付服务器返回的第二报文并转发给所述手持装置;还用于接收所述手持装置发送的第三报文并转发给所述支付服务器;还用于接收所述支付服务器返回验证结果并转发给所述手持装置。
15.根据权利要求14所述的系统,其特征在于,
所述支付服务器包括第二通信模块、流水号生成模块、第一检索模块、第二报文生成模块、第二检索模块、验证模块和交易模块;
所述第二通信模块用于接收所述柜员机装置发送的第一报文,并触发所述流水号生成模块;还用于将所述第二报文发送给所述柜员机装置;还用于接收所述手持装置通过所述柜员机装置发送的第三报文;还用于将所述消息验证码的验证结果返回给所述柜员机装置;
所述流水号生成模块,用于接收到所述第一通信模块的触发后,生成全局流水号;
所述第一检索模块,用于根据所述第一报文检索手持装置ID和第一预置密钥;
所述第二报文生成模块,用于利用所述第一预置密钥对所述手持装置ID、交易信息、全局流水号进行处理生成第二报文,并触发所述第二通信模块;
所述第二检索模块,用于根据所述第三报文检索对应的交易信息、手持装置ID;根据所述手持装置ID检索第二预置密钥;
所述验证模块,用于验证消息验证码的有效性;
所述交易模块,用于在所述验证模块验证所述消息验证码有效后,进行交易。
16.根据权利要求15所述的系统,其特征在于,
所述手持装置包括第三通信模块、解析模块、输出模块、确认模块、验证码生成模块、第三报文生成模块;
所述第三通信模块,用于接收所述支付服务器通过柜员机装置发送的第二报文;还用于将所述第三报文发送给所述柜员机装置;
所述解析模块,用于对所述第二报文解析,得到交易信息;
所述输出模块,用于输出所述交易信息;
所述确认模块,用于接收到对所述交易信息确认正确的信息后;
所述验证码生成模块,用于生成消息验证码;
所述第三报文生成模块,用于利用所述消息验证码和所述全局流水号生成第三报文,并触发所述第三通信模块。
17.根据权利要求15所述的系统,其特征在于,
所述验证模块包括消息密码生成单元和比对单元;
所述消息密码生成单元用于利用所述第二预置密钥,对所述交易信息、所述手持装置ID和所述全局流水号进行处理生成消息密码;
所述比对单元用于将所述消息密码与所述消息验证码进行比对,如果一致,则所述消息验证码有效;否则,所述消息验证码无效。
18.根据权利要求16所述的系统,其特征在于,
所述验证码生成模块包括验证码生成单元,用于利用所述第二预置密钥,对所述交易信息、所述手持装置ID和所述全局流水号进行处理生成消息验证码。
19.根据权利要求18所述的系统,其特征在于,所述验证码生成模块还包括动态口令生成单元,用于生成动态口令。
20.根据权利要求16或18所述的系统,其特征在于,
所述第三报文生成模块还用于利用所述第二预置密钥对所述交易信息、所述手持装置ID和所述全局流水号进行处理生成消息验证码;将所述消息验证码、所述全局流水号和动态口令生成第三报文;
或者,还用于利用所述第二预置密钥对所述交易信息、所述手持装置ID和动态因子进行处理生成消息验证码;将所述消息验证码、所述全局流水号生成第三报文;
或者,还用于利用所述第二预置密钥对所述交易信息、所述手持装置ID和动态口令进行处理生成消息验证码;将所述消息验证码、所述全局流水号生成第三报文。
21.根据权利要求17所述的系统,其特征在于,
所述验证模块还包括动态口令验证单元用于当所述第三报文包括动态口令时,对所述动态口令进行验证。
22.根据权利要求20所述的系统,其特征在于,
所述动态因子包括时间因子或事件因子。
23.根据权利要求15所述的系统,其特征在于,
所述支付服务器中还包括认证模块,用于对柜员机装置操作者身份进行认证。
24.根据权利要求14所述的系统,其特征在于,所述柜员机装置还包括加解密模块,用于对所述第二报文进行加密;还用于对所述第三报文进行解密;
相应地,所述手持装置还包括解密模块和加密模块,
所述解密模块用于对所述第二报文进行解密;所述加密模块对所述第三报文进行加密。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910086338 CN101635075B (zh) | 2009-05-31 | 2009-05-31 | 一种交易方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910086338 CN101635075B (zh) | 2009-05-31 | 2009-05-31 | 一种交易方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101635075A true CN101635075A (zh) | 2010-01-27 |
CN101635075B CN101635075B (zh) | 2013-08-14 |
Family
ID=41594255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200910086338 Active CN101635075B (zh) | 2009-05-31 | 2009-05-31 | 一种交易方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101635075B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103136245A (zh) * | 2011-11-29 | 2013-06-05 | 深圳市腾讯计算机系统有限公司 | 一种虚拟货币余额旁路查询方法及系统 |
CN103198401A (zh) * | 2013-03-06 | 2013-07-10 | 天地融科技股份有限公司 | 具有电子签名功能的智能卡交易方法及系统 |
WO2014000623A1 (zh) * | 2012-06-27 | 2014-01-03 | 中国银联股份有限公司 | 安全性信息交互系统、设备及方法 |
WO2015161690A1 (zh) * | 2014-04-25 | 2015-10-29 | 天地融科技股份有限公司 | 数据安全交互方法和系统 |
CN105656862A (zh) * | 2014-11-21 | 2016-06-08 | 航天恒星科技有限公司 | 认证方法及装置 |
CN108848089A (zh) * | 2018-06-13 | 2018-11-20 | 江苏恒宝智能系统技术有限公司 | 一种数据加密方法及数据传输系统 |
CN108921560A (zh) * | 2018-07-27 | 2018-11-30 | 广州友谱网络科技有限公司 | 基于区块链的交易信息校验及结算方法 |
CN109074564A (zh) * | 2016-05-06 | 2018-12-21 | 万事达卡国际股份有限公司 | 使用记录保证即时支付的方法和系统 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108228211B (zh) * | 2017-12-15 | 2021-05-25 | 中国移动通信集团江苏有限公司 | 智能卡、智能卡数据安全更新的方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7379920B2 (en) * | 2001-12-04 | 2008-05-27 | Gary Leung | System and method for facilitating electronic financial transactions using a mobile telecommunication device |
GB0420409D0 (en) * | 2004-09-14 | 2004-10-20 | Waterleaf Ltd | Online commercial transaction system and method of operation thereof |
KR100792163B1 (ko) * | 2006-02-28 | 2008-01-04 | (주)메이즈텍 | 통신망을 이용한 온라인 금융거래 인증시스템과 이를 위한사용자 단말기 |
-
2009
- 2009-05-31 CN CN 200910086338 patent/CN101635075B/zh active Active
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103136245A (zh) * | 2011-11-29 | 2013-06-05 | 深圳市腾讯计算机系统有限公司 | 一种虚拟货币余额旁路查询方法及系统 |
US9767456B2 (en) | 2011-11-29 | 2017-09-19 | Tencent Technology (Shenzen) Company Limited | Virtual money balance bypass inquiry method, system and computer-readable storage medium |
WO2014000623A1 (zh) * | 2012-06-27 | 2014-01-03 | 中国银联股份有限公司 | 安全性信息交互系统、设备及方法 |
CN103198401A (zh) * | 2013-03-06 | 2013-07-10 | 天地融科技股份有限公司 | 具有电子签名功能的智能卡交易方法及系统 |
CN103198401B (zh) * | 2013-03-06 | 2016-09-14 | 天地融科技股份有限公司 | 具有电子签名功能的智能卡交易方法及系统 |
WO2015161690A1 (zh) * | 2014-04-25 | 2015-10-29 | 天地融科技股份有限公司 | 数据安全交互方法和系统 |
CN105656862A (zh) * | 2014-11-21 | 2016-06-08 | 航天恒星科技有限公司 | 认证方法及装置 |
CN109074564A (zh) * | 2016-05-06 | 2018-12-21 | 万事达卡国际股份有限公司 | 使用记录保证即时支付的方法和系统 |
CN108848089A (zh) * | 2018-06-13 | 2018-11-20 | 江苏恒宝智能系统技术有限公司 | 一种数据加密方法及数据传输系统 |
CN108848089B (zh) * | 2018-06-13 | 2020-09-01 | 江苏恒宝智能系统技术有限公司 | 一种数据加密方法及数据传输系统 |
CN108921560A (zh) * | 2018-07-27 | 2018-11-30 | 广州友谱网络科技有限公司 | 基于区块链的交易信息校验及结算方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101635075B (zh) | 2013-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101635075B (zh) | 一种交易方法及系统 | |
CN105590199B (zh) | 一种基于动态二维码的支付方法以及支付系统 | |
EP0981804B1 (en) | Electronic transaction and smart card for a electronic transaction | |
WO2015161699A1 (zh) | 数据安全交互方法和系统 | |
US20110103586A1 (en) | System, Method and Device To Authenticate Relationships By Electronic Means | |
EP2733655A1 (en) | Electronic payment method and device for securely exchanging payment information | |
KR102277060B1 (ko) | 암호화 시스템 및 방법 | |
TWI591553B (zh) | Systems and methods for mobile devices to trade financial documents | |
GB2512595A (en) | Integrated contactless mpos implementation | |
CN101651675A (zh) | 提高网络交易安全性的方法和系统 | |
CN101340285A (zh) | 利用指纹USBkey进行身份验证的方法及系统 | |
JP2013514556A (ja) | 安全に取引を処理するための方法及びシステム | |
CN101686225A (zh) | 一种用于网上支付的数据加密和密钥生成方法 | |
CN101770619A (zh) | 一种用于网上支付的多因子认证方法和认证系统 | |
CN101340294A (zh) | 一种密码键盘装置及其实现方法 | |
WO2012155644A1 (zh) | 账单代付管理方法、装置及系统 | |
CN101685512A (zh) | 一种用于实现网上支付的计算机、支付系统及其方法 | |
CN101162535B (zh) | 利用ic卡实现磁条卡交易的方法及系统 | |
WO2015161690A1 (zh) | 数据安全交互方法和系统 | |
US20120254041A1 (en) | One-time credit card numbers | |
CN103326862A (zh) | 电子签名方法及系统 | |
CN108460597B (zh) | 一种密钥管理系统及方法 | |
CN101335754A (zh) | 一种利用远程服务器进行信息验证的方法 | |
CN102521777B (zh) | 一种实现远程信贷的方法及系统 | |
KR20070097874A (ko) | 이동통신 단말기를 이용하는 직불결제 서비스 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |