Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
python-ecdsa — توقيع/تحقق ECDSA واتفاق مفاتيح ECDH بلغة بايثون نقية | Kitploit
أدوات/GitHubGitHub/tlsfuzzer/python-ecdsa
أدوات التشفير/فك التشفيرالتشفيرالأدوات والمكوناتالمصادقةالتعلم والتعليم
GitHubtlsfuzzer/python-ecdsa

python-ecdsa

توقيع/تحقق ECDSA واتفاق مفاتيح ECDH بلغة بايثون نقية

عرض المستودع
97534218منذ 3 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

ECDSA و ECDH بلغة Python الخالصة

GitHub CI Documentation Status Coverage Status condition coverage mutation score CodeQL Latest Version Code style: black

هذا تطبيق سهل الاستخدام لتشفير المنحنيات الإهليلجية (ECC) مع دعم لـ ECDSA (خوارزمية التوقيع الرقمي بالمنحنيات الإهليلجية)، وEdDSA (خوارزمية التوقيع الرقمي بمنحنيات إدواردز)، وECDH (تبادل مفاتيح ديفي-هيلمان بالمنحنيات الإهليلجية)، مطبق بالكامل في Python ومصدر بموجب رخصة MIT. باستخدام هذه المكتبة، يمكنك إنشاء أزواج مفاتيح (مفتاح توقيع ومفتاح تحقق) بسرعة، وتوقيع الرسائل، والتحقق من التوقيعات. يمكنك أيضًا الاتفاق على مفتاح سري مشترك استنادًا إلى المفاتيح العامة المتبادلة. المفاتيح والتوقيعات قصيرة جدًا، مما يجعل من السهل التعامل معها ودمجها في بروتوكولات أخرى.

ملاحظة: لا ينبغي استخدام هذه المكتبة في بيئات الإنتاج؛ راجع Security لمزيد من التفاصيل.

الميزات

توفر هذه المكتبة توليد المفاتيح والتوقيع والتحقق واشتقاق السر المشترك لخمس منحنيات NIST الشهيرة من فئة "Suite B" على حقل GF(p) (الحقل الأولي)، بأطوال مفاتيح 192 و224 و256 و384 و521 بت. "الأسماء المختصرة" لهذه المنحنيات، كما تعرفها أداة OpenSSL (openssl ecparam -list_curves)، هي: prime192v1، secp224r1، prime256v1، secp384r1، وsecp521r1. كما تتضمن منحنى 256-بت secp256k1 المستخدم في Bitcoin. يوجد أيضًا دعم للنسخ العادية (غير الملتوية) لمنحنيات Brainpool من 160 إلى 512 بت. "الأسماء المختصرة" لتلك المنحنيات هي: brainpoolP160r1، brainpoolP192r1، brainpoolP224r1، brainpoolP256r1، brainpoolP320r1، brainpoolP384r1، brainpoolP512r1. كما تم تضمين بعض المنحنيات الصغيرة من معيار SEC (بشكل أساسي لتسريع اختبار المكتبة)، وهي: secp112r1، secp112r2، secp128r1، وsecp160r1. يُدعم أيضًا توليد المفاتيح والتوقيع والتحقق لمنحنيات Ed25519 وEd448. لا يتم تضمين منحنيات أخرى، لكن إضافة دعم لمزيد من المنحنيات على الحقول الأولية ليس بالأمر الصعب.

الاعتماديات

تعتمد هذه المكتبة على Python وحزمة 'six' فقط. وهي متوافقة مع Python 2.6 و2.7 و3.6+. كما أنها تدعم التنفيذ على تطبيقات بديلة مثل pypy وpypy3.

إذا تم تثبيت gmpy2 أو gmpy، فسيتم استخدامهما لإجراء عمليات حسابية أسرع. يمكن تثبيت أي منهما بعد تثبيت هذه المكتبة، وسيكتشف python-ecdsa وجودهما عند بدء التشغيل ويستخدمهما تلقائيًا. ويُفضّل استخدام gmpy2 على Python3 للحصول على الأداء الأمثل.

لتشغيل اختبارات التوافق مع OpenSSL، يجب أن تكون أداة 'openssl' في مسار PATH. تم اختبار هذا الإصدار بنجاح مع OpenSSL 0.9.8o و1.0.0a و1.0.2f و1.1.1d و3.0.1 (من بين إصدارات أخرى).

التثبيت

هذه المكتبة متاحة على PyPI، ويُنصح بتثبيتها باستخدام pip:``` pip install ecdsa

في حال كانت هناك حاجة لأداء أعلى ولم يكن استخدام الكود الأصلي مشكلة، فمن الممكن تحديد التثبيت مع `gmpy2`:```
pip install ecdsa[gmpy2]

أو (خيار أبطأ وقديم):``` pip install ecdsa[gmpy]

## السرعة

يوضح الجدول التالي المدة التي تستغرقها هذه المكتبة لتوليد أزواج المفاتيح
(`keygen`)، لتوقيع البيانات (`sign`)، للتحقق من تلك التوقيعات (`verify`)،
لاشتقاق سر مشترك (`ecdh`)،
وللتحقق من التوقيعات دون حساب مسبق خاص بالمفتاح (`no PC verify`).
جميع هذه القيم بالثواني.
للتسهيل، تُقدَّم أيضاً القيم العكسية لهذه القيم:
كم عدد المفاتيح التي يمكن توليدها في الثانية (`keygen/s`)، وكم عدد التوقيعات
التي يمكن إنشاؤها في الثانية (`sign/s`)، وكم عدد التوقيعات التي يمكن التحقق منها
في الثانية (`verify/s`)، وكم عدد الأسرار المشتركة التي يمكن اشتقاقها في الثانية
(`ecdh/s`)، وكم عدد التوقيعات دون حساب مسبق خاص
بالمفتاح التي يمكن التحقق منها في الثانية (`no PC verify/s`). حجم التوقيع
الخام (عادةً أصغر
طريقة يمكن بها ترميز التوقيع) مُقدَّم أيضاً في عمود `siglen`.
استخدم `tox -e speed` لتوليد هذا الجدول على جهازك الخاص.
على معالج Intel Core i7 4790K @ 4.0GHz أحصل على الأداء التالي:```
                  siglen    keygen   keygen/s      sign     sign/s    verify   verify/s  no PC verify  no PC verify/s
        NIST192p:     48   0.00032s   3134.06   0.00033s   2985.53   0.00063s   1598.36       0.00129s         774.43
        NIST224p:     56   0.00040s   2469.24   0.00042s   2367.88   0.00081s   1233.41       0.00170s         586.66
        NIST256p:     64   0.00051s   1952.73   0.00054s   1867.80   0.00098s   1021.86       0.00212s         471.27
        NIST384p:     96   0.00107s    935.92   0.00111s    904.23   0.00203s    491.77       0.00446s         224.00
        NIST521p:    132   0.00210s    475.52   0.00215s    464.16   0.00398s    251.28       0.00874s         114.39
       SECP256k1:     64   0.00052s   1921.54   0.00054s   1847.49   0.00105s    948.68       0.00210s         477.01
 BRAINPOOLP160r1:     40   0.00025s   4003.88   0.00026s   3845.12   0.00053s   1893.93       0.00105s         949.92
 BRAINPOOLP192r1:     48   0.00033s   3043.97   0.00034s   2975.98   0.00063s   1581.50       0.00135s         742.29
 BRAINPOOLP224r1:     56   0.00041s   2436.44   0.00043s   2315.51   0.00078s   1278.49       0.00180s         556.16
 BRAINPOOLP256r1:     64   0.00053s   1892.49   0.00054s   1846.24   0.00114s    875.64       0.00229s         437.25
 BRAINPOOLP320r1:     80   0.00073s   1361.26   0.00076s   1309.25   0.00143s    699.29       0.00322s         310.49
 BRAINPOOLP384r1:     96   0.00107s    931.29   0.00111s    901.80   0.00230s    434.19       0.00476s         210.20
 BRAINPOOLP512r1:    128   0.00207s    483.41   0.00212s    471.42   0.00425s    235.43       0.00912s         109.61
       SECP112r1:     28   0.00015s   6672.53   0.00016s   6440.34   0.00031s   3265.41       0.00056s        1774.20
       SECP112r2:     28   0.00015s   6697.11   0.00015s   6479.98   0.00028s   3524.72       0.00058s        1716.16
       SECP128r1:     32   0.00018s   5497.65   0.00019s   5272.89   0.00036s   2747.39       0.00072s        1396.16
       SECP160r1:     42   0.00025s   3949.32   0.00026s   3894.45   0.00046s   2153.85       0.00102s         985.07
         Ed25519:     64   0.00076s   1324.48   0.00042s   2405.01   0.00109s    918.05       0.00344s         290.50
           Ed448:    114   0.00176s    569.53   0.00115s    870.94   0.00282s    355.04       0.01024s          97.69
تنزيل الأداة