将传输密钥从终端服务器传输到密钥服务器的方法及系统的制作方法
【专利摘要】本发明公开将传输密钥从终端服务器传输到密钥服务器的方法及系统,该方法包括步骤:终端服务器调用第一硬件加密机、KMS系统调用第二硬件加密机共同约定对称加密保护密钥PK和MAC密钥MAK;终端服务器从POS终端采集TK,使用PK加密TK得到传输密钥密文C_tk_pk并进行打包生成打包数据;终端服务器调用第一硬件加密机对打包数据使用MAK计算MAC值MAC1并附在包尾后发送至KMS系统;KMS系统接收到打包数据后使用MAK对打包数据计算MAC值获得MAC2,对比MAC1和MAC2,若不一致判定数据不合法;若一致则从打包数据获得文C_tk_pk,调用第二硬件加密机使用PK解密C_tk_pk获得TK。
【专利说明】将传输密钥从终端服务器传输到密钥服务器的方法及系统
【技术领域】
[0001]本发明涉及电子支付领域,尤其涉及将传输密钥从终端服务器传输到密钥服务器的方法及系统。
【背景技术】
[0002]银行卡(BANK Card)作为支付工具越来越普及,通常的银行卡支付系统包括销售点终端(Point Of Sale,POS)、POS收单系统(P0SP)、密码键盘(PIN PAD)和硬件加密机(Hardware and Security Module, HSM)。其中POS终端能够接受银行卡信息,具有通讯功能,并接受柜员的指令完成金融交易信息和有关信息交换的设备;P0S收单系统对P0S终端进行集中管理,包括参数下载,密钥下载,接受、处理或转发P0S终端的交易请求,并向P0S终端回送交易结果信息,是集中管理和交易处理的系统;密码键盘(PIN PAD)是对各种金融交易相关的密钥进行安全存储保护,以及对PIN进行加密保护的安全设备;硬件加密机(HSM)是对传输数据进行加密的外围硬件设备,用于PIN的加密和解密、验证报文和文件来源的正确性以及存储密钥。个人标识码(Personal Identification Number, PIN),即个人密码,是在联机交易中识别持卡人身份合法性的数据信息,在计算机和网络系统中任何环节都不允许以明文的方式出现;终端主密钥(Terminal Master Key,TMK),P0S终端工作时,对工作密钥进行加密的主密钥,加密保存在系统数据库中;P0S终端广泛应用于银行卡支付场合,比如厂商购物、酒店住宿等,是一种不可或缺的现代化支付手段,已经融入人们生活的各种场合。银行卡,特别是借记卡,一般都由持卡人设置了 PIN,在进行支付过程中,P0S终端除了上送银行卡的磁道信息等资料外,还要持卡人输入PIN供发卡银行验证持卡人的身份合法性,确保银行卡支付安全,保护持卡人的财产安全。为了防止PIN泄露或被破解,要求从终端到发卡银行整个信息交互过程中,全程对PIN进行安全加密保护,不允许在计算机网络系统的任何环节,PIN以明文的方式出现,因此目前接受输入PIN的P0S终端都要求配备密钥管理体系。
[0003]P0S终端的密钥体系分成二级:终端主密钥(TMK)和工作密钥(WK)。其中TMK在WK更新过程中,对WK进行加密保护。每台P0S终端与P0S之间共享唯一的TMK,必须要有安全保护,保证只能写入设备并参与计算,不能读取;TMK是一个很关键的根密钥,如果TMK被截取,工作密钥就比较容易被破解,将严重威胁银行卡支付安全。所以能否安全下载TMK到P0S终端,成为整个P0S终端安全性的关键。下面归纳现有的TMK下载方案如下:
[0004]1、密钥母P0S方案:用户在P0S收单系统硬件加密机和密钥母P0S输入一样的传输加密密钥。P0S终端通过密钥母P0S向P0S收单系统发起终端主密钥下载请求,P0S收单系统驱动硬件加密机随机生成终端主密钥,并用传输加密密钥加密传输给密钥母P0S,密钥母P0S用传输加密密钥解密后再传输给P0S终端,P0S终端获得终端主密钥明文,保存到P0S终端密码键盘,从而实现P0S终端和P0S收单系统之间终端主密钥的同步。
[0005]2、1C卡解密方案:用户在P0S收单系统硬件加密机和1C卡中注入一样的传输加密密钥。用户将1C卡插入P0S终端,P0S终端向P0S收单系统发起终端主密钥下载请求,POS收单系统驱动硬件加密机随机生成终端主密钥,并用传输加密密钥加密传输给P0S终端,P0S终端用1C卡中的传输加密密钥解密终端主密钥密文,获得终端主密钥明文,保存到P0S终端密码键盘,从而实现P0S终端和P0S收单系统之间终端主密钥的同步。
[0006]上述两种方案都有以下缺点:终端主密钥明文出现在安全设备之外,为防范密钥泄露风险,终端主密钥的下载必须控制在管理中心的安全机房进行,通过人工集中下载终端主密钥。从而带来“维护中心机房工作量大;设备出厂后需要运输到管理中心安全机房下载密钥才能部署到商户,运输成本上升;为了集中下装密钥,需要大量的人手和工作时间,维护成本大、维护周期长”等问题。
【发明内容】
[0007]为解决上述技术问题,本发明采用的一个技术方案是:
[0008]提供将传输密钥从终端服务器传输到密钥服务器的方法,包括步骤:
[0009]终端服务器调用第一硬件加密机、KMS系统调用第二硬件加密机,生成共同约定的对称加密保护密钥PK和MAC密钥MAK ;
[0010]终端服务器从P0S终端采集到传输密钥TK,使用加密保护密钥PK加密传输密钥TK得到传输密钥密文C_tk_pk ;
[0011 ] 终端服务器对传输密钥密文C_tk_pk进行打包生成打包数据;
[0012]终端服务器调用第一硬件加密机对打包数据使用MAK计算MAC值MAC1并附在包尾,并将附有MAC1的打包数据发送至KMS系统;
[0013]KMS系统接收到打包数据后,使用MAK密钥对打包数据计算MAC值,获得MAC2,比较接收到的MAC1和MAC2是否一致,若是不一致判定数据不合法;
[0014]若MAC1和MAC2 —致,KMS系统从打包数据获得传输密钥密文C_tk_pk,调用第二硬件加密机使用加密保护密钥PK解密C_tk_pk获得传输密钥TK。
[0015]其中,所述打包数据中包含P0S终端序列号,所述P0S终端序列号对应一具体的P0S终端。
[0016]其中,所述打包数据中包含加密传输密钥TK的公钥对应的公钥序列号。
[0017]其中,所述打包数据中包含加密传输密钥TK的版本号。
[0018]本发明采用的另一个技术方案是:
[0019]提供一种将传输密钥从终端服务器传输到密钥服务器的系统,包括KMS系统和与KMS系统通信连接的终端服务器,用于供终端服务器调用的第一硬件加密机,以及用于供KMS系统调用的第二硬件加密机;所述终端服务器包括第一加密模块、TK采集模块、第二加密模块、打包模块以及第一运算模块;所述KMS系统包括第二运算模块、判定模块以及第一解密模块;
[0020]第一加密模块用于调用第一硬件加密机、第二加密模块用于调用第二硬件加密机,生成共同约定的对称加密保护密钥PK和MAC密钥MAK ;
[0021 ] TK采集模块用于从P0S终端采集到传输密钥TK ;
[0022]第三加密模块,用于使用加密保护密钥PK加密传输密钥TK得到传输密钥密文C_tk_pk ;
[0023]打包模块用于对传输密钥密文C_tk_pk进行打包生成打包数据;[0024]第一运算模块用于调用第一硬件加密机对打包数据使用MAK计算MAC值MAC1并附在包尾,并将附有MAC1的打包数据发送至KMS系统;
[0025]第二运算模块用于KMS系统接收到打包数据后,使用MAK密钥对打包数据计算MAC值,获得MAC2 ;
[0026]判定模块用于比较接收到的MAC1和MAC2是否一致,若是不一致判定数据不合法,若MAC1和MAC2 —致,KMS系统从打包数据获得传输密钥密文C_tk_pk ;以及
[0027]第一解密模块用于调用第二硬件加密机使用加密保护密钥PK解密C_tk_pk获得传输密钥TK。
[0028]其中,所述打包模块中的打包数据中包含P0S终端序列号,所述P0S终端序列号对应一具体的P0S终端。
[0029]其中,所述打包数据还包含加密传输密钥TK的公钥对应的公钥序列号。
[0030]其中,所述打包数据还包含加密传输密钥TK的版本号。
[0031]本发明的传输密钥从终端服务器传输到密钥服务器的方法,通过利用对称加密保护密钥PK和MAC密钥MAK,再利用加密保护密钥PK加密从P0S终端采集到的传输密钥TK得到传输密钥密文,之后对传输密钥密文进行打包生成打包数据,并使用MAC计算MAC1值后发送至KMS系统,通过KMS系统接收数据后对打包数据计算得出MAC2值与MAC1值进行比较判定传输数据是否被截取篡改,判定未篡改后再使用加密保护密钥PK解密传输密钥密文得到传输密钥TK。通过本发明,实现了传输密钥TK安全可靠的从终端服务器传输至密钥服务器,并在经过验证确认传输数据未被篡改后才提取TK,保证了传输密钥TK未经窃取篡改,进而保证了设备端能从服务器安全可靠的下载未被篡改的主密钥TMK。
【专利附图】
【附图说明】
[0032]图1是本发明的一实施方式中的将传输密钥从终端服务器传输到密钥服务器的系统结构框图;
[0033]图2是本发明的一实施方式中的将传输密钥从终端服务器传输到密钥服务器方法的流程图;
[0034]主要元件符号说明
[0035]终端服务器1 ;KMS系统2 ;第一加密模块10 ;TK采集模块20 ;
[0036]第二加密模块30 ;打包模块40 ;第一运算模块50 ;
[0037]第二运算模块60 ;判定模块70 ;第一解密模块80。
【具体实施方式】
[0038]为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。
[0039]为解决【背景技术】中存在的技术问题,本发明采用一种新的主密钥下载方案,通过P0S终端随机产生TK (Transmission Key,传输密钥),将产生后的TK保存于P0S终端的密码键盘中,并将TK通过各种应用场景下所需的传输方式传送至KMS (Key ManagementSystem,密钥管理系统,用于管理终端主密钥TMK)中。
[0040]当P0S终端申请下载终端主密钥TMK时,KMS系统使用TK加密终端主密钥TMK,并将加密后的终端主密钥密文发送给POS终端,POS终端接收后用TK对主密钥密文进行解密,得到终端主密钥TMK,并将终端主密钥TMK保存在密码键盘里。
[0041]如此,通过TK加密终端主密钥TMK,使TMK能够进行远程传输,方便TMK的安全下载。在某些场景下,利用终端服务器采集P0S终端产生的TK,所述终端服务器即终端管理系统,用于完成P0S终端信息管理、软件与参数配置、远程下载、终端运行状态信息收集管理、远程诊断等功能。并由终端服务器负责将TK传输给MTMS系统(Material TrackingManagement System,物料追溯系统,主要在工厂生产中使用),由MTMS系统统一管理TK,并将TK发送给相应的KMS系统,MTMS系统与KMS系统通过第一硬件加密机和第二硬件加密机分别产生协商密钥,MTMS系统与KMS系统通过协商密钥进行数据的传输和认证。所述输送过程由 CA 中心(Certificate Authority,证书授权中心,米用 Public Key Infrastructure公开密钥基础架构技术,专门提供网络身份认证服务,负责签发和管理数字证书,且具有权威性和公正性的第三方信任机构)鉴别操作终端、MTMS系统和KMS系统的身份。采用终端服务器采集TK可以方便TK的采集操作(可以实现一键采集等)和TK采集的权限管理;采用MTMS系统可以方便对TK统一管理,方便以后售后维修时P0S终端的数据查找与下载,通过MTMS系统可以实现按生产单批量传输TK,方便TK的传输管理,防止TK误传给错误的对象;引入CA中心可以防止伪终端和伪KMS系统窃取TK。上述通过P0S终端采集传输密钥TK后发送至银行端对TMK进行加密,再通过P0S终端远程下载经TK加密后的TMK的方法可以保证TMK的传输安全。
[0042]在所述采用终端服务器采集P0S终端产生的TK,并由终端服务器负责将TK传输给MTMS系统,由MTMS系统统一管理TK的方案中,由于终端服务器需要支持终端主密钥远程下载功能,需要保证将传输密钥TK数据安全地传输到密钥服务器,并在经过验证确认传输数据未被篡改后才提取TK,保证传输密钥TK未经窃取篡改,进而保证了设备端能从服务器安全可靠的下载未被篡改的主密钥TKM,由原来P0S终端零散上传TK改为第三方统一上传大大减轻了 KMS系统的KT接收工作负担。
[0043]鉴于此,下面针对该问题提供解决的技术方案。
[0044]请参阅图1,是本发明的一实施方式中的终端服务器的结构框图。该终端服务器1包括第一加密模块10、TK采集模块20、第二加密模块30、打包模块40、第一运算模块50、第二运算模块60、判定模块70和第一解密模块80。所述第一加密模块10用于终端服务器1调用第一硬件加密机、KMS系统2调用第二硬件加密机,生成共同约定的对称加密保护密钥ΡΚ和MAC密钥MAK ;所述TK采集模块20用于从P0S终端采集到传输密钥TK ;所述第二加密模块30,用于使用加密保护密钥PK加密传输密钥TK得到传输密钥密文C_tk_pk ;所述打包模块40用于对传输密钥密文C_tk_pk进行打包生成打包数据;所述第一运算模块50用于调用第一硬件加密机对打包数据使用MAK计算MAC值MAC1并附在包尾,并将附有MAC1的打包数据发送至KMS系统;所述第二运算模块60用于KMS系统接收到打包数据后,使用MAK密钥对打包数据计算MAC值,获得MAC2 ;所述判定模块70用于比较接收到的MAC1和MAC2是否一致,若是不一致判定数据不合法,若MAC1和MAC2 —致,KMS系统2从打包数据获得传输密钥密文C_tk_pk ;所述第一解密模块80用于调用第二硬件加密机使用加密保护密钥PK解密C_tk_pk获得传输密钥TK。
[0045]图1中所述的终端服务器中所述打包模块40具体还包括P0S终端序列号,所述POS终端序列号对应一具体的P0S终端,所述P0S终端序列号,用于之后将该打包数据,发给与其P0S终端序列号相对应的具体终端设备。
[0046]图1中所述的终端服务器中所述打包模块40具体还包括加密传输密钥TK的公钥对应的公钥序列号,所述加密传输密钥TK的公钥对应的公钥序列号用于加密TK,用于追溯具体是哪一个加密公钥加密与之对应的TK数据。
[0047]图1中所述的终端服务器中所述打包模块40具体还包括加密传输密钥TK的版本号,所述版本号,用于之后系统升级时选择相对应的版本号进行升级。
[0048]所述终端服务器1所述打包模块40还可包括多个TK参数、多个TK数据和打包数据生成时间,所述多个TK参数用于表示不同的TK格式,所述生成时间用于追溯该条数据是什么时候完成打包和进行传输的。
[0049]请参阅图2,是本发明的一实施方式中的将传输密钥从终端服务器传输到密钥服务器方法的流程图。该方法包括:
[0050]步骤S101、终端服务器1调用第一硬件加密机、KMS系统2调用第二硬件加密机,生成共同约定的对称加密保护密钥PK和MAC密钥MAK ;
[0051]步骤S201、终端服务器1从P0S终端采集到传输密钥TK,使用加密保护密钥PK加密传输密钥TK得到传输密钥密文C_tk_pk ;
[0052]步骤S301、终端服务器1对传输密钥密文C_tk_pk进行打包生成打包数据;
[0053]步骤S401、终端服务器1调用第一硬件加密机对打包数据使用MAK计算MAC值MAC1并附在包尾,并将附有MAC1的打包数据发送至KMS系统2 ;
[0054]步骤S501、KMS系统2接收到打包数据后,使用MAK密钥对打包数据计算MAC值,获得MAC2 ;
[0055]步骤S601、比较接收到的MAC1和MAC2是否一致;
[0056]步骤S701、若MAC1和MAC2 —致,KMS系统2从打包数据获得传输密钥密文C_tk_pk,调用第二硬件加密机使用加密保护密钥PK解密C_tk_pk获得传输密钥TK ;
[0057]步骤S801、若是不一致,判定数据不合法。
[0058]本发明的传输密钥从终端服务器传输到密钥服务器的方法,通过对称加密保护密钥PK和MAC密钥MAK,PK加密传输密钥TK得到传输密钥密文,之后进行打包处理生成打包数据,并附带使用MAC计算的MAC1值后发送至KMS系统,后者对打包数据计算得出MAC2值与MAC1值进行比较来判定传输数据是否遭到篡改,验证通过后再提取TK对主密钥TMK进行加密发送。本发明保证了传输密钥TK的安全可靠传输,为后续主密钥的远程下载提供了安全保障。
[0059]以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的【技术领域】,均同理包括在本发明的专利保护范围内。
【权利要求】
1.将传输密钥从终端服务器传输到密钥服务器的方法,其特征在于,包括步骤:终端服务器调用第一硬件加密机、KMS系统调用第二硬件加密机,生成共同约定的对称加密保护密钥PK和MAC密钥MAK ;终端服务器从POS终端采集到传输密钥TK,使用加密保护密钥PK加密传输密钥TK得到传输密钥密文C_tk_pk ;终端服务器对传输密钥密文C_tk_pk进行打包生成打包数据;终端服务器调用第一硬件加密机对打包数据使用MAK计算MAC值MAC1并附在包尾,并将附有MAC1的打包数据发送至KMS系统;KMS系统接收到打包数据后,使用MAK密钥对打包数据计算MAC值,获得MAC2,比较接收到的MAC1和MAC2是否一致,若是不一致判定数据不合法;若MAC1和MAC2 —致,KMS系统从打包数据获得传输密钥密文C_tk_pk,调用第二硬件加密机使用加密保护密钥PK解密C_tk_pk获得传输密钥TK。
2.根据权利要求1所述的将传输密钥从终端服务器传输到密钥服务器的方法,其特征在于,打包数据中包含POS终端序列号,所述POS终端序列号对应一具体的POS终端。
3.根据权利要求1所述的将传输密钥从终端服务器传输到密钥服务器的方法,其特征在于,打包数据中包含加密传输密钥TK的公钥对应的公钥序列号。
4.根据权利要求1所述的将传输密钥从终端服务器传输到密钥服务器的方法,其特征在于,打包数据中包含加密传输密钥TK的版本号。
5.将传输密钥从终端服务器传输到密钥服务器的系统,其特征在于,包括KMS系统和与KMS系统通信连接的终端服务器,用于供终端服务器调用的第一硬件加密机,以及用于供KMS系统调用的第二硬件加密机;所述终端服务器包括第一加密模块、TK采集模块、第二加密模块、打包模块以及第一运算模块;所述KMS系统包括第二运算模块、判定模块以及第一解密模块;第一加密模块用于调用第一硬件加密机、第二加密模块用于调用第二硬件加密机,生成共同约定的对称加密保护密钥PK和MAC密钥MAK ;TK采集模块用于从POS终端采集到传输密钥TK ;第三加密模块用于使用加密保护密钥PK加密传输密钥TK得到传输密钥密文C_tk_pk ;打包模块用于对传输密钥密文C_tk_pk进行打包生成打包数据;第一运算模块用于调用第一硬件加密机对打包数据使用MAK计算MAC值MAC1并附在包尾,并将附有MAC1的打包数据发送至KMS系统;第二运算模块用于KMS系统接收到打包数据后,使用MAK密钥对打包数据计算MAC值,获得MAC2 ;判定模块用于比较接收到的MAC1和MAC2是否一致,若是不一致判定数据不合法,若MAC1和MAC2 —致,KMS系统从打包数据获得传输密钥密文C_tk_pk ;以及第一解密模块用于调用第二硬件加密机使用加密保护密钥PK解密C_tk_pk获得传输密钥TK。
6.根据权利要求5所述的将传输密钥从终端服务器传输到密钥服务器的系统,其特征在于:所述打包数据中包含POS终端序列号,所述POS终端序列号对应一具体的POS终端。
7.根据权利要求5所述的将传输密钥从终端服务器传输到密钥服务器的系统,其特征在于:所述打包数据还包含加密传输密钥TK的公钥对应的公钥序列号。
8.根据权利要求5所述的将传输密钥从终端服务器传输到密钥服务器的系统,其特征在于:所述打包数据还包含加密传`输密钥TK的版本号。
【文档编号】G07G1/00GK103729942SQ201310740410
【公开日】2014年4月16日 申请日期:2013年12月27日 优先权日:2013年3月15日
【发明者】苏文龙 申请人:福建联迪商用设备有限公司