eshwarikollapudi/Quantum-Safe-DNA-Codon-Encryption-with-Image-Steganography
GitHub: eshwarikollapudi/Quantum-Safe-DNA-Codon-Encryption-with-Image-Steganography
一个基于 Python 的多层加密实验项目,融合 DNA 密码子编码、模拟 BB84 量子密钥分发、同态加密与 LSB 图像隐写术,在 Raspberry Pi 上演示抗量子安全通信流程。
Stars: 0 | Forks: 0
# 🧬 结合图像隐写术的抗量子 DNA 密码子加密
一个基于 Python 的安全项目,它结合了 **DNA 密码子加密**、**BB84 量子密钥分发 (QKD)**、**同态加密** 和 **图像隐写术**,为实现安全通信提供了一种多层次的防护方案。该系统将明文转换为 DNA 密码子,使用模拟的量子生成密钥保护编码,对数据进行加密,并最终利用最低有效位 (LSB) 隐写术将其隐藏在图像中。本项目专为 Raspberry Pi 设计,演示了如何将现代密码学技术整合到轻量级嵌入式系统中以实现安全的数据传输。
## 📖 概述
随着量子计算的快速发展,传统的加密技术预计将变得越来越容易受到攻击。本项目通过结合量子密码学、仿生加密和数字隐写术的概念,提出了一种安全通信框架。
系统首先使用自定义的编码算法将消息转换为 DNA 密码子。随后,模拟的 BB84 量子密钥分发协议会生成一个安全的 256 位加密密钥,用于随机化密码子映射。接着,加密后的密码子将受到 Paillier 同态加密方案的保护,最终利用 LSB 图像隐写术将其嵌入到数字图像中。图形用户界面允许用户安全地编码和解码消息,在保持多层安全性的同时,确保系统易于使用。
# 🎯 目标
- 开发基于 DNA 密码子的加密系统。
- 实现 BB84 量子密钥分发以生成安全密钥。
- 引入同态加密以增强安全性。
- 利用 LSB 隐写术将加密信息隐藏在数字图像中。
- 设计用户友好的 GUI 以进行编码和解码。
- 在 Raspberry Pi 上演示完整的工作流程。
# ✨ 功能
- 🔐 DNA 密码子加密
- 🔑 BB84 量子密钥分发(模拟)
- 🛡️ Paillier 同态加密
- 🖼️ LSB 图像隐写术
- 🔒 基于密码的动态密码子映射
- 💻 交互式 Python GUI
- 🍓 兼容 Raspberry Pi
- 📷 自动转换 PNG 图像
# 🏗️ 系统架构
```
Plain Text
│
▼
DNA Codon Encoding
│
▼
BB84 Quantum Key Distribution
│
▼
Homomorphic Encryption
│
▼
LSB Image Steganography
│
▼
Stego Image
│
▼
Image Decoding
│
▼
DNA Codon Decoding
│
▼
Original Message
```
# 🔄 项目工作流程
1. 用户输入一条秘密消息。
2. 将明文转换为 DNA 密码子。
3. BB84 量子密钥分发生成安全的加密密钥。
4. 将生成的密钥应用于动态密码子映射。
5. 使用同态加密保护已加密的密码子。
6. 利用 LSB 隐写术将加密数据嵌入图像中。
7. 生成并存储包含隐藏信息的隐写图像 (stego image)。
8. 在解码过程中,提取隐藏的数据,对其进行解密,并将其转换回原始消息。
# 🛠️ 使用的技术
- Python
- Raspberry Pi
- Tkinter
- ttkbootstrap
- Pillow (PIL)
- NumPy
- Matplotlib
- PHE (Paillier 同态加密)
# 📂 项目结构
```
Quantum-Safe-DNA-Codon-Steganography/
│
├── codons.py
├── stego_image.py
├── gui_stego_modern.py
├── bb84_visual_gui.py
├── he_paillier.py
├── he_demo.py
├── requirements.txt
├── README.md
├── LICENSE
├── images/
├── docs/
└── sample_images/
```
# ⚙️ 安装说明
### 克隆代码库
```
git clone https://github.com/your-username/Quantum-Safe-DNA-Codon-Steganography.git
```
```
cd Quantum-Safe-DNA-Codon-Steganography
```
### 安装依赖项
```
pip install -r requirements.txt
```
# ▶️ 用法
### 启动 GUI
```
python gui_stego_modern.py
```
### 运行 BB84 QKD 可视化工具
```
python bb84_visual_gui.py
```
### 编码消息
```
python stego_image.py encode cover.png stego.png "Hello World"
```
### 解码消息
```
python stego_image.py decode stego.png
```
# 📊 结果
本项目成功演示了:
- 明文与 DNA 密码子之间的精确转换。
- 使用 BB84 模拟安全生成 256 位加密密钥。
- 成功实现 Paillier 同态加密。
- 使用 LSB 隐写术将加密数据不可见地嵌入 PNG 图像中。
- 使用正确的密码准确恢复原始消息。
- 在 Raspberry Pi 上高效执行,使其适用于轻量级嵌入式安全应用。
# 🚀 未来展望
- 与真实的量子密钥分发硬件集成。
- 在多台 Raspberry Pi 设备之间进行安全通信。
- 移动端和基于 Web 的界面。
- 支持后量子密码算法。
- 利用云连接实现安全的 IoT 通信。
- 增强的 DNA 密码子随机化技术。
# 📸 截图
添加以下内容的截图:
- 主 GUI
- BB84 QKD 可视化工具
- DNA 密码子编码
- 图像编码
- 图像解码
- 隐写图像 (Stego Image)
- Raspberry Pi 设置
# 👩💻 作者
**K. L. Eshwari**
B.Tech,电子与通信工程
SRM University-AP
**项目指导:**
**Prof. Rupesh Kumar**
# 📄 许可证
该项目基于 **MIT License** 授权。
## ⭐ 支持
如果您觉得这个项目有趣或有用,请考虑在 GitHub 上给它点一个 ⭐。这将有助于支持该项目并鼓励进一步的开发。
标签:DNA编码, DNS 反向解析, GUI, Python, 同态加密, 图像隐写术, 密码学, 手动系统调用, 无后门, 逆向工具, 量子密钥分发