Page 468 - 《软件学报》2025年第7期
P. 468

吴桦 等: 面向  HTTP/2  流量多路复用特征的加密视频识别方法                                             3389


                 TLS 协议对数据的封装过程中, 有时会将           DATA  帧数据切分为连续的、等长的 TLS           记录. 为了更好地刻画      CDU
                 的特征, 并计算    CDU  中包含的   DATA  帧的个数, 属于同一     DATA 帧的多个 TLS 记录应当被合并. 因此, 本文将一
                 条流中出现次数超过阈值的连续、等长的               TLS  记录定义为这条流的频繁项, 然后将训练集中所有                CDU  对应的
                 TLS  记录序列进行合并频繁项操作. 通过这种合并频繁项的操作, 使得特征向量中包含的特征值更贴近真实
                 DATA  帧的长度, 并且显著减少了特征向量的长度. 如图             8  所示, 该方法能显著提升模型的准确率.

                                                                           未合并频繁项      合并频繁项
                             100                                     96.85
                                                89.14
                                                          81.50
                              80                                  77.38
                                      72.91                                              73.44
                                                       68.44                   70.23
                                                                                      61.16
                            准确率 (%)  40  45.07
                                             56.35
                              60
                                                                            53.64

                              20

                               0
                                 CNN classifier CNN regression  RF classifier  RF regression  GB regression  XGB classifier
                                                              模型
                                             图 8 各机器学习模型的预测效果对比

                    为选取最适合处理该问题的机器学习模型, 本文选取了几种常用的机器学习模型进行训练. 如图                                8  所示, 在
                 对  TLS  负载序列合并频繁项之后, 本文所选取的所有模型的准确率都有更好的表现. 在这些常见的机器学习模型
                 中, 随机森林回归模型       (random forest regression model) 的表现最好, 其对合并频繁项之后的特征序列的预测准确
                 率甚至达到了     96.85%, 且其模型所需训练时间也最少, 因此本文选用随机森林回归模型训练                      HTTP/2  的干扰修正
                 模型进行后续实验.
                    至此, 与  HTTP/2  协议带来的干扰有关的        3  个参数:  H2_HEADERS _Frame len 、  H2_Frame_Headers len  和   N H2
                 都可以获得, 将这     3  个参数代入公式    (1) 就可以对  HTTP/2  协议带来的长度增加干扰进行修正.

                 5.5   修正结果分析
                    本文针对    Facebook  和  Instagram  平台共计采集了  7 846  个视频的加密传输数据, 对这些加密视频数据划分组
                 合单元   CDU  后, 与对应视频的明文指纹进行预匹配, 得到            110 434  组匹配的  CDU  的  TLS  序列及其视频标签作为
                 训练和测试数据, 按照      7:3  划分为训练集和测试集, 将训练集送入模型进行训练, 随后使用训练好的模型进行修正
                 还原, 测试集的    33 129  组  CDU  长度还原误差分布如表    2  所示.

                                     表 2 加密音视频数据分组数据单元            CDU  修正还原误差分布

                                ]
                            误差  (CDU len −CDU len ) (字节)  数据量        占比 (%)        累计占比 (%)
                               | ]                      27 925       84.291 7       84.291 7
                               CDU len −CDU len | = 0
                             1 ⩽ | ]                    4 785        14.443 5       98.735 2
                                CDU len −CDU len | ⩽ 9
                             10 ⩽ | ]                    277         0.836 1        99.591 4
                                CDU len −CDU len | ⩽ 18
                             19 ⩽ | ]                    43          0.129 8        99.701 2
                                CDU len −CDU len | ⩽ 27
                              28 ⩽ | ]                   99          0.298 8          100
                                  CDU len −CDU len |

                    由表  2  可知, 本文提出的面向     HTTP/2  协议加密视频修正指纹构建方法对加密视频传输指纹的修正还原误差
                 较小, 在测试集的     33 129  组加密数据中, 修正还原的平均误差为         1.75 B, 标准差为 8.84 B, 其中  84.29%  的加密数据
                 长度实现了    0  误差还原, 超过   99.70%  的数据还原误差在      28 B  以内, 误差分布基本符合正态分布. 以一个包含            4
   463   464   465   466   467   468   469   470   471   472   473