·您当前的位置:首页 > 技术教程 > Wowza教程 >

[wowza]wowza下http协议防盗链DRM方案

时间:2015-12-31 15:1151itstudy.com
[wowza]wowza下http协议防盗链DRM方案,使用DRM方案用于控制对直播和点播视频的URL链接的加密工作。其密钥放置在[安装dir)/密钥目录

具体实施步骤如下所示:

1、使用DRM方案用于控制对直播和点播视频的URL链接的加密工作。其密钥放置在[安装dir)/密钥目录

2、这次采用的是aes-128的加密方式直播或点播内容通过密钥文件被加密。密钥文件是一个以流名字命名的txt文件

3、直播流demo如下所示:

[install-dir]/keys/myStream.key

点播流demo:

[install-dir]/keys/sample.mp4.key

4、对于可用的加密算法,这个key文件内必须包含如下内容:

cupertinostreaming-aes128-method: AES-128

cupertinostreaming-aes128-url: http://mycompanykeyserver.com/authenticate.aspx

cupertinostreaming-aes128-key: 0x123456789ABCDEF123456789ABCDEF12

cupertinostreaming-aes128-iv: 0xFEDCBA9876543210FEDCBA9876543210

参数解释:

cupertinostreaming-aes128-method:加密算法

cupertinostreaming-aes128-url: 该参数被播放器用来检索解密密钥

cupertinostreaming-aes128-key:这个十六进制编码,128位内容加密密钥

cupertinostreaming-aes128-iv:十六进制编码的初始化向量用于加密。如果省略,chunk ID作为每个苹果直播流规范并将其用作初始化向量苹果流通过服务器端的api使用密钥数据传输保护视频流不被盗取。

5、首先在xml文件内打开苹果流加密api属性

在最后的properties里面添加(application.xml)

<Property>

<Name>cupertinoEncryptionAPIBased</Name>

<Value>true</Value>

<Type>Boolean</Type>

</Property>

6、其次当添加了服务器端模块,苹果流在被调用时将随机创建加密的流地址

调用方法:

public void onHTTPCupertinoEncryptionKeyVODChunk(HTTPStreamerSessionCupertino httpSession, IHTTPStreamerCupertinoIndex index, CupertinoEncInfo encInfo, long chunkId, int mode)

{

}

public void onHTTPCupertinoEncryptionKeyLiveChunk(ILiveStreamPacketizer liveStreamPacketizer, String streamName, CupertinoEncInfo encInfo, long chunkId, int mode)

{

}

函数解释:

encInfo变量保存了当前的加密信息对于一个给定的流和用于控制流加密。它还用于根据需要旋转钥匙,如果支持的加密方法,您正在使用。下面的代码片段显示如何设置加密的每个加密方法:

AES-128 Encryption

示例代码:

Code:

encInfo.setEncMethod(CupertinoEncInfo.METHOD_AES_128);

encInfo.setEncUrl("http://mycompanykeyserver.com/authenticate.aspx");

encInfo.setEncKeyBytes(BufferUtils.decodeHexString("123456789ABCDEF123456789ABCDEF12"));

encInfo.setEncIVBytes(BufferUtils.decodeHexString("FEDCBA9876543210FEDCBA9876543210"));

7、密钥传输配置

a) 从官网下载wms-plugin-collection.zip压缩包并解压后将插件collection.jar上传到owza媒体服务器的安装文件夹[安装目录] / lib目录,然后重新启动服务器;

b) 修改流媒体服务器的配置文件Application.xml,在配置文件的<Properties> 容器内添加如下内容

  1. <Property> 
  2.     <Name>cupertinoEncryptionBaseURL</Name> 
  3.     <Value>http://[wowza-ip-address]:1935</Value> 
  4. </Property> 
  5. <Property> 
  6.     <Name>cupertinoEncryptionSharedSecret</Name> 
  7.     <Value>[enckeysharedsecret]</Value> 
  8. </Property> 
  9. <Property> 
  10.     <Name>cupertinoEncryptionLiveRepeaterSharedSecret</Name> 
  11.     <Value>[mysharedsecret]</Value> 
  12. </Property> 

 

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器