CN109599132A - 一种适应于媒体行业的跨平台多终端静态化播放器 - Google Patents

一种适应于媒体行业的跨平台多终端静态化播放器 Download PDF

Info

Publication number
CN109599132A
CN109599132A CN201811449656.6A CN201811449656A CN109599132A CN 109599132 A CN109599132 A CN 109599132A CN 201811449656 A CN201811449656 A CN 201811449656A CN 109599132 A CN109599132 A CN 109599132A
Authority
CN
China
Prior art keywords
player
file
browser
cdn
universal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811449656.6A
Other languages
English (en)
Inventor
胡查旭
朱愚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Hua Seiun Technology Co Ltd
Original Assignee
Chengdu Hua Seiun Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chengdu Hua Seiun Technology Co Ltd filed Critical Chengdu Hua Seiun Technology Co Ltd
Priority to CN201811449656.6A priority Critical patent/CN109599132A/zh
Publication of CN109599132A publication Critical patent/CN109599132A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/16Storage of analogue signals in digital stores using an arrangement comprising analogue/digital [A/D] converters, digital memories and digital/analogue [D/A] converters 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明涉及一种适应于媒体行业的跨平台多终端静态化播放器,该播放器的实现方法如下:1)配置flash播放器和H5播放器待用;2)使用JavaScript代码编写通用播放器js文件,同时在播放器js文件内配置调用flash播放器和H5播放器的调用指令;3)通用播放器js文件通过JavaScript的Navigator对象判断当前加载播放器的浏览器是PC端浏览器还是手机端浏览器;4)如果通用播放器js文件检查到是手机端浏览器则加载H5播放器,如果检查到是PC端浏览器则加载flash播放器。可以同时集成手机端和PC端,不受其影响能够直接进行播放节约时间,同时还能防止播放地址被盗链。

Description

一种适应于媒体行业的跨平台多终端静态化播放器
技术领域
本发明涉及播放领域,具体涉及一种适应于媒体行业的跨平台多终端静态化播放器。
背景技术
新媒体(New Media)是指当下万物皆媒的环境,简单说:新媒体是一种环境。
新媒体涵盖了所有数字化的媒体形式。包括所有数字化的传统媒体、网络媒体、移动端媒体、数字电视、数字报刊杂志等。
一个相对的概念,是报刊、广播、电视等传统媒体以后发展起来的新的媒体形态,包括网络媒体、手机媒体、数字电视等。
新媒体亦是一个宽泛的概念,利用数字技术、网络技术,通过互联网、宽带局域网、无线通信网、卫星等渠道,以及电脑、手机、数字电视机等终端,向用户提供信息和娱乐服务的传播形态。严格地说,新媒体应该称为数字化新媒体。
在新媒体时代下,传统广电媒体将有大量视音频通过不同渠道发布到互联网。为了契合新媒体时代下传播渠道广、信息时效性高等特点。视音频播放器统一集成、统一管理、统一鉴权就变的极为重要。
但是现有的视频播放器,主要面临以下几个问题:
在不同终端集成困难
在手机端、PC端都要花费大量的时间进行对接,并且还要对样式做调整。这部分会花费大量的时间。
播放器样式统一管理
在播放器样式统一控制上也存在问题,例如:在重要节日需要配置播放器主题色彩的时候,不能做到多终端播放器一键样式设置。
暴露视音频播放地址
不管是手机端、PC端播放视频,都会很轻易的拿到视音频的播放地址。会使得播放地址被盗链,从而占用流量。
发明内容
本发明的目的在于克服现有技术的不足,提供一种适应于媒体行业的跨平台多终端静态化播放器,可以同时集成手机端和PC端,不受其影响能够直接进行播放节约时间,同时还能防止播放地址被盗链。
本发明的目的是通过以下技术方案来实现的:
一种适应于媒体行业的跨平台多终端静态化播放器,该播放器的实现方法如下:
1)配置flash播放器和H5播放器待用;
2)使用JavaScript代码编写通用播放器js文件,同时在播放器js文件内配置调用flash播放器和H5播放器的调用指令;
3)通用播放器js文件通过JavaScript的Navigator对象判断当前加载播放器的浏览器是PC端浏览器还是手机端浏览器;
4)如果通用播放器js文件检查到是手机端浏览器则加载H5播放器,如果检查到是PC端浏览器则加载flash播放器。
进一步的,所述播放器还包括一个防盗链步骤,具体步骤如下:
1)通用播放器js文件通过AES-CBC-128算法来获取当前正在使用的播放器jsonp文件,从播放器jsonp文件中获取CDN防盗链加密公式以及加密密匙;
2)通用播放器js文件通过AES-CBC-128算法获取视频jsonp文件,从视频jsonp文件中获得视频播放器地址;
3)通过CDN防盗链加密公式算出一个加密字符串,把字符串带到视频播放地址后面,就可以得到安全的播放。
进一步的,所述CDN防盗链加密公式支持后台选择或配置以修改CDN防盗链加密公式。
进一步的,所述CDN防盗链加密公式中的固定常量可以单独配置,公式中的变量则通过EL表达式指定获取。
进一步的,所述EL表达式被替换成实际的加密参数,从而算出各不同cdn认可的防盗链密匙。
本发明的有益效果是:本发明利用手机端和PC端通用的JavaScript代码编写的通用播放器js文件,然后通过JavaScript的Navigator对象判断当前加载播放器的浏览器是PC端浏览器还是手机端浏览器从而调用相应的播放器,实现了手机端和PC端的同用,此外还通过AES加密算法对播放器地址进行加密,可以有效保证播放地址被盗链。
附图说明
图1为本发明播放器调用流程图;
图2为本发明播放器内部初始化流程图;
图3为 AES加密算法流程图。
具体实施方式
下面结合具体实施例进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。
如图1所示,一种适应于媒体行业的跨平台多终端静态化播放器,该播放器的实现方法如下:
1)配置flash播放器和H5播放器待用;更为具体的,本发明是在系统中配置了一个完整的flash播放器和H5播放器,用于PC端浏览器播放和手机端浏览器播放。
2)使用JavaScript代码编写通用播放器js文件,同时在播放器js文件内配置调用flash播放器和H5播放器的调用指令;
3)通用播放器js文件通过JavaScript的Navigator对象判断当前加载播放器的浏览器是PC端浏览器还是手机端浏览器;
4)如果通用播放器js文件检查到是手机端浏览器则加载H5播放器,如果检查到是PC端浏览器则加载flash播放器。
使用方启用播放器js文件以后,播放器js文件通过JavaScript的Navigator对象自动判断当前加载播放器的浏览器,从而调用相应的播放器进行播放,这里调用播放器的方法是使用了JavaScript代码直接调用。
如图2所示,所述播放器还包括一个防盗链步骤,具体步骤如下:
1)通用播放器js文件通过AES-CBC-128算法来获取当前正在使用的播放器jsonp文件,从播放器jsonp文件中获取CDN防盗链加密公式以及加密密匙;
2)通用播放器js文件通过AES-CBC-128算法获取视频jsonp文件,从视频jsonp文件中获得视频播放器地址;
3)通过CDN防盗链加密公式算出一个加密字符串,把字符串带到视频播放地址后面,就可以得到安全的播放。
加密原理介绍:
公钥 A + 私钥 B ----加密算法-----> 密码 C
着重解释下各密钥及密码取值获取途径:
公钥 A:播放器通过网络请求由CDN反馈带有时效性的一个密码值。------- 网络中获取的值可以视为公钥。
私钥 B:通过CDN服务器中人为配置,播放器根据服务器中值写死。由于播放器代码可以反编译为可阅读代码来破解固定算法,私钥B的作用是可以定期更换。
密码 C:是通过加密的算法(CDN也知晓该算法,把A和B作为密码因子)生成。-------通常是常见的加密算法,当然也可以由流媒体和播放器协商定制,不会常变。
获得密码C值以后,播放器以HTTP请求参数值方式带给CDN服务器防盗认证,CDN通过特定的算法来验证链接的有效性。
其中固定常量是公钥A。
其具体流程为:
当播放器开始播放时,同时加载视频元数据和加密文件以及播放器元数据和加密文件,并使用AES-CBC-128算法进行解密,从而获取视频元数据和播放器元数据信息,然后通过CDN/流媒体并启用防盗链验证,验证通过则直接进行播放。
如图3所示,AES-CBC-128对称加密算法的基本原理如下:
AES-128-CBC是一种分组对称加密算法,即用同一组key进行明文和密文的转换,以128bit为一组,128bit==16Byte,意思就是明文的16字节为一组对应加密后的16字节的密文。
若最后剩余的明文不够16字节,需要进行填充,通常采用PKCS7进行填充。比如最后缺3个字节,则填充3个字节的0x03;若最后缺10个字节,则填充10个字节的0x0a;
若明文正好是16个字节的整数倍,最后要再加入一个16字节0x10的组再进行加密。
即发送方使用同一组key将明文利用AES加密函数进行转换得到相应的密文,然后将密文传递给接收方,接收方则使用key将密文再利用AES加密函数转换成明文。
更为具体的,认证流程为:
1) 播放器向流媒体服务器发送获取流媒体认证请求。
2) 流媒体服务器返回密码A。密码A是由流媒体服务器根据自己本机系统时间计算的一个密码,定时更换,具有时效性。(比如,5分钟跟换一次,每个密码10分钟的有效期)。
3) 播放器拿到密码A,再加上自己写死的密码B,通过加密算法计算出密码C。将密码C作为URL参数附加在点播请求后面进行请求。
4) 流媒体在开启防盗链配置的情况下,通过在配置中预置的密码B和系统时间,使用固定算法验证密码C的合法性和时效性。通过则返回数据,失败则拒绝服务。
作为一种优选实施方案:
1) 播放器用 http://ip:port/ess/getTimeKey来请求时效密码。
2) 服务器用XML方式返回1个32位 密码A。(如<timekey>67262734</timekey>)
3) 播放器用这32位密码A作为内存前4字节,后面跟配置预设的字符串B(如SbtStreamingServer),然后采用附件算法计算此内存得到一个32位密码C。
int publicKey = Integer.parseInt(timekey.getText());
String privateKey=Config.getValue("vms.privateKey");
byte[] byteA = new byte[4];
byteA[0] = (byte) (publicKey & 0xff);// 最低位
byteA[1] = (byte) ((publicKey >> 8) & 0xff);// 次低位
byteA[2] = (byte) ((publicKey >> 16) & 0xff);// 次高位
byteA[3] = (byte) (publicKey >>> 24);// 最高位,无符号右移。
byte[] byteB=privateKey.getBytes();
byte[] byteAB=new byte[privateKey.getBytes().length+4];
for(int i=0;i<4;i++){
byteAB[i]=byteA[i];
}
for(int i=0;i<byteB.length;i++){
byteAB[i+4]=byteB[i];
}
int length=(int)(byteAB.length/4)*4;
CRC32 crc=new CRC32();
crc.update(byteAB,0,length);
passkey=crc.getValue();
4) 将密码C作为整数带入URL的参数passkey中,进行请求,获取数据播放。(如http://ip:port/vod/id*fmt=h264_800k_mp4&passkey=29638291)
本方案优点在于:一旦发现防盗链被盗,流媒体只配置新的密钥B',然后播放器只需更改密钥B',重新编译生成新的播放器。流媒体服务器和播放器改动都很小,无需更换算法。
缺点在于:防盗链被盗,云平台中所有流媒体和播放器要统一配置密钥。即播放器要升级,流媒体改配置文件。
作为本发明的进一步改进,CDN防盗链加密公式支持后台选择或配置以修改CDN防盗链加密公式,CDN防盗链加密公式中的固定常量可以单独配置,公式中的变量则通过EL表达式指定获取,EL表达式被替换成实际的加密参数即密码 C,从而算出各不同cdn认可的防盗链密匙。
以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

Claims (5)

1.一种适应于媒体行业的跨平台多终端静态化播放器,其特征在于,该播放器的实现方法如下:
1)配置flash播放器和H5播放器待用;
2)使用JavaScript代码编写通用播放器js文件,同时在播放器js文件内配置调用flash播放器和H5播放器的调用指令;
3)通用播放器js文件通过JavaScript的Navigator对象判断当前加载播放器的浏览器是PC端浏览器还是手机端浏览器;
4)如果通用播放器js文件检查到是手机端浏览器则加载H5播放器,如果检查到是PC端浏览器则加载flash播放器。
2.根据权利要求1所述的一种适应于媒体行业的跨平台多终端静态化播放器,其特征在于,所述播放器还包括一个防盗链步骤,具体步骤如下:
1)通用播放器js文件通过AES-CBC-128算法来获取当前正在使用的播放器jsonp文件,从播放器jsonp文件中获取CDN防盗链加密公式以及加密密匙;
2)通用播放器js文件通过AES-CBC-128算法获取视频jsonp文件,从视频jsonp文件中获得视频播放器地址;
3)通过CDN防盗链加密公式算出一个加密字符串,把字符串带到视频播放地址后面,就可以得到安全的播放。
3.根据权利要求2所述的一种适应于媒体行业的跨平台多终端静态化播放器,其特征在于,所述CDN防盗链加密公式支持后台选择或配置以修改CDN防盗链加密公式。
4.根据权利要求3所述的一种适应于媒体行业的跨平台多终端静态化播放器,其特征在于,所述CDN防盗链加密公式中的固定常量可以单独配置,公式中的变量则通过EL表达式指定获取。
5.根据权利要求4所述的一种适应于媒体行业的跨平台多终端静态化播放器,其特征在于,所述EL表达式被替换成实际的加密参数,从而算出各不同cdn认可的防盗链密匙。
CN201811449656.6A 2018-11-30 2018-11-30 一种适应于媒体行业的跨平台多终端静态化播放器 Pending CN109599132A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811449656.6A CN109599132A (zh) 2018-11-30 2018-11-30 一种适应于媒体行业的跨平台多终端静态化播放器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811449656.6A CN109599132A (zh) 2018-11-30 2018-11-30 一种适应于媒体行业的跨平台多终端静态化播放器

Publications (1)

Publication Number Publication Date
CN109599132A true CN109599132A (zh) 2019-04-09

Family

ID=65959318

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811449656.6A Pending CN109599132A (zh) 2018-11-30 2018-11-30 一种适应于媒体行业的跨平台多终端静态化播放器

Country Status (1)

Country Link
CN (1) CN109599132A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112019935A (zh) * 2019-05-29 2020-12-01 深圳广播电影电视集团 跨平台视频点播文件的处理方法、装置和计算设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100722455B1 (ko) * 1999-11-16 2007-05-28 소니 가부시끼 가이샤 기록매체, 데이터 기록방법과 장치, 데이터 재생방법과장치 및 복사제어방법
EP1724783B1 (en) * 1999-08-27 2009-09-23 Sony Corporation Editing apparatus and editing methods
CN104320377A (zh) * 2014-09-25 2015-01-28 华为技术有限公司 一种流媒体文件的防盗链方法及设备
CN104980771A (zh) * 2014-04-09 2015-10-14 中国电信股份有限公司 使用iptv进行流媒体点播的方法与系统
CN106210825A (zh) * 2016-08-11 2016-12-07 成都索贝数码科技股份有限公司 支持多终端的融媒体发布播放器生成系统及方法
CN107222480A (zh) * 2017-05-27 2017-09-29 中国联合网络通信集团有限公司 一种流媒体播放方法、终端设备及cdn服务器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1724783B1 (en) * 1999-08-27 2009-09-23 Sony Corporation Editing apparatus and editing methods
KR100722455B1 (ko) * 1999-11-16 2007-05-28 소니 가부시끼 가이샤 기록매체, 데이터 기록방법과 장치, 데이터 재생방법과장치 및 복사제어방법
CN104980771A (zh) * 2014-04-09 2015-10-14 中国电信股份有限公司 使用iptv进行流媒体点播的方法与系统
CN104320377A (zh) * 2014-09-25 2015-01-28 华为技术有限公司 一种流媒体文件的防盗链方法及设备
CN106210825A (zh) * 2016-08-11 2016-12-07 成都索贝数码科技股份有限公司 支持多终端的融媒体发布播放器生成系统及方法
CN107222480A (zh) * 2017-05-27 2017-09-29 中国联合网络通信集团有限公司 一种流媒体播放方法、终端设备及cdn服务器

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112019935A (zh) * 2019-05-29 2020-12-01 深圳广播电影电视集团 跨平台视频点播文件的处理方法、装置和计算设备
CN112019935B (zh) * 2019-05-29 2022-06-10 深圳广播电影电视集团 跨平台视频点播文件的处理方法、装置和计算设备

Similar Documents

Publication Publication Date Title
US20240022430A1 (en) Authentication and Binding of Multiple Devices
US11228427B2 (en) System and method for securing content keys delivered in manifest files
US10334319B2 (en) System and method of cloud-based manifest processing
US8832726B2 (en) Video streaming entitlement determined based on the location of the viewer
US9819987B2 (en) Content entitlement determinations for playback of video streams on portable devices
US9794240B2 (en) System and method for signaling and verifying URL signatures for both URL authentication and URL-based content access authorization in adaptive streaming
US11259082B2 (en) Systems and methods for data processing, storage, and retrieval from a server
US20160197939A1 (en) Segment Authentication for Dynamic Adaptive Streaming
CN108476134B (zh) 利用经加扰服务的方法和设备
CN103067174A (zh) 一种在移动操作系统中完成数字签名的方法和系统
US8266420B2 (en) System and method for providing secure configuration file provisioning
US20120266222A1 (en) Provisioning using a generic configuration
CN109599132A (zh) 一种适应于媒体行业的跨平台多终端静态化播放器
US8775806B2 (en) System and method for providing unique encryption key
US10873773B2 (en) Countermeasure for cryptographic cribs
EP4016969A1 (en) Methods for data processing, storage, and retrieval from a server
KR101383378B1 (ko) 다운로드 수신제한 시스템을 이용한 모바일 iptv 서비스 시스템 및 그 방법
CN112600833A (zh) 点播影院dcp播放设备私钥的云端分布存储系统及方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190409