LSB的Python脚本
时间: 2024-12-01 22:12:05 浏览: 4
LSB.zip_PythonLSB隐写_lsb隐写_specific5nm_steganography_隐写
在Python中,可以编写一些脚本来实现LSB隐写术。下面是一个简单的示例,展示如何使用PIL库(Python Imaging Library)来创建和提取隐藏在图像中的LSB信息:
```python
from PIL import Image
# 加载图像
def hide_data(image_path, secret_data):
img = Image.open(image_path)
width, height = img.size
new_image = Image.new('RGB', (width, height))
for x in range(width):
for y in range(height):
r, g, b = img.getpixel((x, y))
bit = int(b % 2) # 获取当前像素的最低位
if bit == 0: # 如果原位是0,则隐藏数据
new_image.putpixel((x, y), (r, g, b + 1)) # 修改最低位为1
else:
new_image.putpixel((x, y), (r, g, b - 1)) # 否则隐藏数据
new_image.save("hidden_" + image_path)
# 提取数据
def extract_data(image_path):
img = Image.open(image_path)
hidden_data = ""
width, height = img.size
for x in range(width):
for y in range(height):
r, g, b = img.getpixel((x, y))
bit = int(b % 2)
hidden_data += str(bit)
return hidden_data
# 示例
secret_data = "Hello LSB!"
hide_data("input.jpg", secret_data)
extracted_data = extract_data("hidden_input.jpg")
```
请注意,这只是一个基础示例,并未涉及错误处理或复杂的数据加密。实际应用中可能会更复杂,需要考虑数据压缩、密码保护等问题。
阅读全文