课程目标
- 客户端介绍和安装
- 以太坊账户创建和管理
- 多重签名
- 以太币
**
以太坊客户端介绍和安装
**
在从项目的早期,为了适应不同系列的开发语言和操作系统,以太坊的团队就实现了很多个的客户端。如上面我们
所看到的表格,有使用各种开发语言来实现的以太坊客户端。客户端的多样性对于以太坊生态系统来说是一个巨大
的优势。但是,对于像我们这样的终端用户来说,可能就会觉得很迷惑,因为不知道我们到底应该选择哪一个客户
端。
- 最新版本的Mist / Ethereum下载地址:
https://github.com/ethereum/mist/releases/
- Mist
是一个去中心化的分散的web3.0应用的浏览器。
- Ethereum Wallet
一个只绑定了以太坊钱包应用的Mist浏览器,因为它只绑定了这一个应用:以太坊钱包。所以被
称作为“Ethereum Wallet”。
- 更换默认的区块存储路径
mklink /j “C:\Users\ethereum\AppData\Roaming\Ethereum”“C:\Ethereum”
如果你有一个区块链数据已经同步完整的以太坊节点,那么你可以导出这节点的区块链数据,然后导入到您
的一个新的以太坊节点。你可以命令geth –testnet export filename导出数据,然后使用geth –testnet import filename导入数据到新的节点。
以太坊账户创建和管理
-
账号在以太坊中扮演着核心的角色。以太坊共有两种账号类型:外部账号(EOA)和合约账号。在这里我
们先重点关注外部账号,简称账号。合约账号简称合约,合约账户在编程的课程将详细介绍。外部账户
和合约账户都是账户的通用概念,这些账户其实都是状态对象。外部账户的余额就是外部账户的一个状
态对象,合约账户的状态除了有余额还有合约存储。所有账户的状态都是以太坊网络的状态,以太坊网
络的状态随着每一个区块的更新而变化。用户通过交易和以太坊区块链进行交互,在这个过程中,账户 起着至关重要,不可缺少的作用。 -
如果限制以太坊只有外部账号,并且限制它们只能交易,那么我们就是只是做了一个山寨币,而且是只 能交易以太币(ether)。
-
账号代表了使用者的一个对外的身份,用户使用公钥去签名一个交易,然后以太坊虚拟机就可以安全的 校验这交易发起者的身份。
-
秘钥文件
每一个账号都有一对密钥,一个私钥和一个公钥。账号和地址是一一对应的。账号被来自密钥的最后20个
字节的地址索引着的。每一个私钥/地址对都被编码进一个密钥文件。密钥文件是一个json格式的文本文件
,可以用任何的文本工具打开和编辑它。密钥文件的重要组成部分—你账号的私钥,是使用你在创建账号时
输入的密码来加密保护的。密钥文件存储在你的以太坊客户端的keystore子目录中。确保定期备份你的key
文件!!
创建一个密钥等同于创建一个账号!
• 你不需要告诉别人你创建了一个账号
• 你不需要和区块链进行同步
• 你不需要运行一个客户端
• 你甚至不需要联网
-
在创建账户之后,要注意:一定要记住你的密码和备份你的密钥文件!!!
-
因为发送交易,甚至发送以太币都是必须要同时使用到你的密码和密钥文件的。所以切记切记备份好你
的密钥文件和密码,把它们备份到一个绝对安全的地方。 -
丢失了密钥文件或密码,那你账户中的所有的以太币也就全部都丢失了。没有密码是绝对无法访问你的
账户的。并且以太坊没有“忘记密码?找回密码”这一功能选项 -
使用 geth account new
-
使用以太坊命令控制台程序(geth ),那创建账号只需要在命令行里执行 geth account new 命令 即 可。
-
geth account,您不需要运行钱包客户端或同步区块链数据。
-
geth account new
-
备份账号
以太坊网络没有所谓“找回账户密码”的功能。所以一旦丢失账户或忘记密码,那将是一件无可挽回的事情,你将永远的失去你的账户,和你这账户中的所有以太币!
备份账户很简单:
C:\Users\你的账户\AppData\Roaming\Ethereum\ 中的“keystore”目录整个备份一遍,并且同时备份好你的账户密码。
下次,你只需要把你备份的“keystore”目录中的文件,复制到你的新的客户端对应的目录,你就可以在你的新客户端上操作你的账户了。
多重签名
- 你可以使用以太坊钱包的多重签名来保护你账户中的余额。使用多重签名的好处是,当要从账户中提取
较大额度的金额时,需要多个账户的共同认证才能成功提取。在创建一个多重签名的钱包前,你首先至 少需要创建2个账户。 - 在以太坊钱包中创建账号很容易,只需要在 Accounts 选项卡,点击 ‘Add Account’。创建至少2个 账号。
- 你现在需要向你的主账号添加不少于0.02的以太币(用于创建多重签名钱包的账号),这是创建多重签
名钱包合约的交易费用。另外还需要至少1以太币,因为当前mist需要有足够的 ‘gas’来确保多重签
名钱包合约能够正确的执行交易。所以一开始总共需要1.02的以太币。
以太币
Gas 成本 :一个计算步骤的成本,即一个计算消耗多少个Gas
Gas 价格:以以太币计的价值
Gas 限额:一个交易中允许的Gas消耗的上线
Gas 费用:一个交易中所消耗的Gas总数,即这个交易成本。Gas费用反应网络中的计算负荷,交易量,以及区块的大小。Gas费用是支付给矿工的。