my-blog icon indicating copy to clipboard operation
my-blog copied to clipboard

:book:My blog

Results 65 my-blog issues
Sort by recently updated
recently updated
newest added

Bumps [moment-timezone](https://github.com/moment/moment-timezone) from 0.5.33 to 0.5.37. Release notes Sourced from moment-timezone's releases. 0.5.34 Updated data to IANA TZDB 2021e Changelog Sourced from moment-timezone's changelog. 0.5.37 2022.08-25 Re-publish npm package, because...

dependencies

Bumps [moment](https://github.com/moment/moment) from 2.29.1 to 2.29.4. Changelog Sourced from moment's changelog. 2.29.4 Release Jul 6, 2022 #6015 [bugfix] Fix ReDoS in preprocessRFC2822 regex 2.29.3 Full changelog Release Apr 17, 2022...

dependencies

在过去十年中,普适的简洁零知识证明或许是密码学领域最有影响力的发展方向之一,通常简称为 zk-SNARKs(zero knowledge succinct arguments of knowledge)。zk-SNARKs 可以让你为执行的计算生成一些证明(proof),虽然这些证明的生成可能会耗费非常多的算力,但是却可以被很快地验证。并且这些证明还拥有“零知识”的特性,即证明中会隐藏计算中的输入信息。 举个例子,你可以给出一个关于你确实知道某个密码数字的证明:你会把这个数字加到字符 `cow` 后面,然后执行 100 万次 SHA256 哈希,最终结果会以 `0x57d00485aa` 开头。在 zk-SNARKs 的应用场景里,验证者可以以远比执行 100 万次哈希快的时间验证你是否确实知道你所说的密码数字,并且该数字不会暴露给验证者。 在区块链中,zk-SNARKs 有两个非常有用的应用场景: - 可扩展性(scalability):如果一个区块需要花很多时间才能被验证,那么某人可以预先为其生成证明,然后其他人只需要快速地验证生成的证明即可 - 隐私性(Privacy):你可以在隐藏具体收到资产的收款路径的情况下,声明你的确拥有某些资产 不过 zk-SNARKs 是非常复杂的。在...

Blog

最近,Ariel Gabizon,Zac Williamson 和 Oana Ciobotaru 公布了一个新的普遍用途的零知识证明算法 [PLONK](https://eprint.iacr.org/2019/953.pdf) ,全称为普遍用途的非交互式知识论证的拉格朗日基排列(Permutations over Lagrange-bases for Oecumenical Noninteractive arguments of Knowledge)。虽然普遍用途的[零知识证明](https://arxiv.org/abs/1903.12243)协议的[进步与研究](https://eprint.iacr.org/2016/260.pdf)已经进行[持续](https://dci.mit.edu/zksharks)了[许多年](https://eprint.iacr.org/2017/1066),PLONK(以及早先更复杂 [SONIC](https://www.benthamsgaze.org/2019/02/07/introducing-sonic-a-practical-zk-snark-with-a-nearly-trustless-setup/) 和最近的 [Marlin](https://eprint.iacr.org/2019/1047.pdf))为这类证明带来了在可用性上的可观进步。 第一个进步是,PLONK 虽然像 Zcash 的 SNARKs 一样,也要求一个类似的初始可信设置(trusted setup),但是 PLONK 的设置是普适且可更新(universal and...

Blog

昨日冷兔预售,在成为国产 NFT 之光冲上 OpenSea 时段榜一之外,不知大家是否察觉,整个预售过程,Gas 费并没有明显暴涨: ![2022/1/16 Gas](https://static.cnodejs.org/FvOh7fhh6cMazwGbNHLHRWgxN3n5) 可以看到,整个下午的 Gas Price 在图中并没有明显尖刺。在项目如此之热的情况下,冷兔是如何做到的呢?让我们从它的[合约代码](https://etherscan.io/address/0x534d37c630b7e4d2a6c1e064f3a2632739e9ee04#code#F13#L1)来看: ```sol // XRC.sol pragma solidity ^0.8.0; import "@openzeppelin/contracts/access/Ownable.sol"; import "@openzeppelin/contracts/security/ReentrancyGuard.sol"; import "@openzeppelin/contracts/utils/cryptography/ECDSA.sol"; import "./ERC721A.sol"; contract XRC is ERC721A,...

Blog

Update https://registry.npm.taobao.org to https://registry.npmmirror.com, Please refer to https://zhuanlan.zhihu.com/p/430580607.

## 前言与版本 笔者最近在结合[以太坊黄皮书](https://ethereum.github.io/yellowpaper/paper.pdf)读[以太坊源码](https://github.com/ethereum/go-ethereum),结合自己的理解解析下黄皮书内的公式,与大家共同学习进步,若大家在阅读以太坊黄皮书时,对公式产生理解上的困惑,可以参阅本文一起看。文章基于当前(2022/1/10)的黄皮书,版本号为 `BERLIN VERSION fabef25` ,若有不准确之处,欢迎指出。由于该黄皮书内除附录外有 183 个公式,为了让文章篇幅不过长,该解析会由三部分组成一个系列,每个系列解析约 60 个公式,本文为下篇。 ## 公式解析 ![(130)](https://static.cnodejs.org/FveR5j3SqZob3TZ4Iob5hPpx1FrM) - 此处 Ξ 为 EVM 指令执行函数。 - σ 为执行前世界状态。 - σ' 为执行后世界状态。 - g 为执行前 Gas...

Blog

## 前言与版本 笔者最近在结合[以太坊黄皮书](https://ethereum.github.io/yellowpaper/paper.pdf)读[以太坊源码](https://github.com/ethereum/go-ethereum),结合自己的理解解析下黄皮书内的公式,与大家共同学习进步,若大家在阅读以太坊黄皮书时,对公式产生理解上的困惑,可以参阅本文一起看。文章基于当前(2022/1/10)的黄皮书,版本号为 `BERLIN VERSION fabef25` ,若有不准确之处,欢迎指出。由于该黄皮书内除附录外有 183 个公式,为了让文章篇幅不过长,该解析会由三部分组成一个系列,每个系列解析约 60 个公式,本文为中篇。 ## 公式解析 ![(61) (62) (63)](https://static.cnodejs.org/FnPHEm68gjcGdd8FhijgjIxLwWmh) - S(T)b 为交易发送者账户余额。 - S(T)n 为交易发送者账户 nonce 。 - TgTp 为 GasPrice * GasLimit...

Blog

## 前言与版本 笔者最近在结合[以太坊黄皮书](https://ethereum.github.io/yellowpaper/paper.pdf)读[以太坊源码](https://github.com/ethereum/go-ethereum),结合自己的理解解析下黄皮书内的公式,与大家共同学习进步,若大家在阅读以太坊黄皮书时,对公式产生理解上的困惑,可以参阅本文一起看。文章基于当前(2022/1/7)的黄皮书,版本号为 `BERLIN VERSION fabef25` ,若有不准确之处,欢迎指出。由于该黄皮书内除附录外有 183 个公式,为了让文章篇幅不过长,该解析会由三部分组成一个系列,每个系列解析约 60 个公式,本文为上篇。 ## 公式解析 ![(1)](https://static.cnodejs.org/FhGao0sqwCI_qXoMZ1d7LUynzD9_) - σ 为以太坊世界状态。 - Υ 为以太坊状态转换函数。 - T 为一个交易。 上述公式阐述的是,以太坊是一个基于交易而改变状态的状态机。即每进来一个交易,都会改变一次以太坊的旧世界状态,从而进入一个新世界状态。 ![(3)](https://static.cnodejs.org/FkyWo41VLMiAnJeEIAF40LguZZps) - B 为一个区块。 - T0,...

Blog

最近在看零知识证明,了解到了一个很有意思的问题,即《姚氏百万富翁问题》,该问题由图灵奖得主姚期智老师[提出](https://research.cs.wisc.edu/areas/sec/yao1982-ocr.pdf)。算是对开始解零知识证明的朋友起到抛砖引玉作用的经典问题。下面展开一下问题的描述,以及姚期智老师给出的一个答案。 ## 问题 假设有两个富翁甲,乙,他们的财产数量分别为 a, b ,且 1 ≤ a, b ≤ N 。甲,乙两者想知道他们两者的财产数量谁多,但是又不能透露他们具体的财产数量。 ## 解答 乙先生产自己的一对非对称加密(如 [RSA](https://en.wikipedia.org/wiki/RSA_(cryptosystem)))秘钥对,即公钥 E,私钥 C 。并像 TLS 通信中一样将公钥 E 发送给甲,然后是自己保留 C 。 ### 第一步 甲再取一个大于...

Blog