Scroll to navigation

OPENSSL-DGST(1SSL) OpenSSL OPENSSL-DGST(1SSL)

الاسم

openssl-dgst - تنفيذ عمليات التبخير

موجز

openssl dgst|digest [-digest] [-list] [-help] [-c] [-d] [-debug] [-hex] [-binary] [-xoflen length] [-r] [-out filename] [-sign filename|uri] [-keyform DER|PEM|P12|ENGINE] [-passin arg] [-verify filename] [-prverify filename] [-signature filename] [-sigopt nm:v] [-hmac key] [-mac alg] [-macopt nm:v] [-fips-fingerprint] [-engine id] [-engine_impl id] [-rand files] [-writerand file] [-provider name] [-provider-path path] [-provparam [name:]key=value] [-propquery propq] [file ...]

الوصف

يُخرج هذا الأمر ملخص الرسالة لملف أو ملفات مُقدمة بصيغة سداسية عشرية، ويُولد ويُتحقق من التوقيعات الرقمية باستخدام ملخصات الرسائل.

يمكن استخدام الاسم العام، openssl dgst، مع خيار يُحدد الخوارزمية المراد استخدامها. الملخص المبدئي هو sha256. يمكن أيضًا استخدام اسم digest مدعوم كاسم للأمر الفرعي. لعرض قائمة الخوارزميات المدعومة، استخدم "openssl list -digest-algorithms"

الخيارات

اطبع رسالة الاستخدام.
-خلاصة
يُحدد اسم ملخص مدعوم لاستخدامه. انظر الخيار -list أدناه:
يطبع قائمة بملخصات الرسائل المدعومة.
اطبع الملخص في مجموعات مكونة من رقمين مفصولة بنقطتين، ذو صلة فقط إذا تم إعطاء الخيار -hex أيضًا.
اطبع معلومات تصحيح أخطاء BIO.
يجب إخراج الملخص كتفريغ سداسي عشري. هذه هي الحالة المبدئية للملخص "العادي" على عكس التوقيع الرقمي. انظر الملاحظات أدناه للتوقيعات الرقمية باستخدام -hex.
أخرج الملخص أو التوقيع بصيغة ثنائية.
اضبط طول الإخراج لخوارزميات XOF، مثل shake128 و shake256. هذا الخيار غير مدعوم لعمليات التوقيع.

بالنسبة لمزودي OpenSSL، من المطلوب تعيين هذه القيمة لخوارزميات shake، لأن القيم المبدئية السابقة تم تعيينها فقط لتوفير نصف قوة الأمان القصوى.

لضمان قوة أمان قصوى تبلغ 128 بت، يجب تعيين xoflen لـ shake128 إلى 32 (بايت) على الأقل. للتوافق مع الإصدارات السابقة من OpenSSL، يمكن تعيينه إلى 16، مما يؤدي إلى قوة أمان تبلغ 64 بت فقط.

لضمان قوة أمان قصوى تبلغ 256 بت، يجب تعيين xoflen لـ shake256 إلى 64 (بايت) على الأقل. للتوافق مع الإصدارات السابقة من OpenSSL، يمكن تعيينه إلى 32، مما يؤدي إلى قوة أمان تبلغ 128 بت فقط.

أخرج الملخص بصيغة "coreutils"، بما في ذلك الأسطر الجديدة. يُستخدم بواسطة برامج مثل sha1sum(1).
اسم الملف للإخراج إليه، أو الإخراج القياسي بشكل مبدئي.
وقع الملخص رقميًا باستخدام المفتاح الخاص المُعطى.

لاحظ أنه بالنسبة للخوارزميات التي تدعم التوقيع لمرة واحدة فقط (مثل Ed25519, ED448, ML-DSA-44, ML-DSA-65 و ML-DSA-87) يجب عدم تعيين الملخص. بالنسبة لهذه الخوارزميات، يتم تخزين الإدخال مؤقتًا (وليس تبخيره) قبل التوقيع. بالنسبة لهذه الخوارزميات، إذا كان الإدخال أكبر من 16 ميجابايت، سيحدث خطأ.

صيغة المفتاح للتوقيع به؛ غير محدد بشكل مبدئي. انظر openssl-format-options(1) للتفاصيل.
مرر خيارات لخوارزمية التوقيع أثناء عمليات التوقيع أو التحقق. أسماء وقيم هذه الخيارات خاصة بالخوارزمية وموثقة في "معاملات التوقيع" في provider-signature(7).
مصدر كلمة مرور المفتاح الخاص. لمزيد من المعلومات حول تنسيق arg انظر openssl-passphrase-options(1).
تحقق من التوقيع باستخدام المفتاح العام في "اسم_الملف". الناتج إما "تم التحقق بنجاح" أو "فشل التحقق".
تحقق من التوقيع باستخدام المفتاح الخاص في "اسم_الملف".
التوقيع الفعلي المراد التحقق منه.
أنشئ MAC مشفر باستخدام "مفتاح".

يُفضل استخدام أمر openssl-mac(1) بدلاً من خيار سطر الأوامر هذا.

أنشئ MAC (رمز مصادقة رسالة بمفتاح). خوارزمية MAC الأكثر شيوعًا هي HMAC (MAC قائم على التجزئة)، ولكن هناك خوارزميات MAC أخرى غير قائمة على التجزئة، على سبيل المثال خوارزمية gost-mac، المدعومة من محرك gost. يجب ضبط مفاتيح MAC وخيارات أخرى عبر معامل -macopt.

يُفضل استخدام أمر openssl-mac(1) بدلاً من خيار سطر الأوامر هذا.

يمرر خيارات إلى خوارزمية MAC، المحددة بمفتاح -mac. الخيارات التالية مدعومة من كل من HMAC و gost-mac:
يحدد مفتاح MAC كسلسلة أبجدية رقمية (استخدم إذا كان المفتاح يحتوي على أحرف قابلة للطباعة فقط). يجب أن يتوافق طول السلسلة مع أي قيود لخوارزمية MAC، على سبيل المثال 32 حرفًا بالضبط لـ gost-mac.
يحدد مفتاح MAC بصيغة سداسية عشرية (رقمان سداسيان عشريان لكل بايت). يجب أن يتوافق طول المفتاح مع أي قيود لخوارزمية MAC، على سبيل المثال 32 حرفًا بالضبط لـ gost-mac.

يُفضل استخدام أمر openssl-mac(1) بدلاً من خيار سطر الأوامر هذا.

احسب HMAC باستخدام مفتاح محدد لعمليات OpenSSL-FIPS معينة.
انظر "خيارات الحالة العشوائية" في openssl(1) للتفاصيل.
انظر "خيارات المحرك" في openssl(1). هذا الخيار مهجور.

لا يُستخدم المحرك للملخصات ما لم يُستخدم خيار -engine_impl أو تم تكوينه للقيام بذلك، انظر "وحدة تكوين المحرك" في config(5).

عند استخدامه مع خيار -engine، يحدد استخدام المحرك id أيضًا لعمليات التلخيص.
انظر "خيارات المزود" في openssl(1)، و provider(7)، و property(7).
ملف أو ملفات لتلخيصها. إذا لم تُحدد أي ملفات، يُستخدم الإدخال القياسي.

أمثلة

لإنشاء تلخيص رسالة مشفر بالنظام الست عشري لملف:

 openssl dgst -md5 -hex file.txt
 أو
 openssl md5 file.txt

لتوقيع ملف باستخدام SHA-256 مع إخراج ملف ثنائي:

 openssl dgst -sha256 -sign privatekey.pem -out signature.sign file.txt
 أو
 openssl sha256 -sign privatekey.pem -out signature.sign file.txt

للتحقق من توقيع:

 openssl dgst -sha256 -verify publickey.pem \
 -signature signature.sign \
 file.txt

ملاحظات

تعتمد آليات التلخيص المتاحة على الخيارات المستخدمة عند بناء OpenSSL. يمكن استخدام الأمر "openssl list -digest-algorithms" لسردها.

يجب على التطبيقات الجديدة أو المرنة استخدام SHA-256 على الأرجح. لا تزال التلاخيص الأخرى، خاصة SHA-1 وMD5، مستخدمة على نطاق واسع للتوافق مع التنسيقات والبروتوكولات الحالية.

عند توقيع ملف، يحدد هذا الأمر آليًا الخوارزمية (RSA، ECC، إلخ) المستخدمة للتوقيع بناءً على معلومات ASN.1 للمفتاح الخاص. عند التحقق من التوقيعات، يعالج فقط توقيع RSA أو DSA أو ECDSA نفسه، وليس البيانات ذات الصلة لتحديد الموقع والخوارزمية المستخدمة في تنسيقات مثل x.509 وCMS وS/MIME.

مطلوب مصدر للأرقام العشوائية لبعض خوارزميات التوقيع، خاصة ECDSA وDSA.

يجب استخدام خيارات التوقيع والتحقق فقط إذا كان ملف واحد يُوقع أو يُتحقق منه.

لا يمكن التحقق من التوقيعات الست عشرية باستخدام openssl. بدلاً من ذلك، استخدم "xxd -r" أو برنامج مشابه لتحويل التوقيع الست عشري إلى توقيع ثنائي قبل التحقق.

يُفضل الأمر openssl-mac(1) على خيارات سطر الأوامر -hmac و-mac و-macopt.

انظر أيضًا

openssl-mac(1)

التاريخ

تم تغيير التلخيص المبدئي من MD5 إلى SHA256 في OpenSSL 1.1.0. أُزيلت الخيارات المتعلقة بـ FIPS في OpenSSL 1.1.0.

تم إهمال خياري -engine و-engine_impl في OpenSSL 3.0.

حقوق النسخ

حقوق النشر 2000-2025 لمؤلفي مشروع OpenSSL. جميع الحقوق محفوظة.

مرخص بموجب رخصة Apache 2.0 (المشار إليها فيما يلي بـ ”الرخصة“). لا يجوز لك استخدام هذا الملف إلا وفقًا لشروط الرخصة. يمكنك الحصول على نسخة منها في الملف LICENSE الموجود في حزمة التوزيع المصدرية أو على الرابط <https://www.openssl.org/source/license.html>.

ترجمة

تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.

7 أبريل 2026 3.6.2