BIP 113
一句话定义: 规定锁时间计算使用中位时间过去(MTP)而非区块头时间戳,限制矿工操纵时间。
BIP-113 把比特币脚本锁时间评估中「当前时间」的含义,从「花费区块自身的时间戳」改为「之前 11 个区块时间戳的中位数」(MTP)。2016 年 7 月作为软分叉激活,与 BIP 68 和 BIP 112(CSV) 同批。
它解决的问题:矿工对区块时间戳有一定的裁量权。协议允许区块时间戳与真实时间略有偏差(松散地受限于前一块的 MTP 和一个未来时限)。矿工可以把时间戳人为提前最多约 2 小时,让带时间锁的交易早于用户预期生效。
BIP 113 的修正:用 MTP——前 11 个区块时间戳的中位数——作为基于时间的锁时间评估的参照。MTP 抗操纵性强得多:单个矿工动不了它,即使一群矿工合谋也只能有限地挪动它。
结果:基于时间的锁时间(经由 nLockTime 或 CLTV 设定)从此行为可预测。一笔写着「2027 年 1 月 1 日 00:00 UTC 后有效」的交易,不会因为某个矿工设了个聪明的时间戳就提前确认。
BIP 113 小、技术、且安静地重要。每一次基于时间的闪电通道关闭、每一笔 HTLC 超时、每一座金库的延时,都依赖 MTP 是一个稳定的参照。没有 BIP 113,这些全都要受矿工时间戳的小动作摆布。
底层概念见MTP(中位时间过去)。
相关词条: BIP(比特币改进提案) · BIP 65(OP_CHECKLOCKTIMEVERIFY) · BIP 68(相对时间锁) · CLTV(CheckLockTimeVerify) · CSV(CheckSequenceVerify) · 锁时间(Locktime) · MTP(中位时间过去) · 时间锁合约(Time-Locked Contract)