CN111698088A - 密钥轮换方法、装置、电子设备及介质 - Google Patents
密钥轮换方法、装置、电子设备及介质 Download PDFInfo
- Publication number
- CN111698088A CN111698088A CN202010467085.XA CN202010467085A CN111698088A CN 111698088 A CN111698088 A CN 111698088A CN 202010467085 A CN202010467085 A CN 202010467085A CN 111698088 A CN111698088 A CN 111698088A
- Authority
- CN
- China
- Prior art keywords
- key
- data
- numerical value
- target
- ciphertext
- 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
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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/3033—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters details relating to pseudo-prime or prime number generation, e.g. primality test
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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
- H04L63/0442—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 wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- 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/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
- H04L63/205—Network architectures or network communication protocols for network security for managing network security; network security policies in general involving negotiation or determination of the one or more network security mechanisms to be used, e.g. by negotiation between the client and the server or between peers or by selection according to the capabilities of the entities involved
-
- 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
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Finance (AREA)
- Software Systems (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及信息安全,提供一种密钥轮换方法,该方法能够生成多个密钥对,并为所述多个密钥对建立索引,从所述多个密钥对中提取任意密钥对,并从配置库中获取所有存量数据,采用所述任意密钥对中的任意公钥对所述所有存量数据进行加密运算,得到所述所有存量数据对应的第一密文,当接收到轮换请求时,根据索引确定所述任意公钥对应的任意私钥,采用所述任意私钥对所述第一密文进行解密运算,得到明文,从所述多个密钥对中提取目标密钥对,采用所述目标密钥对中的目标公钥对所述明文进行加密运算,生成第二密文,以响应所述轮换请求,提高了所述所有存量数据的安全等级。本发明还涉及区块链技术,所述目标密钥对存储于区块链中。
Description
技术领域
本发明涉及信息安全的密码技术领域,尤其涉及一种密钥轮换方法、装置、电子设备及介质。
背景技术
在金融领域下,为了保证交易数据的安全,通常对交易数据对应的工作密钥进行加密,并存放于加密机中,然而,随着互联网技术及人工智能技术的快速发展,工作密钥有可能从加密机中被导出,因此存在一定程度上的工作密钥泄露的风险。
由于工作密钥的泄露会导致工作密钥加密的用户口令或密码等数据的泄露,因此,有必要提供一种工作密钥轮换方案,以提高加密数据的安全等级。
发明内容
鉴于以上内容,有必要提供一种密钥轮换方法、装置、电子设备及介质,能够提高所有存量数据的安全等级。
一种密钥轮换方法,所述方法包括:
生成多个密钥对,并为所述多个密钥对建立索引;
从所述多个密钥对中提取任意密钥对,并从配置库中获取所有存量数据;
采用所述任意密钥对中的任意公钥对所述所有存量数据进行加密运算,得到所述所有存量数据对应的第一密文;
当接收到轮换请求时,根据索引确定所述任意公钥对应的任意私钥;
采用所述任意私钥对所述第一密文进行解密运算,得到明文;
从所述多个密钥对中提取目标密钥对;
采用所述目标密钥对中的目标公钥对所述明文进行加密运算,生成第二密文,以响应所述轮换请求。
根据本发明优选实施例,所述生成多个密钥对包括:
对于每个密钥对,获取预设位数,并生成具有所述预设位数的第一伪随机数及第二伪随机数;
采用费马测试方法检测所述第一伪随机数及所述第二伪随机数是否为质数;
当检测到所述第一伪随机数及所述第二伪随机数均为质数时,将所述第一伪随机数及所述第二伪随机数进行相乘运算,得到目标数值;
计算所述第一伪随机数与所述第二伪随机数之间的最小公倍数;
采用伪随机数生成器生成大于预设数值且小于所述最小公倍数的第一候选值,并采用辗转相除法确定所述第一候选值与所述最小公倍数之间的最大公约数;
当检测到所述最大公约数为所述预设数值时,将所述第一候选值确定为第一数值,并将所述目标数值及所述第一数值确定为密钥对中的公钥;
采用伪随机数生成器生成大于所述预设数值且小于所述最小公倍数的第二候选值,将所述第二候选值及所述第一数值的乘积与所述最小公倍数进行取余运算,得到余数;
当检测到所述余数为所述预设数值时,将所述第二候选值确定为第二数值,并将所述目标数值及所述第二数值确定为密钥对中的私钥。
根据本发明优选实施例,所述生成具有所述预设位数的第一伪随机数包括:
从口令库中获取任意口令;
将所述任意口令输入至单向散列函数中,得到散列值;
确定所述散列值的位数,得到第一位数,并将所述预设位数与所述第一位数的差值确定为第二位数;
采用混合线性同余法生成具有所述第二位数的任意数;
将所述散列值与所述任意数进行拼接,得到所述第一伪随机数。
根据本发明优选实施例,所述采用所述任意密钥对中的任意公钥对所述所有存量数据进行加密运算,得到所述所有存量数据对应的第一密文包括:
确定所述任意密钥对中的任意公钥,并确定所述任意公钥的第一数值及目标数值;
采用消息摘要算法计算所述所有存量数据,得到第一数据;
对所述第一数据进行次数为所述第一数值的幂运算,得到第二数据;
将所述第二数据与所述目标数值进行取余运算,得到所述第一密文。
根据本发明优选实施例,所述方法还包括:
当检测到数据保存请求时,根据所述数据保存请求生成所述轮换请求;及/或
当检测到所述任意密钥对的有效期届满时,生成所述轮换请求。
根据本发明优选实施例,所述采用所述任意私钥对所述第一密文进行解密运算,得到明文包括:
确定所述任意私钥的第二数值及目标数值;
对所述第一密文进行次数为所述第二数值的幂运算,得到第三数据;
将所述第三数据与所述目标数值进行取余运算,得到第四数据;
采用消息摘要算法计算所述第四数据,得到所述明文。
根据本发明优选实施例,在生成第二密文后,所述方法还包括:
获取所述轮换请求的请求编号;
根据所述请求编号及所述第二密文生成提示信息;
将所述提示信息发送至指定联系人的终端设备;
当检测到所述提示信息在预设时间内未被接收时,向所述指定联系人发起语音。
一种密钥轮换装置,所述装置包括:
生成单元,用于生成多个密钥对,并为所述多个密钥对建立索引;
提取单元,用于从所述多个密钥对中提取任意密钥对,并从配置库中获取所有存量数据;
加密单元,用于采用所述任意密钥对中的任意公钥对所述所有存量数据进行加密运算,得到所述所有存量数据对应的第一密文;
确定单元,用于当接收到轮换请求时,根据索引确定所述任意公钥对应的任意私钥;
解密单元,用于采用所述任意私钥对所述第一密文进行解密运算,得到明文;
所述提取单元,还用于从所述多个密钥对中提取目标密钥对;
所述加密单元,还用于采用所述目标密钥对中的目标公钥对所述明文进行加密运算,生成第二密文,以响应所述轮换请求。
根据本发明优选实施例,所述生成单元生成多个密钥对包括:
对于每个密钥对,获取预设位数,并生成具有所述预设位数的第一伪随机数及第二伪随机数;
采用费马测试方法检测所述第一伪随机数及所述第二伪随机数是否为质数;
当检测到所述第一伪随机数及所述第二伪随机数均为质数时,将所述第一伪随机数及所述第二伪随机数进行相乘运算,得到目标数值;
计算所述第一伪随机数与所述第二伪随机数之间的最小公倍数;
采用伪随机数生成器生成大于预设数值且小于所述最小公倍数的第一候选值,并采用辗转相除法确定所述第一候选值与所述最小公倍数之间的最大公约数;
当检测到所述最大公约数为所述预设数值时,将所述第一候选值确定为第一数值,并将所述目标数值及所述第一数值确定为密钥对中的公钥;
采用伪随机数生成器生成大于所述预设数值且小于所述最小公倍数的第二候选值,将所述第二候选值及所述第一数值的乘积与所述最小公倍数进行取余运算,得到余数;
当检测到所述余数为所述预设数值时,将所述第二候选值确定为第二数值,并将所述目标数值及所述第二数值确定为密钥对中的私钥。
根据本发明优选实施例,所述生成单元生成具有所述预设位数的第一伪随机数包括:
从口令库中获取任意口令;
将所述任意口令输入至单向散列函数中,得到散列值;
确定所述散列值的位数,得到第一位数,并将所述预设位数与所述第一位数的差值确定为第二位数;
采用混合线性同余法生成具有所述第二位数的任意数;
将所述散列值与所述任意数进行拼接,得到所述第一伪随机数。
根据本发明优选实施例,所述加密单元采用所述任意密钥对中的任意公钥对所述所有存量数据进行加密运算,得到所述所有存量数据对应的第一密文包括:
确定所述任意密钥对中的任意公钥,并确定所述任意公钥的第一数值及目标数值;
采用消息摘要算法计算所述所有存量数据,得到第一数据;
对所述第一数据进行次数为所述第一数值的幂运算,得到第二数据;
将所述第二数据与所述目标数值进行取余运算,得到所述第一密文。
根据本发明优选实施例,所述生成单元,还用于当检测到数据保存请求时,根据所述数据保存请求生成所述轮换请求;及/或
所述生成单元,还用于当检测到所述任意密钥对的有效期届满时,生成所述轮换请求。
根据本发明优选实施例,所述解密单元具体用于:
确定所述任意私钥的第二数值及目标数值;
对所述第一密文进行次数为所述第二数值的幂运算,得到第三数据;
将所述第三数据与所述目标数值进行取余运算,得到第四数据;
采用消息摘要算法计算所述第四数据,得到所述明文。
根据本发明优选实施例,所述装置还包括:
获取单元,用于在生成第二密文后,获取所述轮换请求的请求编号;
所述生成单元,还用于根据所述请求编号及所述第二密文生成提示信息;
发送单元,用于将所述提示信息发送至指定联系人的终端设备;
所述发送单元,还用于当检测到所述提示信息在预设时间内未被接收时,向所述指定联系人发起语音。
一种电子设备,所述电子设备包括:
存储器,存储至少一个指令;及
处理器,获取所述存储器中存储的指令以实现所述密钥轮换方法。
一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器获取以实现所述密钥轮换方法。
由以上技术方案可以看出,当接收到轮换请求时,根据索引确定所述任意公钥对应的任意私钥,采用所述任意私钥对所述第一密文进行解密运算,得到明文,从所述多个密钥对中提取目标密钥对,进而采用所述目标密钥对中的目标公钥对所述明文进行加密运算,生成第二密文,本发明能够在接收到轮换请求时,对所述所有存量数据进行密钥轮换,提高了所述所有存量数据的安全等级。
附图说明
图1是本发明密钥轮换方法的较佳实施例的流程图。
图2是本发明密钥轮换装置的较佳实施例的功能模块图。
图3是本发明实现密钥轮换方法的较佳实施例的电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
如图1所示,是本发明密钥轮换方法的较佳实施例的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
本发明应用于智慧安防场景中,从而推动智慧城市的建设。所述密钥轮换方法应用于一个或者多个电子设备中,所述电子设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述电子设备可以是任何一种可与用户进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏机、交互式网络电视(Internet Protocol Television,IPTV)、智能式穿戴式设备等。
所述电子设备还可以包括网络设备和/或用户设备。其中,所述网络设备包括,但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(CloudComputing)的由大量主机或网络服务器构成的云。
所述电子设备所处的网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
S10,生成多个密钥对,并为所述多个密钥对建立索引。
在本发明的至少一个实施例中,每个密钥对是由公钥及私钥构成。所述公钥是密钥对中公开的部分,所述公钥通常用于加密会话密钥、验证数字签名,所述公钥还可以用于加密私钥解密的数据,另外,所述公钥是由目标数值及第一数值构成。所述私钥是密钥对中非公开的部分,所述私钥通常用于解密会话密钥、验证数字签名,所述私钥还可以用于解密公钥加密的数据,另外,所述私钥是由所述目标数值及第二数值构成。
在本发明的至少一个实施例中,所述索引表征指向数据库表中的密钥对的指针。
在本发明的至少一个实施例中,所述生成多个密钥对包括:
对于每个密钥对,所述电子设备获取预设位数,并生成具有所述预设位数的第一伪随机数及第二伪随机数,所述电子设备采用费马测试方法检测所述第一伪随机数及所述第二伪随机数是否为质数,当检测到所述第一伪随机数及所述第二伪随机数均为质数时,所述电子设备将所述第一伪随机数及所述第二伪随机数进行相乘运算,得到目标数值,所述电子设备计算所述第一伪随机数与所述第二伪随机数之间的最小公倍数,所述电子设备采用伪随机数生成器生成大于预设数值且小于所述最小公倍数的第一候选值,并采用辗转相除法确定所述第一候选值与所述最小公倍数之间的最大公约数,当检测到所述最大公约数为所述预设数值时,所述电子设备将所述第一候选值确定为第一数值,并将所述目标数值及所述第一数值确定为密钥对中的公钥,进一步地,所述电子设备采用伪随机数生成器生成大于所述预设数值且小于所述最小公倍数的第二候选值,将所述第二候选值及所述第一数值的乘积与所述最小公倍数进行取余运算,得到余数,当检测到所述余数为所述预设数值时,所述电子设备将所述第二候选值确定为第二数值,并将所述目标数值及所述第二数值确定为密钥对中的私钥。
其中,所述预设位数的取值是在本发明中不作限制,例如,所述预设位数可以是8位。
进一步地,一般情况下,所述预设数值的取值为1。
通过上述实施方式,能够生成互逆的公私钥,使得生成的私钥能够对公钥加密的数据进行解密。
在本发明的至少一个实施例中,所述生成具有所述预设位数的第一伪随机数包括:
所述电子设备从口令库中获取任意口令,进一步地,所述电子设备将所述任意口令输入至单向散列函数中,得到散列值,所述电子设备确定所述散列值的位数,得到第一位数,并将所述预设位数与所述第一位数的差值确定为第二位数,所述电子设备采用混合线性同余法生成具有所述第二位数的任意数,并将所述散列值与所述任意数进行拼接,得到所述第一伪随机数。
通过上述实施方式,能够生成位数为所述预设位数的第一伪随机数。
在本发明的至少一个实施例中,根据密钥对的生成顺序确定密钥对的索引,也就是说,密钥对越早生成,密钥对的索引越小。
例如:在生成密钥对A后,生成密钥对B,密钥对A对应的索引为1号索引,密钥对B对应的索引为2号索引。
通过对所述多个密钥对建立索引,不仅能够快速访问数据库表中的密钥对,还能够根据所述索引确定密钥对中的公钥对应的私钥。
在为密钥对建立索引后,将密钥对及对应的索引进行存储,并存储于索引库中,密钥对及对应的索引的存储格式可以为,1号索引:{密钥对C的C公钥;密钥对C的C私钥}。
S11,从所述多个密钥对中提取任意密钥对,并从配置库中获取所有存量数据。
在本发明的至少一个实施例中,所述任意密钥对是采用随机法从所述多个密钥对中随机提取的,具体的随机方式是现有技术,在本发明不作具体阐述。
进一步地,所述配置库中存储着待加密的存量数据,进一步地,所述存量数据可以是工作密钥,本发明不作限制。
在本发明的至少一个实施例中,所述从配置库中获取所有存量数据包括:
所述电子设备采用多线程读取所述配置库中的存储日志,进一步地,所述电子设备解析所述存储日志,得到所述所有存量数据。
通过上述实施方式,能够避免存量数据的遗漏,进而确保所述所有存量数据的完整性。
S12,采用所述任意密钥对中的任意公钥对所述所有存量数据进行加密运算,得到所述所有存量数据对应的第一密文。
在本发明的至少一个实施例中,所述第一密文是采用所述任意公钥对所述所有存量数据进行一定的算法计算后得到的报文。
在本发明的至少一个实施例中,所述采用所述任意密钥对中的任意公钥对所述所有存量数据进行加密运算,得到所述所有存量数据对应的第一密文包括:
所述电子设备确定所述任意密钥对中的任意公钥,并确定所述任意公钥的第一数值及目标数值,进一步地,所述电子设备采用消息摘要算法计算所述所有存量数据,得到第一数据,所述电子设备对所述第一数据进行次数为所述第一数值的幂运算,得到第二数据,所述电子设备将所述第二数据与所述目标数值进行取余运算,得到所述第一密文。
通过上述实施方式,能够将所述所有存量数据转换成所述第一密文,防止所述所有存量数据被不具有权限的用户篡改,提高了所述所有存量数据的安全性,另外,采用消息摘要算法能够加大所述第一密文的解密难度。
具体地,所述电子设备采用消息摘要算法计算所述所有存量数据,能够得到固定长度的第一数据,便于后续对所述第一数据进行幂运算及取余运算。
可以理解的是,由于在解密的过程中,需要使用私钥对密文按照解密算法进行计算,因此,在本案中,对所述第一密文进行解密,除了获取到与所述任意公钥对应的任意私钥外,还需获取到与加密算法对应的解密算法。
其中,所述加密算法是指将所述所有存量数据转换成所述第一密文的算法。
S13,当接收到轮换请求时,根据索引确定所述任意公钥对应的任意私钥。
在本发明的至少一个实施例中,所述轮换请求可以由用户触发,也可以在满足一定条件时自动触发,本发明不限制。
其中,所述满足一定条件包括,但不限于:满足配置时间、所述电子设备检测到数据保存请求等。
所述配置时间可以包括一个时间段(例如:所述配置时间可以是10天)等。
在本发明的至少一个实施例中,所述根据索引确定所述任意公钥对应的任意私钥包括:
所述电子设备确定与所述任意公钥对应的目标索引,进一步地,所述电子设备从所述索引库中获取与所述目标索引对应的私钥,作为所述任意私钥。
通过上述实施方式,能够准确地确定与所述任意公钥对应的任意私钥。
在本发明的至少一个实施例中,所述方法还包括:
(1)当检测到数据保存请求时,所述电子设备根据所述数据保存请求生成所述轮换请求。
在本发明的至少一个实施例中,所述电子设备在所述配置库中***监视代码,所述监视代码用于检测所述配置库中是否有keypress事件或者keydown事件产生,当所述配置库中有所述keypress事件或者所述keydown事件产生时,所述电子设备确定产生所述keypress事件或者所述keydown事件的目标按键,进一步地,所述电子设备检测所述目标按键是否为保存按键,当检测到所述目标按键为所述保存按键时,所述电子设备确定所述配置库上有数据保存请求产生。
通过上述实施方式,能够实时监听所述配置库上的保存请求,有效地避免了数据保存请求的遗漏,进而避免遗漏生成所述轮换请求。
(2)当检测到所述任意密钥对的有效期届满时,所述电子设备生成所述轮换请求。
在本发明的至少一个实施例中,为了避免私钥在所述配置时间内被泄露,因此,所述电子设备为每个密钥对设置了有效期,其中,有效期的时长与所述配置时间的时长是一致的。当所述电子设备检测到所述任意密钥对的有效期届满时,将会触发生成所述轮换请求。
S14,采用所述任意私钥对所述第一密文进行解密运算,得到明文。
在本发明的至少一个实施例中,在密码学中,所述明文是指传送方想要接收方获得的可读信息,具体地,在本案中,所述明文是指对所述第一密文进行解密后获得的数据,实际上,所述明文为所述所有存量数据。
在本发明的至少一个实施例中,所述采用所述任意私钥对所述第一密文进行解密运算,得到明文包括:
所述电子设备确定所述任意私钥的第二数值及目标数值,进一步地,所述电子设备对所述第一密文进行次数为所述第二数值的幂运算,得到第三数据,所述电子设备将所述第三数据与所述目标数值进行取余运算,得到第四数据,所述电子设备采用消息摘要算法计算所述第四数据,得到所述明文。
其中,所述第四数据是指与所述第一数据对应的数据。
通过采用与所述任意公钥对应的任意私钥,对所述第一密文进行幂运算及取余运算,能够准确得到所述第四数据,进而通过消息摘要算法对所述第四数据进行计算,能够准确地获取到所述明文。
S15,从所述多个密钥对中提取目标密钥对。
在本发明的至少一个实施例中,所述目标密钥对与所述任意密钥对不是同一密钥对。
在本发明的至少一个实施例中,所述从所述多个密钥对中提取目标密钥对包括:
所述电子设备从所述多个密钥对中剔除所述任意密钥对,得到当前密钥对,进一步地,所述电子设备从所述当前密钥对中随机提取任一密钥对,作为所述目标密钥对。
通过上述实施方式,能够得到与所述任意密钥对不同的目标密钥对,避免在进行密钥轮换的过程中采取同一密钥对进行轮换,提高了密钥轮换的安全性。
需要强调的是,为进一步保证上述目标密钥对的私密和安全性,上述目标密钥对还可以存储于一区块链的节点中。
S16,采用所述目标密钥对中的目标公钥对所述明文进行加密运算,生成第二密文,以响应所述轮换请求。
在本发明的至少一个实施例中,所述目标公钥是指能够对所述明文进行加密的钥匙,进一步地,所述第二密文是采用所述目标公钥对所述明文进行一定的算法计算后得到的报文。
在本发明的至少一个实施例中,在生成第二密文后,所述方法还包括:
所述电子设备获取所述轮换请求的请求编号,进一步地,所述电子设备根据所述请求编号及所述第二密文生成提示信息,并将所述提示信息发送至指定联系人的终端设备,当检测到所述提示信息在预设时间内未被接收时,所述电子设备向所述指定联系人发起语音。
其中,所述指定联系人是指控制密钥轮换请求的负责人。
进一步地,所述预设时间的取值可以根据具体场景进行任意配置。
通过上述实施方式,能够提醒所述指定联系人对所述提示信息的接收。
在本发明的至少一个实施例中,所述方法还包括:
当检测到所述轮换请求响应不成功时,所述电子设备获取所述轮换请求的请求编号,并根据所述请求编号生成告警信息,进一步地,所述电子设备根据所述告警信息确定告警形式,以所述告警形式向所述指定联系人发送所述告警信息。
其中,所述告警形式包括:邮件形式、语音形式、短信形式等。
通过上述实施方式,能够确定合适的告警形式发送所述告警信息。
由以上技术方案可以看出,本发明通过对所述所有存量数据进行密钥轮换,提高了所述所有存量数据的安全等级。
如图2所示,是本发明密钥轮换装置的较佳实施例的功能模块图。所述密钥轮换装置11包括生成单元110、提取单元111、加密单元112、确定单元113、解密单元114、获取单元115及发送单元116。本发明所称的模块/单元是指一种能够被处理器13所获取,并且能够完成固定功能的一系列计算机程序段,其存储在存储器12中。在本实施例中,关于各模块/单元的功能将在后续的实施例中详述。
生成单元110生成多个密钥对,并为所述多个密钥对建立索引。
在本发明的至少一个实施例中,每个密钥对是由公钥及私钥构成。所述公钥是密钥对中公开的部分,所述公钥通常用于加密会话密钥、验证数字签名,所述公钥还可以用于加密私钥解密的数据,另外,所述公钥是由目标数值及第一数值构成。所述私钥是密钥对中非公开的部分,所述私钥通常用于解密会话密钥、验证数字签名,所述私钥还可以用于解密公钥加密的数据,另外,所述私钥是由所述目标数值及第二数值构成。
在本发明的至少一个实施例中,所述索引表征指向数据库表中的密钥对的指针。
在本发明的至少一个实施例中,所述生成单元110生成多个密钥对包括:
对于每个密钥对,所述生成单元110获取预设位数,并生成具有所述预设位数的第一伪随机数及第二伪随机数,所述生成单元110采用费马测试方法检测所述第一伪随机数及所述第二伪随机数是否为质数,当检测到所述第一伪随机数及所述第二伪随机数均为质数时,所述生成单元110将所述第一伪随机数及所述第二伪随机数进行相乘运算,得到目标数值,所述生成单元110计算所述第一伪随机数与所述第二伪随机数之间的最小公倍数,所述生成单元110采用伪随机数生成器生成大于预设数值且小于所述最小公倍数的第一候选值,并采用辗转相除法确定所述第一候选值与所述最小公倍数之间的最大公约数,当检测到所述最大公约数为所述预设数值时,所述生成单元110将所述第一候选值确定为第一数值,并将所述目标数值及所述第一数值确定为密钥对中的公钥,进一步地,所述生成单元110采用伪随机数生成器生成大于所述预设数值且小于所述最小公倍数的第二候选值,将所述第二候选值及所述第一数值的乘积与所述最小公倍数进行取余运算,得到余数,当检测到所述余数为所述预设数值时,所述生成单元110将所述第二候选值确定为第二数值,并将所述目标数值及所述第二数值确定为密钥对中的私钥。
其中,所述预设位数的取值是在本发明中不作限制,例如,所述预设位数可以是8位。
进一步地,一般情况下,所述预设数值的取值为1。
通过上述实施方式,能够生成互逆的公私钥,使得生成的私钥能够对公钥加密的数据进行解密。
在本发明的至少一个实施例中,所述生成单元110生成具有所述预设位数的第一伪随机数包括:
所述生成单元110从口令库中获取任意口令,进一步地,所述生成单元110将所述任意口令输入至单向散列函数中,得到散列值,所述生成单元110确定所述散列值的位数,得到第一位数,并将所述预设位数与所述第一位数的差值确定为第二位数,所述生成单元110采用混合线性同余法生成具有所述第二位数的任意数,并将所述散列值与所述任意数进行拼接,得到所述第一伪随机数。
通过上述实施方式,能够生成位数为所述预设位数的第一伪随机数。
在本发明的至少一个实施例中,根据密钥对的生成顺序确定密钥对的索引,也就是说,密钥对越早生成,密钥对的索引越小。
例如:在生成密钥对A后,生成密钥对B,密钥对A对应的索引为1号索引,密钥对B对应的索引为2号索引。
通过对所述多个密钥对建立索引,不仅能够快速访问数据库表中的密钥对,还能够根据所述索引确定密钥对中的公钥对应的私钥。
在为密钥对建立索引后,将密钥对及对应的索引进行存储,并存储于索引库中,密钥对及对应的索引的存储格式可以为,1号索引:{密钥对C的C公钥;密钥对C的C私钥}。
提取单元111从所述多个密钥对中提取任意密钥对,并从配置库中获取所有存量数据。
在本发明的至少一个实施例中,所述任意密钥对是采用随机法从所述多个密钥对中随机提取的,具体的随机方式是现有技术,在本发明不作具体阐述。
进一步地,所述配置库中存储着待加密的存量数据,进一步地,所述存量数据可以是工作密钥,本发明不作限制。
在本发明的至少一个实施例中,所述提取单元111从配置库中获取所有存量数据包括:
所述提取单元111采用多线程读取所述配置库中的存储日志,进一步地,所述提取单元111解析所述存储日志,得到所述所有存量数据。
通过上述实施方式,能够避免存量数据的遗漏,进而确保所述所有存量数据的完整性。
加密单元112采用所述任意密钥对中的任意公钥对所述所有存量数据进行加密运算,得到所述所有存量数据对应的第一密文。
在本发明的至少一个实施例中,所述第一密文是采用所述任意公钥对所述所有存量数据进行一定的算法计算后得到的报文。
在本发明的至少一个实施例中,所述加密单元112采用所述任意密钥对中的任意公钥对所述所有存量数据进行加密运算,得到所述所有存量数据对应的第一密文包括:
所述加密单元112确定所述任意密钥对中的任意公钥,并确定所述任意公钥的第一数值及目标数值,进一步地,所述加密单元112采用消息摘要算法计算所述所有存量数据,得到第一数据,所述加密单元112对所述第一数据进行次数为所述第一数值的幂运算,得到第二数据,所述加密单元112将所述第二数据与所述目标数值进行取余运算,得到所述第一密文。
通过上述实施方式,能够将所述所有存量数据转换成所述第一密文,防止所述所有存量数据被不具有权限的用户篡改,提高了所述所有存量数据的安全性,另外,采用消息摘要算法能够加大所述第一密文的解密难度。
具体地,所述加密单元112采用消息摘要算法计算所述所有存量数据,能够得到固定长度的第一数据,便于后续对所述第一数据进行幂运算及取余运算。
可以理解的是,由于在解密的过程中,需要使用私钥对密文按照解密算法进行计算,因此,在本案中,对所述第一密文进行解密,除了获取到与所述任意公钥对应的任意私钥外,还需获取到与加密算法对应的解密算法。
其中,所述加密算法是指将所述所有存量数据转换成所述第一密文的算法。
当接收到轮换请求时,确定单元113根据索引确定所述任意公钥对应的任意私钥。
在本发明的至少一个实施例中,所述轮换请求可以由用户触发,也可以在满足一定条件时自动触发,本发明不限制。
其中,所述满足一定条件包括,但不限于:满足配置时间、所述确定单元113检测到数据保存请求等。
所述配置时间可以包括一个时间段(例如:所述配置时间可以是10天)等。
在本发明的至少一个实施例中,所述确定单元113根据索引确定所述任意公钥对应的任意私钥包括:
所述确定单元113确定与所述任意公钥对应的目标索引,进一步地,所述确定单元113从所述索引库中获取与所述目标索引对应的私钥,作为所述任意私钥。
通过上述实施方式,能够准确地确定与所述任意公钥对应的任意私钥。
在本发明的至少一个实施例中,(1)当检测到数据保存请求时,所述生成单元110根据所述数据保存请求生成所述轮换请求。
在本发明的至少一个实施例中,所述确定单元113在所述配置库中***监视代码,所述监视代码用于检测所述配置库中是否有keypress事件或者keydown事件产生,当所述配置库中有所述keypress事件或者所述keydown事件产生时,所述确定单元113确定产生所述keypress事件或者所述keydown事件的目标按键,进一步地,所述确定单元113检测所述目标按键是否为保存按键,当检测到所述目标按键为所述保存按键时,所述确定单元113确定所述配置库上有数据保存请求产生。
通过上述实施方式,能够实时监听所述配置库上的保存请求,有效地避免了数据保存请求的遗漏,进而避免遗漏生成所述轮换请求。
(2)当检测到所述任意密钥对的有效期届满时,所述生成单元110生成所述轮换请求。
在本发明的至少一个实施例中,为了避免私钥在所述配置时间内被泄露,因此,所述确定单元113为每个密钥对设置了有效期,其中,有效期的时长与所述配置时间的时长是一致的。当检测到所述任意密钥对的有效期届满时,将会触发生成所述轮换请求。
解密单元114采用所述任意私钥对所述第一密文进行解密运算,得到明文。
在本发明的至少一个实施例中,在密码学中,所述明文是指传送方想要接收方获得的可读信息,具体地,在本案中,所述明文是指对所述第一密文进行解密后获得的数据,实际上,所述明文为所述所有存量数据。
在本发明的至少一个实施例中,所述解密单元114采用所述任意私钥对所述第一密文进行解密运算,得到明文包括:
所述解密单元114确定所述任意私钥的第二数值及目标数值,进一步地,所述解密单元114对所述第一密文进行次数为所述第二数值的幂运算,得到第三数据,所述解密单元114将所述第三数据与所述目标数值进行取余运算,得到第四数据,所述解密单元114采用消息摘要算法计算所述第四数据,得到所述明文。
其中,所述第四数据是指与所述第一数据对应的数据。
通过采用与所述任意公钥对应的任意私钥,对所述第一密文进行幂运算及取余运算,能够准确得到所述第四数据,进而通过消息摘要算法对所述第四数据进行计算,能够准确地获取到所述明文。
所述提取单元111从所述多个密钥对中提取目标密钥对。
在本发明的至少一个实施例中,所述目标密钥对与所述任意密钥对不是同一密钥对。
在本发明的至少一个实施例中,所述提取单元111从所述多个密钥对中提取目标密钥对包括:
所述提取单元111从所述多个密钥对中剔除所述任意密钥对,得到当前密钥对,进一步地,所述提取单元111从所述当前密钥对中随机提取任一密钥对,作为所述目标密钥对。
通过上述实施方式,能够得到与所述任意密钥对不同的目标密钥对,避免在进行密钥轮换的过程中采取同一密钥对进行轮换,提高了密钥轮换的安全性。
需要强调的是,为进一步保证上述目标密钥对的私密和安全性,上述目标密钥对还可以存储于一区块链的节点中。
所述加密单元112采用所述目标密钥对中的目标公钥对所述明文进行加密运算,生成第二密文,以响应所述轮换请求。
在本发明的至少一个实施例中,所述目标公钥是指能够对所述明文进行加密的钥匙,进一步地,所述第二密文是采用所述目标公钥对所述明文进行一定的算法计算后得到的报文。
在本发明的至少一个实施例中,在生成第二密文后,获取单元115获取所述轮换请求的请求编号,进一步地,所述生成单元110根据所述请求编号及所述第二密文生成提示信息,发送单元116将所述提示信息发送至指定联系人的终端设备,当检测到所述提示信息在预设时间内未被接收时,所述发送单元116向所述指定联系人发起语音。
其中,所述指定联系人是指控制密钥轮换请求的负责人。
进一步地,所述预设时间的取值可以根据具体场景进行任意配置。
通过上述实施方式,能够提醒所述指定联系人对所述提示信息的接收。
在本发明的至少一个实施例中,当检测到所述轮换请求响应不成功时,所述获取单元115获取所述轮换请求的请求编号,所述生成单元110根据所述请求编号生成告警信息,进一步地,所述确定单元113根据所述告警信息确定告警形式,所述发送单元116以所述告警形式向所述指定联系人发送所述告警信息。
其中,所述告警形式包括:邮件形式、语音形式、短信形式等。
通过上述实施方式,能够确定合适的告警形式发送所述告警信息。
由以上技术方案可以看出,本发明通过对所述所有存量数据进行密钥轮换,提高了所述所有存量数据的安全等级。
如图3所示,是本发明实现密钥轮换方法的较佳实施例的电子设备的结构示意图。
在本发明的一个实施例中,所述电子设备1包括,但不限于,存储器12、处理器13,以及存储在所述存储器12中并可在所述处理器13上运行的计算机程序,例如密钥轮换程序。
本领域技术人员可以理解,所述示意图仅仅是电子设备1的示例,并不构成对电子设备1的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备1还可以包括输入输出设备、网络接入设备、总线等。
所述处理器13可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器13是所述电子设备1的运算核心和控制中心,利用各种接口和线路连接整个电子设备1的各个部分,及获取所述电子设备1的操作***以及安装的各类应用程序、程序代码等。
所述处理器13获取所述电子设备1的操作***以及安装的各类应用程序。所述处理器13获取所述应用程序以实现上述各个密钥轮换方法实施例中的步骤,例如图1所示的步骤。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器13获取,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述电子设备1中的获取过程。例如,所述计算机程序可以被分割成生成单元110、提取单元111、加密单元112、确定单元113、解密单元114、获取单元115及发送单元116。
所述存储器12可用于存储所述计算机程序和/或模块,所述处理器13通过运行或获取存储在所述存储器12内的计算机程序和/或模块,以及调用存储在存储器12内的数据,实现所述电子设备1的各种功能。所述存储器12可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器12可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。
所述存储器12可以是电子设备1的外部存储器和/或内部存储器。进一步地,所述存储器12可以是具有实物形式的存储器,如内存条、TF卡(Trans-flash Card)等等。
所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器获取时,可实现上述各个方法实施例的步骤。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可获取文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
结合图1,所述电子设备1中的所述存储器12存储多个指令以实现一种密钥轮换方法,所述处理器13可获取所述多个指令从而实现:生成多个密钥对,并为所述多个密钥对建立索引;从所述多个密钥对中提取任意密钥对,并从配置库中获取所有存量数据;采用所述任意密钥对中的任意公钥对所述所有存量数据进行加密运算,得到所述所有存量数据对应的第一密文;当接收到轮换请求时,根据索引确定所述任意公钥对应的任意私钥;采用所述任意私钥对所述第一密文进行解密运算,得到明文;从所述多个密钥对中提取目标密钥对;采用所述目标密钥对中的目标公钥对所述明文进行加密运算,生成第二密文,以响应所述轮换请求。
具体地,所述处理器13对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。***权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (10)
1.一种密钥轮换方法,其特征在于,所述密钥轮换方法包括:
生成多个密钥对,并为所述多个密钥对建立索引;
从所述多个密钥对中提取任意密钥对,并从配置库中获取所有存量数据;
采用所述任意密钥对中的任意公钥对所述所有存量数据进行加密运算,得到所述所有存量数据对应的第一密文;
当接收到轮换请求时,根据索引确定所述任意公钥对应的任意私钥;
采用所述任意私钥对所述第一密文进行解密运算,得到明文;
从所述多个密钥对中提取目标密钥对;
采用所述目标密钥对中的目标公钥对所述明文进行加密运算,生成第二密文,以响应所述轮换请求。
2.如权利要求1所述的密钥轮换方法,其特征在于,所述生成多个密钥对包括:
对于每个密钥对,获取预设位数,并生成具有所述预设位数的第一伪随机数及第二伪随机数;
采用费马测试方法检测所述第一伪随机数及所述第二伪随机数是否为质数;
当检测到所述第一伪随机数及所述第二伪随机数均为质数时,将所述第一伪随机数及所述第二伪随机数进行相乘运算,得到目标数值;
计算所述第一伪随机数与所述第二伪随机数之间的最小公倍数;
采用伪随机数生成器生成大于预设数值且小于所述最小公倍数的第一候选值,并采用辗转相除法确定所述第一候选值与所述最小公倍数之间的最大公约数;
当检测到所述最大公约数为所述预设数值时,将所述第一候选值确定为第一数值,并将所述目标数值及所述第一数值确定为密钥对中的公钥;
采用伪随机数生成器生成大于所述预设数值且小于所述最小公倍数的第二候选值,将所述第二候选值及所述第一数值的乘积与所述最小公倍数进行取余运算,得到余数;
当检测到所述余数为所述预设数值时,将所述第二候选值确定为第二数值,并将所述目标数值及所述第二数值确定为密钥对中的私钥。
3.如权利要求2所述的密钥轮换方法,其特征在于,所述生成具有所述预设位数的第一伪随机数包括:
从口令库中获取任意口令;
将所述任意口令输入至单向散列函数中,得到散列值;
确定所述散列值的位数,得到第一位数,并将所述预设位数与所述第一位数的差值确定为第二位数;
采用混合线性同余法生成具有所述第二位数的任意数;
将所述散列值与所述任意数进行拼接,得到所述第一伪随机数。
4.如权利要求1所述的密钥轮换方法,其特征在于,所述采用所述任意密钥对中的任意公钥对所述所有存量数据进行加密运算,得到所述所有存量数据对应的第一密文包括:
确定所述任意密钥对中的任意公钥,并确定所述任意公钥的第一数值及目标数值;
采用消息摘要算法计算所述所有存量数据,得到第一数据;
对所述第一数据进行次数为所述第一数值的幂运算,得到第二数据;
将所述第二数据与所述目标数值进行取余运算,得到所述第一密文。
5.如权利要求1所述的密钥轮换方法,其特征在于,所述密钥轮换方法还包括:
当检测到数据保存请求时,根据所述数据保存请求生成所述轮换请求;及/或
当检测到所述任意密钥对的有效期届满时,生成所述轮换请求。
6.如权利要求1所述的密钥轮换方法,其特征在于,所述采用所述任意私钥对所述第一密文进行解密运算,得到明文包括:
确定所述任意私钥的第二数值及目标数值;
对所述第一密文进行次数为所述第二数值的幂运算,得到第三数据;
将所述第三数据与所述目标数值进行取余运算,得到第四数据;
采用消息摘要算法计算所述第四数据,得到所述明文。
7.如权利要求1所述的密钥轮换方法,其特征在于,在生成第二密文后,所述密钥轮换方法还包括:
获取所述轮换请求的请求编号;
根据所述请求编号及所述第二密文生成提示信息;
将所述提示信息发送至指定联系人的终端设备;
当检测到所述提示信息在预设时间内未被接收时,向所述指定联系人发起语音。
8.一种密钥轮换装置,其特征在于,所述密钥轮换装置包括:
生成单元,用于生成多个密钥对,并为所述多个密钥对建立索引;
提取单元,用于从所述多个密钥对中提取任意密钥对,并从配置库中获取所有存量数据;
加密单元,用于采用所述任意密钥对中的任意公钥对所述所有存量数据进行加密运算,得到所述所有存量数据对应的第一密文;
确定单元,用于当接收到轮换请求时,根据索引确定所述任意公钥对应的任意私钥;
解密单元,用于采用所述任意私钥对所述第一密文进行解密运算,得到明文;
所述提取单元,还用于从所述多个密钥对中提取目标密钥对;
所述加密单元,还用于采用所述目标密钥对中的目标公钥对所述明文进行加密运算,生成第二密文,以响应所述轮换请求。
9.一种电子设备,其特征在于,所述电子设备包括:
存储器,存储至少一个指令;及
处理器,获取所述存储器中存储的指令以实现如权利要求1至7中任意一项所述的密钥轮换方法。
10.一种计算机可读存储介质,其特征在于:所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器获取以实现如权利要求1至7中任意一项所述的密钥轮换方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010467085.XA CN111698088B (zh) | 2020-05-28 | 2020-05-28 | 密钥轮换方法、装置、电子设备及介质 |
PCT/CN2021/096434 WO2021239059A1 (zh) | 2020-05-28 | 2021-05-27 | 密钥轮换方法、装置、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010467085.XA CN111698088B (zh) | 2020-05-28 | 2020-05-28 | 密钥轮换方法、装置、电子设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111698088A true CN111698088A (zh) | 2020-09-22 |
CN111698088B CN111698088B (zh) | 2022-10-18 |
Family
ID=72478684
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010467085.XA Active CN111698088B (zh) | 2020-05-28 | 2020-05-28 | 密钥轮换方法、装置、电子设备及介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111698088B (zh) |
WO (1) | WO2021239059A1 (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112651034A (zh) * | 2020-12-21 | 2021-04-13 | 山东山大鸥玛软件股份有限公司 | 一种基于密码本的一次一密可替换加密算法、组件及设备 |
CN112751852A (zh) * | 2020-12-29 | 2021-05-04 | 平安普惠企业管理有限公司 | 数据传输方法及相关设备 |
CN112948851A (zh) * | 2021-02-25 | 2021-06-11 | 深圳壹账通智能科技有限公司 | 用户认证方法、装置、服务器及存储介质 |
CN113162678A (zh) * | 2021-03-31 | 2021-07-23 | 北京微纳星空科技有限公司 | 用于密钥切换、数据传输的方法、终端、电子设备和介质 |
WO2021239059A1 (zh) * | 2020-05-28 | 2021-12-02 | 平安科技(深圳)有限公司 | 密钥轮换方法、装置、电子设备及介质 |
CN114554486A (zh) * | 2022-01-06 | 2022-05-27 | 北京全路通信信号研究设计院集团有限公司 | 一种信息安全传输的密钥管理方法及*** |
CN118171307A (zh) * | 2024-05-15 | 2024-06-11 | 威海市奥讯软件有限公司 | 基于物联网的用于计算机软件开发的数据加密方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114785501B (zh) * | 2022-05-30 | 2024-05-17 | 建信金融科技有限责任公司 | 数据判等方法、设备及存储介质 |
CN116755940B (zh) * | 2023-08-15 | 2024-03-22 | 深圳市东信时代信息技术有限公司 | 文件还原方法、装置、设备及介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103744976A (zh) * | 2014-01-13 | 2014-04-23 | 北京工业大学 | 一种基于同态加密的图像安全检索方法 |
US20180123781A1 (en) * | 2016-10-28 | 2018-05-03 | Microsoft Technology Licensing, Llc | Fault tolerant automatic secret rotation |
CN108604983A (zh) * | 2015-02-14 | 2018-09-28 | 瓦利梅尔公司 | 通过域名服务对私钥的安全的委托分发 |
CN108965279A (zh) * | 2018-07-04 | 2018-12-07 | 北京车和家信息技术有限公司 | 数据处理方法、装置、终端设备及计算机可读存储介质 |
CN110233736A (zh) * | 2019-06-19 | 2019-09-13 | 核芯互联(北京)科技有限公司 | 一种数字签名生成方法、验证方法、装置、设备、介质 |
CN110798315A (zh) * | 2019-11-11 | 2020-02-14 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置及终端 |
CN110839026A (zh) * | 2019-11-12 | 2020-02-25 | 深圳市网心科技有限公司 | 基于区块链的数据处理方法及相关设备 |
CN110839035A (zh) * | 2019-11-19 | 2020-02-25 | 深圳前海环融联易信息科技服务有限公司 | 路径访问控制的方法、装置、计算机设备及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105721393A (zh) * | 2014-12-02 | 2016-06-29 | 阿里巴巴集团控股有限公司 | 数据安全加密的方法及装置 |
US10491386B2 (en) * | 2017-06-01 | 2019-11-26 | International Business Machines Corporation | Slice-level keyed encryption with support for efficient rekeying |
CN107526974B (zh) * | 2017-08-03 | 2020-08-11 | 海光信息技术有限公司 | 一种信息密码保护装置和方法 |
CN111698088B (zh) * | 2020-05-28 | 2022-10-18 | 平安科技(深圳)有限公司 | 密钥轮换方法、装置、电子设备及介质 |
-
2020
- 2020-05-28 CN CN202010467085.XA patent/CN111698088B/zh active Active
-
2021
- 2021-05-27 WO PCT/CN2021/096434 patent/WO2021239059A1/zh active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103744976A (zh) * | 2014-01-13 | 2014-04-23 | 北京工业大学 | 一种基于同态加密的图像安全检索方法 |
CN108604983A (zh) * | 2015-02-14 | 2018-09-28 | 瓦利梅尔公司 | 通过域名服务对私钥的安全的委托分发 |
US20180123781A1 (en) * | 2016-10-28 | 2018-05-03 | Microsoft Technology Licensing, Llc | Fault tolerant automatic secret rotation |
CN109891847A (zh) * | 2016-10-28 | 2019-06-14 | 微软技术许可有限责任公司 | 容错自动秘密轮换 |
CN108965279A (zh) * | 2018-07-04 | 2018-12-07 | 北京车和家信息技术有限公司 | 数据处理方法、装置、终端设备及计算机可读存储介质 |
CN110233736A (zh) * | 2019-06-19 | 2019-09-13 | 核芯互联(北京)科技有限公司 | 一种数字签名生成方法、验证方法、装置、设备、介质 |
CN110798315A (zh) * | 2019-11-11 | 2020-02-14 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置及终端 |
CN110839026A (zh) * | 2019-11-12 | 2020-02-25 | 深圳市网心科技有限公司 | 基于区块链的数据处理方法及相关设备 |
CN110839035A (zh) * | 2019-11-19 | 2020-02-25 | 深圳前海环融联易信息科技服务有限公司 | 路径访问控制的方法、装置、计算机设备及存储介质 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021239059A1 (zh) * | 2020-05-28 | 2021-12-02 | 平安科技(深圳)有限公司 | 密钥轮换方法、装置、电子设备及介质 |
CN112651034A (zh) * | 2020-12-21 | 2021-04-13 | 山东山大鸥玛软件股份有限公司 | 一种基于密码本的一次一密可替换加密算法、组件及设备 |
CN112751852A (zh) * | 2020-12-29 | 2021-05-04 | 平安普惠企业管理有限公司 | 数据传输方法及相关设备 |
WO2022142038A1 (zh) * | 2020-12-29 | 2022-07-07 | 平安普惠企业管理有限公司 | 数据传输方法及相关设备 |
CN112948851A (zh) * | 2021-02-25 | 2021-06-11 | 深圳壹账通智能科技有限公司 | 用户认证方法、装置、服务器及存储介质 |
CN113162678A (zh) * | 2021-03-31 | 2021-07-23 | 北京微纳星空科技有限公司 | 用于密钥切换、数据传输的方法、终端、电子设备和介质 |
CN114554486A (zh) * | 2022-01-06 | 2022-05-27 | 北京全路通信信号研究设计院集团有限公司 | 一种信息安全传输的密钥管理方法及*** |
CN114554486B (zh) * | 2022-01-06 | 2024-04-30 | 北京全路通信信号研究设计院集团有限公司 | 一种信息安全传输的密钥管理方法及*** |
CN118171307A (zh) * | 2024-05-15 | 2024-06-11 | 威海市奥讯软件有限公司 | 基于物联网的用于计算机软件开发的数据加密方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111698088B (zh) | 2022-10-18 |
WO2021239059A1 (zh) | 2021-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111698088B (zh) | 密钥轮换方法、装置、电子设备及介质 | |
CN110324143B (zh) | 数据传输方法、电子设备及存储介质 | |
CN112751852B (zh) | 数据传输方法及相关设备 | |
CN108681966B (zh) | 一种基于区块链的信息监管方法及装置 | |
US7546327B2 (en) | Platform independent randomness accumulator for network applications | |
CN109493054B (zh) | 多链信息管理方法、装置、存储介质和区块链身份解析器 | |
CN112133396B (zh) | 医疗数据共享方法、装置、电子设备及介质 | |
CN112948851A (zh) | 用户认证方法、装置、服务器及存储介质 | |
US11645409B2 (en) | Search and access pattern hiding verifiable searchable encryption for distributed settings with malicious servers | |
CN117240625B (zh) | 一种涉及防篡改的数据处理方法、装置及电子设备 | |
US20230237437A1 (en) | Apparatuses and methods for determining and processing dormant user data in a job resume immutable sequential listing | |
CN111404892B (zh) | 数据监管方法、装置和服务器 | |
CN110532734A (zh) | 一种基于安全多方计算的隐私时间戳的数字版权方法及*** | |
CN113822675A (zh) | 基于区块链的报文处理方法、装置、设备及存储介质 | |
CN114172664B (zh) | 数据加密、数据解密方法、装置、电子设备及存储介质 | |
CN113378224B (zh) | 医学影像存储方法、装置、设备及存储介质 | |
CN117349895B (zh) | 基于区块链的汽车金融数字档案管理方法及装置 | |
CN111475690A (zh) | 字符串的匹配方法和装置、数据检测方法、服务器 | |
CN111078649A (zh) | 基于区块链的云上文件存储方法、装置及电子设备 | |
CN115361198A (zh) | 解密方法、加密方法、装置、计算机设备和存储介质 | |
KR20230086094A (ko) | 빅데이터 저장 서버에 저장된 데이터에 대한 액세스를 관리하는 빅데이터 액세스 관리 시스템 서버 | |
CN112685706A (zh) | 请求鉴权方法及相关设备 | |
CN112039921A (zh) | 用于停车访问的验证方法、停车用户终端和节点服务器 | |
CN117499159B (zh) | 一种基于区块链的数据交易方法、装置及电子设备 | |
CN113886493B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |