ctfshow西瓜杯

一个西瓜切两半你一半我一半

打开是一个pyc文件

.pyc 文件是 Python 源代码编译后的字节码文件。由于它是二进制文件,直接打开可能会显示乱码,但可以通过以下几种方法查看或处理其内容:

1. 使用反编译工具

反编译工具可以将 .pyc 文件转换回可读的 Python 源代码,以下是一些常用的工具:

2. 使用文本编辑器查看二进制内容

可以使用支持二进制文件查看的文本编辑器,如 UltraEdit 或 Notepad++,直接打开 .pyc 文件,但看到的内容会是二进制数据,可能需要一定的解读能力。

3. 直接运行 .pyc 文件

如果需要运行 .pyc 文件,可以直接使用 Python 解释器,命令如下:

python3 your_file.pyc

这里我将用使用反编译工具实现

尝试flag是错误的,打开另一个文本

这段代码是一个简单的凯撒密码加密程序,使用了Python语言编写。代码的主要功能是将一个字符串(flag)通过一个密钥(key)进行加密,并打印出加密后的结果

  • for 循环遍历 flag 中的每个字符。

  • 对每个字符,使用 ord(i) - 32 将其ASCII码减去32,然后使用 chr() 函数将其转换回字符。

  • 将转换后的字符添加到 tmp 字符串中。

  • 初始化 crypt 为空字符串,用于存储加密后的字符串。

  • 使用 for 循环遍历 tmp 中的每个字符。

  • 对每个字符,使用 ord(tmp[i]) + ord(key[i % len(key)]) 进行加密,其中 key[i % len(key)] 确保密钥循环使用。

  • 将加密后的字符添加到 crypt 字符串中。

  • 脚本如下:

    key = "一个西瓜切两半你一半我一半"
    crypt = "乃乾觅甯剏乳厡侻丨厏扝乌博丿乜规甲剌乶厝侥丿卻扚丠厘丿乎覟瓬剤"
    tmp = ""
    for i in range(len(crypt)):
        tmp += chr(ord(crypt[i]) - ord(key[i % len(key)]))
    flag = ''
    for i in tmp:
        flag += chr(ord(i) + 32)
    print(flag)

    运行flag为:

    ctfshow{Hell0_Reverse_Qi@n_D@0}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值