0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

常见的视频加密技术介绍

UtFs_Zlgmcu7890 来源:未知 作者:李倩 2018-07-17 18:47 次阅读

付费观看视频的模式是很多平台的核心业务,如果视频被录制并非法传播,付费业务将受到严重威胁。因此对视频服务进行加密的技术变得尤为重要。

本文所指的视频加密是为了让要保护的视频不能轻易被下载,即使下载到了也是加密后的内容,其它人解开加密后的内容需要付出非常大的代价。

常见的视频加密技术分两种

防盗链:一种加了防盗链签名的URL,经过签名的URL能够与流服务器的安全机制进行配合,可以将URL的使用权限定在指定的APP或播放器上,恶意第三方拿到URL也不能使用和播放;

流媒体加密:通过对称加密算法加密视频内容本身,用户获得加密后的视频内容,通过验证的用户可以获取解密视频的密钥,在客户端解密后播放。这种方式实现起来流程复杂,会带来更多的计算量。

实际应用场景中,一般结合着两种技术一起使用,下面分别介绍这两种加密技术。

一、防盗链

1、Referer防盗链

Referer是HTTP协议中request header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器是从哪个页面链接过来的,服务器基于此可以获得一些信息用于处理。如果refer信息不是来自本站,就阻止访问或者跳到其它链接。

Nginx防盗链的配置:如针对文件类型的配置方法。

程序清单1 Nginx防盗链配置

这种方法是在server或者location段中加入:valid_referers none blocked,其中none表示空的来路,也就是直接访问,比如直接在浏览器打开一个文件,blocked表示被防火墙标记过的来路,*.zlg.cn表示所有子域名。

以上表示所有来自zlg.cn和域名中包含zlg.cn的站点都可以访问当前站点的图片和视频文件,如果来源域名不在blocked列表中,则返回一个403给盗链者。

2、Token防盗链

Token防盗链通过对时间有关的字符串进行签名,将时间、签名信息通过一定的方式传递给CDN(Content Delivery Network,即内容分发网络)节点服务器作为判断依据,CDN 节点则会根据 URL 的加密形式,取出对应的过期时间,和当前服务器时间进行比较,确认请求是否过期,过期的话,则直接拒绝;如果时间未过期,CDN 节点将根据约定的签名算法和密文,将计算后的值和 URL 中的原始加密串进行比较;通过之后,请求会被认为是合法的。不合法的请求可以采取禁止访问或其他操作。

其流程如下图1 Token防盗链流程所示。

客户端业务服务器生成验证信息,验证信息的生成由业务服务器负责,具体的加密过程需要确认如下事项。

确认过期时间的格式,默认采用UNIX时间戳格式;

确认验证信息中的密文,用户计算验证信息,需要和 CDN 平台约定;

确认验证信息时加入的参数,默认为URL 的路径部分;

根据上文的算法说明计算验证信息,其中请求 URL 中的验证参数为_upt。

CDN节点验证过程

根据约定解析取出过期时间,和当前 CDN 节点服务器时间进行比较,确认请求是否过期;

根据上文约定好的算法计算方式,计算出 MD5 加密串后,和URL中的加密串进行比较,验证加密串是否一致;

如果以上两个步骤都验证通过,请求才会被认为是合法的,这时 CDN 会请求资源响应给客户端,否则会被认为是非法请求,直接响应 HTTP status code 403。

图1Token防盗链流程

二、流媒体加密

1、常见的应用与浏览器播放的流媒体传输协议有

HLS:Apple 推出的基于 HTTP 协议的 MP4 分片传输协议,可用于点播和直播场景。HLS 是目前最成熟的支持流媒体加密的能应用在浏览器里的流媒体传输协议,HLS 原生支持加密。具有如下优点:

建立在HTTP之上,使用简单,接入代价小;

分片技术有利于CDN加速技术的实施;

部分浏览器原生支持,支持点播和录播。

RTMPE:基于 TCP 的 FLV 分块 message 传输协议,用于 Flash 客户端。 使用由 Diffie-Hellman 密钥交换 和 HMACSHA256 组成的行业标准基本加密。传输数据时,RTMPE 生成一对 RC4 密钥。一个密钥加密服务器发送的数据,另一个密钥加密发送到服务器的数据。RTMPE 阻止第三方应用程序侦听客户端和服务器之间的数据传输;

HTTP-FLV:基于 HTTP 长连接的 FLV 分块 tag 传输协议,将RTMP封装在HTTP协议之上,可以更好的穿透防火墙等,可用于点播和直播场景。

流媒体加密技术的核心就在于对这每一小块视频分别使用对称加密算法,在服务端加密客户端解密,通过权限验证的用户才能拿到解密一小块视频的密钥。

之所以选择对称加密是因为流媒体要求很强的实时性,数据量又很大。非对称算法的计算都比较复杂,效率较低,适合对少量数据进行加密。对称加密效率相对较高,所以流媒体加密首选对称加密。

由于HLS加密目前最为成熟稳定,因此仅介绍该加密方案。

HLS 由两部分构成,一个是 .m3u8 文件,一个是 .ts视频文件(TS 是视频文件格式的一种)。整个过程是,浏览器会首先去请求 .m3u8 的索引文件,然后解析 m3u8,找出对应的 .ts文件链接,并开始下载,如下图2 HLS加密流程所示。

图2 HLS加密流程

m3u8 文件是一个文本文件,在开启 HLS 加密时,内容大致如下。

程序清单2 m3u8文本内容

这个文件描述了每个 TS 分片的 URL ,但这些分片都是加密后的内容,要还原出原内容需要从

中解析出获取解密密钥的URL https://priv.example.com/key.do 和对称加密算法 AES-128,再从该URL中获取到密码后,再在客户端解密出原内容。

2、启用HLS加密后需完成如下工作

针对每个TS需要去请求获取秘钥;

需要多提供一个给客户端获取密钥的鉴权服务;

针对每个 TS 需要去执行对称加密的解密计算。

本着互利共赢的理念,目前zlg.cn中的大部分音视频资料未采用防盗链与流媒体加密技术,各个合作伙伴可以在其网站中正常使用zlg.cn的音视频资料链接。若zlg.cn采用了上述中refer防盗链和HLS流媒体加密技术保护部分保密资料,对于未授权的第三方则有很好的防护作用。

第一重防护:第三方在其网站上添加的来自zlg.cn的链接将无法访问,直接跳转至403网页或其他网页,如zlg.cn主页。

第二重防护:对于视频资源,第三方播放器获取到的文件为.m3u8文本文件,解析后能够获取到加密后的切片.ts文件和加密方案,但由于没有授权,因此无法获取秘钥,也就无法解密并播放该视频资源。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 视频
    +关注

    关注

    6

    文章

    1891

    浏览量

    71903
  • 服务器
    +关注

    关注

    12

    文章

    8116

    浏览量

    82518
  • 加密技术
    +关注

    关注

    0

    文章

    141

    浏览量

    17271

原文标题:安全加密(四):拾遗•流媒体加密技术

文章出处:【微信号:Zlgmcu7890,微信公众号:周立功单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    SRAM工艺FPGA的加密技术

    SRAM工艺FPGA的加密技术
    发表于 08-13 17:08

    深入浅出软件加密技术

    深入浅出软件加密技术
    发表于 09-11 12:04

    哪位大神有laview加密技术的实例

    有谁有labview加密技术的实例?求大神知道怎么做?
    发表于 05-19 21:50

    Labview开发技术丛书--深入浅出软件加密技术

    Labview开发技术丛书--深入浅出软件加密技术
    发表于 09-02 18:08

    深入浅出软件加密技术

    深入浅出软件加密技术
    发表于 09-24 17:18

    云计算的云数据安全与加密技术

    ;amp;传输)加密技术就是用来保护数据在存储和传输(链路加密技术)过程中的安全性,对做存储的技术人员来说,平常遇到的加密方案和技术主要是存
    发表于 11-06 14:54

    光纤通道存储区域网络的加密技术实现

    技术含量的失窃事件,反而让大众认识到为数据加密的重要性。目前已经有多家厂商致力于存储加密标准,希望让存储安全工具更容易和多种存储架构一同工作。有关加密技术的实现可根据不同厂商与产品分成
    发表于 07-05 06:21

    物质特征加密技术的原理是什么?

    物质特征加密技术的原理是在标签的制造过程中,提取每个商品(或票据)标签材料本身隐性纤维的分布特征信息,结合商品的相关信息以及制造商独自拥有的加密密钥(私钥),采用高强度加密算法与算法芯片,进行密码运算,生成与其惟一对应的“密文”
    发表于 10-08 14:29

    数据加密技术主要应用在哪些方面

    数据加密技术主要应用在:数据保密、身份验证、保持数据完整性、数字签名(防抵赖)。
    发表于 02-25 06:25

    软件加密技术和注册机制加密基础

    软件加密技术和注册机制加密基础 本文是一篇软件加密技术的基础性文章,简要介绍了软件加密的一些基本常识和一些
    发表于 07-19 07:33

    芯片的解密技术

    在整个电子行业的应用技术发展史上,可以说贯穿着解密与反解密技术之间的博弈。芯片解密技术又可以美其名曰:反向设计或是逆向工程。芯片的解密主要分为开盖和不开盖的,对于早期的单片机,加密方法
    发表于 07-28 08:55

    封装技术加密技术的相关资料推荐

    封装技术加密技术一.4大主流封装技术半导体 封装 是指将通过测试的晶圆按照产品型号及功能需求加工得到独立芯片的过程。封装技术是一种将集成电路用绝缘的塑料或陶瓷材料打包的
    发表于 01-25 06:50

    网络通信加密技术

    网络通信加密技术,讲解了集中网络加密的方式和机制。
    发表于 03-10 10:57 11次下载

    基于双混沌的视频光学加密技术研究

    对双随机相位编码系统进行了改进,提出了一种基于双混沌系统的光学单通道视频加密的方法。该方法在降低系统复杂度的同时,提高了加密效率,增强了系统的抗攻击能力和安全性能。对加密技术的仿真结果
    发表于 01-16 11:10 0次下载
    基于双混沌的<b class='flag-5'>视频</b>光学<b class='flag-5'>加密技术</b>研究

    FDE磁盘加密技术是什么

    磁盘加密技术 如上节所述,Disk Encryption磁盘加密,目标是保护数据at Rest状态下的机密性,加密对象是整个磁盘/分区、或者文件系统,采用实时加解密技术。 磁盘
    的头像 发表于 11-29 10:54 487次阅读
    FDE磁盘<b class='flag-5'>加密技术</b>是什么