说透区块链
自游
区块链服务平台资深架构师
7193 人已学习
新⼈⾸单¥59
登录后,你可以任选2讲全文学习
课程目录
已完结/共 19 讲
说透区块链
15
15
1.0x
00:00/00:00
登录|注册

05 | 密码学:为什么说区块链站在了巨人肩膀上?

你好,我是自游。
在数字社会的今天,我们的工作生活离不开密码学,可以说离开密码学,我们就像是在网络世界中裸奔,毫无隐私可言。然而普通大众可能对密码学知之甚少,它就像是一位低调的守护者,默默维护着网络世界的安全。
区块链中也大量使用了密码学算法,前面课程里我们就多次提到过。比如哈希算法以及区块链存储中讲过的交易签名,它们都属于密码学算法。那今天这一讲,我就为你详细讲讲区块链中常用到的密码学算法。

密码学与区块链

在深入密码学算法的学习之前,我想先为你理清密码学与区块链的关系。中本聪在比特币白皮书中开篇就说,比特币是基于密码学构建的去信任数字货币。我认为他把密码学与区块链的关系说得很清楚,密码学是因,区块链是果
怎么理解他们之间的这种因果关系呢?可能有的同学会认为是区块链需要有可追溯,不可篡改等特性,所以中本聪才设计了几种密码学算法去支撑他的构想。但这是完全错误的,属于颠倒黑白的想法。
密码学是先于区块链产生的基础学科,有完备的理论及技术体系。是中本聪及其先行者们在理解及运用密码学的过程中,看到了基于密码学创造数字货币的可能性。正因为哈希算法有校验数据完备性的能力,中本聪才会想到利用区块哈希前后关联形成区块链;也是因为数字签名有证明所有权的能力,所以才会基于数字签名去证明数字货币所有权问题。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

密码学在区块链中扮演着关键角色,为保障数据安全提供了重要保障。文章深入浅出地介绍了密码学在区块链中的重要作用,以及哈希算法和非对称加密算法的特性和应用。哈希算法被用来抽象交易哈希跟区块哈希,保证数据完整性,同时构建由区块哈希关联的哈希链条,增加作恶篡改的成本。非对称加密算法通过数字签名实现身份确权,保障交易的完整性和安全性。读者可以更好地理解区块链中非对称加密算法的重要性和作用。此外,文章还提到了区块链中的衍生应用,如追求隐私交易的ZCash引入了密码学中的零知识证明。通过深入理解密码学原理,读者可以加深对密码学和区块链领域的理解。文章以清晰的概览和实用的知识帮助读者掌握了密码学在区块链中的关键作用。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《说透区块链》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(14)

  • 最新
  • 精选
  • 姚莉莉
    对于讨论2,主要就是理解私钥代表了所有权,证明身份的基石。公钥是给公开给别人(张三、李四,王五都知道)的,拿公钥对数据哈希值做加密运算,不能提现是张三、李四,还是王五操作的。就没有“签名”的意义了。

    作者回复: 理解的非常对

    2021-08-01
    4
  • 李伟浩
    对hash值做签名应该还有效率方面的考量,毕竟非对称会使数据量明细变大,且非对称都是基于数学难题的如np问题等,所以效率也是很重要的考量。

    作者回复: 是这样的

    2021-09-02
    2
  • 姚莉莉
    讨论一,没有理解题目题目的意思。就像我有一张身份证,我从来没有参与转账、交易,银行系统自然也不知道我的存在,不知道我的身份。颁发身份证的是公安局,记录交易的是银行,本来就是两个系统。我没有做第一步交替之前,银行不知道我的信息,(都没有开户)不是很正常吗?

    作者回复: 你好,你这个破防的角度很好,赞。但是还是有一点不一样,就是区块链网络不需要开户这个动作

    2021-08-01
    2
  • 黑暗骑士
    老师好,请问我想用以太坊的公钥加密一段消息的话,是使用什么加密算法呢?

    作者回复: 可以看看这篇文章:https://mirror.xyz/0x9B5b7b8290c23dD619ceaC1ebcCBad3661786f3a/jU9qUqkhF5PAG_TXIB0Mb481-cGaaaaTAvAF8FaHt40

    2022-10-17归属地:四川
  • 幽灵
    在中国 私钥泄露应该是件很容易发生的事情 毕竟用户基本没有什么隐私可言 银行账户都能经常被盗刷

    作者回复: 从技术角度看,私钥的泄漏的可能性还是比较低的。

    2022-08-27归属地:北京
  • Geek6772
    签名这个没太理解,左边是一个交易的基本信息,那交易的基本信息能伪造吗,加入我是李四,我发起了一个from 张三 to 李四的交易上去,会发生什么,我的私钥加密交易和公钥解密后与再次加密应该也是匹配的吧

    作者回复: 张三发起的交易为啥用李四的私钥呢?不应该用发起者的私钥吗?

    2022-07-31归属地:北京
  • Geek_ee490c
    感觉验证过程可以想象成一个很有意思的场景 - 跟小卖部老板换零钱,可以把摘要想象成将若干清点好的零钱放进一个红包,然后在红包上面写好自己清点的总数,当小卖部老板收到红包后,又会对里面的零钱进行清点,然后看看是不是可以跟你的写的总数对上。

    作者回复: 嗯嗯,可以这么理解

    2022-05-28
  • Toringo
    讨论一:区块中存储的是交易信息,如果说创建一个账号要让整个区块链知道,那账号就需要广播,也需要存储在区块中,这样会产生太多的无意义数据,不环保。 讨论二:如果说数字签名是公钥对信息摘要加密而产生的,那非对称加密在这里没有意义,需要其他方式来证明所有权。那公钥之所以叫公钥,公开的,任何人可以用任何人的公钥加密交易,岂不乱套了。

    作者回复: 理解的不错

    2022-02-27
  • 高远
    “当然,表示的数据量大,并不代表着就不会有两个不同的数据得到相同的哈希值,这确实在实践中已经出现过。所以,在设计哈希算法时,应该避免不同的明文信息产生相同的哈希值。” 这一点不太理解。既然理论上哈系碰撞是不能避免的(无限集向有限集的映射),那怎么可能在设计哈系算法的时候避免呢?不应该是在应用哈系算法的时候设计好对碰撞的处理吗?

    作者回复: 具体如何去设计哈希算法,我也无能无力,这是科学家专研的领域。这里想要表达的是一个好的哈希算法对无限集的映射是松散的,均匀分布的有限集。而且即便有限,相对真实数据来说,也相对无限。碰撞不可避免,那在应用中,就需要根据自身业务对碰撞的容忍度来决定使用哪种算法。这也是一个相对的抉择

    2022-02-19
  • A-5d?42:5x50kUNoss
    请教老师一个问题,通过ECDSA的签名,能否推导出公钥

    作者回复: 公钥是公开的,是可以从签名恢复的

    2021-12-01
收起评论
显示
设置
留言
14
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部