先来看一下代码
<?php
$miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";
function encode($str){
$_o=strrev($str);
// echo $_o;
for($_0=0;$_0<strlen($_o);$_0++){
$_c=substr($_o,$_0,1); //substr()函数返回字符串$_o的一部分,从$_0开始,截取1个字符的长度
$__=ord($_c)+1; //ord() 函数返回字符串中第一个字符的 ASCII 值
$_c=chr($__); //chr() 函数从指定 ASCII 值返回字符
$_=$_.$_c; //.用来连接字符串
}
return str_rot13(strrev(base64_encode($_)));
}
highlight_file(__FILE__);
/*
逆向加密算法,解密$miwen就是flag
*/
?>
方法一:先用在线工具解码,再层层解密
只要按照php的加密方式反过来解密就可以了
具体流程:rot13解码——翻转字符串——base64解码——encode函数反向解码
密文:a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws
rot13解码:n1mYotDfPRFRVdEYjhDNlZjYld2Y5IjOkdTN3EDNlhzM0gzZiFTZ2MjO4gjf
翻转字符串