4-24 日:widevine的破解方法也已经搞定,思路也发在52pojie上面了。谢谢大家关注。
======================================================================================================================================嗯,有件比较郁闷的事情,关于widevine方面,google默认开源代码不带widevine的库,要想下载编译通过,需要过他的一个认证,如果有哪位兄弟手头上有这个库,给我共享一下,让我继续研究,感激不尽。
所以现在如果采用widevine加密的,我暂时卡住没办法继续了,但是可以提供一个思路,其实可以通过浏览器模拟一个widevine的回复给js。伪装已经有这个库,这样可以继续往下面跑跑看。但是估计后面还会有坑,我就不往下跳了。
其他不采用这种加密方式的,应该不受影响。
我也会继续再网上找找,万一有那个好心人共享了(虽然希望比较渺茫)
===========================================================================================================================================首先老规矩,先劝退:
1:这篇文件仅仅是技术分析,不提供任何工具进行试用。
2:这篇文件是针对于对编程有一定基础的同学
3:实现本文章的方法需要下载chrome浏览器源码并且编译。
4:本文提到的下载其实您完全可以用录屏来解决,这里只是对于技术的追求和讨论
来句振奋人心的:重剑无锋,大巧不工。
看到html5下载,一般大家都会去找m3u8,得到对应的key,然后根据KEY计算偏移。复杂点的搞个算法,藏到js里面,让你找不到key,或者干脆给一个加过密的,于是解密变成了对于js的阅读理解。
而且您可以分析出一个网站的key生成方式,但是换了另外一个网站,基本上还要从头搞起。
这里提供一个方法,从根本上搞定html5的播放,因为这个方法太危险,基本上可以扫清市面上所有的加密方式 ,我自己也怕了,所以这里只说一下思路,不提供源码,不提供源码,不提供源码。
首先html5是采用的浏览器内部的播放和解码程序,firefox我没有研究,我研究是chrome。对于chrome来说,在之前版本用的是ffmpeg做的媒体解码,我最近下载源码时,已经在往mojo切换了,这些都不重要,重要的是,您可以知道,
无论那些加密视频怎么玩花样,最后一定是需要输出音频流,视频流到播放器的,这里的播放器就是ffmpeg,或者是mojo,他们是chrome这个box和外界设备的交互。
答案现在很显而易见,只要可以得到音视频流,基本上可以为所欲为了。
事实上,这个音视频流想要得到并不难,你要知道firefox和chrome可是开源的浏览器,这些代码就是明明白白的放在那里。
这里给大家讲三个思路,分别是难,中,易:
1:最难的,也是基本上无法防范的,直接修改底层播放器代码,分别得到音频流和视频流。主要关系到的文件应该是:
chromium\src\media\mojo\clients\mojo_audio_decoder.cc,
chromium\src\media\mojo\clients\mojo_video_decoder.cc
这里又有很多做法,可以直接攫取frame,然后做同步,或者重写decode。 不展开,估计用的同学比较少,但是这种方法的好处是,即使采用最高级别的CDM加密,也是不能阻挡你的步伐。
2:中等难度:
Pipeline里面重写read。 这里简单多说两句,网页开始播放多媒体时,会生成一个media::WebMediaPlayerImpl对象,它包含media::PipelineController,这个controller负责管理media::DataSource, media::Demuxer, and media::Renderer
其中datasource是用来提供数据给
支付5UD,阅读全文
还有更多的精彩内容,作者设置为付费后可见
UltraDebug免责声明
✅以上内容均来自网友转发或原创,如存在侵权请发送到站方邮件9003554@qq.com 处理。
✅The above content is forwarded or original by netizens. If there is infringement, please send the email to the destination 9003554@qq.com handle.