ehrhart/devils-crush-tg16-keygen

GitHub: ehrhart/devils-crush-tg16-keygen

逆向工程并实现了 TurboGrafx-16 游戏 Devil's Crush 的密码编码与解码算法,附带完整的分析文档和 Web 演示。

Stars: 0 | Forks: 0

# devils-crush-tg16-keygen TurboGrafx-16 / PC Engine 上 **Devil's Crush** 的密码编码器和解码器(美版,ROM `Devil's Crush (USA).pce`,CRC32 `157B4492`)。 Devil's Crush 的密码由 10 个字母(1 人模式)或 18 个字母(2 人模式)组成,全部为 `A-Z`。它编码了玩家的分数(显示值,100 的倍数,最高可达 1,677,721,500)以及一个“balls”字节。最后一个字母是校验和。 本仓库包含: - `devilpw/` - Python 库和 CLI。 - `docs/index.html` - Web 生成器演示的源代码。 - `notes/analysis.md` - 算法的完整逆向工程说明文档。 ## Web 演示 可用于生成密码的 Web 版本可在 获取 ## 安装 ``` git clone https://github.com/ehrhart/devils-crush-tg16-keygen.git cd devils-crush-tg16-keygen uv run devilpw decode DEVILSATAN ``` ## CLI ``` # 解码现有密码 devilpw decode DEVILSATAN # 为指定分数和球数生成 1P 密码 devilpw encode --score 100000000 --balls 9 devilpw encode --score 100000000 --balls 0x10 --seed F # 生成 18 位 2P 密码 devilpw encode2p --p1-score 100000000 --p1-balls 5 \ --p2-score 50000000 --p2-balls 5 # 查找包含特定字符串的密码 devilpw search SATAN devilpw search DEVIL --limit 50 devilpw search CRUSH --2p ``` `--balls` 接受十进制或 `0x` 前缀的十六进制数。`--seed` 是前导字母(任何 `A..Z`;如果所选种子无法表示目标字节,编码器将尝试替代方案)。`search` 用于查找包含给定子串的密码。`--2p` 搜索 18 个字符的密码;`--limit N` 限制结果数量(默认为 20)。 ## 库 ``` from devilpw import decode, encode_1p, encode_2p, search, verify_checksum verify_checksum("DEVILSATAN") # True decode("DEVILSATAN") # {'p1_bytes': (...), 'p1_score': 955_719_100, 'p1_balls_byte': 6} encode_1p(score=100_000_000, balls_byte=9) # 'AAA...' encode_2p(p1_score=100_000_000, p1_balls_byte=5, p2_score= 50_000_000, p2_balls_byte=5) search("DEVIL") # ['DEVILAAAAI', 'DEVILAAABJ', ...] ``` ## 工作原理 完整的逆向工程分析可在 [`notes/analysis.md`](notes/analysis.md) 中找到。 ## 许可证 本项目基于 MIT 许可证授权。详情请参阅 [LICENSE](LICENSE)。
标签:Devils Crush, PC Engine, Python, TurboGrafx-16, 云资产清单, 哈希校验, 复古游戏, 多模态安全, 密码学, 密码生成器, 手动系统调用, 数据可视化, 无后门, 游戏修改, 游戏存档, 算法分析, 编码解码, 逆向工具, 逆向工程