关于分段水印模式的讨论
今早打开邮箱,发现dc总算给我发来了个人资料整理包,找到了前些日子在所里关于视频水印的讨论,简单整理。
假设:我们有三种水印模式,WA、WB、WC
我们使用三种水印分别对同一个完整视频进行加水印操作,得到了VA,VB,VC三个具有不同水印的同一个视频
以32分段为例子,我们分别将VA VB VC在相同的31个时间点分割,分成32段
例如
VA分割为: A1 A2 A3 A4 xxx A32
VB分割为: B1 B2 B3 B4 xxx B32
VC分割为: C1 C2 C3 C4 xxx C32
默认情况下,用户在视频平台在线播放的时候,平台给用户提供的并非是一个连续的视频流,而是许多视频分段,我们可以给用户提供一系列的视频分段,这个系列由VA VB VC中的分段随机组合:A1 B2 A3 C4 C5 B6 xxxx A32 ,不妨用水印的模式来简化描述:ABACCB XXXXA。这段序列足够存储经过映射后的用户ID信息(可等效为32位3进制数)。同时,由于整个空间很大 3^32,用户ID以1k个用户为例,在其中的分布非常稀疏,即使倒卖的用户为了防止自己被追踪,使用多个账户下载视频片段进行拼接,也依旧有可能直接定位到涉及的账户。
如下图所示:在分32段的情况下,使用三种水印模式,用户总数1000时,即使倒卖者将两个视频混合,也有接近84%的几率直接定位到两个涉及的账户。
在使用四种不同水印模式的时候,用户增长到2500也能保持96的直接定位成功率。
缺点是需要额外占用平台N倍的存储,N是水印模式的数目。
提出的这个方案并不会在水印里记录信息,而是依靠不同的水印模式的组合来记录信息。简化一下,以时域的水印来举例,我们可以通过水印的不同位置来作为不同的模式,水印是个移动的图案,水印中心坐标为(x,y)。我们可以设定一个坐标模式 x = Asin(bt) + t,y = Ccos(dt) + t ,通过设定不同的A b C d,我们可以有多种不同的水印模式。除非这些水印的位置变化信息完全消除,否则我们总能匹配到我们的水印模式。例如,倒卖者把我们的水印完全模糊掉(这并没有什么用,我们只依靠水印的位置信息)
这个方法只能用来定位泄漏者。在互联网上,从技术上讲没有什么防止倒卖的好办法。