CleasbyCode/pdvrdt

GitHub: CleasbyCode/pdvrdt

一款利用 PNG 数据块而非像素进行文件隐藏的隐写术命令行工具,支持加密压缩与多平台兼容。

Stars: 19 | Forks: 0

# pdvrdt ***pdvrdt*** 是一个快速、易用的隐写术命令行工具,用于通过 PNG 图像隐藏和提取任何文件类型。 此外还有一个 [***Web 版***](https://cleasbycode.co.uk/pdvrdt/app/),你可以立即使用它,作为下载和编译 CLI 源代码的便捷替代方案。Web 文件上传限制为 **20MB**。 ![Demo Image](https://github.com/CleasbyCode/pdvrdt/blob/main/demo_image/prdt_526501.png) *图像:“Wolf” / ***PIN: 1856140514119088821**** 与常见的在载体图像像素内隐藏数据的隐写方法 ([***LSB***](https://ctf101.org/forensics/what-is-stegonagraphy/)) 不同,***pdvrdt*** 将文件隐藏在 ***PNG*** 图像的各种 ***块*** 中,例如 iCCP 和 IDAT。 你可以隐藏最大 ***2GB*** 的任何文件类型,尽管兼容的托管站点(*如下所列*)有其各自 ***更小*** 的尺寸限制和 *其他要求。 为了增加存储容量和更好的安全性,你嵌入的数据文件会使用 ***zlib*** 压缩,并使用 ***libsodium*** 加密库进行加密。 ## 用法 (Linux) ``` $ sudo apt install libsodium-dev $ chmod +x compile_pdvrdt.sh $ ./compile_pdvrdt.sh Compiling pdvrdt (hardened release build)... Compilation successful. Executable 'pdvrdt' created. $ sudo cp pdvrdt /usr/bin $ pdvrdt Usage: pdvrdt conceal [-m|-r] pdvrdt recover pdvrdt --info $ pdvrdt 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 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 conceal -m my_image.png hidden.doc ``` "***-r***" - 要创建用于在 ***Reddit*** 平台上发布的兼容“*文件嵌入*”***PNG*** 图像,你必须在 ***conceal*** 模式下使用 ***-r*** 选项。 ``` $ pdvrdt conceal -r my_image.png secret.mp3 ``` 在 ***Reddit*** 网站上,选择“***Create Post***”,然后选择“***Images & Video***”标签,以附加并发布你的 ***PNG*** 图像。 要从 ***X-Twitter*** 或 ***Reddit*** 正确下载图像,请在保存前点击帖子中的图像将其完全展开。 ## 第三方库 本项目使用了以下第三方库: - **LodePNG** 由 Lode Vandevenne 开发 - 许可证:zlib/libpng (见 [***LICENSE***](https://github.com/lvandeve/lodepng/blob/master/LICENSE) 文件) - 版权所有 (c) 2005-2024 Lode Vandevenne - [**libsodium**](https://libsodium.org/) 用于加密功能。 - [**LICENSE**](https://github.com/jedisct1/libsodium/blob/master/LICENSE) - 版权所有 (c) 2013-2025 Frank Denis (github@pureftpd.org) - **zlib**: 通用压缩库 - 许可证:zlib/libpng 许可证 (见 [***LICENSE***](https://github.com/madler/zlib/blob/develop/LICENSE) 文件) - 版权所有 (C) 1995-2024 Jean-loup Gailly 和 Mark Adler ##
标签:C++, CLI, CTF工具, DNS 反向解析, ESC8, Libsodium, meg, PNG图片, Steganography, WiFi技术, Zlib压缩, 信息安全, 图片处理, 数据擦除, 数据隐匿, 数据隐藏, 文件加密, 机密性, 漏洞搜索, 社会工程学, 网络信息收集, 网络安全, 隐写术, 隐私保护