深入解析比特币:从节点网络到交易脚本
1. 比特币节点网络概述
比特币网络拥有庞大的节点体系,每月有超过一百万个比特币节点连接到比特币网络,同时还有数千个全节点几乎永久连接在网络中。比特币网络中的事件按以下顺序发生:
- 所有新交易广播到所有节点。
- 每个接收到新交易的节点将其收集到一个区块中。
- 每个挖矿节点努力为其区块找到一个困难的工作量证明(PoW),以便向网络提议该区块。
- 当一个节点幸运地找到工作量证明难题的正确随机数(nonce)时,它将该区块广播到所有节点。
- 节点仅在随机数和其中的所有交易都有效且未被花费的情况下才接受提议的区块。
- 比特币网络节点通过使用已接受区块的哈希作为他们将挖掘的新区块的前一个哈希,继续创建链中的下一个区块,来表达对该区块的接受。
2. 比特币脚本基础
比特币交易的输入和输出都嵌入了脚本。比特币脚本基于栈,从左到右进行评估。需要注意的是,比特币脚本不是图灵完备的,没有循环概念,执行时间与指令数量成正比,能在有限时间内执行完毕且一定会终止。
脚本的运行位置:无论通过编程、钱包软件还是其他程序进行交易,脚本都会被注入到交易中,由矿工在挖矿时运行。脚本的目的是确保网络节点能够保证可用资金仅由真正拥有它们的授权方来认领和花费。
3. 重新审视比特币交易
比特币网络中的交易是价值的转移,会广播到整个网络并最终记录在区块链的某个区块中。通常看起来是比特币从一个账户或钱包转移到另一个,但实际上是从一个交易转移到另一个交易。
比特币地址是参与者公钥经过两次哈希后的输出,先使用SHA256哈希算法,再使
超级会员免费看
订阅专栏 解锁全文
17

被折叠的 条评论
为什么被折叠?



