11.1组会汇报-基于区块链的安全多方计算研究现状与展望
基础知识
*1.背书,这个词源来自银行票据业务,是指票据转让时,原持有人在票据背面加盖自己的印鉴,证明该票据真实有效、如果有问题就可以找原持有人。
区块链中的背书就好理解了。可以简单的理解为验证交易并声明此交易合法(或不合法)的链中节点。
背书节点(endorsement、endorsor):在区块链中承担背书任务的节点即是背书节点。背书节点必须通过有效证书的预期信息的有效签名来证明其合法性。
背书策略:背书策略(endorsement policy)可以理解为是对交易进行背书必须满足的条件,即要得到背书成功的结论,必须满足背书策略中给出的条件。
2.链码也称为智能合约,实质上是控制区块链网络中的不同实体或相关方如何相互交互或交易的业务逻辑。是独立可运行的应用程序,运行在基于Docker的安全容器中,在启动的时候和背书节点建立gRPC连接。
在 Fabric中智能合约管理交易逻辑,而链码管理智能合约的打包和部署。Fabric会将智能合约打包进链码中,这个链码会被部署到一个区块链网络中。当智能合约被成功定义于区块 链网络后,客户端应用可以通过发送交易提案的方式来调用合约。
基于区块链的安全多方计算研究现状与展望
1 MPC相关知识
安全多方计算定义:它允许多个参与方在无可信第三方的情况下使用各方的私有输入来联合计算目标函数,并且每一方都无法获得除私有输入、输出外的信息。

高效的MPC协议会利用到图中所表示的基础组件:

安全多方计算协议的构造需要依赖的最主要的三大技术:
秘密共享(通过将秘密信息拆分为若干秘密份额,由多位参与者分别保存,通过参与者的合作,可以使用门限个数或者更多个数的秘密份额来重新构造出原始秘密消息。 常见的秘密分享协议包括三种:Shamir秘密分享、加性秘密分享、复制秘密分享)。
不经意传输(假设发送方有n个数据,数据接收方接受其选定的一个数据,且不能获取也无法知道其他数据,同时数据发送方无法知道接收方的选择)。
混淆电路(混淆电路基于布尔电路(逻辑运算)来构造安全函数计算,保证一方的输入不会泄漏给其他方)。
零知识证明也是MPC的基础组件之一,通常分为证明者和验证者两方,证明者想要向验证者证明某个定理,但是又不暴露自己的证据。具备以下性质:
完备性(Completeness):验证者无法欺骗证明者。若证明者知道一个定理的证明方法,则它可以使验证者以绝对优势的概率相信他能证明。
可靠性(Soundness):证明者无法欺骗验证者。若证明者不知道一个定理的证明方法,则证明者使验证者相信他会证明定理的概率很低。
零知识性(Zero Knowledge):验证者无法获得任何额外的知识。
2链上MPC
链上MPC指将MPC协议集成到区块链网络上执行,计算节点作为区块链网络上的节点通过区块链进行通信,通过区块链的智能合约等机制来完成计算。
下图为存在3个组织的Fabric网络完成MPC的模型示意图,计算参与方可以通过一组应用程序A1、A2、A3连接到Fabric网络,通过认证后以peer节点的形式存在于区块链网络中,它们可以存在于同一个组织或者分散于不同的组织中。
当需要完成MPC任务时,各方的组织构建起一个通道,每个参与节点都维护了一个通道账本的副本。各方协商后共同部署MPC协议链码,并通过链码、背书策略完成MPC。

链上MPC模型
链上MPC总结:
从设计目标来说,目前的相关研究主要目标在于实用性,一类研究如何在区块链上实现MPC协议,另一类基于具体应用场景构造系统。
链上MPC通常基于许可区块链(尤其是Fabric),一是许可区块链具有身份机制以及相对应的一套认证机制。二是链上MPC依赖于区块链的整体结构,能够更好地利用区块链提供的共识、背书策略、身份认证等机制工具,加之Fabric的可插拔组件,能够为链上MPC弥补可扩展性上的不足。
从安全性来看,链上MPC对MPC协议本身的安全性关注不高。影响链上MPC使用最大的问题可能在于效率问题,它根植于多个方面,其中包括区块链内复杂的交易和出块机制对带宽的高需求,以及MPC协议本身的复杂性导致的效率低下问题等。如何在不牺牲安全性的前提下增进链上MPC的执行效率,是未来一个重要的研究方向。链上MPC更适合被用于现实中企业、政府等存在身份机制的应用场景。
3链外MPC
链外MPC的协议执行通过独立的MPC网络执行协议,如云服务器、私有网络或者本地计算机,而不依赖于区块链提供通信手段。在链外MPC构造中,通常会通过智能合约来完成MPC网络与区块链网络的交互。
下图是链外MPC的一般构造模型,用户部署并发布MPC协议到区块链上,计算完成后可以通过智能合约接口与区块链交互,获得计算结果。
数据拥有者的数据以加密的形式存放于存储器之中,数据索引将被发布到区块链账本上,在需要调用时可以通过索引完成查找。当用户共同协商并部署好MPC合约后,MPC网络中的计算节点向区块链缴纳押金,并通过与区块链、存储器进行交互获得数据份额,完成计算。诚实完成计算的节点将结果提交,等待验证通过后可以赎回押金。

链外MPC模型
从设计目标上来说,链外MPC大多研究协议的安全性问题。相关工作主要通过区块链提供押金机制来为MPC协议提供公平性。从使用的区块链不同来说,链外MPC的研究更倾向于使用以太坊或其他支持智能合约的非许可区块链。
4对比和展望
链上和链下mpc对比:

未来需要研究的内容:
目前的链上MPC高度依赖于Fabric以及其可插拔组件的特性,需要提供新的组件支持才能够成功实现链上MPC。提出一种更加简单、高效的链上MPC构造方式是一大研究难点。
无论是链外MPC还是链上MPC都缺乏效率评估体系,难以开展分析。如何系统评价并提高方案执行效率是当前的难点与痛点。
链外MPC的构造模型已趋向成熟,下一步可以考虑技术融合并增强实用性,尤其是使用零知识证明、可信执行环境等隐私计算技术与之相结合,是当前发展的必然趋势。而链上MPC的实用性本身相对较强,亟需解决的还是效率方面的问题。
相关文章:
11.1组会汇报-基于区块链的安全多方计算研究现状与展望
基础知识 *1.背书,这个词源来自银行票据业务,是指票据转让时,原持有人在票据背面加盖自己的印鉴,证明该票据真实有效、如果有问题就可以找原持有人。 区块链中的背书就好理解了。可以简单的理解为验证交易并声明此交易合法&…...
ubuntu【桌面】 配置NAT模式固定IP
DHCP分配导致虚拟机IP老变,SSH老要重新配置,设成静态方便些 一、设NAT模式 1、设为NAT模式 2、看模式对应的虚拟网卡 - VMnet8 3、共享主机网卡网络到虚拟网卡 - VMnet8 二、为虚拟网卡设置静态IP 记住这个IP 三、设置ubuntu固定IP 1、关闭DHCP并…...
评估 机器学习 回归模型 的性能和准确度
回归 是一种常用的预测模型,用于预测一个连续因变量和一个或多个自变量之间的关系。 那么,最后评估 回归模型 的性能和准确度非常重要,可以帮助我们判断模型是否有效并进行改进。 接下来,和大家分享如何评估 回归模型 的性能和准…...
如何下载安装TestLink?
一、下载TestLink、XAMPP TestLink 下载 |SourceForge.net 备用:GitHub - TestLinkOpenSourceTRMS/testlink-code: TestLink开源测试和需求管理系统 下载XAMPP: Download XAMPP 注意:TestLink与PHP版本有关系,所以XA…...
基于SSM+微信小程序的订餐管理系统(点餐2)
👉文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1、项目介绍 基于SSM微信小程序的订餐管理系统实现了管理员和用户。管理端实现了 首页、个人中心、用户管理、菜品分类管理、菜品信息管理、订单信息管理、配送信息管理、菜品评价管理、订单投诉管理、…...
【C++排序 双指针】1996. 游戏中弱角色的数量|1996
本文涉及的基础知识点 排序 C算法:滑动窗口及双指针总结 本题其它解法 【C单调栈 排序】1996. 游戏中弱角色的数量|1996 LeetCode1996. 游戏中弱角色的数量 你正在参加一个多角色游戏,每个角色都有两个主要属性:攻击 和 防御 。给你一个…...
GESP4级考试语法知识(捕捉异常)
参考程序代码: #include <iostream> using namespace std;double divide(double a, double b) {if (b 0) {throw "Division by zero error"; // 抛出异常}return a / b; }int main() {double num1, num2;cout << "Enter two numbers:…...
HTML 基础标签——元数据标签 <meta>
文章目录 1. `<meta>` 标签概述2. 属性详解2.1 `charset` 属性2.2 `name` 属性2.3 `content` 属性2.4 `http-equiv` 属性3. 其他常见属性小结在 HTML 文档中,元数据标签 <meta> 是一种重要的标签,用于提供关于文档的信息,这些信息不直接显示在网页内容中,但对于…...
栈虚拟机和寄存器虚拟机,有什么不同?
本来这节内容是打算直接讲字节码指令的,但讲之前又必须得先讲指令集架构,而指令集架构又分为两种,一种是基于栈的,一种是基于寄存器的。 那不妨我们这节就单独来讲讲栈虚拟机和寄存器虚拟机,它们有什么不同࿰…...
Windows下基于fping进行批量IP测试
fping是Linux下一个很好用的IP测试工具,结合代码可以完成批量的IP测试,在网络调试中用途很广。本文是基于fping for Windows结合bat批处理,定制的测试脚本样例。 一、程序信息 本次测试使用fpingV5.1 for Windows版,版本信息如下…...
一款实用的Word文档图片转换与水印保护工具
目录 前言软件功能简介软件实现方法及关键代码 1. Word 文档转图片的实现2. 图片水印添加功能3. 生成数字指纹(哈希值)4. 保存图片信息到 JSON 文件 软件的实际使用场景软件操作指南 1. 下载和安装2. 操作流程 总结 1,前言 在日常办公和内…...
优化用于传感应用的衬底集成波导技术
ANSYS HFSS 是一款功能强大的电磁仿真软件,支持为微流体生物传感器应用设计和分析衬底集成波导 (SIW) 技术。它为快速设计优化、材料选择、系统集成和虚拟原型制作提供了一个强大的平台。借助 ANSYS HFSS,研究人员和工程师可以高效…...
Java多态特性的向上转型
Java的多态特性通过向上转型来实现。向上转型指的是将子类对象赋值给父类引用变量的操作。这样做的好处是可以使用父类引用变量来调用子类对象的方法。 例如,有一个父类Animal和一个子类Dog,可以这样进行向上转型: Animal animal new Dog(…...
C++ 判断语句的深入解析
C 判断语句的深入解析 C 是一种广泛使用的编程语言,以其高效性和灵活性著称。在 C 中,判断语句是控制程序流程的关键组成部分,它们允许程序根据不同的条件执行不同的代码路径。本文将深入探讨 C 中的判断语句,包括 if、else if、…...
15分钟学 Go 第 33 天:项目结构
第33天:项目结构 目标:了解Go项目的典型结构 在Go语言的开发中,项目结构的合理性直接影响着代码的可维护性、可扩展性和团队协作效率。本篇文章将深入探讨Go语言的典型项目结构,并提供实际示例代码和相关的流程图。 一、Go项目…...
conda迁移虚拟环境路径
方法一:使用软连接 ln -s ~/Anaconda3/envs /new/path/envs 方法二:修改~/.condarc文件 1.打开~/.condarc文件 #添加下面参数 envs_dirs: - /newpath/anaconda3/envs pkgs_dirs: - /newpath/anaconda3/pkgs 2. source ~/.bashrc 3.查看是否成功con…...
(八)JavaWeb后端开发——Tomcat
目录 1.Web服务器概念 2.tomcat 1.Web服务器概念 服务器:安装了服务器软件的计算机服务器软件:接收用户的请求,处理请求,做出响应web服务器软件:在web服务器软件中,可以部署web项目,让用户通…...
yocto中通常不直接修改提供的recipes的bb文件
不直接在 Yocto 官方提供的 recipe 中修改 通常是创建新的 metadata 和 recipe 来配置相关软件编译等过程 主要有以下几个原因: 1. 便于维护和升级 隔离自定义修改:Yocto 官方的 recipe 可能会随着版本更新而变化。如果直接修改官方 recipe࿰…...
智能座舱相关术语全解及多模态交互在智能座舱中的应用
文章目录 座舱相关术语全解1. 智能座舱2. UFS3. 多模态交互4. 3D虚拟引擎5. AR/VR6. GNSS7. TTS8. DPU9. 摄像头10. 屏幕/显示器11. 音频12. 无线连接13. 其他组件 多模态交互在智能座舱中有以下一些应用 座舱相关术语全解 1. 智能座舱 智能座舱(intelligent cabi…...
【Fastjson反序列化漏洞:深入了解与防范】
一、Fastjson反序列化漏洞概述 Fastjson是一款高性能的Java语言JSON处理库,广泛应用于Web开发、数据交换等领域。然而,由于fastjson在解析JSON数据时存在安全漏洞,攻击者可以利用该漏洞执行任意代码,导致严重的安全威胁。 二、F…...
PP-DocLayoutV3跨平台文档处理方案:兼容Windows、Linux与macOS
PP-DocLayoutV3跨平台文档处理方案:兼容Windows、Linux与macOS 最近在折腾文档智能处理,发现了一个挺有意思的模型服务——PP-DocLayoutV3。简单来说,它能帮你自动分析文档图片,把里面的文字、表格、图片、标题什么的,…...
保姆级教程:在RHEL 8上彻底搞定X-Server远程连接,让xeyes不再报‘Error can‘t open display‘
深度解析RHEL 8远程X11连接:从原理到实战的全链路解决方案 当你在RHEL 8服务器上尝试通过SSH转发X11图形界面时,是否遇到过xeyes测试程序报出"Error: Cant open display"的困扰?这看似简单的错误背后,实际上隐藏着新版R…...
CoPaw模型多轮对话效果深度评测:连贯性、逻辑性与知识准确性
CoPaw模型多轮对话效果深度评测:连贯性、逻辑性与知识准确性 1. 开场白:为什么关注多轮对话能力 最近测试了不下20个大语言模型,发现一个有趣现象:单轮问答表现都不错,但一到多轮对话就原形毕露。有的模型聊着聊着就…...
2022年中国90米人口密度栅格数据(LandScan)|高精度、单年快照、科研级空间人口产品
🔍 数据简介 本数据基于全球权威人口空间分布模型 LandScan™(由美国橡树岭国家实验室 ORNL 开发),并融合2020年第七次全国人口普查乡镇级数据、10米土地利用、VIIRS夜间灯光、OSM路网与建筑物足迹,生成 2022年中国90米…...
终极CoreUI Bootstrap管理模板:5个导航组件实战技巧提升用户体验
终极CoreUI Bootstrap管理模板:5个导航组件实战技巧提升用户体验 【免费下载链接】coreui-free-bootstrap-admin-template coreui/coreui-free-bootstrap-admin-template: CoreUI-Free-Bootstrap-Admin-Template 是一套免费的Bootstrap 4/5管理模板,包含…...
如何通过Nginx反向代理部署WeTTY:生产环境完整配置指南
如何通过Nginx反向代理部署WeTTY:生产环境完整配置指南 【免费下载链接】wetty Terminal in browser over http/https. (Ajaxterm/Anyterm alternative, but much better) 项目地址: https://gitcode.com/gh_mirrors/we/wetty WeTTY(Web TTY&…...
网页聊天室--测试报告
一.测试目标及测试任务概括验证网页聊天室各模块的功能完整性,确保用户的登录功能,注册功能,以及首页的聊天会话和好友列表,添加好友的功能符合要求。二.测试文档类别版本/配置硬件荣耀MagicBook 14手动测试浏览器Microsoft Edge …...
昇腾算子开发知识地图
作者:昇腾实战派 背景 本博客旨在对社区发表的昇腾算子相关博客进行整理归类,方便用户导航使用;以下文章所用的机器均为昇腾相关设备。 Ascend C 基础理论 Ascend C基础 Ascend C算子开发详解:从原理到实战的深度剖析 深入A…...
PHP Monitor自定义配置教程:设置预设、环境变量和应用集成
PHP Monitor自定义配置教程:设置预设、环境变量和应用集成 【免费下载链接】phpmon Lightweight, native Mac menu bar app that helps you manage multiple PHP installations, locate config files and more. Also interacts with Laravel Valet. 项目地址: htt…...
OpenHarmony-XTS认证实战:从环境准备到报告提交的避坑指南
1. OpenHarmony-XTS认证入门指南 第一次接触OpenHarmony-XTS认证的开发者,往往会被复杂的流程和陌生的术语搞得晕头转向。作为一个踩过无数坑的老手,我完全理解这种迷茫感。记得我第一次做认证时,光是理解各种测试套件的用途就花了整整两天时…...
