0
所以我被要求解密用scytale算法編碼的文本文件。問題是我不知道密鑰,所以我必須迭代並嘗試猜測哪個鍵給出了可讀的文本。我們的想法是:解密scytale不知道密鑰
function decrypt($txt,$key){
$out = "";
for($i = 0; $i < $key; ++$i){
for($j = $i; $j < strlen($txt); $j+=$key){
$n = substr($txt,$j,1);
$out.=$n;
$j+=$key;
}
}
return $out;
}
...
for($i = 1; $i <= 36567; ++$i){
$decrypted = decrypt($in,$i);
}
其中36567是消息的長度和$in
是輸入文本。有沒有辦法做到這一點,而不必檢查每個輸出?我已經試過計算通常單詞的外觀,但沒有任何運氣。這真的很複雜嗎?或者我只是簡單地用錯誤的方法去做?我甚至不知道我的代碼是否可以正常工作...
@ArtjomB。這是,但那不是重點。如果你能用另一種語言的算法來幫助我,我很樂意知道 – ahernandezmiro