相对时间锁关注某个输入所花费的输出的链上年龄,与填写一个固定日历日期不同。比特币交易可以在满足相应版本和标志条件时,用序列号表达这种等待要求;不能把所有序列号都直接换算成剩余秒数。
等待基准是被花费的输出
按区块数锁定时,以包含被花费输出的区块高度为基准,等待指定数量的区块。按时间锁定时,起点是该区块之前一区块的过去时间中位数,即MTP;判断能否入块时,使用候选区块前一区块的MTP比较,不是从创建或广播新交易的时刻开始读秒。
相对锁定语义适用于版本至少为2且相应输入未设置序列号禁用标志的交易。序列号中的类型标志决定采用区块数还是时间;时间值按512秒为单位编码,提取时还需区分标志位与数值位,不能把整个序列号直接当成秒数。
区块条件不是现实时间承诺
同样的等待条件用于不同确认位置的输出,可花费门槛也会不同。按区块数等待时,目标高度与现实钟表时间不是同一概念;按时间等待时,MTP也不是本机时间。因此,不能仅凭文件生成时间或系统时钟承诺某天某分一定可花费。
查看钱包中的锁定余额,应一起核对输入来源、确认位置、交易版本和序列号语义。只看余额总数可能漏掉限制。满足相对时间条件也不等于交易已经确认,其他输入条件、签名与后续入块仍需分别核查。
原创文章,作者:eastbtc,如若转载,请注明出处:https://www.eastbtc.com/coins/btc/30825.html