
zhwanwan
🎆此专栏知识涵盖以太坊基本知识、solidity基本知识、以太坊核心项目,为以太坊编程初学者提供一个简洁、快速的入门教程。
⭐️专栏特点
本专栏深入分析了 Uniswap v4 智能合约的核心与外围合约,包括工作流、各个合约的功能及其相互关系。通过介绍核心合约 PoolManager 及各种库合约,以及外围合约 PositionManager 和 V4Router,详细讲解了流动性管理和交易操作的实现原理。
本系列文章的目标是为 DeFi 开发者和审计人员提供对现代 DeFi 实现的全面回顾,包括所使用的算法、关键数据结构和函数。与其他资源不同,我们将不深入探讨协议的经济和金融方面,这些内容可以通过项目文档进行研究。相反,我们将专注于重要的代码段并进行详细讨论。
本系列文章深入探索了多种新协议,每个协议都有其独特的特征和实现技巧。深度解析了现代去中心化金融(DeFi)借贷协议的实施细节,涵盖了多个前沿技术和理念,包括集中流动性、层次化协议和新型高效的数学模型。涵盖了:Euler V2、CrvUSD LLamaLend、Fluid + Vault、Ajna、Morpho Blue、Aave V3等协议的详细解读。
本 Solana 课程旨在帮助具有以太坊或 EVM 开发的初学者或中级背景的工程师快速掌握 Solana 程序开发。
初学者在学习区块链编程时面临的困难是他们必须学习一种新的计算模型、学习一种新的语言和学习一个新的开发框架。
如果你已经在以太坊或兼容以太坊的区块链上开发过,那么你已经对计算模型有了相当好的了解,可以专注于语言和框架。
我们的目标是利用你在以太坊方面的过去经验,更快地学习 Solana。 你无需从零开始。
Rareskills 出品的零知识证明之书, 对程序员最友好的零知识证明教程
这里有关于从头开始实际编写实用的零知识证明器和验证器(ZK-SNARK)所需知道的内容。
对事物的概念性理解和具体理解是不同的。大多数相当聪明的人在阅读教程后会对某些东西有一个概念性的理解,但他们离用这些知识做一些有用的事情还有很长的路要走。
对于数学家来说,具体的理解发生在他们写证明的时候。对于程序员来说,具体的理解发生在他们编写功能代码的时候。
《零知识证明之书》主要面向寻求具体理解的程序员。我们的书中充满了代码片段,并演示了实际加密库的使用。我们使用数学符号,但是我们以这样一种方式来编写,将其转换为源代码只是一个小小的飞跃。
Groth16是tornado cash(和许多其他公司)用于实现链上零知识证明的算法。我们相信这是学习之旅的最佳起点,我们的书是完全理解算法的最直接途径。
我们的 ZK Book 的Circom 和 Constraint 设计模式将带您踏上从乘法到数字相加的旅程:
学习约束设计中反复出现的设计模式
模块一 零知识证明的基础数学 1 : P vs NP 及其在零知识证明中的应用
2 : ZK的算术电路
3 : 用于零知识证明的有限域与模运算
4 : 为程序员准备的基础集合论
5 : 抽象代数
6 : 程序员的基本群论
7 : 同态映射
8 : 椭圆曲线点加法
9 : 有限域上的椭圆曲线
模块二 ZK-SNARKS Part 1 (Groth16)
10 : Python、Solidity 和 EVM 中的双线性配对(Bilinear Pairings)
11 : 将代数电路转换为R1CS(一阶约束系统)
12 : 从R1CS构建零知识证明
13 : 使用Python实现拉格朗日插值
14 : Schwartz-Zippel 引理及其在零知识证明中的应用
15 : 二次算术程序
16 : 在Python中将R1CS转换为有限域上的二次算术程序(QAP)
17 : 可信设置
18 : 在可信设置中评估和二次算术程序
19 : Groth16 详解 模块三 Circom 和 Constraint 设计模式
20 : Circom 零知识电路简介
21 : Circom 之 Hello World
22 : Circom模板参数、变量、循环、If语句、断言
23 : 二次约束 - Circom
24 : Circom中的符号变量
25 : Circom 中间信号与子组件
26 : 先指示再约束 - 在 Circom 中复杂约束条件的方法
27 : 先计算,后约束 - ZK 电路设计模式
28 : Circom循环中的组件
29 : 使用虚假证明攻击欠约束的Circom电路
30 : Circomlib中的AliasCheck和Num2Bits strict
31 : Circom 中的条件语句
32 : Quin Selector(选择器)
33 : ZK 中有状态计算简介
34 : 在Circom中交换数组中的两个条目
35 : 选择排序的零知识证明
36 : 在 ZK 中建模栈数据结构 - 如何在 Circom 中创建一个堆栈
37 : ZKVM 的工作原理
38 : ZK中的32位仿真
39 : Circom 中的 MD5 哈希
40 : 零知识证明友好的哈希函数
41 : 排列论证 - The Permutation Argument
42 : Tornado Cash 的工作原理(开发者逐行解析)
模块四 BulletProofs:内积论证的 ZKP 43 : BulletProofs 详解
44 : 什么是Pedersen承诺及其工作原理
45 : 多项式承诺通过 Pedersen 承诺实现
46 : 零知识乘法
47 : 内积的零知识证明
48 : 向量承诺的简洁证明
49 : 对数大小的承诺证明
50 : Bulletproofs零知识证明:内积的零知识与简洁证明
51 : 内积代数
52 : 通过随机线性组合减少等式检查(约束)的数量
53 : 范围证明
本合集为普及move编程入门,为大家普及move语言的使用。 涉及语法基础,工具使用,应用开发等方面, 在语法基础中,我们将介绍在move中,支持的数据结构,循环分支,结构体定义等。 在工具使用方面,将介绍sui-cli的使用,设计账户,合约,链上交互等。 应用开发方面,将普及在应用开发中的规范以及技巧。 将会持续更新文章,希望可以帮助到大家。
鄙人正在学习以太坊ERC协议的相关知识,计划将学习过程记录为专栏文章。在这里,我将分享关于ERC-20、ERC-721、ERC-1155等协议的学习笔记与心得体会。如果文中有任何不妥之处,敬请赐教。虚心求教,必将悉心修正,不断完善,力求为读者提供准确与实用的内容。
鄙人正在学习Web3 DeFi领域的相关知识,希望通过这个专栏,将我的学习笔记和心得体会与大家分享。专栏内容将涵盖Uniswap、Aave、Compound、Chainlink等DeFi协议的深入解析及实践应用。我深知自身学识有限,若有纰漏之处,恳请各位读者不吝赐教。虚心求教,定当悉心修正,共同探讨Web3世界的奥妙。
在这系列文章中,我们将深入探讨 Solidity 的内联汇编(Yul)。你可能会问:“我学会 Solidity 不就能写大部分合约了吗?为什么还需要学习内联汇编?”的确,大部分合约的编写完全可以通过 Solidity 完成。但内联汇编是 Solidity 的一个重要补充,它让你更深入地理解底层操作和合约优化。
起初,我也曾对内联汇编感到困惑,尽管我曾尝试过,但很快就忘记了。中文资料少且零散,这使得学习内联汇编变得更加困难。后来,找到了 Jeffrey Scholz 较为系统的讲解 Yul 的课程,此系列文章为我当时的学习笔记整理而来。学习 Yul 让我对存储、内存、栈、合约调用以及 ABI 编码有了更深入的理解。
即使你未来可能不会直接编写内联汇编代码,但掌握这些知识对编写更高效的 Solidity 合约是非常有帮助的。希望这系列文章能帮助你更好地理解内联汇编的基础及其在合约中的应用。