Private Execution on Blockchain

news2025/2/28 3:32:10

1.Alan Szepieniec: Ghost-Queen Chess——复杂金融合约

Alan Szepieniec为Neptune合伙人。
在这里插入图片描述
为何需关注decentralized Finance?

  • 1)从学术角度来看:是 密码学 ∩ \cap 分布式系统 ∩ \cap 经济学 ∩ \cap …的集合。
  • 2)从工程角度来看:接受挑战;开发产品。
  • 3)从经济角度来看:用11年,实现了0~1T USD的工业领域。
  • 4)从哲学角度来看:
    • 4.1)金融协议倾向于最不讨厌的国家
    • 4.2)互联网是世界上的最不讨厌的国家
    • 4.3)但是:互联网没有判决机制:
      • DeFi具有判决机制(无暴力,目前也无隐私)

ghost-queen chess是一个有趣的游戏,是很好的比喻。
使用ghost-queen chess来展示智能合约设计的4个维度:

  • 分布式共识
  • 隐私(本文重点只关注隐私属性)
  • 节点
  • 时间

在这里插入图片描述
ghost-queen chess的游戏规则为:

  • 为国际象棋
  • 但是对手的queen是不可见的
  • move looks valid ⇒ \Rightarrow is valid
  • moves proved correct with ZK$

当前的状态为:

  • state:definite ↦ \mapsto distribution
  • 当前还没有可用的engines
  • 无法played without ZK

而ghost-queen chess游戏,可作为区块链:

  • 说明性用例
  • 非常适于复杂的金融合约——存在某些不适于公开的秘密信息
  • 作为智能合约设计多个维度分析的运行示例

智能合约隐私设计主要分为以下3个方面:

  • 1)state状态隐私:如棋面布局
  • 2)logic逻辑隐私:如game rules游戏规则
  • 3)updates更新隐私:如moves走棋

1)如何存储状态:

  • 链下存储原始数据,链上存储相应的承诺:在链上存储原始数据将牺牲隐私性。
    在这里插入图片描述

2)如何验证更新:
在这里插入图片描述
3)如何处理异步更新:
在这里插入图片描述

2. Henry de Valence: State Models for Private Execution with Public Shared State

Henry de Valence为Penumbra创始人,其认为 accountable auditable real-time verifiable shared state 是区块链的最大创新,核心问题在于如何拥有这样的accountable auditable real-time verifiable shared state的情况下,实现private interaction。

区块链为未来的协作技术,但是复杂协作需要对信息进行控制,我们需要隐私协作,但目前还没有。

区块链解决了状态公开分享(public shared state)的问题。
但是,如何来解决与public shared stateprivate interaction
最大的挑战在于:state model

  • 1)transparent blockchains采用mutable state
    在这里插入图片描述
  • 2)shielded blockchains需要composable state
    在这里插入图片描述
    使得state transition可为private的:
    在这里插入图片描述
    仅当no shared state时,可将execution由链上移到了链下
    在这里插入图片描述

如何来恢复late binding
当前有early binding,希望有late binding
在这里插入图片描述
为此,需要由更好的concurrency model for shared state
采用message passing来替代locking,来解决并发问题:
penumbra的private state采用sealed-input batch swaps
在这里插入图片描述
同时Penumbra采用message passing来实现async zk execution
在这里插入图片描述
Penumbra链采用actor model

  • 交易pass messages给合约
  • 每个合约执行once per block,on all messages,支持batch processing
  • user state executes async, off-chain, in zk
  • unlocks scalability and privacy!

3. Binyi Chen: VERI-ZEXE - Decentralized Private Computation with Universal Setup

Binyi Chen为Espresso systems首席密码学家。
支持智能合约的传统链为:
在这里插入图片描述
支持智能合约的传统链存在:

  • 隐私问题:状态、程序(状态变更规则),以及交易(state transition状态变更)都是public的
  • 扩容问题:Validtors需重新执行区块内的交易

如何支持隐私合约+公开可验证性?

  • 1)ZEXE:
    在这里插入图片描述
    在这里插入图片描述
  • 2)VERI-ZEXE:
    在这里插入图片描述

3.1 ZEXE

ZEXE基本概念有:

  • Records:为basic unit of data
    在这里插入图片描述
  • Transaction:state transition
    在这里插入图片描述
  • 交易有效性及隐私:
    在这里插入图片描述
  • 交易生成:
    在这里插入图片描述

3.2 VERI-ZEXE

在这里插入图片描述
在这里插入图片描述
性能对比为:
在这里插入图片描述
VERI-ZEXE总结为:
在这里插入图片描述

3.3 VERI-ZEXE开放性问题

  • 1)与以太坊集成:
    • 交易在以太坊合约中验证
    • 移除了2-chain curves,使用Plonky2作为inner proofs
  • 2)Outer proof delegation:
    • 外包给server生成outer proof不会泄露用户隐私
  • 3)并发性:
    • 支持用户并发访问和更新合约状态(如,AMM)
    • 可能的方向:将VERI-ZEXE与PESCA结合

4. Wei Dai: Pesca - A Privacy-Enhancing Smart-Contract Architecture

Wei Dai为Bain Capital Crypto研究伙伴。
在这里插入图片描述

4.1 ZK计算的限制:no trustless privacy on shared state

Zero-knowledge execution does not provide privacy for shared state applications:

  • “ZK Uniswap”无法提供隐私性:
    在这里插入图片描述

区块链为公开状态机:
在这里插入图片描述
ZK State Updates(Zexe/Aleo/Mina zkApps)为:
在这里插入图片描述
但是,ZK Updates会引起竞态条件(race conditions):
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
最好的链上和链下世界:
在这里插入图片描述

4.2 如何借助threshold FHE实现隐私链上计算?

Fully Homomorphic Encryption(FHE,全同态加密)可解决该问题。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
针对问题1:如何处理dynamic validator set维护[dk…]?
在这里插入图片描述
针对问题2:如何在共识层插入threshold decryption?
在这里插入图片描述
链上隐私:
在这里插入图片描述

4.3 如何对状态机编程实现隐私计算?

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

参考资料

[1] 2022年11月18日 Private Execution on Blockchain

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

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

相关文章

基于蚁群算法的多配送中心的车辆调度问题的研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 …

BUUCTF Misc ningen1 小明的保险箱1 爱因斯坦1 easycap1

ningen1 下载文件 使用kali中的binwalk查看 binwalk xxx.jpg 分离文件 打开 压缩包加密了,爆破 爆破成功,密码:8368 得到flag flag{b025fc9ca797a67d2103bfbc407a6d5f} 小明的保险箱1 下载文件 用010 editor打开 可以看到图…

Java初识泛型

什么是泛型 泛型是jdk1.5引入的新语法,泛型就是适用于许多许多类型,就是对类型实现了参数化。实现一个类,类中包含一个数据成员,使得数组中可以存放任何类型的数据,也可以根据成员方法返回数组中某个下标的值 class M…

linux-免费ssl证书

title: linux-免费ssl证书 categories: Linux tags: [linux, xshell] date: 2022-09-10 19:29:55 comments: false mathjax: true toc: true linux-免费ssl证书 前篇 33种免费获取SSL证书的方式 - https://zhuanlan.zhihu.com/p/174755007 HTTPS 证书文件格式转换 HTTPS证书文…

基于多目标粒子群优化算法的冷热电联供型综合能源系统运行优化附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 …

acm退役小记

本人大学是接近一本线的二本大学,目前能打的区域赛场基本打完了,桂林rank105和沈阳rank140是有两个区域赛铜。如果我是强校的话,也会说下只能拿废物铜耻辱退役 这里简单记下我的acm生涯 其实我一直觉得对于我们这种弱校,虽然打a…

delete删除后怎么恢复文件?四种方法进行找回

演示机型:技嘉 H310M HD22.0 系统版本:Windows 10 专业版 很多小伙伴在日常工作或生活中,喜欢通过delete键进行删除文件,虽然这种删除方式快捷方便,但是也容易出现误删的情况,那么用delete键删除的文件可以…

【语音识别】高斯混合模型(GMM)说话人识别【含Matlab源码 574期】

⛄一、高斯混合模型简介 GMM基本框架 类似的还有GMM-UBM(Universal background model)算法,其与GMM的区别在于:对L类整体样本训练一个大的GMM,而不像GMM对每一类训练一个GMM模型。SVM的话MFCC作为特征,每一帧作为一个样本&#…

golang的new和make

golang 变量定义的方式 可以通过 var变量名称变量类型 进行声明变量,当我们没有给它赋值的时候,它们的结果是变量类型的零值,例如: string 的零值是"",int 的零值是0,引用类型的零值是nil。 前面两种类型…

Android加载第三方so库

本篇文章使用的android studio版本是:Android Studio Bumblebee | 2021.1.1 Patch 2 上一篇文章:Android开发java调用C简单示例 演示了java调C,那么so文件能否复用到别的项目了? 这次我们尝试用上一篇文章生成的so库,调用里面的…

APK 签名 v1 v2 步骤

APK 签名 v1 v2 步骤 需要工具 **apksigner.jar jarsinger.exe keytool.exe zipalign.exe ** 1.生成 keystore keytool -genkey -v -keystore my.keystore -alias liuhan -keyalg RSA -keysize 2048 -sigalg SHA256withRSA -dname "cnTest,ouTest,cCA" -validity …

【机器学习入门项目10例】(六):KMeans聚类

💥 项目专栏:【机器学习入门项目10例】 文章目录 一、KMeans聚类二、数据集介绍三、KMeans聚类算法介绍四、定义KMeans模型4.1 kmeans算法入口4.2 初始化簇4.3 计算DBI优化指标4.4 计算每个样本到簇中心的距离4.5 更新每个样本所属的簇分类4.6 更新每个簇的中心4.7 官方实现…

百行代码实现VLC简易视频播放器【详细环境配置过程+可执行源码注释完整】

文章目录❓什么是VLC🚀VLC 库的集成⭐VLC环境配置演示【win10系统vs2017win64】🍎VLC 库的基本使用🎂视频播放器实现⭐自定义函数Unicode2Utf8讲解🏠总结❓什么是VLC VLC 是 Video Lan Client 的缩写,原先是几个法国的…

学生HTML网页作业作品:HTML+CSS网站设计与实现【红色喜庆邀请函 3页】

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

朗道-西格尔零点猜想(the Landau-Siegel Zeros Conjecture)

1 简介 朗道-西格尔零点猜想(the Landau-Siegel Zeros Conjecture),是一个数学难题。 要理解朗道-西格尔零点猜想,首先需要理解黎曼猜想,进而需理解广义黎曼猜想,以及狄利克雷L函数。断言L函数没有异常零…

【OneDrive篇】OneDrive禁用个人保管库(网页端)

【OneDrive篇】OneDrive禁用"个人保管库"(网页端) 最近OneDrive个人保管库一直同步出错,把文件全部移出来还是一样,就选择直接禁用"个人保管库"功能了—【蘇小沐】 文章目录【OneDrive篇】OneDrive禁用"…

Windowns编译OpenSSL

前言 开发过程中需要上传数据,URL是https的,Qt默认是http网络请求,访问https需要用到SSL认证,而Qt默认不支持,需要自己编译OpenSSL库。 一、下载OpenSSL 环境:Qt 5.12.2 MSVC 2017,32bit ,可通过下面代码…

[附源码]Python计算机毕业设计高校国防教育管理系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

关于webpack(v5.74.0)的钩子在插件中的应用

常用监听钩子 compiler 钩子 compiler.hooks.entryOption 在 webpack 选项中的 entry 被处理过之后调用。一般用来获取入口。 compiler.hooks.compile beforeCompile 之后立即调用,但在一个新的 compilation 创建之前。这个钩子 不会 被复制到子编译器。能获取…

C++智能指针之shared_ptr

C智能指针之shared_ptr前言一、Shared_ptr1.1 shared_ptr类的操作1.2 make_shared函数1.3 shared_ptr的拷贝赋值1.4 shared_ptr的自动销毁对象内存机制1.5 使用动态生存期的资源的类1.6 shared_ptr与new结合使用1.7 不要混合使用普通/智能指针1.8 不要使用 get 初始化另一个智能…