代理重加密-入门学习笔记(四)

代理重加密-入门学习笔记(四)代理重加密(PRE)(重密码学!)原文:https://blog.csdn.net/Black_BearB/article/details/812280301、基本思想-流程结算在云计算中,云计算服务提供商作为代理人,用户A不能完全相信云计算服务提供商,因此需要将自己的数据在本地用自己的公钥加密后在云中存储,这样代理人无法得到数据的明文信息。当他要和用户B共享文件时,A根据自己的信…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

代理重加密(PRE)(重密码学!)

原文:

https://blog.csdn.net/Black_BearB/article/details/81228030

1、基本思想-流程结算

在云计算中,云计算服务提供商作为代理人,用户A不能完全相信云计算服务提供商,因此需要将自己的数据在本地用自己的公钥加密后在云中存储,这样代理人无法得到数据的明文信息。当他要和用户B共享文件时,A根据自己的信息(如私钥)及用户B的公钥计算一个转换密钥Rk(重加密密钥),由代理人使用Rk将针对A的密文转换为针对B的密文。这样,B可以从云中下载该密文,只用自己的私钥即可解密。

 

2、算法描述

1:系统初始化

2:产生公私钥对

2.1:Alice向KGC请求生成自己的公私钥对。

2.2:KGC生成Alice的公私钥对并返回给Alice。

2.3:Bob向KGC请求生成自己的公私钥对。

2.4:KGC生成Bob的公私钥对并返回给Bob。

3:Alice生成密文文件

3.1:Alice利用AES算法加密数据M生成密文C1。

3.3:Alice根据第二层加密算法并利用自己的公钥加密AES的密钥生成密文C2

3.2:Alice把加密后的数据密文C1和C2,上传到服务器Server上

4:构建重加密密钥

4.1:Alice向KGC请求Bob的公钥。

4.2:KGC把Bob的公钥返回给Alice。

4.3:Alice利用Bob的公钥和自己的私钥生成重加密密钥KAàB。

4.4:Alice把生成的重加密密钥KAàB上传到服务器Server上。

5.代理重加密(ReEncryption)

重加密算法ReEnc(params,CT,rkiàj):给定针对公钥pki和第二层密文CTi,该算法利用重加密密钥rkiàk生成一个针对公钥pkj的第一层密文CTj。

服务器Server利用重加密密钥KAàB和之前Alice上传的密文C2做代理重加密运算生成新的密文C3。

6.Bob请求数据:

6.1:Bob向服务器Server请求解密数据M对应的密文G。

6.2:服务器Server把重加密后生成的密文C3和C1发送给Bob。.

6.3:Bob解密密文C,得到对称密钥,并用该对称密钥解密C,得到原始的的明文数据M。

3、密文共享

密文共享三种方法:

1.传统方法、代理重加密、属性加密

第一种:传统方法中,需要耗费大量的通信开销和运算代价,并且需要用户增加本地存储空间,这不符合用户通过云计算节省设备开销的初衷。

第二种:代理重加密方法中,主要是通过代理服务器将一个用户的密文转换为另一个用户可以解密的密文,且不泄露用户的私钥和明文信息。这种方法主要是端到端的。

第三种:属性加密方法中,数据拥有者可以利用属性加密,在数据加密的过程中定义一个访问策略只有满足这个访问策略的用户才能够解密,由此来实现密文的共享。这种方法主要是一对多

4、实际实例

医疗和保险,用户通过代理重加密对数据进行授权。数据分析公司用AI技术对模型进行训练然后基于MPC(安全多方计算)和下游企业如医院等,进行数据共享,形成一个良性经济生态。用户分享数据,也得到一定的利益。

征信和广告也类似,用不同的密码学技术对个人数据进行筛选处理,满足不同机构的需求,最后的收益要在链上进行记录和分发。各取所得,个人用户、机构等都有不同的利益分享,形成一个可持续的生态。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195706.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 小米BL不解锁刷机「建议收藏」

    小米BL不解锁刷机「建议收藏」关于小米NOTE顶配近期解锁的问题中发现还有很多人不会用9008模式刷机,现出个简单教程方便米粉们救砖。硬件:小米NOTE顶配手机win10系统的电脑手机与电脑相连的数据线软件:老版本的miflash(版本号:2015.10.28。0)最新版本miflash最新解BL锁工具或者小米助手(用来装驱动)开发版6.17及以前的线刷包随便下一个一个你最终想刷的版本(推荐最新稳定版)…

    2022年4月30日
    165
  • Sublime Text 3 全程详细图文教程(转载)

    Sublime Text 3 全程详细图文教程(转载)今天被群里大佬安利了一款文本编辑软件,找了一下相关教程。一、 前言使用SublimeText也有几个年头了,版本也从2升级到3了,但犹如寒天饮冰水,冷暖尽自知。最初也是不知道从何下手

    2022年7月4日
    19
  • set max_containsvalue方法

    set max_containsvalue方法•setMaxResults是用来配合数据库生成sql的,在sql里就控制查询的记录数目。  o=query.setMaxResults(1).uniqueResult(); uniqueResult();hibernate的参考手册,query接口提供了一个更好的方法用来获取实例,当返回的实例明确只有一个或者为null的时候。这个方法是这样用的当你能够肯定你…

    2022年9月10日
    0
  • 2021韩顺平图解linux_狗剩学习笔记

    2021韩顺平图解linux_狗剩学习笔记韩顺平图解Linux全面升级https://www.bilibili.com/video/BV1Sv411r7vdP001_韩顺平图解Linux全面升级_课程内容20:37P002_韩顺平图解Linux全面升级_应用领域05:05P003_韩顺平图解Linux全面升级_概述16:37P004_韩顺平图解Linux全面升级_Linux与Unix18:09P005_韩顺平图解Linux全面升级_vmware15.5安装17:36P006_韩顺平图解

    2022年5月18日
    38
  • MTK65XX平台充电调试总结

    MTK65XX平台充电调试总结

    2022年2月6日
    38
  • PHPMYADMIN简明安装教程

    PHPMYADMIN简明安装教程简单的说,phpmyadmin就是一种mysql的管理工具,安装该工具后,即可以通过web形式直接管理mysql数据,而不需要通过执行系统命令来管理,非常适合对数据库操作命令不熟悉的数据库管理者,下面我就说下怎么安装该工具: 1.先到网上下载phpmyadmin,再解压到可以访问的web目录下(如果是虚拟空间,可以解压后通过ftp等上传到web目录下),当然您可以修改解压后该文件的名称。

    2022年5月31日
    23

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号