CN116208322A - 秘钥软硬切换实现的方法、装置、设备和存储介质 - Google Patents

秘钥软硬切换实现的方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN116208322A
CN116208322A CN202211694388.0A CN202211694388A CN116208322A CN 116208322 A CN116208322 A CN 116208322A CN 202211694388 A CN202211694388 A CN 202211694388A CN 116208322 A CN116208322 A CN 116208322A
Authority
CN
China
Prior art keywords
password
request
key
decryption
encryption
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.)
Pending
Application number
CN202211694388.0A
Other languages
English (en)
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.)
Nanjing Suning Yifubao Network Technology Co ltd
Original Assignee
Nanjing Suning Yifubao Network Technology 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 Nanjing Suning Yifubao Network Technology Co ltd filed Critical Nanjing Suning Yifubao Network Technology Co ltd
Priority to CN202211694388.0A priority Critical patent/CN116208322A/zh
Publication of CN116208322A publication Critical patent/CN116208322A/zh
Pending legal-status Critical Current

Links

Images

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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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/0442Network 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • 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/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves

Abstract

本申请涉及一种秘钥软硬切换实现的方法、装置、设备和存储介质,该方法包括:获取配置平台的配置参数;接收应用服务器的密码服务请求;根据所述配置参数和所述密码服务请求的种类和数量确定密码服务的方式,并得到密码服务结果;将所述密码服务结果返回所述应用服务器。本申请可以根据密码服务请求的种类和数量选择密码服务方式,实现软硬加解密自由切换的同时,能够保障硬件设备进行加解密安全性,和充分利用软件加解密的易扩容性,实现安全和效率的平衡。

Description

秘钥软硬切换实现的方法、装置、设备和存储介质
技术领域
本申请涉及加密技术领域,特别是涉及一种秘钥软硬切换实现的方法、装置、设备和存储介质。
背景技术
网络安全的重要性日益提升,当前,网络安全形势异常严峻,重要网络和信息系统的安全现状很不理想。使用自己研发的密码算法去解决网络安全最有效、最可靠、最经济的方式。
目前,一般交易使用硬件加密机实现数据加解密,但是在大促时期,加解密服务需求会爆量增长时,当硬件加密机性能不足不能及时得到扩容的时候,临时方式是使用软解密方式来替换硬件加密机,但是各个业务系统无法统一切换,而且软件解密存在秘钥存储问题,敏感数据加解密可以采用硬件或软件来实现,采用硬件设备进行加解密安全性比较高,但是硬件成本比较高,使用软件实现成本低,但是安全性又不能得到保障。
发明内容
基于此,本申请提供了一种秘钥软硬切换实现的方法、装置、设备和存储介质,以解决现有技术中存在的问题。
第一方面,提供一种秘钥软硬切换实现的方法,该方法包括:
获取配置平台的配置参数;
接收应用服务器的密码服务请求;
根据所述配置参数和所述密码服务请求的种类和数量确定密码服务的方式,并得到密码服务结果;
将所述密码服务结果返回所述应用服务器。
根据本申请实施例中一种可实现的方式,所述根据所述配置参数和所述密码服务请求的种类和数量确定密码服务的方式,包括:
若所述密码请求为密码类敏感数据则由加密机根据所述配置参数进行加解密;
若所述密码请求为非密码类敏感数据且数量小于预设阈值,则由加密机根据所述配置参数进行加解密;
若所述密码请求为非密码类敏感数据且数量不小于预设阈值,则由加密机和密码服务包根据所述配置参数进行加解密。
根据本申请实施例中一种可实现的方式,所述若所述密码请求为非密码类敏感数据且数量不小于预设阈值,则由加密机和密码服务包根据所述配置参数进行加解密,包括:
在确定所述密码请求为非密码类敏感数据且数量不小于预设阈值之后,根据所述配置参数中的配置比例因子将所述密码请求分为第一数据和第二数据,再由加密机对所述第一数据进行加解密,由密码服务包对所述第二数据加解密。
根据本申请实施例中一种可实现的方式,所述若所述密码请求为密码类敏感数据则由加密机根据所述配置参数进行加解密,包括:
采用SM2解密算法对所述配置参数中的密钥密文进行解密,得到密钥明文,并将所述密钥明文与对应的所述密钥密文以及与所述密钥密文对应的密钥版本进行存储;
若所述密码服务请求为加密请求,则加密机根据所述密码明文和第一密码算法对所述密码服务请求中的文本进行加密,得到第一加密结果,根据第二密码算法对所述密码服务请求中的文本进行摘要生产,得到第一摘要,并返回所述第一加密结果、第一摘要和所述密钥版本;
若所述密码服务请求为解密请求,则加密机根据解密请求中的密钥版本,获取对应的密钥明文,根据所述密钥明文和第一密码算法对所述解密请求中的文本进行解密,得到第一解密结果,根据第二密码算法对所述第一解密结果进行摘要生产,得到第二摘要,若所述第二摘要和所述解密请求中携带的摘要一致,则返回第一解密结果。
根据本申请实施例中一种可实现的方式,所述若所述密码请求为非密码类敏感数据且数量小于预设阈值,则由加密机根据所述配置参数进行加解密,包括:
采用SM2解密算法对所述配置参数中的密钥密文进行解密,得到密钥明文,并将所述密钥明文与对应的所述密钥密文以及与所述密钥密文对应的密钥版本进行存储;
若所述密码服务请求为加密请求,则加密机根据所述密码明文和第三密码算法对所述密码服务请求中的文本进行加密,得到第二加密结果,根据第二密码算法对所述密码服务请求中的文本进行摘要生产,得到第三摘要,并返回所述第二加密结果、第三摘要和所述密钥版本;
若所述密码服务请求为解密请求,则加密机根据解密请求中的密钥版本,获取对应的密钥明文,根据所述密钥明文和第三密码算法对所述解密请求中的文本进行解密,得到第二解密结果,根据第二密码算法对所述第二解密结果进行摘要生产,得到第四摘要,若所述第四摘要和所述解密请求中携带的摘要一致,则返回第二解密结果。
根据本申请实施例中一种可实现的方式,所述第一密码算法为对称加密算法。
根据本申请实施例中一种可实现的方式,若密钥密文存在更新,所述配置平台将更新后的密钥密文和所述密钥密文对应的版本发送给所述密码服务包。
第二方面,提供了一种秘钥软硬切换实现的装置,该装置包括:
获取模块:获取配置平台的配置参数;
接收模块:接收应用服务器的密码服务请求;
处理模块:根据所述配置参数和所述密码服务请求的种类和数量确定密码服务的方式,并得到密码服务结果;
返回模块:将所述密码服务结果返回所述应用服务器。
第三方面,提供了一种计算机设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机指令,所述计算机指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述第一方面中涉及的方法。
第四方面,提供了一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令用于使计算机执行上述第一方面中涉及的方法。
根据本申请实施例所提供的技术内容,本申请通过获取配置平台的配置参数;接收应用服务器的密码服务请求;根据所述配置参数和所述密码服务请求的种类和数量确定密码服务的方式,并得到密码服务结果;本申请通过根据密码服务请求的种类和数量选择密码服务方式,实现软硬加解密自由切换的同时,能够保障硬件设备进行加解密安全性,和充分利用软件加解密的易扩容性,实现安全和效率的平衡。
附图说明
图1为一个实施例中任务处理方法的流程示意图;
图2为一个实施例中任务处理装置的结构框图;
图3为一个实施例中计算机设备的示意性结构图。
具体实施方式
以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为本申请实施例提供的一种任务处理方法的流程图,如图1所示,该方法可以包括以下步骤:
步骤101:获取配置平台的配置参数。
具体地,密码服务包应用启动时,密码服务包自行去配置平台读取配置,配置参数包括密钥密文,密钥密文对应的密钥版本以及配置比例因子。
步骤102:接收应用服务器的密码服务请求。
具体地,密码服务包接收各个应用服务器的密码服务请求,应用服务器是用于对用户终端的服务进行回应和处理的服务器。
步骤103:根据配置参数和密码服务请求的种类和数量确定密码服务的方式,并得到密码服务结果。
具体地,密码服务包使用的秘钥存储在硬件加密机中,密码服务包启动时会自动调用加密机获取秘钥存储在本地安全存储模块中,秘钥的安全性能够得到保障;同时利用加密机配置平台,可以控制密码服务包使用硬件加密机进行加解密还是本地软件服务进行加解密;当硬件性能不足时,硬件加密机不能及时得到扩容,可以通过控制密码服务包的加解密方式,调整软件、硬件加解密使用比例,快速提升加解密的吞吐量,缓解系统压力。
步骤104:将密码服务结果返回应用服务器。
可以看出,本申请实施例通过获取配置平台的配置参数;接收应用服务器的密码服务请求;根据配置参数和密码服务请求的种类和数量确定密码服务的方式,并得到密码服务结果;本申请通过根据密码服务请求的种类和数量选择密码服务方式,实现软硬加解密自由切换的同时,能够保障硬件设备进行加解密安全性,和充分利用软件加解密的易扩容性,实现安全和效率的平衡。
下面结合实施例对上述步骤103即“根据配置参数和密码服务请求的种类和数量确定密码服务的方式,并得到密码服务结果”进行详细描述。
在本申请的一个实施例中,步骤103包括三种情形:若密码请求为密码类敏感数据则由加密机根据配置参数进行加解密;若密码请求为非密码类敏感数据且数量小于预设阈值,则由加密机根据配置参数进行加解密;若密码请求为非密码类敏感数据且数量不小于预设阈值,则由加密机和密码服务包根据配置参数进行加解密。
具体地,密码机是用于确保数据安全的密码设备,主要可以实现数据加密、转加密、解密、媒体访问控制(MediaAccessControl,MAC)产生和校验、签名验证等密码服务功能。由于硬件加密机在进行加解密时具有较高的安全性,但是由于密码机的成本较高,因此在有限的硬件密码机情况下其处理能力有限。因此,在存在大量密码处理需求的情况下,如何及时且安全的对各种密码请求进行处理,本申请首先对各种密码请求进行分类,一类是通常密码类等数据量少的加解密需求一次加密机调用即可完成加解密服务,非密码类敏感数据,如通讯报文、身份证+姓名+手机号+地址等组合数据会需要多次加密机调用,本专利区分数据量大小的加解密服务。数据量大的加解密需求对外一次接口调用完成。数据量大的加解密服务由加密平台判断数据量,按照加密机的要求对数据进行分割和填充,一次或多次请求加密机服务,结果进行汇总合成,返回给应用系统。应用系统请求加密平台服务只需要一次接口调用。
在本申请的一个实施例中,若密码请求为非密码类敏感数据且数量不小于预设阈值,则由加密机和密码服务包根据配置参数进行加解密,包括:在确定密码请求为非密码类敏感数据且数量不小于预设阈值之后,根据配置参数中的配置比例因子将密码请求分为第一数据和第二数据,再由加密机对第一数据进行加解密,由密码服务包对第二数据加解密。
具体地,由于密码服务请求的数据为非密码类敏感数据时,且数据量大于预设的阈值时,通过预先设置的配重比例因子对数据进行分类,分成第一数据和第二数据,再分别由加密机和密码服务包对第一数据和第二数据进行加解密,而具体的加解密方式参考下文中加密机对数据进行加解密的方式。
在本申请的一个实施例中,若密码请求为密码类敏感数据则由加密机根据配置参数进行加解密,包括:采用SM2解密算法对配置参数中的密钥密文进行解密,得到密钥明文,并将密钥明文与对应的密钥密文以及与密钥密文对应的密钥版本进行存储;若密码服务请求为加密请求,则加密机根据密码明文和第一密码算法对密码服务请求中的文本进行加密,得到第一加密结果,根据第二密码算法对密码服务请求中的文本进行摘要生产,得到第一摘要,并返回第一加密结果、第一摘要和密钥版本;若密码服务请求为解密请求,则加密机根据解密请求中的密钥版本,获取对应的密钥明文,根据密钥明文和第一密码算法对解密请求中的文本进行解密,得到第一解密结果,根据第二密码算法对第一解密结果进行摘要生产,得到第二摘要,若第二摘要和解密请求中携带的摘要一致,则返回第一解密结果。
具体地,使用国密SM2算法产生一对非对称密钥,其中的非对称加密算法为椭圆加密算法(Ellipticcurvecryptography,ECC)。ECC是一种公钥加密体制,最初由Koblitz和Miller两人于1985年提出,其数学基础是利用椭圆曲线上的有理点构成Abel加法群上椭圆离散对数的计算困难性。公钥密码体制根据其所依据的难题一般分为三类:大整数分解问题类、离散对数问题类、椭圆曲线类。有时也把椭圆曲线类归为离散对数类。椭圆加密算法的优点有:一是安全性高,有研究表示160位的椭圆密钥与1024位的RSA密钥安全性相同。二是处理速度快,在私钥的加密解密速度上,ECC算法比RSA、DSA速度更快。三是存储空间占用小,带宽要求也比较低。
产生SM2密钥对的原理为:
Step1、用随机数发生器产生随机数k∈[1,n-1]k∈[1,n-1],作为私钥d。
Step2、基于私钥,通过算法公式P(x,y)=d*G(x,y)生成公钥p。
根据SM2算法对冲配置平台调取的密钥密文进行解密,获取密钥明文,和对应的密钥版本,并将密钥密文、密钥明文和对应的密钥版本存储在数据库中。
通过服务器对应的密码机,生成服务器连接的每一节点的公私钥对,包括:
步骤1,随机选取椭圆曲线上的一个点作为基点,椭圆曲线是满足非对称加密算法的曲线;
步骤2,根据基点和椭圆曲线,基于第二密码机,生成每一节点的公私钥对,公私钥对中的公钥由基点和公私钥对中的私钥确定。其中,步骤301中提到的椭圆曲线是指ECC(EllipticCurveCryptography,椭圆曲线加密)中用到的一条离散椭圆曲线,可以表示为:
T=(p,a,b,G,n,h)
其中,p、a、b为确定一条椭圆曲线的参数,p为质数,(modp)运算)G为基点,n为点G的阶,h是椭圆曲线上所有点的个数m与n相除的商的整数部分。在一个有限域Fp上的椭圆曲线上存在乘法法则,即:Q=kG其中,Q、k、G都是椭圆曲线上的点,椭圆曲线加密的加密机制依据:在椭圆曲线上已知G和kG求k是非常困难的,而已知k和G求kG是非常容易的。将G作为基点、k作为私钥、Q即为公钥。
进而在判断密码服务请求为加密请求时,则加密机根据密码明文和第一密码算法比如SM4密码算法对密码服务请求中的文本进行加密,得到第一加密结果,根据第二密码算法比如SM3密码算法对密码服务请求中的文本进行摘要生产,得到第一摘要,并返回第一加密结果、第一摘要和密钥版本。
若密码服务请求为解密请求,则加密机根据解密请求中的密钥版本,根据密码版确定密码版本对应的密钥明文,根据密钥明文和第一密码算法比如SM4密码算法对解密请求中的文本进行解密,得到第一解密结果,根据第二密码算法比如SM3密码算法对第一解密结果进行摘要生产,得到第二摘要,若第二摘要和解密请求中携带的摘要一致,则返回第一解密结果。
SM3密码杂凑算法是中国国家密码管理局2010年公布的中国商用密码杂凑算法标准。具体算法标准原始文本参见参考文献[1]。该算法于2012年发布为密码行业标准(GM/T0004-2012),2016年发布为国家密码杂凑算法标准(GB/T32905-2016)。
SM3适用于商用密码应用中的数字签名和验证,是在SHA-256基础上改进实现的一种算法,其安全性和SHA-256相当。SM3和MD5的迭代过程类似,也采用Merkle-Damgard结构。消息分组长度为512位,摘要值长度为256位。整个算法的执行过程可以概括成四个步骤:消息填充、消息扩展、迭代压缩、输出结果。
2012年3月,国家密码管理局正式公布了包含SM4分组密码算法在内的《祖冲之序列密码算法》等6项密码行业标准。与DES和AES算法类似,SM4算法是一种分组密码算法。其分组长度为128bit,密钥长度也为128bit。加密算法与密钥扩展算法均采用32轮非线性迭代结构,以字(32位)为单位进行加密运算,每一次迭代运算均为一轮变换函数F。SM4算法加/解密算法的结构相同,只是使用轮密钥相反,其中解密轮密钥是加密轮密钥的逆序。
SM4有很高的灵活性,所采用的S盒可以灵活地被替换,以应对突发性的安全威胁。算法的32轮迭代采用串行处理,这与AES中每轮使用代换和混淆并行地处理整个分组有很大不同。首先,将明文转化为字节,由于SM4加密算法按照128个位进行分组,所以很大几率会出现最后一个分组不够128位的情况,需要进行填充,填充方式有很多,比如ZeroPadding、PKCS7Padding、PKCS5Padding,不管使用哪种方式,最后每个分组都是128位。然后对每个分组执行上面的操作,每个分组按照32位一个字分成四个字,根据一定的规则计算出下一轮的结果。进行32轮的计算,最后将加密的结果逆序之后就可以了。解密时只是将轮密钥的使用顺序进行逆向进行。
根据本申请实施例中一种可实现的方式,若密码请求为非密码类敏感数据且数量小于预设阈值,则由加密机根据配置参数进行加解密,包括:采用SM2解密算法对配置参数中的密钥密文进行解密,得到密钥明文,并将密钥明文与对应的密钥密文以及与密钥密文对应的密钥版本进行存储;若密码服务请求为加密请求,则加密机根据密码明文和第三密码算法对密码服务请求中的文本进行加密,得到第二加密结果,根据第二密码算法对密码服务请求中的文本进行摘要生产,得到第三摘要,并返回第二加密结果、第三摘要和密钥版本;若密码服务请求为解密请求,则加密机根据解密请求中的密钥版本,获取对应的密钥明文,根据密钥明文和第三密码算法对解密请求中的文本进行解密,得到第二解密结果,根据第二密码算法对第二解密结果进行摘要生产,得到第四摘要,若第四摘要和解密请求中携带的摘要一致,则返回第二解密结果。
具体参考见上文密码请求为为密码类敏感数据时的情形。
而对于数据密码请求为非密码类敏感数据且数量不小于预设阈值时,分别由加密机和密码服务包进行密码服务时,其步骤同密码请求为敏感类数据时的情形,只是执行主体为密码机或者密码服务包中的一个。其他不予赘言。
根据本申请实施例中一种可实现的方式,第一密码算法为对称加密算法。
根据本申请实施例中一种可实现的方式,若密钥密文存在更新,配置平台将更新后的密钥密文和密钥密文对应的版本发送给密码服务包。
具体地,秘钥有更新时,配置平台配置新秘钥的版本以及秘钥,配置之后会推送给密码服务包,密码服务包会将新秘钥调用加密机解密存储在本地缓存中,使用时,根据配置选取不同版本的秘钥进行加解密。
本申请的实施例通过在配置有限的硬件加密机资源的基础上,通过云缩容扩容加密平台服务器,即可实现大流量的加解密服务,平衡大促和非大促时期加解密服务的流量差异化需求,优化硬件资源投入,节约运营成本。密码服务包可以部署在各个应用系统中独立运行,动态调整软解还是硬解方式,可以指定应用软件加解密还是硬件加解密。区分数据量少(密码类数据)数据量多(非密码类敏感数据)的加解密需求。加密机一次加解密数据量有限制。通常密码类等数据量少的加解密需求一次加密机调用即可完成加解密服务,非密码类敏感数据,如通讯报文、身份证+姓名+手机号+地址等组合数据会需要多次加密机调用,本专利区分数据量大小的加解密服务。数据量大的加解密需求对外一次接口调用完成。
数据量大的加解密服务由加密平台判断数据量,按照加密机的要求对数据进行分割和填充,一次或多次请求加密机服务,结果进行汇总合成,返回给应用系统。应用系统请求加密平台服务只需要一次接口调用。
配置比例因子,控制软硬件加密比例。
加密机平台可以配置软硬件比例参数,通过调整参数值可以调整密码服务包使用软件加解密,还是硬件加密解密,也可以按照一定比例使用软件加解密,还是硬件加解密。
应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本申请中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
图2为本申请实施例提供的一种任务处理装置的结构示意图,如图2所示,该装置可以包括:获取模块201、接收模块202、处理模块203、返回模块204。其中各组成模块的主要功能如下:
获取模块201:获取配置平台的配置参数;
接收模块202:接收应用服务器的密码服务请求;
处理模块203:根据配置参数和密码服务请求的种类和数量确定密码服务的方式,并得到密码服务结果;
返回模块204:将密码服务结果返回应用服务器。
根据本申请提供的具体实施例,本申请所提供的技术方案可以具备以下优点:
获取配置平台的配置参数;接收应用服务器的密码服务请求;根据配置参数和密码服务请求的种类和数量确定密码服务的方式,并得到密码服务结果;本申请通过根据密码服务请求的种类和数量选择密码服务方式,实现软硬加解密自由切换的同时,能够保障硬件设备进行加解密安全性,和充分利用软件加解密的易扩容性,实现安全和效率的平衡。
上述各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,本申请实施例中可能会涉及到对用户数据的使用,在实际应用中,可以在符合所在国的适用法律法规要求的情况下(例如用户明确同意,对用户切实通知,用户明确授权等),在适用法律法规允许的范围内在本文描述的方案中使用用户特定的个人数据。
根据本申请的实施例,本申请还提供了一种计算机设备、一种计算机可读存储介质。本申请还提供了一种计算机设备,包括至少一个处理器,以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的计算机指令,计算机指令被至少一个处理器执行,以使至少一个处理器能够执行上述任一实施例所述任务处理方法。
如图3所示,是根据本申请实施例的计算机设备的框图。计算机设备旨在表示各种形式的数字计算机或移动装置。其中数字计算机可以包括台式计算机、便携式计算机、工作台、个人数字助理、服务器、大型计算机和其它适合的计算机。移动装置可以包括平板电脑、智能电话、可穿戴式设备等。
如图3所示,计算机设备300包括计算单元301、ROM302、RAM303、总线304以及输入/输出(I/O)接口305,计算单元301、ROM302以及RAM303通过总线304彼此相连。输入/输出(I/O)接口305也连接至总线304。
计算单元301可以根据存储在只读存储器(ROM)302中的计算机指令或者从存储单元308加载到随机访问存储器(RAM)303中的计算机指令,来执行本申请方法实施例中的各种处理。计算单元301可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元301可以包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。在一些实施例中,本申请实施例提供的方法可被实现为计算机软件程序,其被有形地包含于计算机可读存储介质,例如存储单元308。
RAM303还可存储设备300操作所需的各种程序和数据。计算机程序的部分或者全部可以经由ROM302和/或通信单元309而被载入和/或安装到设备300上。
计算机设备300中的输入单元306、输出单元307、存储单元308和通信单元309可以连接至I/O接口305。其中,输入单元306可以是诸如键盘、鼠标、触摸屏、麦克风等;输出单元307可以是诸如显示器、扬声器、指示灯等。设备300能够通过通信单元309与其他设备进行信息、数据等的交换。
需要说明的是,该设备还可以包括实现正常运行所必需的其他组件。也可以仅包含实现本申请方案所必需的组件,而不必包含图中所示的全部组件。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件和/或它们的组合中实现。
用于实施本申请的方法的计算机指令可以采用一个或多个编程语言的任何组合来编写。这些计算机指令可以提供给计算单元301,使得计算机指令当由诸如处理器等计算单元301执行时使执行本申请方法实施例中涉及的各步骤。
本申请还提供了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令用于使计算机执行上述任一实施例所述任务处理方法。
本申请提供的计算机可读存储介质可以是有形的介质,其可以包含或存储计算机指令,用以执行本申请方法实施例中涉及的各步骤。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的等形式的存储介质。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (10)

1.一种秘钥软硬切换实现的方法,其特征在于,该方法包括:
获取配置平台的配置参数;
接收应用服务器的密码服务请求;
根据所述配置参数和所述密码服务请求的种类和数量确定密码服务的方式,并得到密码服务结果;
将所述密码服务结果返回所述应用服务器。
2.根据权利要求1所述的秘钥软硬切换实现的方法,其特征在于,所述根据所述配置参数和所述密码服务请求的种类和数量确定密码服务的方式,包括:
若所述密码请求为密码类敏感数据则由加密机根据所述配置参数进行加解密;
若所述密码请求为非密码类敏感数据且数量小于预设阈值,则由加密机根据所述配置参数进行加解密;
若所述密码请求为非密码类敏感数据且数量不小于预设阈值,则由加密机和密码服务包根据所述配置参数进行加解密。
3.根据权利要求2所述的秘钥软硬切换实现的方法,其特征在于,所述若所述密码请求为非密码类敏感数据且数量不小于预设阈值,则由加密机和密码服务包根据所述配置参数进行加解密,包括:
在确定所述密码请求为非密码类敏感数据且数量不小于预设阈值之后,根据所述配置参数中的配置比例因子将所述密码请求分为第一数据和第二数据,再由加密机对所述第一数据进行加解密,由密码服务包对所述第二数据加解密。
4.根据权利要求2所述的秘钥软硬切换实现的方法,其特征在于,所述若所述密码请求为密码类敏感数据则由加密机根据所述配置参数进行加解密,包括:
采用SM2解密算法对所述配置参数中的密钥密文进行解密,得到密钥明文,并将所述密钥明文与对应的所述密钥密文以及与所述密钥密文对应的密钥版本进行存储;
若所述密码服务请求为加密请求,则加密机根据所述密码明文和第一密码算法对所述密码服务请求中的文本进行加密,得到第一加密结果,根据第二密码算法对所述密码服务请求中的文本进行摘要生产,得到第一摘要,并返回所述第一加密结果、第一摘要和所述密钥版本;
若所述密码服务请求为解密请求,则加密机根据解密请求中的密钥版本,获取对应的密钥明文,根据所述密钥明文和第一密码算法对所述解密请求中的文本进行解密,得到第一解密结果,根据第二密码算法对所述第一解密结果进行摘要生产,得到第二摘要,若所述第二摘要和所述解密请求中携带的摘要一致,则返回第一解密结果。
5.根据权利要求2所述的秘钥软硬切换实现的方法,其特征在于,所述若所述密码请求为非密码类敏感数据且数量小于预设阈值,则由加密机根据所述配置参数进行加解密,包括:
采用SM2解密算法对所述配置参数中的密钥密文进行解密,得到密钥明文,并将所述密钥明文与对应的所述密钥密文以及与所述密钥密文对应的密钥版本进行存储;
若所述密码服务请求为加密请求,则加密机根据所述密码明文和第三密码算法对所述密码服务请求中的文本进行加密,得到第二加密结果,根据第二密码算法对所述密码服务请求中的文本进行摘要生产,得到第三摘要,并返回所述第二加密结果、第三摘要和所述密钥版本;
若所述密码服务请求为解密请求,则加密机根据解密请求中的密钥版本,获取对应的密钥明文,根据所述密钥明文和第三密码算法对所述解密请求中的文本进行解密,得到第二解密结果,根据第二密码算法对所述第二解密结果进行摘要生产,得到第四摘要,若所述第四摘要和所述解密请求中携带的摘要一致,则返回第二解密结果。
6.根据权利要求4或5所述的秘钥软硬切换实现的方法,其特征在于,所述第一密码算法为对称加密算法。
7.根据权利要求1-5所述的任务处理方法,其特征在于,若密钥密文存在更新,所述配置平台将更新后的密钥密文和所述密钥密文对应的版本发送给所述密码服务包。
8.一种任务处理装置,其特征在于,该装置包括:
获取模块:获取配置平台的配置参数;
接收模块:接收应用服务器的密码服务请求;
处理模块:根据所述配置参数和所述密码服务请求的种类和数量确定密码服务的方式,并得到密码服务结果;
返回模块:将所述密码服务结果返回所述应用服务器。
9.一种计算机设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机指令,所述计算机指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令用于使计算机执行权利要求1至7中任一项所述的方法。
CN202211694388.0A 2022-12-28 2022-12-28 秘钥软硬切换实现的方法、装置、设备和存储介质 Pending CN116208322A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211694388.0A CN116208322A (zh) 2022-12-28 2022-12-28 秘钥软硬切换实现的方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211694388.0A CN116208322A (zh) 2022-12-28 2022-12-28 秘钥软硬切换实现的方法、装置、设备和存储介质

Publications (1)

Publication Number Publication Date
CN116208322A true CN116208322A (zh) 2023-06-02

Family

ID=86512067

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211694388.0A Pending CN116208322A (zh) 2022-12-28 2022-12-28 秘钥软硬切换实现的方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN116208322A (zh)

Similar Documents

Publication Publication Date Title
US11784801B2 (en) Key management method and related device
CN109716375B (zh) 区块链账户的处理方法、装置和存储介质
US10904231B2 (en) Encryption using multi-level encryption key derivation
CN108345806B (zh) 一种硬件加密卡和加密方法
US5231666A (en) Cryptographic method for updating financial records
US10944568B2 (en) Methods for constructing secure hash functions from bit-mixers
US20100020964A1 (en) Key generation method using quadratic-hyperbolic curve group
CN105531713A (zh) 从单个数据缓冲器生成多个安全散列
Abidi et al. Implementation of elliptic curve digital signature algorithm (ECDSA)
TW202113646A (zh) 非對稱密鑰中的私鑰生成和使用方法、裝置和設備
JP2008252299A (ja) 暗号処理システム及び暗号処理方法
US11349668B2 (en) Encryption device and decryption device
US11750403B2 (en) Robust state synchronization for stateful hash-based signatures
CN111294203B (zh) 信息传输方法
US8930687B1 (en) Secure distributed deduplication in encrypted data storage
US20210234709A1 (en) Integrated circuit performing authentication using challenge-response protocol and method of using the integrated circuit
WO2021129470A1 (zh) 基于多项式完全同态的二进制数据加密系统及方法
GB2498063A (en) Checking acceptance of a string by automaton
Iavich et al. Comparison and hybrid implementation of blowfish, twofish and rsa cryptosystems
CN112100144A (zh) 区块链文件共享方法、装置、存储介质及电子设备
CN110213050B (zh) 密钥生成方法、装置及存储介质
CN110611568B (zh) 基于多种加解密算法的动态加解密方法、装置、及设备
CN111368317A (zh) 一种计算机数据加密系统及方法
CN116208322A (zh) 秘钥软硬切换实现的方法、装置、设备和存储介质
CN111130788B (zh) 数据处理方法和系统、数据读取方法和iSCSI服务器

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