首页 > 技术文章 > web2

SONGYUELV 2021-09-13 14:48 原文

<?php
$miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";//密文

function encode($str){//以指定的编码格式编码字符串
    $_o=strrev($str);//反转字符串
    // echo $_o;
        
    for($_0=0;$_0<strlen($_o);$_0++){//遍历字符串
       
        $_c=substr($_o,$_0,1);//返回字符串的第i个字符
        $__=ord($_c)+1;//返回字符的ASCii码加1
        $_c=chr($__);//函数从ASCii返回字符
        $_=$_.$_c;//拼接
    } 
    return str_rot13(strrev(base64_encode($_)));//base64编码,反转字符串,rot13编码
}

highlight_file(__FILE__);
/*
   逆向加密算法,解密$miwen就是flag
*/
?> 
  1. 反转字符串
  2. 遍历字符串:取第i个字符,使其ASCII码加一,追加到结果后面
  3. base64编码,反转,rot13编码
<?php
$miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";
$a=base64_decode(strrev(str_rot13($miwen)));
$d= "";
for($i=0; $i<strlen($a);$i++){
    $b=substr($a,$i,1);
    $c=ord($b)-1;
    $b=chr($c);
    $d=$d.$b; 
}
$result=strrev($d);
echo $result;
?>

flag:{NSCTF_b73d5adfb819c64603d7237fa0d52977}

推荐阅读