foxhackerzdevs/stegofox

GitHub: foxhackerzdevs/stegofox

一款高性能加密隐写 CLI,通过 LSB 嵌入技术将 AES-256-GCM 加密后的任意文件隐藏在 PNG 图像中。

Stars: 2 | Forks: 0

# StegoFox Pro 🦊 **高性能加密隐写 CLI。** 使用 LSB(最低有效位)嵌入技术将任意文件隐藏在 PNG 图像中,并在处理像素之前可选地使用 AES-256-GCM 进行加密。 ## 功能 - LSB 隐写术 —— 在载体图像的像素数据中嵌入任意二进制数据 - 嵌入前可选的 AES-256-GCM 加密(PBKDF2-HMAC-SHA256,10万次迭代) - 无损 PNG 输出 —— 嵌入的数据在保存/重新加载后能完整保留 - 密码错误和 payload 损坏检测会正常失败(不崩溃,不输出乱码) - 容量检查 —— 在执行任何操作之前,会拒绝嵌入超出载体图像容量的过大数据 ## 安装 ``` pip install -e . ``` ## 用法 ``` stegofox embed cover.png secret.txt -o output.png ``` ``` # 带有密码保护 stegofox embed cover.png secret.txt -o output.png --password hunter2 ``` ``` 🦊 StegoFox Pro 📸 Loading cover image: cover.png 🔐 Encrypting payload... 🧬 Embedding 712 bits... ✅ Successfully embedded! Saved to output.png ``` ``` stegofox extract output.png --password hunter2 ``` ``` 🦊 StegoFox Pro 🔍 Analyzing output.png 🔓 Decrypting... ✅ Extracted 33 bytes checking output messages exactly ``` ``` # 密码错误会正常失败,不会崩溃 stegofox extract output.png --password wrongpass ``` ``` 🦊 StegoFox Pro 🔍 Analyzing output.png 🔓 Decrypting... ❌ Decryption failed. Wrong password? ``` ## 工作原理 载体图像的每个 RGB 通道字节的最低有效位都会被替换为 payload 的一位。在 payload 之前会前置一个 4 字节的 magic signature (`SFOX`) 和一个 4 字节的长度标头,以便提取时能确切知道需要读取多少数据。输出始终保存为 PNG —— 有损格式(如 JPEG 等)会在保存时破坏嵌入的比特位。 使用 `--password` 时,payload 在嵌入前会使用 AES-256-GCM(认证加密)进行加密,因此密码错误将无法通过 auth-tag 检查,并返回清晰的错误提示,而不是输出乱码字节。 ## 环境要求 Python >= 3.8,`pillow`,`numpy`,`pycryptodome`。 ## 许可证 MIT
标签:DNS 反向解析, Python, 加密, 图像处理, 密码学, 手动系统调用, 无后门, 漏洞扫描器, 逆向工具, 隐写术