移动端加密视频的授权播放

本文介绍了移动端加密视频的授权播放方案,包括开放授权、web授权和app授权。开放授权允许随意观看,web授权需输入参数并进行签名验证,app授权通过集成SDK进行加密key的传输和解密,提高安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

移动端加密视频的授权播放

Polyv的移动端加密视频由hls(m3u8文件)来实现。

移动端加密视频授权播放分三个级别

1.开放授权

开放授权意味着视频可以被随意观看,视频解密的key不被保护。

2.web授权

web授权播放需要输入指定参数,并且增加签名传递给m3u8地址。 m3u8的key授权服务器收到参数进行校验,如果参数和签名正确,key服务器会返回16字节的key文件给播放器。 如果参数或签名错误,则会返回403错误。

以下代码演示了如何输入参数和提交参数

1
2
3
4
5
6
7
8
9
<?php
$vid = "sl8da4jjbx5d715bc3a8ce8f8194afab_s";
$secretKey= "";
$ts=time()*1000;

$hash = md5($secretKey.$vid.$ts);
$url = "http://hls.videocc.net/sl8da4jjbx/b/sl8da4jjbx5d715bc3a8ce8f8194afab.m3u8?ts=".$ts."&sign=".$hash;
?>
<video src="<?php echo $url ?>" preload="auto" controls=""></video>

播放器的javascript:

1
2
3
4
5
6
7
8
9
10
11
<script src='http://static.polyv.net/file/polyvplayer_v2.0.min.js'></script>
<div id='player'></div>
<script>
var player = polyvObject('#player').videoPlayer({
  'width':'600',
  'height':'337',
  'vid' : 'sl8da4jjbx5d715bc3a8ce8f8194afab_s',
  'ts':'<?php echo $ts ?>',
  'sign':'<?php echo $sign ?>'
});
</script>

另外需要指出的一点是,需要支持html5的浏览器下播放,就需要提供解密key,所以授权给html5播放器,就不能阻止附带下载功能的浏览器下载该加密视频。 但每个视频的签名和请求的时间戳都不同,可以阻止视频盗取者批量下载其他视频。

3.app授权

app授权播放需要集成polyv的iOS或android的sdk,通过sdk进行视频解密的key授权,key传输过程也进行了加密,可以有效防止视频被破解。 而客户只需要调用sdk的播放器以及简单函数就可以播放视频,不用理会key验证和视频解密的过程。

以下代码演示如何使用iOS代码播放加密视频

1
2
3
4
5
6
7
#import "MPMoviePlayerController+plv.h"
...
//播放自适应码率视频
self.videoPlayer = [[MPMoviePlayerController alloc]initWithVid:_vid];

//播放指定码率的视频
 self.videoPlayer = [[MPMoviePlayerController alloc]initWithVid:vid level:1];
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值