के साथ मैं अपनी पोस्ट को बैकएंडरवर चलाने वाले PHP में सुरक्षित करने के लिए एक एमडी 5 का उपयोग कर रहा हूं। पैरामीटर HTTP पोस्ट के माध्यम से भेज रहे हैं।एमडी 5 एंड्रॉइड और PHP
मुझे एक समस्या है, मेरे एमडी 5 गणना का परिणाम एंड्रॉइड और PHP सर्वर पर अलग है यदि इनपुट पैरामीटर में से एक में ü, ä या ö है।
एंड्रॉयड पर, हैश इस समारोह के माध्यम से की जाती है:
public static final String md5(final String s) {
try {
// Create MD5 Hash
MessageDigest digest = java.security.MessageDigest
.getInstance("MD5");
digest.update(s.getBytes());
byte messageDigest[] = digest.digest();
// Create Hex String
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 "";
}
पीएचपी सर्वर पर मैं बस
md5() function.
कोई एन्कोडिंग मुद्दे की तरह लगता है (आईएसओ-8859-1 उदाहरण के लिए बनाम यूटीएफ -8)। आप किस चरित्र सेट का उपयोग कर रहे हैं? क्या आप कुछ कोड दिखा सकते हैं? –
यकीन है, मैं अपनी पोस्ट संपादित करूंगा। – tobias
वैसे, आप अपनी पोस्ट सुरक्षित करने के लिए SHA1 या अन्य एल्गोरिदम का उपयोग करना चाह सकते हैं ... MD% अब सुरक्षित नहीं है –