PDA

Просмотр полной версии : Java password encrypt/decrypt


Denever
14.08.2011, 00:06
Есть мадификация.
public class Password
{
public static void main(String[] args) throws Exception
{
String curpass = "Вот суда пароль."; // Вставляем пароль чтобы перевести его в специальный хеш.
MessageDigest md = MessageDigest.getInstance("SHA");
byte[] raw = curpass.getBytes("UTF-8");
byte[] hash = md.digest(raw);
String curpassEnc = Base64.encodeBytes(hash);
System.out.println("Encode? password: "+curpassEnc); // Выводим инфу на экран.
PWAudit.auditPW("Encode? password: "+curpassEnc); // Логируем инфу.
}
}

Например curpass = "eh4f97245";
То при шифровании он будет: DuA3P7jNThlwED2lmP7SPJR+LyE=

В каком примерно алгоритме можно разшифровать полученный хеш?
Желательно дать пример. :) [Заранее спасибо.]

Morfik
14.08.2011, 00:56
хеш - это результат работы односторонней функции, тоесть узнать что было до хеша нельзя. Можно просто перебрать все слова пока не встретиьтся такой же хеш

xkor
14.08.2011, 01:07
подтверждаю, расшифровать хеш не реально, разве что методом перебора, но это займёт при текущем развитии технологий сотни тысяч лет)

Denever
14.08.2011, 01:28
Спасибо буду знать :)

Yegor
14.08.2011, 01:51
Для формирования хеша есть какой то общепринятый алгоритм или кто как хочет так и делает?

xkor
14.08.2011, 02:19
Yegor, ну наиболее распространены сейчас вроде SHA и MD5 вроде, их часто используют с солью.