一种视频流媒体播放链接的防盗链及鉴权的加密验证方法与流程
未命名
10-09
阅读:144
评论:0
1.本发明涉及视频流媒体播放技术领域,特别涉及一种视频流媒体播放链接的防盗链及鉴权的加密验证方法。
背景技术:
2.随着互联网技术的不断发展,视频流媒体的使用越来越广泛。然而,未经授权的视频内容的盗版和传播也日益严重,给所有者带来了巨大的经济损失。在视频流媒体播放的过程中,为保护内容版权,需要对视频播放链接进行防盗链和鉴权操作。因此,需要一种安全可靠的视频流媒体播放链接的加密验证方式来保护版权所有者的权益。
技术实现要素:
3.本发明实施例提供了一种视频流媒体播放链接的防盗链及鉴权的加密验证方法,以至少解决相关技术中视频播放链接泄露后被攻击和破解的技术问题。
4.根据本发明实施例的一方面,提供了一种视频流媒体播放链接的防盗链及鉴权的加密验证方法,包括:
5.在应用创建时,为应用分配一个唯一且随机的app id和app key,并保存在业务服务器的数据库中;
6.应用在发起视频流媒体请求时,在播放地址后面带上自身的app id及当前的时间戳,使用app key进行第一次加密,并生第一校验字符串,即得到加密信息;
7.流媒体服务器收到视频流媒体请求后,对所述加密信息进行第二次加密,并对第二次加密的结果进行,所述校验包括:app id校验、时间戳校验、字符串校验以及播放权限校验;
8.当所有校验通过后,建立播放请求,拉取视频流转发给应用;反之当存在任一项校验不通过时,则返回错误。
9.可选地,所述校验的顺序依次为:app id校验、时间戳校验、字符串校验以及播放权限校验。
10.可选地,所述app key进行第一次加密包括:app id、时间戳以及播放链接加密。
11.可选地,所述第二次加密为将播放链接、app id及时间戳通过app key生成第二校验字符串。
12.可选地,还包括,当检测到异常流量时,禁用相应的应用的授权。
13.根据本发明实施例的另一方面,还提供了一种视频流媒体播放链接的防盗链及鉴权的加密验证装置,包括:
14.应用,所述应用在创建时会被分配一个唯一且随机的app id和对应的app key;应用发起视频流媒体请求时,需要在请求参数中携带app id、时间戳和加密后的校验字符串,视频流媒体请求并通过app key按照一定的规则进行第一次加密生成;
15.业务服务器,用于分配app id和app key、授权;当应用发起请求时,业务服务器将
根据app id获取对应权限的视频终端列表,应用通过获取列表中的播放地址向流媒体服务器取流;
16.流媒体服务器,用于管理和调度视频流的传输;当流媒体服务器接收到应用的视频流媒体请求时,流媒体服务器将根据视频流媒体请求中携带的参数进行第二次加密、校验,校验包括:app id校验、时间戳校验、字符串校验以及播放权限校验,当所有校验通过后,将视频流媒体请求转发给相应的视频终端进行视频流的拉取和转发;
17.视频终端,用于采集、编码和传输视频流,视频终端连接至流媒体服务器,等待流媒体服务器的视频拉取请求,并根据视频拉取请将视频流传输给流媒体服务器,视频终端需要与流媒体服务器协同工作,保证视频流的稳定传输和保障视频质量。
18.可选地,所述视频终端位于流媒体服务器网络后方,不与应用在同一网络内,应用不能直接拉取视频流。
19.可选地,所述应用为各种视频类的应用。
20.可选地,所述校验的顺序依次为:app id校验、时间戳校验、字符串校验以及播放权限校验。
21.可选地,所述app key进行第一次加密包括:app id、时间戳以及播放链接加密。
22.与现有的技术相比,本发明具有如下有益效果:
23.1、本发明实施例中,本发明所提供的视频流媒体播放链接的防盗链及鉴权的加密验证方法,通过视频流媒体播放链接的防盗链及鉴权的加密验证方式,app id校验、时间戳校验、字符串校验以及播放权限校验进行混合验证,可以有效防止视频播放链接泄露后被攻击和破解,确保视频内容的安全性。
24.2、采用app key加密app id、时间戳以及播放链接进行验证,提高了播放链接的安全性。
25.3、每个应用的app key都是唯一且非公开的,有效防止了非法访问,并可以进行其他权限组操作,提供数据追踪。
26.4、播放地址和时间戳参与加密,无法复用在其他请求中,保证了链接的独一性。播放地址的有效时间只有数分钟,一旦过期就无法再次使用,从而防止了任何未经授权的重用。
27.5、本发明简单易实现,能够广泛应用于各种视频流媒体平台和网站。由于攻击者没有app key,无法生成校验字符串,即使截获单个地址的播放请求,其请求也只在数分钟时间内可用。如果应用因为管理不当造成app key泄露,后台也可以通过对应用临时禁用该应用,或者对应用重新生成app key来防止非法访问。
附图说明
28.为了更清楚地说明本发明的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一个实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
29.图1是根据本发明实施例的一种视频流媒体播放链接的防盗链及鉴权的加密验证方法的流程图;
30.图2是根据本发明实施例的流媒体服务器与业务服务器同步应用信息的流程图;
31.图3是根据本发明实施例的应用与流媒体服务器的播放请求的流程图;
32.图4是根据本发明实施例的加密验证装置应用视加密验证方法的流程图。
具体实施方式
33.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
34.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
35.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、装置、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
36.实施例1
37.根据本发明实施例,提供了一种视频流媒体播放链接的防盗链及鉴权的加密验证方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
38.如图1是根据本发明实施例的一种视频流媒体播放链接的防盗链及鉴权的加密验证方法的流程图,如图1所示,该方法包括如下步骤:
39.步骤s1、在应用创建时,为应用分配一个唯一且随机的app id和app key,并保存在业务服务器的数据库中。
40.步骤s2、应用在发起视频流媒体请求时,应用需要在播放地址后面带上自身的app id及当前的时间戳,使用app key进行第一次加密,并生成第一校验字符串,即得到加密信息。其中,第一校验字符串为32位。
41.步骤s3、流媒体服务器收到视频流媒体请求后,对视频流媒体请求携带的参数进行第二次加密,并对第二次加密的结果进行校验,所述校验包括:app id校验、时间戳校验、字符串校验以及播放权限校验;
42.步骤s4、当所有校验通过后,建立播放请求,拉取视频流转发给应用;反之,当存在任一项校验不通过时,则返回错误。
43.上述提出的视频流媒体播放链接的防盗链及鉴权的加密验证方法,通过视频流媒体播放链接的防盗链及鉴权的加密验证方式,可以有效防止视频播放链接泄露后被攻击和破解,确保视频内容的安全性。
44.作为一种可选的实施例,在步骤s1中,app id为公开的字段,但是app key需要由对应的应用自行保管好。每个应用的app key都是唯一且非公开的,有效防止了非法访问,
根据判断appid可以进行其他权限组操作,提供数据追踪,key只做校验用。
45.作为一种可选的实施例,所述校验的顺序依次为:app id校验、时间戳校验、字符串校验以及播放权限校验。
46.作为一种可选的实施例,所述app key进行第一次加密包括:app id、时间戳以及播放链接加密。
47.相应的,所述第二次加密为将播放链接、app id及时间戳通过app key生成第二校验字符串。
48.具体的,所述app id校验为判断第二次加密得到的app id是否存在应用。
49.所述时间戳校验为判断进行校验的时间戳(即当前的时间戳)与当前服务器时间戳的差距是否在设定范围内。
50.所述字符串校验为判断所述第一校验字符串与第二字符串是否一致。
51.所述播放权限校验为判断应用是否具有播放地址的播放权限。
52.通过采用app key加密app id、时间戳以及播放链接进行验证,提高了播放链接的安全性。而且播放地址和时间戳参与加密,无法复用在其他请求中,保证了链接的独一性。播放地址的有效时间只有数分钟,一旦过期就无法再次使用,从而防止了任何未经授权的重用。
53.作为一种可选的实施例,视频流媒体播放链接的防盗链及鉴权的加密验证方法,还包括,当检测到异常流量时,禁用相应的应用的授权。
54.实施例2
55.根据本发明实施例的另一方面,还提供了一种视频流媒体播放链接的防盗链及鉴权的加密验证装置,加密验证装置应用上述的视频流媒体播放链接的防盗链及鉴权的方法,包括:
56.应用,所述应用在创建时会被分配一个唯一且随机的app id和对应的app key,通过这两个参数进行校验和授权验证;应用发起视频流媒体请求时,需要在请求参数中携带app id、时间戳和加密后的校验字符串,视频流媒体请求并通过app key按照一定的规则进行第一次加密生成;
57.业务服务器,作为本装置的核心服务端,用于分配app id和app key、授权等;当应用发起请求时,业务服务器将根据app id获取对应权限的视频终端列表,应用通过获取列表中的播放地址向流媒体服务器取流;
58.流媒体服务器,作为应用和视频终端之间的桥梁,用于管理和调度视频流的传输;当流媒体服务器接收到应用的视频流媒体请求时,流媒体服务器将根据视频流媒体请求中携带的参数进行第二次加密、校验,校验包括:app id校验、时间戳校验、字符串校验以及播放权限校验,当所有校验通过后,将视频流媒体请求转发给相应的视频终端进行视频流的拉取和转发。
59.视频终端,作为视频流的源头,用于采集、编码和传输视频流,视频终端连接至流媒体服务器,等待流媒体服务器的视频拉取请求,并根据视频拉取请将视频流传输给流媒体服务器。视频终端需要与流媒体服务器协同工作,保证视频流的稳定传输和保障视频质量。
60.作为一种可选地实施例,所述应用为各种视频类的应用,例如移动端app、web端、
pc客户端等。
61.作为一种可选地实施例,所述视频终端可以为相机。
62.作为一种可选地实施例,所述视频终端位于流媒体服务器网络后方,不与应用在同一网络内,应用不能直接拉取视频流。
63.作为一种可选的实施例,app id为公开的字段,但是app key需要由对应的应用自行保管好。每个应用的app key都是唯一且非公开的,有效防止了非法访问,并可以进行其他权限组操作,提供数据追踪。
64.作为一种可选的实施例,所述校验的顺序依次为:app id校验、时间戳校验、字符串校验以及播放权限校验。
65.作为一种可选的实施例,所述app key进行第一次加密包括:app id、时间戳以及播放链接加密。
66.相应的,所述第二次加密为将播放链接、app id及时间戳通过app key生成第二校验字符串。
67.具体的,所述app id校验为判断第二次加密得到的app id是否存在应用。
68.所述时间戳校验为判断进行校验的时间戳(即当前的时间戳)与当前服务器时间戳的差距是否在设定范围内。
69.所述字符串校验为判断所述第一校验字符串与第二字符串是否一致。
70.所述播放权限校验为判断应用是否具有播放地址的播放权限。
71.通过采用app key加密app id、时间戳以及播放链接进行验证,提高了播放链接的安全性。而且播放地址和时间戳参与加密,无法复用在其他请求中,保证了链接的独一性。播放地址的有效时间只有数分钟,一旦过期就无法再次使用,从而防止了任何未经授权的重用。
72.作为一种可选的实施例,视频流媒体播放链接的防盗链及鉴权的加密验证方法,还包括,当检测到异常流量时,禁用相应的应用的授权。
73.作为一种可选的实施例,图2是根据本发明实施例的流媒体服务器与业务服务器同步应用信息的流程图,如图2所示,包括以下步骤:
74.1、管理员在业务服务器上录入应用信息,添加应用;
75.2、业务服务器保存步骤a1录入的用用信息,并生成app id和app key;
76.3、业务服务器将得到的app id和app key分发给管理员或应用开发者;
77.4、定向流媒体服务器从业务服务器中获取应用信息;
78.5、业务服务器向流媒体服务器提供应用信息;
79.6、流媒体服务器接收到应用信息后进行保存。
80.在图2中,步骤1-3是业务服务器的操作,步骤4-6是流媒体服务器的操作。首先在业务服务器中创建应用,此时系统会分配app id及app key给应用,应用自行保存好。业务服务器与流媒体服务器会定期同步应用的信息及对应视频播放权限。
81.作为一种可选的实施例,图3是根据本发明实施例的应用与流媒体服务器的播放请求的流程图,在图3中,在图3中,流媒体服务器分别和应用分别进行加密得到加密信息,并于流媒体服务器处校验加密信息及应用权限,最后拉取视频终端中的视频流进行转发,提供给应用。
82.作为一种可选的实施例,图4是根据本发明实施例的加密验证装置应用视加密验证方法的流程图,具体包括以下步骤:
83.a1、流媒体服务器收到视频流媒体请求后,对加密信息解析应用的app id、时间戳、字符串以及播放权限;
84.a2、进行app id校验,即查询步骤a1得到的app id是否有相应的应用,当存在时,进入步骤a3,反之返回错误;
85.a3、进行时间戳校验,即查看时间戳是否在有效期内,当时间戳处于有效期内,进入步骤a4,反之返回错误;
86.a4、根据app id获取app key,并进行加密,得到加密信息;
87.a5、进行字符串校验,判断加密信息是否与初始加密信息一致,即判断所述第一校验字符串与第二字符串是否一致,若无误,进入步骤a6,反之返回错误
88.a6、进行播放权限校验,即判断应用是否具有播放地址的播放权限,当存在时,进入步骤a7,反之反馈错误;
89.a7、建立播放请求,拉取视频流转发给应用。
90.在图4中,流媒体服务器会首先验证appid的正确性,排除伪造的app后,再根据请求所带的时间戳来比对,检测时间是否在有效期内。如果超过了有效期,就会拒绝拉流,排除攻击者使用旧的播放请求进行重放攻击;如果时间戳还有效,进而以应用对应的app key来进行同样的加密,得到加密信息来比对请求中的加密信息,以防止攻击者自主生成播放请求进行攻击。由于加密信息由时间戳及应用app id、播放地址参与加密而得到,从而确保了应用的唯一性及整个播放链接的唯一性,攻击者无法伪造应用或播放链接进行请求。最后,如果应用不慎泄露app key,业务服务器检测到异常流量,还可以禁用该应用的授权,保证视频不被非法盗用。
91.上述实施方式仅为本发明创造的一种实现方式,实际实施时还可根据具体情况进行变更。本发明提供的视频链接加密验证方式可应用于各种类型的内容,包括但不限于直播视频、电影、电视剧、音乐视频、文档等。具体的加密算法可以根据需要进行选择和调整。
92.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
93.在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
94.在本技术所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接可以是电性或其它的形式。
95.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
96.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单
元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
97.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
98.以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
技术特征:
1.一种视频流媒体播放链接的防盗链及鉴权的加密验证方法,其特征在于,包括:在应用创建时,为应用分配一个唯一且随机的app id和app key,并保存在业务服务器的数据库中;应用在发起视频流媒体请求时,在播放地址后面带上自身的app id及当前的时间戳,使用app key进行第一次加密,并生第一校验字符串,即得到加密信息;流媒体服务器收到视频流媒体请求后,对视频流媒体请求携带的参数进行第二次加密,并对第二次加密的结果进行校验,所述校验包括:app id校验、时间戳校验、字符串校验以及播放权限校验;当所有校验通过后,建立播放请求,拉取视频流转发给应用;反之,当存在任一项校验不通过时,则返回错误。2.根据权利要求1所述的视频流媒体播放链接的防盗链及鉴权的加密验证方法,其特征在于,所述校验的顺序依次为:app id校验、时间戳校验、字符串校验以及播放权限校验。3.根据权利要求1所述的视频流媒体播放链接的防盗链及鉴权的加密验证方法,其特征在于,所述app key进行第一次加密包括:app id、时间戳以及播放链接加密。4.根据权利要求1所述的视频流媒体播放链接的防盗链及鉴权的加密验证方法,其特征在于,所述第二次加密包括:将播放链接、app id及时间戳通过app key生成第二校验字符串。5.根据权利要求1所述的视频流媒体播放链接的防盗链及鉴权的加密验证方法,其特征在于,还包括,当检测到异常流量时,禁用相应的应用的授权。6.一种视频流媒体播放链接的防盗链及鉴权的加密验证装置,其特征在于,包括:应用,所述应用在创建时会被分配一个唯一且随机的app id和对应的app key;应用发起视频流媒体请求时,需要在请求参数中携带app id、时间戳和加密后的校验字符串,视频流媒体请求并通过app key按照一定的规则进行第一次加密生成;业务服务器,用于分配app id和app key、授权;当应用发起请求时,业务服务器将根据app id获取对应权限的视频终端列表,应用通过获取列表中的播放地址向流媒体服务器取流;流媒体服务器,用于管理和调度视频流的传输;当流媒体服务器接收到应用的视频流媒体请求时,流媒体服务器将根据视频流媒体请求中携带的参数进行第二次加密、校验,校验包括:app id校验、时间戳校验、字符串校验以及播放权限校验,当所有校验通过后,将视频流媒体请求转发给相应的视频终端进行视频流的拉取和转发;视频终端,用于采集、编码和传输视频流,视频终端连接至流媒体服务器,等待流媒体服务器的视频拉取请求,并根据视频拉取请将视频流传输给流媒体服务器,视频终端需要与流媒体服务器协同工作,保证视频流的稳定传输和保障视频质量。7.根据权利要求6所述的视频流媒体播放链接的防盗链及鉴权的加密验证装置,其特征在于,所述视频终端位于流媒体服务器网络后方,不与应用在同一网络内,应用不能直接拉取视频流。8.根据权利要求6所述的视频流媒体播放链接的防盗链及鉴权的加密验证装置,其特征在于,所述应用为各种视频类的应用。9.根据权利要求6所述的视频流媒体播放链接的防盗链及鉴权的加密验证装置,其特
征在于,所述校验的顺序依次为:app id校验、时间戳校验、字符串校验以及播放权限校验。10.根据权利要求6所述的视频流媒体播放链接的防盗链及鉴权的加密验证装置,其特征在于,所述app key进行第一次加密包括:app id、时间戳以及播放链接加密。
技术总结
本发明公开了一种视频流媒体播放链接的防盗链及鉴权的加密验证方法,在应用创建时,为应用分配一个唯一、随机的App Id和App Key,保存在业务服务器的数据库中;应用在发起视频流媒体请求时,在播放地址后面带上自身的App Id及当前的时间戳,使用App Key加密,得到加密信息;流媒体服务器收到视频流媒体请求后,对加密信息进行第二次加密并校验,包括App Id、时间戳、字符串及播放权限的校验;当所有校验通过后,建立播放请求,拉取视频流转发给应用;当存在任一项校验不通过时,返回错误。通过视频流媒体播放链接的防盗链及鉴权的加密验证方式,能防止视频播放链接泄露后被攻击和破解,确保视频内容的安全性。确保视频内容的安全性。确保视频内容的安全性。
技术研发人员:刘明星 庞翔 肖杨 阙超宁 覃琳 周文晓 孙卫宁 冯小梅 邓凯琪 廖惠宇
受保护的技术使用者:广西计算中心有限责任公司
技术研发日:2023.06.29
技术公布日:2023/10/8
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
