CN111565104B - 一种刷卡器的密钥管理方法及系统 - Google Patents
一种刷卡器的密钥管理方法及系统 Download PDFInfo
- Publication number
- CN111565104B CN111565104B CN202010359140.3A CN202010359140A CN111565104B CN 111565104 B CN111565104 B CN 111565104B CN 202010359140 A CN202010359140 A CN 202010359140A CN 111565104 B CN111565104 B CN 111565104B
- Authority
- CN
- China
- Prior art keywords
- terminal
- transaction information
- key
- character string
- working
- 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
-
- 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/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07G—REGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
- G07G1/00—Cash registers
- G07G1/0036—Checkout procedures
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07G—REGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
- G07G1/00—Cash registers
- G07G1/12—Cash registers electronically operated
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及密钥安全领域,涉及到一种刷卡器的密钥管理方法及系统。刷卡器系统中包括多个刷卡终端、多个客户端和一服务端;密钥管理方法包括:步骤S1,客户端生成一加密因子发送至刷卡终端;步骤S2,刷卡终端生成工作密钥,对交易信息进行加密发送至客户端;步骤S3,客户端将加密因子和交易信息发送至服务端;步骤S4,服务端查询终端在终端表中的对应的终端记录;步骤S5,提取字符串,生成相同的工作密钥,对交易信息进行解密,获取解密后的交易信息。上述技术方案的有益效果是:通过工作密钥对交易信息进行加密和解密能够提高交易信息的安全性;降低开发难度,节省工作时间,提高工作效率。
Description
技术领域
本发明涉及密钥安全领域,涉及到一种刷卡器的密钥管理方法及系统。
背景技术
近年来,伴随着计算机技术的发展与互联网的普及,安全意识已经越来越为人所熟识,越来越多的技术应用领域需要保障数据的安全传输,避免出现黑客攻击以及恶意泄露等现象。
而在手刷POS机技术领域也同样具有保障数据安全性的要求,该技术领域内常使用一种基于音频或蓝牙技术制作的刷卡器进行移动交易。这种刷卡器通过音频接口或蓝牙无线通信等方式连接到手机等移动设备,并通过手机应用向提供用户一种可操作的界面。当用户将银行卡插入刷卡器或进行刷卡操作时,该移动设备将会读取银行卡的内部信息并将信息加密传输给手机应用,在后续交易的过程中手机应用再将金额、卡号、用户输入密码等关键信息密文组成交易信息,并发出交易指令,交易信息可通过互联网传输到后台进行处理,后台需要对前端交易的交易信息进行解密并校验数据安全性。由于交易信息中涉及到的交易金额,交易卡号,银行卡密码,磁道数据等均为敏感信息,这些敏感信息的安全程度会涉及到个人银行账户的整体安全程度,因此必须采用适当的加密方案来保证这些交易信息的安全性。
现今常见的技术中,从厂商采购设备到上线运行,需要经历设备个人化、二次开发、联调、测试等一序列阶段,这过程中如何保障数据安全,如何正确的进行加解密运算均涉及到复杂运算。
然而,由于这块专业性较强并且大部分开发工程师对于加密算法以及密钥方案不清楚或者没有从事手刷POS开发联调的相关经验,导致很难培训合格开发工程师,从而影响到与厂商的联调进度,延长开发工期。现今仍缺少一种能够高效接入厂商刷卡器设备的方法。
发明内容
针对上述的现有技术的缺陷,本发明提供一种刷卡器的密钥管理方法,应用于刷卡器系统,其特征在于,所述刷卡器系统中包括多个刷卡终端、多个客户端和一服务端,终端分别对应一商户,每个所述商户均设置一对应的商户号;
所述刷卡终端和所述客户端一一对应,所述客户端获取所述商户号并保存;
每个所述刷卡终端中预设终端主密钥和多个字符串,所有所述字符串和所述终端主密钥形成一条终端记录;
所有所述刷卡终端对应的所述终端记录组成一终端表;
所述服务端中存储一本地主密钥和所述终端表;
所述密钥管理方法包括:
步骤S1,所述客户端与所述刷卡终端构建数据连接并生成一加密因子发送至所述刷卡终端;
步骤S2,所述刷卡终端获取交易信息,并根据所述终端主密钥和所述加密因子生成工作密钥,采用所述工作密钥对所述交易信息进行加密后发送至所述客户端;
步骤S3,所述客户端获取所述交易信息,并将对应的所述商户号加入至所述交易信息,随后将所述加密因子和所述交易信息发送至所述服务端;
步骤S4,所述服务端获取所述交易信息,并根据所述商户号查询所述终端在所述终端表中的对应的所述终端记录;
步骤S5,所述服务端提取所述终端记录中对应的所有所述字符串,并根据所述本地主密钥和所述加密因子生成相同的所述工作密钥,采用所述工作密钥对所述交易信息进行解密,获取解密后的所述交易信息。
优选的,所述字符串中包括一第一字符串以及一字符串集合,所述字符串集合中包括除去所述第一字符串的多类字符串;
所述第一字符串为加密后的所述终端主密钥;
所述步骤S2中所述刷卡终端采用所述终端主密钥和所述加密因子生成工作密钥,采用所述工作密钥对所述交易信息进行加密的过程中包括:
步骤S21,采用所述终端主密钥对所述字符串集合中的所有字符串进行解密,获取解密后的所述字符串集合,并根据所述加密因子对所述字符串集合进行加密,获取工作密钥并输出;
步骤S22,采用所述工作密钥对所述交易信息进行加密。
优选的,所述加密因子中包括根据随机数形成的分散因子;
所述步骤S5包括:
步骤S51,获取所述第一字符串,并采用所述本地主密钥对所述第一字符串解密获取所述终端主密钥;
步骤S52,采用所述终端主密钥对所述字符串集合中的所有字符串进行解密,获取解密结果后根据所述分散因子进行加密,获取所述工作密钥并输出;
步骤S53,采用所述工作密钥对所述交易信息进行解密。
优选的,所述加密因子中包括根据随机数形成的分散因子;
所述字符串集合中包括多个第二字符串;
采用所述加密因子对所述字符串集合进行加密,获取工作密钥并输出的过程中包括:
步骤S61,采用所述终端主密钥分别对所述第二字符串进行解密,截取解密后的预设的数据序号区间内的数据作为源数据;
步骤S62,采用所述分散因子对所述源数据进行DES加密,生成加密后的所述源数据,并作为所述工作密钥输出。
优选的,当所述第二字符串为数据字符串时;
在执行所述步骤S53之后,执行步骤S54;
所述步骤S54,截取解密后的预设的数据序号区间内的所述交易信息,随后输出所述交易信息。
优选的,当所述第二字符串为PIN字符串时;
在执行所述步骤S53之后,执行步骤S531;
所述步骤S54,去除所述交易信息中的空格,随后输出所述交易信息。
优选的,当所述第二字符串为MAC字符串时;
在执行所述步骤S53之后,执行步骤S54;
所述步骤S54,截取解密后的预设的第一数据序号区间内的所述交易信息,随后以预设的第二数据序号区间截取所述交易信息,将截取后的所述交易信息输出。
优选的,所述加密因子中包括根据交易时间生成的动态因子;
所述字符串集合中还包括一第三字符串;
在执行所述步骤S62之后,执行步骤S63;
所述步骤S63,采用所述动态因子对所述工作密钥进行加密,并将加密后的所述工作密钥作为所述工作密钥输出。
优选的,所述步骤S53中包括:
步骤S531截取所述交易信息中的16倍数的数据,并将其作为第一解密源,将余数保留不加密作为第二解密源;
步骤S532,采用所述工作密钥对所述第一解密源进行解密得到解密结果,将所述解密结果和依次排列,并将所述排列结果中的字段分隔符进行替换,将替换结果作为解密后的所述交易信息并输出。
一种刷卡器系统,应用于上述任何一项所述的一种刷卡器的密钥管理方法,其特征在于,包括:
多个商户,每个商户均设置一对应的商户号;
多个刷卡终端,每个所述刷卡终端中预设终端主密钥和多个字符串,所有所述字符串和所述终端主密钥形成一条终端记录,所述刷卡终端与所述商户分别对应关联;
多个客户端;
所述刷卡终端和所述客户端一一对应,所述客户端获取所述商户号并保存;
一服务端,设置一存储模块,所述存储模块用于存储一本地主密钥和所述终端表;
当所述客户端与所述刷卡终端构建远程连接时,
所述客户端生成一加密因子发送至所述刷卡终端,所述刷卡终端获取交易信息,并根据所述终端主密钥和所述加密因子生成工作密钥,采用所述工作密钥对所述交易信息进行加密后发送至所述客户端;
所述客户端获取所述交易信息后,将对应的所述商户号加入至所述交易信息,随后将所述加密因子和所述交易信息发送至所述服务端,所述服务端获取所述交易信息,并根据所述商户号查询所述终端在所述终端表中的对应的所述终端记录,提取所述终端记录中对应的所有所述字符串,并采用所述本地主密钥和所述加密因子生成所述工作密钥,采用所述工作密钥对所述交易信息进行解密,获取解密后的所述卡号信息。
上述技术方案的有益效果是:
(1)使用本地主密钥和终端主密钥生成工作密钥,再通过工作密钥对交易信息进行加密和解密能够提高交易信息的安全性;
(2)便于工程师能够高效快速的接入刷卡终端进行联调,降低开发难度,节省工作时间,提高工作效率。
附图说明
图1为本发明的一种较优实施例中的总流程示意图;
图2为本发明的一种较优实施例中的密钥体系示意图;
图3为本发明的一种较优实施例中的步骤S2流程示意图;
图4为本发明的一种较优实施例中的步骤S5流程示意图;
图5为本发明的一种较优实施例中的步骤S6流程示意图;
图6为本发明的一种较优实施例中的步骤S54流程示意图;
图7为本发明的一种较优实施例中的步骤S63流程示意图;
图8为本发明的一种较优实施例中的步骤S53流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
一种刷卡器的密钥管理方法,应用于刷卡器系统,如图1和图2所示,刷卡器系统中包括多个刷卡终端、多个客户端和一服务端,每个刷卡终端分别对应一商户,每个商户均设置一对应的商户号;
刷卡终端和客户端一一对应,客户端获取所述商户号并保存;
每个刷卡终端中预设终端主密钥02和多个字符串,所有字符串和终端主密钥02形成一条终端记录;
所有刷卡终端对应的终端记录组成一终端表;
服务端中存储一本地主密钥01和终端表;
密钥管理方法,包括:
步骤S1,客户端与刷卡终端构建数据连接并生成一加密因子发送至刷卡终端;
步骤S2,刷卡终端获取交易信息,并根据终端主密钥02和加密因子生成工作密钥07,采用工作密钥07对交易信息进行加密后发送至客户端;
步骤S3,客户端获取交易信息,并将对应的商户号加入至交易信息,随后将加密因子和交易信息发送至服务端;
步骤S4,服务端获取交易信息,并根据商户号查询终端在终端表中的对应的终端记录;
步骤S5,服务端提取终端记录中对应的所有字符串,并根据本地主密钥01和加密因子生成相同的工作密钥07,采用工作密钥07对交易信息进行解密,获取解密后的交易信息。
进一步地,在刷卡终端生成工作密钥07的过程中通过终端主密钥02对字符串进行运算生成工作密钥07,在服务端生成工作密钥07的过程中,首先提取移动终端表中的字符串再根据终端主密钥02对字符串进行解密生成工作密钥07。由此,通过利用本地主密钥01、终端主密钥02和工作密钥07三种这不同密钥,相当于构建了三层密钥体系,如图2所示,通过这三层密钥体系对不仅提高了交易信息的加密/解密过程中的安全性,还提高了密钥运算生成过程中的安全性。
进一步地,交易信息中包括不同类型的信息,比如交易时敏感性和隐私性较高的卡号信息、金额信息、密码信息和磁道信息,刷卡终端中设置了多个字符串,服务端通过终端表获取字符串,通过不同的字符串生成不同的工作密钥07,对交易信息中包括的不同类型的信息均能进行加密,提高了加密/解密过程中的完整性。
进一步地,客户端与刷卡终端建立数据连接时,将加密因子发送至刷卡终端,刷卡终端利用加密因子生成工作密钥07。
相应的,客户端接收到交易信息后,将加密因子发送至服务端,由于每次交易时的加密因子均是不同的,加密因子具有随机性,因此提高数据传输过程的安全性。
进一步地,又因为在一个交易信息的传输周期内的加密因子是始终保持一致的,客户端发送给刷卡终端的加密因子和发送给服务端的加密因子是相同的,因此能够确保服务端在接收到刷卡终端加密后的交易信息后,能够利用加密因子进行解密,从而保证数据能够完整的传输和验证。
此外,通过密钥管理方法也便于工程师能够高效快速的接入刷卡终端进行联调,降低开发难度,节省工作时间,提高工作效率。
在本发明的一种较优实施例中,字符串中包括一第一字符串以及一字符串集合,字符串集合中包括除去第一字符串的多类字符串;
第一字符串为加密后的终端主密钥02;
步骤S2中刷卡终端采用终端主密钥02和加密因子生成工作密钥07,采用工作密钥07对交易信息进行加密的过程中,如图3所示,包括:
步骤S21,采用终端主密钥02对字符串集合中的所有字符串进行解密,获取解密后的字符串集合,并根据加密因子对字符串集合进行加密,获取工作密钥07并输出;
步骤S22,采用工作密钥07对交易信息进行加密。
在本发明的一种较优实施例中,加密因子中包括根据随机数形成的分散因子;
步骤S5,如图4所示,包括:
步骤S51,获取第一字符串,并采用本地主密钥01对第一字符串解密获取终端主密钥02;
步骤S52,采用终端主密钥02对字符串集合中的所有字符串进行解密,获取解密结果后根据分散因子进行加密,获取工作密钥07并输出;
步骤S53,采用工作密钥07对交易信息进行解密。
具体地,刷卡终端中具有对终端主密钥02加密后生成的第一字符串,因此,在终端记录中存储的也是第一字符串,相应的,服务端从终端记录中获取的也是第一字符串。
又因为能够对第一字符串进行解密的是本地主密钥01,而本地主密钥01是由刷卡终端的厂商提供的,预先存储在存储模块中。因此移动终端在根据终端主密钥02生成工作密钥07时,首先需要具有本地主密钥01,才能进行解密获取终端主密钥02。
由此,第一字符串设置为加密后的终端主密钥02,能够提高交易信息的传输过程中的安全性。
在本发明的一种较优实施例中,加密因子中包括根据随机数形成的分散因子;
字符串集合中包括多个第二字符串;
采用加密因子对字符串集合进行加密,获取工作密钥07并输出的过程中,如图5所示,包括:
步骤S61,采用终端主密钥02分别对第二字符串进行解密,截取解密后的预设的数据序号区间内的数据作为源数据;
步骤S62,采用分散因子对源数据进行DES加密,生成加密后的源数据,并作为工作密钥07输出。
在本发明的一种较优实施例中,当第二字符串为数据字符串时;
在执行步骤S53之后,执行步骤S54,如图6所示;
步骤S54,截取解密后的预设的数据序号区间内的交易信息,随后输出交易信息。
具体地,当第二字符串为数据字符串时,刷卡终端和服务端使用终端主密钥02根据数据字符串生成工作密钥07的过程中,具体包括步骤S61,使用终端主密钥02对数据字符串进行3DES解密运算,截取解密运算结果中位于第4号-第19号区间内的数据作为源数据,步骤S62,使用分散因子对源数据进行DES加密运算,将加密运算结果作为工作密钥07中的数据加密密钥03输出。
进一步地,当刷卡终端获取数据加密密钥03后,刷卡终端采用数据加密密钥03对交易信息中的金额信息进行加密,先对金额信息执行左填充,不足10位时左边补零,随后对金额信息执行右填充,不足32位时右边补零,最后采用数据加密密钥03对补充后的金额信息进行DES加密运算,将运算结果作为加密后的金额信息,包括在交易信息中输出。
进一步地,当服务端获取数据加密密钥03后,执行步骤S54,使用数据加密密钥03对从移动端获取的交易信息中的金额信息进行DES解密运算,并截取运算结果中的前16为长度的数据,也就是金额信息。
在本发明的一种较优实施例中,当第二字符串为PIN字符串时;
在执行步骤S53之后,执行步骤S54;
步骤S54,去除交易信息中的空格,随后输出交易信息。
具体地,当第二字符串为PIN字符串时,刷卡终端和服务端使用终端主密钥02根据PIN字符串生成工作密钥07的过程中,具体包括步骤S61,使用终端主密钥02对PIN字符串进行3DES解密运算,截取解密运算结果中位于第4号-第19号区间内的数据作为源数据,步骤S62,使用分散因子对源数据进行DES加密运算,将加密运算结果作为工作密钥07中的PIN密钥04输出。
进一步地,当刷卡终端获取PIN密钥04后,刷卡终端采用PIN密钥04对交易信息中的卡号信息进行加密,先对卡号信息执行右填充,不足24位时右补空格(\u0000),随后采用PIN密钥04对填充后的卡号信息进行DES加密运算,将运算结果作为加密后的卡号信息,包括在交易信息中输出。
进一步地,当服务端获取PIN密钥04后,执行步骤S54,使用PIN密钥04对从移动端获取的交易信息的卡号信息进行DES解密运算,并相应的去除空格,得到卡号信息。
在本发明的一种较优实施例中,当第二字符串为MAC字符串时;
在执行步骤S53之后,执行步骤S54;
步骤S54,截取解密后的预设的第一数据序号区间内的交易信息,随后以预设的第二数据序号区间截取交易信息,将截取后的交易信息输出。
具体地,当第二字符串为MAC字符串时,刷卡终端和服务端使用终端主密钥02根据MAC字符串生成工作密钥07的过程中,具体包括步骤S61,使用终端主密钥02对MAC字符串进行3DES解密运算,截取解密运算结果中位于第4号-第19号的字节作为源数据,步骤S62,使用分散因子对源数据进行DES加密运算,将加密运算结果作为工作密钥07中的MAC密钥05输出。
进一步地,当刷卡终端获取MAC密钥05后,执行步骤S54,刷卡终端采用MAC密钥05对交易信息中的密码信息进行加密,先对密码信息左填充06,表示长度,随后对密码信息右填充8位F,最后采用MAC密钥05对填充后的密码信息进行DES加密运算,将运算结果作为加密后的密码信息,包括在交易信息中输出。
进一步地,当服务端获取MAC密钥05后,使用MAC密钥05对从移动端获取的交易信息中的密码信息进行DES解密运算,先截取运算结果中的前两位计算长度,随后再截取指定长度的数据,也就是密码信息。
在本发明的一种较优实施例中,加密因子中包括根据交易时间生成的动态因子;
字符串集合中还包括一第三字符串;
在执行步骤S62之后,执行步骤S63,如图7所示;
步骤S63,采用动态因子对工作密钥07进行加密,并将加密后的工作密钥07作为工作密钥07输出。
在本发明的一种较优实施例中,步骤S53中包括,如图8所示:
步骤S531,截取交易信息中的16倍数的数据,并将其作为第一解密源,将余数保留不加密作为第二解密源;
步骤S532,采用工作密钥07对第一解密源进行解密得到解密结果,将解密结果和依次排列,并将排列结果中的字段分隔符进行替换,将替换结果作为解密后的交易信息并输出。
具体地,字符串集合中还包括第三子字符串,交易信息中还包括磁道信息,相应的根据第三字符串生成工作密钥07能够对磁道信息进行加密和解密。
具体地,刷卡终端和服务端使用终端主密钥02根据第三字符串生成工作密钥07的过程中,具体包括步骤S61,使用终端主密钥02对第三字符串进行3DES解密运算,截取解密运算结果中位于第4号-第19号的字节作为源数据,步骤S62,使用分散因子对源数据进行DES加密运算,步骤S63使用动态因子对运算结果进行DES加密,将最后得到的运算结果作为工作密钥07中的磁道加密密钥06输出。
进一步地,当刷卡终端获取磁道加密密钥06后,刷卡终端采用磁道加密密钥06对交易信息中的磁道信息进行加密,先截取磁道信息16倍数的数据作为加密源S1,将余数保留不加密作为D1,随后将S1中的字段分隔符“=”替换成“0”记为S2,采用磁道加密密钥06对S2进行加密得到加密结果S3,将磁道信息、加密结果S2和D1依次排列并对排列结果进行右填充,不足40位字节数据时,填充字符“F”将填充结果作为加密后的磁道信息,包括在交易信息中输出。
进一步地,当服务端获取磁道加密密钥06后,步骤S531,截取磁道信息的前两位计算长度,随后以指定长度截取磁道信息,然后截取磁道信息16倍数的数据作为解密源S1,将余数保留不加密作为D1,随后执行步骤S532,采用磁道加密密钥06对S1进行解密得到解密结果S2,将解密结果S2和D1依次排列,并将排列结果中的字段分隔符“D”替换成“=”,得到磁道信息。
由此可见,刷卡终端和服务端中不同的字符串生成工作密钥07的具体方式均不相同,以及根据工作密钥07对信息进行加密的方式、对信息进行解密的方式也不相同。通过上述方法能够最大程度地保障数据安全。
一种刷卡器系统,应用于上述任何一项的一种刷卡器的密钥管理方法,其特征在于,包括:
多个商户,每个商户均设置一对应的商户号;
多个刷卡终端,每个刷卡终端中预设终端主密钥02和多个字符串,所有字符串和终端主密钥02形成一条终端记录,刷卡终端与商户分别对应关联;
多个客户端;
所述刷卡终端和所述客户端一一对应,所述客户端获取所述商户号并保存;
一服务端,设置一存储模块,存储模块用于存储一本地主密钥01和终端表;
当客户端与刷卡终端构建远程连接时,
客户端生成一加密因子发送至刷卡终端,刷卡终端获取交易信息,并根据终端主密钥02和加密因子生成工作密钥07,采用工作密钥07对交易信息进行加密后发送至客户端;
客户端获取交易信息后,将对应的商户号加入至交易信息,随后将加密因子和交易信息发送至服务端,服务端获取交易信息,并根据商户号查询终端在终端表中的对应的终端记录,提取终端记录中对应的所有字符串,并采用本地主密钥01和加密因子生成工作密钥07,采用工作密钥07对交易信息进行解密,获取解密后的卡号信息。
具体地,客户端生成一加密因子,刷卡终端采用终端主密钥02和加密因子生成工作密钥07,对交易信息进行加密。
服务端提取终端记录中对应的所有字符串,并采用本地主密钥01和加密因子生成工作密钥07,采用工作密钥07对交易信息进行解密,获取解密后的卡号信息。
上述系统能够使用本地主密钥01和终端主密钥02生成工作密钥07,再通过工作密钥07对交易信息进行加密和解密能够提高交易信息的安全性。还能便于工程师能够高效快速的接入刷卡终端进行联调,降低开发难度,节省工作时间,提高工作效率。
以上仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。
Claims (8)
1.一种刷卡器的密钥管理方法,应用于刷卡器系统,其特征在于,所述刷卡器系统中包括多个刷卡终端、多个客户端和一服务端,每个所述刷卡终端分别对应一商户,每个所述商户均设置一对应的商户号;
所述刷卡终端和所述客户端一一对应,所述客户端获取所述商户号并保存;
每个所述刷卡终端中预设终端主密钥和多个字符串,所有所述字符串和所述终端主密钥形成一条终端记录;
所有所述刷卡终端对应的所述终端记录组成一终端表;
所述服务端中存储一本地主密钥和所述终端表;
所述密钥管理方法包括:
步骤S1,所述客户端与所述刷卡终端构建数据连接并生成一加密因子发送至所述刷卡终端;
步骤S2,所述刷卡终端获取交易信息,并根据所述终端主密钥和所述加密因子生成工作密钥,采用所述工作密钥对所述交易信息后发送至所述客户端;
步骤S3,所述客户端获取所述交易信息,并将对应的所述商户号加入至所述交易信息,随后将所述加密因子和所述交易信息发送至所述服务端;
步骤S4,所述服务端获取所述交易信息,并根据所述商户号查询所述终端在所述终端表中的对应的所述终端记录;
步骤S5,所述服务端提取所述终端记录中对应的所有所述字符串,并根据所述本地主密钥和所述加密因子生成相同的所述工作密钥,采用所述工作密钥对所述交易信息进行解密,获取解密后的所述交易信息;
所述字符串中包括一第一字符串以及一字符串集合,所述字符串集合中包括除去所述第一字符串的多类字符串;
所述第一字符串为加密后的所述终端主密钥;
所述步骤S2中所述刷卡终端采用所述终端主密钥和所述加密因子生成工作密钥,采用所述工作密钥对所述交易信息进行加密的过程中包括:
步骤S21,采用所述终端主密钥对所述字符串集合中的所有字符串进行解密,获取解密后的所述字符串集合,并根据所述加密因子对所述字符串集合进行加密,获取工作密钥并输出;
步骤S22,采用所述工作密钥对所述交易信息进行加密;
所述加密因子中包括根据随机数形成的分散因子;
所述步骤S5包括:
步骤S51,获取所述第一字符串,并采用所述本地主密钥对所述第一字符串解密获取所述终端主密钥;
步骤S52,采用所述终端主密钥对所述字符串集合中的所有字符串进行解密,获取解密结果后根据所述分散因子进行加密,获取所述工作密钥并输出;
步骤S53,采用所述工作密钥对所述交易信息进行解密。
2.根据权利要求1所述的一种刷卡器的密钥管理方法,其特征在于,所述加密因子中包括根据随机数形成的分散因子;
所述字符串集合中包括多个第二字符串;
采用所述加密因子对所述字符串集合进行加密,获取工作密钥并输出的过程中包括:
步骤S61,采用所述终端主密钥分别对所述第二字符串进行解密,截取解密后的预设的数据序号区间内的数据作为源数据;
步骤S62,采用所述分散因子对所述源数据进行DES加密,生成加密后的所述源数据,并作为所述工作密钥输出。
3.根据权利要求2所述的一种刷卡器的密钥管理方法,其特征在于,当所述第二字符串为数据字符串时;
在执行所述步骤S53之后,执行步骤S54;
所述步骤S54,截取解密后的预设的数据序号区间内的所述交易信息,随后输出所述交易信息。
4.根据权利要求2所述的一种刷卡器的密钥管理方法,其特征在于,当所述第二字符串为PIN字符串时;
在执行所述步骤S53之后,执行步骤S54;
所述步骤S54,去除所述交易信息中的空格,随后输出所述交易信息。
5.根据权利要求2所述的一种刷卡器的密钥管理方法,其特征在于,当所述第二字符串为MAC字符串时;
在执行所述步骤S53之后,执行步骤S54;
所述步骤S54,截取解密后的预设的第一数据序号区间内的所述交易信息,随后以预设的第二数据序号区间截取所述交易信息,将截取后的所述交易信息输出。
6.根据权利要求2所述的一种刷卡器的密钥管理方法,其特征在于,所述加密因子中包括根据交易时间生成的动态因子;
所述字符串集合中还包括一第三字符串;
在执行所述步骤S62之后,执行步骤S63;
所述步骤S63,采用所述动态因子对所述工作密钥进行加密,并将加密后的所述工作密钥作为所述工作密钥输出。
7.根据权利要求6所述的一种刷卡器的密钥管理方法,其特征在于,所述步骤S53中包括:
步骤S531,截取所述交易信息中的16倍数的数据,并将其作为第一解密源,将余数保留不加密作为第二解密源;
步骤S532,采用所述工作密钥对所述第一解密源进行解密得到解密结果,将所述解密结果和依次排列,并将所述排列结果中的字段分隔符进行替换,将替换结果作为解密后的所述交易信息并输出。
8.一种刷卡器系统,应用于上述权利要求1-7中任何一项所述的一种刷卡器的密钥管理方法,其特征在于,包括:
多个商户,每个商户均设置一对应的商户号;
多个刷卡终端,每个所述刷卡终端中预设终端主密钥和多个字符串,所有所述字符串和所述终端主密钥形成一条终端记录,所述刷卡终端与所述商户分别对应关联;
多个客户端;
所述刷卡终端和所述客户端一一对应,所述客户端获取所述商户号并保存;
一服务端,设置一存储模块,所述存储模块用于存储一本地主密钥和所述终端表;
当所述客户端与所述刷卡终端构建远程连接时,
所述客户端生成一加密因子发送至所述刷卡终端,所述刷卡终端获取交易信息,并根据所述终端主密钥和所述加密因子生成工作密钥,采用所述工作密钥对所述交易信息进行加密后发送至所述客户端;
所述客户端获取所述交易信息后,将对应的所述商户号加入至所述交易信息,随后将所述加密因子和所述交易信息发送至所述服务端,所述服务端获取所述交易信息,并根据所述商户号查询所述终端在所述终端表中的对应的所述终端记录,提取所述终端记录中对应的所有所述字符串,并采用所述本地主密钥和所述加密因子生成所述工作密钥,采用所述工作密钥对所述交易信息进行解密,获取解密后的卡号信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010359140.3A CN111565104B (zh) | 2020-04-29 | 2020-04-29 | 一种刷卡器的密钥管理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010359140.3A CN111565104B (zh) | 2020-04-29 | 2020-04-29 | 一种刷卡器的密钥管理方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111565104A CN111565104A (zh) | 2020-08-21 |
CN111565104B true CN111565104B (zh) | 2023-07-04 |
Family
ID=72073286
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010359140.3A Active CN111565104B (zh) | 2020-04-29 | 2020-04-29 | 一种刷卡器的密钥管理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111565104B (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5371797A (en) * | 1993-01-19 | 1994-12-06 | Bellsouth Corporation | Secure electronic funds transfer from telephone or unsecured terminal |
US6226618B1 (en) * | 1998-08-13 | 2001-05-01 | International Business Machines Corporation | Electronic content delivery system |
JP2002271312A (ja) * | 2001-03-14 | 2002-09-20 | Hitachi Ltd | 公開鍵管理方法 |
CN104506509B (zh) * | 2014-12-15 | 2018-06-19 | 广东汇卡商务服务有限公司 | 一种基于多功能安全认证终端的认证方法 |
CN106327723B (zh) * | 2016-08-29 | 2018-07-10 | 福建新大陆支付技术有限公司 | 一种基于智能平台的mPOS交易系统 |
CN107093074A (zh) * | 2017-04-26 | 2017-08-25 | 广州地铁设计研究院有限公司 | 一种城市轨道交通金融ic卡的检票支付系统及方法 |
CN108460597B (zh) * | 2018-03-23 | 2022-03-15 | 银联商务股份有限公司 | 一种密钥管理系统及方法 |
-
2020
- 2020-04-29 CN CN202010359140.3A patent/CN111565104B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111565104A (zh) | 2020-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112929172B (zh) | 基于密钥库动态加密数据的系统、方法及装置 | |
US10380361B2 (en) | Secure transaction method from a non-secure terminal | |
CN105245505A (zh) | 数据发送方法及装置、数据接收方法及装置、收发系统 | |
CN104579689B (zh) | 一种软密钥系统及实现方法 | |
KR20060051957A (ko) | 암호화 데이터 배포 방법, 암호화 장치, 복호화 장치,암호화 프로그램 및 복호화 프로그램 | |
CN106101150B (zh) | 加密算法的实现方法和系统 | |
JP5843261B2 (ja) | 文字列がオートマトンに受理されるか否かを認証するシステム | |
CN105208028A (zh) | 一种数据传输方法和相关装置及设备 | |
CN108199847A (zh) | 数字安全处理方法、计算机设备及存储介质 | |
CN112866227A (zh) | 一种文件授权保护方法和系统 | |
CN112311536B (zh) | 密钥分级管理方法及系统 | |
CN116455572B (zh) | 数据加密方法、装置及设备 | |
CN111585998B (zh) | 一种审计数据安全传输方法和系统 | |
CN112528309A (zh) | 一种数据存储加密和解密的方法及其装置 | |
CN111565104B (zh) | 一种刷卡器的密钥管理方法及系统 | |
CN114866317B (zh) | 多方的数据安全计算方法、装置、电子设备和存储介质 | |
CN113645183B (zh) | 数据加密传输方法、系统、计算机设备及存储介质 | |
EP3902197A1 (en) | Confidential data management device, program and recording medium | |
CN110569678B (zh) | 一种安全芯片个人化方法、终端及服务器 | |
CN112580061B (zh) | 一种量子加解密应用接口的调用方法及相关设备 | |
CN106972928A (zh) | 一种堡垒机私钥管理方法、装置及系统 | |
KR100737173B1 (ko) | 일회용 암호 발생기 및 일회용 암호 발생기를 이용한 인증장치 | |
CN107241185A (zh) | 数据传输与接收方法及传输与接收装置 | |
US20240305458A1 (en) | Systems and Methods for Non-Custodial Key Storage and Digital Signatures | |
JP7143841B2 (ja) | 認証システム、認証装置、端末装置、認証方法、およびプログラム |
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 |