انتقل إلى المحتوى

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

أنشئ زوج مفاتيح للمنحنى الإهليلجي على P-256 أو P-384 أو P-521 لتواقيع ES256 وES384 وES512، وECDH وشهادات TLS. تتضمن النتيجة المفتاح الخاص بصيغة PKCS #8 PEM غير مشفرة، والمفتاح العام بصيغة SPKI PEM، وسطر مفتاح عام OpenSSH ecdsa-sha2 يتضمن بصمة SHA-256 وبصمة JWK وفق RFC 7638. يُنشأ كل زوج جديدًا باستخدام وحدة crypto في Node، ولا يُخزَّن مطلقًا.

إعادة تعيين

الأسئلة الشائعة

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

يُعد P-256 (المعروف أيضًا باسم prime256v1 أو secp256r1) المنحنى الأوسع دعمًا، ويوفر أمانًا يعادل نحو 128 بت. يوفر P-384 نحو 192 بت، وتفرضه بعض الملفات التعريفية الحكومية مثل CNSA. أما P-521 فهو أكبر منحنيات NIST وأقلها دعمًا، لذا اختره فقط إذا طلبه النظام.

أي خوارزمية JWT تناسب كل منحنى؟

توقّع مفاتيح P-256 باستخدام ES256، ومفاتيح P-384 باستخدام ES384، ومفاتيح P-521 باستخدام ES512. يربط JOSE كل خوارزمية بمنحنى واحد بعينه، لذا يرفض مولّد JWT المفتاح الذي يستخدم منحنى غير مناسب. تعرض النتيجة الخوارزمية المطابقة لمفتاحك.

ما التنسيقات التي تُعاد؟

يكون المفتاح الخاص بترميز PEM وفق PKCS #8 (BEGIN PRIVATE KEY)، والمفتاح العام بترميز PEM وفق SubjectPublicKeyInfo (BEGIN PUBLIC KEY) مع المنحنى المسمى. وتحصل أيضًا على سطر ecdsa-sha2-nistp256 أو nistp384 أو nistp521 الذي يتوقعه OpenSSH في authorized_keys.

كيف أحصل على تنسيق SEC1 (BEGIN EC PRIVATE KEY)؟

لا تزال بعض الأدوات تتطلب ترميز SEC1 الأقدم. باستخدام OpenSSL 3، شغّل openssl pkey -in key.pem -traditional -out key-ec.pem، أو openssl ec -in key.pem -out key-ec.pem. يظل المفتاح نفسه دون تغيير.

هل يمكنني إنشاء طلب توقيع شهادة بهذا المفتاح؟

نعم. احفظ ملف PEM الخاص ثم شغّل openssl req -new -key key.pem -subj "/CN=example.com" -out request.csr، ثم تحقّق من الطلب باستخدام مفكك ترميز CSR. تقبل سلطات الشهادات مفاتيح P-256 وP-384 لشهادات TLS.

لماذا تكون مفاتيح EC أصغر من مفاتيح RSA؟

تحقق تشفيرات المنحنيات الإهليلجية مستوى الأمان نفسه باستخدام مفاتيح أقصر بكثير، لذا يعادل مفتاح P-256 تقريبًا مفتاح RSA بطول 3072 بت. وتكون التواقيع أقصر ويكون التوقيع أسرع. ويتسع المفتاح العام في 65 بايتًا على P-256.

هل المفتاح الخاص محمي بعبارة مرور؟

لا، يُعاد دون تشفير كي تتمكن الأدوات الأخرى من قراءته مباشرة. شفّره للتخزين باستخدام openssl pkey -in key.pem -aes256 -out key-encrypted.pem. لا تودع أبدًا مفتاحًا خاصًا غير مشفر في مستودع.

ما استخدام بصمة JWK؟

بصمة RFC 7638 هي تجزئة SHA-256 بصيغة base64url لأعضاء crv وkty وx وy في المفتاح. وهي معرّف ثابت للمفتاح لا يعتمد على تنسيق PEM أو JWK، وتناسب الاستخدام كقيمة kid في ترويسات JWT ومستندات JWKS.

هل يُخزَّن زوج المفاتيح؟

لا. يُنشأ الزوج في الذاكرة لطلبك، ويُعاد مرة واحدة، ولا يُسجّل أو يُحفظ مطلقًا. انسخ المفتاحين قبل مغادرة الصفحة، إذ لا يمكن عرضهما مجددًا.

ما الذي يغيّره حقل التعليق؟

يضيف تسمية فقط إلى نهاية سطر المفتاح العام في OpenSSH، مثل user@laptop، لتسهيل التعرّف على المفتاح في authorized_keys. تظل البصمات وبيانات المفتاح كما هي. يمكن أن يصل طول التعليق إلى 200 حرفًا.

نبذة عن OneClick Pro

OneClick Pro مجموعة مجانية تضم أكثر من 150 أداة ويب للمهام اليومية: تحويل الصور والوحدات، وتنسيق الأكواد والتحقق من صحتها، وفحص النطاقات وSEO، والعمل مع النصوص والتواريخ والأرقام. تعمل كل أداة دون تسجيل أو اشتراك، ولا تُستخدم البيانات التي تُدخلها إلا لحساب النتيجة ولا تُخزّن مطلقًا. استخدمها كصندوق أدوات سريع للمهام المنفردة، أو أضف الأدوات التي تعتمد عليها يوميًا إلى إشاراتك المرجعية.