Please enable JavaScript.
Coggle requires JavaScript to display documents.
区块链 (比特币底层细节 (比特币脚本 (基于堆栈实现的forth, 发送方加上接收方的脚本就变成一个可执行脚本,…
区块链
比特币底层细节
比特币交易
输入
输出
元数据(交易基础信息)
比特币脚本
基于堆栈实现的forth
发送方加上接收方的脚本就变成一个可执行脚本
脚本执行成功即为合法交易,否则非法
支持 Pay-to-Script-Hash
比特币区块
区块间用区块链相连,区块内交易用 Merkle Tree 相连
由区块头和交易信息组成
特殊的交易:coinbase交易
比特币网络
交易被广播条件:交易是合法的、脚本在白名单中、从来没见过、不与我广播的其他交易冲突
全节点不多,钱包只存储区块哈希
p2p网络,运行在8333端口(TCP)
如何实现去中心化
比特币挖矿
激励机制
区块激励
交易费奖励
工作证明
难度适中
难度可被参数化,可调整
解决哈希谜题
结果可被验证
软件更新
p2p网络
分布式一致性协议
所有正确的节点最终应该就某个值达成一致
节点们达成共识的值应该是至少其中一个正确节点的输入值。
对一个时间区间发生的交易达成共识
区块链
选择最长的那条区块链进行拓展
基础技术
数字签名
ECDSA
API 操作
校验签名
签名操作
生成key
有良好随机性的算法
公钥即身份
散列函数
SHA256
性质
collision-free
hiding
puzzle-friendly
应用
哈希指针
区块链
Merkle树