当前位置:首页 > 物联网 > 区块链
[导读] 大多数加密资产使用与比特币完全相同的椭圆曲线,称为 secp256k1 。这使得重新使用比特币的许多椭圆曲线库和工具成为可能。 椭圆曲线密码学(英语:Elliptic Curve Cry

大多数加密资产使用与比特币完全相同的椭圆曲线,称为 secp256k1 。这使得重新使用比特币的许多椭圆曲线库和工具成为可能。

椭圆曲线密码学(英语:Elliptic Curve Cryptography,缩写为ECC)是一种基于椭圆曲线数学的公开密钥加密算法。

下图示例大多数加密资产使用与比特币完全相同的椭圆曲线,称为 secp256k1 。这使得重新使用比特币的许多椭圆曲线库和工具成为可能。

椭圆曲线技术用于创建由私钥派生出来的公钥。

椭圆曲线技术工作原理

以一个随机生成的数字_k_的私钥开始,我们通过将它乘以称为_generator point_ G_的曲线上的预定点,在曲线上的其他位置产生另一个点,这是相应的公钥_K。生成点被指定为+secp256k1+标准的一部分,对于+secp256k1+的所有实现始终相同,并且从该曲线派生的所有密钥都使用相同的点_G_:

K = k * G

k 是私钥

G 是预定点

K 是生成的公钥,曲线上的某一点

由于所有比特币用户曲线上的预定点总是相同的,私钥k乘以G将得到的公钥K始终相同.k和K之间的关系是固定的,但这种情况只存在于单向运算,即只能从k到K。这就是比特币地址(从K派生)可以与任何人共享并且不会泄露用户的私钥(k)的原因。

为了将一个点与整数相乘可视化,我们将使用比实数更简单的椭圆曲线来描述,旨在找到曲线上的预定点G的多个kG。

这个运算逻辑与将G自身连续相加k次相同。在椭圆曲线中,向自身添加一个点相当于在点上绘制切线并再次找到它与曲线相交的位置,然后在x轴上反映该点。

下图显示了导出G,2G,4G的过程,作为曲线上的几何运算。

1. 第一步是拥有可靠的随机源并获得一个随机数(256位) 。

2. 其次,需要将SHA256应用于该数字,并将获得私钥(k)。

3. 通过应用椭圆曲线(加密技术),继而获得公钥(K),如上所述。

4. 代入SHA 256和RIPEMD160(一个不同的散列函数),最终得到比特币地址。

5. 以多种不同的格式显示地址,最常见的是QR码。

区块如何相互链接?

每个区块都包含许多事务。每个区块包含有关该特定区块的特定信息。区块的主要字段是该区块的区块头。区块头包含上一个区块的哈希值(PreHash),本区块体的哈希值(Hash),以及时间戳(TImeStamp),区块的难度,Root:StateDB中的“state Trie”的根节点的RLP哈希值。Block中,每个账户以stateObject对象表示,账户以Address为唯一标示,其信息在相关交易(TransacTIon)的执行中被修改。所有账户对象可以逐个插入一个Merkle-PatricaTrie(MPT)结构里,形成“state Trie”。Nonce:一个64bit的哈希数,它被应用在区块的“挖掘”阶段,并且在使用中会被修改。

区块链是一个链状结构,包含链条的头节点(第一个区块)和尾节点(最后一个区块)。一旦有人计算出区块链最新数据信息的哈希值,相当于对最新的交易记录进行打包,新的区块会被创建出来,衔接在区块链的末尾。

工作量证明(POW)

如上所述,工作量证明(POW)系统(或协议或功能)是对应服务与资源滥用、或是阻断服务攻击的经济对策。

工作原理:

如上所述,区块头包含:上一个区块的哈希值(PreHash),本区块体的哈希值(Hash),以及时间戳(TImeStamp),区块的难度,Root,Nonce。

执行PoW的关键元素是Nonce。PoW的运作由分散在各处的计算机,竞赛谁能最早找出,搭配原本要打包的数据的穷举猜测值(Nonce),谁就等同获得该区块的打包权(记账权)。此猜测值被找出后,与数据、散列值一起打包成块后广播,经多数节点确认与承认,打包者就能获得打包该区块所提供的奖励。

如果你是一个矿工,你需要做的第一件事就是“挖矿”找到一个区块头并并应用SHA256。 为此,你需要为Nonce分配一个数字,因为区块头的所有其他字段都是固定的。例如,假设以Nonce = 0开头。这样,你将获得一个字母数字字符串(2poiuwfsvhxnv382249j)。

如下所示:

然后,你需要做的是将所得结果与目标值进行对比。目标值是一个变量,用于在开头定义数字或字母数数字串。(例如0000000wirug43xj)。

问题是:特定的Nonce的区块头的哈希值与目标值的0相同还是比它多? 例如:2poiuwfsvhxnv382249j与0000000wirug43xj相比,前者所含0比后者少。 那么你需要在区块头上标题上更改哪个变量以便应用SHA256来获得不同的结果?这是SHA256的碰撞阻力属性的益处。 碰撞阻力是加密散列函数的一个属性:如果很难找到散列到同一输出的两个输入,则散列函数H是抗冲突的;也就是说,两个输入a和b使得H = H,并且a≠b。 输入多于输出的每个散列函数都必然会发生冲突。考虑一个哈希函数,如SHA-256,它从大输入产生256位输出。 因为通过简单地将Nonce更改为区块头并应用SHA 256,结果与前一个答案完全不同(并且是随机的)。 将上述示例中的Nonce更改为 1,结果为“0057aasñhlqywirfdr334”。

0057aasñhlqywirfdr334 所含的0与0000000wirug43xj的0数量也不相同。

该过程持续进行(此过程中矿工每秒都会经历数百万次的计算,当所得结果错误时将再次进行尝试),直到获得目标的Nonce。

因此,所有矿工都在竞争,以便成为第一个找到目标Nonce的人,这也体现了PoW的劣势,即浪费能源。

一旦矿工获得Nonce,他就会在网络里广播,其他节点就会发现通过输入Nonce并且应用SHA256Nonce来快速验证目标值。

作为奖励,获取该区块Nonce的矿工以两种方式接收比特币:

1)该块中包含的交易所支付的费用。

2)系统创建新的比特币。(截至2017年5月,其12.5 btc / block)

矿工找到Nonce需要多长时间?

中本聪设计比特币时,加入挖矿难度调整机制是为了使得比特币出块时间能理想的恒定在10分钟左右。比特币协议规定每隔2016个区块,将根据过去最近2016个区块出块总时间调整,自动调整下一个2016个区块的挖矿难度。理想情况下2016个块需要两周(2016*10s)时间,如果实际用时不到两周则增加难度,如果超过两周就降低难度。

增加难度意味着将在目标值的开头添加零;降低难度意味着在目标值的开头减少零。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭