o7-machinehum/phantomdrive

GitHub: o7-machinehum/phantomdrive

基于 CH569W SoC 的开源硬件级加密U盘,通过密码文件触发隐藏分区的原地加解密与自动卸载,实现数据的物理层隐蔽保护。

Stars: 112 | Forks: 6

![](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/46a1888caf013833.png) Phantomdrive 是一个开源的加密 USB 磁盘,具有隐藏其第二分区的隐蔽机制。要解密它,你必须创建一个名为 `unlock.txt` 的文件,并在其中以 `password:addpasswordhere` 的格式写入你的密码,这用于派生 AES-256 密钥。该磁盘会自动卸载自身,重新挂载剩余磁盘,并进行原地加密和解密。它使用 CH569W SoC,该芯片具有 USB3、SDIO 以及一个 AES 硬件模块。它可以通过 USB 使用 `wch-ch56x-isp` 库进行编程。 ``` |-- ee # Hardware files |-- Makefile |-- readme.md # This files |-- test # Test the cypto components |-- ref # Reference docs |-- src # Firmware |-- tests # Verification scripts |-- wch-ch56x-bsp # Board support package `-- wch-ch56x-isp # Programming software ``` # 入门指南 ``` git submodule update --init --recursive --checkout --force cd wch-ch56x-isp make # Build the ISP tool ``` ## 安装工具链 HydraUSB3 项目需要打过补丁且支持 `WCH-Interrupt-fast` interrupt 属性的 GCC。从 HydraUSB3 项目下载 xpack GCC: ``` cd /tmp curl -sL -o riscv-gcc-xpack.tar.gz \ "https://github.com/hydrausb3/riscv-none-elf-gcc-xpack/releases/download/12.2.0-1/xpack-riscv-none-elf-gcc-12.2.0-1-linux-x64.tar.gz" tar xzf riscv-gcc-xpack.tar.gz sudo cp -r xpack-riscv-none-elf-gcc-12.2.0-1/* /usr/local/ ``` ## 调试 ``` make UART=1 # Enable UART make UART=1 DEBUG_USB=1 # Enable USB Debugging ``` ## 构建和烧录项目 ``` make # 移除闪存盘 # 按住 boot 按钮的同时,插入 ./wch-ch56x-isp/wch-ch56x-isp -d=off # This is needed just one to disable debug mode make flash ``` ## 解锁磁盘 ``` sudo echo "password:YourPasswordHere13245" > /mnt/unlock.txt ``` # 发布硬件 ``` ./scripts/release_hardware.sh ```
标签:AES-256加密, CH569W, HTTP工具, HydraUSB3, meg, RISC-V, SDIO, SoC, USB 3.0, wch-ch56x-isp, 信息安全, 加密U盘, 可编程U盘, 固件开发, 存储加密, 客户端加密, 嵌入式系统, 开源硬件, 数据销毁, 硬件加密, 硬件加密引擎, 硬件安全, 硬件安全模块, 网络安全, 自毁U盘, 隐私保护, 隐藏分区, 隐身分区