Uniswap协议采用的是常量乘积做市商模型,又称为“恒定乘积做市商模型“。
本文简记一下椭圆曲线算法中的另外一个小的话题:签名的可锻性。
使用合约克隆工厂以最低的Gas无限克隆合约
本文探讨的通过函数选择器来实现对函数级别的访问控制非常有参考价值。
本节从"凭证"的角度来扩展说明了Miller Rabin算法
本教程将向你展示如何将合约 pallet 添加到运行时(runtime)中,以允许你的区块链支持Wasm智能合约,但是请注意,为了正确使用,每个pallet所需的特定配置设置会略有不同。
本节扩展了一般椭圆曲线上密码协商的原理,原理更简单易于理解,接着讨论了大素数判定的方法,这是在密码学实现中普遍使用的方法,给出了简单的论证,并不详细
基于 Substrate 搭建一个存证 DApp
在本文中,我们将展示使用OpenZeppelin Truffle升级插件和Gnosis Safe的生命周期,包含从创建合约,测试合约、部署合约一直到使用Gnosis Safe进行升级整个过程.
本节讲了SM2算法中的密钥协商过程,较迪菲赫尔曼密钥交换略有复杂,其实本质是一样的。最后证明了 为什么这样做可以得出相同的密钥?
在 Solidity 中,处理大数溢出和小数点是个头痛的问题,本文也许会给你一些思路。
本文讨论如何使用值数组(Value Array)替换引用数组(Reference Array)来减少 Solidity 智能合约的gas 消耗。
本节讲了SM2签名算法,总体过程与secp256k1签名过程类似
本节讲了SM2算法的KDF函数,从一般用途到SM2特定实现
是时候用Hardhat EVM 替换ganache了,Hardhat EVM 是一个用于本地开发的以太坊网络,提供了更好的堆栈跟踪功能和console.log() 输出日志。
本节讲了SM2算法的推荐参数和加解密过程, 可以看出加密过程跟secp256k1不同点
Hardhat是一个方便在以太坊上进行构建的任务运行器。使用它可以帮助开发人员管理和自动化构建智能合约和dApp的过程中固有的重复任务,以及轻松地围绕此工作流程引入更多功能。Hardhat还内置了Hardhat EVM,后者是为开发而设计的本地以太坊网络。 它允许你部署合约,运行测试和调试代码。
回到在这篇公钥恢复的文章,讲了secp256k1曲线根据签名结果反推公钥的原理,本篇在这个基础上继续说实现的部分。
本节是Cipolla算法的补充说明,把上一节没有展开的,进行了说明。
本节讲了使用Cipolla算法求解二次剩余方程,该算法涉及内涵比较丰富,没有展开。