[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-10563":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":44,"readmeContent":45,"aiSummary":46,"trendingCount":16,"starSnapshotCount":16,"syncStatus":18,"lastSyncTime":47,"discoverSource":48},10563,"WTF-zk","WTFAcademy\u002FWTF-zk","WTFAcademy","零知识证明入门教程。Comprehensive Zero-Knowledge Proofs Tutorial. #zk #WIP","",null,"Jupyter Notebook",2118,255,15,12,0,1,2,8,3,29.22,"MIT License",false,"main",true,[27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"abstract-algebra","bitcoin","blockchain","cryptography","elliptic-curve-cryptography","elliptic-curves","ethereum","group-theory","number-theory","snark","stark","zero-knowledge","zero-knowledge-proofs","zk","zkp","zkproof","zksnarks","2026-06-12 02:02:23","# WTF zk\n\n[English Version](https:\u002F\u002Fgithub.com\u002FWTFAcademy\u002FWTF-zk\u002Fblob\u002Fmain\u002FLanguages\u002Fen\u002FREADME.md)\n\n零知识证明（zero-knowledge proof）入门教程，目的是让仅有高中数学基础的人也能入门zk。我们会使用python复现一些算法，所以你也需要学python。\n\n> 我们最近在学习zero-knowledge proof，巩固一下细节，也写一个“WTF zk极简入门”，供小白们使用（编程大佬可以另找教程），每周更新1-3讲。\n\n## 数学基础\n\n### 第1章 数论入门\n\n**第1讲 整数运算基础**：[Code](.\u002F01_Integer\u002FInteger.ipynb) | [教程](.\u002F01_Integer\u002Freadme.md) \n\n**第2讲 质数基础**：[Code](.\u002F02_Prime\u002FPrime.ipynb) | [教程](.\u002F02_Prime\u002Freadme.md) \n\n**第3讲 欧几里得算法**：[Code](.\u002F03_Euclidean\u002FEuclidean.ipynb) | [教程](.\u002F03_Euclidean\u002Freadme.md) \n\n**第4讲 拓展欧几里得算法**：[Code](.\u002F04_EEA\u002FEEA.ipynb) | [教程](.\u002F04_EEA\u002Freadme.md) \n\n**第5讲 模运算基础**：[Code](.\u002F05_Modular\u002FModular.ipynb) | [教程](.\u002F05_Modular\u002Freadme.md) \n\n**第6讲 模运算除法**：[Code](.\u002F06_Division\u002FDivision.ipynb) | [教程](.\u002F06_Division\u002Freadme.md) \n\n**第7讲 费马小定理**：[Code](.\u002F07_Exp\u002FExp.ipynb) | [教程](.\u002F07_Exp\u002Freadme.md) \n\n**第8讲 中国剩余定理**：[Code](.\u002F08_Remainder\u002FRemainder.ipynb) | [教程](.\u002F08_Remainder\u002Freadme.md) \n\n**第9讲 欧拉函数**：[Code](.\u002F09_Unit\u002FUnit.ipynb) | [教程](.\u002F09_Unit\u002Freadme.md) \n\n**第10讲 欧拉定理**：[Code](.\u002F10_Euler\u002FEuler.ipynb) | [教程](.\u002F10_Euler\u002Freadme.md) \n\n**里程碑01 RSA算法** [Code](.\u002FMS01_RSA\u002FRSA.ipynb) | [教程](.\u002FMS01_RSA\u002Freadme.md) | [论文](.\u002Fpapers\u002FRSA_paper.pdf)\n\n### 第2章 抽象代数: 群论\n\n**第11讲 群**： [教程](.\u002F11_Group\u002Freadme.md) \n\n**第12讲 子群**： [教程](.\u002F12_Subgroup\u002Freadme.md) \n\n**第13讲 陪集和拉格朗日定理**： [教程](.\u002F13_Coset\u002Freadme.md) \n\n**第14讲 正规子群和商群**： [教程](.\u002F14_Quotient\u002Freadme.md) \n\n**第15讲 同态和同构**： [教程](.\u002F15_Homomorphism\u002Freadme.md) \n\n**第16讲 Abel群**： [教程](.\u002F16_Abel\u002Freadme.md) \n\n**第17讲 循环群**： [教程](.\u002F17_Cyclic\u002Freadme.md) \n\n**第18讲 群的直积**： [教程](.\u002F18_DirectProduct\u002Freadme.md) \n\n**第19讲 离散对数问题**： [教程](.\u002F19_DLP\u002Freadme.md) \n\n**里程碑02 Diffie-Hellman 密钥交换算法** [Code](.\u002FMS02_DH\u002FDifie_Hellman.ipynb) | [教程](.\u002FMS02_DH\u002Freadme.md) | [论文](.\u002Fpapers\u002FDiffie_Hellman.pdf)\n\n**里程碑03 ElGamal 加密和签名算法** [Code](.\u002FMS03_ElGamal\u002FElGamal.ipynb) | [教程](.\u002FMS03_ElGamal\u002Freadme.md) | [论文](.\u002Fpapers\u002FElGamal.pdf)\n\n### 第3章 抽象代数: 环和域\n\n**第20讲 环**： [教程](.\u002F20_Ring\u002Freadme.md) \n\n**第21讲 理想和商环**： [教程](.\u002F21_Ideal\u002Freadme.md) \n\n**第22讲 环同态和同构**： [教程](.\u002F22_RingHomo\u002Freadme.md) \n\n**第23讲 域**： [教程](.\u002F23_Field\u002Freadme.md) \n\n**第24讲 多项式基础**： [教程](.\u002F24_Polynomial\u002Freadme.md) \n\n**第25讲 多项式环**： [教程](.\u002F25_PolyRing\u002Freadme.md) \n\n**第26讲 域扩展**： [教程](.\u002F26_FieldExtension\u002Freadme.md) \n\n**第27讲 有限域**： [教程](.\u002F27_GaloisField\u002Freadme.md) \n\n**第28讲 二次剩余**： [教程](.\u002F28_Quadratic\u002Freadme.md) \n\n**里程碑04 Goldwasser-Micali (GM) 算法** [Code](.\u002FMS04_ProbEncryption\u002FGM.ipynb) | [教程](.\u002FMS04_ProbEncryption\u002Freadme.md) | [论文](.\u002Fpapers\u002FProbabilistic_Encryption.pdf)\n\n**里程碑05 初探零知识证明** [教程](.\u002FMS05_zkExample\u002Freadme.md) | [论文](.\u002Fpapers\u002FThe_Knowledge_Complexity_Of_Interactive_Proof_Systems.pdf)\n\n### 第4章 椭圆曲线\n\n**第29讲 椭圆曲线基础**：[Code](.\u002F29_EllipticCurve\u002FEllipticCurve.ipynb) | [教程](.\u002F29_EllipticCurve\u002Freadme.md) \n\n**第30讲 有限域上的椭圆曲线**：[Code](.\u002F30_FiniteEC\u002FFiniteEC.ipynb) | [教程](.\u002F30_FiniteEC\u002Freadme.md) \n\n**第31讲 椭圆曲线离散对数问题**：[Code](.\u002F31_ECDLP\u002FECDLP.ipynb) | [教程](.\u002F31_ECDLP\u002Freadme.md) \n\n**第32讲 椭圆曲线密码学**：[Code](.\u002F32_ECC\u002FECC.ipynb) | [教程](.\u002F32_ECC\u002Freadme.md) \n\n**第33讲 扩域上的椭圆曲线**：[教程](.\u002F33_ECExtension\u002Freadme.md) \n\n**第34讲 双线性配对基础**：[教程](.\u002F34_Pairing\u002Freadme.md) \n\n**第35讲 挠群和除子**：[Code](.\u002F35_TorsionGroup\u002FTorsionGroup.sage) | [教程](.\u002F35_TorsionGroup\u002Freadme.md) \n\n**第36讲 Weil 配对**：[教程](.\u002F36_WeilPairing\u002Freadme.md) \n\n**第37讲 Miller 算法**：[Code](.\u002F37_MillerAlgo\u002FWeilPairing.sage) | [教程](.\u002F37_MillerAlgo\u002Freadme.md) \n\n**第38讲 Tate 配对**：[Code](.\u002F38_TatePairing\u002FAte.ipynb) | [教程](.\u002F38_TatePairing\u002Freadme.md) \n\n**第39讲 扩域上的 Weil 配对**：[教程](.\u002F39_PairingExtension\u002Freadme.md) \n\n**第40讲 常用椭圆曲线**：[Code](.\u002F40_PopularCurves\u002F40_PopularCurves.ipynb) | [教程](.\u002F40_PopularCurves\u002Freadme.md) \n\n**里程碑06 哈希函数 Hash** [Code](.\u002FMS06_Hash\u002FHash.ipynb) | [教程](.\u002FMS06_Hash\u002Freadme.md)\n\n**里程碑07 身份基加密 IBE** [Code](.\u002FMS07_IBE\u002FIBE.ipynb) | [教程](.\u002FMS07_IBE\u002Freadme.md)\n\n### 第5章 计算复杂性理论\n\n**第41讲 计算理论入门**：[Code](.\u002F41_Computation\u002F41_Computation.ipynb) | [教程](.\u002F41_Computation\u002Freadme.md) \n\n**第42讲 图灵机**：[教程](.\u002F42_TuringMachine\u002Freadme.md) \n\n**第43讲 时间复杂度**：[Code](.\u002F43_Complexity\u002F43_Complexity.ipynb) | [教程](.\u002F43_Complexity\u002Freadme.md) \n\n**第44讲 P和NP**：[Code](.\u002F44_PandNP\u002FPandNP.ipynb) | [教程](.\u002F44_PandNP\u002Freadme.md) \n\n**第45讲 NP完全** [教程](.\u002F45_NPComplete\u002Freadme.md) \n\n**第46讲 电路复杂度** [Code](.\u002F46_CircuitComplexity\u002FCircuitComplexity.ipynb) | [教程](.\u002F46_CircuitComplexity\u002Freadme.md) \n\n**第47讲 随机计算** [教程](.\u002F47_ProbComputation\u002Freadme.md) \n\n**第48讲 交互式证明系统** [教程](.\u002F48_InteractiveProof\u002Freadme.md) \n\n**第49讲 概率可检验证明 PCP** [教程](.\u002F49_PCP\u002Freadme.md) \n\n**第50讲 线性 PCP 第一部分: R1CS** [教程](.\u002F50_R1CS\u002Freadme.md)\n\n**第51讲 线性 PCP 第二部分: QAP** [教程](.\u002F51_QAP\u002Freadme.md)\n\n**里程碑08 Sumcheck Protocol** [教程](.\u002FMS08_Sumcheck\u002Freadme.md)\n\n## WTF zk贡献者\n\u003Cdiv align=\"center\">\n  \u003Ch4 align=\"center\">\n    贡献者是WTF学院的基石\n  \u003C\u002Fh4>\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FWTFAcademy\u002FWTF-zk\u002Fgraphs\u002Fcontributors\">\n    \u003Cimg src=\"https:\u002F\u002Fcontrib.rocks\u002Fimage?repo=WTFAcademy\u002FWTF-zk\" \u002F>\n  \u003C\u002Fa>\n\u003C\u002Fdiv>\n\n## WTF zk赞助商\n\n![](.\u002Fimg\u002Ffull_logo_zksync-black.png)\n\n## Reference\n\n1. [Moonmath Manual by LeastAuthority](https:\u002F\u002Fgithub.com\u002FLeastAuthority\u002Fmoonmath-manual)\n\n2. [zk-learning MOOC](https:\u002F\u002Fzk-learning.org\u002F)\n\n3. [The RareSkills Book of Zero Knowledge](https:\u002F\u002Fwww.rareskills.io\u002Fzk-book)\n\n4. [Number Theory Notes](https:\u002F\u002Fcrypto.stanford.edu\u002Fpbc\u002Fnotes\u002Fnumbertheory\u002F)\n\n5. [密码学的数学基础](https:\u002F\u002Fspace.bilibili.com\u002F552018206\u002Fchannel\u002Fcollectiondetail?sid=436262)\n\n6. [Cryptography 101 for Blockchain Developers by OpenZeppelin](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=9TFEBuANioo)\n\n7. Vitalik's blogs: [Weil Pairing](https:\u002F\u002Fmedium.com\u002F@VitalikButerin\u002Fexploring-elliptic-curve-pairings-c73c1864e627)\n\n8. [探索零知识证明系列 by 郭宇 SecBit](https:\u002F\u002Fgithub.com\u002Fsec-bit\u002Flearning-zkp\u002Ftree\u002Fmaster)\n\n9. [Theory of Computation, MIT OpenCourseWare](https:\u002F\u002Focw.mit.edu\u002Fcourses\u002F18-404j-theory-of-computation-fall-2020\u002F)\n\n10. [Computational Complexity: A Modern Approach by Arora and Barak](https:\u002F\u002Fwww.cs.princeton.edu\u002Ftheory\u002Fcomplexity\u002F)\n\n11. [Foundations of Probabilistic proofs, Chiesa Alessandro](https:\u002F\u002Fic-people.epfl.ch\u002F~achiesa\u002Fclasses\u002FCS294-F2020.html)","WTF-zk 是一个面向初学者的零知识证明入门教程，旨在帮助仅有高中数学基础的学习者理解并掌握零知识证明技术。该项目通过使用 Python 语言在 Jupyter Notebook 中复现相关算法来加深理解，内容涵盖从数论、抽象代数到椭圆曲线密码学等多个领域，并逐步引导读者构建起对零知识证明机制的全面认知。适合于对区块链、加密货币以及更广泛的网络安全有兴趣但缺乏深厚数学背景的研究人员或开发者作为自学材料。此外，本项目还特别适用于那些希望深入了解如 SNARKs 和 STARKs 等高级零知识证明协议实现细节的技术爱好者。","2026-06-11 03:29:09","top_topic"]