【隐私计算】对SIMD编码的粗浅理解

首先需要知道,同态加密是在多项式上进行的,基于RLEW的整体流程如下:

在这里插入图片描述
将单个数编码到一个N阶(N项)多项式中,多项式系数的利用率极低。而在神经网络中,我们需要计算的东西往往是一个很大的矩阵/tensor,并非不是单个数。所以需要打包编码技术(packing)将很多数同时编码到同一个多项式中,来提高多项式系数的利用率。

将一个数组编码进多项式,可以分为两种形式:

在这里插入图片描述
系数编码可以参考Cheetah的做法,Cheetah自定义了一套编码规则,使多项式相乘后的结果多项式中的一些系数正好是需要的卷积结果。
这里主要讨论点值编码,也就是SIMD编码。SIMD编码被广泛用在全同态方案中,包括CKKS、BFV、BGV等。

SIMD指的是把一系列数通过中国剩余定理(CRT)打包(pack)到同一个多项式中,使一次多项式乘法计算可以完成多次明文乘法。计算必须是在素数域 Z p \mathbb Z_p Zp上。

x n + 1 x^n+1 xn+1可以表示为 n n n个多项式的积:
x n + 1 = ( x + a 1 ) ( x + a 2 ) ⋯ ( x + a n ) m o d    p x^n+1 = (x+a_1)(x+a_2)\cdots (x+a_n) \mod p xn+1=(x+a1)(x+a2)(x+an)modp

例子:设 p = 17 p=17 p=17,多项式阶数 N = 2 N=2 N=2,于是
x 2 + 1 = x 2 − 17 x + 52 m o d    17 = ( x − 4 ) ( x − 13 ) m o d    17 x^2+1 = x^2-17x+52 \mod 17 = (x-4)(x-13) \mod 17 x2+1=x217x+52mod17=(x4)(x13)mod17

f ( x ) m o d    ( x n + 1 ) f(x)\mod (x^n+1) f(x)mod(xn+1)可以表示为 n n n个整数:
x i = f ( x ) m o d    ( x + a i ) x_i = f(x)\mod (x+a_i) xi=f(x)mod(x+ai)
f ( x ) m o d    ( x n + 1 ) f(x)\mod (x^n+1) f(x)mod(xn+1)打包了 a i a_i ai

例子: x m o d    ( x 2 + 1 ) x \mod (x^2+1) xmod(x2+1)可以表示为 x m o d    ( x − 4 ) , x m o d    ( x − 13 ) x \mod (x-4), x \mod (x-13) xmod(x4),xmod(x13),也就是 x m o d    ( x 2 + 1 ) x \mod (x^2+1) xmod(x2+1)打包了4和13。

给定 n n n个整数,可以通过CRT找到对应 f ( x ) f(x) f(x)来编码这些整数。
例子: 2 x − 7 2x-7 2x7打包了1和2,因为 2 x − 7 m o d    ( x − 4 ) = 1 , 2 x − 7 m o d    ( x − 13 ) = 2 2x-7 \mod (x-4)=1, 2x-7 \mod (x-13)=2 2x7mod(x4)=1,2x7mod(x13)=2

打包在模 p p p上具有同态性:

  • 加法: x + ( 2 x − 7 ) x+(2x-7) x+(2x7)打包了5和15
    • 3 x − 7 m o d    ( x − 4 ) = 5 , 3 x − 7 m o d    ( x − 13 ) = 15 3x-7 \mod (x-4)=5, 3x-7 \mod (x-13)=15 3x7mod(x4)=5,3x7mod(x13)=15
  • 乘法: x ⋅ ( 2 x − 7 ) x\cdot(2x-7) x(2x7)打包了4和9
    • 2 x 2 − 7 x m o d    ( x 2 + 1 ) = − 7 x − 2 2x^2-7x \mod (x^2+1) = -7x - 2 2x27xmod(x2+1)=7x2
    • − 7 x − 2 m o d    ( x − 4 ) = 4 , − 7 x − 2 m o d    ( x − 13 ) = 9 -7x - 2 \mod (x-4) = 4, -7x - 2 \mod (x-13) = 9 7x2mod(x4)=4,7x2mod(x13)=9

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

docker部署EKF

1.检查版本 检查当前系统的docker版本 [rootnode1 ~]# docker version Client: Docker Engine - CommunityVersion: 20.10.12API version: 1.41Go version: go1.16.12Git commit: e91ed57Built: Mon Dec 13 11:45:41 2021OS/Arch: …

【ajax实战07】文章筛选功能

本文章目标:根据筛选条件,获取匹配数据展示 本章**“查询参数对象”指的是,要“获取文章列表”功能**中服务器接口要求配置的对象 实现步骤如下: 一:设置频道列表数据 二:监听筛选条件改变,…

侯捷C++面向对象高级开发(上)-1-头文件与类的声明

1.数据和函数比较 2.代码基本形式 3.c vs c输出 4.头文件防卫式声明 5.头文件布局 6.class模板简介

MoneyPrinterPlus:AI自动短视频生成工具-微软云配置详解

MoneyPrinterPlus可以使用大模型自动生成短视频,我们可以借助Azure提供的语音服务来实现语音合成和语音识别的功能。 Azure的语音服务应该是我用过的效果最好的服务了,微软还得是微软。 很多小伙伴可能不知道应该如何配置,这里给大家提供一…

Vip-智能预估+大数据标签+人群全选=用户分群!

Mobpush用户分群功能升级,创建推送入口vip用户可进入自有选择标签创建“用户分群”,相比于免费标签,“用户标签”维度更丰富。在应用基础属性上,增加“品牌”、“网络状态”、“运营商”,众所周知,不同厂商…

vue-主题切换

themeName/index.vue页面: <template><div class"theme-view"><div click"themeClick" class"theme-btn">切换颜色</div><br>{{themeName white ? 白色 : 深色}}主题页面</div> </template><sc…

数据结构与算法 - 图

博客主页&#xff1a;誓则盟约系列专栏&#xff1a;IT竞赛 专栏关注博主&#xff0c;后期持续更新系列文章如果有错误感谢请大家批评指出&#xff0c;及时修改感谢大家点赞&#x1f44d;收藏⭐评论✍ 图的定义和基本概念&#xff1a; 图&#xff08;Graph&#xff09;是一种由…

答辩不用愁 :AI生成PPT让你的演讲更出色

不知道大家有没有发现&#xff0c;随着人工智能技术的快速发展&#xff0c;AI工具正逐渐渗透到我们日常生活的各个方面&#xff0c;极大地提高了我们的工作和学习效率。无论是AI写作、AI绘画、AI思维导图&#xff0c;还是AI幻灯片制作&#xff0c;这些工具已成为我们不可或缺的…

社区便民团购小程序源码系统 前后端分离 带完整源代码包以及搭建部署教程

系统概述 随着移动互联网的快速发展&#xff0c;社区团购凭借其便利性、优惠性逐渐走进人们的生活&#xff0c;成为了日常生活不可或缺的一部分。为了满足市场对此类服务的需求&#xff0c;我们特别推出了一款社区便民团购小程序源码系统&#xff0c;该系统采用前后端分离架构…

三河市寄大件物品快递多少钱?

在三河市&#xff0c;如果你需要寄送大件物品&#xff0c;费用问题无疑是你最关心的。不同的快递公司收费标准各异&#xff0c;今天&#xff0c;就让我们来探讨一下&#xff0c;从三河市寄大件物品&#xff0c;哪家快递更划算。 1. 祺祺寄快递&#xff1a; “祺祺寄快递”是一…

我的北航MEM成长之旅

领完毕业证&#xff0c;2年的学业生涯到此结束。为了方便大家理解后续的内容&#xff0c;这里我们先解释下基本信息&#xff0c;比如MEM到底是个啥&#xff1f;以及北航的MEM都学什么&#xff1f; 1 MEM解读 1.1 MEM是什么&#xff1f; MEM是"Master of Engineering Ma…

【力扣高频题】011. 盛最多水的容器

前面的算法文章&#xff0c;更新了许多 专题系列 。包括&#xff1a;滑动窗口、动态规划、加强堆、二叉树递归套路 等。 还没读过的小伙伴可以关注一下&#xff0c;在主页中点击对应链接查看哦~ 接下来的一段时间&#xff0c;将持续 「力扣高频题」 系列文章&#xff0c;想刷 …

Eslint prettier airbnb规范 配置

1.安装vscode的Eslint和prettier 插件 eslint&#xff1a;代码质量检查工具 https://eslint.nodejs.cn/docs/latest/use/getting-started prettier&#xff1a;代码风格格式化工具 https://www.prettier.cn/docs/index.html /* eslint-config-airbnb-base airbnb 规范 esl…

基于单片机和组态王的温度监控系统的设计

摘 要 : 介绍了以 MSP430 单片机为核心 , 建立基于 DS18B20 和组态王的温度采集和监控系统。主要研究了单片机和组态王的通用通讯协议。按照 KingView 提供的通信协议 , 设计组态王与单片机的通信程序 , 实现了组态王与M SP430 单片机的直接串行通讯。在中药提取装置的…

2024年【建筑电工(建筑特殊工种)】模拟试题及建筑电工(建筑特殊工种)作业考试题库

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年建筑电工(建筑特殊工种)模拟试题为正在备考建筑电工(建筑特殊工种)操作证的学员准备的理论考试专题&#xff0c;每个月更新的建筑电工(建筑特殊工种)作业考试题库祝您顺利通过建筑电工(建筑特殊工种)考试。 1、…

centos 安装deb格式安装包

背景 研发给了我一个deb包&#xff0c;需要我在centos 这种服务器操作系统上安装... deb包安装一般是使用dpkg -i xxxx.deb 命令&#xff0c;dpkg是Debian类型的系统,但是 通常centos是没有dpkg命令的... 直接就报&#xff1a;bash dpkg 未找到命令... 本来找研发给我编译rp…

基于高通8155的SNPE-PTQ量化方法介绍

一、基于高通8155的SNPE-PTQ量化与打包 量化位置与工作目录&#xff0c;snpe1.51与1.43环境结构相同&#xff0c;下面以1.51为例介绍&#xff1a; SNPE1.51量化&#xff1a;172.20.84.162:/media/share_31.106SNPE1.43量化&#xff1a;172.20.65.2:/media/share_31.106 脚本…

好用的兼容性测试工具推荐

兼容性测试确保软件在不同系统和环境中的一致性。本指南探讨了开发人员和QA专业人员有效检测和解决问题的工具&#xff0c;从而提高应用程序的稳健性和用户满意度。 好用的兼容性测试工具推荐 1.Lambda测试 它是一个由AI驱动的测试编排和执行平台&#xff0c;可让您使用超过300…

新能源电燃灶:变革与优势

在当今社会&#xff0c;能源问题日益凸显&#xff0c;能源危机成为了全球关注的焦点。而在厨房领域&#xff0c;一种名为新能源电燃灶的产品正逐渐走进人们的视野&#xff0c;以华火电燃灶为例&#xff0c;它展现出了令人瞩目的特点和潜力。 随着传统能源的逐渐枯竭和环境压力的…

使用MyBatis的动态SQL注解实现实体的CRUD操作

使用MyBatis的动态SQL注解实现实体的CRUD操作 1. 引言2. 准备工作2.1 创建数据表2.2 创建实体类 Book2.3 修改Mapper接口 BookMapper 3. 测试CRUD操作3.1 配置日志3.2 查询操作3.3 新增操作3.4 修改操作3.5 删除操作 4. 与MyBatis Plus的对比5. 动态SQL注解的适用场景5.1 动态查…