请教大家一个问题, m3u8 文件如何防下载

2020-08-30 19:23:05 +08:00
 hyy1995

小弟是前端,我司项目的视频资源都是用 m3u8 去播,m3u8 文件已经设置了#EXT-X-KEY,但还是能被别人破解下载下来(也不知道是不是后端搞的 key 姿势不对)。

目前我们的处理方案是后端对整个 m3u8 文件进行一个加密(混淆字符什么的),然后前端播放的时候自己先解密得到真实的 m3u8 文件内容,再去播,不知道这样做管不管用。

大家有什么好办法能够防止 m3u8 被破解下载呢?或者提高被破解的成本?

8481 次点击
所在节点    HLS
51 条回复
delectate
2020-08-30 19:37:18 +08:00
视频加 drm 。m3u8 被下载就下了吧。
murmur
2020-08-30 19:38:43 +08:00
没用的,你的东西如果值钱,抗得住录屏么
crella
2020-08-30 19:42:10 +08:00
用 websocket 传输?
yuzo555
2020-08-30 19:42:49 +08:00
EXT-X-KEY 是 HLS 标准里面定义的加密。
任何支持 M3U8 播放的播放器、下载工具都能正确处理 EXT-X-KEY 。
这就像你给你家大门上了密码锁,然后密码用纸条写在了门上一样... 根本没用
ysc3839
2020-08-30 19:56:07 +08:00
防不了,就连 Netflix 这种用了 DRM 方案的都能被下载。
8023
2020-08-30 19:57:26 +08:00
drm+1,但只要你的视频在客户端播放,就肯定没办法彻底放得住的。
hyy1995
2020-08-30 20:13:11 +08:00
@delectate
@8023

drm 已经加了,用的腾讯云的,但还是能被盗下,而且还直接放了个网站,能让用户自行操作就能下载的那种。

老板看不下去了让我们去提高下防盗门槛,我们目前就想到对整个 m3u8 文件加密的这种方式,但我感觉也不太靠谱,唉
hyy1995
2020-08-30 20:13:58 +08:00
@ysc3839

确实防不了,但想提高下盗下成本,除了 drm 之外,有什么建议吗?
hyy1995
2020-08-30 20:15:33 +08:00
@murmur

哈哈,录屏这种就管不了了,现在已经有网站直接挂着我司的名字,提供一键下载视频的功能,并且还收费(几块钱那种),老板看不下去了。

主要是想针对这种网站,提高盗下的成本
heyjei
2020-08-30 20:24:02 +08:00
当做普通的反爬来处理不就好了嘛
1. 如果有 IP 只下载视频或者 m3u8,不下载 js,css 文件的,肯定是爬虫,直接把 IP 封了吧;
2. m3u8 的加密改成可配置的,3 天换一次加密方式,如果不是利润特别大的话,对方自己就会放弃的。
martinsu
2020-08-30 20:31:48 +08:00
我觉得防盗方法不是用某一个高水平防盗方法。而是用一套中等水平的防盗方法,隔一段时间就改变规则让盗版手段失效,不断改,盗版者的手段不断失效,最后让盗版者精疲力尽放弃。
greatbody
2020-08-30 20:33:56 +08:00
@martinsu 高招
ochatokori
2020-08-30 20:37:28 +08:00
@martinsu #11 这只是比谁的精力多,你只能上新的规则让盗版者的手段失效
littlewing
2020-08-30 21:16:38 +08:00
在前端解密就不要想着能防破解了
hyy1995
2020-08-30 21:21:35 +08:00
@littlewing
@heyjei
@martinsu

几位老哥,有个问题想请教一下。视频资源是付费的,没付费之前接口不返回 m3u8 的,前端也是不能播的,这样的话是如何被盗下的呢?
gggxxxx
2020-08-30 21:24:54 +08:00
做盗版的账号是付费用户.....
musi
2020-08-30 21:27:16 +08:00
可以看一下阿里云的付费点播
luvroot
2020-08-30 21:32:14 +08:00
阿里云的 3 种 URL 鉴权方式,或则每次请求带 jwt token 过校验服务器。
hyy1995
2020-08-30 21:38:17 +08:00
@gggxxxx

不太像,因为每个视频都需要单独付费的,有些视频单个都得几百元,他网站上面下载一次就收几块钱,能回本吗?不太可能
fredcc
2020-08-30 21:38:20 +08:00
阿里云 CDN 不是有成品的防盗链么。分发 cdn 地址的接口做好验证,重放攻击这种都是起码的。然后把 CDN 防盗链 token 的失效时间设短点,再加上全局 token ip 限次差不多了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/702631

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX