DePIN 用代币激励组织现实世界的硬件资源:设备方贡献覆盖与算力,用户方付费购买服务,协议层用可验证的贡献证明分配奖励。本文拆解三方角色、贡献证明的承重作用、需求闭环的判断口径与普通人的四类风险。
DePIN 用代币激励组织现实世界的硬件资源:设备方贡献覆盖与算力,用户方付费购买服务,协议层用可验证的贡献证明分配奖励。本文拆解三方角色、贡献证明的承重作用、需求闭环的判断口径与普通人的四类风险。
Gas Limit 决定交易最多愿意消耗多少 gas,Gas Price 或 EIP-1559 费用参数影响愿意支付的单价。本文用以太坊官方文档解释手续费口径。
重组时比特币核心 v31.0 不会把被拆区块的交易立刻塞回内存池,而是先放进一个上限两千万字节的暂存容器,等整段重组处理完再统一回灌。本文拆解这个容器的排序规则、超限时的递归删除、回灌时绕过限额与忽略失败的原因,以及它如何解释钱包里交易从一确认退回零确认。
比特币核心 v31.0 下载区块时受三个常量约束:向前一千零二十四个高度的下载窗口、按出块间隔倍数计算并随并发对端放宽的超时线,以及默认只有两秒却会自适应翻倍的卡死阈值。本文按源码解释这三道闸门各自的算法与适用场景,并回答节点为什么看起来频繁断开对端。
链顶切换后节点会主动向邻居通报新块,但比特币核心 v31.0 给这件事设了上限:一次最多八个区块哈希,超了就依靠对端自己的同步机制。本文沿源码讲清通告数量是怎么截断的、为什么初始同步阶段完全不中继、队列里为什么要反向插入,以及 headers 消息与 inv 公告两种通告形式的分工。
比特币核心 v31 把内存池的条数与体积限额从祖先后代链换成交易簇,随之而来的是新代号 too-large-cluster。它在源码里出现在四处,返回类别分为交易级策略与整包策略两种,处置动作完全不同。本文对齐新旧参数、默认值与硬上限,并解释为什么这项检查必须放在替换登记之后。
比特币核心 v31.0 在标准性检查里逐项核对见证区的形状:币基交易跳过、空见证放过、非见证脚本不许带见证、P2WSH 有脚本长度与栈项数量上限、Taproot 的附项一律视为非标准。撞上任一条就返回 bad-witness-nonstandard。本文按源码分支列出判据,并给出排查这类失败时最省时间的顺序。
带相对时间锁的交易进不了内存池,节点给的代号是 non-BIP68-final。比特币核心 v31.0 的判定函数直接用链顶高度加一作为参照,因为内存池里放的应该是下一个块就能采纳的交易。本文对照区块层的 bad-txns-nonfinal,讲清绝对锁与相对锁两套代号的分工,以及写相对锁时最容易贴错边界的地方。
父交易还没到,和引用的输出已经被别人花掉,在比特币核心 v31.0 里共用同一个拒绝代号 bad-txns-inputs-missingorspent。本文从源码出发说明节点为什么不做区分、TX_MISSING_INPUTS 如何让交易获得留在孤儿交易库的资格,以及钱包和自建服务应按什么顺序排查这一类广播失败。