比特币通信协议 - 币圈消息

比特币通信协议篇11、二、TURN简介。在典型的情况下,TURN客户端连接到内网中,并且通过一个或者多个NAT到 详细

比特币公钥和地址 - 币圈消息

[复制链接]
56 0
wangjia 发表于 2022-11-3 15:49:18 | 只看该作者 |阅读模式 打印 上一主题 下一主题
比特币公钥和地址篇11、特性:。ECC算法是基于有限域的椭圆曲线上的数学算法。关于ECC算法基本原理的介绍,本文重点介绍Bitcoin系统中采用的公钥密码学方案和签名算法的实现细节!
2、不同的点相加:(x1,y1)∈E(Fp),(x2,y2)∈E(Fp),x1≠x2(x1,y1)+(x2,y2)=(x3,y3),其中,x3≡λ^2−x1−x2(modp),y3≡λ(x1−x3)−y1(modp),而λ≡/(modp).。
3、验证过程:。以上特性通过数学算法来保证。公钥密码学的实现方案有很多种,常见的有RSA、ElGamal、、迪菲-赫尔曼密钥交换协议中的公钥加密算法、椭圆曲线加密算法!
4、相同点叠加:(x1,y1)∈E(Fp),y1≠(x1,y1)+(x1,y1)=(x3,y3),其中,x3≡λ^2−2×1(modp),y3≡λ(x1−x3)−y1(modp),andλ≡(3×1^2+a)/2y1(modp).。
5、a=0,b=7。一、公钥(pubkey)、私钥(privkey)是什么。
6、公钥加密:公钥加密的内容可以用私钥来解密只有私钥持有者才能解密!
7、私钥签名:私钥签名的内容可以用公钥验证。公钥能验证的签名均可视为私钥持有人所签署!
8、二、椭圆曲线加密算法(ECC)简介。
9、域(Field)的特性是集合F中的所有元素经过定义后的加法和乘法运算,所得结果仍包含于F。无限域的元素个数无限,比如有理数域、实数域。有限域的元素个数有限,这就出现一个问题,假设F为从0至9的整数集合,那么5,6都属于F,但常规的加法定义5+6=11,11不属于F。因而,有限域需要定义加法和乘法,使其满足对加法和乘法的封闭!
10、dG是一个标量乘法,可以转化为加法运算,如果有爱好者想由公钥逆推出私钥,可以根据这些公式来尝试一下!

比特币公钥和地址篇21、通过私钥可以计算出公钥,反之则不行!
2、随机从[1,n-1]中选取一个数d,计算Q=dG。其中,d就是私钥,而Q即为公钥!
3、网银系统中主要使用的是RSA方案。比特币系统则使用的是ECC方案,在核心实现中并不使用加密,只使用了签名算法来确保交易的真实性和所有权的认证!
4、公钥的主要作用:加密;验证签名。私钥的主要作用:签名;解密!
5、椭圆曲线:y^2≡x^3+ax+b(modp)当:a,b∈Fp且满足4a^3+27b^2≠0(modp).,x,y∈Fp时,这条曲线上的点的集合P=(x,y)就构成了一个基于有限域Fp的椭圆曲线域E(Fp),元素个数记作#E(Fp)!
6、问:这和比特币系统有什么关系吗?答:公钥即为该曲线上的某个点Q=(x,y)的二进制输出格式。公钥可以压缩,是因为y可以根据x通过曲线函数计算出来!
7、根据ECC算法随机生成一个密钥对(k,R),R=(xR,yR)令r=xRmodn,如果r=0,则返回步骤计算H=Hash(M)按照数据类型转换规则,将H转化为一个bigendian的整数es=k^-1(e+rd)modn,若s=0,则返回步骤输出的S=(r,s)即为签名!
8、问:n和比特币系统有什么关系?答:比特币系统规定私钥的取值范围最大不能超过n!
9、三、椭圆曲线数字签名算法(ECDSA):。
10、基于有限域Fp的椭圆曲线域E(Fp):。
比特币公钥和地址篇31、这一算式看起来很简单,但这怎样保证由Q不能算出d呢?有限域中的加法和乘法是有特殊规定的。基于Fp的椭圆曲线点的集合域中,加法运算是:。
2、比特币系统选用的secp256k1中,参数为p=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F=2^256−2^32−2^9−2^8−2^7−2^6−2^4−1。
3、G=0479BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8。
4、目前已发现,当且仅当元素个数q为质数或某个质素的n次幂时,必有一个元素个数为q的有限域存在。另外,对于每一个符合这一条件的q值,都恰有一个有限域。含有q个元素的有限域记作:Fq。ECC方案中只使用了两类有限域:一种称为质数有限域Fp,其中q=p,p为一个质数;另一种称为基于特征值2的有限域F2^m,其中q=2^m,m 1。比特币系统使用的是第一种。Fp是一个{0,1,p-1}的整数集合,有限域Fp中定义了加法:a+b≡r(modp)乘法:ab≡s(modp).。
5、(最近有一些关于量子攻击的讨论中涉及到这一概念,有一定数学基础的和毫无数学基础的可以跳过这一小节)。
6、公钥和私钥:。公开密钥加密,是指存在一对数学算法相关的密钥,使用其中一个密钥加密后所得的信息,只能用另一个密钥才能解密。如果其中一个公开后并不会危害到另外一个的秘密性质,则称公开的密钥为公钥,不公开的密钥为私钥!
7、计算H=Hash(M)按照数据类型转换规则,将H转化为一个bigendian的整数e计算u1=es^-1modn,u2=rs^-1modn计算R=(xR,yR)=u1G+u2Q,如果R=零点,则验证该签名无效令v=xRmodn若v==r,则签名有效,若v≠r,则签名无效!
8、n=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141h=01。
9、签名过程:。有限域(FiniteField):。
10、椭圆曲线域E,控制选取点的密度。h=#E(Fp)/n!
比特币公钥和地址篇41、ECC方案通常包含有三方面内容,数字签名方案、加密和密钥传输方案、以及密钥协商方案。本文只涉及到比特币系统所使用的数字签名方案!
2、用户的密钥对:;(d为私钥,Q为公钥)待签名的信息:M;签名:Signature(M)=(r,s)。
极客公园 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:比特币公钥和地址
喜欢 (0)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
收藏
收藏0
转播
转播
分享
分享
分享
淘帖0
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝0

帖子2930859

发布主题
阅读排行更多+

Powered by 顺水鱼MT4外汇EA网! X3.2© 2001-2017 顺水MT4外汇EA公司.( 陕ICP备17014341号-1