Меня попросили зашифровать пароль, создав новую процедуру, и я подумал, что нужно работать с битами, чтобы изменить каждый символ моего ключа ввода с явно несвязанными символами, и поэтому я написал эту функцию:Есть ли способ отменить эту побитую функцию?
(I работаю с 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);
}
конечно после того, как я зашифрован мой пароль я должен быть в состоянии расшифровать его.
Есть ли способ сделать это?
Вам не нужно писать мне код, чтобы сделать это, было бы здорово, если бы вы могли объяснить это мне также со словами.
Я бы тоже хэшировал, но мой учитель спросил меня прямо зашифруйте, так что, я думаю, мне придется это сделать ... –
Возможно, это часть спецификации для вашей сертификации, поэтому я вряд ли могу вас обвинить в этом, хотя экзаменационная комиссия за любую сертификацию, которую вы делаете, действительно не должна преподавать это в рамках паролей. – cybermonkey
Ну, один из нас, кто создаст самый безопасный алгоритм, получит лучшую оценку, поэтому я стараюсь изо всех сил! –