一种非对称加密密钥的动态生成方法及系统技术方案

技术编号:36949329 阅读:55 留言:0更新日期:2023-03-22 19:10
本发明专利技术属于密钥生成领域,提供了一种非对称加密密钥的动态生成方法及系统,所述服务器端接收到任务触发请求后生成初始随机公钥和私钥密钥对,并存储在服务器端中多个服务节点上,且多个所述服务节点共用一个密钥对;当接收到用户访问请求时,向客户端发送公钥,使得客户端利用公钥对需要传输的数据进行加密;接收到客户端的加密数据,利用私钥对所述加密数据进行解密,得到原文数据;当所述服务器端再次接收到任务触发请求时更新生成新的公钥和私钥密钥对,所述服务器端基于新的公钥和私钥密钥对重复上述过程;本发明专利技术将服务器端的多节点共用一个密钥对,且随时动态更新,防止某个节点因分配过多请求导致压力过大。节点因分配过多请求导致压力过大。节点因分配过多请求导致压力过大。

【技术实现步骤摘要】
一种非对称加密密钥的动态生成方法及系统


[0001]本专利技术属于密钥生成
,具体涉及一种非对称加密密钥的动态生成方法及系统。

技术介绍

[0002]本部分的陈述仅仅是提供了与本专利技术相关的
技术介绍
信息,不必然构成在先技术。
[0003]出于网络安全考虑,在web项目的使用过程中,用户通过浏览器与服务器进行数据交互时,为了防止数据传输过程中被截获篡改,应当对数据进行加密处理。目前使用最广泛最安全的加密方式是非对称加密,用户向服务器传输数据时使用公钥进行加密,在服务器使用私钥进行解密,黑客如果不能获取私钥,即使拦截到了用户的数据也无法对数据进行解密和篡改。
[0004]而在软件开发框架内置了非对称加密的功能(如在登录过程中对密码进行的加密),假使非对称加密所需的公钥、私钥在框架中为固定数值,用开发框架进行开发的项目中如果有一个因为代码泄露或者服务器被入侵导致私钥泄密,则会对使用开发框架的其他项目的安全造成威胁。
[0005]而现有的解决手段是项目开发人员在项目上线前对密钥进行重新修改,项目上线后,加密使用的密钥对也需要项目开发人员时时变更,以防止私钥泄密导致的潜在危害。私钥维护在代码当中,项目的开发人员、运维人员都有可能将私钥泄露出去,有很大的安全隐患。对密钥对的维护增加了开发人员的工作,也违背人框架开发开箱即用的原则。

技术实现思路

[0006]为了解决上述问题,本专利技术提出了一种非对称加密密钥的动态生成方法及系统,本专利技术中私钥不维护在代码当中,只有登录服务器当中才可能获取到私钥,通常只有项目的运维人员才能接触到,私钥随项目的启动而更换,能降低私钥泄露的可能性与泄露后未被发现所造成的的危害。
[0007]根据一些实施例,本专利技术的第一方案提供了一种非对称加密密钥的动态生成方法,采用如下技术方案:
[0008]一种非对称加密密钥的动态生成方法,应用在服务器端,包括:
[0009]接收到任务触发请求后生成初始随机公钥和私钥密钥对,并存储在服务器端中多个服务节点上,且多个所述服务节点共用一个密钥对;
[0010]当接收到用户访问请求时,向客户端发送公钥,使得客户端利用公钥对需要传输的数据进行加密,并将加密数据发送给服务器端;
[0011]接收到客户端的加密数据,利用私钥对所述加密数据进行解密,得到原文数据。
[0012]进一步地,所述任务触发请求包括定时任务更新、开发项目启动重启以及手动触发。
[0013]进一步地,所述当接收到用户访问请求时,向客户端发送公钥,具体为:
[0014]将用户访问请求均匀分配到各个服务节点上;
[0015]各个所述服务节点共用一个公钥;
[0016]所述服务器端将公钥发送给客户端。
[0017]进一步地,所述接收到客户端的加密数据,利用私钥对所述加密数据进行解密,得到原文数据,包括:
[0018]将加密数据均匀的分配到各个服务节点上,得到节点加密数据;
[0019]各个所述服务节点利用同一个私钥,分别对分配后的节点加密数据进行解密,得到节点原文数据;
[0020]将各个节点原文数据按照分配的顺序进行组合,得到原文数据。
[0021]根据一些实施例,本专利技术的第二方案提供了一种非对称加密密钥的动态生成方法,采用如下技术方案:
[0022]一种非对称加密密钥的动态生成方法,应用在客户端,其特征在于,包括:
[0023]向服务器端发送用户访问请求以使得服务器端将公钥发送给客户端,获取公钥;
[0024]利用公钥对需要传输的数据进行加密并发送给服务器端,以使得服务器端对加密数据进行解密,得到原文数据。
[0025]进一步地,所述向服务器端发送用户访问请求以使得服务器端将公钥发送给客户端,具体为:
[0026]所述服务器端将用户访问请求均匀分配到各个服务节点上;
[0027]各个所述服务节点共用一个公钥;
[0028]所述服务器端将公钥发送给客户端。
[0029]进一步地,所述服务器端对加密数据进行解密,得到原文数据,包括:
[0030]所述服务器端将加密数据均匀的分配到各个服务节点上,得到节点加密数据;
[0031]各个所述服务节点利用同一个私钥,分别对分配后的节点加密数据进行解密,得到节点原文数据;
[0032]将各个节点原文数据按照分配的顺序进行组合,得到原文数据。
[0033]根据一些实施例,本专利技术的第三方案提供了一种非对称加密密钥的动态生成系统,采用如下技术方案:
[0034]一种非对称加密密钥的动态生成系统,包括服务器端和客户端;
[0035]所述服务器端接收到任务触发请求后生成初始随机公钥和私钥密钥对,并存储在服务器端,所述服务器端部署多个服务节点,且多个所述服务节点共用一个密钥对;
[0036]当所述服务器端接收到用户访问请求时,所述服务器端向客户端发送公钥,使得客户端利用公钥对需要传输的数据进行加密,并将加密数据发送给服务器端;
[0037]所述服务器端收到客户端的加密数据,利用私钥对所述加密数据进行解密,得到原文数据;
[0038]当所述服务器端再次接收到任务触发请求时更新生成新的公钥和私钥密钥对,并存储在服务器端,所述服务器端基于新的公钥和私钥密钥对与客户端进行交互。
[0039]根据一些实施例,本专利技术的第四方案提供了一种计算机可读存储介质。
[0040]一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现
如上述第一个方面所述的一种非对称加密密钥的动态生成方法中的步骤。
[0041]根据一些实施例,本专利技术的第五方案提供了一种计算机设备。
[0042]一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述第一个方面所述的一种非对称加密密钥的动态生成方法中的步骤。
[0043]与现有技术相比,本专利技术的有益效果为:
[0044]本专利技术中服务器端中多服务节点公用一个密钥对,服务节点生成密钥对时将密钥对存储到到服务器端公共的存储当中,新生成的密钥会替换旧的密钥对,各服务节点都使用最新生成的密钥对;提高了框架的自动化程度,降低了项目开发运维人员对项目的维护管理成本;私钥不维护在代码当中,只有登录服务器当中才可能获取到私钥,通常只有项目的运维人员才能接触到,私钥随项目的启动而更换,能降低私钥泄露的可能性与泄露后未被发现所造成的的危害。
附图说明
[0045]构成本专利技术的一部分的说明书附图用来提供对本专利技术的进一步理解,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。
[0046]图1是本专利技术实施例中一种非对称加密密钥的动态生成方法的流程图。
具体实施方式
[0047]下面结合附图与实施例对本专利技术作进一步说明。
[0048]应该指出,以下详本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种非对称加密密钥的动态生成方法,应用在服务器端,其特征在于,包括:接收到任务触发请求后生成初始随机公钥和私钥密钥对,并存储在服务器端中多个服务节点上,且多个所述服务节点共用一个密钥对;当接收到用户访问请求时,向客户端发送公钥,使得客户端利用公钥对需要传输的数据进行加密,并将加密数据发送给服务器端;接收到客户端的加密数据,利用私钥对所述加密数据进行解密,得到原文数据。2.如权利要求1所述的一种非对称加密密钥的动态生成方法,其特征在于,所述任务触发请求包括定时任务更新、开发项目启动重启以及手动触发。3.如权利要求1所述的一种非对称加密密钥的动态生成方法,其特征在于,所述当接收到用户访问请求时,向客户端发送公钥,具体为:将用户访问请求均匀分配到各个服务节点上;各个所述服务节点共用一个公钥;所述服务器端将公钥发送给客户端。4.如权利要求1所述的一种非对称加密密钥的动态生成方法,其特征在于,所述接收到客户端的加密数据,利用私钥对所述加密数据进行解密,得到原文数据,包括:将加密数据均匀的分配到各个服务节点上,得到节点加密数据;各个所述服务节点利用同一个私钥,分别对分配后的节点加密数据进行解密,得到节点原文数据;将各个节点原文数据按照分配的顺序进行组合,得到原文数据。5.一种非对称加密密钥的动态生成方法,应用在客户端,其特征在于,包括:向服务器端发送用户访问请求以使得服务器端将公钥发送给客户端,获取公钥;利用公钥对需要传输的数据进行加密并发送给服务器端,以使得服务器端对加密数据进行解密,得到原文数据。6.如权利要求5所述的一种非对称加密密钥的动态生成方法,其特征在于,所述向服务器端发送用户访问请求以使得服务器端将公钥发送给客户端,具体为:所述服务器端将用户访问请求均匀分配到各...

【专利技术属性】
技术研发人员:马子卿宫传华杨义张蒙陈通
申请(专利权)人:山东亿云信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1