Skip to content

Commit dd1063b

Browse files
authored
Merge pull request #758 from 0x-stan/main
Translation of task 25, 26, update Euler docs
2 parents edf5712 + 97be76b commit dd1063b

File tree

22 files changed

+1437
-4014
lines changed

22 files changed

+1437
-4014
lines changed
Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
# Multi-Sig-Wallet
2+
3+
> 旧版多签钱包合约使用 0.4.x 版本 solidity,原仓库已经锁定不再更新,Gnosis 的新版多签名叫 Gnosis-Safe-Contracts 集成了多个安全合约模块。由于新版代码量较大不便于理解,我们仍使用旧版合来学习理解其使用流程和工作原理。
4+
5+
- 旧版 multi-sig-wallet: gnosis MultiSigWallet: <https://github.com/gnosis/MultiSigWallet>
6+
- 新版 Gnosis Safe Contracts: <https://github.com/safe-global/safe-contracts>
7+
8+
## 合约解读
9+
10+
> 合约地址:https://github.com/gnosis/MultiSigWallet/tree/master/contracts
11+
12+
- MultiSigWallet.sol
13+
- MultiSigWalletFactory.sol
14+
- MultiSigWalletWithDailyLimit.sol
15+
- MultiSigWalletWithDailyLimitFactory.sol
16+
- TestCalls.sol
17+
- TestToken.sol
18+
19+
## 合约接口
20+
21+
- 构造函数
22+
23+
初始化签名者列表,及每次交易至少需要签名数。
24+
25+
- addOwner
26+
27+
追加签名者
28+
29+
- replaceOwner
30+
31+
替换一个现有的签名者
32+
33+
- changeRequirement
34+
35+
变更最低签名数
36+
37+
- submitTransaction
38+
39+
提交一笔交易申请,参数为:合约地址、转账金额、交易 data
40+
41+
- confirmTransaction
42+
43+
传入之前提交的交易的 id,确认这笔交易可执行,如果确认的人数已达到最低要求,则自动执行该交易
44+
45+
- revokeConfirmation
46+
47+
取消确认一笔自己之前确认过的交易
48+
49+
- executeTransaction
50+
51+
根据 id 执行对应的交易,前提是交易已得到足够的确认数
52+
53+
- isConfirmed
54+
55+
判断一笔交易是否已得到足够的确认数
56+
57+
- getConfirmationCount
58+
59+
获取一笔交易当前得到的确认数
60+
61+
- getTransactionCount
62+
63+
查询交易数,两个入参分别是:是否包含处理中的交易、是否包含已处理的交易
64+
65+
- getOwners
66+
67+
获取当前所有可确认交易者
68+
69+
- getConfirmations
70+
71+
查看一笔交易已经得到哪些确认者的确认
72+
73+
- getTransactionIds
74+
- 查询交易 id 列表,参数为:from、to、pending(是否包含处理中)、executed(是否包含已处理)
75+
76+
## 操作流程
77+
78+
- 安装依赖
79+
80+
```sh
81+
yarn
82+
```
83+
84+
- 编译合约
85+
86+
```sh
87+
npx hardhat compile
88+
```
89+
90+
- 测试合约
91+
92+
```sh
93+
npx hardhat test
94+
```
95+
96+
- 部署合约
97+
98+
```sh
99+
npx hardhat run scripts/deploy.js --network kovan
100+
```
101+
102+
## TODO
103+
104+
- New Version Gnosis Safe Contracts: <https://github.com/safe-global/safe-contracts>
105+
106+
## 参考链接
107+
108+
- [Now open source: friendly multi-signatures for Ethereum 🔑](https://medium.com/dsys/now-open-source-friendly-multi-signatures-for-ethereum-d75ca5a0dc5c)
109+
- gnosis 使用:<https://gnosis-safe.io/app/#/welcome>
110+
- gnosis 合约(Polygon): <https://polygonscan.com/address/0xa6b71e26c5e0845f74c812102ca7114b6a896ab2#code>
111+
- 自己构造 gnosis 多签交易: <https://mp.weixin.qq.com/s/qgbTnchCHup24ANprGXH5Q>

0 commit comments

Comments
 (0)