比特币原理
- 账本如何验证?
- 所有权问题?
- 为什么记账?(挖矿)
- 以谁的账本为准?(共识机制)
账本如何验证
对比摘要比直接对比账本来的高效的多
- 方案1
核对账本记录,少数服从多数(效率太低,不行)
- Hash
哈希函数:Hash(原始信息) = 摘要信息
特点:
同样的原始信息用同一个哈希函数总能得到相同的摘要信息
原始信息任何微小的变化都会哈希出面目全非的摘要信息
从摘要信息无法逆向推出原始信息
对比摘要比直接对比账本来的高效的多
- 区块
账本一般包括序号、时间戳和Hash值,称之为区块的头,交易记录这是区块的主体部分。
前一个账本信息和当前的账本一块儿做Hash
按照上述步骤操作下去,就会产生n个区块,相互之间是链接的,这种结构就叫区块链,由于验证时只需要验证最后一位,因此是高效的。
账户所有权问题
谁有比特币,怎么去支付?
- 银行系统
如果出现盗刷等行为,如何检测到,这就有一个开户行为。
- 比特币系统
点对点交易
没有第三方
-
帐号->地址
-
密钥->私钥
-
非对称加密技术(交易签名)
解决在不泄漏私钥的情况下证明自己拥有某个地址的私钥
交易进行hash得到摘要
用私钥对摘要进行签名
-
签名过程
-
广播交易
付款时会进行广播验证,一个结点验证完继续广播,其它结点继续验证。
-
验证
-
签名及验证
签名和验证,相互为可逆运算
签名:可以理解为付款地址为公钥,签名过程为对摘要进行加密的过程
验证:用付款方地址和签名信息解密的过程
- 补充
关于隐私 (没有人知道钱是谁的)
安全(如果你的钱来路不明,你的账户就有可能被冻结)