Scroll to navigation

des_crypt(3) Library Functions Manual des_crypt(3)

الاسم

des_crypt, ecb_crypt, cbc_crypt, des_setparity, DES_FAILED - تعمية DES سريع

المكتبة

مكتبة سي المعيارية (libc، -lc)

موجز

#include <rpc/des_crypt.h>
[[مهمل]] int ecb_crypt(unsigned int datalen;
                             char *key, char data[datalen],
                             unsigned int datalen, unsigned int mode);
[[مهمل]] int cbc_crypt(unsigned int datalen;
                             char *key, char data[datalen],
                             unsigned int datalen, unsigned int mode,
                             char *ivec);
[[مهمل]] void des_setparity(char *key);
[[مهمل]] int DES_FAILED(int status);

الوصف

تنفذ ecb_crypt() و cbc_crypt() معيار NBS DES (معيار تعمية البيانات). هذه الروتينات أسرع وأكثر عمومية من crypt(3). كما تستطيع استخدام عتاد DES إن وُجد. تعمي ecb_crypt() في وضع ECB (دفتر الشيفرة الإلكتروني)، الذي يعمي كتل البيانات بشكل مستقل. تعمي cbc_crypt() في وضع CBC (تسلسل كتل الشيفرة)، الذي يربط الكتل المتعاقبة معًا. يحمي وضع CBC من الإدراج والحذف والاستبدال للكتل. كما أن الانتظامات في النص الواضح لا تظهر في النص المُعمّى.

إليك كيفية استخدام هذه الروتينات. الوسيط الأول، key، هو مفتاح التعمية ذو 8 بايتات مع التكافؤ. لتعيين تكافؤ المفتاح، الذي يكون في البت المنخفض لكل بايت في DES، استخدم des_setparity(). الوسيط الثاني، data، يحتوي على البيانات التي ستُعمّى أو تُفك تعميتها. الوسيط الثالث، datalen، هو طول data بالبايتات، ويجب أن يكون مضاعفًا للعدد 8. الوسيط الرابع، mode، يُشكّل بعملية OR لبعض العناصر. لاتجاه التعمية، أجرِ OR مع إما DES_ENCRYPT أو DES_DECRYPT. للتعمية البرمجية مقابل العتادية، أجرِ OR مع إما DES_HW أو DES_SW. إذا حُدد DES_HW ولا يوجد عتاد، يُجرى التعمية برمجيًا ويعيد الروتين DESERR_NOHWDEVICE. بالنسبة لـ cbc_crypt()، الوسيط ivec هو متجه التهيئة ذو 8 بايتات للتسلسل. يُحدّث إلى متجه التهيئة التالي عند العودة.

قيمة الإرجاع

لا خطأ.
نجح التعمية، لكن أُجري برمجيًا بدلاً من العتاد المطلوب.
حدث خطأ في العتاد أو المُشغّل.
وسيط سيء للروتين.

بإعطاء حالة النتيجة stat، تكون الكلية DES_FAILED(stat) خاطئة فقط للحالتين الأوليين.

السمات

للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر attributes(7).

الواجهة السمة القيمة
ecb_crypt()، cbc_crypt()، des_setparity() سلامة الخيوط MT-Safe

المعايير

لا شيء.

التاريخ

4.3BSD. glibc 2.1. أُزيلت في glibc 2.28.

لأنها تستخدم شيفرة الكتل DES، التي لم تعد تُعتبر آمنة، أُزيلت هذه الدوال. يجب أن تتحول التطبيقات إلى مكتبة تعمية حديثة، مثل libgcrypt.

انظر أيضًا

des(1)، crypt(3)، xcrypt(3)

ترجمة

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

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

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

8 فبراير 2026 صفحات دليل لينكس 6.18