-
加密货币BTC中用到的两个密码学概念:
- 哈希
-
密码学中的哈希函数的两个性质:
collision resistance:即没有什么高效的方法人为的制造哈希碰撞,即很难找出另一个不同的m',使h(m)和h(m)相等- 应用:message digest,即检测篡改
hiding:即无法从结果h(m)反推m- 两个前提:
- 输入空间足够大
- 输入的各种可能分布比较均匀
- 应用:与性质一结合,可用于实现
digital commitment(即digital equivalent of sealed envelope) - 故事:预测下一天的股市问题
- 两个前提:
-
比特币使用的哈希函数在密码学哈希函数的两个性质之外,还需要一个
puzzle friendly的性质,即求解时没有捷径,只能通过暴力的方式去寻找- 应用:挖矿、工作量证明
PoW
- 应用:挖矿、工作量证明
-
- 签名
- 需要首先了解非对称加密(公私钥对)
- 好的随机源的概念(
good source of randomnexx) - 应用:比特币的账号就是一个公私钥对,在将交易记录发布到区块链时,需要讲自己的私钥做一个签名,以至于其他人可以根据该人的公钥验证消息的真实性(公钥相当于银行账号,私钥相当于银行密码)
- 哈希
-
BTC中对这两个概念的应用:先对一个message取一个哈希,再对该哈希值签名