مولّد مفاتيح RSA

تعمل في المتصفح الأمان

ولّد أزواج مفاتيح RSA-PSS أو RSASSA-PKCS1 باستخدام WebCrypto وصدّرها بصيغة PEM (مفتاح خاص PKCS#8 ومفتاح عام SPKI) لتوقيع JWT بخوارزمية RS256 أو الاختبارات على طريقة SSH أو تجارب التشفير. تُولَّد المفاتيح محلياً ولا تُرفع أبداً.

الخصوصية: تعمل هذه الأداة بالكامل في متصفحك. لا تغادر بياناتك جهازك أبداً.
جارٍ تحميل الأداة…

كيفية استخدام مولّد مفاتيح RSA

  1. اختر حجم المفتاح والخوارزمية ودالة التجزئة.
  2. انقر «توليد» (قد تستغرق مفاتيح 4096 بت بضع ثوانٍ).
  3. نزّل private.pem وpublic.pem أو انسخ JWK.
  4. احتفظ بسرية المفتاح الخاص؛ وانشر المفتاح العام فقط.

مزايا مولّد مفاتيح RSA

  • مفاتيح بطول 2048 أو 3072 أو 4096 بت مولَّدة باستخدام crypto.subtle.generateKey
  • RSASSA-PKCS1-v1_5 (RS256/384/512) أو RSA-PSS (PS256/384/512) أو RSA-OAEP
  • تصدير PEM: مفتاح خاص PKCS#8 ومفتاح عام SPKI
  • تصدير JWK اختياري مع ضبط alg وuse
  • اقتراح خوارزمية JWT وkid؛ وتلميحات للتحويل باستخدام OpenSSL وSSH
  • كل شيء يجري محلياً — لا تُرفع المفاتيح الخاصة أبداً

مثال على مولّد مفاتيح RSA

زوج مفاتيح RS256

الإدخال:

Key size: 2048 · Algorithm: RSASSA-PKCS1-v1_5 · Hash: SHA-256

النتيجة:

-----BEGIN PRIVATE KEY-----
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC…
-----END PRIVATE KEY-----

-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA…
-----END PUBLIC KEY-----

الأسئلة الشائعة حول مولّد مفاتيح RSA

أي حجم مفتاح ينبغي أن أختار؟

2048 بت هو الحد الأدنى الشائع ويُولَّد بسرعة. ويصل 3072 بت إلى مستوى الأمان 128 بتاً الموصى به للمفاتيح المستخدمة بعد عام 2030. أما 4096 بت فهو الأكثر تحفظاً لكنه أبطأ بشكل ملحوظ في التوليد والاستخدام.

ما الفرق بين PEM بصيغة PKCS#8 وPKCS#1؟

PKCS#8 («BEGIN PRIVATE KEY») هو الحاوية الحديثة المستقلة عن الخوارزمية التي يصدّرها WebCrypto. تتوقع الأدوات الأقدم PKCS#1 («BEGIN RSA PRIVATE KEY»)؛ حوّل بالأمر: openssl rsa -in private.pem -traditional -out private-pkcs1.pem.

هل يمكنني استخدام هذه المفاتيح لتوقيع JWT بخوارزمية RS256؟

نعم. اختر RSASSA-PKCS1-v1_5 مع SHA-256، ووقّع بالمفتاح الخاص على خادمك، وانشر المفتاح العام (أو JWK الخاص به) للتحقق. واختر RSA-PSS لخوارزمية PS256.

هل يمكنني استخدامها لـ SSH؟

ليس مباشرة: يستخدم SSH صيغة مفاتيح عامة خاصة به. حوّل ملف PEM بالأمر «ssh-keygen -i -m PKCS8 -f public.pem» أو ولّد مفاتيح SSH باستخدام ssh-keygen.

هل تُولَّد المفاتيح محلياً فعلاً؟

نعم — تعمل crypto.subtle.generateKey داخل متصفحك. لا يُرسل شيء إلى أي مكان، ولا تحتفظ الصفحة بأي نسخة بعد مغادرتها.

ملاحظات تقنية

يولّد WebCrypto زوج المفاتيح بأسّ عام 65537 ويصدّر بنى DER (PKCS#8 للمفتاح الخاص وSubjectPublicKeyInfo للمفتاح العام). ترمّز الأداة DER بـ Base64 في أسطر من 64 حرفاً وتضيف غلاف PEM، لتنتج ملفات تقبلها OpenSSL وNode.js وJava وكل مكتبات JOSE.