मैं एक उपयोगिता वर्ग की तलाश में हूं जो परीक्षण उद्देश्यों के लिए यादृच्छिक प्रमाणपत्र स्ट्रिंग उत्पन्न कर सकता है। कोई विचार अगर कोई पहले से ही लागू किया गया है?यादृच्छिक प्रमाणपत्र उत्पन्न करें
उत्तर
निर्मित जावा X500 पुस्तकालयों पैदा और प्रमाण पत्र पार्स करने से प्रमाण पत्र का उपयोग कर अधिक की दिशा में तैयार कर रहे हैं। आपको जो भी चाहिए वो करने का एक तरीका मिल सकता है, लेकिन यह लगभग निश्चित रूप से गन्दा और संरक्षित एपीआई (sun.security.*
) में होगा।
मेरा सुझाव है कि आप बाउंसी कैसल लाइब्रेरी (अपाचे लाइसेंस) शामिल करें। इसमें X509V3CertificateGenerator
नामक एक वर्ग है जिसे आप प्रमाणपत्र (जारीकर्ता, विषय, समाप्ति तिथि, आदि) के फ़ील्ड सेट करने के लिए उपयोग कर सकते हैं।
आपको PEMWriter
कक्षा का उपयोग करके पीईएम स्ट्रिंग प्राप्त करने में सक्षम होना चाहिए।
, martijno द्वारा दिए गए समाधान के लिए जोड़ने के लिए
के बजाय अपनी खुद की सामग्री हस्ताक्षरकर्ता लेखन, JCAContentSigner AlgorithmIdentifier (अर्थात OID) को मैपिंग से बचने के लिए इस्तेमाल किया जा सकता।
JcaContentSignerBuilder here परिभाषित एल्गोरिदम नाम लेता है।
X509v3CertificateBuilder certBuilder = new X509v3CertificateBuilder(issuer, serialNumber, startDate, expiryDate, subject, SubjectPublicKeyInfo.getInstance(keyPair.getPublic().getEncoded()));
JcaContentSignerBuilder builder = new JcaContentSignerBuilder("SHA256withRSA");
ContentSigner signer = builder.build(keyPair.getPrivate());
byte[] certBytes = certBuilder.build(signer).getEncoded();
CertificateFactory certificateFactory = CertificateFactory.getInstance("X.509");
X509Certificate certificate = (X509Certificate)certificateFactory.generateCertificate(new ByteArrayInputStream(certBytes));
क्या मैं सही हूं अगर यह स्वयं हस्ताक्षरित प्रमाणपत्र नहीं है, तो मैं निजी कुंजी को सीए की निजी कुंजी के साथ बदलता हूं? – maxbit89
- 1. यादृच्छिक बाइट कोको उत्पन्न करें?
- 2. "यादृच्छिक" कैसे उत्पन्न करें लेकिन "अद्वितीय" संख्याएं कैसे उत्पन्न करें?
- 3. रूबी स्व-हस्ताक्षरित प्रमाणपत्र उत्पन्न करें
- 4. बड़ी यादृच्छिक संख्याएं कैसे उत्पन्न करें सी
- 5. यादृच्छिक HTML दस्तावेज़ कैसे उत्पन्न करें
- 6. एक यादृच्छिक उत्तल बहुभुज कैसे उत्पन्न करें?
- 7. रुबी में यादृच्छिक तिथि कैसे उत्पन्न करें?
- 8. पुनरावर्तनीय यादृच्छिक संख्या अनुक्रम कैसे उत्पन्न करें?
- 9. एक बड़ा यादृच्छिक प्लानर ग्राफ़ उत्पन्न करें
- 10. एंड्रॉइड: क्लिक पर यादृच्छिक रंग उत्पन्न करें?
- 11. matplotlib में यादृच्छिक रंग कैसे उत्पन्न करें?
- 12. यादृच्छिक संख्याओं की सूची कैसे उत्पन्न करें?
- 13. वितरण के अनुसार यादृच्छिक संख्याएं उत्पन्न करें
- 14. MATLAB में लॉगनोर्मल यादृच्छिक संख्याएं उत्पन्न करें?
- 15. कर्नेल मॉड्यूल में यादृच्छिक संख्या उत्पन्न करें
- 16. यादृच्छिक enums उत्पन्न
- 17. कई यादृच्छिक संख्याएं उत्पन्न करना
- 18. एक यादृच्छिक स्ट्रिंग उत्पन्न करना
- 19. बहुत बड़ी यादृच्छिक संख्याएं उत्पन्न करना जावा
- 20. मैन्युअल रूप से यादृच्छिक संख्याएं कैसे उत्पन्न करें
- 21. PHP और mySQL (i): यादृच्छिक उपयोगकर्ता आईडी कैसे उत्पन्न करें?
- 22. एफपीजीए में छद्म यादृच्छिक संख्या कैसे उत्पन्न करें?
- 23. उद्देश्य-सी में यादृच्छिक रंग हेक्स उत्पन्न करें?
- 24. निर्दिष्ट असतत वितरण से यादृच्छिक संख्या कैसे उत्पन्न करें?
- 25. पायथन में "बड़ा" यादृच्छिक संख्या कैसे उत्पन्न करें?
- 26. जावा में यादृच्छिक BigInteger मान कैसे उत्पन्न करें?
- 27. एक पूरी तरह यादृच्छिक छवि कैसे उत्पन्न करें?
- 28. कुछ मानों को छोड़कर यादृच्छिक संख्याएं उत्पन्न करें
- 29. स्टैक ओवरफ़्लो पर यादृच्छिक डिफ़ॉल्ट "gravatars" कैसे उत्पन्न करें?
- 30. गैर-वर्दी यादृच्छिक संख्याएं उत्पन्न करना
ध्यान दें कि 'X509V3CertificateGenerator' को कम कर दिया गया है (कम से कम बाउंसी कैसल 1.47 में)। वे 'X509v3CertificateBuilder' का उपयोग करने का सुझाव देते हैं (' bcprov' में नहीं बल्कि 'bcpkix' jar में)। – martijno
अब यह 'bcmail' jar – KeksArmee
@KeksArmee में है: यह अभी भी' bcpkix' में है। – jackyalcine