السلام عليكم ورحمة الله وبركاتة
بالبداية ماهو ال signature verification ( توقيع التحقق ) ولماذا نحتاجه؟
ماهو توقيع التحقق؟
توقيع التحقق هو توقيع يساعدك على التحقق من ان مصدر العملية هو المصدر الموثوق، مبعنى التاكد ان من قام بهذه العملية هو صاحب الحساب نفسه.
ماذا نحتاجه:
للاسف، من السهل تزوير عملية في GitHub بمعنى اظهار انه من قام بعمل هذه العملية هو شخص ولكنه في الحقيقة شخص اخر، مثل هذه العملية يظهر لنا ان من قام بها هو لينوس تورفالدس ولكنه في الحقيقة @Dwaseel لذالك يجب عليك وضع التوثيق ليتم الوثوق بعملياتك التي تجريها في GitHub
انشاء مفتاح GPG
تنويه: لاتقوم بمسح مفاتيح ال GPG الخاصة بك على GitHub لانه سوف يتم ازالة علامات التوثيق ( verified ) بعلامة عدم التحقق ( Unverified ) من العمليات التي تم توثيقها عبرها
الان سوف نتاكد من وجود مفتاح GPG في GitHub لتفادي انشاء مفتاح جديد، في البداية يجب عليك الدخول الى GitHub وتسجيل الدخول، بعد تسجيل الدخول توجه الى الاعدادات ( settings )
وبعدها الى مفاتيح ال SSH و GPG اسم الخانة ( SSH and GPG keys )
وننزل تحت الى GPG keys
اذا وجدت مفتاح قم بنسخ ال Key ID ( لاتخبر احد به ) وذهب الى الخطوة التالية، اذ لم تجد مفتاح هيا لننشئ مفتاح سوياً، اولا نفتح الطرفية ( Terminal ) ونقوم بكتابة هذه الامر gpg --full-generate-key بعدها سوف نحتار النوع اختار RSA and RSA وبعدها سوف يسالك عن طول المفتاح يفضل اختيار 4096 وبعدها سوف يطلب منك وقت انتهاء المفتاح يفضل عدم وضع تاريخ انتهاء لعدم زوال علامة التوثيق
جميل، والان سوف يطلب منك الاسم ( ضع اسم حسابك في GitHub وبعدها سوف يطلب منك الايميل الخاص بك ( ضع الايميل الخاص بك في GitHub ) وسوف يطلب منك كتابة تعليق يمكنك تجاهله بالضغط على انتر، وبعدها قم بكتابة O لتاكيد البيانات التي ادخلتها، وهكذا تم انشاء المفتاح بنجاح، بعد ذالك قم بنسخ المفتاح كامل وضعه في GitHub لاظهار المفتاح قم بكتابة هذ الامر لاظهار الايدي الخاص بالمفتاح gpg --list-secret-keys --keyid-format LONG
قم بنسخ الايدي واكتب هذه الامر بتبوعا بالايدي الذي نسخته gpg --armor --export
قم بنسخ المفتاح العام الذي ظهر لك
من -----BEGIN PGP PUBLIC KEY BLOCK----- الى -----END PGP PUBLIC KEY BLOCK-----
كاملا وضعه في GitHub بعد الضغط على New GPG key
والان بعد انشاء المفتاح وادخاله في GitHub بقي عليك اخبار git بالايدي الخاص بالمفتاح، لذالك قم بنسخه والانتقال الى الخطوة التالية
تعريف المفتاح في git
بعد نسخ ايدي المفتاح الخاص بك، قم بلصقه بعد هذه الامر لتعريفه في git
git config --global user.signingkey
![]()
بعد وضعه نقوم بتفعيله بالامر التالي git config --global commit.gpgsign true
والان تم الانتهاء بحمد الله، لنختبر هذه
تم هذه بنجاح بحمد الله، اتمنى ان الشرح واضح لكم يمكنكم طرح الاسئلة بالاسفل وسوف اجيب عليها باذن الله
المصادر:
هذا الموضوع فائز بجائزة أسس للكتابة
هذا الموضوع فائز بجائزة أسس للكتابة وهي اول جائزة عربية مخصصة للكتابة عن البرمجيات الحرة والمفتوحة.
الموضوع متوفر على مدونة gnulinuxsa هنا:









