From a71e60929822af558e8f6a85d182f43556b517ba Mon Sep 17 00:00:00 2001 From: Nakiswen Date: Thu, 28 Nov 2024 21:54:48 +0800 Subject: [PATCH 1/3] feat: task1 --- learn/Nakiswen/moseyah.md | 12 +++++++ learn/Nakiswen/task1/task1.md | 53 +++++++++++++++++++++++++++++++ learn/Nakiswen/task1/tx-hash.png | Bin 0 -> 75371 bytes learn/Nakiswen/task1/wallet.png | Bin 0 -> 21294 bytes 4 files changed, 65 insertions(+) create mode 100644 learn/Nakiswen/moseyah.md create mode 100644 learn/Nakiswen/task1/task1.md create mode 100644 learn/Nakiswen/task1/tx-hash.png create mode 100644 learn/Nakiswen/task1/wallet.png diff --git a/learn/Nakiswen/moseyah.md b/learn/Nakiswen/moseyah.md new file mode 100644 index 000000000..693d75370 --- /dev/null +++ b/learn/Nakiswen/moseyah.md @@ -0,0 +1,12 @@ +# Mina zkApp 训练营 + + +#### 个人信息 + +- github Nakiswen +- OpenBuild 注册邮箱:c1hotvip@gmail.com +- Mina 钱包地址:B62qjZeawsLZY8QWEnrQe6Z5MptxVvb9th4Aa9acqj6RRrTcjT79via + +#### 自我介绍 + +- 资深前端工程师,想学习web3行业相关知识并期待往web3行业转型。 diff --git a/learn/Nakiswen/task1/task1.md b/learn/Nakiswen/task1/task1.md new file mode 100644 index 000000000..d24dea181 --- /dev/null +++ b/learn/Nakiswen/task1/task1.md @@ -0,0 +1,53 @@ +## 1.概述Mina所采用的证明系统(包括名称、特点) +Mina 使用的是 PLONK(Permutations over Lagrange-bases for Oecumenical Noninteractive arguments of Knowledge)证明系统的一个变体,具体为 Kimchi 证明系统,kimchi为zk-SNARKs家族中的一员。其主要特点包括: + +* 通用性:Kimchi 是一个通用的零知识证明系统,可以证明任意计算的正确性 +* 高效性:相比原始 PLONK,Kimchi 在证明生成时间和验证时间上都有显著改进 +* 可定制性:支持自定义门电路和查找表,使得证明系统更加灵活 +* 安全性:基于离散对数假设,具有良好的密码学安全性 +* 高度优化:专门针对 Mina 的递归证明需求进行了优化 + +## 2.概述递归零知识证明在 Mina 共识过程中的应用 + +#### a) 区块链状态压缩 + +每个新区块都会生成一个证明,证明包含了之前所有状态转换的有效性 +新的证明可以验证旧的证明,形成递归证明链 +这使得验证节点只需要保存最新的证明(约 11KB)即可验证整个链的历史 + +#### b) 共识过程中的应用 + +区块生产者在生成新区块时,需要生成证明证明: + +之前的状态转换是有效的 +新的交易执行是正确的 +整个状态更新符合协议规则 + + +验证者可以通过验证最新的证明来确认整个链的有效性 +递归证明保证了即使不存储完整历史,共识的安全性依然得到保证 + +#### c) 具体实现机制 + +使用 OCaml 语言编写的电路来描述状态转换规则 +通过 Kimchi 证明系统生成零知识证明 +证明的递归性质允许将之前的证明作为新证明的输入 +整个过程保持了零知识性,不泄露具体的状态信息 + +这种基于递归零知识证明的设计使得 Mina 能够保持恒定大小(约 22KB)的链状态,同时保证了完整的安全性和去中心化特性。这是一个突破性的创新,为区块链扩容提供了新的思路。 +值得注意的是,这种递归证明体系虽然在存储效率上有巨大优势,但也带来了较高的计算开销,这是目前 Mina 正在持续优化的方向。 + + +### 递归零知识证明验证流程 + +1. 选择 Block Producer + +2. 构建一个新的 Block + + 2.1. 验证一组 Tx + + 2.2. 基于已验证的 Tx 集和上一个 Block 的 hash + +3. 广播新的 Block + +4. 其他验证器可以验证新的 Block \ No newline at end of file diff --git a/learn/Nakiswen/task1/tx-hash.png b/learn/Nakiswen/task1/tx-hash.png new file mode 100644 index 0000000000000000000000000000000000000000..1f06a56f9bcf30c0009e88a2589eb2360af31c60 GIT binary patch literal 75371 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 XZA*oa)l~EY;7?XcNwQSj*zf-US!EJt literal 0 HcmV?d00001 diff --git a/learn/Nakiswen/task1/wallet.png b/learn/Nakiswen/task1/wallet.png new file mode 100644 index 0000000000000000000000000000000000000000..3b24a81b453f247ebd2f0f8659dafa604ae3f3cb GIT binary patch literal 21294 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 literal 0 HcmV?d00001 From a82bcfa16ba2cee646ab686e2e10d1632e85a198 Mon Sep 17 00:00:00 2001 From: Nakiswen Date: Fri, 29 Nov 2024 00:54:56 +0800 Subject: [PATCH 2/3] feat: task1 tx hash --- learn/Nakiswen/task1/task1.md | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/learn/Nakiswen/task1/task1.md b/learn/Nakiswen/task1/task1.md index d24dea181..cfab53227 100644 --- a/learn/Nakiswen/task1/task1.md +++ b/learn/Nakiswen/task1/task1.md @@ -38,16 +38,13 @@ Mina 使用的是 PLONK(Permutations over Lagrange-bases for Oecumenical Nonin 值得注意的是,这种递归证明体系虽然在存储效率上有巨大优势,但也带来了较高的计算开销,这是目前 Mina 正在持续优化的方向。 -### 递归零知识证明验证流程 - -1. 选择 Block Producer - -2. 构建一个新的 Block +## tx hash - 2.1. 验证一组 Tx +XwxqfCXvLzrdVuKgXorYEswDVgoa7EacmvPij1CUjcStT - 2.2. 基于已验证的 Tx 集和上一个 Block 的 hash - -3. 广播新的 Block +### 递归零知识证明验证流程 -4. 其他验证器可以验证新的 Block \ No newline at end of file +- 1.将问题转换成电路描述(用o作写电路代码)。 +- 2.将电路编译(complie) 成plonkish格式 同时生成PK(proving key), Vk(verifying key)。 +- 3.证明者使用函数 Prove 函数生成证明(Proof)。 +- 4.验证者使用 Verify 函数,验证proof的的真假。 \ No newline at end of file From 34173708e95f50570c5197fe08991c8c24202736 Mon Sep 17 00:00:00 2001 From: Nakiswen Date: Fri, 29 Nov 2024 00:56:11 +0800 Subject: [PATCH 3/3] feat: task1 --- learn/Nakiswen/{moseyah.md => Nakiswen.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename learn/Nakiswen/{moseyah.md => Nakiswen.md} (100%) diff --git a/learn/Nakiswen/moseyah.md b/learn/Nakiswen/Nakiswen.md similarity index 100% rename from learn/Nakiswen/moseyah.md rename to learn/Nakiswen/Nakiswen.md