比特币操作码技术新闻通讯188期
翻译:DeepL
本周的通讯总结了关于费用提升和交易费用赞助的讨论,描述了一个更新的LN 消息传播协议的提案,并宣传了一个测试OP_CHECKTEMPLATEVERIFY的测试网。此外,还包括我们的常规部分,包括来自Bitcoin Stack Exchange的精选问题和答案,以及对流行的比特币基础设施项目的显著变化的描述。
新闻
-
费用提升和交易费用赞助:与几周前开始的费用替换讨论分开(见通讯#186),本周James O’Beirne开始讨论了费用提升。特别是,O’Beirne担心正在提议的一些交易中继政策的变化会使用户和钱包开发者使用费用提升的情况变得复杂。作为一个替代方案,他寻求重新考虑交易费用赞助(之前在Newsletter #116中描述)。这些想法在邮件列表中得到了大量的讨论,许多回复提到了实施费用赞助的挑战。
-
更新 LN 消息传播协议: Rusty Russell 在Lightning-Dev 邮件列表 发布 一套更细致的关于LN消息传播的提案,类似2019年在Newsletter #55中的提案. 新提案使用了 BIP340风格的schnorr 签名 和 x-only public keys. 还包括了一些消息协议的简化,这些协议用于广播公开频道以建立路由。更新后的协议更加的简洁,特别是配合类似erlay- 基于minisketch-的有效协议。
-
激活CTV 的signet测试网: Jeremy Rubin 发布了 激活OP_CHECKTEMPLATEVERIFY的测试网signet 的参数和代码. 公众测试提案的操作码更加简单。在不同的软件之间测试兼容性更加容易。
Bitcoin Stack Exchange的精选问答
-
没有交易的后补贴区块会包括coinbase交易吗? Pieter Wuille解释说,每个区块都必须有一个coinbase交易,由于每个交易必须包括至少一个输入和一个输出,所以没有区块奖励(没有费用和补贴)的后补贴区块仍然需要至少一个零值输出。
-
如果脚本无效,创世块上怎么可能包含任意的数据? Pieter Wuille列出了创世块的coinbase “Chancellor… “文本推送有效的原因。首先,根据定义,创世区块是有效的。第二是coinbase的输入脚本从未被执行。第三是对于非Taproot输入,执行后堆栈上有一个元素的要求只是一个政策规则,而不是一个共识规则。最后,该政策规则仅适用于输入脚本与相应的输出脚本一起执行后的最终堆栈。由于coinbase交易的输入没有相应的输出脚本,所以该政策并不适用。Wuille还指出,创世区块无法消费的原因与本次讨论无关,涉及到原始比特币软件不添加创世区块的内部数据库。
-
什么是感受器连接? 什么时候使用? 用户vnprc解释了Bitcoin Core的感受器连接的目的,这是一个临时的出站连接,与默认的8个出站连接和2个区块专用的出站连接分开。feeler连接是用来测试八卦网络建议的潜在的新对等体,以及测试以前无法到达的对等体,这些对等体是驱逐的候选人。
-
OP_RETURN交易是否不存储在链态数据库中? Antoine Poinsot指出,由于OP_RETURN输出是不可花费的,它们不存储在[链态目录]中(https://github.com/bitcoin/bitcoin/blob/master/doc/files.md#data-directory-layout)。
值得注意的代码和文档变化
-
Bitcoin Core #24307 扩展了getwalletinfo RPC的结果对象,增加了external_signer字段。这个新字段表明钱包是否被配置为使用外部签名器,如硬件签名设备。
-
C-Lightning #5010 增加了一个语言绑定生成工具MsgGen和一个Rust RPC客户端cln-rpc。MsgGen解析了C-Lightning的JSON-RPC模式,并生成了cln-rpc使用的Rust绑定,以正确调用C-Lightning的JSON-RPC接口。
-
LDK #1199增加了对 “幻象节点付款 “的支持,付款可以被几个节点中的任何一个接受,这可以用于负载平衡。这需要用BOLT11的路由提示创建LN发票,该提示建议多条路径都指向同一个不存在的(“幻象”)节点。对于每条路径,在到达幽灵节点之前的最后一跳是一个真实的节点,它知道幽灵节点用于解密和重建无状态发票的密钥(见通讯#181),允许它接受付款的HTLC。