emoose/ExCrypt

GitHub: emoose/ExCrypt

ExCrypt 是一个用于替代 Xbox 360 XeCrypt 加密函数套件的开源实现,旨在为需要与 Xbox 360 现有代码和数据保持加密兼容性的场景提供可复现的解决方案。

Stars: 37 | Forks: 12

# ExCrypt ExCrypt 是一个开源的、可直接替换 Xbox 360 所使用的 XeCrypt 函数套件的替代品。 它的设计目标是尽可能与这些函数保持紧密兼容——这也许会以牺牲各种安全性和性能为代价。 因此,它仅应适用于需要与现有 Xbox 360 代码/数据保持兼容的场景。 ### 内容 ExCrypt 的目标是实现已知在 Xbox 360 上使用的 XeCrypt 函数。 我们仅针对从内核导出的、在 X360 启动期间使用的,或包含在游戏/应用程序内部的 XeCrypt 函数。 有关 XeCrypt 目标的列表、其状态以及任何与实现相关的说明,请查看[实现状态页面](https://github.com/emoose/ExCrypt/issues/5)。 ### 实现 代码必须确保设置与 360 函数完全相同的状态变量和返回值。 但这并不意味着函数的局部变量也必须一一对应——只要确保以某种方式被外部写入的数据(即可能被其他非 XeCrypt 代码处理的数据)保持精确一致即可,其余部分可以按我们想要的方式工作。 代码预期接收的是大端序数据,因此可能需要将这些数据转换为小端序才能进行处理。 我们希望您能尽力让代码更具可读性,而不是仅仅将汇编直接机械地转换为 C 代码(尽管这并非绝对强制要求,只要代码能真正正常工作即可)。 我们仅针对 x86 和 x64 架构——未来可能会支持其他平台,但目前支持其他架构并没有太大用处。 在可能的情况下,使用现有的、广为人知的密码学代码始终比自行编写更可取(除非 XeCrypt 的某些怪异特性使得这无法实现)。
标签:Xbox 360, XeCrypt, 云资产清单, 客户端加密, 密码学, 手动系统调用, 游戏机破解, 逆向工程