chandu-kc/Steganography

GitHub: chandu-kc/Steganography

用纯 C 语言实现的 LSB 图像隐写术工具,在图像像素的最低有效位中嵌入和提取秘密数据,专为嵌入式与资源受限系统设计。

Stars: 1 | Forks: 0

# 🕵️ C 语言实现隐写术 ## 📋 关于 本项目使用 C 语言实现了**图像隐写术**,重点在于将数据安全地隐藏在图像文件中,同时将视觉变化降至最低。 它演示了如何在**比特级别**嵌入和提取秘密信息,这与**嵌入式系统、安全领域和底层 C 语言编程**高度相关。 ## 🎯 功能 - 使用 LSB 技术将秘密文本数据嵌入图像文件 - 从隐写图像中提取隐藏数据 - 在字节/比特级别工作,实现精细控制 - 使用纯 C 编写(无需庞大的外部库) - 专为嵌入式/低内存环境而设计 ## 🏗️ 高层设计 | 组件 | 作用 | |----------|------| | **Encoder** | 读取输入图像 + 秘密信息并生成隐写图像 | | **Decoder** | 读取隐写图像并重构隐藏信息 | | **Bit utilities** | 设置、清除和读取比特位以进行 LSB 操作 | _如果需要,稍后可以在此处添加一个简单的框图。_ ## 💻 技术栈 - **语言:** C (100%) - **概念:** 位运算,文件处理,图像数据操作 - **领域:** 安全,数据隐藏,嵌入式系统 ## 📁 项目结构 ``` Steganography/ ├── src/ │ ├── encode.c # Logic for hiding data inside image │ ├── decode.c # Logic for extracting hidden data │ ├── utils.c # Common helpers (bit ops, file ops) │ └── main.c # Menu / CLI handling ├── include/ # Header files (if applicable) ├── sample/ │ ├── input.bmp # Original image │ ├── output.bmp # Image with hidden data │ └── secret.txt # Example secret message └── README.md ``` _请根据您的实际文件调整名称。_ ## 🚀 如何构建和运行 ``` # 构建 gcc -o stego Steganography/src/*.c # Encode (示例) ./stego encode input.bmp secret.txt output.bmp # Decode (示例) ./stego decode output.bmp recovered.txt ``` ## 🔐 用例 - 在图像中安全地嵌入凭据或 ID - 水印或所有权标记 - 针对受限系统的隐蔽通信 ## 🧪 可能的改进 - 为秘密数据添加基于密码的加密 - 支持多种图像格式 - 添加自动化测试和 CI 以提高可靠性 **开发者:** Chandan K C – 嵌入式固件开发工程师 (STM32, ESP32, FreeRTOS)
标签:DNS 反向解析, LSB算法, 位运算, 图像隐写术, 客户端加密, 嵌入式系统, 数据隐藏