活动介绍

小条目集合的改进私有集合交集协议

立即解锁
发布时间: 2025-09-18 00:27:53 阅读量: 3 订阅数: 11 AIGC
PDF

公钥密码学前沿研究

### 小条目集合的改进私有集合交集协议 #### 1. 哈希方法与多项式插值成本 不同哈希方法在进行多项式插值时的成本有所不同: - 广义布谷鸟哈希(GCH):$N = 0.65n$ 且 $d = 3$,执行 $N$ 次多项式插值的成本非常小。 - 双选择哈希:$N = 0.33n$ 且 $d = 4$,执行 $N$ 次多项式插值的成本也较小。 - 简单哈希:$N = n/10$ 且 $d \approx 46$,执行 $N$ 次多项式插值的成本较高,但执行 $n/10$ 次 46 度插值仍然相当快。 | 哈希方法 | $N$ 值 | $d$ 值 | 多项式插值成本 | | ---- | ---- | ---- | ---- | | 广义布谷鸟哈希(GCH) | $0.65n$ | 3 | 非常小 | | 双选择哈希 | $0.33n$ | 4 | 较小 | | 简单哈希 | $n/10$ | $\approx 46$ | 较高 | #### 2. 基于 mOPRF 的恶意私有集合交集协议 提出了一种基于 BaRK - OPRF 和简单哈希结合基于置换的哈希函数的恶意安全私有集合交集(PSI)协议。 **参数设置**: - 发送方 Alice 和接收方 Bob 分别有输入集合 $X = \{x_1, x_2, ..., x_n\} \in F_p$ 和 $Y = \{y_1, y_2, ..., y_n\} \in F_p$,所有元素的位长为 $\ell$。 - 随机哈希函数 $h : \{0, 1\}^* \to [N]$。 - 基于置换的哈希函数 $Per_h,X$ 将集合 $X$ 映射到表 $B_X$,该表由 $N$ 个桶组成,每个桶有 $d$ 个槽,其中 $Nd > |X|$,且 $d = O(1)$。记 $Per(x) := (i, x')$,其中 $x'$ 是 $x$ 在桶 $i$ 中存储的值,由 $h$ 和 $x$ 定义,且 $Per^{-1}(i, x') = x$。 **协议步骤**: 1. Bob 使用 $Per$ 将 $Y$ 映射到 $B_Y$,对于 $B_Y[i]$ 中每个桶的空槽,放入一个长度为 $\ell - \log N$ 的虚拟项。 2. Alice 发送(sender, id),Bob 发送(receiver, id, $B_Y$)到 $F_{oprf}$,然后: - Bob 接收 $Y' = \{F(i, y') | y' \in B_Y[i]\}_{i\leq N}$。 3. 对于每个 $x \in X$,Alice 向 $F_{oprf}$ 查询 $x$,输入为 $(i, x')$ 使得 $Per(x) = (i, x')$,然后 Alice 得到 $F(i, x')$。Alice 向 Bob 发送 $U = \{F(i, x') | x \in X \land Per(x) = (i, x')\}$。 4. 对于每个 $y \in Y$,若 $Per(y) = (i, y')$ 且 $F(i, y') \in U$,则 Bob 输出 $y$ 作为交集中的元素。 ```mermaid graph TD; A[Bob: 映射 Y 到 BY 并填充虚拟项] --> B[Alice 发送(sender, id) 且 Bob 发送(receiver, id, BY) 到 Foprf]; B --> C[Bob 接收 Y']; B --> D[Alice 查询 X 到 Foprf 并得到 F(i, x')]; D --> E[Alice 发送 U 给 Bob]; E --> F[Bob 判断 F(i, y') 是否在 U 中]; F --> G[Bob 输出交集元素]; ``` 在恶意环境下,当发送方被破坏时,模拟需要从对 $F_{oprf}$ 的查询和集合 $U$ 中提取发送方的输入集合 $X$。为避免碰撞,一种方法是选择 $v = 2\kappa$,但这会显著增加通信开销。另一种方法是仅提取 PRF 唯一且出现在 $U$ 中的元素。 该协议的估计通信开销为 $Nd(\ell - \log N)+(\kappa + \log n)n + o(n)$,且在 $F_{oprf}$ 混合模型下,针对恶意对手具有统计安全性。 #### 3.
corwn 最低0.47元/天 解锁专栏
买1年送3月
继续阅读 点击查看下一篇
profit 400次 会员资源下载次数
profit 300万+ 优质博客文章
profit 1000万+ 优质下载资源
profit 1000万+ 优质文库回答
复制全文

相关推荐

FEP数据驱动架构 商用产品研发处 网络平台课 平台架构组 龙星志 版 本 历 史 版本/状态 责任人 起止日期 备注 V0.1/草稿 龙星志 21.Feb.2025 创建文件 目录 1. 业务驱动模式一览 1 2. 过程驱动 1 3. 事件驱动 2 4. 数据驱动 4 5. FEP平台架构 6 5.1 数据平面,数据集合与数据快照 6 5.2 平台层面的业务推动方式 6 5.3 业务设计思路的变化 6 1. 业务驱动模式一览 结合常见嵌入式平台以及我们自己的产品开发经验,在多进程化的软件平台上,目前根据进程通信底层逻辑特点,总结起来有三种业务驱动模式  过程驱动:面向过程与操作的驱动方式,即函数调用的方式,IPC模式为RPC(远程过程调用),特点为同步阻塞,实时获取结果,点对点,多过程串行执行。  事件驱动:面向独立个体事件的驱动方式,业务逻辑由事件触发,IPC模式为notify,特点为异步,非阻塞,不关注实时结果(结果通过异步事件通知),支持多播模式。  数据驱动:面向数据对象整体的驱动方式,业务逻辑由数据变化引起,IPC模式为notify,在事件驱动的特点基础上,叠加批量处理,事务处理,事件整合去重。 2. 过程驱动 过程驱动扩展自“面向过程编程”的执行流程,一个完整的业务可以看作一个完整的“过程函数”,该过程函数中使用到其他模块功能的逻辑需要通过“过程函数调用”实现。 而在多进程化平台中,“函数调用”扩展为了“远程函数(过程)调用”,即RPC;自然而然地,RPC也带有“过程函数调用”的特点。 如上图所示,RPC模式有以下显著特点:  实时获取调用结果 该特点带来的执行逻辑上的特性为同步RPC,生产者需要等待获取消费者的业务执行结果。  点对点执行 生产者必须指定消费者发送特定的RPC请求,以求调用到预期的远程过程函数,因为函数定义由消费者提供。  多过程调用串行 由于同步RPC的特点,生产端的发往同一个消费端的RPC必须串行,例如途中P-A对P-B的两次RPC调用。 生产端在同一个业务流程中发往不同消费端的RPC通常也必须串行,也就是说RPC不支持消费端并行的真正意义上的多播。 同样地,消费端接收多个生产端发送的同一个RPC请求,通常情况下也只能串行(部分独立请求可以由线程池并行计算)。 下图是以2个producer,3个consumer为例的过程驱动IPC示意图: 3. 事件驱动 事件驱动的通常实现是将所有事件集中到MOM(Message Oriented Middleware),统一收集与分发,该实现可以有效降低producer与consumer之间的通信通道,编码逻辑耦合。一个简单的事件驱动示意框图如下: 我们将上述示例整合为1个producer,2个consumer的简单例子构成业务逻辑时序示意图: 可以看到,在事件驱动中,每一种“操作”,都需要预定义一个独立事件,事件驱动在实际的业务开发过程中可能面临以下典型的问题: 1. 事务化需求带来的事件定义冗余 如果有某种复合操作,可以定义新的E-N,也可以拆解为多个已定义的独立事件的组合:E1+E2+E3,由于实际系统中存在多个生产者,也不能通过发送E1+E2+E3代替E-N,会出现消费端事件顺序与数据一致性问题,也就是业务对“事务化”的需求。 此时复合事件的定义就带来了数据冗余。 2. 多个相同事件处理 部分事件因producer的各种原因,出现短时间大量推送,造成consumer持续高负载;实际上这些事件对consumer而言只需要最后一个事件即可。在事件驱动框架下,事件之间是独立的,代表着事件消费端也必须独立处理每一个事件,与冗余去重需求冲突。 3. 数据持久化与平台高可靠特性 Info-Center处理的每一个事件的数据都是独立且实时的,当consumer完成该事件处理后,事件携带的数据即刻过期,故Info-Center无法持久化表征整个系统的某一时刻的状态。 在现代网络系统中,平台级高可靠是必不可少的功能,包含ISSU,NSF,GR等功能。这些功能要求业务必须做数据平面/控制平面分离,并将数据平面在进程外持久化,提供业务无感的快速恢复机制。显然纯事件驱动框架无法做到这一点。 4. 数据驱动 数据驱动是基于两个核心需求:数据持久化,平台高可靠而衍生出来的IPC架构概念,其基础为数控分离。 既然在数控分离的条件下,数据平面在某一时刻的数据集合,可以用来表征整个系统在该时刻的一个合法状态,那么当外部请求对这个系统的数据集合做出一些数据上的改变,就意味着整个系统在软件层面就从某个合法状态迁移到了另一个合法状态,此时系统中的业务就需要根据这一次的状态变化,将该合法状态扩散到系统控制下的其他平面:例如转发面,硬件层,保证该系统在用户侧表现与软件层面的状态迁移一致。 上述逻辑流,我们称为数据驱动(面向数据集合的设计),与传统的过程驱动(或面向操作的设计)的设计思路完全相反,如下图所示: 上半部是过程/事件驱动的流程,数据存在于业务进程内,事件/操作业务逻辑数据变化; 下半部是数据驱动流程,业务数据在数据库中,外部请求数据变化业务逻辑; 业务流逻辑有显著区别。(PS,上下的“业务逻辑”涵盖的具体代码有较大区别) 根据上述说明,我们将数据平面以业务(模块)为粒度分成了多个数据对象,假设某一个业务A的数据对象包含的数据集合DO-A有K个合法状态,那么该业务的业务处理函数,理论上需要处理K*(K-1)种状态迁移逻辑,我们定义这些状态迁移逻辑函数为f(DO(i),DO(j))(0<i,j<=K, i!=j)。需要强调的是,这里的函数f(),指的是业务进程内的业务逻辑函数,而不是用户交互层的交互请求。 实际业务中,绝大部分 f(DO(i),DO(j)) 不关心参数DO(i);即业务进程内的业务函数通常只需要处理数据状态变化的终态,而不关心起始态。 不关心起始态可能有两个原因:业务本身不关心起始态(例如添加条目,如果已存在则替换);用户交互层将起始态与终态做了预处理(典型场景:重复配置检查)。  对于DO(j)终态数据集合对象而言,假设该DO有m个最小粒度的数据域,可以形成n组相互独立的数据子集(n<=m,任意两个数据子集的交集均为空集)。我们只需要在f(NULL,DO(j))函数中,独立处理上述n个数据子集即可,这些处理分支之间没有逻辑依赖,因为他们处理的数据没有关联。  对于关心起始态数据的函数f(DO(i),DO(j)),其DO(i)状态数据不必从数据库中获取,业务模块内部会对其上一次f(DO(i),DO(j))完成执行后到达的终态数据进行缓存。 业务进程执行流:f(NULL,DO(j.1)) f(DO(j.1.t),DO(j.2)) f(DO(j.2.t),DO(j.3)) … … 上述流程中,DO(j.x.t)代表该数据与DO(j.x)表达含义一致,但数据源或数据模型不同。 4.1 数据驱动特点-持久化 数据驱动的必要条件有两个:异步数据消息处理中心,数据平面独立; 实际实现中,我们通过独立的数据库进程(例如Redis-Server)作为数据消息处理中心,并同时承担数据平面的载体。 此时,业务模块进程只保留纯粹的逻辑代码和逻辑代码内部使用的临时数据,不包含任何对模块而言有实际意义的状态数据。当我们重启业务模块进程时,就可以从独立的数据平面取出指定时间节点的数据快照(data status snapshot),进行快速状态恢复。 4.2 数据驱动特点-冗余处理 数据驱动在逻辑处理方式上,天然支持数据冗余处理,即: Producers对数据的改动次数,不影响consumers对数据最终状态的处理逻辑。 即对于数据变化的响应端,通常情况下,只需要关注数据时刻T1到时刻Tn的总体变化,而不需要关注其中间时刻Ti的状态。(并不绝对,但大部分模块应当如此,也应当往该方向进行设计考虑)。此时响应端可以实现在Producers推送m次变化时,触发n次回调处理(n<=m),降低Comsumers的业务处理负担,下图是数据驱动的冗余处理示意图: Comsumer-1最终只需要处理数据集合的Old*状态到New-F状态的变化即可,NEW-1/NEW-2不需要处理。 当然,部分业务模块对数据变化趋势敏感,其数据集合的状态子集并不是相互独立的,此时需要中间件提供单次处理模式。 5. FEP平台架构 FEP平台的整体分层框图如下: 5.1 数据平面,数据集合与数据快照  数据平面 即Data-MOM中间件管理的所有数据所处的空间。 空间实体则是一组承载实体数据的进程,这些进程可以是Database-Server,共享内存,或其他进程。 数据平面根据FEP的分层特性通常分为三类: 北向数据平面(通常是纯软件的业务数据,包含配置数据与业务公共状态数据) 南向数据平面(包含硬件,操作系统的配置与状态数据) 业务私有数据平面(包含业务完整的状态数据)  数据集合 数据平面实例包含的所有数据即FEP的平台数据集合。 我们提到数据集合的概念时,通常会指明数据集合所表达的范围,故会以XX的数据集合来描述一个数据集合的对象实例。 数据平面由数据集合组成,数据集合通常以业务模块为最小粒度描述,FEP的数据驱动流程,也是以最小粒度的数据集合为操作单位。  数据快照 数据快照(snapshot)即一个业务数据的全集实例,在某一个时刻T(i)的值。 现有模块M,其数据集合DSM,有k个合法状态DSM(i)(0<i<=k, k有限),这K个合法状态构成M的合法数据状态集合DSM-V,我们可以通过函数Fdss(i)得到模块M在时刻T(i)的一个合法的数据快照,则:Fdss(i)∈ DSM-V。 5.2 业务设计思路的变化 在传统的,基于过程驱动/RPC的设计模式中,UI交互层的业务逻辑常常于业务内部逻辑耦合,这是由于设计者习惯于从上而下的设计思路,例如交换产品在开发一个新业务模块时,通常会有以下流程: 1. 需求分析+竞品调研:这一步通过竞品CLI命令对比,整理出我们需要对标的功能点。 2. 概要设计+接口设计:基于1的调研结果,这一步通常会按照CLI命令设计对应的功能,此时可能会出现业务模块的接口设计与CLI命令的交互方式相关。 3. 编码:通常业务模块会先完成CLI命令编码,再根据命令操作编写对应的业务模块北向接口,导致该接口可能在诸如HTTP等其他UI上无法直接使用。 在FEP2.0中,当我们将北向数据平面独立后,业务设计实际上分为了三个部分,设计顺序从上到下: 北向数据平面的模块数据集合 业务内部执行逻辑,以及私有数据平面,南向数据平面的数据集合; 基于A,设计不同UI层面的用户交互层的业务逻辑 即:先设计数据平面,再设计控制面接口,最后设计上下层交互业务逻辑。 业务设计思路总体来说遵循以下三个要点:  数据平面先行 数据驱动的核心是数据平面与数据集合,那么业务模块在设计时需要首先考虑数据平面。 按照FEP的数据平面类型整理出某个业务模块的功能可以分别放到以下哪个数据平面中,集体可以通过哪种组织方式(条目表,配置项等),每一个数据项如何表达(域命名,域数据类型等): 1. 用户配置数据 2. 业务状态数据 3. 系统/硬件适配数据(可选) 4. 公共业务状态数据:公共业务状态数据是业务状态数据的子集。 以前提:“UI交互逻辑(北向),硬件适配逻辑(南向)与业务内部逻辑(业务层)分别由不同的负责人开发”的方式,独立设计上述几类数据。  用户交互逻辑,业务内部逻辑,硬件适配逻辑解耦 传统“过程驱动”开发模式中,通常上述三类逻辑会整合到一个函数或执行流程中,典型流程如下: 获取UI参数参数合法性检查写入软件层数据调用硬件配置接口 而在FEP平台架构要求下,一个典型流程可以拆分为3段控制流程: 交互逻辑层,业务逻辑层,适配逻辑层 通过两个不同层次的数据平面(北向数据平面,南向数据平面)完全隔离3段控制流程之间的耦合:  根据北向,南向,东西向实际需求调整数据模型,达成不同软件层次的“交互协议”。

史东来

安全技术专家
复旦大学计算机硕士,资深安全技术专家,曾在知名的大型科技公司担任安全技术工程师,负责公司整体安全架构设计和实施。
最低0.47元/天 解锁专栏
买1年送3月
百万级 高质量VIP文章无限畅学
千万级 优质资源任意下载
千万级 优质文库回答免费看
立即解锁

专栏目录

最新推荐

日志系统设计艺术:uTorrent调试追踪与隐私保护的5层平衡策略

![日志系统设计艺术:uTorrent调试追踪与隐私保护的5层平衡策略](https://www.adslzone.net/app/uploads-adslzone.net/2019/05/descarga-utorrent.jpg) # 摘要 本文围绕P2P环境下日志系统的设计挑战与隐私保护问题,提出一种兼顾功能、性能与安全的五层平衡模型。针对uTorrent等P2P应用的调试追踪需求,深入剖析日志采集机制、上下文关联与实时传输优化技术,解决高并发场景下的资源占用与性能损耗问题。在隐私保护层面,系统性地整合IP匿名化、节点信息模糊化、AES加密存储及基于权限的访问控制机制,满足GDPR

从MATLAB命令行到Simulink模型:统一视角下汉明码实现的4种方式对比(含代码+模型结构图)

![从MATLAB命令行到Simulink模型:统一视角下汉明码实现的4种方式对比(含代码+模型结构图)](https://img-blog.csdn.net/20160928194929315) # 摘要 本文系统研究了汉明码在MATLAB与Simulink环境下的多种实现方法,涵盖理论建模、命令行编程、函数模块化、图形化建模及混合编程五个技术路径。通过构建生成矩阵与校验矩阵,实现了编码与解码的完整逻辑,并结合syndrome计算完成错误检测与纠正。文章详细阐述了四种实现方式的技术细节与优化策略,包括向量化运算、模块封装、S-Function定制及跨平台数据一致性验证,并通过误码率仿真

开源工具包剖析:主流电力仿真软件中前推回代实现机制的深度逆向解析(仅限内部视角)

![pwcl190226_潮流计算_电力系统前推回代潮流计算_前推回代_拓扑识别_电力拓扑_源码.zip](https://afteracademy.com/images/graph-traversal-breadth-first-search-bfs-step1-014a261c2b54dab6.png) # 摘要 前推回代算法是电力系统潮流计算中处理辐射状配电网的核心数值方法,具有结构清晰、计算效率高的特点。本文系统阐述该算法的基本原理与数学建模过程,解析其在节点分类、方程构建及迭代收敛机制中的关键技术细节,并对比OpenDSS、GridLAB-D与pandapower三大开源平台的

RDM设备识别与配置实战:基于C++的PDU解析与响应机制深度实现

![RDM设备识别与配置实战:基于C++的PDU解析与响应机制深度实现](https://learn.microsoft.com/zh-cn/windows-hardware/drivers/bringup/images/systemanddevicefirmwareupdateprocess.png) # 摘要 本文围绕RDM(Remote Device Management)协议在C++环境下的实现机制,系统阐述了其基础原理、数据单元解析、响应生成与设备控制等关键技术环节。通过深入分析RDM协议帧结构与PDU格式,设计了基于类继承与TLV解析的高效数据解析模型,并构建了支持动态解码与

语义歧义问题探讨:当“红色球”被误标为“橙色”时模型准确率下降超30%?真相揭秘

![红黄蓝绿四色球数据-1745张-含voc(xml)+yolo(txt)+json三种格式标签.zip](https://velog.velcdn.com/images/kyungmin1029/post/b67f1465-7583-4888-b45a-a31b0d526131/image.png) # 摘要 语义歧义是影响人工智能系统鲁棒性与可靠性的关键问题,广泛存在于自然语言处理与视觉理解任务中。本文系统界定语义歧义的概念,剖析其在多义性、上下文依赖、嵌入空间模糊及标注偏差等方面的理论根源,并通过“红色球误标为橙色”实证研究揭示标签噪声对模型性能的显著影响。实验表明,不同架构在语义

嵌入式系统USB调试秘籍:用示波器捕获枚举失败瞬间的6步定位法

![MINI MICRO A型B型D型USB封装库USB type-c母座 AD元件库PCB封装库USB封装大全.zip](https://res.cloudinary.com/rsc/image/upload/b_rgb:FFFFFF,c_pad,dpr_2.625,f_auto,h_214,q_auto,w_380/c_pad,h_214,w_380/F5157561-02?pgw=1) # 摘要 嵌入式系统中USB调试面临协议复杂、硬件依赖性强和问题复现困难等核心挑战。本文系统梳理USB协议基础与设备枚举机制,深入分析枚举失败在协议层的典型成因,包括描述符错误、控制传输异常及状态机

批量字符转换性能优化:减少PB与DLL间上下文切换开销的3大绝招

![批量字符转换性能优化:减少PB与DLL间上下文切换开销的3大绝招](https://img-blog.csdnimg.cn/1508e1234f984fbca8c6220e8f4bd37b.png) # 摘要 在大规模字符转换场景中,频繁的上下文切换成为制约系统性能的关键瓶颈,尤其体现在进程边界(PB)与动态链接库(DLL)间的调用开销。本文系统分析了操作系统级上下文切换机制及其性能影响,重点探讨了用户态与内核态切换、跨模块调用中的堆栈管理与数据拷贝代价,并结合 Perf、VTune 等工具量化上下文开销。针对该问题,提出了批量聚合调用、共享内存与零拷贝、异步非阻塞 I/O 等优化策

PCB设计致命陷阱曝光:电子小尺高频噪声抑制与接地布局10年经验总结

![PCB设计致命陷阱曝光:电子小尺高频噪声抑制与接地布局10年经验总结](https://pcbmust.com/wp-content/uploads/2023/02/top-challenges-in-high-speed-pcb-design-1024x576.webp) # 摘要 高频噪声与接地问题是高速PCB设计中的核心电磁兼容性挑战,尤其在小型化电子设备中更为突出。本文系统梳理了高频噪声的产生机理,包括开关瞬态、寄生参数效应及多种耦合路径,并结合实测与仿真手段分析噪声传播特性。深入探讨了接地策略的理论演进与工程实践,强调地作为信号回流路径的重要性,提出优化回流、避免跨分割等关

动态几何数据持久化机制研究:状态保存与恢复一致性的6大保障策略揭秘

![动态几何数据持久化机制研究:状态保存与恢复一致性的6大保障策略揭秘](https://redis.io/wp-content/uploads/2022/02/data-replication-redis-blog-a-1024x573.jpg?&auto=webp&quality=85,75&width=500) # 摘要 动态几何数据的持久化在交互式建模与复杂系统中面临状态一致性、版本演化和高效存储等核心挑战。本文系统梳理了动态几何数据的状态建模理论,提出基于图结构与时空坐标的抽象表示方法,并建立状态一致性与版本演化的数学约束框架。针对状态保存与恢复的关键环节,设计了差分快照、增量

组播通信完整实践:基于NLDE-DATA.request的3步发送流程与性能优化建议

![组播通信完整实践:基于NLDE-DATA.request的3步发送流程与性能优化建议](https://static.casadomo.com/media/2024/01/shneider-electric-hi-real-estate-aplicacion-wiser-portada-1024x512.png) # 摘要 本文围绕组播通信在低功耗无线网络中的实现机制,聚焦NLDE-DATA.request协议原语的技术细节与应用实践。系统阐述了IEEE 802.15.4与Zigbee网络层数据服务的理论基础,解析了组播地址分配、消息封装及三步发送流程的关键技术环节,并结合Conti