Page 173 - 《软件学报》2026年第6期
P. 173

2492                                                       软件学报  2026  年第  37  卷第  6  期


                 息发送准备). 此时, 区块头作为记录平行链状态变迁和交易详情的关键部分, 承载跨链消息等待时间等信息. 在平
                 行链  D  进行轮询操作时, 中继链参与维护各平行链区块头的记录. 基于这些记录, 中继链能够识别出当前等待时
                 间最长的平行链      (假设为平行链     S). 随后, 中继链会优先引导平行链         D  对平行链  S  做出响应, 启动跨链消息      Mi 的
                 传递流程   (该步骤对应第     5.4  节  (3) 消息转移发送).
                    由于无法保证接收平行链          D  是诚实的, 在假设其为半诚实的前提下, 本文提出一种轮询检测机制, 该机制利
                 用智能合约检测平行链        D  是否公平地接收消息. 智能合约通过自动化执行代码来确保系统规则得到遵守, 智能合
                 约算法伪代码如算法        1  所示. 在该轮询检测算法中, 假设消息进入队列等待的时间                tw、消息从发送平行链的出口
                 队列发送的时间      ts 是公开可见的, 智能合约的核心目的是验证平行链               D  是否公平地处理消息. 智能合约依赖于公
                 开可见的消息进入队列时间和从出口队列发送的时间, 来计算消息的等待时间差                          tw1  和  tw2. 该合约会实时监控并
                 对比这两个等待时间, 若发现平行链           D  未按照轮询规则处理消息, 合约会自动触发相应的惩罚机制, 如没收                     DOT
                 代币  (该步骤对应第     5.4  节  (3) 消息转移发送).

                 算法  1. 轮询检测算法.

                 输入: {Addi, Ti, N, Xi, Data, PMi}, tw1, ts1, tw2, ts2; /*tw  为消息进入队列的时间、ts 为消息从平行链  S  的出口队列
                 发送的时间*/
                 输出: True/False.

                 1. begin
                 /*读取  tw1, ts1, tw2, ts2*/
                 2. Tw1←Subtract(ts1, tw1)
                 3. Tw2←Subtract(ts2, tw2)
                 /*Tw1  和  Tw2  分别为消息  1  和消息  2  在出口队列的等待时长*/
                 4. if Tw1≥Tw2 then
                 5.     return True
                 /*平行链  D  将消息  2  放入入口队列*/
                 6. else if Tw1<Tw2 then
                 7.     return False
                 /*平行链  S  未遵循轮询机制, 没收其部分       DOT  代币*/
                 8. end
                 9. end

                    E-XCMP  协议的轮询机制不仅确保了跨链消息传递过程中的公平性, 还通过考虑消息在出口队列中的等待时
                 间, 有效避免了某些平行链因频繁发送消息而长期占据传输资源, 从而保障了所有平行链在跨链通信中的平等机
                 会. 通过将等待时间信息公开记录在区块头上, 也增加了系统的透明度和可信度. 同时, 通过智能合约执行这些规
                 则, 无需依赖中介机构, 从而确保过程的透明性和公平性. 此外智能合约的不可篡改性也确保了算法的执行不受任
                 何一方的干扰, 进一步提高了系统的可信度和安全性.
                    (3) 目标  10  消息持久化: 消息持久化在确保跨链消息在网络中有效处理上至关重要. 然而, 初始协议未能保证
                 消息的持久化存储, 意味着跨链消息在传递过程中可能面临丢失或重复处理的风险. 恶意攻击者可能利用这一漏
                 洞实施延迟攻击, 这不仅会影响单个交易的成功, 还可能削弱整个系统的可靠性. 缺乏有效的消息持久化机制, 系
                 统将无法确保跨链操作的可靠性和一致性, 从而影响整体的健壮性和安全性.
                    因此, E-XCMP  协议引入一个高效的监督机制, 即利用钓鱼者               C  作为消息有效性的智能验证者. 具体而言, 钓
                 鱼者  C  对来自平行链    S  的消息进行实时检测, 评估其在当前时间窗口内的有效性. 若钓鱼者                   C  通过其算法判定平
                 行链  S  的消息已超出有效期限或存在其他不可用因素, 该机制将自动触发惩罚措施, 从平行链                          S  的账户中扣除一
   168   169   170   171   172   173   174   175   176   177   178