BTC笔记-01-密码学原理
BTC-密码学原理
比特币中使用了密码学的两个功能:哈希和签名
哈希
crypto-currency加密货币cryptographic hash function密码散列函数,其具有两个特性:- 具有
collision resistance的特性,但没有任何一个哈希函数的collision resistance特性可以在数学上被证明 - 还具有
hiding的特性,即哈希函数的计算是单向的、不可逆的。其要求输入空间足够大、且输出分布均匀
- 具有
- 利用以上两个特性可以实现
digital commitment或digital equivalent of a sealed envelope - 比特币用到的哈希函数还需要有
puzzle friendly的特性,这要求对一个输入的哈希值,事先是不可预测的(挖矿没有捷径,只能枚举计算),以此保证这个过程可以作为proof of work工作量证明。有difficult to solve, but easy to verify - 比特币使用的哈希函数为
SHA-256 (Secure Hase Algorithm)
签名
比特币创建账户由用户自行完成(去中心),即创建一个公钥 public key 和私钥 private key 对,其来源于非对称加密算法 asymmetric encryption algorithms。
加密使用公钥,解密使用私钥;签名使用私钥,验证签名使用公钥

浙公网安备 33010602011771号