CMS_FINAL(3SSL)

الاسم
CMS_final, CMS_final_digest - إنهاء بنية CMS_ContentInfo

موجز
 #include <openssl/cms.h>

 int CMS_final(CMS_ContentInfo *cms, BIO *data, BIO *dcont, unsigned int flags);
 int CMS_final_digest(CMS_ContentInfo *cms, const unsigned char *md,
                      unsigned int mdlen, BIO *dcont, unsigned int flags);

الوصف
CMS_final() تُنهي البنية cms. غرضها هو تنفيذ أي عمليات ضرورية على cms (مثل حساب الملخص) وتعيين الحقول المناسبة. المعامل data يحتوي على المحتوى المراد معالجته. المعامل dcont يحتوي على BIO لكتابة المحتوى إليه بعد المعالجة: يُستخدم هذا فقط مع البيانات المنفصلة وعادةً ما يُضبط إلى NULL.

CMS_final_digest() تُنهي البنية cms باستخدام ملخص محسوب مسبقًا، بدلاً من حساب الملخص من البيانات الأصلية.

ملاحظات
تُستدعى هذه الدوال عادةً عند استخدام العلم CMS_PARTIAL. يجب استخدامها فقط عندما لا يُجرى التدفق لأن دوال الإدخال/الإخراج المتدفقة تنفذ عمليات الإنهاء داخليًا.

لتوقيع ملخص محسوب مسبقًا، تُستدعى CMS_sign(3) أو CMS_sign_ex() مع ضبط المعامل data إلى NULL قبل إنهاء بنية CMS بالملخص المُقدم إلى CMS_final_digest() في شكل ثنائي. عند توقيع ملخص محسوب مسبقًا، يعتمد الأمان على الثقة في الملخص وحسابه من الرسالة الأصلية.

القيم المُرجعة
CMS_final() و CMS_final_digest() تُرجعان 1 للنجاح أو 0 للفشل.

انظر أيضًا
ERR_get_error(3)، CMS_sign(3)، CMS_encrypt(3)

التاريخ
CMS_final_digest() أُضيفت في OpenSSL 3.2.

حقوق النسخ
حقوق النشر 2008-2022 لمؤلفي مشروع OpenSSL. جميع الحقوق محفوظة.

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

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

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

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