织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 竞争币 > 以太坊

自定义密码学原语为何对区块链开发至关重要?

时间:2020-06-10 14:40来源:未知 作者:admin 点击:
目前大多数公链都将很多密码学原语的使用场景写入了共识层,固化的密码学使用方式对于开发者而言是一个很大的限制。 原文标题:《为什么自定义密码学原语对在区块链上的开发至
目前大多数公链都将很多密码学原语的使用场景写入了共识层,固化的密码学使用方式对于开发者而言是一个很大的限制。

原文标题:《为什么自定义密码学原语对在区块链上的开发至关重要?》
撰文:Williams

区块链是一个基于密码学、经济学和网络科学的新技术。对于一般的大众来说,其中的密码学并不是一门容易亲近的学科,甚至是上面提到的三个学科中,大家觉得最有距离感的学科。但身处区块链圈的朋友们一定会常常听到「区块链是一部 Trust Machine」这样的说法,或者有人会说在区块链的世界里是「In Math we Trust」,可见密码学对于区块链技术来说是根基一样的重要存在。

好了,那么问题来了:

  • 区块链究竟在哪些地方用到密码学呢?
  • 密码学为什么对区块链技术至关重要?

区块链的哪些地方用到了密码学?

首先,如果你是一个区块链用户,可能在你房间里的某个角落,会有一张纸条,上面抄着十二个不知道怎么来的单词,有的人还有很多张,甚至有些大 holder 会把这十二个英文单词刻在钢板上,然后锁进保险箱里。

是的,为什么这十二个助记词,或者像一长串乱码般的私钥能够代表你对资产的所有权呢?

这背后的原理其实就是密码学。

区块链上的密钥、地址和钱包都是通过密码学去实现,利用非对称加密技术——椭圆曲线算法(ECC)可以验证某人持有的私钥是否是吻合某个公钥,通过这个方式我们可以证明这个人是否是这笔加密资产的持有人,因为除了拥有私钥的人之外,其他没有该私钥的人是没有办法解锁这笔资产的。

我们在此用比特币举例私钥、公钥和地址生成的原理,一个比特币钱包中包含一系列的密钥对,每个密钥对包括一个私钥和一个公钥。私钥通常是一个随机选出的 256 位的数字。基于私钥,我们就可以使用 secp256k1 标准的椭圆曲线这个单向密码函数产生一个公钥。基于公钥,我们又可以使用一个单向哈希函数 SHA256 和 RIPEMD160 生成比特币地址,再通过 Base58 check 编码将比特币地址变成现在这较为简洁的形式。而像我们比较常用的助记词,则是通过基于 BIP 39 标准而生成的随机英文单词。如果没有私钥或助记词的人,是无法使用这笔加密资产的。

自定义密码学原语为何对区块链开发至关重要?比特币的公钥和地址的生成过程,图取自精通比特币

当我们有了可以配对的密钥对后,可以在各种类型的钱包或者客户端上做验证,确认资产的所有权,并且通过这个客户端来进行各种资产的使用。例如最简单 BTC 转账,或者再进阶一点的用某个钱包去签署智能合约的交易:比如用 Metamask、imToken 或者 Alphawallet 等钱包里的 ETH 去购买加密猫,或者在 DeFi 的平台上面进行借贷,以及用 Uniswap 交换某些 ERC20 Token 等。 (责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容