2、将BIN文件转成反汇编文件,汇编文件也是一种编程文件。
3、工程师根据反汇编文件,来进行C语言的编写,此过程是工程师一行一行编辑出来的,也非常耗时间,整个周期大约在30天左右(视文件大小,正常100K来计算)。费用1000/K。所以整个工程反c工程下来,花费很高,有时候不如重新开发了。
4、根据客户提供的样机,进行调试。调试没问题后,让客户进行确认。
首先,这一堆.bin文件是没法直接打开的,bin文件可以属于任何类型,多见于镜像引导文件,也是属于分割缓存视频的引导链,此问题显然是后者,视频被很多AES128加密的bin文件,属于缓存视频的一种,这种被分割的视频其实是被分成了很多在线内存引导链,属于M3U8格式视频。
M3U8格式视频解密由于我项⽬中最近⽤到了关于m3u8视频解析和在本地播放的需求,碰到了需要解密bin⽚段的场景,固记录下来分析M3U8⽂件当拿到⼀个m3u8格式的地址时,⾸先将m3u8格式的⽂件⽤\n隔开(或者将文件格式重命名改为txt格式用记事本打开)
遍历并检测有没有以EXT-X-KEY:开头或者包含的⽚段,这个⽚段就是m3u8格式的加密信息⼀般命名为:#EXT-X-KEY:METHOD=AES-128,URI="xx.key",IV=xxx这⾥只分析解密⽅法为aes-128解密的逻辑:aes128解密需要两个参数⼀个是key,⼀个是偏移量(iv)⾸先URI开头指向的通常是⼀个链接这个链接如果以http开头那么直接请求就可以,如果不是那⼤多数情况下都是以请求m3u8⽂件的地址去掉最后⼀个/前⾯的地址拼接起来的,当我们请求到的地址就是解密所需要的key⼤多数情况如果bin⽚段不是以http开头也可以通过这种⽅式拿到真实的地址⼀般EXT-X-KEY⾥⾯会包含iv参数,iv参数是⼀个32位的字符串,如果包含直接拿到iv参数就可以,如果不包含则是以bin地址所在m3u8⽂件中的序列号作为iv参数,⽐如第⼀个ts⽚段,那么他的iv值就是000...0001 (31个0和1),这样拿到了偏移量(iv)当我们拿到ts⽚段后直接⽤aes和刚刚拿到的key和偏移量去解密得到的⽚段就是新的bin⽚段播放该视频⽂件此时看到⽂件夹⾥的bin⽚段全部是可以播放的了,然后我们在把m3u8⽂件的ts⽚段地址指向对应的解密后的ts⽚段,即可实现本地播放m3u8视频因为已经是解密后的视频了所以需要把m3u8⽂件的#EXT-X-KEY部分去掉否则还是会不能播。
想在本地播放有两种方法,分为电脑和手机两种类型。
电脑的话可以下载安装 ffmpeg或者N_m3u8DL-CLI进行合并视频具体自行百度查询 *** 作,今天小伙伴们主要不会用手机 *** 作,下面我教大家!
手机的话可以在文件管理中找到该缓存文件,一般缓存的bin文件会打包在一个文件夹里,仔细观察不难发现其中不止有bin文件还有一个key文件和名为index.m3u8文件。
手机下载安卓版ffmpeg安装并打开
前面分析了m3u8文件内容和bin文件解密方法,我们在输入文件中找到index.m3u8文件,输出文件自定义,点击合并等待完成即可
也可以下载VLC Media Player播放器后,先在文件管理中找到index.m3u8文件按住后选择打开方式为vlc播放器即可!!!
首先要纠正的是,对于BIN文件,不存在打开之说。BIN是纯二进制文件,即使有一些软件可以对它进行编辑,那也是在你对它的所改动字节有确切了解时,改动才有意义。 BIN文件有三种类型:纯程序目标代码,纯数据,程序代码与数据的结合体。UltraEdit32软件可以打开欢迎分享,转载请注明来源:内存溢出
评论列表(0条)