美文网首页
Polygon Miden

Polygon Miden

作者: 雪落无留痕 | 来源:发表于2023-09-02 00:25 被阅读0次

Polygon Miden 更侧重于zk友好性,而不是EVM兼容性,采用新的状态机,允许开发者部署应用。

Polygon Miden每个交易更新一个账户的状态,它会消耗0个或多个notes, 生成0或多个notes

Polygon Miden 基于Actor 模型,为了实现转账,需要有两个交易。

Polygon Miden 具有 local execution 能力,用户或网络可生成交易的证明。

目前Polgon Miden还在开发中,尚未上线。

Miden VM 支持各个功能:

  • Flow control: Miden VM 是图灵完备的,支持各种控制流结构;
  • Procedures: Miden 汇编代码可以分解为子线程,称为procedures, 实现代码的模块化;
  • Execution contexts: Miden VM 执行可扩展到多个独立的上下文中,每个上下文都有各自的内存空间。
  • Memory: Miden VM支持读写随机访问内存;
  • u32 operations: Miden VM 支持32位无符号的整数的各种运算;
  • cryptographic operations: Miden 汇编提供内置的指令计算hash, 采用Rescue Prime Optimized 哈希函数;
  • External libraries: Miden VM 支持编译预定义的库,例如stdlib 添加了64位无符号整数的支持,开发者也可添加第三方的库;
  • Nondeterminism: Miden VM 支持非确定性的程序,即prover可以为VM提供hints, 加速计算,或作为VM的秘密输入;
  • custom advice providers: VM 执行过程中可以提供外部数据作为输入,例如外部数据库或RPC 调用。

计划支持的功能:

  • 递归证明:
  • 更好的调试功能;
  • 错误执行的证明

Miden VM 架构

Miden VM 是在 64位 域上,即 p=2^{64}-2^{32}+1

Miden VM 主要是三个组件:

  • Stack: 栈结构,每个栈元素是一个域元素;
  • Memory: 内存是线性随机访问的可读写结构;
  • Advice provider: 主要为VM 提供非确定性输入。

Miden VM的目标是支持将Solidity, Move, Sway等高级编译为Miden assembly, 但目前编译器尚未开发。

目前仅支持采用Miden assembly开发项目程序。

Miden assembly language

Miden 汇编是一种用于写Miden VM程序的低级语言,首先编译成MAST(Merkerlized Abstract Syntax Tree), 然后转为Miden VM 指令集。

参考

https://wiki.polygon.technology/docs/miden/

https://github.com/0xPolygonMiden

https://wiki.polygon.technology/docs/miden/resources/

相关文章

网友评论

      本文标题:Polygon Miden

      本文链接:https://www.haomeiwen.com/subject/aahxvdtx.html