Page 463 - 《软件学报》2025年第7期
P. 463
3384 软件学报 2025 年第 36 卷第 7 期
如图 4 所示, 视频明文指纹自动采集系统主要包括视频 URL 采集模块、MPD File 下载模块、视频索引片段
下载模块和明文指纹解析模块. 首先通过 URL 采集模块, 采集目标平台不同类别、时长和分辨率的视频 URL, 去
重后作为输入送入 MPD File 下载模块, 通过视频 URL 和相关签名信息下载视频 MPD 文件, 解析 MPD 文件后提
取关键信息, 最后根据提取的信息对索引片段解封装后提取视频明文指纹, 并将该过程中提取到的视频的关键信
息和视频明文指纹作为一个整体存入视频明文指纹库中.
由于明文视频指纹的采集不需要下载和播放视频, 而是利用了视频片段的索引信息, 这些索引信息的数据量
很小, 利用上述介绍的采集程序, 整个采集过程可以自动化实现, 无论从时间还是网络带宽耗费上都只需要很低的
成本. 在实际采集过程中, 只需 1–2 s 就能采集一个视频的所有分辨率的明文指纹, 构建一个包含真实平台 40 万
级的视频明文指纹库仅需 1–2 天. 此外, 本文使用的明文指纹库只需要存储视频的分段信息及视频标题等描述信
息, 并不需要存储视频文件和视频播放的传输信息, 所需的硬盘存储空间也很小.
(2) 加密视频传输数据采集
加密视频传输数据集是在真实网络播放环境中采集的加密传输数据, 在本研究中作为训练集和测试集使用.
为了全面验证本文识别方法的有效性, 系统采集个人电脑 (PC) 的 Web 客户端和手机移动客户端两种终端播放场
景下的视频加密传输数据.
对 PC 的 Web 客户端, 首先以机器人流程自动化 (robotic process automation, RPA) 技术平台 UiBot 作为自动
采集系统的控制中枢, 模拟人工操作, 控制相关软件程序进行采集工作. 通过自动化程序, 以目标视频资源地址和
相关信息作为输入, 同时控制流量采集程序和浏览器, 实现浏览器自动打开视频界面播放视频, 并控制视频客户端
进行视频分辨率切换等操作, 与此同时, 控制流量采集软件采集当前所播视频的加密传输数据, 并将流量传输数据、
传输数据描述信息共同作为视频传输实例存入数据库中.
手机移动客户端与 PC 的 Web 客户端类似, 同样以 PC 上运行的 UiBot 作为采集系统控制中枢, 控制相关软
件客户端进行采集工作. 不同的是, UiBot 并不能直接运行在手机上控制手机进行相关操作, 需使用开源 Android
投屏软件 QtScrcpy 通过 USB 数据线将手机投屏至 PC 上, 配合 UiBot 实现模拟人工操作手机, 使用 Android 调试
桥 (ADB) 以命令行的方式与手机系统进行底层交互, 控制手机进行相关网卡上的流量采集操作.
使用上述自动化采集系统, 可以实现不同视频终端的加密视频传输数据的全天候不间断自动采集, 本文成功
构建了一个包含 40 万条视频明文指纹和加密视频传输数据的大型数据集. 该数据集的相关信息如表 1 所示.
表 1 大型视频数据集的相关信息统计
加密视频传输 视频明文指纹
社交媒体 视频时长 (s) 视频类别 视频质量
数据 (个) (万条)
Facebook 体育、音乐、综艺、 144p、360p、720p、1 080p、 4 630 31.035
30–1 800
Instagram 动漫、动作、风景 1 440p、2 560p 3 216 9.854
5 面向 HTTP/2 协议的加密视频修正指纹构建方法
视频明文指纹识别方法分为两个关键步骤. 第 1 个步骤是从加密视频传输数据中构建出精准还原的加密视频
修正指纹; 第 2 个步骤是使用加密视频修正指纹与明文指纹库中的视频指纹进行匹配, 从而识别出视频. 本节面
向 HTTP/2 协议传输的加密视频流解决第 1 个步骤中的技术难点.
原始的音视频数据片段在经真实网络环境中的各层协议处理之后, 其传输的数据长度会发生变化, 当使用原
始音视频片段长度序列作为明文指纹识别视频时, 就需要对在实际网络中传输的加密音视频数据进行精准修正还
原, 使其尽可能地接近原始数据长度. 只有精准还原的视频修正指纹才有可能从大型视频明文指纹库中准确地识
别出视频. 本节分析干扰加密视频数据长度还原的因素, 针对各种干扰因素提出解决方法, 从而实现加密视频数据
的精准还原, 构建出加密视频修正指纹.
本节提出的加密视频修正指纹构建方法的整体框架如图 5 所示. 该方法主要分为两个阶段. 第 1 阶段是模型

