山石-Ultrasonic-好久不见45

.exe.config

复制代码
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
    </startup>
</configuration>

这段配置文件的作用是:

  • 指定应用程序运行时依赖的 .NET Framework 版本为 .NET Framework 4.7.2

  • 确保应用程序在启动时加载正确的运行时环境。

  1. 检查是否有原始图像。

  2. 弹出一个保存文件对话框,让用户选择保存加密图像的位置。

  3. 将图像保存为PNG格式,然后对图像数据进行加密。

  4. 将加密后的图像数据保存到用户指定的文件路径。

  1. 遍历图像的每个字节。

  2. 对每个字节执行以下操作:

    • 减去1。

    • 将字节的高3位右移5位,低5位左移3位,然后将它们按位或。

    • 对结果取反(按位取反)。

  3. 返回加密后的字节数组。

逆向还原图片

复制代码
def decrypt_image_bytes(encrypted_bytes):

    decrypted_bytes = bytearray(len(encrypted_bytes))  # 创建与加密数据等长的字节数组

    for i, b in enumerate(encrypted_bytes):  # 遍历每个字节
        b = ~b & 0xFF  # 按位取反并确保结果为一个字节
        b = ((b & 0xF8) >> 3) | ((b & 0x07) << 5)  # 恢复高低位顺序
        b = (b + 1) & 0xFF  # 加1并确保结果为一个字节
        decrypted_bytes[i] = b  # 存入解密后的字节

    return bytes(decrypted_bytes)  # 返回解密后的字节数据


# 主程序:读取加密图像文件,解密并保存为新的图像文件
if __name__ == "__main__":
    # 读取加密图像文件
    encrypted_file_path = "enc.png"  # 加密图像文件路径
    decrypted_file_path = "dec.png"  # 解密后保存的文件路径

    try:
        with open(encrypted_file_path, "rb") as f:  # 以二进制模式读取文件
            encrypted_data = f.read()  # 读取加密数据

        # 调用解密函数
        decrypted_data = decrypt_image_bytes(encrypted_data)

        # 保存解密后的图像文件
        with open(decrypted_file_path, "wb") as f:  # 以二进制模式写入文件
            f.write(decrypted_data)

        print(f"解密成功!解密后的图像已保存为:{decrypted_file_path}")

    except FileNotFoundError:
        print(f"错误:文件 {encrypted_file_path} 未找到。")
    except Exception as e:
        print(f"解密过程中发生错误:{e}")

flagf62ead9d005bbf8fe4b7a5e9c2f56cc56}

相关推荐
时时三省1 小时前
【时时三省】vectorcast使用教程
安全·安全架构
galaxylove2 小时前
Gartner发布最新指南:企业要构建防御性强且敏捷的网络安全计划以平衡安全保障与业务运营
网络·安全·web安全
PeterJXL2 小时前
Chrome 下载文件时总是提示“已阻止不安全的下载”的解决方案
前端·chrome·安全
BenSmith6 小时前
CVE-2025-6554漏洞复现
安全
BenSmith6 小时前
CVE-2018-17463复现
安全
lsec6 小时前
内存加载带有TLS的DLL的问题分析
windows·安全
m0_694845578 小时前
服务器如何配置防火墙规则开放/关闭端口?
linux·服务器·安全·云计算
柴郡猫^O^12 小时前
OSCP - Proving Grounds - DC - 1
安全·网络安全·安全性测试
泡泡以安12 小时前
JA3指纹在Web服务器或WAF中集成方案
服务器·安全·https·ja3指纹
Raners_12 小时前
【Linux】文件权限以及特殊权限(SUID、SGID)
linux·安全