区块链中的数学-Uniwap自动化做市商核心算法解析

Uniswap协议采用的是常量乘积做市商模型,又称为“恒定乘积做市商模型“。

区块链中的数学-secp256k1 签名可锻性以及解决方案

本文简记一下椭圆曲线算法中的另外一个小的话题:签名的可锻性。

以太坊使用最小Gas克隆合约-合约工厂

使用合约克隆工厂以最低的Gas无限克隆合约

  • 六天
  • 发布于 2020-09-11
  • 阅读 ( 4904 )
  • ( 203 )

[译]智能合约间权限控制的协作模式

本文探讨的通过函数选择器来实现对函数级别的访问控制非常有参考价值。

  • Tiny熊
  • 发布于 2020-09-09
  • 阅读 ( 5271 )
  • ( 163 )

区块链中的数学-用Miller Rabin算法判断大素数实例

本节从"凭证"的角度来扩展说明了Miller Rabin算法

Substrate 教程 - 给 Runtime 添加一个 Pallet

本教程将向你展示如何将合约 pallet 添加到运行时(runtime)中,以允许你的区块链支持Wasm智能合约,但是请注意,为了正确使用,每个pallet所需的特定配置设置会略有不同。

  • Tiny熊
  • 发布于 2020-09-02
  • 阅读 ( 781 )
  • ( 120 )

区块链中的数学-抽象的椭圆曲线密钥协商 & Miller Rabin素数判定法

本节扩展了一般椭圆曲线上密码协商的原理,原理更简单易于理解,接着讨论了大素数判定的方法,这是在密码学实现中普遍使用的方法,给出了简单的论证,并不详细

Substrate 教程 - 搭建一个存证 DApp

基于 Substrate 搭建一个存证 DApp

  • Tiny熊
  • 发布于 2020-09-01
  • 阅读 ( 209 )
  • ( 201 )

使用OpenZeppelin Truffle升级插件升级合约

在本文中,我们将展示使用OpenZeppelin Truffle升级插件和Gnosis Safe的生命周期,包含从创建合约,测试合约、部署合约一直到使用Gnosis Safe进行升级整个过程.

  • Tiny熊
  • 发布于 2020-08-28
  • 阅读 ( 5110 )
  • ( 411 )

区块链中的数学-SM2算法中的密钥交换协议

本节讲了SM2算法中的密钥协商过程,较迪菲赫尔曼密钥交换略有复杂,其实本质是一样的。最后证明了 为什么这样做可以得出相同的密钥?

[译]优化 Solidity 中的百分数和比例运算

在 Solidity 中,处理大数溢出和小数点是个头痛的问题,本文也许会给你一些思路。

  • Po
  • 发布于 2020-08-24
  • 阅读 ( 5122 )
  • ( 215 )

在 Solidity中使用值数组以降低 gas 消耗

本文讨论如何使用值数组(Value Array)替换引用数组(Reference Array)来减少 Solidity 智能合约的gas 消耗。

  • Tiny熊
  • 发布于 2020-08-20
  • 阅读 ( 5565 )
  • ( 257 )

区块链中的数学-SM2的签名和验证过程

本节讲了SM2签名算法,总体过程与secp256k1签名过程类似

区块链中的数学-SM2算法与KDF密钥导出函数

本节讲了SM2算法的KDF函数,从一般用途到SM2特定实现

[译]更好Solidity合约调试工具: console.log

是时候用Hardhat EVM 替换ganache了,Hardhat EVM 是一个用于本地开发的以太坊网络,提供了更好的堆栈跟踪功能和console.log() 输出日志。

  • Tiny熊
  • 发布于 2020-08-17
  • 阅读 ( 12351 )
  • ( 128 )

区块链中的数学-SM2算法的推荐参数和加解密过程

本节讲了SM2算法的推荐参数和加解密过程, 可以看出加密过程跟secp256k1不同点

[译] Hardhat 入门教程

Hardhat是一个方便在以太坊上进行构建的任务运行器。使用它可以帮助开发人员管理和自动化构建智能合约和dApp的过程中固有的重复任务,以及轻松地围绕此工作流程引入更多功能。Hardhat还内置了Hardhat EVM,后者是为开发而设计的本地以太坊网络。 它允许你部署合约,运行测试和调试代码。

  • Tiny熊
  • 发布于 2020-08-12
  • 阅读 ( 32854 )
  • ( 664 )

区块链中的数学-secp256k1公钥恢复实现

回到在这篇公钥恢复的文章,讲了secp256k1曲线根据签名结果反推公钥的原理,本篇在这个基础上继续说实现的部分。

区块链中的数学-Cipolla算法补充说明

本节是Cipolla算法的补充说明,把上一节没有展开的,进行了说明。

区块链中的数学-用Cipolla算法求解二次剩余方程

本节讲了使用Cipolla算法求解二次剩余方程,该算法涉及内涵比较丰富,没有展开。