想要转到web3,这次学习区块链看的课是北大肖臻老师的公开课。
比特币又称是加密货币crypto-currency,但其实是不加密的,全是公开的。比特币中用到的密码学中HASH和签名。
1. HASH
密码学中的哈希:cryptographic hash function
三个重要的性质
collision resistance (collision free)
该性质的作用:用来对一个message求digest(取数据摘要)【密码学相关内容,需要进行补充】 ,得到的哈希值即digest,用来检测这个message是否发生篡改,因为找不到一个H(m')=H(m),即没有办法篡改内容而又不被检测出来。(比如我的名字是柯意,全国有11个叫柯意的人,也就是hash碰撞是客观存在的。输入我的身份证号111222199608260000可以得到我的名字,但凡改掉身份证号中的其中一个数字,都得不到相同的名字,但是如果想改掉身份号又要得到同一个名字:柯意,就要在14亿人口的身份证号里进行尝试,概率是14亿分之11,微乎其微!)
在密码学中,“抗碰撞性”(collision resistance)是指一种理想的属性,用于描述加密哈希函数的安全性。一个具有抗碰撞性的哈希函数能够极大地降低找到两个不同输入,但却产生相同哈希输出的可能性。这是因为在理想情况下,任意两个不同的输入应该产生不同的哈希值。抗碰撞性是加密哈希函数重要的安全特性之一,对于防止数据篡改和确保信息完整性至关重要
并不是不发生哈希碰撞,但是找不到一个H(m')=H(m)
一般来说哈希碰撞是不可避免的,因为输入空间是远远大于输出空间的
比如说,有一个256位的哈希池,那么输出空间就是2的256次方(所有哈希值),但是输入空间是无限大的,有任意多种输入的可能性。按照鸽巢原理(又称为抽屉原理,它是组合数学中一个重要的原理),必然会出现两个输入被映射到同一个输出

本文介绍了如何通过北京大学肖臻老师的公开课学习区块链,重点讲解了比特币中涉及的密码学概念,如哈希函数(包括抗碰撞性)、签名以及公钥私钥系统。文章还讨论了如何利用哈希和签名结合实现数字承诺,以及比特币挖矿中的工作量证明机制。
最低0.47元/天 解锁文章
504

被折叠的 条评论
为什么被折叠?



