FHE全同态加密简介

news2024/11/27 4:39:22

1. 何为FHE?

在这里插入图片描述

FHE (Fully homomorphic encryption):

  • 是一种隐私技术,支持直接对密文进行计算,而无需对密文先解密再计算。
  • 即,任何第三方或云厂商,都可对敏感信息的密文进行处理,而无需访问密文内的任何明文数据。

1.1 FHE历史

FHE历史演变路径为:

  • Ronald Rivest、Leonard Adleman 和 Mike Dertouzos 于1978年 On Data Banks and Privacy Homomorphisms 论文中,提出了“基于密文计算”的概念。
  • 2009年Craig Gentry 在其博士论文 A fully homomorphic encryption scheme 中,构建了首个支持通用电路的方案——通过加法和乘法来实例化FHE。

2. FHE用例

FHE可用于:

  • 隐私加强:如用于机器学习、云计算、FHE+ZKP+MPC实现链上gambling、加密搜索和数据库操作。
  • 链上私有交易、私有智能合约、专注隐私的VM如FHEVM等。

2.1 何为专注隐私的VM?

以下将“专注隐私的VM”称为“加密VM”。
加密VM环境支持:

  • 上传合约S和交易T
  • 计算S(T),在不公开S和(或)T的情况下,来做资产转移、swap等。
    • 如,某些云厂商提供合约隐私,某些云厂商提供数据隐私,而有的云厂商同时提供合约隐私和数据隐私。

实现加密VM的挑战在于:

  • 1)Overheads开销
  • 2)Breaking composability突破现有组合性
  • 3)Breaking dev tools突破现有开发工具
  • 4)Regulatory监管

2.1.1 Overheads

  • 需要将program转换为“FHE-friendly”表示,如只包含加法和乘法门的电路。相比于直接计算,这引入了大量的开销。
  • 对每个电路执行密码学运算,将单个操作符,替换为,一系列基于大数的复杂运算。这仍会增加开销。

具体区间与具体的计算,以上步骤将增加数十倍的开销。

2023年9月,Intel声称正在开发对FHE运算高效的定制芯片:

  • Intel plans custom accelerator chip, model for encrypted computing

挑战在于,该算法仍在进化,且有大量的参数选型。Sergey Gorbunov参与了2019年的 Homomorphic Encryption Standard 制定。至今仍有一些选型未完成。

电路设计的挑战在于需要非常准确的域和运算,来最大限度地利用固定电路拓扑。

有没有什么“突破”使FHE成为现实?当前还没有。

  • 正在算法和优化方面进行扎实但渐进的改进。从必须将程序转换为某种形式的THE友好表示(这将增加开销)到必须对更大的数字进行计算,这一切都不会改变。

2.1.2 Breaking composability

隐私破坏了可组合性。

  • 不能像编写公共数据[和程序]那样编写私有数据。
  • 也就是说,加密交易不能像明文值那样在智能合约中使用——接收加密交易的程序不能调用另一个程序,也不能向仅通过明文值操作的程序发送存款。这使得在一个生态之上构建另一生态更具挑战性。

2.1.3 Breaking dev tools

似乎很少有人讨论这一点,但在加密的领域中不可能有相同的监控/调试工具。如,

  • 假设客户打电话说“我的交易没有通过”。要调试此语句,需要知道问题是否与数据编码、加密、程序评估或管道中的其他任何地方有关。如果没有对数据本身的可见性(客户一开始就试图隐藏数据),这是非常具有挑战性的。

2.1.4 Regulatory

已经看到了保护隐私的token和网络的问题。可能会因为编写该软件而遇到麻烦。监管机构将如何接收和分类完全加密的环境还有待观察。

3. FHE的当前瓶颈

FHE的当前瓶颈有:

  • 1)为加强计算安全性,在加密期间会给密文添加一些“noise噪声”。
  • 2)当密文中累积了过多“噪声”时,会因过噪,而影响输出的精度。
  • 3)Bootstrapping自举 是一种常用去噪技术,但其是计算密集型的。
  • 4)不同的解决方案正在探索,在不给设计施加太多约束的情况下,有效去噪的方法,包括TFHE、CKKS、BGV等。

4. FHE领域项目

当前,FHE领域项目有:

  • @zama_fhe:TFHE + fhEVM
  • @FhenixIO:FHE L2 + coprocessor
  • @Privasea_ai:Ai X FHE
  • @octra:HFHE L1
  • @inconetwork:FHE L1
  • @Fair_Block:Modular FHE solution
  • @mindnetwork_xyz:Depin + AI X FHE
  • @SunscreenTech:FHE compiler
  • @zkHoldem:Gambling with FHE

5. FHE领域前景展望

将ZK推向今天的水平总共花费了大约10亿美元——这是一个很大的兴奋和潜力,但还有更多的生产用例有待观察。Sergey预计FHE将需要大约相同的资金才能达到目前的水平[需要大约9亿VC]。这是因为软件栈的类似部分需要重写,而且可以说需要重写更多。

Sergey认为工程师应该关注更多的垂直用例,并考虑端到端的开发人员体验。当然,考虑通用VM环境是有利可图的,但其应针对特定的工作负载进行优化。

谁将为保护隐私的固有管理费用支付美元(工程、维护和执行成本)还有待观察。

FHE领域需要更多的资金、更多的工程师、实用的用例和简单的开发环境。

参考资料

[1] Poopman 2024年4月7日twitter A simple explanation of FHE (Fully homomorphic encryption) 🥷🧾
[2] Sergey Axelar 2024年3月9日twitter To FHE, or not to FHE, that is the question.
[3] Sergey 2024年3月9日博客 To FHE, or not to FHE, that is the question.

FHE系列博客

  • 技术探秘:在RISC Zero中验证FHE——由隐藏到证明:FHE验证的ZK路径(1)
  • 基于[Discretized] Torus的全同态加密指引(1)
  • 基于[Discretized] Torus的全同态加密指引(2)
  • TFHE——基于[Discretized] Torus的全同态加密 代码解析
  • 技术探秘:在RISC Zero中验证FHE——RISC Zero应用的DevOps(2)
  • FHE简介
  • Zama TFHE-rs
  • Zama TFHE-rs白皮书(1)
  • Zama TFHE-rs白皮书(2)
  • ZK系统内隐私 VS. FHE系统内隐私
  • ZK vs FHE

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1582319.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring 之 IoC概述

目录 1. IoC概述 1.1 控制反转 1.2 依赖注入 2. IoC容器在Spring中的实现 2.1 BeanFactory 2.2 ApplicationContext 2.2.1 ApplicationContext的主要实现类 1. IoC概述 全称:Inversion of Control,译为 “控制反转” Spring通过IoC容器来管理所有…

【DM8】物化视图

物化视图 (MATERIALIZED VIEW) 是目标表在特定时间点上的一个副本,占用存储空间,即将查询出来的数据存储在数据库中。 当所依赖的一个或多个基表的数据发生更新,必须启用刷新机制才能保证数据是最新的。 物化视图可以用于数据复制&#xff08…

Unity 遮罩

编辑器版本 2017.2.3f1 学习Unity的三张遮罩方式 1. Mask 遮罩方式 首先,在界面上创建2个Image,一个命名Img_Mask,大小设置 400* 400, 一个命名Img_Show,大小设置500*500。 然后,给 Img_Mask添加Mask,选择Img_Mask,点击Add Com…

宁波宠物展|2024中国(宁波)国际宠物用品博览会

中国(宁波)国际宠物用品博览会 地点:宁波国际会展中心 时间:2024年11月14-16日 主办单位:凤麟展览(宁波)有限公司 协办单位:浙江省宠物产业协会 宁波市跨境电子商务协会 宁波欧德国际商务咨询服务有限公司 宁波扬扬会议展览有限公司 20000方展览…

获取.apk文件的MD5签名、包名、版本号工具

​​​​​​​https://download.csdn.net/download/Kern_/89112540https://download.csdn.net/download/Kern_/89112540 点击上方链接下载 ApkSignore.jar,按照一下教程使用; 前提要素: 需要电脑安装了jdk及配置了jdk环境变量 安装教程&…

ubuntu20.04.6安装sshd服务,并连接到远程服务器

文章目录 sshd 是 OpenSSH 服务器的守护进程OpenSSH下载在 Ubuntu 上,可以按照以下步骤来管理 sshd 服务 防火墙开启22端口使用Mobaxterm链接服务器 sshd 是 OpenSSH 服务器的守护进程 它负责提供远程登录和安全的 shell 服务。通过启动 sshd 服务,可以…

LangChain - Chain

文章目录 1、概览为什么我们需要链? 2、快速入门 (Get started) - Using LLMChain多个变量 使用字典输入在 LLMChain 中使用聊天模型: 3、异步 API4、不同的调用方法__call__调用仅返回输出键值 return_only_outputs只有一个输出键 run只有一个输入键 5、自定义cha…

Git分布式版本控制系统——Git常用命令(一)

一、获取Git仓库--在本地初始化仓库 执行步骤如下: 1.在任意目录下创建一个空目录(例如GitRepos)作为我们的本地仓库 2.进入这个目录中,点击右键打开Git bash窗口 3.执行命令git init 如果在当前目录中看到.git文件夹&#x…

第一届长城杯初赛部分wp(个人解题思路)

目录 Black web babyrsa2 APISIX-FLOW cloacked 本人不是很擅长ctf,这只是我自己做出的西部赛区部分题的思路,仅供参考 Black web 访问http://192.168.16.45:8000/uploads/1711779736.php 蚁剑连接 访问/var/www/html/u_c4nt_f1nd_flag.php babyr…

Java中利用BitMap位图实现海量级数据去重

🏷️个人主页:牵着猫散步的鼠鼠 🏷️系列专栏:Java全栈-专栏 🏷️个人学习笔记,若有缺误,欢迎评论区指正 目录 前言 什么是BitMap?有什么用? 基本概念 位图的优势 …

谷歌seo自然搜索排名怎么提升快?

要想在谷歌上排名快速上升,关键在于运用GPC爬虫池跟高低搭配的外链组合 首先你要做的,就是让谷歌的蜘蛛频繁来你的网站,网站需要被谷歌蜘蛛频繁抓取和索引,那这时候GPC爬虫池就能派上用场了,GPC爬虫池能够帮你大幅度提…

清明美食制作|“心灵护航,增能培力”残疾人职业能力提升培养

为提高残疾人的动手能力,提升个人的自身素质和自主就业创业能力,弘扬中华民族传统文化,临近清明之际,淳安县从益舍社会工作服务中心于浪川乡展开了以“品尝春天味道 制作清明粿 清明美食制作”为主题的清明节活动。 【清明粿制作】…

图片水印生成

请完善 js/index.js 文件中的 TODO 部分&#xff0c;实现创建水印函数的功能 &#xff0c;创建的水印需要使用 <span> 标签展示。 createWatermark 函数参数说明 参数 说明 类型 text 文字内容 string color 颜色值 string deg 旋转角度 numbe…

多输入多输出 | Matlab实现XGboost多输入多输出预测

多输入多输出 | Matlab实现XGboost多输入多输出预测 目录 多输入多输出 | Matlab实现XGboost多输入多输出预测预测效果基本介绍程序设计往期精彩参考资料 预测效果 基本介绍 Matlab实现XGboost多输入多输出预测 1.data为数据集&#xff0c;10个输入特征&#xff0c;3个输出变量…

祝贺云贝教育携手腾讯云,于3月30日成功护送考生通过TDSQL的专业认证考核

ZHENBIN MIN同学腾讯云TDSQL(MySQL版)交付运维高级工程师 TCP考试成绩、证书展示&#xff1a; SIHAO WU同学腾讯云TDSQL(MySQL版)交付运维高级工程师 TCP考试成绩、证书展示&#xff1a; 培训概述 数据库交付运维高级工程师-腾讯云TDSQL&#xff08;MySQL版&#xff09;培训&a…

【项目实战经验】DataKit迁移MySQL到openGauss(下)

上一篇我们分享了安装、设置、链接、启动等步骤&#xff0c;本篇我们将继续分享迁移、启动~ 目录 9. 离线迁移 9.1. 迁移插件安装 中断安装&#xff0c;比如 kill 掉java进程&#xff08;安装失败也要等待300s&#xff09; 下载安装包准备上传 缺少mysqlclient lib包 mysq…

3D GPR 切片图

之前写的代码&#xff0c;结果测试时发现绘图结果不对&#xff0c; 重新看&#xff0c;发现是数据处理方式不对。 切片绘图结果&#xff0c;只是图片增益设置还存在不足。

19 - 程序状态字

---- 整理自B站UP主 踌躇月光 的视频 1. ALU 扩充及 PSW 1.1 电路实现 1.2 测试电路 1.2.1 加法 1.2.2 减法 1.2.3 与 只观察灯的变化。 1.2.4 或 只观察灯的变化。 1.2.5 异或 只观察灯的变化。 1.2.6 非 只观察灯的变化。 2. 实验工程 【19 - 程序状态字】

深度解析SPARK的基本概念

关联阅读博客文章&#xff1a; 深入理解MapReduce&#xff1a;从Map到Reduce的工作原理解析 引言&#xff1a; 在当今大数据时代&#xff0c;数据处理和分析成为了企业发展的重要驱动力。Apache Spark作为一个快速、通用的大数据处理引擎&#xff0c;受到了广泛的关注和应用。…

TypeScript常用知识点整理

介绍 TypeScript 是 JavaScript 的一个超集&#xff0c;添加了静态类型支持和更多现代编程特性&#xff0c;提高了代码的可靠性和可维护性。最终会被编译成标准的 JavaScript 代码运行。 使用npm install -g typescript进行全局安装 将编写好的ts代码进行运行&#xff0c;第…