128 / 691OP

Bitcoin Script opcode

Opcode تعليمة في Bitcoin Script. عند التحقق من الإنفاق تعدل المكدس أو تفحص شرطا؛ ويتوقف معناها أيضا على نسخة السكربت.

Opcode بايت تعليمة، لا مفتاح خاص ولا معاملة مستقلة. يتطلب الإنفاق الناجح سياق سكربت ومعاملة صالحا بالكامل، لا مجرد اسم عملية.

يفك Script إلى تعليمات وعناصر بيانات. تحدد OP_PUSHDATA دفع بايتات؛ ولا يعاد تفسير البايتات داخل البيانات المدفوعة كتعليمات أخرى. [Bitcoin Core v29.0 — Script interpreter] [Bitcoin Core v29.0 — Opcode definitions]

تكرر OP_DUP قمة المكدس وتحذفها OP_DROP. قد يؤدي غياب وسيط إلى الفشل؛ وترتيب العناصر وترميزها جزء من الشرط. [Bitcoin Core v29.0 — Script interpreter] [Bitcoin Developer Guide — Transactions]

تقارن OP_EQUAL عنصرين وتدفع النتيجة. تفشل OP_EQUALVERIFY عند الاختلاف وتحذف النتيجة عند التساوي؛ ولا تتحقق أي منهما وحدها من التحكم بمفتاح. [Bitcoin Core v29.0 — Script interpreter] [Bitcoin Core v29.0 — Opcode definitions]

تتحقق OP_CHECKSIG من توقيع مقابل مفتاح عام ورسالة مشتقة من المعاملة. يستخدم Legacy وSegWit v0 خوارزمية ECDSA، ومفاتيح Tapscript المعتادة ذات 32 بايت تستخدم Schnorr. ويحدد sighash أيضا نطاق الالتزام. [Bitcoin Core v29.0 — Script interpreter] [BIP 342 — Validation of Taproot Scripts]

تختار OP_IF وOP_ELSE فرعا باستخدام المكدس. لا يملك Script حلقات عامة؛ لكن قواعد الفروع غير المنفذة تعتمد كذلك على نوع opcode ونسخة السكربت. [Bitcoin Core v29.0 — Script interpreter] [BIP 342 — Validation of Taproot Scripts]

تفحص OP_CHECKLOCKTIMEVERIFY قفلا مطلقا وOP_CHECKSEQUENCEVERIFY شرطا نسبيا للمدخل المعني. لا تنتظران أو ترسلان دفعة أو تستبدلان شرط التوقيع. [Bitcoin Core v29.0 — Script interpreter] [Bitcoin Developer Guide — Transactions]

يغير Tapscript قواعد التوقيع ويضيف OP_CHECKSIGADD ويرفض OP_CHECKMULTISIG عند تنفيذها. لذلك لا تكفي قائمة تعليمات بلا نسخة كدليل تحقق كامل. [BIP 342 — Validation of Taproot Scripts]

يحجز BIP 342 رموز OP_SUCCESSx للتوسعات؛ فمصادفتها أثناء فك Tapscript تتيح النجاح وفق تلك القواعد. لا يعني ذلك تفعيل عملية مقترحة أو فرض الشرط المقصود بأمان. [BIP 342 — Validation of Taproot Scripts] [Bitcoin Core — Segregated Witness benefits]

قد ترفض سياسة الشبكة ترحيل معاملة يسمح الإجماع بوجودها في كتلة. مثلا لا يشجع Bitcoin Core v29.0 استخدام OP_SUCCESSx افتراضيا؛ وسياسة العقدة ليست قاعدة إجماع جديدة. [BIP 342 — Validation of Taproot Scripts] [Bitcoin Core v29.0 — Standard script flags]

عند قراءة سكربت حدد النسخة والمكدس الابتدائي ورسالة التوقيع وكل مسارات الفشل. صحة الصياغة أو جاذبية اسم opcode لا تضمن حفظا صحيحا؛ فالاستخدام بأكمله مهم. [Bitcoin Core v29.0 — Script interpreter] [Bitcoin Developer Guide — Transactions]

للحصول على صورة أوضح، اقرأ هذا المدخل مع Bitcoin Script, CHECKLOCKTIMEVERIFY, CHECKSEQUENCEVERIFY, Taproot.

DOC · 001Bitcoin Core v29.0 — Script interpreterتوثيق ↗DOC · 002Bitcoin Core v29.0 — Opcode definitionsتوثيق ↗DOC · 003BIP 342 — Validation of Taproot Scriptsمواصفة ↗DOC · 004Bitcoin Developer Guide — Transactionsتوثيق ↗DOC · 005Bitcoin Core v29.0 — Standard script flagsتوثيق ↗DOC · 006Bitcoin Core — Segregated Witness benefitsتوثيق ↗
المصادر أولًا · ليست نصيحة استثمارية