背景

对称、公钥加密算法解密密文,得到的是明文的全部信息。但是我们希望能够对密文的访问附加特殊的要求,使访问者只得到明文的一个函数值,而不会泄露明文。

  • FE的核心要求:对明文的灵活访问
  • FE密钥:基于 对密文访问需求抽象出的函数
  • 解密:对明文的预定义函数运算(?)(也可在加密函数中实现),直接输出函数值而非原明文

Functional Encryption

FE定义:键空间K,明文空间X,(K, X)上的泛函F: K 乘 X --> {0, 1}*。F中的f是确定性图灵机。同时,要求密钥空间 K 包含一个特殊的密钥,称为空密钥,表示为 ϵ(及空键,是从密文便可得到的明文信息,是攻击者知道的信息,但仅仅凭借这个信息无法解密)。

函数加密过程:(先执行Setup)由系统安全参数(一般是个随机数?)生成主密钥msk和公钥pk。然后,由主密钥msk和函数f生成用户私钥(KeyGen)。

函数加密的子类

函数加密是一个非常广泛的概念。涵盖多种基于公钥的加密概念(当f(x) = x 时,其实就变成了IBE)。
谓词加密:使用于(索引,明文)形式。例如,在电子邮件系统中,索引可能是发件人的姓名,而有效载荷是电子邮件内容。
带有公共索引的谓词加密中,谓词加密的一个子类使明文索引很容易从密文中读取。空键 ϵ 显式地显示索引 ind,即:F( ϵ, (ind, m)) = (ind, len(m))。

同态加密

在函数加密的基础上,假如客户端不希望服务器知道自己想要查询什么,而服务器也不愿意告诉客户自己是怎么进行运算的,就要借助同态加密。(感觉这里讲的不对,因为f()是客户端传给服务器的啊……)

同态性:Enc(m1) * Enc(m2) = Enc(m1 * m2)
由于加法、乘法具有同态性,我们可以对密文进行多项式级的同态运算。

同态加密中,客户端向服务器发送一个同态性质运算f(),服务器利用此函数对密文进行运算,然后客户端在根据运算的结果解密得到明文的一个函数值。
*只需要进行一次密文的解密
*解密方只能得到最后的结果,无法得知每一个密文信息

同态加密具有语义安全性:根据密文信息无法猜测明文

reference

同态加密(讲的很好呜呜呜呜)
函数加密。这个网站内容和老师PPT相似度98%(汗)

函数加密_同态加密__密码学课堂笔记相关推荐

  1. bfv同态加密_同态加密综述

    目前大部分内容翻译自维基百科, 后续会根据调研情况不断丰富. 基本概念 同态加密(Homomorphic encryption) 是一种可以支持在密文上进行计算的加密方式, 对在密文上计算得到的结果进 ...

  2. bfv同态加密_同态加密入门教程

    在这篇文章中,我们将了解同态加密的基本概念,介绍常用的同态加密开发库,学习同态加密应用开发的一般步骤,了解如何在Web应用中添加同态加密支持. 1.同态加密概述 同态加密改变了隐私保护的游戏规则,它允 ...

  3. bfv同态加密_同态加密简明教程

    在这篇文章中,我们将了解同态加密的基本概念,介绍常用的同态加密开发库,学习同态加密应用开发的一般步骤,了解如何在Web应用中添加同态加密支持. 1.同态加密概述 同态加密改变了隐私保护的游戏规则,它允 ...

  4. 实习二 分组密码加密_分组密码加密模式

    在分组密码中,一般所选用的密码算法都是公开的,加密过程中,只有密钥是保密的.一旦密钥固定,那么可以将加解密过程视为一个映射,例如AES算法,每加密一次,就可以视为128bit到128bit的数据映射. ...

  5. api接口加密_接口加密如何测试?

    摘要算法: 对明文编码生成信息摘要,以防止被篡改.比如MD5使用的是Hash算法,无论多长的输入,MD5都会输出长度为128bits的一个串. 摘要算法不要秘钥,客户端和服务端采用相同的摘要算法即可针 ...

  6. java ecb加密_各加密模式的演示(ECB,CBC) .

    对于较长的明文进行加密需要进行分块加密,但是直接加密(ecb)不容易隐藏模式,用OpenCV写了个程序论证了一下 ECB 优点就是简单,可以并行计算,不会迭代误差 缺点就是隐藏不了模式 CBC 需要初 ...

  7. win10文件夹加密_文件加密精灵,保护你的隐私!

    官方介绍: 文件加密精灵是一款使用方便,安全可靠的文件加密利器.电脑上的任何文件都能做加密处理,有效的保证你的隐私. 主要功能: 文件加密 .文件夹加密 .软件加密(程序锁.软件锁).文件夹伪装.文件 ...

  8. 什么标准规定了aes加密_高级加密标准(AES)分析

    原标题:高级加密标准(AES)分析 0×00 前言 在密码学中,block(分组)密码的工作模式被广泛使用,使用同一个分组密码密钥对很多称之为块的数据加密,在优于很多诸如RSA.ECC密码的性能的情况 ...

  9. tls 1.2加密_椭圆曲线加密在TLS 1.3中的工作方式

    tls 1.2加密 A couple of reader alerts: 读者警告: In order to (somewhat) simplify the description process a ...

最新文章

  1. 《深入理解计算机系统》学习心得二:关于show-bytes的 学习
  2. 英伟达账号登录邮箱验证收不到_【硬核教学】解决登录230锁定
  3. [转]c++类的构造函数详解
  4. LVS原理介绍及安装过程
  5. 封送处理您的数据:利用 COM 和 Windows 2000 的高效传输数据的技术
  6. python矩阵所有元素取整_Python中如何对一个数值进行取整操作呢?
  7. python多进程爬虫保存数据_Python多进程爬虫东方财富盘口异动数据+Python读写Mysql与Pandas读写Mysql效率对比...
  8. javascript特效:会随着鼠标而动的眼睛
  9. mssql 2005/2008/2012如何添加、查询、修改分区表中的数据 .
  10. IDEA打包war部署到Tomcat
  11. MongoDB 在Linux下 数据时间问题 .Net Core
  12. 资源大放送 - 图书与视频教程!
  13. SQL 配置管理器找不到了
  14. 3000计算机组装电脑,电脑组装教程,教您组装电脑配置清单
  15. 2021动画渲染农场排名出炉,渲染101综合领先,赛诚和瑞云Renderbus紧随其后!
  16. ping: www.baidu.com: 域名解析暂时失败 简单解决
  17. tolua++实现分析
  18. 知乎网站胡说八道,误人子弟!
  19. 特步软件测试员工资,特步集团全面预算管理系统——管理员手册V1.1
  20. 如何解决VS下载速度慢

热门文章

  1. flash按钮html层遮罩
  2. 《恋爱厚黑学》杨冰阳
  3. COSCon'22 杭州会场回顾 | 谁说开源人只懂代码不懂玩?
  4. iOS 中的渲染框架:CALayer 是显示的基础,存储 bitmap
  5. 高效提升效率的办公软件,快来get吧
  6. 使用pymysql连接数据库
  7. Python使用BeautifulSoup与selenium爬取Boos直聘
  8. 前端开发【短信分享】——H5调起短信,发送指定内容到指定号码
  9. 触宝发布Q4财报:预期2022实现全年盈利,管理层增持展示信心
  10. 给年轻数据科学家:从新手小白到专家大师的进阶之路