通过本章的学习,可以帮你很具象的熟悉钱包的原理,以及私钥、公钥、比特币地址和钱包的关系。本章可以为产品和技术人员设计研发数字钱包时提供参考。
阅读时长:15分钟左右
4.1私钥、公钥、地址和钱包的关系
钱包:钱包是私钥的容器,钱包中只包含私钥,不包含比特币,钱包定义了一套生成私钥、管理私钥以及使用私钥签名的规则。
私钥:作用是对交易进行签名。由钱包通过随机熵源生成,也可由钱包导入已有的私钥。
公钥:由私钥通过特定的椭圆曲线函数生成。由私钥可以推出公钥,但由公钥很难计算出私钥。
比特币地址:由公钥经过单向的双哈希函数生成,通过Base58check编码的方式呈现,比特币地址以数字1开头。
在了解以上4个概念的关系后,下面详细讲解私钥、公钥、地址的生成原理以及钱包的分类。
4.2私钥的生成原理
私钥就是一个随机选出的数字而已,该随机数是一个二进制的256位数字。随机性数据来源于符合密码学安全的随机数生成器,即从一堆随机源的数据中取出一串随机字节,通过SHA算法转化成256位的二进制数字,再验证选择的随机数是否处于1到n-1之间(其中n是一个常数,略小于2^256),如果运算结果小于n-1,则随机数合适,否则需要重新选取随机数,直至所选取的随机数满足验证条件为止。
锐格信安联合创始人叶新:产业区块链和原生数字资产有很多交织点和融合点:金色财经现场报道,“2020 Cointelegraph中文大湾区·国际区块链周”8月5日-7日在深圳举行。锐格信安联合创始人兼CMO叶新在“新金融,新生态,新格局”圆桌上表示,产业区块链和原生数字资产有很多交织点和融合点。第一点,数字资产领域有一些应用场景不是只需要几个巨头做联盟链节点,而是有需要生数字资产领域的公司参与其中。第二点,国家把区块链作为新基建、生产要素,未来会看到数据资产如何进行定价如何交易,也会看到二者越来越多地结合。第三点,数字资产类型与数字资产承载载体也越来越多样化,我们和合作伙伴把数字钱包不仅嵌入到手机里,还嵌入到汽车里等。[2020/8/7]
当然,不同的钱包选取的随机数位数可能不一样。
私钥的表示方法
私钥的常见表示法有十六进制、WIF格式、WIF-compressed格式。
十六进制格式的私钥,是将原始256位的二进制数据转换成了64位的十六进制数据表示出来;
行情 | A股收盘:深证区块链50指数涨1.91%:A股收盘,上证指数报2875.96点(0.33+%),深证成指报10611.55点(+0.10%),深证区块链50指数涨1.91%。
区块链板块收涨2.93%,198只概念股中,150涨46跌2平。其中,暴风集团、金科文化、南威软件涨停,乐心医疗(-6.61%)领跌。
数字货币板块收涨3.48%,32只概念股30涨2跌。华力创通、四方精创涨停,中装建设(-3%)领跌。[2020/2/7]
WIF,即钱包导入格式,指将私钥导入新的钱包中时,钱包用来识别私钥的格式,所以在钱包导出私钥时,会生成该格式的私钥。WIF格式的私钥以5开头,代表该格式的私钥需要生成非压缩格式的公钥。
WIF-compressed,即钱包导入压缩格式,该私钥的格式以K或L开头,将私钥导入到钱包后,代表钱包会用该格式的私钥生成压缩格式的公钥,以便正确解析比特币地址。
4.3公钥的生成原理
私钥通过椭圆曲线函数,可以计算得到公钥,这是不可逆的过程:K=k*G。其中k是私钥,G是椭圆曲线上定义的初始常数点,K是公钥。
声音 | 中国纪检监察报:要学习研究区块链等,尽快用于纪检监察机关的监督:4月19日,中国纪检监察报发布了题为《用好网络这个“最大增量”》的文章。文章称,我国在5G、量子信息、人工智能、云计算、大数据、区块链等领域发展迅速,要学习研究,尽快为纪检监察机关的监督插上科技的翅膀,使之更强更广、更精准更有效。[2019/4/20]
比特币的椭圆曲线方程:y^2=x^3+7,这条曲线定义在素数阶p的有限域内,可以想象为在一个极大的网格上定义了一系列复杂的散点。公钥K的计算运用了椭圆曲线的加法和乘法规则:k*G=G+G+……+G,且该椭圆曲线上的两个点想加,其相加的和等于与椭圆曲线相交于另一点、然后在X轴上的反射点。那么G+G的值相当于从G点做切线后与曲线相交点,其在X轴上的反射点2G,如下图所示:
图一椭圆曲线同点相加,图片来源于网络
公钥K定义为该反射点的坐标K=。
公钥的表示方法
公钥是根据椭圆曲线计算出来的坐标,知道了x的值,可以根据函数求出对应y的值。如果同时将x和y用256位二进制存储的话,所占空间将增大1倍,存储空间上有些浪费。所以,公钥的表示格式分为非压缩格式和压缩格式。
动态 | 区块链的使用将推动智能票务业:据globenewswire.报道,报告显示,区块链的使用将推动智能票务业,智能票务市场预计将从2018年的101亿美元,达到20123年的204亿美元,复合年增长率为14.99%。[2018/12/5]
非压缩格式的公钥,是指生成的公钥拼接了x和y的值,非压缩格式的公钥,以前缀04开头。
压缩格式的公钥,是指生成的公钥中只包含了x的值,压缩格式的公钥,以前缀02或03开头。如上述椭圆曲线同点相加图示,同一个横坐标x可能对应2个y值,由于y在有限域中只有正数,此处的2个y值分别对应奇数和偶数,前缀02开头表示y是偶数,前缀03开头表示y是奇数。
由私钥生成压缩格式的公钥时,会在私钥的后面拼接01,用以表明该私钥来自于一个较新的钱包,只能用来生成压缩的公钥。对于私钥本身,是不会改变原值而压缩的。这样做的目的是为了给导入私钥的钱包一个信号:到底是使用压缩格式公钥和比特币地址去扫描区块链,还是使用非压缩格式公钥和比特币地址。
4.4比特币地址
区块链评级机构:EOS 主网上线进行时,杠杆风险依旧存:区块链评级机构标准共识称,EOS主网上线进行时,杠杆风险依旧,但无需担心多主网并存。并将持续观察EOS主网上线后性能、可靠度、社区的稳定性等情况,综合评估一级市场的风险变化。而本次主网上线事件主要影响体现在二级市场上,目前EOS价格走势正常。因此,标准共识维持 EOS「BB」的风险评级不变。[2018/6/3]
比特币地址是将公钥经过双哈希,得到公钥哈希后,采用Base58check编码的形式展示。比特币地址以1开头。
Base64编码是将任意的一长串输入转化成特定长度的数字和字母组成的表示法,其编码字符使用了26个小写字母、26个大写字母、10个数字和两个符号+以及/,Base58编码舍弃了一些容易错读和混淆的字符,其不含数字0,小写o、大写O、小写i、大写I以及+和/两个字符。Base58check编码采用的是Base58编码,同时加入了校验的功能。
最终的比特币地址由版本前缀、公钥哈希和校验码3部分组成。其中版本前缀用来标识编码后得到的是比特币地址,如采用Base58check编码时,比特币地址的前缀是0,私钥编码的前缀为128;公钥哈希,即将原始公钥经过SHA256和RIPEMD计算后得到的20字节的值;校验码,是由前缀拼接公钥哈希后,经过2次SHA256,取计算后的值的前4个字节得到。
比特币地址的生成原理,如下图所示:
图二比特币地址的生成原理
使用Base58check编码格式时,编码软件会计算原始数据的校验码和结果数据中自带的校验码进行对比,二者不匹配则表明有错误产生,那么这个地址也是无效的。
4.5比特币钱包的分类
钱包是用来管理私钥的容器。比特币钱包分为非确定性钱包钱包和确定性钱包。
非确定性钱包:由钱包预先随机生成N个私钥,每个私钥一旦使用,需要单独备份,当密钥足够多时,很难管理、备份和导入到新钱包,所以这种钱包使用起来很不方便,正被确定性钱包替代。
确定性钱包:又称种子钱包,顾名思义,即通过一个种子即可推出所有密钥。所以,在备份密钥或导入到新钱包时,只需要备份种子密钥即可,剩余的密钥可以根据既定规则推算出来。常见的确定性钱包,包含助记码词汇以及分层确定性钱包。
助记码词汇
助记码词汇是用英文单词序列代表作种子,来对应确定性钱包的随机数。单词的顺序就是钱包的备份,也就是对应的私钥集合。助记码词汇可以让使用者复制钱包更容易一些,它们相对于随机数字顺序来说,可以很容易的被读并且正确抄写。
助记码和种子的创建过程如下:
1.创造一个128到256位的随机顺序;
2.使用SHA256哈希该随机顺序,取前几位作为校验和。所选取的随机数的位数不同,校验和的字符数也不相同。
3.把校验和拼接在随机顺序的后面
4.按顺序把拼接后的值分解成11位不同的集合,并用这些集合去和一个预先已经定义的2048个单词字典做对应
5.取出对应的单词,按顺序即可生成一个12至24个词的助记码。
分层确定性钱包
分层确定性钱包,是通过单个种子生成主密钥,再由主密钥以树状结构衍生子密钥,子密钥又可以通过规则衍生出孙密钥,以此类推,一个种子可以衍生出无穷个子密钥,而且备份时只需备份种子即可将钱包中的所有密钥备份。
由种子衍生主密钥的过程:
如上图所示,由随机数生成种子后,通过单向哈希函数,输出512位的值,其中左边的256位做为主密钥,右边的256位作为主链编码。
由父私钥衍生子私钥的过程:
如上图所示,父私钥衍生子私钥时,先由父私钥生成父公钥,再由父公钥、父链编码和索引号通过单向哈希函数计算输出512位的值,左边的256位对应子密钥,右边的256位对应子链编码。其中索引号用来标识子私钥对应的位置。
4.6总结
通过本章的学习,可以很具象的熟悉私钥、公钥和比特币地址的背后原理,同时了解钱包的本质及其管理私钥的方式。本章可以为产品和技术人员设计研发数字钱包时提供参考。
推荐阅读
区块链基础知识篇——《精通比特币》第三章“比特币客户端”解读
区块链基础知识篇——《精通比特币》第二章“比特币的原理”解读
区块链基础知识篇——比特币经典书籍《精通比特币》第一章解读
比特币是有钱人的收藏品,不具备社会流通价值
作为一个普通白领,我为什么会认可区块链?
区块链大火,这是普通人参与区块链投资最简单直接的方式
Tina说
转型区块链,来这里就对了
标签:比特币区块链SHA比特币中国官网联系方式40亿比特币能提现吗比特币最新价格行情走势区块链工程专业学什么区块链存证怎么弄区块链技术发展现状和趋势SHA价格SHA币
最近,世界四大会计师事务所之一德勤发布了“2018年全球区块链调查”报告。德勤通过严谨的报告,提出了区块链领域正在发生的六大转变.
1900/1/1 0:00:00经过长达一周的抛售,比特币(BTC)价格暂时跌至4200美元以下,而山寨币的表现也同样糟糕。在此之后,这个新兴的由投机者组成的加密市场终于开始稳定下来,并找到了一些稳定的迹象.
1900/1/1 0:00:00人类历史上铸造了无数种硬币,有的已经消失,有的传承千年,看看现在最奇特的几个古代硬币5,1804的银元美元,这一年的硬币被很多人收藏,1084年的美元硬币是一个错误的结果.
1900/1/1 0:00:00一个神秘而浪漫的国度----罗马尼亚有这样一个神秘的欧洲小国几乎很少人知道当为数不多的人提及她的时候仅有的印象只是这是一个第三世界的贫困国家其实这是一个充满浪漫神秘色彩的国度 尼古拉的独裁 神秘.
1900/1/1 0:00:00莱特币加密货币是一款点对点的分布式网络货币系统。今天我们来介绍一下八大主流币种之一的莱特币,莱特币是由美籍华人查理.李于2011年开发,和比特币有着相同的技术实现原理,定位于比特币的补充.
1900/1/1 0:00:00宏观新闻 1、喜马拉雅FM:涉数字货币节目将被下架据每日经济新闻消息,此前某比特币财经博主微博表示,喜马拉雅FM下架其节目,称其发布法律法规禁止的内容.
1900/1/1 0:00:00