密码学原理
加密货币中主要使用了密码学原理的两个内容–哈希和签名。
哈希原理(Cryptographic hash function)
三个性质:
1.collision resistance
哈希碰撞:即两个不同的输入,输出的结果是相等的。不可避免。因为输入空间是大于输出空间的。256位哈希值。输出空间只有2的256次方。但是输入空间可以是无穷大的。
collision resistance即为几乎不可能人为的制造哈希碰撞。简单理解就是不可能人为的去找到有着相同输出的两个不同的输入。也有可能找到,比如说遍历所有输入(实际来说无法遍历所有输入)
作用:无法篡改我们自己定义的密码。
2.hiding
即哈希函数的计算过程是单向的,不可逆的。就是由输出是得不到输入的。
成立前提:输入空间是无限大的,且分布比较均匀。
作用:digital commitment(digital of a sealed envelope)。
3.puzzle friendly
哈希值的计算,事先是不可预测的。即为知道输入是无法猜出输出是多少的。
在挖矿里面体现的作用是:挖矿过程没有捷径,必须通过大量工作,试很多nonce才能得出需要的解。所以才能作为工作量证明。
比特币中的哈希函数:SHA-256(Secure Hash
Algorithm)。满足以上性质。
签名
在现在生活中,我们为了存取钱,在银行开户。那么在去中