CleasbyCode/pdvrdt_rust

GitHub: CleasbyCode/pdvrdt_rust

基于 PNG 数据块的高容量隐写术 CLI 工具,支持加密压缩后嵌入最大 2GB 文件并可从主流社交平台图片中提取。

Stars: 0 | Forks: 0

# pdvrdt_rust ***这是我的 C++ 隐写术工具 [***pdvrdt***](https://github.com/CleasbyCode/pdvrdt) 的实验性 Rust 移植版*** ***pdvrdt*** 是一个快速、易用的隐写术命令行工具,用于通过 **PNG** 载体图像隐藏和提取任意文件类型。 这里还有一个 [***Web 版本***](https://cleasbycode.co.uk/pdvrdt/app/),你可以立即使用,作为下载和编译 CLI 源代码的便捷替代方案。Web 文件上传限制为 **20MB**。 ![演示图片](https://github.com/CleasbyCode/pdvrdt_rust/blob/main/demo_image/prdt_395918.png) *图像:“Wolf” / ***PIN: 7699785107511381336**** 与在载体图像像素中隐藏数据的常见隐写术方法([***LSB***](https://ctf101.org/forensics/what-is-stegonagraphy/)) 不同,***pdvrdt*** 将文件隐藏在 ***PNG*** 图像的各种 ***块(chunks)*** 中,例如 iCCP 和 IDAT。 你可以隐藏最大 ***2GB*** 的任意文件类型,尽管兼容的托管网站(*如下所列*)有其自带的 ***更小*** 的尺寸限制和 *其他要求。 为了增加存储容量和更好的安全性,你嵌入的数据文件使用 ***zlib*** 压缩,并使用 ***libsodium*** 加密库进行加密。 ## 用法 (Linux) ``` $ sudo apt install libsodium-dev pkg-config $ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh $ cargo build --release Build complete. Binary at 'target/release/pdvrdt-rs'. $ sudo cp target/release/pdvrdt-rs /usr/bin $ pdvrdt-rs Usage: pdvrdt-rs conceal [-m|-r] pdvrdt-rs recover pdvrdt-rs --info $ pdvrdt-rs conceal your_cover_image.png your_secret_file.doc Platform compatibility for output image:- ✓ X-Twitter ✓ ImgPile ✓ PostImage ✓ ImgBB ✓ Flickr Saved "file-embedded" PNG image: prdt_12462.png (143029 bytes). Recovery PIN: [***2166776980318349924***] Important: Keep your PIN safe, so that you can extract the hidden file. Complete! $ pdvrdt-rs recover prdt_12462.png PIN: ******************* Extracted hidden file: your_secret_file.doc (6165 bytes). Complete! Please check your file. ``` ## 兼容平台 *发布大小限制以载体图像 + 压缩数据文件的总大小为准:* * ***Flickr*** (**200MB**), ***ImgBB*** (**32MB**), ***PostImage*** (**32MB**), ***Reddit*** (**19MB** | ***-r 选项***), * ***Mastodon*** (**16MB** | ***-m 选项***), ***ImgPile*** (**8MB**), ***X-Twitter*** (**5MB** + ****尺寸限制,见下文***) *X-Twitter 图像尺寸限制:* * ****PNG-32/24*** (*真彩色*) **68x68** 最小 - **900x900** 最大。 * ***PNG-8*** (*索引色*) **68x68** 最小 - **4096x4096** 最大。 https://github.com/user-attachments/assets/76732196-815b-45ac-b71d-6e1aca672e25 https://github.com/user-attachments/assets/7a1557d1-4772-4d3d-94a6-ec58d0977a59 *图像来源:***"Red_Dragon / [@ultra_arcane](https://x.com/ultra_arcane)"**** pdvrdt ***模式*** 参数: ***conceal*** - 压缩、加密你的秘密数据文件,并将其嵌入到 ***PNG*** 载体图像中。 ***recover*** - 从 ***PNG*** 载体图像中解密、解压并提取隐藏的数据文件。 pdvrdt ***conceal*** 模式平台选项: "***-m***" - 要创建适合在 ***Mastodon*** 平台上发布的兼容“文件嵌入”***PNG*** 图像,你必须在 ***conceal*** 模式下使用 ***-m*** 选项。 ``` $ pdvrdt-rs conceal -m my_image.png hidden.doc ``` "***-r***" - 要创建适合在 ***Reddit*** 平台上发布的兼容“文件嵌入”***PNG*** 图像,你必须在 ***conceal*** 模式下使用 ***-r*** 选项。 ``` $ pdvrdt-rs conceal -r my_image.png secret.mp3 ``` 在 ***Reddit*** 网站上,选择“***Create Post***”,然后选择“***Images & Video***”选项卡,以附加并发布你的 ***PNG*** 图像。 要正确从 ***X-Twitter*** 或 ***Reddit*** 下载图像,请在保存之前点击帖子中的图像以将其完全展开。 ## 第三方库 本项目使用了以下第三方库: - [**libsodium**](https://libsodium.org/) 用于加密功能。 - [**LICENSE**](https://github.com/jedisct1/libsodium/blob/master/LICENSE) - Copyright (c) 2013-2025 Frank Denis (github@pureftpd.org) - **zlib**: 通用压缩库 - 许可证:zlib/libpng license (参见 [***LICENSE***](https://github.com/madler/zlib/blob/develop/LICENSE) 文件) - Copyright (C) 1995-2024 Jean-loup Gailly and Mark Adler ##
标签:CLI, CTF工具, DNS 反向解析, Libsodium, LSB隐写替代, meg, PNG图像处理, Rust, Steganography, WiFi技术, Zlib, 信息安全, 可视化界面, 密码学, 手动系统调用, 数据压缩, 数据隐藏, 文件加密, 漏洞搜索, 红色团队, 网络安全, 网络流量审计, 蓝队检测, 通知系统, 通知系统, 隐写术, 隐私保护