zoukankan      html  css  js  c++  java
  • 3.以太坊之秘钥文件

    1.账号

      账号在以太坊中扮演着核心的角色.以太坊共有两种账号类型: 外部账号( EOA) 和合约账号.

      在这里我们先重点关注外部账号,简称账号.合约账号简称合约,合约账户在合约章节中详细介绍.

    外部账户和合约账户都是账户的通用概念,这些账户其实都是状态对象.外部账户的余额就是外部账户的一个状态对象,合约账户的状态除了有余额还有合约存储.

    所有账户的状态都是以太坊网络的状态,以太坊网络的状态随着每一个区块的更新而变化.用户通过交易和以太坊区块链进行交互,在这个过程中,账户起着至关重要,不可缺少的作用.

      如果限制以太坊只有外部账号,并且限制它们只能交易,那么我们就是只做了一个山寨币,而且是只能交易以太币( ether).

      账号代表了使用者的一个对外的身份,用户使用公钥去签名一个交易,然后以太虚拟机就可以安全的校验这交易发起者的身份.

    2.秘钥文件

      每一个账号都有一对密钥,一个私钥和一个公钥.

      账号和地址是一一对应的. 账号被来自密钥的最后20个字节的地址索引着.每一个私钥/地址对都被编码进一个密钥文件. 密钥文件是一个 json 格式的文本文件.

    可以用任何的文本工具打开和编辑它.密钥文件的重要组成部分----你账号的私钥,是使用你在创建账号时输入的密码来加密保护的.密钥文件存储在你的以太坊客户端 keystore 子目录中.确保定期备份你的 Key文件.

      创建一个密钥等同于创建一个账号!

      (你不需要告诉别人你创建了一个账号, 你不需要和区块链进行同步, 你不需要运行一个客户端, 你甚至不需要联网.)

      当然你的新账户不会有以太币.但它只属于你,没有你的密钥文件和密码,其他人甚至都不能访问它.

    注意: 当你把一个来自其他节点的密钥文件添加进你自己的节点的时候,账户的顺序有可能发生变化,所以在编写代码或脚本的时候,最好不要使用账户的索引顺序来标示一个账号.

    3.创建账户

      在创建账户之前,要注意:一定要记住你的密码和备份你的密钥文件!!!

      因为发送交易,甚至发送以太币都是必须要同时使用到你的密码和密钥文件的.所以一定切记备份好你的密钥文件和密码,把它们备份到

    一个绝对安全的地方.

      丢失了密钥文件或密码,那你账户中的所有的以太币也就全部都丢失了.没有密码是绝对无法访问你的账户的. 并且以太坊没有.

    "忘记密码" "找回密码" 这一工能.

      1.图形化创建账户

      2. geth 控制台创建

    4.开发的时候都在测试网络下

    mac下 切换网络

    登录后的界面:

    各位工程师累了吗? 推荐一篇可以让你技术能力达到出神入化的网站"宅男门诊"
  • 相关阅读:
    软件安装
    ARIMA
    解决数据分析中的小知识点及问题
    Django详解之路由系统、中间件
    hdoj 1018
    程序员编程技术迅速提高终极攻略 (转自csdn)
    chapter 5:一个简单的规律问题。
    chapter 4:贪心
    7种qsort排序方法
    chapter 2:hdoj 1031(结构体的使用)
  • 原文地址:https://www.cnblogs.com/chaoren399/p/7307844.html
Copyright © 2011-2022 走看看