PDA

View Full Version : سوال: encrypt و decrypt کردن رشته



nDeveloper
دوشنبه 18 شهریور 1392, 07:41 صبح
سلام

دو تا متد میخوام که یه رشته رو encrypt و decrypt کنه ، برای encrypt از این تابع اسفاده کردم ولی مثل اینکه نمیشه عملیات معکوس یعنی decrypt رو خروجیش انجام داد.
public static final String md5(final String s) {
try {
MessageDigest digest = java.security.MessageDigest
.getInstance("MD5");
digest.update(s.getBytes());
byte messageDigest[] = digest.digest();

StringBuffer hexString = new StringBuffer();
for (int i = 0; i < messageDigest.length; i++) {
String h = Integer.toHexString(0xFF & messageDigest[i]);
while (h.length() < 2)
h = "0" + h;
hexString.append(h);
}
return hexString.toString();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return "";
}

vahid-p
دوشنبه 18 شهریور 1392, 10:36 صبح
تا جایی که من میدونم MD5 قابلیت decrypt کردن رو نداره. یعنی عملیات معکوس نداره ( حداقل اینه که کار ساده ای نیست ) و خوبیش به همینه. برای اینکه ببینید آیا دو رشته با هم برابرند، کافیه هر دو رو با MD5 اینکریپت کنید و دو رشته اینکریپت شده رو با هم مقایسه کنید.

فکر نمیکنم راه دیگه ای داشته باشه.
موفق باشید