ZKP Commitment (1)

MIT IAP 2023 Modern Zero Knowledge Cryptography课程笔记

Lecture 5: Commitment 1 (Ying Tong Lai)

  • Overview: Modern SNARK

    • IOP: Interactive Oracle Proof
    • Commitment Scheme
    • IOP “compiled by” the commitment scheme to get a non-interactive proof
    • An IOP is “information-theoretic" in that it provides soundness and zero-knowledge guarantees even when the prover and verifier are computationally unbounded. To make this possible, the proof system makes the idealised assumption of “oracle access": in other words, the verifier can only access the prover’s messages through random queries.
    • The commitment scheme instantiates this oracle access using cryptographic primitives (e.g. a one-way function): as a consequence, the resulting argument system is only secure with respect to a computationally bounded prover and/or verifier. To realise a succinct argument system, the chosen commitment scheme must provide low communication complexity relative to the computation being proven.
      在这里插入图片描述
  • Commitment Schemes

    • Formal definition:
      在这里插入图片描述

      • The Open Algorithm can be divided into two part
        • Prove(pp, C, m, r) -> π \pi π
        • Verify(pp, C, π \pi π) -> {0,1}
    • Pederson Commitment
      在这里插入图片描述

  • Vector Commitment

    • Vector Pedersen commitment.
      在这里插入图片描述

    • Merkle tree: A well-known solution for building vector commitments is a Merkle tree. It is used in distributed systems like Git, Cassandra, and Bitcoin for summarizing sets of data. Merkle trees also have hiding and extractability properties, which make them an ideal candidate for compiling an IOP into a non-interactive proof secure in the random oracle model.
      在这里插入图片描述

      • The Merkle Tree Commitment proved that
        • m i m_i mi is an element in the vector m m m
        • The root h h h is the commitment of the vector m m m

相关推荐

  1. nvm1.1.11

    2023-12-21 11:50:03       52 阅读
  2. 1.下午试题1

    2023-12-21 11:50:03       30 阅读
  3. HTML-1

    2023-12-21 11:50:03       58 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-21 11:50:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-21 11:50:03       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-21 11:50:03       87 阅读
  4. Python语言-面向对象

    2023-12-21 11:50:03       96 阅读

热门阅读

  1. Spring和Spring Boot的主要区别

    2023-12-21 11:50:03       55 阅读
  2. Linux中systemctl使用

    2023-12-21 11:50:03       63 阅读
  3. 嵌入式备赛:PWM控制及源代码解析

    2023-12-21 11:50:03       61 阅读
  4. Python列表详解

    2023-12-21 11:50:03       54 阅读
  5. 前端高频编程题

    2023-12-21 11:50:03       58 阅读
  6. electron 快速上手学习

    2023-12-21 11:50:03       48 阅读
  7. Electron训练笔记

    2023-12-21 11:50:03       66 阅读
  8. 理德名人故事:美国投资大师——伯顿·麦基尔

    2023-12-21 11:50:03       65 阅读
  9. ZZ014城市轨道交通运营与维护赛题第3套

    2023-12-21 11:50:03       49 阅读