云计算环境下密钥的安全存储问题.docxVIP

  • 15
  • 0
  • 约9.87千字
  • 约 9页
  • 2017-01-01 发布于贵州
  • 举报
云计算环境下密钥的安全存储问题

1 系统总体结构本文构建了一个基于隐秘映射组合公钥的云计算密钥管理架构,如图1所示:当有新密钥客户端节点要加入到云环境中时,它需要跟云计算密钥管理系统中的各个组件进行信息的交互,以获取节点的私钥。该系统主要包括以下几个组件:a) 云计算密钥管理中心。负责系统的初始化,椭圆曲线的产生、公私钥因子矩阵的组合和公私密钥对的生成及管理。b) 用户注册中心。负责用户的注册审核,并向公开信息数据库发放用户的有效及废弃的身份信息,同时还负责向云计算密钥管理中心转发注册用户的私钥发放申请。c) 公开信息数据库。保存用户有效的及废弃的身份信息,同时存储公钥因子矩阵列表。d) 云计算密钥客户端。使用云计算服务的企业或者个人用户,向注册中心发起注册和私钥发放申请。e) 云管理员。云计算服务提供商,负责管理和维护整个云计算密钥管理系统。2 系统功能模块设计2.1 系统初始化云计算隐秘映射组合公钥密钥管理是基于椭圆曲线密码体制的,它的安全性建立在椭圆曲线离散对数难题上[5],假设一个有限域F的特征p是素数,且p不等于2或3,P=(xp,yp)是椭圆曲线的基点。可将椭圆曲线EF定义[5]为设椭圆曲线的参数组为(a,b,P,n,p),P的子群M可以表示成{P,2P,3P,…(n-1)P,nP},可以从子群M中得出这样的等式:Rij=sijP。私钥因子矩阵SSK由元素sij组成,公钥因子矩阵PSK由元素Rij组成,这两个矩阵就可以分别定义为:在CPK密码体制中,公私钥对是通过指向公私钥因子矩阵对应位置上的元素的组合而产生的。可以利用哈希函数和行映射算法以及列置换算法[5]实现标志到因子矩阵坐标的映射,以选出因子矩阵中的元素,具体的算法实现流程如图2所示。根据行映射和列置换得出的随机序列向量,分别为(i1,i2,…ij)和(j1,j2,…jj),取出私钥因子矩阵中对应的各个元素因子相加,即可得出用户的私钥为同样,选取出公钥因子矩阵的元素因子,进行点加运算,组合出对应的用户公钥:云计算组合公钥密钥管理系统中的pk与sk构成一对公私钥。从式(3)和(4)可以看出,公钥pk正好是私钥sk关于基点P的倍数。本方案采用隐秘映射机制,云计算密钥管理中心将密钥映射及矩阵变换采用物理保护的方式写入云计算客户端的硬件中,并采用加密手段,使得客户端只能使用该隐秘映射模块,但不能获取内部具体的流程和中间参数,比如根据行映射和列置换得出的随机序列向量等。算法流程如图3所示。2.2 密钥分发云计算组合公钥密钥管理系统中的密钥分发涉及到系统中的多个组件,主要包括:a) 公钥因子矩阵。云计算密钥管理中心生成公钥因子矩阵后,发送给公开信息数据库保存。该数据库开放给所有用户,任何其他用户都可以通过访问该公开信息数据库以获取公钥因子矩阵。b) 私钥因子矩阵。私钥因子矩阵也是由云计算密钥管理中心生成,然后就始终存储于该密钥管理中心。在系统的整个密钥产生和分发的过程中,私钥因子矩阵都是要严格保密的。c) 公钥。由云计算密钥管理中心通过用户标志映射以及组合公钥因子矩阵产生。本方案采用隐秘映射机制,客户端用户根据用户标志和公钥矩阵,通过隐秘映射模块可以计算出需要的公钥。由于硬件物理保护,计算的中间过程及中间参数(如根据行映射和列置换得出的随机序列向量等)对客户端用户保密。d) 私钥。用户通过用户注册中心向云计算密钥管理中心申请私钥。云计算密钥管理中心生成私钥后,通过安全信道向用户注册中心发放私钥,而用户注册中心则将私钥写入安全存储介质交给用户。2.3 密钥协商若云环境中有两个用户需要进行通信,那么它们必须采用组合公钥技术进行密钥协商,以获取只有双方知道的相同的会话密钥。设云中的用户A和用户B的标志分别为IDA、IDB,kAB表示用户A与用户B之间的会话密钥;ECCk(m)表示利用密钥k对消息m进行椭圆曲线加/解密和签名[1],AESk(m)表示利用密钥k对消息m进行AES对称加解密;符号“||”表示消息的级联。则具体的密钥协商过程如图4所示。用户A和用户B都已经拥有了它们各自的私钥skA和skB,并且共同保存同一个随机序列码。当用户A将消息包ECCpkB(kAB)和发送给用户B后,用户B可以利用自己的私钥skB对消息包ECCpkB(kAB)进行解密,获取由A生成的会话密钥kAB;然后继续利用该会话密钥解密消息包,获取消息包。由于云密钥管理系统中所有用户的身份标志以及公钥因子矩阵都可以在系统的公开信息数据库中查询到,因此,用户A和用户B的这两项信息对双方都是已知的。借助隐秘映射模块,利用公钥因子矩阵可以进一步获得对方的公钥。如果用户B利用自己计算出的用户A的公钥SA成功地验证了消息包中的ECC签名,就证明了发送消息包的用户A的身份是正确的。签名验证成功后,用户B就得到了用户A的随机序列码SA。如果用户B获

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档