Bitcoin Script والتحقق من توقيعات UTXO
تتبّع نصوص الدفع إلى تجزئة المفتاح العام (P2PKH) وتوقيع ECDSA
Bitcoin Script والتحقق من توقيعات UTXO درس مجاني في Cryptology Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Cryptology Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Cryptology Academy 4 دروس في المجموع.
نموذج UTXO
يستخدم Bitcoin مخرجات المعاملات غير المُنفقة (UTXOs). كل UTXO هو عملة تحتوي على برنامج قفل (scriptPubKey). ولإنفاقها، يقدّم المُنفِق برنامج فتح (scriptSig) يستوفي شروط برنامج القفل. وتتميز UTXOs بأنها ذرّية — إما مُنفقة أو غير مُنفقة، ولا يمكن إنفاق جزء منها.
Bitcoin Script
Bitcoin Script هي لغة تعتمد على المكدس وغير مكتملة تورنغ. تُنفَّذ البرامج بدفع البيانات وتشغيل رموز التشغيل. لا توجد حلقات ولا استدعاءات递归 — لذا تنتهي البرامج دائمًا. يمنع هذا القيد المتعمد هجمات حجب الخدمة، ويجعل التحقق من البرنامج ذا تعقيد O(n) بالنسبة إلى طول البرنامج.
P2PKH: الدفع مقابل تجزئة المفتاح العام
نوع المخرجات الأكثر شيوعًا. scriptPubKey: OP_DUP OP_HASH160
تتبّع تنفيذ P2PKH
تتبّع المكدس في P2PKH: ادفع
ECDSA في Bitcoin
يستخدم Bitcoin خوارزمية ECDSA على المنحنى secp256k1 (منحنى Koblitz، y^2 = x^3 + 7 mod p). يكون المفتاح الخاص d ∈ [1, n-1]. والمفتاح العام Q = d*G. Sign(m): قيمة k عشوائية؛ r = (k*G).x mod n؛ s = k^{-1}(H(m)+r*d) mod n. التوقيع = (r, s). ويُرمَّز بترميز DER داخل scriptSig.
أنواع SIGHASH
تلتزم توقيعات Bitcoin بأجزاء محددة من المعاملة: SIGHASH_ALL (الافتراضي): توقيع جميع المدخلات والمخرجات. SIGHASH_SINGLE: توقيع المخرج المناظر فقط. SIGHASH_NONE: عدم توقيع أي مخرجات (وهو خطر). SIGHASH_ANYONECANPAY: توقيع المدخل الخاص بالموقّع فقط — ما يتيح إجراء معاملات تعاونية.
P2SH: الدفع مقابل تجزئة البرنامج
يتيح P2SH إخفاء شروط الإنفاق المعقدة خلف تجزئة. scriptPubKey: OP_HASH160
توقيع متعدد (2 من 3)
redeemScript: OP_2
SegWit وP2WPKH
ينقل الشاهد المنفصل (Segregated Witness، أو SegWit، وفق BIP-141) التوقيعات من scriptSig إلى حقل witness منفصل. ويعالج قابلية تحوير المعاملة (إذ يتغير المعرّف إذا تغيّر scriptSig). scriptPubKey في P2WPKH: OP_0 <20-byte pubKeyHash>. الشاهد: [
Taproot (P2TR)
يستخدم Taproot (BIP-340/341/342) توقيعات Schnorr وأشجار بناء الجملة المجردة المُحوَّلة إلى Merkle (MAST). الإنفاق الافتراضي: توقيع Schnorr واحد (لا يمكن تمييزه عن الإنفاق عبر مسار المفتاح). وتُخفى الشروط المعقدة داخل شجرة Merkle ولا تُكشف إلا عند استخدامها. وهذا يوفر الخصوصية والكفاءة.
التحقق من Script في الشيفرة
يتحقق Bitcoin Core من البرامج باستخدام مفسّر مكدس. يستدعي CheckSig الدالة VerifyScript التي تشغّل scriptSig+scriptPubKey المدمجين. ولكل رمز تشغيل CHECKSIG، يستدعي CheckECDSASignature التي تتحقق من (r,s) المرمّز بترميز DER مقابل تجزئة المعاملة باستخدام secp256k1.
تحقق سريع
ما الذي يتحقق منه OP_CHECKSIG في برنامج P2PKH؟
مراجعة
تستخدم UTXOs لغة Bitcoin Script المعتمدة على المكدس. P2PKH: نمط الإنفاق الأكثر شيوعًا — التحقق من تجزئة مفتاح عام، ثم التحقق من توقيع ECDSA. يعالج SegWit قابلية التحوير، ويضيف Taproot توقيعات Schnorr وMAST. التالي: تحليل التشفير التفاضلي.
الأسئلة الشائعة
هل درس «Bitcoin Script والتحقق من توقيعات UTXO» مجاني؟
نعم — نص درس «Bitcoin Script والتحقق من توقيعات UTXO» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Cryptology Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Cryptology Academy 4 دروس في المجموع.
ماذا ستتعلم في «Bitcoin Script والتحقق من توقيعات UTXO»؟
تتبّع نصوص الدفع إلى تجزئة المفتاح العام (P2PKH) وتوقيع ECDSA تتمرن على Cryptology Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Cryptology Academy؟
لا تُشترط خبرة سابقة. Cryptology Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «Bitcoin Script والتحقق من توقيعات UTXO»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Cryptology Academy هذا؟
نعم. كل درس في Cryptology Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- سلاسل التجزئة وربط الكتل
- أشجار Merkle: سلامة المعاملات على نطاق واسع
- إثبات العمل: التعدين وضبط الصعوبة
- Bitcoin Script والتحقق من توقيعات UTXO