凯撒的密码武器

“罗马三巨头” + “加密以名字命名” = 凯撒加密

 

直接对FRPHEVGL进行凯撒枚举

 

import string

 

def kaisa(s, k): #定义函数 接受一个字符串s 和 一个偏移量k

    lower = string.ascii_lowercase #小写字母

    upper = string.ascii_uppercase #大写字母

    before = string.ascii_letters #无偏移的字母顺序 小写+大写

    after = lower[k:] + lower[:k] + upper[k:] + upper[:k]#偏移后的字母顺序 还是小写+大写

    #分别把小写字母和大写字母偏移后再加到一起 

    table = ''.maketrans(before, after) #创建映射表

    return s.translate(table) #对s进行偏移 即加密

 

s = "FRPHEVGL"

for i in range(26): 

    print(kaisa(s, i).lower())

运行结果如下:

 

frphevgl

gsqifwhm

htrjgxin

iuskhyjo

jvtlizkp

kwumjalq

lxvnkbmr

mywolcns

nzxpmdot

oayqnepu

pbzrofqv

qcaspgrw

rdbtqhsx

security

tfdvsjuz

ugewtkva

vhfxulwb

wigyvmxc

xjhzwnyd

ykiaxoze

zljbypaf

amkczqbg

bnldarch

comebsdi

dpnfctej

eqogdufk

在其中找到一个有意义的单词security

而从FRPHEVGL->SECURITY 偏移13

同样的用偏移13去加密附件中的内容,得到

ComeChina->PbzrPuvan

 

flag

flag{PbzrPuvan}

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值