Re1
进入伪代码界面分析for,if语句可得,flag加密完为34sy_r3v3rs3}(Str2)
加密方式为遍历Str1中的元素,当ACSLL码为101时换成51,当ACSLL码为97时换成52
即将e换成3,a换成4,逆向把加密的3,4换成e,a即可得到flag
TlNTQ1RGe2Vhc2VfcmV2ZXJzZX0=(base64加密后的flag)
ease C
用Visual Studio Code打开文件可看到是将a加密后与b进行比较,那a进行了什么加密呢
是先将a遍历+1,再进行异或2加密
我们将b先进行异或2的解密得“fbtz`Sf”
在将解密后的进行-1即可得到flag
TlNTQ1RGe2Vhc3lfUmV9
[LitCTF 2023]世界上最棒的程序员
进入shift+f12找到flag
TlNTQ1RGe0lfYW1fdGhlX2Jlc3RfRcHJvZ3JhbW1lcl9ldmVyfQ==
Re2
进入后shift+f12发现没有flag语句
直接进入main进入伪代码
分析可得Str加密为如果为A,a则进行+24
如果为其他64——98(除去97,65)进行+2
我们反解得如果Str2为Y,y(A+24,a+24),则进行-24
如果为其他64——98(除去97,65)进行-2
解出flag
原本Str2为 ylqq]aycqyp{ 解出为anss_caesar} 但是不对
去掉第一个y和最后得{ 解出为nss_caesar这才是flag
不知道为啥。。。。