मामले पर एप्लेट के साथ प्रयोग किया पुस्तकालय: मैं एक जावा एप्लेट जो BouncyCastle पुस्तकालयों bcpkix-jdk15on-149.jar का उपयोग करता है को बनाए रखने कर रहा हूँ, और bcprov-jdk15on-149.jar।BouncyCastle क्रिप्टोग्राफी प्रदाता जावा 7u40
समस्या तब होती है जब एप्लेट जेआरई संस्करण 7_u40 सक्षम ब्राउज़र पर चलाया जाता है।
व्यवहार 7_u25 से बदल गया है इस तरह से यह हमेशा एक मोडल विंडो को "एक स्व-हस्ताक्षरित प्रमाणपत्र का उपयोग कर एक ऐप के लिए सुरक्षा संकेत" (जिसे अब स्थायी रूप से छुपाया नहीं जा सकता है), केवल bcprov पर भरोसा करने के लिए।
https://www.java.com/en/download/help/appsecuritydialogs.xml
जहाँ तक मुझे पता है, इस वजह से ईसा पूर्व पुस्तकालयों BouncyCastle प्रमाण पत्र, "JCE कोड सीए प्रवेश कर रहा है" द्वारा जारी किए गए के साथ हस्ताक्षर किए जाते हैं। उस वजह से, lib एक क्रिप्टोग्राफी प्रदाता के रूप में प्रदर्शन और कार्य कर सकता है।
लेकिन: जेआरई हस्ताक्षर पर विश्वास करने के लिए प्रमाणपत्र श्रृंखला का निर्माण नहीं कर सकता है।
मैं मैं उस हस्ताक्षर को हटा दें और अपने आप से हस्ताक्षर (मैं एक Thawte कोड हस्ताक्षर प्रमाण पत्र के मालिक हैं) कर सकते हैं:
- यह bcpkix lib के साथ काम करता
- यह काम नहीं करता: यह "अज्ञात प्रदाता" से पता चलता bcprov के साथ क्योंकि इसे वैध क्रिप्टोग्राफी प्रदाता के रूप में नहीं माना जाएगा (यह जेआरई द्वारा भरोसा नहीं किया जाएगा)।
क्या मैं सही हूँ? मैं क्या कर सकता हूं?
पीएस: मैंने जेसीए रूट प्रमाण (इसे जेआरई ट्रस्टस्टोर में रखने के लिए) को सफलता के बिना खोजने के लिए बहुत कुछ किया ... क्या उस रूट सीए को पकड़ने का कोई तरीका है?
कुछ लोग मुझसे bcprov पुस्तकालय (पहले से ही ई.पू. द्वारा हस्ताक्षर किए गए) मेरे अपने प्रमाण पत्र के साथ दूसरी बार हस्ताक्षर करने के लिए कहा था। समस्या यह है कि परिणाम "jarsigner" के साथ सत्यापन पर विफल रहता है। इसलिए, अगर कोई जानता है कि एक जेएआर फ़ाइल पर एक और हस्ताक्षर कैसे रखा जाए, तो कृपया मुझे बताएं –