buuctf reserve simplerev

本文介绍了一种基于ASCII码的字符串加密方法——KillShadow,通过逐字符比较并转换特定字符来实现加密,展示了编码和解码的过程。
摘要由CSDN通过智能技术生成

text = 'killshadow'
key = 'adsfkndcls'
flag = ''
v3 = 0
v5 = len(key)
for i in range(len(text)):
    if text[i] == ' ':
        flag = text[i]
    else:  # text都是小写字母,原代码中加了97,所以可以判断原来的字符都是大写
        for j in range(ord("A"), ord("Z") + 1):   #ord("") 字符返回相应的ASCII码
            if (j - 39 - ord(key[v3 % v5]) + 97) % 26 + 97 == ord(text[i]):
                flag = flag + chr(j)    #chr() ASCII码返回字母
                v3 += 1
                break
print(flag)

KLDQCUDFZO

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值