java - Why this MD5 result with Salt has "==" in the end of result string? -
इस सवाल का पहले से ही एक उत्तर है: < / P>
- 8 जवाब
मेरे पास जावा कोड है जो उपयोग करते हैं Jasypt (जावा सरलीकृत एन्क्रिप्शन) लाइब्रेरी: <पूर्व>
मानक स्ट्रिंगडिगेस्टर डाइजेस्टर = नया मानक स्ट्रिंगडिगेस्टर (); digester.setAlgorithm ( "MD5"); digester.setIterations (1); फिक्स्ड स्ट्रिंग साल्ट जनरेटर नमक निर्माता = नया फिक्स्ड स्ट्रींग साल्टनर (); saltGenerator.setSalt ( "justAnotherSalt"); digester.setSaltGenerator (saltGenerator); digester.setSaltSizeBytes (5); स्ट्रिंग डाइजेस्ट = डाइजेस्टर डाइजेस्ट ("my_password"); Println (पचाने);
आप देख सकते हैं कि मैंने नमक के साथ MD5 एल्गोरिथ्म का उपयोग किया है।
कंसोल में परिणाम है:
I9uMOxDiImtxMXKXkt2EUw ==
मुझे पता होना चाहिए कि परिणाम स्ट्रिंग के अंत में "==" वर्ण क्यों हैं? यह केवल तब ही मौजूद है जब मैं नमक का उपयोग करता हूं।
मानकस्ट्रिंगडिगेस्टर। डीआईजीस्ट एपीआई कहते हैं इसका परिणाम इनकोडेड है BASE64 (डिफ़ॉल्ट) या हेक्साडेमिकल और ASCII स्ट्रिंग के रूप में लौट आए आपके मामले में यह BASE64 है
Comments
Post a Comment