欢迎进入访问本站!

以太坊的钱包地址有哪些?怎么用?

TP冷钱包app使用教程 2022-08-30 15:48:5168本站管理员

  现在我们都很关心以太坊的问题,所以我想你会想了解一些以太坊的情况。以太坊的钱包地址有哪些?怎么用?这里就做一个小编来介绍很多关于以太坊的钱包地址吧。怎么用?希望能帮到大家。

  以太坊的客户端或者图形界面帮助我们实现底层复杂的密码。我们唯一需要做的就是在keystore下保存(备份更多)加密的私钥文件和加密的密码。否则就有可能失去辛辛苦苦赚来的以太坊或者花钱购买的以太坊。

  记住,千万不要出错:丢失密钥库文件或忘记密码!

  以太坊创建一个账户

  以太坊创建账号的操作非常简单,但是有不同的呈现形式。以geth客户端为例。

  命令模式

  波哥大:geth zzs美元。/geth account new您的新帐户已被密码锁定。请输入密码。不要忘记这个密码。

  密码短语:重复密码短语:

  地址:{ 0 f 7 b 73 f 3034d 0d 17 a 165 E4 cf 50 BD 77051235 b4e 6 }博根:geth zzs$。/geth帐户列表

  账号# 0:{ 0 f 7 b 73 f 3034d 0d 17 a 165 E4 cf 50 BD 77051235 b4e 6 } keystore:///Users/zzs/Library/ether eum/keystore/UTC-2018-02-21t 02-56-46.285140000 z-0 f 7 b 73 f 3034d 0d 17 a 165 E4 cf 50 BD 77051235 b4e 6 bogon:geth zzs $ 12340

  上面的操作是直接执行geth client的命令来创建一个账户,并显示该账户的私钥文件的信息。在创建过程中,需要输入两次用于加密私钥的密码。这种方法的优点是不需要单独启动geth节点就可以创建完整的帐户。

  控制台命令模式

  这样你需要先启动geth节点,进入控制台命令行交互界面。然后执行以下命令:

  > personal . new account(" 123456 ")" 0x 00 Fe 1 b 8 a 035 b5 C5 e 42249627 ea 62 f 75 e5a 071 CB 3 "//或者

  > personal.newAccount()密码短语:重复密码短语:“0x6a 787 F16 c 2037826 FBC 112 c 337d 7 b 571 bb 19 c 022”12345678910

  通过个人角色管理和创建新帐户,并设置密码。

  密钥库文件

  Keystore文件是您唯一的加密文件,用于签署以太坊的私钥。一旦丢失文件或加密密码,就失去了在该地址发起和签署交易的特权,账户内的资金将被永久锁定。

  keystore文件的价值在于以加密的方式存储密钥。同时,在使用时,只需要提供keystore文件和相应的密码就可以发起交易。在安全性和可用性之间有一个完美的平衡。

  但是我们需要注意的是,加密文件一旦用密码解锁,就可以在有效时间内通过客户端发起交易。如果别人可以访问你的客户端,你也可以发起交易。在网络安全不足的情况下,这是硬币被盗的场景之一。

  密钥文件内容

  密钥文件是一个文本文件,可以用任何文本编辑器或浏览器打开。

  bogon:keystore zzs $ cat UTC-2018-02-21t 03-01-27.38349000 z-6a 787 F16 c 2037826 FBC 112 c 337 d7b 571 bb 19 c 022

  { " address ":" 6a 787 F16 c 2037826 FBC 112 c 337d 7 b 571 bb 19 c 022 "," crypto": { "cipher": "aes-128-ctr ","密文":" 8 ed39 b 22 ab 67 a 787 baa 4 ebb 545382255 f 747328 e2a 3 e 74970 a 0 f 66 b 422d 169 "," cipher params ":{ " iv ":" 8e0e 099

  }," kdf": "scrypt "," kdfparams": { "dklen": 32," n": 262144," p": 1," r": 8," salt ":" a2a 84d 4843 DBC 7b 7 c 0 aefa 933 f 37 EAD 073 AEF 8503 AC 8497 b 77828 e 85467 c 6822 "

  }、" MAC ":" 1 fc 4a 5d 260 FDD 70 e 772 FDC 9 a 28614 e 82d 5 ff 0 ADC 6 c 98332 f 8455 C5 aa 0a 3352 ad "

  }、" id ":" 7 bce1a 69-79 a2-429 a-836 c-cc 2 BF 72 c 80 de "、"版本":3 } 1234567891011121314151617181920212223

  通过文件的内容,我们可以看到一个json字符串,里面包含了这个密钥对应的地址,以及一些与加密相关的信息。

  密码:加密算法,对称加密,AES算法,用于加密以太坊私钥;

  Cipherparams:密码算法所需的密码参数,参数iv,是aes-128-ctr加密算法所需的初始化向量;

  密文:加密密文,aes-128-ctr函数的加密输入密文;

  Kdf:密钥生成函数,用密码加密keystore文件;

  KDF参数:KDF算法所需的参数;

  Mac:验证密码的代码;

  原理分析

  密钥

  以太坊帐户由一对公钥和私钥组成,并使用强对称算法(密码)进行加密。

  我们来看看具体的流程图“ciphertex密文的对称解密”:

  1.png

  客户端读取密钥文件和加密密码,解密私钥,然后使用私钥对发送的事务进行签名。

  口令保护

  以太坊使用一种基于密码保护的机制来解密密钥。这样,用户就不需要记住一串不友好的密码。为了达到这种效果,以太坊使用密钥生成函数,根据输入的密码和一系列参数计算出解密密钥。

  这涉及到kdf和kdfparams的使用:

  Kdf是一个密钥生成函数,它根据密码计算(或检索)解密密钥。Kdf使用scrypt算法。

  Kdfparams是scrypt函数的必需参数。

  用kdfparams参数调整scrypt函数,反馈密码得到解密密钥,这是密钥生成函数的输出。

  2.png

  密码错误

  当密码输入错误时,密码推导和解密会成功,但最终计算出的以太坊私钥不正确,无法解锁账户。

  其中mac值在密钥库文件中发挥作用。执行密钥生成函数后,其输出(解密密钥)和密文被处理并与mac进行比较(类似于数据签名)。如果结果与mac相同,则密码正确,可以开始解密操作。

  在与mac比较之前,解密密钥(左起第二个字节的16个字节)要与密文*连接,并进行哈希处理(使用SHA3-256方法)。

  3.png

  过程评审

  输入密码,作为kdf密钥生成函数的输入,计算解密密钥。使用解密密钥和密文进行连接和处理,并与mac进行比对,确保密码正确。最后,用解密密钥通过密码对称函数解密密文。

Copyright © 2018-现在 PbootMoBan All Rights Reserved. 免责声明:网站中图片均来源于网络,如有版权问题请联系删除!

备案号:皖ICP备88888888号 联系方式:admin@pbku.cn