मैंने पहले इस बारे में एक प्रश्न पूछा था, लेकिन इसका उत्तर सही नहीं मिला और कहीं नहीं गया।
इसलिए मैंने समस्या पर कुछ विवरण स्पष्ट किए हैं और मैं वास्तव में आपके विचारों को सुनना चाहूंगा कि मैं इसे कैसे ठीक कर सकता हूं या मुझे क्या प्रयास करना चाहिए।
मेरे पास मेरे लिनक्स सर्वर पर जावा 1.6.0.12 स्थापित है और नीचे का कोड पूरी तरह से चलता है।
String key = "av45k1pfb024xa3bl359vsb4esortvks74sksr5oy4s5serondry84jsrryuhsr5ys49y5seri5shrdliheuirdygliurguiy5ru";
try {
Cipher c = Cipher.getInstance("ARCFOUR");
SecretKeySpec secretKeySpec = new SecretKeySpec(key.getBytes("UTF-8"), "ARCFOUR");
c.init(Cipher.DECRYPT_MODE, secretKeySpec);
return new String(c.doFinal(Hex.decodeHex(data.toCharArray())), "UTF-8");
} catch (InvalidKeyException e) {
throw new CryptoException(e);
}
आज मैंने अपने सर्वर उपयोगकर्ता पर जावा 1.6.0.26 स्थापित किया है और जब मैं अपना एप्लिकेशन चलाने का प्रयास करता हूं, तो मुझे निम्न अपवाद मिलते हैं। मेरा अनुमान है कि यह जावा इंस्टॉलेशन कॉन्फ़िगरेशन के साथ कुछ करना है क्योंकि यह पहले एक में काम करता है, लेकिन बाद के संस्करण में काम नहीं करता है।
Caused by: java.security.InvalidKeyException: Illegal key size or default parameters
at javax.crypto.Cipher.a(DashoA13*..) ~[na:1.6]
at javax.crypto.Cipher.a(DashoA13*..) ~[na:1.6]
at javax.crypto.Cipher.a(DashoA13*..) ~[na:1.6]
at javax.crypto.Cipher.init(DashoA13*..) ~[na:1.6]
at javax.crypto.Cipher.init(DashoA13*..) ~[na:1.6]
at my.package.Something.decode(RC4Decoder.java:25) ~[my.package.jar:na]
... 5 common frames omitted
लाइन 25 है:
c.init(Cipher.DECRYPT_MODE, secretKeySpec);
नोट:
* java.security सर्वर के 1.6.0.12 जावा निर्देशिका पर लगभग पूरी तरह से 1.6.0.26 java.security फ़ाइल के साथ मेल खाता है । पहले एक में कोई अतिरिक्त प्रदाता नहीं हैं।
* पिछला प्रश्न यहाँ है ।
Caused by: java.security.InvalidKeyException: Illegal key size(जावा में या "डिफ़ॉल्ट मापदंडों के बिना") 8