iOS视频加解密方案(AVPlayer、IJKPlayer)

iOS视频加解密⽅案(AVPlayer、IJKPlayer)
1、加密⽬的:
1、为了防⽌视频盗链,导致服务器流量剧增,增加运营成本;同时也是资源保护的⼀种措施。
2、m3u8与m p4对⽐
1、m3u8两个 TS ⽚段可以⽆缝拼接或者嵌套,播放器能连续播放,视频拼接或者剪辑⽐较⽅便。eg:视频加⼴告,免费试看的5分钟不做加密,后⾯的视频加密,播放需要鉴权解密。
2、m3u8根据列表⽂件中的时间轴出对应的 TS ⽚段下载即可,不需要 range request,对代理服务器的要求⼩很多。所有代理服务器都⽀持⼩⽂件的⾼效缓存。
3、m3u8可以实现多码率视频的适配,可以根据⽤户的⽹络带宽情况,⾃动为客户端匹配⼀个合适的码率⽂件进⾏播放,从⽽保证视频的流畅度
4、mp4 结构相对复杂,长视频的加载速度相对较低。
3、熟悉m3u8格式及hls协议(m3u8嵌套,直播与点播)
4、加解密⽅案:1、整体加密  2、逐条ts加密
⾸先要分清楚2种情况
1、本来就是加密链接(包含#EXT-X-KEY字段)
2、⼈为加密后的加密链接(包含#EXT-X-KEY字段,但是后端⼜进⾏了加密)
第⼀种情况,如果你将⼀个包含加密字段#EXT-X-KEY的正常m3u8链接放进AVPlayerItem⾥⾯初始化,AVPlayer也能播放出来,这说明什么?说明AVPlayer是会对包含#EXT-X-KEY字段的m3u8进⾏⼀次解密操作,这些操作是系统底层做的,抓包可以看到。
AVPla yer播放m3u8的流程⼤致如下:
1、请求m3u8-->请求ts-->包含#EXT-X-KEY字段?-->包含或不包含
视频文件加密2、包含-->不真实ts-->请求URI-->获取key-->AES128解密ts-->请求真实ts
3、不包含-->真实ts-->请求真实ts
流程很简单,那么我们来看看第⼆种情况,按上⾯的底层逻辑处理流程⼤致如下:

本文发布于:2024-09-24 04:21:01,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/381323.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:视频   加密   播放
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议