Silent0Wings/SteganoPixelCrypt

GitHub: Silent0Wings/SteganoPixelCrypt

一款将文本字符映射为像素颜色以实现可视化隐写编码的 C++ 工具,支持完整 Unicode 字符集并可生成可解码的彩色图像。

Stars: 0 | Forks: 0

# SteganoPixelCrypt **SteganoPixelCrypt** 是一款 **C++** 工具,通过将每个字符转换为像素颜色来对文本进行可视化加密。 它可以将整个文档转换为彩色图案,随后可被解码回原始内容。 **轻量级**、**速度快**,非常适合基础的[隐写术](https://en.wikipedia.org/wiki/Steganography)。 它支持完整的 **32位 Unicode 范围**([UTF-32](https://en.wikipedia.org/wiki/UTF-32)), 涵盖所有 **4,294,967,296 个码位**,包括: - **中文**:你, 爱, 学, 生 - **日文**:日, 本, 語, 学 - **阿拉伯语**:ع, م, ر, ب - **俄语**:Ж, Д, Р, Я - **表情符号**:😊, 🚀, 🔥, 💡 - **符号**:∞, §, ©, ✓ - **私用区**、**稀有**和**未分配**字符 ## 示例代码 这是一个最简示例,展示了如何加载 [UTF-32](https://en.wikipedia.org/wiki/UTF-32) 文本文件, 并使用 `SteganoPixelCrypt` 将其转换为加密图像: ``` #include "SteganoPixelCrypt.h" int main() { std::u32string text = loadUTF32FromFile("./Book/Universal_Declaration_of_Human_Rights.txt"); SteganoPixelCrypt pc; pc.processString(text); // Outputs image(s) in the same folder as the source text } ``` ## 加密作品 以下是使用 **SteganoPixelCrypt** 进行可视化加密的著名文本、歌曲和序列示例。 每个条目均包含源链接及其对应的 `Data.bmp` 输出结果。 | 标题 | 作者/来源 | 加密图像 | | ------------------------------------------------------------------------------------------------------------- | --------------------------------------- | ----------------------------------------------------------------------------------------------- | | [白鲸](https://www.gutenberg.org/ebooks/2701) | Herman Melville | | | [德古拉](https://www.gutenberg.org/files/345/345-h/345-h.htm) | Bram Stoker | | | [福尔摩斯探案集](https://www.gutenberg.org/cache/epub/1661/pg1661.txt) | Arthur Conan Doyle | | | [相对论:狭义与广义理论](https://www.gutenberg.org/ebooks/5001) | Albert Einstein | | | [莎士比亚全集](https://www.gutenberg.org/cache/epub/100/pg100.txt) | William Shakespeare | | | [智人 DNA](https://www.ncbi.nlm.nih.gov/datasets/taxonomy/9606/) | NCBI | | | [PBCV‑1 基因组 (NC_000852.5)](https://www.ncbi.nlm.nih.gov/nuccore/NC_000852.5) | _Paramecium bursaria_ Chlorella virus 1 | | | [10亿位圆周率](https://stuff.mit.edu/afs/sipb/contrib/pi/pi-billion.txt) | 1,000,000,000 Digits of π | | | [世界人权宣言](https://www.un.org/en/about-us/universal-declaration-of-human-rights) | United Nations | | | [波西米亚狂想曲(歌词)](https://genius.com/Queen-bohemian-rhapsody-lyrics) | Queen | | **注意:** 除 Queen 受版权保护的 _Bohemian Rhapsody_ 外,以上所有条目均属于公共领域。 请仅将其用于教育和演示目的。 ## 待办事项(未来功能) - 将图像解码回文本 - 设置自定义图像尺寸与内边距 - 使用自定义调色板 - 批量转换多个文件 - 添加密码锁 - 制作一个简单的 GUI - 检查解码错误 - 在图像中存储标题/作者信息 ## 文件结构 每个编码后的文件会生成两个输出: - `Data.bmp`:文本的可视化表示 - `Key.bmp`:用于解码的颜色键映射 这些文件被保存在源文本旁边的 `Book/`、`Song/` 或 `Dna/` 等子文件夹中。 日后可使用相同的 key 将其解码还原。 ## 构建与运行 ### Windows ``` g++ -std=c++17 -o "src\main.exe" src\main.cpp -Wall ./main.exe ``` ### macOS / Linux ``` g++ -std=c++17 -o "src\main.exe" src\main.cpp -Wall ./main ```
标签:C++, DNS 反向解析, 图像处理, 数据擦除, 数据编码, 文本转换, 隐写术