3.以太坊之秘钥文件
Posted 农民阿姨
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3.以太坊之秘钥文件相关的知识,希望对你有一定的参考价值。
1.账号
账号在以太坊中扮演着核心的角色.以太坊共有两种账号类型: 外部账号( EOA) 和合约账号.
在这里我们先重点关注外部账号,简称账号.合约账号简称合约,合约账户在合约章节中详细介绍.
外部账户和合约账户都是账户的通用概念,这些账户其实都是状态对象.外部账户的余额就是外部账户的一个状态对象,合约账户的状态除了有余额还有合约存储.
所有账户的状态都是以太坊网络的状态,以太坊网络的状态随着每一个区块的更新而变化.用户通过交易和以太坊区块链进行交互,在这个过程中,账户起着至关重要,不可缺少的作用.
如果限制以太坊只有外部账号,并且限制它们只能交易,那么我们就是只做了一个山寨币,而且是只能交易以太币( ether).
账号代表了使用者的一个对外的身份,用户使用公钥去签名一个交易,然后以太虚拟机就可以安全的校验这交易发起者的身份.
2.秘钥文件
每一个账号都有一对密钥,一个私钥和一个公钥.
账号和地址是一一对应的. 账号被来自密钥的最后20个字节的地址索引着.每一个私钥/地址对都被编码进一个密钥文件. 密钥文件是一个 json 格式的文本文件.
可以用任何的文本工具打开和编辑它.密钥文件的重要组成部分----你账号的私钥,是使用你在创建账号时输入的密码来加密保护的.密钥文件存储在你的以太坊客户端 keystore 子目录中.确保定期备份你的 Key文件.
创建一个密钥等同于创建一个账号!
(你不需要告诉别人你创建了一个账号, 你不需要和区块链进行同步, 你不需要运行一个客户端, 你甚至不需要联网.)
当然你的新账户不会有以太币.但它只属于你,没有你的密钥文件和密码,其他人甚至都不能访问它.
注意: 当你把一个来自其他节点的密钥文件添加进你自己的节点的时候,账户的顺序有可能发生变化,所以在编写代码或脚本的时候,最好不要使用账户的索引顺序来标示一个账号.
3.创建账户
在创建账户之前,要注意:一定要记住你的密码和备份你的密钥文件!!!
因为发送交易,甚至发送以太币都是必须要同时使用到你的密码和密钥文件的.所以一定切记备份好你的密钥文件和密码,把它们备份到
一个绝对安全的地方.
丢失了密钥文件或密码,那你账户中的所有的以太币也就全部都丢失了.没有密码是绝对无法访问你的账户的. 并且以太坊没有.
"忘记密码" "找回密码" 这一工能.
1.图形化创建账户
2. geth 控制台创建
4.开发的时候都在测试网络下
mac下 切换网络
登录后的界面:
各位工程师累了吗? 推荐一篇可以让你技术能力达到出神入化的网站"宅男门诊"
以上是关于3.以太坊之秘钥文件的主要内容,如果未能解决你的问题,请参考以下文章
以太坊之OpenZeppelin集成Truffle编写完善安全的合约