Zostałem poproszony o zaszyfrowanie hasła poprzez utworzenie nowej procedury i to, co myślałem, to pracować z bitami, aby zmienić każdy znak mojego klucza wejściowego z pozornie niezwiązanymi ze sobą znakami, więc napisałem tę funkcję:Czy istnieje sposób odwrócenia tej operacji bitowej?
(I "pracuję z kodem PHP"):
function CBS($digits, $n_times) {
$mask = 0x7FFFFFFF;
$digits = intval($digits);
if($n_times > 0) {
$digits = ($digits<<$n_times%32) & (($digits>>(32-$n_times%32)) & ($mask>>(31-$n_times%32)));
}elseif($n_times < 0) {
$n_times = abs($n_times);
$digits = (($digits>>$n_times%32) & ($mask >> (-1+$n_times%32))) | ($digits<<(32-$n_times%32));
}
return decbin($digits);
}
Oczywiście po zaszyfrowaniu hasła powinienem móc je odszyfrować.
Czy jest jakiś sposób to zrobić?
Nie musisz pisać kodu, żeby to zrobić, byłoby wspaniale, gdybyś mógł mi to wyjaśnić słowami.
Ja też się wylizywałabym, ale mój nauczyciel poprosił mnie o prawo szyfrowanie, więc domyślam się, że będę musiał to zrobić ... –
To prawdopodobnie część specyfikacji do twojego certyfikatu, więc nie mogę winić cię za to, chociaż komisja egzaminacyjna za jakąkolwiek certyfikację, którą naprawdę robisz, nie powinna Naucz tego w zakresie haseł. – cybermonkey
Cóż, ten z nas, który stworzy najbezpieczniejszy algorytm, uzyska najlepszą ocenę, więc staram się robić co w mojej mocy! –