当前位置:首页>区块链文章>区块链推广>区块链教程之Bitcoin公钥和地址生成

区块链教程之Bitcoin公钥和地址生成

公钥比特币的公钥是根据私钥计算出来的。私钥本质上是一个256位整数,记作k。根据比特币采用的ECDSA算法,可以推导出两个256位整数,记作(x, y),这两个256位整数即为非压缩格式的公钥。由于ECC曲线的特点,根据非压缩格式的公钥(x, y)的x实际上也可推算出y,但需要知道y的奇偶性,因此,可以根据(x, y)推算出x\',作为压缩格式的公钥。压缩格式的公钥实际上只保存x这一个256位整数,但需要根据y的奇偶性在x前面添加02或03前缀,y为偶数时添加02,否则添加03,这样,得到一个

公钥

Bitcoin的公钥是根据私钥计算出来的。

私钥本质上是一个256位整数,记作k。根据比特币采用的ECDSA算法,可以推导出两个256位整数,记作(x, y),这两个256位整数即为非压缩格式的公钥。

由于ECC曲线的特点,根据非压缩格式的公钥(x, y)x实际上也可推算出y,但需要知道y的奇偶性,因此,可以根据(x, y)推算出x\',作为压缩格式的公钥。

压缩格式的公钥实际上只保存x这一个256位整数,但需要根据y的奇偶性在x前面添加0203前缀,y为偶数时添加02,否则添加03,这样,得到一个1+32=33字节的压缩格式的公钥数据,记作x\'

注意压缩格式的公钥和非压缩格式的公钥是可以互相转换的,但均不可反向推导出私钥。

非压缩格式的公钥目前已很少使用,原因是非压缩格式的公钥签名脚本数据会更长。

根据私钥推算出公钥:

  const bitcoin = require(\'bitcoinjs-lib\');      let keyWif = \'KwdMAjGmerYanjeui5SHS7JkmpZvVipYvB2LJGU1ZxJwYvP98617\';      const ecPa
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
区块链推广

所谓的去中心化,其实就是要告别平台为主导的发展模式

2021-12-23 14:59:11

区块链推广

区块链教程之Bitcoin原理简介

2021-12-23 14:59:17

重要说明

本站资源大多来自网络,如有侵犯你的权益请联系管理员 区块链Bi站  或给邮箱发送邮件834379394@qq.com 我们会第一时间进行审核删除。 站内资源为网友个人学习或测试研究使用,未经原版权作者许可,禁止用于任何商业途径!请在下载24小时内删除!


如果你遇到支付完成,找不到下载链接,或者不能下载,或者解压失败,先不要忙,加客服主的QQ:834379394 (客服有可能有事情或者在睡觉不能及时的回复您,QQ留言后,请耐心等待即可!)

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索