区块链学习笔记(一)
区块链技术的简要介绍
区块链可作为数据库,但效率低。
Bitcoin:基于区块链技术的一种加密货币
2015年出现以太坊,一种主流加密货币
以太坊的主要参考书籍:白皮书,黄皮书
开发语言solidity
密码学原理
bitcoin主要用到密码学中的两个功能:哈希和签名
哈希
密码学中用到的哈希函数称为cryptographic hash function,有两个重要性质:
1.collision(哈希碰撞) resistance
哈希碰撞: x!=y,H(x)=H(y) 两个不同的输入算出的值相等
哈希表存在哈希碰撞,哈希碰撞不可避免,因为输入空间远远大于输出空间。
Collision resistance并不是说不会出现哈希碰撞。意思并不是Collision free 而是说没有高效的方法人为制造碰撞。
Collision resistance的作用:找不到M,使得H(M)=H(m),即不能篡改内容且不被检测到。
对一个message求digest,Message=m , H(m)求哈希值,这个哈希值可以认为是digest可以用来检测消息是否被篡改。
所有哈希函数Collision resistance数学上不能证明,只能实践证明。
PS.MD5可以人为制造哈希碰撞
2.hiding:哈希函数的计算过程是单向的,不可逆的。