一种传输密钥的方法及POS终端与流程

文档序号:15362565发布日期:2018-09-05 01:00阅读:438来源:国知局

本发明涉及数据安全领域,尤其涉及一种传输密钥的方法及pos终端。



背景技术:

在金融交易系统中,为了传输工作密钥,交易双方通常需要协商保护密钥,又称为区域主密钥(zmk)。其中,保护密钥用于安全地在发送方与接收方之间传输工作密钥。目前,为了保证zmk的安全性,通常的做法是交易双方各自生成一个zmk的分量,然后安排专门的密钥管理员到对方的安全房分别完成密钥注入。或者由一方生成2个密钥分量,然后到对方安全房的硬件安全模块(hsm)中进行密钥注入。

上述常用的保护密钥协商方式,都需要操作人员移步客户现场以完成保护密钥注入。注入保护密钥过程中需要彼此信任对方的安全管控流程,且后续交易过程中,如果出现保护密钥不一致问题时,需要较为繁琐的确认流程,人力成本开销大,且开发调试流程繁琐。对于pos设备厂商来说,采用上述方案,需要管理多个客户的保护密钥,为满足不同客户不同的安全需求,需要较高级别的安全设施以及专门的密钥管理团队进行运维,增加了设备厂商的运营成本。



技术实现要素:

本发明所要解决的技术问题是:如何提高设置用于安全传输工作密钥的保护密钥的便利性。

为了解决上述技术问题,本发明采用的技术方案为:

本发明提供一种传输密钥的方法,包括:

s1、一pos终端获取与发送方对应的第一保护密钥;

s2、所述一pos终端获取与接收方对应的第二保护密钥;

s3、所述一pos终端根据所述第一保护密钥解密来自所述发送方的第一工作密钥密文,得到工作密钥明文;

s4、所述一pos终端根据所述第二保护密钥加密所述工作密钥明文,得到第二工作密钥密文;

s5、所述一pos终端发送所述第二工作密钥密文至所述接收方。

本发明还提供一种pos终端,包括一个或多个处理器及存储器,所述存储器存储有程序,并且被配置成由所述一个或多个处理器执行以下步骤:

s1、获取与发送方对应的第一保护密钥;

s2、获取与接收方对应的第二保护密钥;

s3、根据所述第一保护密钥解密来自所述发送方的第一工作密钥密文,得到工作密钥明文;

s4、根据所述第二保护密钥加密所述工作密钥明文,得到第二工作密钥密文;

s5、发送所述第二工作密钥密文至所述接收方。

本发明的有益效果在于:pos终端具有经过安全认证的安全模块,还具有攻击检测和密钥攻击自毁的特性,本发明将一pos终端作为将发送方的工作密钥转发至接收方的中介具有较高的安全性。发送方通过安全的方式往所述一pos终端注入第一保护密钥,使得工作密钥可安全地在发送方与所述一pos终端之间传输。此后,发送方即可将所述一pos终端以邮寄等其它物理运输方式交付至接收方,接收方通过安全的方式往所述一pos终端注入第二保护密钥。所述一pos终端在接收到发送方发送的工作密钥密文后,使用第一保护密钥获取工作密钥明文,并使用第二保护密钥加密工作密钥明文,使得工作密钥可在所述一pos终端和接收方之间安全传输,且接收方可根据第二保护密钥获取工作密钥明文。其中,在pos终端的安全区域内进行加密转换具有较高的安全性。区别于现有技术需在发送方和接收方协商好保护密钥后,再由密钥管理人员分别在发送方和接收方的安全房注入保护密钥,本发明中发送方和接收方无需协商保护密钥,各自使用自身的保护密钥保证可与所述一pos终端之间安全地传输工作密钥即可,因此本发明所提供的传输密钥的方法及pos终端无需专门的密钥管理员在发送方与接收方之间协商保护密钥,且作为中介的pos终端具有较高的安全性,无需担心在注入保护密钥过程中,对方安全房的安全管控机制漏洞对保护密钥安全性的影响,具有较高的便利性和安全性。此外,发送方无需管理不同接收方的保护密钥,接收方可根据需要随时更换第二保护密钥以提高工作密钥传输的安全性。

附图说明

图1为本发明提供的一种传输密钥的方法的具体实施方式的流程框图;

图2为本发明提供的一种pos终端的具体实施方式的结构框图;

标号说明:

1、处理器;2、存储器。

具体实施方式

本发明最关键的技术构思在于:本发明以一pos终端作为将发送方的工作密钥转发至接收方的中介,并由发送方和接收方分别设置与pos终端之间安全传输数据的保护密钥,提高了设置用于安全传输工作密钥的保护密钥的便利性。

请参照图1以及图2,

如图1所示,本发明提供一种传输密钥的方法,包括:

s1、一pos终端获取与发送方对应的第一保护密钥;

s2、所述一pos终端获取与接收方对应的第二保护密钥;

s3、所述一pos终端根据所述第一保护密钥解密来自所述发送方的第一工作密钥密文,得到工作密钥明文;

s4、所述一pos终端根据所述第二保护密钥加密所述工作密钥明文,得到第二工作密钥密文;

s5、所述一pos终端发送所述第二工作密钥密文至所述接收方。

进一步地,所述s1具体为:

所述一pos终端加入与所述发送方对应的局域网;

所述一pos终端接收来自所述发送方的第一保护密钥。

由上述描述可知,发送方采用安全地传输方式将第一保护密钥注入pos终端,使得可将工作密钥安全地传输至pos终端。

进一步地,所述s2具体为:

所述一pos终端加入与所述接收方对应的局域网;

所述一pos终端接收来自所述接收方的第二保护密钥。

由上述描述可知,接收方采用安全地传输方式将第二保护密钥注入pos终端,使得pos终端可安全地将工作密钥传输至接收方。

进一步地,所述s3具体为:

所述第一保护密钥包括第一密钥分量和第二密钥分量;

所述一pos终端获取与所述第一工作密钥密文对应的第一数据报文;

所述一pos终端获取来自所述发送方的与所述第一数据报文对应的mac值,得到第一mac值;

所述一pos终端根据所述第一密钥分量对所述第一数据报文进行mac运算,得到第二mac值;

当所述第一mac值与所述第二mac值相同时,所述一pos终端根据所述第二密钥分量解密所述第一工作密钥密文,得到工作密钥明文。

由上述描述可知,pos终端通过mac校验验证发送方发送的数据报文的完整性和可认证性,以防在传输过程中携带工作密钥的数据报文被篡改,有利于提高传输工作密钥的安全性。

进一步地,所述s4具体为:

所述第二保护密钥包括第四密钥分量;

所述一pos终端根据所述第四密钥分量加密所述工作密钥明文,得到第二工作密钥密文。

进一步地,所述s5具体为:

所述第二保护密钥还包括第三密钥分量;

所述一pos终端生成与所述第二工作密钥密文对应的第二数据报文;

所述一pos终端根据所述第三密钥分量对所述第二数据报文进行mac运算,得到第三mac值;

所述一pos终端发送所述第二数据报文至所述接收方;

所述一pos终端发送所述第三mac值至所述接收方,以使所述接收根据所述第三mac值验证所述第二数据报文的完整性。

由上述描述可知,pos终端采用与接收方事先约定的第三密钥分量计算第二数据报文的mac值,使得接收方在接收到第二数据报文后,可采用第三密钥分量验证第二数据包文的完整性和可认证性,以防携带工作密钥的第二数据报文在传输过程中被篡改,有利于提高传输工作密钥的安全性。

进一步地,还包括:

所述一pos终端采用x9.19算法进行mac运算。

由上述描述可知,在金融支付领域,对称密钥算法一般使用x9.9或x9.19算法进行mac运算,而x9.19相对x9.9的算法复杂性更高,被破解的难度更大,有利于提高验证数据报文是否被篡改的准确性。

进一步地,还包括:

所述一pos终端添加与所述发送方对应的ip地址;

所述一pos终端添加与所述接收方对应的ip地址。

由上述描述可知,通过发送方和接收方的ip地址使得所述一pos终端可与发送方和接收方之间建立通信连接以传输数据。

如图2所示,本发明还提供一种pos终端,包括一个或多个处理器1及存储器2,所述存储器2存储有程序,并且被配置成由所述一个或多个处理器1执行以下步骤:

s1、获取与发送方对应的第一保护密钥;

s2、获取与接收方对应的第二保护密钥;

s3、根据所述第一保护密钥解密来自所述发送方的第一工作密钥密文,得到工作密钥明文;

s4、根据所述第二保护密钥加密所述工作密钥明文,得到第二工作密钥密文;

s5、发送所述第二工作密钥密文至所述接收方。

进一步地,所述s1具体为:

加入与所述发送方对应的局域网;

接收来自所述发送方的第一保护密钥。

进一步地,所述s2具体为:

加入与所述接收方对应的局域网;

接收来自所述接收方的第二保护密钥。

进一步地,所述s3具体为:

所述第一保护密钥包括第一密钥分量和第二密钥分量;

获取与所述第一工作密钥密文对应的第一数据报文;

获取来自所述发送方的与所述第一数据报文对应的mac值,得到第一mac值;

根据所述第一密钥分量对所述第一数据报文进行mac运算,得到第二mac值;

当所述第一mac值与所述第二mac值相同时,根据所述第二密钥分量解密所述第一工作密钥密文,得到工作密钥明文。

进一步地,所述s4具体为:

所述第二保护密钥包括第四密钥分量;

根据所述第四密钥分量加密所述工作密钥明文,得到第二工作密钥密文。

进一步地,所述s5具体为:

所述第二保护密钥还包括第三密钥分量;

生成与所述第二工作密钥密文对应的第二数据报文;

根据所述第三密钥分量对所述第二数据报文进行mac运算,得到第三mac值;

发送所述第二数据报文至所述接收方;

发送所述第三mac值至所述接收方,以使所述接收根据所述第三mac值验证所述第二数据报文的完整性。

进一步地,还包括:

采用x9.19算法进行mac运算。

进一步地,还包括:

添加与所述发送方对应的ip地址;

添加与所述接收方对应的ip地址。

本发明的实施例一为:

本实施例提供一种传输密钥的方法,包括:

s1、一pos终端获取与发送方对应的第一保护密钥。具体为:

所述一pos终端加入与所述发送方对应的局域网;所述一pos终端接收来自所述发送方的第一保护密钥。

s2、所述一pos终端添加与所述发送方对应的ip地址。

其中,pos厂商(发送方)准备密钥母pos(所述一pos终端),并分别注入2个密钥分量,密钥母pos在安全区内合成最终的第一保护密钥pk1,并存储在安全存储区;然后设置访问厂商系统的ip地址。准备完毕后,将密钥母pos邮寄给客户。

s3、所述一pos终端获取与接收方对应的第二保护密钥。具体为:

所述一pos终端加入与所述接收方对应的局域网;所述一pos终端接收来自所述接收方的第二保护密钥。

s4、所述一pos终端添加与所述接收方对应的ip地址。

其中,客户(接收方)收到母pos之后,检查设备是否受到攻击(检查pos外观是否损坏,如果出现攻击,上电启动后母pos界面会有明显的攻击报警提示信息),确认安全后,生成2个密钥分量,分别注入到母pos中,密钥母pos在安全区内合成最终的第二保护密钥pk2,并存储在安全存储区;随后客户需要设置其接收密钥系统的ip地址。

s5、所述一pos终端根据所述第一保护密钥解密来自所述发送方的第一工作密钥密文,得到工作密钥明文。具体为:

所述第一保护密钥包括第一密钥分量和第二密钥分量;

所述一pos终端获取与所述第一工作密钥密文对应的第一数据报文;

所述一pos终端获取来自所述发送方的与所述第一数据报文对应的mac值,得到第一mac值;

所述一pos终端根据所述第一密钥分量对所述第一数据报文进行mac运算,得到第二mac值;

当所述第一mac值与所述第二mac值相同时,所述一pos终端根据所述第二密钥分量解密所述第一工作密钥密文,得到工作密钥明文。

其中,密钥母pos将pk1衍生出2个密钥,pk1_tek(第二密钥分量)和pk1_mak(第一密钥分量),然后向pos厂商发起交易请求,连接到pos厂商的密钥管理系统获取工作密钥,pk1_tek用于加密工作密钥,确保密钥的机密性;pk1_mak用于对数据报文使用x9.19算法计算校验值mac,确保交易报文的完整性和可认证性。

s6、所述一pos终端根据所述第二保护密钥加密所述工作密钥明文,得到第二工作密钥密文。具体为:

所述第二保护密钥包括第三密钥分量和第四密钥分量;

所述一pos终端根据所述第四密钥分量加密所述工作密钥明文,得到第二工作密钥密文。

s7、所述一pos终端发送所述第二工作密钥密文至所述接收方。具体为:

所述一pos终端生成与所述第二工作密钥密文对应的第二数据报文;

所述一pos终端根据所述第三密钥分量对所述第二数据报文进行mac运算,得到第三mac值;

所述一pos终端发送所述第二数据报文至所述接收方;

所述一pos终端发送所述第三mac值至所述接收方,以使所述接收根据所述第三mac值验证所述第二数据报文的完整性。

其中,密钥母pos对pk2进行衍生,得到2个密钥pk2_tek(第四密钥分量)和pk2_mak(第三密钥分量),并在本地的安全区内将工作密钥由pk1_tek加密转为pk2_tek加密,转加密过程中同时验证工作密钥的校验值是否正确,然后对报文使用pk2_mak计算x9.19mac值;密钥母pos将使用交易形式将采用pk2_tek加密后的工作密钥密文发送给客户的密钥管理系统;客户的密钥管理系统按照同样的方式,使用pk2验证收到的密钥数据的完整性和真实性,确认校验值无误后存储在数据库。

可选地,采用x9.19算法进行mac运算。

由上述描述可知,本实施例通过一个密钥母pos存储2个保护密钥,密钥母pos分别与交易的双方建立了安全通道,密钥母pos可以在这个安全通道内自动传递密钥,免去了大部分的人工操作,这是确实可行的,有效的。

本实施例在密钥传输的3个阶段,都有专用的密钥进行保护。密钥母pos从厂商的密钥管理系统获取密钥时,使用pk1保护,pk1是厂商以密钥分量形式注入母pos的密钥(pk1属于区域主密钥,按照区域主密钥的管理原则应通过至少2个密钥分量的形式生成和注入);工作密钥转加密阶段,是在密钥母pos的安全区进行,pos本身的攻击自毁和防范各种攻击的特性保证了该阶段的安全性;工作密钥上送到客户的密钥管理系统阶段,使用客户的保护密钥pk2加密,pk2是客户在自己所在地以分量形式注入到母pos的保护密钥。在密钥存储和传输的各个阶段,均满足安全性的要求,且在最大程度上降低了对对方系统的依赖。

本实施例采用pk1和pk2衍生出的mak对交易报文计算mac,保证数据传输过程中的完整性和可认证性。对密钥部分,还通过密钥校验值(keycheckvalue,kcv)的方式保证了密钥的一致性。

本发明的实施例二为:

本实施例提供一种pos终端,包括一个或多个处理器1及存储器2,所述存储器2存储有程序,并且被配置成由所述一个或多个处理器1执行以下步骤:

s1、获取与发送方对应的第一保护密钥。具体为:加入与所述发送方对应的局域网;接收来自所述发送方的第一保护密钥。

s2、添加与所述发送方对应的ip地址。

s3、获取与接收方对应的第二保护密钥。具体为:加入与所述接收方对应的局域网;接收来自所述接收方的第二保护密钥。

s4、添加与所述接收方对应的ip地址。

s5、根据所述第一保护密钥解密来自所述发送方的第一工作密钥密文,得到工作密钥明文。具体为:

所述第一保护密钥包括第一密钥分量和第二密钥分量;

获取与所述第一工作密钥密文对应的第一数据报文;

获取来自所述发送方的与所述第一数据报文对应的mac值,得到第一mac值;

根据所述第一密钥分量对所述第一数据报文进行mac运算,得到第二mac值;

当所述第一mac值与所述第二mac值相同时,根据所述第二密钥分量解密所述第一工作密钥密文,得到工作密钥明文。

s6、根据所述第二保护密钥加密所述工作密钥明文,得到第二工作密钥密文。具体为:

所述第二保护密钥包括第三密钥分量和第四密钥分量;

根据所述第四密钥分量加密所述工作密钥明文,得到第二工作密钥密文。

s7、发送所述第二工作密钥密文至所述接收方。具体为:

生成与所述第二工作密钥密文对应的第二数据报文;

根据所述第三密钥分量对所述第二数据报文进行mac运算,得到第三mac值;

发送所述第二数据报文至所述接收方;

发送所述第三mac值至所述接收方,以使所述接收根据所述第三mac值验证所述第二数据报文的完整性。

可选地,采用x9.19算法进行mac运算。

综上所述,本发明提供的一种传输密钥的方法及pos终端,本发明中发送方和接收方无需协商保护密钥,各自使用自身的保护密钥保证可与所述一pos终端之间安全地传输工作密钥即可,因此本发明所提供的传输密钥的方法及pos终端无需专门的密钥管理员在发送方与接收方之间协商保护密钥,且作为中介的pos终端具有较高的安全性,无需担心在注入保护密钥过程中,对方安全房的安全管控机制漏洞对保护密钥安全性的影响,具有较高的便利性和安全性。此外,发送方无需管理不同接收方的保护密钥,接收方可根据需要随时更换第二保护密钥以提高工作密钥传输的安全性。进一步地,发送方采用安全地传输方式将第一保护密钥注入pos终端,使得可将工作密钥安全地传输至pos终端。进一步地,接收方采用安全地传输方式将第二保护密钥注入pos终端,使得pos终端可安全地将工作密钥传输至接收方。进一步地,pos终端通过mac校验验证发送方发送的数据报文的完整性和可认证性,以防在传输过程中携带工作密钥的数据报文被篡改,有利于提高传输工作密钥的安全性。进一步地,pos终端采用与接收方事先约定的第三密钥分量计算第二数据报文的mac值,使得接收方在接收到第二数据报文后,可采用第三密钥分量验证第二数据包文的完整性和可认证性,以防携带工作密钥的第二数据报文在传输过程中被篡改,有利于提高传输工作密钥的安全性。进一步地,在金融支付领域,对称密钥算法一般使用x9.9或x9.19算法进行mac运算,而x9.19相对x9.9的算法复杂性更高,被破解的难度更大,有利于提高验证数据报文是否被篡改的准确性。进一步地,通过发送方和接收方的ip地址使得所述一pos终端可与发送方和接收方之间建立通信连接以传输数据。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1