一、Bitcoin-qt客户端加密了,如何导入导出私钥拜托各位大神
一、Bitcoin-qt客户端加密后如需要导出某一地址对应的私钥,需要先调用 walletpassphrase密码解锁持续时间(秒),如:walletpassphrase h123456789*/* 120,注意留有英文空格。phrase为短语的意思。然后 dumpprivkey地址如:dumpprivkey 15YtPkrChjpCWJX49saJLSJXyzoDnquOPW(33位公钥,字母区分大小写、数混合字)就可以得到诸如:L1ZHQoDroNSgusqdlopwmDYmM9oDSUBUSpA8hJfmEbqDibGoPiko(52位私钥,字母区分大小写、数字混合)二、Bitcoin-qt客户端没有加密如需要导出某一地址对应的私钥,直接在RPC控制台输入dumpprivkey地址就可以。多多试几个地址,你就可以知道,公钥和私钥都是成对使用的。一个公钥对应一个私钥。数据被Bitcoin-QT发送出去之前,需要两层加密,第一层是随机用某个公钥对应的私钥来加密数据,然后把这个公钥明文发送给收款方。收款方使用这个公钥打开对应私钥加密的数据,这样就可以确保数据是付款方发送。第二层是用收款方的公钥(其实就是33位的收款地址)来加密。经过这次加密后,只有掌握这个公钥对应私钥的人,才能收到这笔钱。猜测,Bitcoin钱包文件wallet.dat里面保存的应该是一对对的公钥和私钥。公钥和私钥一一对应。另外,可能出于安全性的考虑,Bitcoin-QT在加密钱包后是不能去掉密码的。如要去掉密码,可以创建一个新钱包,然后把私钥导入到新钱包里去。使用命令:importprivkey私钥私钥导入后,Bitcoin-QT会在“接收”窗口自动显示对应的地址(公钥)。而如果这个地址有BTC余额,那就恭喜你了,别人的钱就归你了。所以你可知道保护钱包文件wallet.dat的重要性了吧?加密钱包后,向别人发送(付款)BTC时,会被要求输入加密密码,这样安全性上多了一道保障。查看原帖>>
二、Bitcoin公私钥是如何生成的
私钥生成方法有加密法和随机法两种。加密法直接使用SHA256生成摘要,然后转换为十六进制私钥原值。随机法通过节点随机数种子生成长串,确保每次生成的私钥不同。
私钥生成后,需要将其转换为能导入钱包的格式。转换规则是将私钥原值加上版本做前缀,进行两次SHA256加密,取前4个字节进行58进制转换。
公钥生成基于椭圆加密算法。首先使用椭圆曲线算法生成公钥原值,算法核心是使用小k乘以椭圆曲线上特定点G,得到公钥K。kG代表从点G出发,沿椭圆曲线路径前进k次,得到的新点。生成公钥原值后,使用hex2SHA256和RiPeMD160加密算法,再加上主网号,生成公钥地址。公钥地址为公钥原值摘要,难以还原原值。
自己实现公钥生成工具,避免第三方依赖,确保私钥安全。推荐使用bitcoin-key-generator工具生成私钥,代码简单,无第三方库。如有需求,推荐杭州仓前地区不加班且工资可谈的工作机会。
三、bitcoin私钥是如何产生的
公钥( public key)公钥与私钥一一对应,是由私钥推算出来的(通过椭圆曲线算法),我们花费比特币的过程其实就是“使用私钥来签名比特币交易,其他人则可以使用公钥来验证签名,验证通过,花费也就完成了”。私钥能推算出公钥,但公钥不能反推出私钥,该过程是不可逆的,这就是比特币的密码学根基。地址(bitcoin address)地址是由公钥转换而来(摘要+校验),地址被用于接收比特币(公钥其实也可以收币,只不过大部分人不这么做而已),一个地址上收到比特币后,只有使用该地址所对应的私钥才能花费这个地址上的钱。好了,从上面的论述中,你就能看出,对于比特币来说,最重要的就是私钥,私钥决定了比特币的产权归属,公钥和地址均能通过私钥推算出来,因此通常意义上的比特币安全其实就是私钥的安全,一个比特币钱包是不是安全的也要看它能否安全的管理私钥。
本文来自用户投稿,不代表币大牛资讯立场,如若转载,请注明出处:https://www.98xmw.com/zhis/15614.html
发表回复
评论列表(0条)