USHI:区块链深度学习系列|椭圆曲线数字签名(ECDSA)的应用

Comunion是一个基于区块链的组织形式(DAO)与创业互助网络,为超级个体提供面向数字时代的全新商业基础设施和价值转化机制,致力于让劳动价值像资本一样自由流通、交易和积累。

本系列内容包含:基本概念及原理、密码学、共识算法、钱包及节点原理、挖矿原理及实现。

区块链中哪些地方使用了ECDSA?

通过前面系列的区块链原理和技术,大家应该都熟悉交易是如何在区块链系统或者在比特币、以太坊系统里面开展的。

在进行交易的环节当中,有一个很重要的消息,那就是需要进行签名。

也就是说一笔交易至少涉及到三项内容:付款人、收款人、付款金额。

例如,张三给李四付款的时候,张三付款人,李四是收款人,付款金额假设是5个Token。

美媒:中国用区块链提升跨境贸易效率:金色财经报道,据美国品玩网2022年12月19日报道,中国正利用区块链提升跨境贸易效率。

报道称,中国正在积极接受支持加密货币的区块链系统,以改善管理并提高全球商业的效率。2022年12月3日,中国首次将区块链技术应用于国际多式联运的全过程,将货物从四川成都运送至老挝首都万象。国际多式联运是指利用两种或多种运输方式运输一批货物。

据报道,国际贸易在很大程度上使用纸质文件办理航运、海关、保险和全球贸易的其他方面手续。然而,由于它们必须经过许多不同的机构,比如客户、列车、银行和海关,它们很可能会被错放或丢失。更糟糕的是,使用纸质表格会减缓信息流动。

报道指出,正因如此,成都希望利用区块链技术,为信息流构建一个有保障、值得信赖的通道。

报道称,区块链使参与国际贸易的各方能对一个共享账本进行数据的记录与读取,实现了全部数据的可视性和单一的事实来源。企业还可以随时掌握货物的状态和位置,因为交易始终带有时间标记和最新信息。(参考消息)[2023/1/2 22:20:42]

当张三准备好这笔交易之后,需要发给全网,当其他人看到这笔交易的时候,他们需要去认证这笔交易是否由张三发起的,这个环节中就使用到了数字签名技术。

声音 | 广电运通:“基于区块链的门禁访问控制方法与装置”专利的相关解释:2月28日,广电运通(SZ002152)在投资者问答平台上,针对贵公司公布了一项新专利--“基于区块链的门禁访问控制方法与装置”的相关问题时表示,

1.目前市场上有多篇区块链与门禁系统的相关专利,多是将门禁系统的操作数据记录区块链确保信息的准确性和完整性。我司专利在利用区块链实现数据可信的基础上,创新的提出门限加密与智能合约结合的方式,提高用户生物特征数据的安全性。同时,基于智能合约的门禁授权访问方法,可实现门禁访问权限的安全管控。

2.本项专利采用了对用户生物特征数据进行非对称加密,而非对称加密密钥采用门限加密进行拆分加密上链的方式进行管理,在利用区块链实现多方协作透明化的同时,极大提高了用户生物特征数据的安全性,具有一定的技术门槛。

3.该专利主要应用场景为公租房、人才房等政策性住房管理,以及酒店、公寓、民宿等智能化管理,目前仍处于内部测试阶段,市场收入较大程度取决与客户接受程度,具有一定的不确定性[2020/2/28]

交易签名如何运用ECDSA?

动态 | 人民日报:区块链技术应用对监管能力与水平提出了更高要求:今日,人民日报发文《鼓励区块链发展不等于一哄而上,搞恶性竞争》,文中指出:从治理的视角出发,区块链技术应用对监管能力与水平提出了更高要求。今天,金融与科技的结合正日益紧密,已经给治理带来了诸多挑战,P2P网贷的兴衰就是一个典型例子。这意味着,当我们拥抱区块链技术的同时,还应加强对区块链技术的引导和规范,注重对区块链安全风险的研究和分析,密切跟踪发展动态,积极探索监管方法、治理规律。要探索建立适应区块链技术机制的安全保障体系,引导和推动区块链开发者、平台运营者加强行业自律、落实安全责任。要把依法治网落实到区块链管理中,推动区块链安全有序发展。[2019/12/3]

以特币为例,具体流程如下图所示。

动态 | 区块链浏览器Brave正测试推特小费激励功能:区块链浏览器Brave在推特上发文称,正在测试一项基于Brave Rewards的推特小费激励功能。通过brave.com创作者验证的用户会即时收到小费。[2019/5/25]

交易的模块分为:交易输入和交易输出,一笔交易由多个输入或者多个输出组成。

交易输入代表付款信息,交易输出代表收款信息。当然里面还会有付款金额,付款金额的字段是在交易输出里面显示的。

这种交易类型和我们正常理解的交易是非常类似的,其资金的流向是从交易输入流向交易输出,即从付款人流向收款人。

图的右边有一个虚线的框,里面的ScriptSig是一个脚本签名,这个字段属于交易输入。同理,ScriptPubKey属于交易输出。脚本里面包含一些数据和操作码来支持这个脚本语言的运行。

ScriptSig?和ScriptPubKey?可以直观的用中文解释为:解锁脚本和锁定脚本。

为什么ScriptSig又叫解锁脚本呢?是因为ScriptSig在之前相关连接的交易输出里面锁定了一些资金。

如果张三要花费之前已有的Token,也就是要花费一个未花费的交易输出,那么其需要在另一笔交易里面构造一笔交易输入,在这个交易输入里面会设置签名字段和公钥,以此证明张三有资格花费未花费的交易输出。

这种情况叫做解锁脚本,即把之前已有的资金打开进行使用。

这个过程中,解锁脚本里面有两个字段数据,<sig>和<PubK>。这两个字段分别代表:签名和公钥。两者由使用者提供,用以解决阻碍。

锁定脚本里面也有一些字段和操作码:DUP是复制操作码;HASH160是哈希操作码;<PubkHash>是字段;EQUALVRTIFY是验证操作码;CHECKSIG也是验证操作码。

其整体意思是:执行复制——进行哈希——执行字段——验证是否相等——校验签名是否正确。

在验证签名的环节,就会调用ECDSA里面的验签算法。

如何使用ECDSA

?我们知道了签名在交易里面的具体使用位置,那么ScriptSig和ScriptPubKey这两个脚本语言,是如何执行,以及在执行的过程当中如何使用ECDSA呢?

如上图所示,这里会将两个脚本语言进行堆栈处理,即所有字段和操作码全部罗列在右边,解锁脚本里面有2个,锁定脚本里面有5个。

第一步,将第一个字段<sig>?解锁,置于堆栈的底部;

第二步,向右移动一格,将<PubK>?解锁推送至堆栈顶部,置于<sig>?的上面;

第三步,DUP是复制操作码,它会将刚刚解锁脚本里面的<PubK>进行复制,此时会有两个<PubK>,结果被推送至堆栈顶部;

第四步,HASH160将复制的公钥进行哈希,使之变成<PubKHash>,公钥哈希;

第五步,EQUALVRTIFY操作码将PubKHash和用户的PubKHash对比,如果一致,则都被移除,然后继续执行;

如果第五步匹配的话,继续执行第六步——验证签名,这里就用到了ECDSA,也是交易中很关键的一步。

在图中会看到,在执行最后一个操作码的时候,堆栈里面有两个字段。

此时CHECKSIG操作码会核查签名<sig>?是否与公钥的<sig>匹配,如果匹配,则会在顶部显示TRUE,如果不匹配会显示FLOSE。

如果返回值是TRUE的话,此时发送者也表明了其对发送Token的所有权和使用权。

以上就是椭圆曲线数字签名在区块链中的主要应用位置和场景。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

[0:15ms0-3:209ms