【LSB图像低位隐写】字符串隐写

按照自己的理解写了一个简单的字符串隐藏在图像中的python代码


前言

脱胎于内容安全的大作业~ 目前第一阶段,只完成了字符串隐藏在图像中

步过图像隐藏在图像应该异曲同工,之后实现~


一、代码

图像的output路径和input路径写死了,这个需要自己调整一下

from PIL import Image
# 定义 ANSI 转义码
green_background = "\033[48;5;113m"
red_background = "\033[48;5;203m"
yellow_background = "\033[48;5;226m"
blue_background = "\033[48;5;159m"
black_font = "\033[30m"
reset = "\033[0m"

###定义的一些具有背景色的print
def greebbk_print(str,end=None):
    if type(str) != type("123"):
        return -1
    print(green_background+black_font+str+reset,end=end)
def redbk_print(str,end=None):
    if type(str) != type("123"):
        return -1
    print(red_background+black_font+str+reset,end=end)
def yellowbk_print(str,end=None):
    if type(str) != type("123"):
        return -1
    print(yellow_background+black_font+str+reset,end=end)
def bluebk_print(str,end=None):
    if type(str) != type("123"):
        return -1
    print(blue_background+black_font+str+reset,end=end)


def string2binstream(string):
    if type(string)!=type('123'):
        redbk_print('[-]Invalid Input!')
        return -1
    string=str(len(string))+':'+string
    binstream=''
    for c in string:
        binstream+=bin(ord(c))[2:].zfill(8)
    return binstream
def binstream2string(binary_str):
    # 检查输入字符串是否只包含 '1' 或 '0'
    string=''
    if not all(bit in '01' for bit in binary_str):
        redbk_print("输入字符串应只包含 '1' 或 '0'.")
        return -1
    for i
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值