1.比特币加密货币——不加密,公开
比特币中的hash函数:SHA(Secure Hash Algorith)—256
2.区块链——一个个区块组成的链表
3.cryptographic hash function(哈希函数)
collision(哈希碰撞)【不可避免】 resisitance:用来检测对信息的篡改
注意:该性质无法被证明,无法被人为制造
例:md5,现已不安全
hiding(hash函数的运算是单向的):和(1)结合实现digital commitment(数字签名) 或digital equivalent of a sealed ecvelope(数字等效的密封信封)
解释:X—>H(X) H,H(X)不能得到X
注意:输入的空间要足够大且均匀(可以在输入空间后加一个随机数来实现,如H(X||nonce))
puzzle friendly (hash值的运算是不可预测的):proof of work(工作量证明)
注意:difficult to solve,butt easy to verify(难以解决但易于计算)
4.签名
1开户:创建一个(public key,private key)公私钥对
作用:用作数字签名
(2)生成公私钥:需要a good source of randomess(好的随机源)
注意:比特币中一般都是对message取hash,在对hash进行签名