酷狗缓存文件kgtemp解密
来源:互联网 发布:淘宝卖家仓库在哪里 编辑:程序博客网 时间:2024/06/06 01:51
本文参考于https://www.cnblogs.com/KMBlog/p/6877752.html
大神破解了酷狗缓存文件kgtemp的加密解密方式,遂用python实现之。
kugou.py
# coding:utf-8import os import syskey = [0xAC, 0xEC, 0xDF, 0x57]def crack_file(argv): filename = argv[0] new_name = argv[1] file = open(filename, "rb") file.seek(1024, os.SEEK_SET) # 偏移量1024 changed_file = open(new_name, 'wb+') # 以二进制追加写的方式打开 try: b = file.read(4) # 一次读4个字节 type(b) --> 'bytes' while(b): for num,i in enumerate(b): h = i >> 4 # type(i) --> int l = i & 0xf kh = key[num] >> 4 kl = key[num] & 0xf y = l ^ kl y = (h ^ kh ^ y) << 4 | y temp = bytes([y]) # 将int转为bytes changed_file.write(temp) b = file.read(4) except Exception as e: print(e) else: print("成功") finally: file.close() changed_file.close()if __name__ == "__main__": crack_file(sys.argv[1:])
运行方式python3中运行 python kugou.py 要转换的文件名 新名字
检查新文件的MD5值,看是否和原文件的名字一样
import hashlibfilename = "xxxx"with open(filename, 'rb') as f: md5obj = hashlib.md5() md5obj.update(f.read()) hash = md5obj.hexdigest() print(hash)
注:
- 关于int转bytes问题见https://stackoverflow.com/questions/21017698/converting-int-to-bytes-in-python-3
- python二进制读写见http://blog.csdn.net/lesky/article/details/5727473
如
import structtemp = struct.pack("B", 12) # 将int转为bytes
阅读全文
0 0
- 酷狗缓存文件kgtemp解密
- 解决酷狗音乐缓存文件kgtemp文件无法播放的问题
- 闲来无事研究一下酷狗缓存文件kgtemp的加密方式
- 酷狗歌曲缓存kgtemp转mp3工具
- 解密浏览器缓存
- 解密浏览器缓存机制
- 文件缓存
- 文件缓存
- 缓存文件
- 文件缓存
- 文件缓存
- 文件缓存
- 文件加解密
- c#加密解密文件
- c#加密解密文件
- 文件DES加密解密
- 9.1.2 文件解密
- .config文件加密解密
- android 源码在线阅读,支持下载
- 端口号被占用
- 工具类
- oracle 常用函数
- Java Serializable(序列化)的理解和总结
- 酷狗缓存文件kgtemp解密
- cannot call member function without object
- ZeroMQ指南:第3章:高级请求-应答模式
- BaseAdapter的封装
- Mysql linux安装过程
- nginx-1.8.1源码安装
- JavaScript中的字符串
- 入坑集锦(一)
- ANR 笔记