区块链教程之Bitcoin公钥和地址生成
公钥
Bitcoin的公钥是根据私钥计算出来的。
私钥本质上是一个256位整数,记作k
。根据bitcoin采用的ECDSA算法,可以推导出两个256位整数,记作(x, y)
,这两个256位整数即为非压缩格式的公钥。
由于ECC曲线的特点,根据非压缩格式的公钥(x, y)
的x
实际上也可推算出y
,但需要知道y
的奇偶性,因此,可以根据(x, y)
推算出x'
,作为压缩格式的公钥。
压缩格式的公钥实际上只保存x
这一个256位整数,但需要根据y
的奇偶性在x
前面添加02
或03
前缀,y
为偶数时添加02
,否则添加03
,这样,得到一个1+32=33字节的压缩格式的公钥数据,记作x'
。
注意压缩格式的公钥和非压缩格式的公钥是可以互相转换的,但均不可反向推导出私钥。
非压缩格式的公钥目前已很少使用,原因是非压缩格式的公钥签名脚本数据会更长。
根据私钥推算出公钥:
const bitcoin = require('bitcoinjs-lib');let keyWif = 'KwdMAjGmerYanjeui5SHS7JkmpZvVipYvB2LJGU1ZxJwYvP98617';const
区块链教程之Bitcoin公钥和地址生成相关推荐
- dSploitzANTI渗透教程之HTTP服务重定向地址
dSploitzANTI渗透教程之HTTP服务重定向地址 HTTP服务 HTTP服务主要用于重定向地址的.当用户创建一个钓鱼网站时,可以通过使用HTTP服务指定,并通过实施中间人攻击,使客户端访问该钓 ...
- 公钥 私钥_区块链中私钥、公钥和钱包地址三者关系
在昨天Pi首页更新过内容中,Wes spencer提到了钱包等一系列的问题,那么小编就带大家再来回顾一下数字货币钱包的起源!一.加密数字货币钱包的概念及原理加密货币钱包是指,可以用来存储,发送和接收多 ...
- 京东区块链技术实践白皮书(附下载地址)
CSDN下载地址:https://download.csdn.net/download/u010144805/10303943 3月22日消息,京东公司(股票代码:JD)今日正式发布区块链方案白皮书, ...
- 100名开发者聚齐,揭秘Blockathon区块松(北京)的区块链项目创意(附直播地址)...
2019独角兽企业重金招聘Python工程师标准>>> 5月25日下午,北京中关村e世界联合创业办公社内聚齐了150名来自全国各地以及新加坡.澳大利亚.韩国等国家的区块链开发者,全球 ...
- 区块链安全问题: 研究现状与展望
区块链安全问题: 研究现状与展望--韩 璇.袁 勇.王飞跃 1 区块链概述 1.1 比特币的工作原理 1.2 区块链的基本概念 1.3 区块链的安全挑战 2 区块链的安全目标 2.1 数据安全 2.2 ...
- Bitcoin比特币与BlockChain区块链技术
一.比特币的历史 比特币现在大火,一枚7000多人民币,遥想当年1万枚才买一张价值25美元的披萨优惠券,如果上天能给我回到当年的机会的话,我一定买买买!!! 比特币有很高的开采及投资价值,被我们中国人 ...
- 从A到Z, 这份区块链术语词典据说80%的人都认不全 | 科普
来源 | Blockgeeks 编译 | Guoxi 出品 | 区块链大本营(blockchain_camp) 人们常说,种一棵树最好的时间是十年前,其次是现在.学习区块链也是一样,只要你肯下功夫,什 ...
- FinTech-Blockchain区块链
FinTech-Blockchain区块链 原创 2016年07月07日 21:57:30 标签: FinTech / Blockchain / R3 / 区块链 / 比特币 5561 最近有同事研究 ...
- 【三分钟讲清区块链/比特币】之二:比特币入门教程
前言:阅读本文之前,我假设你已经了解了区块链及其相关概念.如果没有,建议先阅读一下本系列的前一篇:[三分钟讲清区块链/比特币]之一:区块链入门教程,然后再阅读本文. 比特币(bitcoin)诞生于20 ...
- 区块链的一些名词解释
地址: 比特币地址(例如:1DSrfJdB2AnWaFNgSbv3MZC2m74996JafV)由一串字符和数字组成.它其实是通过对160位二进制公钥哈希值进行base58check编码后的信息.就像 ...
最新文章
- Windows Server Backup 备份活动目录
- Altium Designer -- PCB 叠层设计
- 为什么C语言成了大学的必修课?
- FD.io VPP的C语言接口如何使用:FD.io VPP: How To Use The C API
- 关于如何在Listener中注入service和ServletContextListener源码分析
- CSS3属性选择器(CSS3)
- Debian下的内核编译
- 陈纪修老师《数学分析》 第04章:微分 笔记
- 基于Java毕业设计新能源汽车租赁管理系统源码+系统+mysql+lw文档+部署软件
- C语言程序100例之C#版-029
- SpreadJS 15.1 ~【SpreadJS 15.0】
- 笑死人啦,史上最恶心的笑话
- iOS 多线程面试题
- linux解压文件并命名,linux命名压缩解压文件
- 惠普电脑u盘重装系统步骤_惠普笔记本u盘系统安装步骤 惠普u盘启动系统安装...
- linux命令显示文件内容行号|linux将内容以行号显示出来
- 微生物群也有记忆 | 微生物群能被“训练”
- crontab定时任务不执行,并且没有收到错误信息邮件
- 如何合理运用激励模式,实现有效激励
- 4G时代 运营商的经营模式变化
热门文章
- tableau中创建一个默认为今天日期的日期字段
- C#习题之标准体重测试
- loss下降auc下降_从基本原理到梯度下降算法:零基础也能看懂的神经网络教程...
- 合伙企业怎么报所得税
- 小米手机系统服务组件是干什么的_小米手机的云服务也太好用了吧?!手机丢了完全不用怕了...
- Python —— 数据科学的手段 (第2版)配套代码
- 成也史玉柱,败也史玉柱
- Java 蓝桥杯 基础练习 01字串(循环)
- ntds(600)ntdsa:系统错误1453配额不足及恢复过程记录
- 1990年图灵奖--费尔南多·考巴脱简介