在云存储中,数据安全是最为重要的,传统的数据加密技术并不能解决所有问题,并且可能增加服务器的负担。所以,代理重加密就应运而生。下面我们就来了解一下代理重加密技术。

代理重加密技术简述

代理重加密(Proxy Re-Encryption,PRE)技术是一种可以对密文进行安全转换的加密方法,可以将用户A用自己公钥加密上传的密文转换成另一种形式的密文,使得用户B可以用自己私钥对转换后的密文进行解密,并且在整个转换过程中不会泄露任何对应的明文信息,因此代理重加密技术对于云计算是天然的应用,可以保证云端数据的安全访问与共享。

代理重加密

代理重加密技术的原理

在1998年欧密会上,Blaze等首次提出了代理重加密的概念。在代理重加密中,基于授权人(delegator)公钥加密的密文可以被转换为另一种密文,且保持对应明文不变,被转换后的密文可以由被授权人(delegate)的私钥进行解密。该密文转换过程由一个半可信的代理者(proxy)执行,在执行该过程前,代理者需要持有一个由授权人到被授权人的转换密钥,该转换密钥一般由授权人事先生成并交给代理者。同时在密文转换的整个过程中,代理者无法获取关于该密文对应明文的任何信息。

代理重加密

代理重加密技术的流程

代理重加密可以让Alice通过半信任的代理,发送消息Bob。不必泄漏Alice的私钥给代理和Bob,也不会泄漏消息的内容给代理。

代理可以是一台任意的云服务器,它只能看到加密后的消息和用户的公钥,所有私钥都在个人手里。解密后的消息只会被Bob看到,不会被代理看到。

Alice并不信任任何云服务器,她使用公钥pk1加密了自己的消息,并上传到云服务器。这个消息是安全的,因为只有她自己拥有私钥pk1。几周后,Bob来了,他需要查看这个消息。

这个时候,Alice有两个选择:

  1. Alice解密消息,拿到Bob的公钥pk2,使用pk2加密消息,并发送给Bob。这个方法的缺点是,如果有多个Bob的话,这种方法会很麻烦。另一个缺点是,Alice需要保存所有历史消息,而下一种方法则不必保存。
  2. Alice拿到Bob的公钥pk2,生成一个重加密密钥,并上传到代理,代理使用这个加密密钥对加密消息,再进行一次加密,生成新密文。Bob下载这个重加密消息,并使用自己的私钥sk2解密。而这便是代理重加密。

代理重加密


代理重加密提供了一种安全且灵活的密文数据共享方法,由云服务器将一个用户的密文转变成另一个用户可以解密的密文,使得能对存储在云服务器上的密文进行安全有效的转换。

免责声明:素材源于网络,如有侵权,请联系删稿。