fr4nsyz/Steganography_Suite

GitHub: fr4nsyz/Steganography_Suite

一款基于 Rust + Tauri 的本地图像隐写工具,结合 LSB 隐写与 AES-256-GCM 加密,让用户可以将机密信息安全地隐藏在 PNG 图片中。

Stars: 2 | Forks: 0

# 隐写术套件 本项目是一个完全本地化的隐写术和加密工具,允许您在桌面 GUI 中将秘密信息编码和解码到图像文件中。 与大多数隐写工具不同,此工具添加了额外的 **AES-GCM 256位加密** 层,由主密码保护。换句话说:您的数据不仅隐藏在图像中,而且经过了加密。 ## 演示: https://github.com/user-attachments/assets/bac77eb6-2e48-4072-818a-d487007e1ad2 ## 这是什么? 这款应用程序允许您**在图像中编码和解码隐藏的信息**。它支持: - 在图像像素的最低有效位中**隐藏信息** - 使用密码的 **AES-256-GCM 加密** - **GUI**(使用 Tauri + JS 前端构建) 有了它,您就可以拥有一个**将密码隐藏在 PNG 中的密码管理器** :) ## 技术栈 | 层级 | 技术 | |-------------|---------------------------| | 后端 | Rust,`aes-gcm` crate | | GUI 运行时 | Tauri | | 前端 | JavaScript/JSX (Tauri 前端) | | 图像 I/O | Rust 图像库 | | 加密 | AES-GCM 256位加密 | | 格式 | 带 alpha 通道的 PNG | ## 用法 1. 从发布版本中下载名为 `stego` 的二进制文件。 2. 运行该应用程序。 3. 使用 GUI 进行以下操作: - 将秘密信息**编码**到图像中。 - 从图像中(使用您的密码)**解码**信息。 ### 输出 当您编码信息时,新图像将保存在**与原始图像相同的目录**中,但会重命名为: (sneaky). 示例: `passwords.png` → `passwords (sneaky).png` ## 工作原理 ### 第一步 – 加密 在编码之前,信息会由 [Rust `aes-gcm`](https://docs.rs/aes-gcm/latest/aes_gcm/) crate 提供的 **AES-256-GCM** 进行**加密**。 - 加密/解密在本地通过 PBKDF2 密码到对称密钥的派生过程完成。 ### 第二步 - 编码 - 通过位掩码读取给定的信息。 - 将每一位存储在每个像素的 **alpha 通道(不透明度字节)的 LSB** 中。 - 图像的**最后 32 个像素**用于保留信息长度(以位为单位)。 (回想起来,这是一个奇怪的设计,理想情况下大小应该放在前面) ### 第三步 – GUI(位于 `stego-face/` 目录下) GUI 将编码/解码流程封装成一个友好的前端,使用: - **Rust + Tauri** 作为后端 - **JavaScript** 作为前端(由 Tauri 处理桥接)
标签:AES加密, DNS 反向解析, HTTP工具, Rust, Tauri, 可视化界面, 图像隐写术, 密码学, 手动系统调用, 数据可视化, 数据隐藏, 桌面应用, 网络流量审计, 通知系统