CN112543100B - 一种动态密钥生成方法和系统 - Google Patents

一种动态密钥生成方法和系统 Download PDF

Info

Publication number
CN112543100B
CN112543100B CN202011356965.6A CN202011356965A CN112543100B CN 112543100 B CN112543100 B CN 112543100B CN 202011356965 A CN202011356965 A CN 202011356965A CN 112543100 B CN112543100 B CN 112543100B
Authority
CN
China
Prior art keywords
key
server
client
protocol
key generation
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
Application number
CN202011356965.6A
Other languages
English (en)
Other versions
CN112543100A (zh
Inventor
汤之雄
沈玺
孔丽
张怡
肖彦均
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Unionpay Co Ltd
Original Assignee
China Unionpay Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to CN202011356965.6A priority Critical patent/CN112543100B/zh
Publication of CN112543100A publication Critical patent/CN112543100A/zh
Priority to TW110131571A priority patent/TWI787974B/zh
Priority to PCT/CN2021/117514 priority patent/WO2022110968A1/zh
Application granted granted Critical
Publication of CN112543100B publication Critical patent/CN112543100B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Circuits Of Receivers In General (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供了一种动态密钥生成方法和系统,该方法包括:当检测到预设风险事件时,基于预设风险事件的风险程度对服务端当前持有的第一密钥生成协议进行动态更新,获得第二密钥生成协议;服务端将动态更新后的第二密钥生成协议下发至客户端,以使客户端基于第二密钥生成协议与服务端进行密钥交换。利用上述方法,能够提高攻击者破解协议的成本,提供密钥安全性。

Description

一种动态密钥生成方法和系统
技术领域
本发明属于加密通讯领域,具体涉及一种动态密钥生成方法和系统。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
随着移动互联网的发展,APP呈现出爆炸式的增长,与此同时,互联网黑灰产业也随之诞生发展,规模达到了千亿元。通过抓包、逆向分析等方式获取到客户端跟服务端通信的请求接口以及参数,直接伪造接口协议和参数来实现自动化操作,客户端与服务端之间的安全通讯受到了挑战。
传统技术中,出于对通讯安全的要求,市面上应用软件一般采取开源协议TLS握手方案。开源协议TLS握手方案能协助客户端与服务端选择连接时所使用的加密算法、MAC算法及相关密钥。在传送应用程序的数据前,双方使用握手协议来完成上述事项。
然而,在上述开源协议TLS握手方案中,客户端需要预置一些公开的加密算法以及散列方法,因此客户端密钥生成算法固定不变,攻击者可以通过逆向破解客户端逻辑的获取这些固定的密钥生成算法,从而破解客户端与服务端端之间的加密通讯,对通讯安全造成不利影响。
发明内容
针对上述现有技术中存在的问题,提出了一种动态密钥生成方法和系统,利用这种方法和系统,能够解决上述问题。
本发明提供了以下方案。
第一方面,提供一种动态密钥生成方法,包括:当检测到预设风险事件时,基于预设风险事件的风险程度对服务端当前持有的第一密钥生成协议进行动态更新,获得第二密钥生成协议;服务端将动态更新后的第二密钥生成协议下发至客户端,以使客户端基于第二密钥生成协议与服务端进行密钥交换。
在一些实施方式中,服务端将动态更新后的第二密钥生成协议下发至客户端,方法还包括:服务端接收客户端上送的密钥交换请求,密钥交换请求包括客户端当前持有的密钥生成协议的版本号;当服务端检测到密钥交换请求携带的版本号与第二密钥生成协议的版本号不一致时,服务端将动态更新后的第二密钥生成协议下发至客户端。
在一些实施方式中,服务端基于预设风险事件的风险程度对当前持有的第一密钥生成协议进行动态更新,还包括:
当检测到预设风险事件时,服务端使当前持有的第一密钥生成协议失效,并根据预设风险事件的风险程度生成对应安全级别的第二密钥生成协议;
其中,第二密钥生成协议包括预置的密钥算子层和协议主体,协议主体包括协议逻辑以及协议数据,协议逻辑用于指示第二密钥生成协议采用的一个或多个目标密钥算子的组成规则,协议数据用于指示一个或多个目标密钥算子的算子参数的。
在一些实施方式中,密钥算子层包含多个密钥算子且预置于服务端和客户端,并且密钥算子层中包含的多个密钥算子预先被划分为多个安全等级;以及,第二密钥生成协议的安全级别由采用的一个或多个目标密钥算子的安全等级确定。
在一些实施方式中,密钥算子层包含:采用安全加密算法的一种或多种密钥算子,和/或采用自定义变化算法的一种或多种密钥算子,和/或采用摘要算法的一种或多种密钥算子。
在一些实施方式中,方法还包括:采用白盒加密技术保护算子参数的安全性。
在一些实施方式中,预设风险事件至少包括风险程度不同的第一预设风险事件、第二预设风险事件和第三预设风险事件;其中,第一预设风险事件用于指示连接至服务端的不可信客户端的数量占比超过预设阈值;第二预设风险事件用于指示接收外部发来的协议更新指令;第三预设风险事件用于指示服务端当前持有的第一密钥生成协议的工作时间超过预设安全时长。
在一些实施方式中,服务端连接至多个客户端,且客户端上送的密钥交换请求还包括设备指纹信息;方法还包括:服务端收集每个客户端上送的设备指纹信息,根据设备指纹信息判断每个客户端是否为不可信客户端,并周期性判断连接至服务端的不可信客户端的数量占比是否超过预设阈值,其中,若超过预设阈值,则检测到第一预设风险事件。
在一些实施方式中,预设风险事件还包括风险程度大于第一预设风险事件的第四预设风险事件;其中,第四预设风险事件用于指示服务端重复检测到多次第一预设风险事件。
在一些实施方式中,服务端将动态更新后的第二密钥生成协议下发至客户端,还包括:服务端将第二密钥生成协议的版本号下发至客户端;客户端向服务端发起协议更新请求,协议更新请求携带第二密钥生成协议的版本号;服务端向客户端下发第二密钥生成协议的协议逻辑和协议数据;客户端基于预置的密钥算子层、协议逻辑和协议数据,将第二密钥生成协议落地,并重新基于第二密钥生成协议向服务端发起密钥交换请求。
在一些实施方式中,服务端通过热更新方式向客户端下发第二密钥生成协议的协议逻辑。
在一些实施方式中,客户端基于第二密钥生成协议与服务端进行密钥交换,还包括:客户端向服务端发送密钥交换请求,密钥交换请求包括客户端当前持有的第二密钥生成协议的版本号;当服务端检测到密钥交换请求中携带的版本号与服务端当前持有的第二密钥生成协议的版本号一致时,生成服务端随机数,并将服务端随机数发送至客户端;客户端根据服务端随机数生成预主密钥,将预主密钥发送至服务端;客户端和服务端各自利用第二密钥生成协议、预主密钥、客户端随机数以及服务端随机数生成工作密钥;客户端和服务端通过交换各自生成的工作密钥进行加密通讯。
在一些实施方式中,方法还包括:客户端根据服务端随机数生成预主密钥之后,利用服务端下送的公钥对预主密钥进行加密,并将加密的预主密钥发送至服务端;服务端利用私钥对加密的预主密钥进行解密,得到解密的预主密钥。
第二方面,提供一种动态密钥生成系统,系统包括:服务端和客户端;其中,服务端用于执行:当检测到预设风险事件时,基于预设风险事件的风险程度对服务端当前持有的第一密钥生成协议进行动态更新,获得第二密钥生成协议;将动态更新后的第二密钥生成协议下发至客户端;客户端用于执行:基于第二密钥生成协议与服务端进行密钥交换。
在一些实施方式中,服务端还用于:接收客户端上送的密钥交换请求,密钥交换请求包括客户端当前持有的密钥生成协议的版本号;当检测到密钥交换请求携带的版本号与第二密钥生成协议的版本号不一致时,将动态更新后的第二密钥生成协议下发至客户端。
在一些实施方式中,服务端还用于:当检测到预设风险事件时,使当前持有的第一密钥生成协议失效,并根据预设风险事件的风险程度生成对应安全级别的第二密钥生成协议;其中,第二密钥生成协议包括预置的密钥算子层和协议主体,协议主体包括协议逻辑以及协议数据,协议逻辑用于指示第二密钥生成协议采用的一个或多个目标密钥算子的组成规则,协议数据用于指示一个或多个目标密钥算子的算子参数的。
在一些实施方式中,密钥算子层包含多个密钥算子且预置于服务端和客户端,并且密钥算子层中包含的多个密钥算子预先被划分为多个安全等级;以及,第二密钥生成协议的安全级别由采用的一个或多个目标密钥算子的安全等级确定。
在一些实施方式中,密钥算子层包含:采用安全加密算法的一种或多种密钥算子,和/或采用自定义变化算法的一种或多种密钥算子,和/或采用摘要算法的一种或多种密钥算子。
在一些实施方式中,系统还用于:采用白盒加密技术保护算子参数的安全性。
在一些实施方式中,预设风险事件至少包括风险程度不同的第一预设风险事件、第二预设风险事件和第三预设风险事件;其中,第一预设风险事件用于指示连接至服务端的不可信客户端的数量占比超过预设阈值;第二预设风险事件用于指示接收外部发来的协议更新指令;第三预设风险事件用于指示服务端当前持有的第一密钥生成协议的工作时间超过预设安全时长。
在一些实施方式中,服务端连接至多个客户端,且客户端上送的密钥交换请求还包括设备指纹信息;服务端还用于:收集每个客户端上送的设备指纹信息,根据设备指纹信息判断每个客户端是否为不可信客户端,并周期性判断连接至服务端的不可信客户端的数量占比是否超过预设阈值,其中,若超过预设阈值,则检测到第一预设风险事件。
在一些实施方式中,预设风险事件还包括风险程度大于第一预设风险事件的第四预设风险事件;其中,第四预设风险事件用于指示服务端重复检测到多次第一预设风险事件。
在一些实施方式中,服务端还用于:当检测到密钥交换请求携带的版本号与第二密钥生成协议的版本号不一致时,将第二密钥生成协议的版本号下发至客户端;客户端还用于:向服务端发起协议更新请求,协议更新请求携带第二密钥生成协议的版本号;服务端还用于:向客户端下发第二密钥生成协议的协议逻辑和协议数据;客户端还用于:基于预置的密钥算子层、协议逻辑和协议数据,将第二密钥生成协议落地,并重新基于第二密钥生成协议向服务端发起密钥交换请求。
在一些实施方式中,服务端通过热更新方式向客户端下发第二密钥生成协议的协议逻辑。
在一些实施方式中,客户端还用于:当基于第二密钥生成协议进行动态更新之后,向服务端发送密钥交换请求,密钥交换请求包括客户端当前持有的第二密钥生成协议的版本号;服务端还用于:当检测到密钥交换请求中携带的版本号与服务端当前持有的第二密钥生成协议的版本号一致时,生成服务端随机数,并将服务端随机数发送至客户端;客户端还用于:根据服务端随机数生成预主密钥,将预主密钥发送至服务端;客户端和服务端还用于:各自利用第二密钥生成协议、预主密钥、客户端随机数以及服务端随机数生成工作密钥,通过交换各自生成的工作密钥进行加密通讯。
在一些实施方式中,客户端还用于:根据服务端随机数生成预主密钥之后,利用服务端下送的公钥对预主密钥进行加密,并将加密的预主密钥发送至服务端;服务端还用于:利用私钥对加密的预主密钥进行解密,得到解密的预主密钥。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:本实施例中,服务端可以基于预设风控机制而动态更新服务端持有的密钥生成协议并下发至客户端,客户端根据服务端下发的该动态更新的密钥生成协议与服务端进行密钥交换,从而提高攻击者破解协议的成本,提供密钥安全性。
应当理解,上述说明仅是本发明技术方案的概述,以便能够更清楚地了解本发明的技术手段,从而可依照说明书的内容予以实施。为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举例说明本发明的具体实施方式。
附图说明
通过阅读下文的示例性实施例的详细描述,本领域普通技术人员将明白本文所述的优点和益处以及其他优点和益处。附图仅用于示出示例性实施例的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的标号表示相同的部件。在附图中:
图1为根据本发明一实施例的动态密钥生成方法的流程示意图;
图2为根据本发明一实施例的密钥生成协议的示意图;
图3为根据本发明一实施例的动态密钥生成系统的示意图;
图4为根据本发明一实施例的更新密钥生成协议的时序示意图;
图5为根据本发明一实施例的生成动态密钥的时序示意图;
图6为根据本发明一实施例的动态密钥生成系统的示意图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
在本发明中,应理解,诸如“包括”或“具有”等术语旨在指示本说明书中所公开的特征、数字、步骤、行为、部件、部分或其组合的存在,并且不旨在排除一个或多个其他特征、数字、步骤、行为、部件、部分或其组合存在的可能性。
另外还需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
针对现有技术方案的缺点,本发明实施例提出一种动态密钥生成方法,下面,首先对方法的发明构思进行介绍。
服务端对环境中的风险情况进行检测,当检测到预设风险事件时,基于该预设风险事件的风险程度对当前持有的第一密钥生成协议进行动态更新,获得第二密钥生成协议。基于此,服务端将动态更新后的第二密钥生成协议下发至客户端,以使客户端基于第二密钥生成协议与服务端进行密钥交换。换言之,服务端可以基于预设风控机制而动态更新服务端持有的密钥生成协议,并下发至客户端,客户端和服务端基于动态更新的密钥生成协议进行数据交换,从而提高攻击者破解协议的成本,提高通信安全性能。
本领域技术人员可以理解,所描述的应用场景仅是本发明的实施方式可以在其中得以实现的一个示例。本发明实施方式的适用范围不受任何限制。在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。
图1为根据本申请一实施例的动态密钥生成方法100的流程示意图。
如图1所示,该方法100可以包括步骤101和步骤102。
步骤101、当检测到预设风险事件时,服务端基于预设风险事件的风险程度对当前持有的第一密钥生成协议进行动态更新,获得第二密钥生成协议。
其中,该预设风险事件是指可能对服务端和客户端当前持有的密钥生成协议的安全性造成风险的事件。例如,该预设风险事件可以是连接至服务端的客户端为不可信客户端,还可以是当前持有的密钥生成协议的工作时间超过安全时长阈值,诸如此类。
在一种可能的实施方式中,在上述步骤101中,服务端基于预设风险事件的风险程度对当前持有的第一密钥生成协议进行动态更新还可以包括:当检测到预设风险事件时,服务端使当前持有的第一密钥生成协议失效,并根据预设风险事件的风险程度生成对应安全级别的第二密钥生成协议。
可以理解,基于在先经验、历史统计数据等风险程度判断因素,可以将多种类型的预设风险事件按照风险程度分为多个级别,比如检测到的某一预设风险事件指示当前持有的密钥生成协议已被攻破时,则可以认为该预设风险事件为一级风险事件。又比如检测到的另一预设风险事件指示当前持有的密钥生成协议可能存在被攻破风险时,则可以认为该预设风险事件为二级风险事件。又比如检测到的预设风险事件指示当前持有的密钥生成协议的工作时间已经超过安全时长阈值,则可以认为该预设风险事件为三级风险事件,诸如此类。基于此,可以生成安全级别对应于该风险程度的第二密钥生成协议,从而持续提高攻击者破解密钥生成协议的成本。
其中,第二密钥生成协议包括预置的密钥算子层和协议主体,协议主体包括协议逻辑以及协议数据,协议逻辑用于指示第二密钥生成协议采用的一个或多个目标密钥算子的组成规则,协议数据用于指示一个或多个目标密钥算子的算子参数。
具体来说,在服务端和客户端均预置包含多种密钥算子的密钥算子层。可选地,密钥算子层包含:采用诸如AES、SM4的安全加密算法的一种或多种密钥算子,和/或采用诸如矩阵乘法算法、大数取余算法的自定义变化算法的一种或多种密钥算子,和/或采用诸如SHA256、SM3的摘要算法的一种或多种密钥算子。
举例来说,图2示出一种密钥生成协议的示例,其包含预置的密钥算子层和动态生成的协议主体,其中预置的密钥算子层包含AES变换算子、矩阵变换算子和SHA变换算子等密钥算子等。动态生成的协议主体部分包括逻辑区和数据区,逻辑区包括协议逻辑,其用于指示该密钥生成协议所采用目标密钥算子的组成规则与顺序,该部分内容可通过热更新的方式下发至客户端。数据区包含密钥算子层中各级密钥算子的算子参数。可选地,其中一些密钥算子的算子参数可以是白盒数据,另外一些密钥算子的算子参数可以是明文参数。
在一种可能的实施方式中,密钥算子层包含多个密钥算子且同时预置于服务端和客户端,并且密钥算子层中包含的多个密钥算子预先被划分为多个安全等级;以及,第二密钥生成协议的安全级别由采用的一个或多个目标密钥算子的安全等级确定。
举例来说,可以按照各个密钥算子的变换安全性将密钥算子层中的多种密钥算子分为一级算子、二级算子、三级算子。其中,一级算子可表示安全等级最高的算子,接受密钥因子和算子参数作为输入,采用诸如AES算法、SM4算法等安全加密算法来保护变换结果的安全性。二级算子可表示安全等级仅次于一级的算子,其接受密钥因子和算子参数作为输入,并采用诸如矩阵乘法算法、大数取余算法等自定义变化算法来保护变换结果的安全性。二级算子相较于一级算子具有更简单的算法,对客户端的性能要求更低。可选地,可采用白盒技术保护一级算子和二级算子的算子参数的安全性。三级算子可表示安全等级较弱的算子,其接受密钥因子和算子参数作为输入,可采用先用的摘要算法保护变换结果的安全性,其中摘要算法的算子参数为摘要算法的盐,摘要算法比如可以是SHA256、SM3等。三级算子算法相较于一、二级算子则更为简单,对客户端性能要求更低。基于此,可以理解,当第二密钥生成协议采用一级算子作为目标密钥算子,相较于采用二级算子具有更高的安全等级。当第二密钥生成协议组合采用一、二级算子作为目标密钥算子,相较于单独采用一级算子具有更高的安全等级。因此可以由采用的一个或多个目标密钥算子的安全等级确定第二密钥生成协议的安全级别,并根据检测到的预设风险事件的风险程度生成对应安全级别的第二密钥生成协议。
在一种可能的实施方式中,方法还包括:采用白盒加密技术保护算子参数的安全性。
举例来说,参考图2,其中的AES变换算子和矩阵变换算子的算子参数采用白盒数据形式保存。
在一种可能的实施方式中,预设风险事件至少包括风险程度不同的第一预设风险事件、第二预设风险事件和第三预设风险事件;该第一预设风险事件可以用于指示连接至服务端的不可信客户端的数量占比超过预设阈值;第二预设风险事件用于指示接收外部发来的协议更新指令;第三预设风险事件用于指示服务端当前持有的第一密钥生成协议的工作时间超过预设安全时长。
举例来说,参考图3,可以在服务端设置风控模块,该风控模块设置有多个风险驱动单元,比如第一风险驱动单元、第二风险驱动单元和第三风险驱动单元。基于此,比如,第一风险驱动单元检测到第一预设风险事件发生时,也即检测到连接至服务端的不可信客户端的数量占比超过预设阈值时,驱动强制更新该服务端当前持有的第一密钥生成协议,动态更新后的第二密钥生成协议可以由AES算子(一级算子)、矩阵变化算子(二级算子)和SHA变换算子(三级算子)组合参与。可选地,若第一风险驱动单元检测到第一预设风险事件重复发生时,则更新后的第二密钥生成协议可以包含增加数量的AES变换算子。又比如,在业务方需要上线安全性要求较高的业务之前,向服务端发送协议更新指令(即发生该第二预设风险事件),第二风险驱动单元检测到第二预设风险事件发生,驱动强制更新该服务端当前持有的第一密钥生成协议,动态更新后的第二密钥生成协议可以由矩阵变化算子(二级算子)和SHA变换算子(三级算子)组合参与。又比如,第一密钥生成协议的工作时间超过预设安全时长(即发生该第三预设风险事件),第三风险驱动单元检测到该第三预设风险事件,驱动强制更新该服务端当前持有的第一密钥生成协议,动态更新后的第二密钥生成协议可以由SHA变换算子(三级算子)参与。可以看出,第一预设风险事件、第二预设风险事件和第三预设风险事件的风险程度依次递减,动态更新后生成的第二密钥生成协议的安全级别也相应依次递减。
在一种可能的实施方式中,服务端连接至多个客户端,且客户端上送的密钥交换请求还包括设备指纹信息;方法还包括:服务端收集每个客户端上送的设备指纹信息,根据设备指纹信息判断每个客户端是否为不可信客户端,并周期性判断连接至服务端的不可信客户端的数量占比是否超过预设阈值,其中,若超过预设阈值,则检测到第一预设风险事件。
在一种可能的实施方式中,预设风险事件还包括风险程度大于第一预设风险事件的第四预设风险事件;其中,第四预设风险事件用于指示服务端检测到重复多次的第一预设风险事件。举例来说,当检测到第一预设风险事件重复多次发生时,驱动强制更新该服务端当前持有的第一密钥生成协议,动态更新后的第二密钥生成协议可以由多个AES算子(一级算子)、矩阵变化算子(二级算子)和SHA变换算子(三级算子)组合参与。由此具有更高的安全级别。
步骤102、服务端将动态更新后的第二密钥生成协议下发至客户端,以使客户端基于第二密钥生成协议与服务端进行密钥交换。
在一种可能的实施方式中,步骤102中的服务端将动态更新后的第二密钥生成协议下发至客户端,还包括:服务端接收客户端上送的密钥交换请求,密钥交换请求包括客户端当前持有的密钥生成协议的版本号;当服务端判断密钥交换请求携带的版本号与第二密钥生成协议的版本号不一致时,服务端将动态更新后的第二密钥生成协议下发至客户端。
相反,当服务端判断客户端上送的密钥交换请求携带的版本号与第二密钥生成协议的版本号一致时,则说明客户端和服务端的密钥生成协议是一致的,则服务端无需进一步向客户端下发其持有的第二密钥生成协议。
在一种可能的实施方式中,上述服务端将动态更新后的第二密钥生成协议下发至客户端,还可以进一步包括:服务端将第二密钥生成协议的版本号下发至客户端;客户端向服务端发起协议更新请求,协议更新请求携带第二密钥生成协议的版本号;服务端向客户端下发对应于第二密钥生成协议的协议逻辑和协议数据;客户端基于预置的密钥算子层、协议逻辑和协议数据,将第二密钥生成协议落地,并重新基于第二密钥生成协议向服务端发起密钥交换请求。
在一种可能的实施方式中,服务端通过热更新方式向客户端下发第二密钥生成协议的协议逻辑。
举例来说,参考图3,服务端向客户端下发的协议逻辑是热更新JS文件,客户端在接收到该热更新JS文件之后转为热更新模块,并进一步结合接收到的协议数据、预置的密钥算子层生成更新后的第二密钥生成协议。
图4示出对服务端和客户端持有的密钥生成协议依次进行更新的流程示意图。参考图3,图4所示出客户端和服务端之间的通信均是通过图3中的安全通讯模块而实现的。
S41、服务端将当前持有的第一密钥生成协议置为失效状态,同时生成第二密钥生成协议、热更新补丁以及白盒跳转表。
S42、客户端生成客户端随机数。其中,上述S41可以在S42之前或之后,本申请对此不作具体限制。
S43、客户端向服务端发起密钥交换请求,密钥交换请求包括:客户端当前持有的密钥生成协议的版本号、客户端随机数以及设备指纹信息。
S44、服务端收到密钥交换请求,判断密钥交换请求携带的版本号已过期,则终止当前密钥交换请求。
S45、将动态更新后持有的第二密钥生成协议的版本号和证书下发至客户端。
S46、客户端收到对接收的证书进行验证。
S47、客户端在证书验证通过之后向服务端发起协议更新请求,该协议更新请求携带该第二密钥生成协议的版本号且用于请求热更新文件以及白盒跳转表。
S48、服务端根据客户端上送的版本号,下发第二密钥生成协议对应的热更新js文件(例如,通过协议逻辑模块)以及算子参数(例如,通过协议数据模块)。
S49、客户端收到热更新js文件和算子参数后,基于预置的密钥算子层执行热更新,并存储第二密钥生成协议的版本号、热更新文件以及白盒跳转表。
S50、客户端和服务端基于当前持有的第二密钥生成协议进行密钥交换。
在一种可能的实施方式中,客户端基于第二密钥生成协议与服务端进行密钥交换,还包括:客户端向服务端发送密钥交换请求,密钥交换请求包括客户端当前持有的第二密钥生成协议的版本号;当服务端检测到密钥交换请求中携带的版本号与服务端当前持有的第二密钥生成协议的版本号一致时,生成服务端随机数,并将服务端随机数发送至客户端;客户端根据服务端随机数生成预主密钥,将预主密钥发送至服务端;客户端和服务端各自利用第二密钥生成协议、预主密钥、客户端随机数以及服务端随机数生成工作密钥;客户端和服务端通过交换各自生成的工作密钥进行加密通讯。
在一种可能的实施方式中,方法还包括:客户端根据服务端随机数生成预主密钥之后,利用服务端下送的公钥对预主密钥进行加密,并将加密的预主密钥发送至服务端;服务端利用私钥对加密的预主密钥进行解密,得到解密的预主密钥。
举例来说,客户端与服务端同时持有动态更新后的第二密钥生成协议后,服务端和客户端通过基于该第二密钥生成协议各自生成最终的工作密钥(Skey),具体密钥生成工作过程如图5所示,包括:
S51、客户端生成客户端随机数(cliRand)。
S52、客户端向服务端发起密钥交换请求,上送客户端随机数、协议版本号、以及设备信息。
S53、服务端收到客户端请求信息后,判断协议版本号为最新版本号,生成服务端随机数(srvRand)。
S54、服务端将服务端随机数(srvRand)、第二密钥生成协议的版本号、证书下发至客户端。
S55、客户端收到服务端随机数后,对证书进行验证。
S56、客户端在证书验证通过之后生成预主密钥(premasterKey),并用服务端下发的公钥加密预主密钥。
S57、客户端将加密的预主密钥上送至服务端。
S58、客户端利用当前持有的第二密钥生成协议,并根据预主密钥、服务端随机数、客户端随机数生成工作密钥。其中,S57可以在S58之前或之后执行,本申请对此不作具体限制。
S59、服务端收到加密的预主密钥后,用私钥解密预主密钥,并使用当前持有的第二密钥生成协议,并根据预主密钥、服务端随机数、客户端随机数生成工作密钥。
S60、客户端和服务端同时持有工作密钥,后续业务报文可以进行密钥加密通讯。
参考图3,在S60之前,上述客户端和服务端之间的通信均是通过客户端和服务端的安全通讯模块而实现的,其中,密钥因子包括预主密钥、服务端随机数、客户端随机数。S60之后,通过客户端和服务器的业务报文加密模块进行加密之后进行密钥加密通讯。
基于相同的技术构思,本发明实施例还提供一种动态密钥生成系统,用于执行上述任一实施例所提供的动态密钥生成方法。图6为本发明实施例提供的一种动态密钥生成系统的结构示意图。
如图6所示,系统600包括:服务端601和客户端602。其中,服务端用于执行:当检测到预设风险事件时,基于预设风险事件的风险程度对服务端当前持有的第一密钥生成协议进行动态更新,获得第二密钥生成协议;将动态更新后的第二密钥生成协议下发至客户端;客户端用于执行:基于第二密钥生成协议与服务端进行密钥交换。
在一些实施方式中,服务端还用于:接收客户端上送的密钥交换请求,密钥交换请求包括客户端当前持有的密钥生成协议的版本号;当检测到密钥交换请求携带的版本号与第二密钥生成协议的版本号不一致时,将动态更新后的第二密钥生成协议下发至客户端。
在一些实施方式中,服务端还用于:当检测到预设风险事件时,使当前持有的第一密钥生成协议失效,并根据预设风险事件的风险程度生成对应安全级别的第二密钥生成协议;其中,第二密钥生成协议包括预置的密钥算子层和协议主体,协议主体包括协议逻辑以及协议数据,协议逻辑用于指示第二密钥生成协议采用的一个或多个目标密钥算子的组成规则,协议数据用于指示一个或多个目标密钥算子的算子参数的。
在一些实施方式中,密钥算子层包含多个密钥算子且预置于服务端和客户端,并且密钥算子层中包含的多个密钥算子预先被划分为多个安全等级;以及,第二密钥生成协议的安全级别由采用的一个或多个目标密钥算子的安全等级确定。
在一些实施方式中,密钥算子层包含:采用安全加密算法的一种或多种密钥算子,和/或采用自定义变化算法的一种或多种密钥算子,和/或采用摘要算法的一种或多种密钥算子。
在一些实施方式中,系统还用于:采用白盒加密技术保护算子参数的安全性。
在一些实施方式中,预设风险事件至少包括风险程度不同的第一预设风险事件、第二预设风险事件和第三预设风险事件;其中,第一预设风险事件用于指示连接至服务端的不可信客户端的数量占比超过预设阈值;第二预设风险事件用于指示接收外部发来的协议更新指令;第三预设风险事件用于指示服务端当前持有的第一密钥生成协议的工作时间超过预设安全时长。
在一些实施方式中,服务端连接至多个客户端,且客户端上送的密钥交换请求还包括设备指纹信息;服务端还用于:收集每个客户端上送的设备指纹信息,根据设备指纹信息判断每个客户端是否为不可信客户端,并周期性判断连接至服务端的不可信客户端的数量占比是否超过预设阈值,其中,若超过预设阈值,则检测到第一预设风险事件。
在一些实施方式中,预设风险事件还包括风险程度大于第一预设风险事件的第四预设风险事件;其中,第四预设风险事件用于指示服务端重复检测到多次第一预设风险事件。
在一些实施方式中,服务端还用于:当检测到密钥交换请求携带的版本号与第二密钥生成协议的版本号不一致时,将第二密钥生成协议的版本号下发至客户端;客户端还用于:向服务端发起协议更新请求,协议更新请求携带第二密钥生成协议的版本号;服务端还用于:向客户端下发第二密钥生成协议的协议逻辑和协议数据;客户端还用于:基于预置的密钥算子层、协议逻辑和协议数据,将第二密钥生成协议落地,并重新基于第二密钥生成协议向服务端发起密钥交换请求。
在一些实施方式中,服务端通过热更新方式向客户端下发第二密钥生成协议的协议逻辑。
在一些实施方式中,客户端还用于:当基于第二密钥生成协议进行动态更新之后,向服务端发送密钥交换请求,密钥交换请求包括客户端当前持有的第二密钥生成协议的版本号;服务端还用于:当检测到密钥交换请求中携带的版本号与服务端当前持有的第二密钥生成协议的版本号一致时,生成服务端随机数,并将服务端随机数发送至客户端;客户端还用于:根据服务端随机数生成预主密钥,将预主密钥发送至服务端;客户端和服务端还用于:各自利用第二密钥生成协议、预主密钥、客户端随机数以及服务端随机数生成工作密钥,通过交换各自生成的工作密钥进行加密通讯。
在一些实施方式中,客户端还用于:根据服务端随机数生成预主密钥之后,利用服务端下送的公钥对预主密钥进行加密,并将加密的预主密钥发送至服务端;服务端还用于:利用私钥对加密的预主密钥进行解密,得到解密的预主密钥。
需要说明的是,本申请实施例中的系统可以实现前述方法的实施例的各个过程,并达到相同的效果和功能,这里不再赘述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。

Claims (24)

1.一种动态密钥生成方法,其特征在于,所述方法包括:
当检测到预设风险事件时,基于所述预设风险事件的风险程度对所述服务端当前持有的第一密钥生成协议进行动态更新,获得第二密钥生成协议;
所述服务端将动态更新后的所述第二密钥生成协议下发至客户端,以使所述客户端基于所述第二密钥生成协议与所述服务端进行密钥交换,
其中在所述服务端和所述客户端均预置有包含多个密钥算子的密钥算子层,所述第一密钥生成协议和所述第二密钥生成协议分别包括各自的协议主体,所述协议主体包括协议逻辑以及协议数据,所述协议逻辑用于指示各自的协议在所述多个密钥算子当中采用的多个目标密钥算子的组成规则,所述协议数据用于指示所述多个目标密钥算子的算子参数,其中所述密钥算子层包含:采用安全加密算法的一种或多种密钥算子,和/或采用自定义变化算法的一种或多种密钥算子,和/或采用摘要算法的一种或多种密钥算子。
2.根据权利要求1所述的方法,其特征在于,所述服务端将动态更新后的所述第二密钥生成协议下发至客户端,所述方法还包括:
所述服务端接收所述客户端上送的密钥交换请求,所述密钥交换请求包括所述客户端当前持有的密钥生成协议的版本号;
当所述服务端检测到所述密钥交换请求携带的版本号与所述第二密钥生成协议的版本号不一致时,所述服务端将动态更新后的所述第二密钥生成协议下发至所述客户端。
3.根据权利要求1所述的方法,其特征在于,所述服务端基于所述预设风险事件的风险程度对当前持有的第一密钥生成协议进行动态更新,还包括:
当检测到所述预设风险事件时,所述服务端使当前持有的所述第一密钥生成协议失效,并根据所述预设风险事件的风险程度生成对应安全级别的第二密钥生成协议。
4.根据权利要求3所述的方法,其特征在于,所述多个密钥算子预先被划分为多个安全等级;以及,所述第二密钥生成协议的安全级别由采用的所述多个目标密钥算子的安全等级确定。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:采用白盒加密技术保护所述算子参数的安全性。
6.根据权利要求3所述的方法,其特征在于,所述预设风险事件至少包括风险程度不同的第一预设风险事件、第二预设风险事件和第三预设风险事件;其中,
所述第一预设风险事件用于指示连接至所述服务端的不可信客户端的数量占比超过预设阈值;
所述第二预设风险事件用于指示接收外部发来的协议更新指令;
所述第三预设风险事件用于指示所述服务端当前持有的所述第一密钥生成协议的工作时间超过预设安全时长。
7.根据权利要求6所述的方法,其特征在于,所述服务端连接至多个所述客户端,且所述客户端上送的所述密钥交换请求还包括设备指纹信息;所述方法还包括:
所述服务端收集每个所述客户端上送的所述设备指纹信息,根据所述设备指纹信息判断每个所述客户端是否为不可信客户端,并周期性判断连接至所述服务端的所述不可信客户端的数量占比是否超过所述预设阈值,其中,若超过所述预设阈值,则检测到所述第一预设风险事件。
8.根据权利要求6所述的方法,其特征在于,所述预设风险事件还包括风险程度大于所述第一预设风险事件的第四预设风险事件; 其中,
所述第四预设风险事件用于指示所述服务端重复检测到多次所述第一预设风险事件。
9.根据权利要求3所述的方法,其特征在于,所述服务端将动态更新后的所述第二密钥生成协议下发至客户端,还包括:
所述服务端将所述第二密钥生成协议的版本号下发至所述客户端;
所述客户端向所述服务端发起协议更新请求,所述协议更新请求携带所述第二密钥生成协议的版本号;
所述服务端向所述客户端下发所述第二密钥生成协议的所述协议逻辑和所述协议数据;
所述客户端基于预置的密钥算子层、所述协议逻辑和所述协议数据,将所述第二密钥生成协议落地,并重新基于所述第二密钥生成协议向所述服务端发起所述密钥交换请求。
10.根据权利要求9所述的方法,其特征在于,所述服务端通过热更新方式向所述客户端下发所述第二密钥生成协议的协议逻辑。
11.根据权利要求1所述的方法,其特征在于,所述客户端基于所述第二密钥生成协议与所述服务端进行密钥交换,还包括:
所述客户端向所述服务端发送密钥交换请求,所述密钥交换请求包括所述客户端当前持有的所述第二密钥生成协议的版本号;
当所述服务端检测到所述密钥交换请求中携带的版本号与所述服务端当前持有的所述第二密钥生成协议的版本号一致时,生成服务端随机数,并将所述服务端随机数发送至所述客户端;
所述客户端根据所述服务端随机数生成预主密钥,将所述预主密钥发送至所述服务端;
所述客户端和所述服务端各自利用所述第二密钥生成协议、所述预主密钥、所述客户端随机数以及所述服务端随机数生成工作密钥;
所述客户端和所述服务端通过交换各自生成的所述工作密钥进行加密通讯。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
所述客户端根据所述服务端随机数生成所述预主密钥之后,利用所述服务端下送的公钥对所述预主密钥进行加密,并将加密的所述预主密钥发送至所述服务端;
所述服务端利用私钥对加密的所述预主密钥进行解密,得到解密的所述预主密钥。
13.一种动态密钥生成系统,其特征在于,所述系统包括:服务端和客户端;其中,
所述服务端用于执行:当检测到预设风险事件时,基于所述预设风险事件的风险程度对所述服务端当前持有的第一密钥生成协议进行动态更新,获得第二密钥生成协议;将动态更新后的所述第二密钥生成协议下发至客户端;
所述客户端用于执行:基于所述第二密钥生成协议与所述服务端进行密钥交换,
其中在所述服务端和所述客户端均预置有包含多个密钥算子的密钥算子层,所述第一密钥生成协议和所述第二密钥生成协议分别包括各自的协议主体,所述协议主体包括协议逻辑以及协议数据,所述协议逻辑用于指示各自的协议在所述多个密钥算子当中采用的多个目标密钥算子的组成规则,所述协议数据用于指示所述多个目标密钥算子的算子参数,其中所述密钥算子层包含:采用安全加密算法的一种或多种密钥算子,和/或采用自定义变化算法的一种或多种密钥算子,和/或采用摘要算法的一种或多种密钥算子。
14.根据权利要求13所述的系统,其特征在于,
所述服务端还用于:接收所述客户端上送的密钥交换请求,所述密钥交换请求包括所述客户端当前持有的密钥生成协议的版本号;当检测到所述密钥交换请求携带的版本号与所述第二密钥生成协议的版本号不一致时,将动态更新后的所述第二密钥生成协议下发至所述客户端。
15.根据权利要求13所述的系统,其特征在于,
所述服务端还用于:当检测到所述预设风险事件时,使当前持有的所述第一密钥生成协议失效,并根据所述预设风险事件的风险程度生成对应安全级别的第二密钥生成协议。
16.根据权利要求15所述的系统,其特征在于,所述多个密钥算子预先被划分为多个安全等级;以及,所述第二密钥生成协议的安全级别由采用的所述多个目标密钥算子的安全等级确定。
17.根据权利要求15所述的系统,其特征在于,
所述系统还用于:采用白盒加密技术保护所述算子参数的安全性。
18.根据权利要求15所述的系统,其特征在于,所述预设风险事件至少包括风险程度不同的第一预设风险事件、第二预设风险事件和第三预设风险事件;其中,
所述第一预设风险事件用于指示连接至所述服务端的不可信客户端的数量占比超过预设阈值;
所述第二预设风险事件用于指示接收外部发来的协议更新指令;
所述第三预设风险事件用于指示所述服务端当前持有的所述第一密钥生成协议的工作时间超过预设安全时长。
19.根据权利要求18所述的系统,其特征在于,所述服务端连接至多个所述客户端,且所述客户端上送的所述密钥交换请求还包括设备指纹信息;
所述服务端还用于:收集每个所述客户端上送的所述设备指纹信息,根据所述设备指纹信息判断每个所述客户端是否为不可信客户端,并周期性判断连接至所述服务端的所述不可信客户端的数量占比是否超过所述预设阈值,其中,若超过所述预设阈值,则检测到所述第一预设风险事件。
20.根据权利要求18所述的系统,其特征在于,所述预设风险事件还包括风险程度大于所述第一预设风险事件的第四预设风险事件; 其中,
所述第四预设风险事件用于指示所述服务端重复检测到多次所述第一预设风险事件。
21.根据权利要求15所述的系统,其特征在于,
所述服务端还用于:当检测到所述密钥交换请求携带的版本号与所述第二密钥生成协议的版本号不一致时,将所述第二密钥生成协议的版本号下发至所述客户端;
所述客户端还用于:向所述服务端发起协议更新请求,所述协议更新请求携带所述第二密钥生成协议的版本号;
所述服务端还用于:向所述客户端下发所述第二密钥生成协议的所述协议逻辑和所述协议数据;
所述客户端还用于:基于预置的密钥算子层、所述协议逻辑和所述协议数据,将所述第二密钥生成协议落地,并重新基于所述第二密钥生成协议向所述服务端发起所述密钥交换请求。
22.根据权利要求21所述的系统,其特征在于,所述服务端通过热更新方式向所述客户端下发所述第二密钥生成协议的协议逻辑。
23.根据权利要求13所述的系统,其特征在于,
所述客户端还用于:当基于所述第二密钥生成协议进行动态更新之后,向所述服务端发送密钥交换请求,所述密钥交换请求包括所述客户端当前持有的所述第二密钥生成协议的版本号;
所述服务端还用于:当检测到所述密钥交换请求中携带的版本号与所述服务端当前持有的所述第二密钥生成协议的版本号一致时,生成服务端随机数,并将所述服务端随机数发送至所述客户端;
所述客户端还用于:根据所述服务端随机数生成预主密钥,将所述预主密钥发送至所述服务端;
所述客户端和所述服务端还用于:各自利用所述第二密钥生成协议、所述预主密钥、所述客户端随机数以及所述服务端随机数生成工作密钥,通过交换各自生成的所述工作密钥进行加密通讯。
24.根据权利要求23所述的系统,其特征在于,
所述客户端还用于:根据所述服务端随机数生成所述预主密钥之后,利用所述服务端下送的公钥对所述预主密钥进行加密,并将加密的所述预主密钥发送至所述服务端;
所述服务端还用于:利用私钥对加密的所述预主密钥进行解密,得到解密的所述预主密钥。
CN202011356965.6A 2020-11-27 2020-11-27 一种动态密钥生成方法和系统 Active CN112543100B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202011356965.6A CN112543100B (zh) 2020-11-27 2020-11-27 一种动态密钥生成方法和系统
TW110131571A TWI787974B (zh) 2020-11-27 2021-08-26 動態金鑰生成方法和系統
PCT/CN2021/117514 WO2022110968A1 (zh) 2020-11-27 2021-09-09 一种动态密钥生成方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011356965.6A CN112543100B (zh) 2020-11-27 2020-11-27 一种动态密钥生成方法和系统

Publications (2)

Publication Number Publication Date
CN112543100A CN112543100A (zh) 2021-03-23
CN112543100B true CN112543100B (zh) 2023-07-28

Family

ID=75016986

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011356965.6A Active CN112543100B (zh) 2020-11-27 2020-11-27 一种动态密钥生成方法和系统

Country Status (3)

Country Link
CN (1) CN112543100B (zh)
TW (1) TWI787974B (zh)
WO (1) WO2022110968A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114024724B (zh) * 2021-10-25 2023-06-13 四川启睿克科技有限公司 一种基于物联网的对称密钥动态生成方法
CN117040944B (zh) * 2023-10-10 2024-04-26 深圳市旗云智能科技有限公司 无线物联网远程信号传输装置
CN117668887B (zh) * 2024-01-31 2024-05-31 南湖实验室 一种基于机密计算的同态加密安全与性能自定义平衡方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010004420A (ja) * 2008-06-23 2010-01-07 Mitsubishi Electric Corp 鍵管理サーバ、端末、通信システム、鍵配信方法、鍵配信プログラム、鍵受信方法及び鍵受信プログラム
CN106100834A (zh) * 2016-06-22 2016-11-09 广西咪付网络技术有限公司 一种算法密钥库的生成和更新方法
CN111756524A (zh) * 2019-03-26 2020-10-09 深圳市网安计算机安全检测技术有限公司 动态群组密钥生成方法、装置、计算机设备及存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100321716B1 (ko) * 1998-12-08 2002-03-08 이계철 인증시스템에서의키인증방법
US7591012B2 (en) * 2004-03-02 2009-09-15 Microsoft Corporation Dynamic negotiation of encryption protocols
US20060126836A1 (en) * 2004-12-10 2006-06-15 Hector Rivas System and method for dynamic generation of encryption keys
CN101127595B (zh) * 2006-08-15 2011-02-02 华为技术有限公司 一种实现多方通信安全的方法、系统及设备
CN101515876B (zh) * 2008-02-18 2011-11-23 财团法人工业技术研究院 双模式无线检测器网络的密钥建立与事件处理方法及系统
US20120309354A1 (en) * 2011-06-06 2012-12-06 Syracuse University Situation aware security system and method for mobile devices
WO2014029951A1 (en) * 2012-08-21 2014-02-27 Senta Technologies Limited A cryptography system
CN107534554B (zh) * 2015-04-30 2021-01-08 日本电信电话株式会社 数据发送接收方法及系统
CN106533659A (zh) * 2015-09-14 2017-03-22 北京中质信维科技有限公司 一种密钥更新方法和系统
CN107347058B (zh) * 2016-05-06 2021-07-23 阿里巴巴集团控股有限公司 数据加密方法、数据解密方法、装置及系统
CN108040071B (zh) * 2017-12-30 2023-02-17 深圳市潮流网络技术有限公司 一种VoIP音视频加密密钥动态切换方法
CN109743176B (zh) * 2018-12-28 2020-07-28 百富计算机技术(深圳)有限公司 一种pos终端的证书更新方法、服务器及pos终端
CN111740844A (zh) * 2020-06-24 2020-10-02 上海缔安科技股份有限公司 基于硬件的国密算法的ssl通信方法及装置
CN111988143B (zh) * 2020-08-28 2024-03-01 百度时代网络技术(北京)有限公司 密钥更新方法、装置、设备以及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010004420A (ja) * 2008-06-23 2010-01-07 Mitsubishi Electric Corp 鍵管理サーバ、端末、通信システム、鍵配信方法、鍵配信プログラム、鍵受信方法及び鍵受信プログラム
CN106100834A (zh) * 2016-06-22 2016-11-09 广西咪付网络技术有限公司 一种算法密钥库的生成和更新方法
CN111756524A (zh) * 2019-03-26 2020-10-09 深圳市网安计算机安全检测技术有限公司 动态群组密钥生成方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
TW202222052A (zh) 2022-06-01
TWI787974B (zh) 2022-12-21
CN112543100A (zh) 2021-03-23
WO2022110968A1 (zh) 2022-06-02

Similar Documents

Publication Publication Date Title
CN112543100B (zh) 一种动态密钥生成方法和系统
US11706026B2 (en) Location aware cryptography
US20230155821A1 (en) Secure shared key establishment for peer to peer communications
EP3534565B1 (en) Data transmission method, apparatus and system
CN109347835B (zh) 信息传输方法、客户端、服务器以及计算机可读存储介质
CN109728914B (zh) 数字签名验证方法、系统、装置及计算机可读存储介质
US11546348B2 (en) Data service system
EP3598714A1 (en) Method, device, and system for encrypting secret key
US20190243980A1 (en) Secure client-server communication
CN113630248B (zh) 一种会话密钥协商方法
CN113347143B (zh) 一种身份验证方法、装置、设备及存储介质
CN113132087A (zh) 物联网、身份认证及保密通信方法、芯片、设备及介质
CN109005184A (zh) 文件加密方法及装置、存储介质、终端
CN115333727A (zh) 一种密钥生成方法和装置
CN114553957A (zh) 兼容国密和国际https传输的业务系统和方法
CN106549754A (zh) 管理密钥的方法和装置
CN114401148A (zh) 一种通信数据加解密优化方法
CN112637249B (zh) 物联网节点标识认证方法、装置、电子设备及存储介质
US20240056295A1 (en) Verifiable remote resource management for cryptographic devices
US11818263B2 (en) Computing key rotation period for block cipher-based encryption schemes system and method
CN110971396B (zh) 一种应用程序的登录方法及其对应系统
CN117527307A (zh) 一种数据加密方法、系统、计算机设备及介质
WO2024072815A1 (en) Method for securely generating and distributing symmetric keys for grouping secure communications
CN118118170A (zh) 一种数据传输加密的改进方法
CN116628735A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40047469

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant