wansors/myfaba-hacks

GitHub: wansors/myfaba-hacks

一套用于逆向和定制 MyFaba 儿童故事盒的工具集,支持文件加解密、自定义人偶内容制作及 NFC 标签编程。

Stars: 102 | Forks: 26

# myfaba-hacks 这是一套用于自定义和增强您的 MyFaba 和 Faba+ 故事盒的工具与脚本合集。通过这些易于使用的 hacks 和 mods,解锁新功能,个性化您的体验,并深入探索互动故事的世界。 ## 创建您自己的人偶 (原版 Faba) 对于原版 FABA,您也可以使用 [Python 替代实现](python/README.md)。 创建一个包含 Faba 格式歌曲的文件夹 ``` ./createFigure.sh ``` 例如 ID 为 0742 的人偶 ``` ./createFigure.sh 0742 /home/user/mysongs ``` 然后将其复制到您的 Faba 盒子中。 写入包含人偶 ID 的 NFC 标签,即可开始使用! ## 创建您自己的人偶 (Faba+) 创建一个包含 Faba 格式歌曲的文件夹 ``` ./createFigureFabaPlus.sh ``` 例如 ID 为 0742 的人偶 ``` ./createFigureFabaPlus.sh 0742 /home/user/mysongs ``` 然后将其复制到您的 Faba 盒子中(参见 FAQ)。 ## 加密与解密文件 ### 解密文件 ``` javac MKIDecipher.java java MKIDecipher ../../K0403_CP01 ``` ### 加密文件 ``` javac MKICipher.java java MKICipher ../../K0403_CP01.decipher ``` ## 使用 Docker 镜像 如果您使用的是 Windows 或不想手动设置脚本和依赖项,可以使用基于 Docker 的替代方案在容器化环境中运行脚本。此方法无需在您的系统上安装 Java 或其他工具,并提供了一个干净、可移植的设置环境。 要使用 Docker,请遵循以下说明。请注意,您的系统上**必须安装 Docker** 这些步骤才能生效。您可以从[这里](https://www.docker.com/get-started)下载 Docker。 ### 步骤 1:构建 Docker 镜像 首先,根据提供的 Dockerfile 构建 Docker 镜像。此步骤只需执行一次。 打开终端 (Linux/macOS) 或命令提示符/PowerShell (Windows) 并运行: #### 在 Linux/macOS 上: ``` docker build -t createfigure-image . ``` #### 在 Windows 上: 打开 **Command Prompt** 或 **PowerShell**,然后运行相同的命令: ``` docker build -t createfigure-image . ``` 这将创建一个名为 `createfigure-image` 的 Docker 镜像,其中包含运行脚本所需的所有依赖项。 ### 步骤 2:运行 Docker 容器 构建镜像后,使用以下命令在容器内运行 `createFigure.sh` 脚本。 例如,要使用名为 `my-songs` 的文件夹中的歌曲文件创建 ID 为 `999` 的人偶,请使用以下命令: #### 在 Linux/macOS 上: ``` docker run --rm -v /path/to/my-songs:/source-folder createfigure-image 0999 /source-folder ``` #### 在 Windows 上: 打开 **Command Prompt** 或 **PowerShell** 并运行以下命令: ``` docker run --rm -v C:\path\to\my-songs:/source-folder createfigure-image 999 /source-folder ``` 请确保将 `C:\path\to\my-songs` 替换为包含 `.mp3` 格式歌曲的文件夹的实际路径。此文件夹将被挂载到 Docker 容器内的 `/source-folder` 目录。您可以使用这个确切的名称。 #### 命令解释: - `docker run`:运行 Docker 容器。 - `--rm`:运行完成后自动删除容器。 - `-v /path/to/my-songs:/source-folder`:将您本地的 `my-songs` 文件夹映射到容器内的 `/source-folder` 目录。请根据您的操作系统确保此路径正确。 - `createfigure-image`:您在步骤 1 中创建的 Docker 镜像的名称。 - `0999 /source-folder`:这些是传递给 `createFigure.sh` 脚本的参数,其中 `0999` 是人偶 ID,`/source-folder` 是容器内源文件夹的路径。 这将在 Docker 容器内运行脚本,并将文件输出到 `/source-folder` 目录,该目录映射到您本地的 `my-songs` 文件夹。 ### 运行命令后会发生什么 脚本会处理您的 `.mp3` 文件,并在您的 `my-songs` 目录中创建一个 `K0999` 文件夹。此文件夹包含修改后的文件(例如 `CP01`、`CP02` 等),可以将其复制到您的 Faba 盒子中。 ### 步骤 3:遵循剩余说明 运行 Docker 容器后,请遵循本 README 中[创建您自己的人偶](#create-your-own-figure)部分的其余说明,将生成的文件复制到您的 Faba 盒子并写入 NFC 标签。 ## 已知人偶 ID 有关已知人偶 ID 及其对应角色的列表,请查看我们的 [TAGS 列表](TAGS.md)。 ## 常见问题 有关常见问题和故障排除提示,请查看我们的 [FAQ](FAQ.md)。 此部分提供了指向单独 FAQ.md 文件的链接,您可以在其中包含常见问题及其解答。请确保在与 README.md 文件相同的目录中创建 FAQ.md 文件。 ## 了解更多 要了解 MyFaba 的工作原理以及分析和定制它的过程,请阅读我们的详细文章: [破解 MyFaba:故事盒定制的教育之旅](https://medium.com/@wansors/hacking-myfaba-an-educational-journey-into-storytelling-box-customization-cc6fc5db719d)
标签:Aarch64, Cutter, DIY玩具, Docker容器, Faba+, Java工具, JS文件枚举, MKIDecipher, MyFaba, NFC写入, NFC标签, Python, 个性化定制, 互动讲故事, 儿童科技, 攻击面发现, 故事机, 文件解密, 无后门, 智能音箱, 硬件改装, 自制内容, 请求拦截, 逆向工具, 音频加密, 音频处理, 黑客技巧