2024-08-20 13:58:40

以太坊(ETH)怎么挖矿?以太币私钥和地址如何计算生成

摘要
以太坊(以太币,Ethereum,货币代号ETH) 是一个基于P2P数字加密算法的去中心化可编程平台,包含数字货币和智能合约等特色功能,截止目前现存总量约88243984枚。安全对于以太坊来说十分重要,因此我们在挖矿之后对钱包和密钥的保存十分重要,密钥分为公钥和私钥两种,在某些环境下我们可以生成公钥和私钥,

以太坊(ETH)怎么挖矿?以太币私钥和地址如何计算生成,以太坊(以太币,Ethereum,货币代号ETH) 是一个基于P2P数字加密算法的去中心化可编程平台,包含数字货币和智能合约等特色功能,截止目前现存总量约88243984枚。安全对于以太坊来说十分重要,因此我们在挖矿之后对钱包和密钥的保存十分重要,密钥分为公钥和私钥两种,在某些环境下我们可以生成公钥和私钥,下面我们就来探讨一下以太坊的挖矿过程,并且来学习一下以太坊私钥和公钥的生成方法吧。

以太坊(ETH)怎么挖矿?以太币私钥和地址如何计算生成

1,挖矿大致过程:安装Ubuntu操作系统然后安装Ethereum c++版本,.安装opencl库, 运行Ethereum 用GPU挖矿。

2,以太坊利用公钥加密系统,跟比特币是类似的。以太币(ether)的挖矿算法叫做Ethash, 又名Dashimoto (Dagger-Hashimoto),是Hashimoto算法结合Dagger之后产成的一个变种。

你可以用电脑的中央处理器(CPU)挖以太币。自从GPU矿工的效率高出两个数量级,它就不再盈利了。然而你可以用CPU挖掘在Morden测试网或私有链上挖矿,以便创建你测试合约和交易所需要的以太币, 而无需花费实时网络上的真实以太币。

首先看看所需的依赖包

var Crypto = require('crypto')

var secp256k1=require('secp256k1')

var createKeccakHash=require('keccak')

和比特币一样,一切都源于一个32字节的随机数(1~2^256-1),但是以太坊比较坦诚,没有对随机数进行任何加工,而是直接把他当成私钥

var privateKey=Crypto.randomBytes(32);

地址也是由secp256k1椭圆曲线算法先计算出公钥(细节我也不清楚,但是有模块一行代码就可以搞定了),然后进行keccak256 hash运算再取后40位得到

var pubKey=secp256k1.publicKeyCreate(privateKey,false).slice(1);

var address =createKeccakHash('keccak256').update(pubKey).digest().slice(-20);

console.log(privateKey.toString('hex'));

console.log(address.toString('hex'));

现在你学会了吗?

声明:文章不代表币圈网观点及立场,不构成本平台任何投资建议。投资决策需建立在独立思考之上,本文内容仅供参考,风险自担!转载请注明出处!侵权必究!
回顶部