RSA कुंजी जोड़ी जनरेटर - RSA और Ed25519 ऑनलाइन
अपने ब्राउज़र में RSA (2048/4096-बिट) और Ed25519 कुंजी जोड़ी बनाएं। PEM या JWK प्रारूप में निर्यात करें — 100% क्लाइंट-साइड, कोई सर्वर नहीं।
अक्सर पूछे जाने वाले प्रश्न
RSA कुंजी जोड़ी जनरेटर क्या है?
RSA कुंजी जोड़ी जनरेटर RSA एल्गोरिदम का उपयोग करके गणितीय रूप से जुड़ी क्रिप्टोग्राफ़िक कुंजियों की एक जोड़ी बनाता है — एक सार्वजनिक कुंजी और एक निजी कुंजी। सार्वजनिक कुंजी डेटा को एन्क्रिप्ट करती है या हस्ताक्षर सत्यापित करती है, जबकि निजी कुंजी डेटा को डिक्रिप्ट करती है या हस्ताक्षर बनाती है। यह उपकरण ब्राउज़र की Web Crypto API का उपयोग करके सर्वर को कोई डेटा भेजे बिना सुरक्षित रूप से कुंजियां बनाता है।
इस उपकरण का उपयोग कैसे करें?
अपना एल्गोरिदम (RSA-2048, RSA-4096, या Ed25519) चुनें, आउटपुट प्रारूप (PEM या JWK) चुनें, और 'कुंजी जोड़ी बनाएं' पर क्लिक करें। उपकरण आपके ब्राउज़र में तुरंत दोनों कुंजियां बनाता है। कॉपी बटन का उपयोग करके किसी भी कुंजी को कॉपी करें, या .pem फ़ाइल के रूप में डाउनलोड करें।
क्या मेरा कुंजी डेटा सुरक्षित है?
आपका कुंजी डेटा 100% सुरक्षित है और कभी भी आपके ब्राउज़र से बाहर नहीं जाता। यह उपकरण Web Crypto API (crypto.subtle.generateKey) का उपयोग करके पूरी तरह से आपके डिवाइस पर कुंजियां बनाता है — वही क्रिप्टोग्राफ़िक इंजन जो HTTPS/TLS कनेक्शन के लिए उपयोग होता है।
RSA और Ed25519 में क्या अंतर है?
RSA 2048-4096 बिट कुंजी आकार के साथ एन्क्रिप्शन और साइनिंग दोनों का समर्थन करने वाला व्यापक रूप से उपयोग किया जाने वाला एल्गोरिदम है। Ed25519 एक आधुनिक एलिप्टिक कर्व एल्गोरिदम है जो केवल साइनिंग/सत्यापन का समर्थन करता है लेकिन छोटी कुंजियां (256 बिट), तेज़ संचालन और RSA-3072 के बराबर सुरक्षा प्रदान करता है।
PEM और JWK प्रारूप क्या हैं?
PEM एक टेक्स्ट-आधारित प्रारूप है जो Base64-एन्कोडेड कुंजी डेटा को हेडर/फ़ुटर मार्कर के बीच लपेटता है। यह SSH, OpenSSL और TLS प्रमाणपत्रों के लिए मानक है। JWK (JSON Web Key) RFC 7517 में परिभाषित JSON-आधारित प्रारूप है, जो वेब अनुप्रयोगों, JWT लाइब्रेरी और OAuth/OIDC प्रदाताओं में उपयोग होता है।
क्या मैं जनरेट की गई कुंजियों का SSH प्रमाणीकरण के लिए उपयोग कर सकता हूं?
हां, कुछ सावधानियों के साथ। यह उपकरण PKCS#8/SPKI PEM प्रारूप में कुंजियां बनाता है। आधुनिक OpenSSH सीधे PKCS#8 PEM का समर्थन करता है — निजी कुंजी को chmod 600 अनुमतियों वाली फ़ाइल में सहेजें और 'ssh -i key.pem user@host' का उपयोग करें।
कोड उदाहरण
// RSA-2048 Key Pair Generation (Web Crypto API)
async function generateRSAKeyPair(bits = 2048) {
const keyPair = await crypto.subtle.generateKey(
{
name: 'RSA-OAEP',
modulusLength: bits,
publicExponent: new Uint8Array([1, 0, 1]),
hash: 'SHA-256',
},
true,
['encrypt', 'decrypt']
);
const privDer = await crypto.subtle.exportKey('pkcs8', keyPair.privateKey);
const pubDer = await crypto.subtle.exportKey('spki', keyPair.publicKey);
const toPem = (der, label) => {
const b64 = btoa(String.fromCharCode(...new Uint8Array(der)));
const lines = b64.match(/.{1,64}/g).join('\n');
return `-----BEGIN ${label}-----\n${lines}\n-----END ${label}-----`;
};
console.log(toPem(privDer, 'PRIVATE KEY'));
console.log(toPem(pubDer, 'PUBLIC KEY'));
}
generateRSAKeyPair();