हम निरस्त एसएसएल प्रमाणपत्रों की एक बम्पर फसल, दिल की धड़कन की सौजन्य के लिए जा रहे हैं। जब मैंने Chrome on Android apparently ignores revoked SSL certificates देखा, तो मुझे आश्चर्य हुआ कि जावा में एक सर्वर से वेब संसाधन का अनुरोध करते समय व्यवहार क्या होगा, जहां हमें एक निरस्त SSL प्रमाणपत्र प्राप्त होता है।निरस्त SSL प्रमाणपत्र के साथ यूआरएल के लिए HttpURLConnection का व्यवहार?
मैं के लिए क्या आशा व्यक्त की SSLHandshakeException
किसी प्रकार के साथ एक दुर्घटना थी।
मैं क्या देख रहा हूँ एक सफल कनेक्शन है, लेकिन कोई डेटा डाउनलोड - getInputStream()
से पढ़ने -1 की लंबाई देता है। यह मेरी टेस्ट साइट के रूप में https://revoked.grc.com/ का उपयोग करके परीक्षण किया जाता है, जो आपको एक स्पष्टीकरण पृष्ठ लौटाएगा यदि आप इसे प्रमाणपत्र त्रुटियों को अनदेखा करते हैं (उदाहरण के लिए, wget -no-check-certificate
के माध्यम से)। मैंने एक ही परिणाम के साथ 4.4, 4.3, और 2.3 अनुकरणकर्ताओं की कोशिश की है।
वहाँ जावा वी एम के लिए एक निर्दिष्ट व्यवहार है? मुझे संदेह है कि एक एंड्रॉइड-विशिष्ट विनिर्देश है, लेकिन यदि एंड्रॉइड का वास्तविक व्यवहार जावा विनिर्देश से अलग है, तो मैं अंतर को स्पष्ट करने के लिए काम कर सकता हूं क्योंकि या तो बग या अनुपलब्ध दस्तावेज़ हैं।
"अपेक्षित" व्यवहार इस बात पर निर्भर करता है कि कौन उम्मीद कर रहा है।असली प्रश्न निर्दिष्ट हैं, और प्रत्येक जेवीएम रिलीज के लिए क्या लागू किया जाता है। –
@StephenC: मैंने सवाल में संशोधन किया है। – CommonsWare
दिल की धड़कन के कारण आपको वास्तव में एक बम्पर फसल होगी, लेकिन इससे सवाल एक हार्दिक सवाल नहीं उठाता है। – EJP