Page 298 - 《软件学报》2021年第11期
P. 298
3624 Journal of Software 软件学报 Vol.32, No.11, November 2021
50/750×100%=6%,其误差百分比仍在理论范围内.
(a) T=15s (b) T=150s (c) T=350s
(d) T=550s (e) T=750s (f) T=950s
(g) T=1150s (h) T=1350s (i) T=1550s
Fig.7 Result of updating the master key periodly based on blockchain
图 7 基于区块链的主密钥周期更新结果
Fig.8 Percentage of time errors for updating the master key periodly
图 8 主密钥周期更新时间误差百分比
在实际中,虽然基于区块链的同步方案会有 50s 左右的时间误差,然而在应用到本文提出的签密方案中,这
种随机误差会增加密钥更新过程的不确定性,使得攻击者很难预测密钥更新的准确时间,增大攻击者攻击的难
度.此外,误差百分比随周期增加而下降,当周期大于 1 550s 后,误差百分比低于 1%.因此,上述更新策略能够有效
地适配到新提出的签密方案中.
在将基于区块链的同步方案引入到签密方案时,还需要考察该同步方案对系统性能的影响,例如访问区块
链带来的网络延迟、获取区块链数据后进行数据分析而带来的计算开销等.从算法 1 可知,引起访问区块链的
操作主要有两种:第 1 种是 eth.getblockNumber(⋅),第 2 种是 eth.getTimestamp(⋅).第 1 种操作是访问区块链以获得
最新的区块号,第 2 种操作是根据区块号以获得该区块对应的时间戳.获取到区块链数据后,数据为 JSON 格式,