"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > मेरा जावा 3DES एन्क्रिप्शन/डिक्रिप्शन विफल क्यों हो रहा है?

मेरा जावा 3DES एन्क्रिप्शन/डिक्रिप्शन विफल क्यों हो रहा है?

2024-11-24 को प्रकाशित
ब्राउज़ करें:674

Why Is My Java 3DES Encryption/Decryption Failing?

जावा में 3डीईएस एन्क्रिप्शन/डिक्रिप्शन की समस्या का निवारण

समस्या:

3डीईएस एन्क्रिप्शन का उपयोग करके एक स्ट्रिंग को सफलतापूर्वक एन्क्रिप्ट और डिक्रिप्ट करने में असमर्थ कोड में बार-बार होने वाली त्रुटियों के कारण कार्यान्वयन।

समाधान:

समस्या का समाधान करने के लिए, आइए दिए गए कोड का विश्लेषण करें:

public class TripleDESTest {

    // ...

    public byte[] encrypt(String message) {
        // ...

        final byte[] plainTextBytes = message.getBytes("utf-8");
        final byte[] cipherText = cipher.doFinal(plainTextBytes);
        final String encodedCipherText = new sun.misc.BASE64Encoder().encode(cipherText);

        return cipherText;    
    }

    // ...
}

सही कोड:

import java.security .मैसेजडाइजेस्ट; आयात java.util.Arrays; आयात javax.crypto.Cipher; आयात javax.crypto.SecretKey; आयात javax.crypto.spec.IvParameterSpec; आयात javax.crypto.spec.SecretKeySpec; पब्लिक क्लास ट्रिपलडेस्टेस्ट { सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) अपवाद फेंकता है { स्ट्रिंग टेक्स्ट = "काइल बून"; बाइट[] कोडेडटेक्स्ट = नया ट्रिपलडेस्टेस्ट().एन्क्रिप्ट(टेक्स्ट); स्ट्रिंग डिकोडेडटेक्स्ट = नया ट्रिपलडेस्टेस्ट().डिक्रिप्ट(कोडेडटेक्स्ट); System.out.println(डीकोडेडटेक्स्ट); } सार्वजनिक बाइट[] एन्क्रिप्ट (स्ट्रिंग संदेश) अपवाद फेंकता है { अंतिम MessageDigest md = MessageDigest.getInstance("md5"); अंतिम बाइट[] डाइजेस्टऑफपासवर्ड = md.digest('HG58YZ3CR9' .getBytes("utf-8")); अंतिम बाइट[] keyBytes = Arrays.copyOf(digestOfPassword, 24); (int j = 0, k = 16; j

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3