云计算机密码,一种云密码计算平台及计算服务方法与流程

3a2d96bac2f89c1e2bc0d3e92109bc33.gif

本发明涉及网络空间安全领域,尤其涉及一种可进行资源管理的云密码计算平台及计算服务方法。

背景技术:

云计算:云计算是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源,是分布式计算技术的一种,其最基本的概念,是透过网络将庞大的计算处理程序自动分拆成无数个较小的子程序,再交由多部服务器所组成的庞大系统经搜寻、计算分析之后将处理结果回传给用户。

密码计算设备:为用户提供数据的对称/非对称加解密、数据完整性校验、数字签名和验证以及密钥的生成等密码计算服务的设备。

内存数据库:内存数据库,顾名思义就是将数据放在内存中直接操作的数据库。相对于磁盘,内存的数据读写速度要高出几个数量级,将数据保存在内存中相比从磁盘上访问能够极大地提高应用的性能。通过使用内存数据库,可以实现保持高性能的前提下对流量进行精确控制和资源调度

统一认证架构:统一认证架构是一种通用的架构,它提供了一种通用的鉴权机制,可以将用户接入移动网络时所用的移动认证基础设施用于对新服务的访问授权控制,从而避免为每一种新服务都提供独有的鉴权机制。移动终端和服务提供商都可以通过统一认证架构得到相互之间的最新的可信任信息(即标识符和共享密钥),从而可以相互认证。

云密码服务:云密码服务将密码服务与云计算平台进行结合,通过调度加密机集群动态扩充密码运算能力,使密码运算速度大大提高,系统稳定性得到极大增强,更好的为用户提供集中化、虚拟化、透明化的密码运算服务。云密码服务不仅可面向具有高安全性和高性能需求的电子商务、电子政务领域应用,提高了系统整体的稳健性、高效性和成熟性;而且可应用于各种“云”、“中心”、“云节点”,解决数据的本地存储、网络传输、身份认证、数据完整性等安全问题,防止网上的各种欺诈行为发生。当前的密码云服务方案,在一台物理密码机上通过虚拟化技术运行多台虚拟密码机,其优势在于灵活地切割了密码运算能力,而缺点在于其单台物理密码机计算能力决定了整个平台的计算上限。

技术实现要素:

本发明公开了一种新型的云密码计算平台及计算服务方法。所述的云密码计算平台,包含物理密码机集群、资源管理模块、接入认证模块和数据存储模块。物理密码机对外提供密码计算能力,主要包括国密sm2、sm3、sm4密码运算并使用自身主密钥、用户主密钥和算法密钥实现三层密钥体制进行保护,接入认证模块主要通过第三方统一认证的方式对密码计算请求方的身份进行确认,数据存储模块则对需要储存的各类信息进行存储,资源管理模块配置于云密码计算平台资源管理服务器中用于将物理密码机抽象为密码计算能力并按照用户申请的计算能力将物理密码机虚拟化为虚拟密码机,结合接入认证模块和数据存储模块对密码计算请求进行资源调度、性能控制、请求转发和负载均衡。

此外,本发明还提供了一种结合物理密码机集群和数据存储模块通过资源管理模块对外提供密码计算服务的方法,其步骤包括:

一.n台物理密码机开机组成物理密码机集群连接至资源管理模块。

二.通过使用密码保护卡同步n个物理密码机的主密钥,使其共享密码机主密钥km;同时主密钥km仅存在于密码机密码保护卡内。

三.资源管理服务器收到多个密钥生成请求后发送给空闲的物理密码机a进行运算。

四.在收到由资源管理服务器发送的密钥生成请求后,物理密码机a首先对每一密钥生成请求中的用户身份userid使用主密钥km,运用sm3hmac算法进行处理生成对应用户的用户主密钥ki。

五.物理密码机a根据请求中的计算类型生成算法密钥aki,并使用用户主密钥ki对算法密钥aki加密得到[aki]ki。

六.物理密码机群将生成的密钥[ak1]k1到[aki]ki共i个密钥发回给资源管理模块,由其与用户身份对应存储至数据库。

七.当用户i请求加解密或签名验证等功能j时,资源管理模块从数据库中取出该用户i对应的密钥[aki]ki,将其加入用户请求加解密或签名验签的请求中并再次通过负载均衡策略发送至空闲物理密码机b进行计算。

八.物理密码机b根据请求中的身份userid和主密钥km经过sm3hmac算法生成该用户i的用户主密钥ki,使用用户主密钥ki利用sm4算法对请求中的[aki]ki进行解密并进行密码计算,完成计算服务j。

此外,本发明还提供了一种资源管理模块协同接入认证模块进行认证的方法,包含以下步骤:

一.云用户向资源管理模块请求密码计算。

二.资源管理模块首先判断当前用户是否拥有合法身份,如没有则向云用户返回身份鉴别数据包,其中身份鉴别数据包中的信息包括:client_id标示资源管理服务器身份,redirect_uri标示资源管理服务器用于接收统一认证系统签发的用户身份凭证的地址,response_type标示资源管理服务器请求的统一认证系统的响应格式,scope标示资源管理服务器请求用户授权数据的范围,nonce为每次请求中生成的随机数。

三.云用户获取资源管理模块返回的内容再将自身用户名“username”和口令“password”加入其中转发至认证模块进行认证。

四.统一认证模块解析数据包内容并在认证用户的用户名和口令通过后返回token至云用户,token为jwt格式编码的用户数据,其中包括平台身份“audrence”用于标示请求登陆应用的身份、统一认证地址“issuer”用于标识签发该用户凭据系统的身份、sub用于标示申请此次用户的身份以及请求中的nonce等信息并附带了对上述信息的数字签名。

五.云用户将token转发至资源管理模块。

六.资源管理模块首先提取token中数字签名并验签,同时检查token与请求中“nonce”的一致性。

七.认证通过,则资源管理模块提取用户名“username”作为id(即userid),以及数据存储模块中所属租户身份“tenantid”等内容作为之后步骤二的输入,用于查询租户身份。

本发明还提供了一种资源管理模块协同数据存储模块对密码请求进行用户状态检查和速度限制的方法。其速度限制子步骤如下:

一.获取密钥生成请求的计算类型“coderequest”。

二.首先根据统一认证流程得到的请求身份“userid”查询云用户当前状态“云用户身份.status”,并根据“身份.tenantid”查询其租户状态“租户身份.status”。当前状态指当前用户是否可以请求计算,只有是或否两种状态,后面租户的status也只有是或否两种状态,指的是用户所属的租户是否可用。

三.根据统一认证流程得到的请求身份“userid”和计算类型“coderequest”查询redis数据库获取该云用户此计算类型的总速度配额“算法.limit”和当前已使用速度“算法.used”。

四.如当前使用速度小于该云用户此类型计算的总速度配额,则允许本次请求(请求加解密或签名验证的请求),并更新当前使用速度,否则拒绝本次请求。

五.限速模块同时定期查询速度使用情况期限“算法.timevalid”,一旦发现过期,便将清零所有用户全部类型计算的当前使用速度以便对下一秒的请求进行速度限制。

此外,在实际密码计算服务过程中为保障租户及其下属接入身份的可信性,接入认证模块使用openid协议通过第三方统一认证的方式验证身份,资源管理模块还对流量进行负载均衡控制并根据云用户的速度配额进行限速,在收到云用户的请求包后还会对其进行格式转换用于向物理密码机集群请求计算。

本发明的优势在于:

本发明将密码计算设备的密码计算能力虚拟化为资源并对外提供,同时对其进行合理高效的资源管理和调度,使密码计算设备可以在云端使用,满足云计算按需计算、弹性伸缩、多用户的特殊需求,提升了密码计算设备的安全性和可用性。

附图说明

图1是本发明的系统结构图。

具体实施方式

下面结合附图对本发明进行进一步详细描述。

如图1所示,本发明的云密码计算平台系统,其主要包含物理密码机集群、资源管理模块、接入认证模块和数据存储模块四个部分。

物理密码机对外提供密码计算能力,主要包括国密sm2、sm3、sm4密码运算,并且使用密码机主要保护用户主密钥,使用用户主密钥保护算法密钥,而密码机主密钥则使用密钥保护卡进行保护,从而使计算平台的安全性得到了有效保障。

部署在资源管理服务器上的资源管理模块根据租户事先分配的性能配额对云用户的密码计算请求进行控制、格式转换并通过负载均衡策略转发给物理密码机请求实际的密码计算。

接入认证模块负责以第三方统一认证的方式对接入的云租户及租户下的人员进行身份认证。

数据存储模块主要负责将租户及其下属的信息和密码机的详细信息进行存储,并对资源管理模块提供查询、增加、删除和修改的功能。

本发明提供了一种云密码计算平台提供密码服务运算的方法,包含以下步骤:

一.物理密码机加载密码计算服务。

二.资源管理模块加载资源管理服务并连接物理密码机,对其计算能力进行统计,按照用户申请的计算能力将物理密码机虚拟化为拥有密码计算能力的云密码机。

三.资源管理模块连接数据存储模块的数据库,其中主要为了获取云租户及其下属云用户的个人信息。

四.启动接入认证服务器作为接入认证模块向云密码计算平台提供第三方统一认证功能从而对云用户及其下属租户进行身份的认证。

五.在上述加载工作完成后,资源管理模块作为云平台对外提供密码计算的服务模块,在其他模块的辅助下对云用户根据不同请求提供不同类型和性能的密码计算服务。

六.云用户向资源管理模块请求密码运算服务,首先进入资源管理服务器的统一认证流程。

七.资源管理模块接收云用户的密码计算请求包并对请求进行分析,而后首先进行限速处理。

八.当限速处理通过后,资源管理模块将对请求包进行格式转换,生成用于向物理密码机实际请求密码计算的请求包。

九.在格式转换结束后,资源管理模块将生成的请求包通过负载均衡策略发送至物理密码机。

十.密码机收到请求包后首先利用密码机主密钥和用户身份“userid”通过sm3hmac生成用户主密钥,再使用用户密钥运用sm4解密算法对算法密钥“keybits”进行解密,之后进行密码计算。

十一.密码机计算完成后将结果返还给资源管理模块,由资源管理服务器将结果发送给云用户。

十二.服务完成。

通过以上系统和方法,把提供密码服务的传统密码设备统一管理并虚拟为多个逻辑独立的虚拟密码机,使得密码服务满足了云计算按需分配、多用户的特殊需求,可以在云计算的环境下使用并保障了密码设备的安全性。

需要说明的是,对于前述的方式实施,为了描述简单,故将其都表述为一些列的动作组合,但是本领域的相关技术人员都应当知悉,本申请并不受描述的动作的限制,因为依据本申请,某一步骤可以采用其他顺序或者同时进行。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、rom、ram等。

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值