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 格式,
   293   294   295   296   297   298   299   300   301   302   303