Private Execution on Blockchain

Posted mutourend

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Private Execution on Blockchain相关的知识,希望对你有一定的参考价值。

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

以上是关于Private Execution on Blockchain的主要内容,如果未能解决你的问题,请参考以下文章