كيفية التقديم واستخدام شهادة توقيع الكود
مقدمة في شهادة توقيع الكود
تُستخدم شهادة توقيع الكود لتوقيع الشيفرة البرمجية رقميًا، للتحقق من هوية الناشر وضمان سلامة الكود. إنها تضمن للمستخدمين أن البرنامج يأتي من مصدر موثوق ولم يتم العبث به أو تعديله بعد النشر. هذا أمر حيوي لبناء ثقة المستخدم ومنع انتشار البرمجيات الخبيثة.
استخدامات شهادة توقيع الكود:
- التحقق من هوية ناشر البرنامج: تتحقق شهادة توقيع الكود من مصدر البرنامج، مما يُؤكد للمستخدمين أن البرنامج يأتي من مطور أو منظمة شرعية.
- ضمان سلامة الكود: يمكن للتوقيع الرقمي إثبات أن الكود لم يتم تعديله منذ توقيعه، لمنع حقن البرمجيات الخبيثة أو العبث.
- تعزيز ثقة المستخدم: يمكن للبرامج الموقعة إزالة التحذيرات الأمنية التي تصدرها أنظمة التشغيل أو المتصفحات، مما يعزز ثقة المستخدمين في البرنامج ويشجعهم على التثبيت والاستخدام.
- منع انتشار البرمجيات الخبيثة: يمكن لتوقيع الكود مساعدة المستخدمين في التعرف على وتجنب تثبيت البرمجيات المحتملة الخبيثة غير الموقعة أو القادمة من مصدر غير معروف.
التقديم لشهادة توقيع الكود عبر ServBay
افتح لوحة إدارة شهادات SSL: في الشريط الجانبي لـ ServBay، انقر على "SSL Certificates" للدخول لمنصة إدارة الشهادات.
اضغط على زر الإضافة: اضغط على زر "+" في الزاوية اليمنى العليا.
املأ معلومات الشهادة: في صفحة "Request Certificate"، املأ المعلومات التالية:
- Common Name: اكتب اسم مؤسستك أو اسمك الشخصي. مثلًا
ServBay, LLC
أوSam NG
. - Usage Purpose: اختر غرض الشهادة، اختر
Code Signing
. - Request Method: اختر
ServBay CA
. - Issuer: اختر
ServBay User CA
. - Algorithm: اختر خوارزمية التشفير، مثل
ECC
أوRSA
. - Key Length: اختر طول المفتاح، مثل
384
أو2048
. - Password: هام! قم بتعيين كلمة مرور لحماية مفتاحك الخاص. تذكر هذه الكلمة جيدًا لأنه لا يمكن استعادتها إذا نسيتها. كلمة المرور الافتراضية هي
ServBay.dev
.
- Common Name: اكتب اسم مؤسستك أو اسمك الشخصي. مثلًا
اضغط على زر "Request": بعد إتمام جميع الخطوات، اضغط على زر "Request" لإرسال طلب الشهادة. سيقوم ServBay بإصدار الشهادة تلقائيًا.
تصدير واستخدام الشهادة
- ادخل إلى لوحة إدارة شهادات SSL.
- اعثر على شهادة توقيع الكود المُصدرة.
- اضغط على زر العمليات: اضغط على أيقونة التصدير على يمين الشهادة.
- اختر مسار التصدير: في النافذة المنبثقة، اختر المكان الذي تريد حفظ الشهادة المصدرة فيه.
- استخدام أداة توقيع الكود: استورد ملف
.p12
المُصدر إلى أداة توقيع الكود الخاصة بك (مثلcodesign
(macOS)،signtool
(Windows) إلخ)، واستخدم كلمة المرور التي حددتها سابقًا لفك القفل. بعد ذلك، يمكنك استخدام هذه الشهادة لتوقيع الكود الخاص بك رقميًا.
مثال على توقيع الكود باستخدام الشهادة
$ gcc test.c -o /tmp/test # استخدام gcc لإنشاء ملف ثنائي للاختبار
$ security find-identity -v -p codesigning # البحث عن الشهادات المتاحة لتوقيع الكود
1) ...
2) 99C183BC3796067FAFBA6F232D1C3C3425DAABDA "ServBay, LLC"
2 valid identities found
$ codesign -f -s "99C183BC3796067FAFBA6F232D1C3C3425DAABDA" --timestamp /tmp/test # استخدام شهادة ID المذكورة لتوقيع الكود
test: replacing existing signature
$ codesign -dvvv /tmp/test # التحقق من صحة التوقيع
Executable=/tmp/test
Identifier=test
Format=Mach-O thin (arm64)
CodeDirectory v=20400 size=445 flags=0x0(none) hashes=9+2 location=embedded
Hash type=sha256 size=32
CandidateCDHash sha256=777e597ce37ad27e7b90d2aaaeeb9f1449170639
CandidateCDHashFull sha256=777e597ce37ad27e7b90d2aaaeeb9f1449170639a73e8090b1d9d1245d7f191b
Hash choices=sha256
CMSDigest=777e597ce37ad27e7b90d2aaaeeb9f1449170639a73e8090b1d9d1245d7f191b
CMSDigestType=2
CDHash=777e597ce37ad27e7b90d2aaaeeb9f1449170639
Signature size=7247
Authority=ServBay, LLC
Authority=ServBay Public CA - ECC Code Signing
Authority=ServBay Public CA - ECC Root
Timestamp=Nov 7, 2024 at 18:26:48
Info.plist=not bound
TeamIdentifier=not set
Sealed Resources=none
Internal requirements count=1 size=80
$ echo "abcde" > test # محاولة تلف توقيع الكود على الملف الثنائي
$ codesign -dvvv test # التحقق من التوقيع مرة أخرى
test: code object is not signed at all
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
تجديد الشهادة
صلاحية شهادة توقيع الكود في ServBay هي 800 يوم. قبل انتهاء صلاحية الشهادة، يمكنك النقر على الزر الموجود على اليمين للتجديد. في كل مرة يتم فيها التجديد، تكون الصلاحية هي التاريخ الحالي + 800 يوم.
حذف الشهادة
- ادخل إلى لوحة إدارة شهادات SSL.
- اعثر على الشهادة التي تريد حذفها.
- اضغط على زر العمليات: اضغط على أيقونة سلة المهملات على يمين الشهادة.
- أكد الحذف: في القائمة المنبثقة، اختر "Delete"، وأكد عملية الحذف.
ملخص
نأمل أن تساعدك هذه الوثيقة في تقديم واستخدام شهادة توقيع الكود على منصة ServBay. إذا كان لديك أي استفسارات، يرجى الاتصال بخدمة عملاء ServBay للحصول على المساعدة.