Page 123 - 《软件学报》2025年第10期
P. 123

4520                                                      软件学报  2025  年第  36  卷第  10  期


                 受到严重影响. 本文设计的公链采用具备后量子安全的                  Dilithium-Prime 算法并适配  UTXO  脚本设计, 满足正常的
                 功能需求, 并明显提升了系统交易安全性.

                  4   实验验证
                    本文通过    C++语言实现了包含多父链辅助工作量证明共识机制、难度调整算法、在交易中应用                              Dilithium-
                 Prime 后量子签名算法的区块链系统, 并搭建           5  个  4  核  16 GB  内存云服务器用于仿真实验. 此外, 通过      Python  脚
                 本, 利用  Docker 技术在每台云服务器平均构建         30  个节点用于分别搭建区块节点. 相关实验参数设定如下.
                    (1) 难度调整算法选择表       2  中安全等级为   III 的参数, 周期设置较小便于系统测试.
                    (2) 根据目前算力实际环境, 分配为运行           Sha256  哈希函数父链节点      140  个, 运行  Scrypt 哈希函数父链节点
                 5  个, 运行子链节点   5  个.
                    (3) 使用  C++语言模拟实现矿池交互流程, 云服务器节点网络通信延迟约为                   0.6 ms, 带宽为  3 Mb/s.
                    本节对   Mul-AuxPoW  共识机制效率、难度调整算法的模拟攻击、应用后量子签名的交易效率开展实验, 测
                 试系统的稳定性和效率.
                  4.1   Mul-AuxPoW  共识机制效率
                    (1) Mul-AuxPoW  共识机制速度
                    本实验通过模拟区块共识流程, 进行            1 000 次共识  (不包含交易), 计算各流程平均用时和比例. 实验结果如表              4
                 所示. 可以观察共识哈希计算         t c  占据共识流程的绝大多数时间, 没有填充交易的区块模板时间                 t v  和区块验证时间
                 t y  相比较而言可以忽略不计.

                                              表 4 区块共识流程平均用时和比例

                                 参数       区块模板时间    t v  共识哈希计算  t c  区块广播   t p  区块验证   t y
                                用时 (ms)      10.52        120 000.00    0.21        0.58
                                比例 (%)       <0.01         99.99        <0.01       <0.01

                    (2) Mul-AuxPoW  共识机制存储
                    本实验测试区块大小的边界值, 即只有             CoinBase 交易的区块与空间完全应用的区块头长度、CAuxPoW               模块
                 大小以及整体区块大小. 实验结果如表              5、表  6  所示. 可以观察到对于只有        CoinBase  交易的区块, 区块头和
                 CAuxPoW  共识占据主要空间, 随着交易的增多, 直到空间区块结构占满, 区块交易占据主要空间, 新增的
                 CAuxPoW  共识空间开销和区块头开销可以忽略不计.

                   表 5 只有   CoinBase 交易的区块空间开销和比例                 表 6 空间全部应用的区块空间开销和比例

                       参数         区块头     CAuxPoW     区块           参数         区块头    CAuxPoW     区块
                    空间 (bytes)     80        176      301        空间 (bytes)    80       752     30 000 000
                   占区块比例 (%)      26.58     58.47     100       占区块比例 (%)     <0.01    <0.01      100

                  4.2   难度调整算法攻击测试
                    本实验模拟两类父链进行算力攻击时区块链的稳定性, 算力大小以哈希率                         (hashrate) 为计量单位, 即每秒计算
                 哈希的次数, 1 kH/s、1 MH/s 分别表示每秒可以做         1 000、1 000 000  次哈希运算. 首先稳定模拟采用      Scrypt 哈希函
                 数的父链   B  算力不变, 采用   Sha256 哈希函数的父链     A  的算力在一段周期内先后大幅增加、大幅减少、小幅增加、
                 小幅减少后, 子链系统整体出块时间如图             4  所示, 可以观察总体出块时间随算力变化先减少后增, 根据变化程度可
                 以快速调整到正常波动区间范围, 在           2–4  个周期以内稳定出块时间. 两类父链的出块数目如图               5  所示, 父链  A  的出
                 块数随着算力变化发生剧烈变化后, 在            2–4  个周期以内可以稳定出块数目在目标值左右.
   118   119   120   121   122   123   124   125   126   127   128