
أداة بسيطة للغاية لتوقيع الملفات والتحقق من التوقيعات الرقمية.
أداة بسيطة للغاية لتوقيع الملفات والتحقق من التوقيعات.
Minisign هي أداة لتوقيع الملفات والتحقق من التوقيعات. صُممت لتكون:
تستخدم Minisign نظام توقيع المفتاح العام Ed25519 مع توقيعات صغيرة وسريعة.
للحصول على توثيق شامل، يرجى الرجوع إلى موقع توثيق Minisign أو صفحة الدليل المرفقة.
Minisign متاحة في العديد من مديري الحزم:
| المنصة | الأمر |
|---|---|
| macOS (Homebrew) | brew install minisign |
| Windows (Scoop) | scoop install minisign |
| Windows (Chocolatey) | choco install minisign |
التبعيات:
خيارات الترجمة:
zig build -Doptimize=ReleaseSmall
zig build -Doptimize=ReleaseSmall -Dstatic
zig build -Doptimize=ReleaseSmall -Dwithout-libsodium
يمكن العثور على الملف الثنائي الناتج في zig-out/bin/minisign.
للحصول على تنفيذ أسرع على حساب حجم ثنائي أكبر، يمكنك استبدال ReleaseSmall بـ ReleaseFast في أي من الأوامر أعلاه.
التبعيات:
الترجمة:
mkdir build
cd build
cmake ..
make
make install # with appropriate permissions
إعداد بديل للملفات الثنائية الثابتة:
cmake -D STATIC_LIBSODIUM=1 ..
أو:
cmake -D BUILD_STATIC_EXECUTABLES=1 ..
minisign -G
ينشئ هذا:
minisign.pub افتراضيًا)minisign.key افتراضيًا)minisign -S -m file.txt
ينشئ هذا ملف توقيع باسم file.txt.minisig.
لإضافة تعليق موثوق سيتم التحقق منه:
minisign -S -m file.txt -t "Trusted comment here"
minisign -Vm file.txt -p minisign.pub
أو باستخدام مفتاح عام مباشرة:
minisign -Vm file.txt -P RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3
يمكن التحقق من الأرشيفات والملفات الثنائية المجمعة مسبقًا من المشروع باستخدام المفتاح العام التالي:
RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3
Minisign متاحة كصورة Docker:
docker run -i --rm jedisct1/minisign
مثال على إنشاء مفتاح لأول مرة ثم توقيع ملف محلي:
docker run -i --rm -v .:/minisign jedisct1/minisign \
-s minisign.key -G
docker run -i --rm -v .:/minisign jedisct1/minisign \
-s minisign.key -S -m files_to_sign
-s minisign.key ينشئ المفتاح السري ويستخدمه؛ سيتم تسمية المفتاح العام minisign.pub.
مهم: أنشئ نسخة احتياطية ولا تقم بإرسال أو مشاركة ملف المفتاح الخاص الذي أنشأته minisign.key.
مثال على التحقق من توقيع باستخدام صورة Docker:
docker run -i --rm -v .:/minisign jedisct1/minisign \
-Vm file_to_verify -p minisign.pub
يمكن حذف -p minisign.pub إذا تم إنشاء الاسم الافتراضي.
يمكن التحقق من الصورة باستخدام مفتاح cosign العام التالي:
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAExjZWrlc6c58W7ZzmQnx6mugty99C
OQTDtJeciX9LF9hEbs1J1fzZHRdRhV4OTqcq0jTW9PXnrSSZlk1fbkE/5w==
-----END PUBLIC KEY-----
Minisign متوافقة مع signify، أداة التوقيع في OpenBSD. يمكن التحقق من التوقيعات المنشأة باستخدام signify مع minisign، والعكس صحيح.
يستخدم هذا التنفيذ توقيعات حتمية، ما لم يتم ترجمة libsodium مع تعريف ماكرو ED25519_NONDETERMINISTIC. يضيف هذا ضوضاء عشوائية إلى حساب nonces الخاصة بـ EdDSA.
يمكن للتنفيذات الأخرى اختيار استخدام توقيعات غير حتمية افتراضيًا. ستبقى متوافقة تمامًا مع التنفيذات التي تستخدم توقيعات حتمية.
minizign هو الآن التنفيذ الموصى به. هذا هو المكان الذي سيتم فيه تنفيذ الميزات الجديدة.
أدوات ومكتبات أخرى: