Technik & KryptografieTechnology & CryptographyTecnología & CriptografíaTecnologia & Criptografia技術 & 暗号学技术 & 密码学التقنية & التشفير
Bitcoin-Skript verstehen: Wie Bedingungen in Transaktionen programmiert werdenUnderstanding Bitcoin Script: How Conditions Are Programmed into TransactionsEntendiendo Bitcoin Script: Cómo se programan las condiciones en las transaccionesEntendendo o Bitcoin Script: Como as Condições São Programadas nas TransaçõesBitcoin Scriptを理解する:トランザクションに条件をプログラムする方法理解比特币脚本:如何将条件编程到交易中فهم Bitcoin Script: كيف يتم برمجة الشروط في المعاملات
Alle Kernaussagen – Stack-Mechanismus, Skript-Typen, BIP-Nummern, Aktivierungsblöcke und Konsens-/Standardregel-Unterscheidung – sind durch mehrere unabhängige, primäre Quellen (BIPs, Bitcoin Wiki, bitcoin.org Developer Guide) belegbar. Zahlenangaben (80 Byte OP_RETURN, 520 Byte Stack-Element, 201 Opcodes, Blockzahlen) entstammen direkt den Konsensregeln bzw. dem Bitcoin Core-Code und sind einheitlich dokumentiert. Authlevel 'verified' ist gerechtfertigt.All core claims – stack mechanics, script types, BIP numbers, activation blocks, and the consensus/standard rule distinction – are verifiable through multiple independent primary sources (BIPs, Bitcoin Wiki, bitcoin.org Developer Guide). Numerical values (80-byte OP_RETURN, 520-byte stack element limit, 201 opcodes, block heights) are drawn directly from consensus rules and Bitcoin Core documentation and are consistently attested. Authlevel 'verified' is justified.Todas las afirmaciones fundamentales — mecánica de la pila, tipos de script, números de BIP, bloques de activación y la distinción entre reglas de consenso y reglas estándar — son verificables a través de múltiples fuentes primarias independientes (BIPs, Bitcoin Wiki, bitcoin.org Developer Guide). Los valores numéricos (80 bytes para OP_RETURN, límite de 520 bytes por elemento de pila, 201 opcodes, alturas de bloque) provienen directamente de las reglas de consenso y del código de Bitcoin Core, y están documentados de forma consistente. El nivel de autenticación 'verified' está justificado.Todas as afirmações principais – mecânica de pilha, tipos de script, números de BIP, blocos de ativação e a distinção entre regras de consenso e regras padrão – são verificáveis por meio de múltiplas fontes primárias independentes (BIPs, Bitcoin Wiki, bitcoin.org Developer Guide). Os valores numéricos (80 bytes para OP_RETURN, limite de 520 bytes para elemento de pilha, 201 opcodes, alturas de bloco) são extraídos diretamente das regras de consenso e da documentação do Bitcoin Core, sendo consistentemente atestados. O nível de autenticidade 'verified' é justificado.すべての核心的な主張(スタックの仕組み、スクリプトの種類、BIP番号、有効化ブロック、コンセンサスルールと標準ルールの区別)は、複数の独立した一次情報源(BIP、Bitcoin Wiki、bitcoin.org Developer Guide)によって検証可能です。数値情報(80バイトの OP_RETURN、520バイトのスタック要素上限、201個のオペコード、ブロック高)はコンセンサスルールおよび Bitcoin Core のコードから直接導出されており、一貫して文書化されています。Authlevel「verified」は正当です。所有核心论断——栈机制、脚本类型、BIP 编号、激活区块高度以及共识规则与标准规则的区分——均可通过多个独立的一手资料(BIPs、Bitcoin Wiki、bitcoin.org 开发者指南)加以核实。数值数据(80 字节 OP_RETURN 限制、520 字节栈元素限制、201 个操作码、区块高度)直接源自共识规则及 Bitcoin Core 代码,各方文档记载一致。Authlevel 'verified' 的评定具有充分依据。جميع الادعاءات الجوهرية — آلية المكدس، وأنواع النصوص البرمجية، وأرقام BIP، وكتل التفعيل، والتمييز بين قواعد الإجماع والقواعد المعيارية — قابلةٌ للتحقق عبر مصادر أولية مستقلة متعددة (BIPs، وBitcoin Wiki، ودليل المطوّرين على bitcoin.org). القيم العددية (80 بايت لـ OP_RETURN، وحدّ 520 بايت لعنصر المكدس، و201 كود تشغيل، وأرقام الكتل) مستقاةٌ مباشرةً من قواعد الإجماع ووثائق Bitcoin Core وهي موثّقة بصورة متسقة. مستوى المصداقية 'verified' مبرَّرٌ.
Bitcoin Script ist kein neutrales technisches Fundament – es ist auch ein politisches Statement. Die bewusste Nicht-Turing-Vollständigkeit schließt native Smart Contracts aus und hat Teile der Entwicklercommunity dauerhaft zu Ethereum und anderen Plattformen getrieben. Was der Artikel als elegantes Sicherheitsdesign feiert, ist aus einer anderen Perspektive ein struktureller Konservatismus, der Innovationskosten verursacht. Zudem unterschlägt die Darstellung, dass viele der beschriebenen Erweiterungen (Lightning, Taproot) gerade deshalb nötig wurden, weil Bitcoin Script von Haus aus keine komplexere Programmierbarkeit erlaubt – die Einschränkung erzeugt also Komplexität auf anderen Ebenen, anstatt sie zu eliminieren.Bitcoin Script is not a neutral technical foundation – it is also a political statement. Its deliberate non-Turing-completeness excludes native smart contracts and has permanently pushed parts of the developer community toward Ethereum and other platforms. What the article celebrates as elegant security design is, from another perspective, a structural conservatism that carries real innovation costs. Furthermore, the piece omits that many of the described extensions (Lightning, Taproot) became necessary precisely because Bitcoin Script does not support more complex programmability natively – the constraint generates complexity at other layers rather than eliminating it.Bitcoin Script no es un fundamento técnico neutral: es también una declaración política. Su deliberada no-completitud de Turing excluye los contratos inteligentes nativos y ha empujado de forma permanente a parte de la comunidad de desarrolladores hacia Ethereum y otras plataformas. Lo que el artículo celebra como un elegante diseño de seguridad es, desde otra perspectiva, un conservadurismo estructural que conlleva costes reales de innovación. Además, el texto omite que muchas de las extensiones descritas (Lightning, Taproot) se hicieron necesarias precisamente porque Bitcoin Script no admite de forma nativa una programabilidad más compleja: la restricción genera complejidad en otras capas en lugar de eliminarla.Bitcoin Script não é um fundamento técnico neutro – é também uma declaração política. A sua deliberada não-completude de Turing exclui smart contracts nativos e afastou permanentemente partes da comunidade de desenvolvedores em direção ao Ethereum e a outras plataformas. O que o artigo celebra como um design de segurança elegante é, sob outra perspectiva, um conservadorismo estrutural que gera custos reais de inovação. Além disso, o texto omite que muitas das extensões descritas (Lightning, Taproot) se tornaram necessárias precisamente porque o Bitcoin Script não suporta programabilidade mais complexa de forma nativa – a restrição gera complexidade em outras camadas, em vez de a eliminar.Bitcoin Script は中立的な技術的基盤ではなく、政治的な声明でもある。意図的な非チューリング完全性はネイティブなスマートコントラクトを排除し、開発者コミュニティの一部を Ethereum やその他のプラットフォームへと恒久的に押しやってきた。本稿が「エレガントなセキュリティ設計」として称賛するものは、別の視点から見れば、現実のイノベーションコストを伴う構造的保守主義に他ならない。さらに、説明が見落としているのは、紹介されている拡張機能の多く(Lightning、Taproot)が生まれたのは、まさに Bitcoin Script がネイティブでより複雑なプログラマビリティをサポートしていないからこそだという点だ――つまり、その制約は複雑さを排除するのではなく、別のレイヤーに複雑さを生み出している。Bitcoin Script 并非中立的技术基础——它同时也是一种政治表态。刻意设计的非图灵完备性将原生智能合约拒之门外,并已将部分开发者社区永久推向了 Ethereum 及其他平台。文章所称颂的"优雅的安全设计",从另一个角度来看,不过是一种带来真实创新成本的结构性保守主义。此外,文章还回避了一个事实:许多所描述的扩展方案(Lightning、Taproot)之所以应运而生,恰恰是因为 Bitcoin Script 本身不支持更复杂的可编程性——这种限制非但没有消除复杂性,反而将其转移到了其他层面。Bitcoin Script ليس مجرد أساس تقني محايد — بل هو أيضاً موقف سياسي. إن عدم اكتماله بمفهوم تورينج بشكل مقصود يُقصي العقود الذكية الأصيلة، وقد دفع أجزاءً من مجتمع المطورين بصورة دائمة نحو Ethereum ومنصات أخرى. وما يحتفي به المقال باعتباره تصميماً أمنياً أنيقاً، هو من منظور آخر محافظةٌ هيكلية تنطوي على تكاليف حقيقية للابتكار. علاوةً على ذلك، يُغفل المقال أن كثيراً من الإضافات الموصوفة (Lightning، وTaproot) باتت ضرورية تحديداً لأن Bitcoin Script لا يدعم البرمجة المعقدة بطبيعته — فالقيد يُولّد تعقيداً على مستويات أخرى بدلاً من أن يُزيله.
Video zum ArtikelVideo for this articleVídeo del artículoVídeo do artigo記事の動画本文视频فيديو المقال
Jede Bitcoin-Transaktion stellt im Kern eine Frage: Wer darf diese Coins ausgeben, und unter welchen Bedingungen? Die Antwort darauf gibt Bitcoin Script – eine kompakte, stack-basierte Skriptsprache, die bewusst auf Schleifen und Sprungbefehle verzichtet. Diese Einschränkung ist kein Mangel technischer Reife, sondern eine fundamentale Sicherheitsentscheidung.
Das Herzstück: Locking Script und Unlocking Script
Jeder UTXO (Unspent Transaction Output) wird durch ein locking script (scriptPubKey) versiegelt. Es definiert die Bedingung, die erfüllt sein muss, damit die Coins bewegt werden dürfen. Wer den UTXO ausgeben möchte, muss ein passendes unlocking script (scriptSig bzw. bei SegWit: Witness) liefern. Beide Skripte werden zusammen auf einem Stack ausgeführt; das Ergebnis muss TRUE sein – andernfalls lehnt jeder validierender Node die Transaktion ab.
Stack-basierte Ausführung: Wie der Interpreter arbeitet
Bitcoin Script folgt dem Prinzip eines Kellerautomaten (pushdown automaton). Opcodes und Datenwerte werden sequenziell verarbeitet: Datenwerte landen auf dem Stack, Opcodes lesen Werte vom Stack, manipulieren sie und legen das Ergebnis zurück. Beispiel: OP_DUP dupliziert den obersten Stack-Eintrag; OP_CHECKSIG prüft eine kryptografische Signatur gegen einen Public Key.
Durch das Fehlen von Schleifen und bedingten Sprüngen ist die Ausführungszeit jedes Skripts vorhersehbar und endlich. Endlosschleifen – ein klassischer Angriffsvektor für Denial-of-Service auf Nodes – sind strukturell unmöglich. Die Konsensregeln begrenzen zusätzlich: maximal 201 Opcodes pro Skript (ohne Push-Daten-Opcodes), maximal 520 Byte pro Stack-Element.
Feature, kein Bug: Die Nicht-Turing-Vollständigkeit von Bitcoin Script ist eine bewusste Designentscheidung. Sie eliminiert eine ganze Klasse von Angriffsvektoren und macht Transaktionen für jeden Node deterministisch validierbar.
Die wichtigsten Skript-Typen im Überblick
P2PK (Pay-to-Public-Key) ist der älteste Typ: Das locking script enthält den vollständigen Public Key direkt. Der Einlöser liefert lediglich eine gültige Signatur. P2PK findet sich noch in frühen Block-Rewards, gilt heute jedoch als veraltet, da der Public Key vor der Ausgabe öffentlich sichtbar ist.
P2PKH (Pay-to-Public-Key-Hash) ist der klassische Standard. Das locking script enthält nur den Hash des Public Keys (OP_DUP OP_HASH160 <PubKeyHash> OP_EQUALVERIFY OP_CHECKSIG). Der Empfänger beweist beim Einlösen Besitz, indem er den vollständigen Public Key und eine gültige Signatur vorlegt. Der Public Key wird erst bei der Ausgabe sichtbar – ein kleiner Datenschutzvorteil.
P2SH (Pay-to-Script-Hash, BIP 16) wurde im April 2012 aktiviert und markiert einen Paradigmenwechsel. Das locking script enthält ausschließlich den Hash eines sogenannten redeemScripts. Die Komplexität – etwa eine 2-von-3-Multisig-Logik – ist im redeemScript verborgen. Der Sender muss diese Komplexität nicht kennen; der Einlöser muss das vollständige redeemScript offenlegen und erfüllen. P2SH-Adressen beginnen mit 3.
P2WPKH (Pay-to-Witness-Public-Key-Hash, BIP 141 / SegWit) wurde im August 2017 in Block 481.824 aktiviert. Die entscheidende Neuerung: Signaturdaten werden in den separaten Witness-Bereich der Transaktion ausgelagert. Das löst das Problem der Transaction Malleability – Dritte konnten bisher die TXID einer unbestätigten Transaktion verändern, ohne ihre Gültigkeit zu brechen. Dieses strukturelle Problem verhinderte den Aufbau sicherer Layer-2-Protokolle wie dem Lightning Network. P2WPKH-Inputs sparen gegenüber P2PKH-Inputs etwa 35–40 % Gewicht in vBytes (Stand 2026), was direkt niedrigere Transaktionsgebühren bedeutet.
Konsensregeln vs. Standardregeln: Eine wichtige Nuance
Bitcoin unterscheidet zwischen Konsensregeln und Standardregeln. Konsensregeln legen fest, welche Transaktionen als gültig gelten und in die Blockchain aufgenommen werden dürfen. Standardregeln (policy) bestimmen, welche Transaktionen Nodes im Mempool akzeptieren und weiterleiten. Nicht-standardmäßige Skripte – etwa ungewöhnliche Opcode-Kombinationen – werden von Nodes standardmäßig nicht weitergeleitet, können aber von Minern trotzdem in Blöcke eingebunden werden. Diese Trennung erlaubt es dem Netzwerk, conservative Weiterleitungsregeln zu wahren, ohne die Protokollflexibilität grundsätzlich einzuschränken.
OP_RETURN und Taproot: Der Blick nach vorn
OP_RETURN erlaubt das Einbetten von bis zu 80 Byte beliebiger Daten in die Blockchain als nachweislich unausgebbaren Output (provably unspendable). Da solche Outputs nie in den UTXO-Set aufgenommen werden, blähen sie diesen nicht auf – eine saubere Lösung für Anwendungsfälle wie Zeitstempel oder Protokollverankerungen.
Mit Taproot (BIP 341), aktiviert in Block 709.632 im November 2021, wurden Schnorr-Signaturen und MAST (Merkelized Abstract Syntax Trees) eingeführt. P2TR (Pay-to-Taproot) macht komplexe Ausgabebedingungen für Außenstehende unsichtbar, sofern der kooperative Pfad genutzt wird – und baut konzeptionell vollständig auf dem locking/unlocking-Prinzip von Bitcoin Script auf.
Fundament aller Erweiterungen: Ob Lightning-Channel-Skripte, Multisig-Wallets oder Taproot-Verträge – alle basieren auf der sauberen Trennung von locking script und unlocking script, die Satoshi Nakamoto im ursprünglichen Bitcoin-Design verankert hat.
Weiterführend
Every Bitcoin transaction asks a fundamental question: Who may spend these coins, and under what conditions? The answer is encoded in Bitcoin Script – a compact, stack-based scripting language that deliberately omits loops and jump instructions. This constraint is not a sign of technical immaturity; it is a foundational security decision.
The Core Concept: Locking Script and Unlocking Script
Every UTXO (Unspent Transaction Output) is sealed by a locking script (scriptPubKey). It defines the condition that must be satisfied before the coins can be moved. Anyone wishing to spend the UTXO must provide a matching unlocking script (scriptSig, or for SegWit: Witness). Both scripts are executed together on a stack; the result must be TRUE – otherwise every validating node rejects the transaction.
Stack-Based Execution: How the Interpreter Works
Bitcoin Script operates as a pushdown automaton. Opcodes and data values are processed sequentially: data values are pushed onto the stack, opcodes read values from the stack, manipulate them, and push results back. For example, OP_DUP duplicates the top stack item; OP_CHECKSIG verifies a cryptographic signature against a public key.
Because there are no loops or conditional jumps, the execution time of any script is predictable and finite. Infinite loops – a classic denial-of-service vector against nodes – are structurally impossible. Consensus rules add further bounds: a maximum of 201 opcodes per script (excluding push-data opcodes) and a maximum of 520 bytes per stack element.
Feature, not a bug: Bitcoin Script's non-Turing-completeness is a deliberate design choice. It eliminates an entire class of attack vectors and makes every transaction deterministically validatable by any node.
The Most Important Script Types
P2PK (Pay-to-Public-Key) is the oldest type: the locking script contains the full public key directly. The spender only needs to supply a valid signature. P2PK still appears in early block rewards but is considered legacy today, as the public key is exposed before spending.
P2PKH (Pay-to-Public-Key-Hash) is the classical standard. The locking script holds only the hash of the public key (OP_DUP OP_HASH160 <PubKeyHash> OP_EQUALVERIFY OP_CHECKSIG). The recipient proves ownership at spend time by presenting the full public key and a valid signature. The public key is only revealed upon spending – a modest privacy benefit.
P2SH (Pay-to-Script-Hash, BIP 16) activated in April 2012 and represents a paradigm shift. The locking script contains only the hash of a redeemScript. Complexity – such as 2-of-3 multisig logic – is hidden inside the redeemScript. The sender need not understand this complexity; the spender must reveal and satisfy the full redeemScript. P2SH addresses begin with 3.
P2WPKH (Pay-to-Witness-Public-Key-Hash, BIP 141 / SegWit) activated in August 2017 at block 481,824. The key innovation: signature data is moved into a separate witness field of the transaction. This solved transaction malleability – third parties could previously alter the TXID of an unconfirmed transaction without invalidating it, a structural problem that blocked secure Layer-2 protocols like the Lightning Network. P2WPKH inputs save approximately 35–40% in weight (vBytes) compared to P2PKH inputs (as of 2026), directly translating to lower transaction fees.
Consensus Rules vs. Standard Rules: A Critical Distinction
Bitcoin distinguishes between consensus rules and standard rules (policy). Consensus rules determine which transactions are valid and may be included in the blockchain. Standard rules determine which transactions nodes accept into their mempool and relay to peers. Non-standard scripts – such as unusual opcode combinations – are not relayed by nodes by default, but miners may still include them in blocks. This separation allows the network to enforce conservative relay policies without fundamentally restricting protocol flexibility.
OP_RETURN and Taproot: Looking Further
OP_RETURN allows embedding up to 80 bytes of arbitrary data into the blockchain as a provably unspendable output. Because such outputs are never admitted to the UTXO set, they do not bloat it – a clean solution for use cases like timestamping or protocol anchoring.
With Taproot (BIP 341), activated at block 709,632 in November 2021, Schnorr signatures and MAST (Merkelized Abstract Syntax Trees) were introduced. P2TR (Pay-to-Taproot) makes complex spending conditions invisible to outside observers when the cooperative path is used – and builds conceptually on the same locking/unlocking principle that has always been at the heart of Bitcoin Script.
Foundation of all extensions: Whether Lightning channel scripts, multisig wallets, or Taproot contracts – everything builds on the clean separation of locking script and unlocking script that Satoshi Nakamoto embedded in Bitcoin's original design.
Related
Toda transacción de Bitcoin plantea una pregunta fundamental: ¿Quién puede gastar estas monedas y bajo qué condiciones? La respuesta está codificada en Bitcoin Script, un lenguaje de scripting compacto basado en pila que omite deliberadamente los bucles y las instrucciones de salto. Esta restricción no es señal de inmadurez técnica; es una decisión de seguridad fundamental.
El núcleo del concepto: locking script y unlocking script
Cada UTXO (Unspent Transaction Output) queda sellado por un locking script (scriptPubKey). Este define la condición que debe cumplirse antes de que las monedas puedan moverse. Quien desee gastar el UTXO debe proporcionar un unlocking script (scriptSig, o en el caso de SegWit: Witness) que lo satisfaga. Ambos scripts se ejecutan juntos sobre una pila; el resultado debe ser TRUE; de lo contrario, cualquier nodo validador rechaza la transacción.
Ejecución basada en pila: cómo funciona el intérprete
Bitcoin Script opera como un autómata de pila (pushdown automaton). Los opcodes y los valores de datos se procesan secuencialmente: los valores de datos se apilan en la pila, los opcodes leen valores de la pila, los manipulan y devuelven el resultado. Por ejemplo, OP_DUP duplica el elemento superior de la pila; OP_CHECKSIG verifica una firma criptográfica contra una clave pública.
Al no existir bucles ni saltos condicionales, el tiempo de ejecución de cualquier script es predecible y finito. Los bucles infinitos —un vector clásico de denegación de servicio contra los nodos— son estructuralmente imposibles. Las reglas de consenso añaden límites adicionales: un máximo de 201 opcodes por script (sin contar los opcodes de datos de empuje) y un máximo de 520 bytes por elemento de pila.
Una característica, no un error: La no completitud de Turing de Bitcoin Script es una decisión de diseño deliberada. Elimina toda una clase de vectores de ataque y permite que cualquier nodo valide cada transacción de forma determinista.
Los tipos de script más importantes
P2PK (Pay-to-Public-Key) es el tipo más antiguo: el locking script contiene directamente la clave pública completa. El gastador solo necesita proporcionar una firma válida. P2PK todavía aparece en las primeras recompensas de bloque, pero hoy se considera obsoleto, ya que la clave pública queda expuesta antes del gasto.
P2PKH (Pay-to-Public-Key-Hash) es el estándar clásico. El locking script contiene únicamente el hash de la clave pública (OP_DUP OP_HASH160 <PubKeyHash> OP_EQUALVERIFY OP_CHECKSIG). El receptor demuestra la posesión en el momento del gasto presentando la clave pública completa y una firma válida. La clave pública solo se revela al gastar, lo que supone una pequeña ventaja en términos de privacidad.
P2SH (Pay-to-Script-Hash, BIP 16) se activó en abril de 2012 y representa un cambio de paradigma. El locking script contiene únicamente el hash de un redeemScript. La complejidad —como la lógica multisig 2 de 3— queda oculta dentro del redeemScript. El emisor no necesita conocer esa complejidad; el gastador debe revelar y satisfacer el redeemScript completo. Las direcciones P2SH comienzan con 3.
P2WPKH (Pay-to-Witness-Public-Key-Hash, BIP 141 / SegWit) se activó en agosto de 2017 en el bloque 481.824. La innovación clave: los datos de firma se trasladan a un campo witness separado de la transacción. Esto resolvió el problema de la maleabilidad de transacciones —terceros podían modificar el TXID de una transacción no confirmada sin invalidarla—, un problema estructural que bloqueaba la construcción de protocolos seguros de Capa 2 como Lightning Network. Los inputs P2WPKH ahorran aproximadamente un 35–40 % en peso (vBytes) en comparación con los inputs P2PKH (a fecha de 2026), lo que se traduce directamente en menores comisiones de transacción.
Reglas de consenso frente a reglas estándar: una distinción clave
Bitcoin distingue entre reglas de consenso y reglas estándar (policy). Las reglas de consenso determinan qué transacciones son válidas y pueden incluirse en la blockchain. Las reglas estándar determinan qué transacciones aceptan los nodos en su mempool y retransmiten a sus pares. Los scripts no estándar —como combinaciones inusuales de opcodes— no son retransmitidos por los nodos de forma predeterminada, aunque los mineros pueden incluirlos igualmente en bloques. Esta separación permite que la red aplique políticas de retransmisión conservadoras sin restringir fundamentalmente la flexibilidad del protocolo.
OP_RETURN y Taproot: una mirada al futuro
OP_RETURN permite incrustar hasta 80 bytes de datos arbitrarios en la blockchain como un output provably unspendable (demostrativamente no gastable). Como estos outputs nunca se admiten en el conjunto UTXO, no lo inflan, lo que constituye una solución limpia para casos de uso como el sellado de tiempo o el anclaje de protocolos.
Con Taproot (BIP 341), activado en el bloque 709.632 en noviembre de 2021, se introdujeron las firmas Schnorr y MAST (Merkelized Abstract Syntax Trees). P2TR (Pay-to-Taproot) hace que las condiciones de gasto complejas sean invisibles para observadores externos cuando se utiliza la ruta cooperativa, y se construye conceptualmente sobre el mismo principio de locking/unlocking que siempre ha sido el corazón de Bitcoin Script.
Fundamento de todas las extensiones: Ya sean scripts de canales Lightning, carteras multisig o contratos Taproot, todo se sustenta en la clara separación entre locking script y unlocking script que Satoshi Nakamoto estableció en el diseño original de Bitcoin.
Más información
Toda transação Bitcoin coloca uma questão fundamental: Quem pode gastar estas moedas e em que condições? A resposta está codificada no Bitcoin Script – uma linguagem de script compacta, baseada em pilha, que deliberadamente dispensa laços e instruções de salto. Esta restrição não é sinal de imaturidade técnica; é uma decisão de segurança fundamental.
O Núcleo do Conceito: Locking Script e Unlocking Script
Cada UTXO (Unspent Transaction Output) é selado por um locking script (scriptPubKey). Ele define a condição que deve ser satisfeita para que as moedas possam ser movimentadas. Quem pretender gastar o UTXO deve fornecer um unlocking script correspondente (scriptSig ou, no caso do SegWit: Witness). Ambos os scripts são executados em conjunto numa pilha; o resultado deve ser TRUE – caso contrário, todos os nós validadores rejeitam a transação.
Execução Baseada em Pilha: Como o Interpretador Funciona
O Bitcoin Script opera como um autômato de pilha (pushdown automaton). Opcodes e valores de dados são processados sequencialmente: os valores de dados são empurrados para a pilha, os opcodes leem valores da pilha, manipulam-nos e empurram os resultados de volta. Por exemplo, OP_DUP duplica o item do topo da pilha; OP_CHECKSIG verifica uma assinatura criptográfica em relação a uma chave pública.
Como não existem laços nem saltos condicionais, o tempo de execução de qualquer script é previsível e finito. Laços infinitos – um vetor clássico de ataques de negação de serviço contra nós – são estruturalmente impossíveis. As regras de consenso impõem limites adicionais: no máximo 201 opcodes por script (excluindo opcodes de dados push) e no máximo 520 bytes por elemento de pilha.
Funcionalidade, não um bug: A não-completude de Turing do Bitcoin Script é uma decisão de design deliberada. Ela elimina toda uma classe de vetores de ataque e torna cada transação deterministicamente validável por qualquer nó.
Os Tipos de Script Mais Importantes
P2PK (Pay-to-Public-Key) é o tipo mais antigo: o locking script contém diretamente a chave pública completa. O gastador precisa apenas fornecer uma assinatura válida. O P2PK ainda aparece nas primeiras recompensas de bloco, mas é considerado legado nos dias de hoje, pois a chave pública fica exposta antes do gasto.
P2PKH (Pay-to-Public-Key-Hash) é o padrão clássico. O locking script contém apenas o hash da chave pública (OP_DUP OP_HASH160 <PubKeyHash> OP_EQUALVERIFY OP_CHECKSIG). O destinatário prova a posse no momento do gasto, apresentando a chave pública completa e uma assinatura válida. A chave pública só é revelada no momento do gasto – uma pequena vantagem em termos de privacidade.
P2SH (Pay-to-Script-Hash, BIP 16) foi ativado em abril de 2012 e representa uma mudança de paradigma. O locking script contém apenas o hash de um redeemScript. A complexidade – como a lógica de multisig 2-de-3 – está oculta dentro do redeemScript. O remetente não precisa compreender essa complexidade; o gastador deve revelar e satisfazer o redeemScript completo. Endereços P2SH começam com 3.
P2WPKH (Pay-to-Witness-Public-Key-Hash, BIP 141 / SegWit) foi ativado em agosto de 2017 no bloco 481.824. A principal inovação: os dados de assinatura são movidos para um campo witness separado na transação. Isso resolveu o problema de Transaction Malleability – terceiros podiam anteriormente alterar o TXID de uma transação não confirmada sem a invalidar, um problema estrutural que bloqueava protocolos Layer 2 seguros como o Lightning Network. Os inputs P2WPKH economizam aproximadamente 35–40% em peso (vBytes) em comparação com inputs P2PKH (a partir de 2026), o que se traduz diretamente em taxas de transação mais baixas.
Regras de Consenso vs. Regras Padrão: Uma Distinção Importante
O Bitcoin distingue entre regras de consenso e regras padrão (policy). As regras de consenso determinam quais transações são válidas e podem ser incluídas na blockchain. As regras padrão determinam quais transações os nós aceitam no mempool e retransmitem para os pares. Scripts não padronizados – como combinações incomuns de opcodes – não são retransmitidos pelos nós por padrão, mas os mineradores ainda podem incluí-los em blocos. Essa separação permite que a rede aplique políticas de retransmissão conservadoras sem restringir fundamentalmente a flexibilidade do protocolo.
OP_RETURN e Taproot: Uma Visão para o Futuro
OP_RETURN permite incorporar até 80 bytes de dados arbitrários na blockchain como um output provably unspendable (comprovadamente não gastável). Como esses outputs nunca são admitidos no conjunto UTXO, eles não o incham – uma solução limpa para casos de uso como timestamping ou ancoragem de protocolos.
Com o Taproot (BIP 341), ativado no bloco 709.632 em novembro de 2021, foram introduzidas as assinaturas Schnorr e o MAST (Merkelized Abstract Syntax Trees). O P2TR (Pay-to-Taproot) torna as condições de gasto complexas invisíveis para observadores externos quando o caminho cooperativo é utilizado – e baseia-se conceitualmente no mesmo princípio de locking/unlocking que sempre esteve no coração do Bitcoin Script.
Fundamento de todas as extensões: Sejam scripts de canais Lightning, carteiras multisig ou contratos Taproot – tudo se baseia na separação clara entre locking script e unlocking script que Satoshi Nakamoto incorporou no design original do Bitcoin.
Mais informação
すべての Bitcoin トランザクションは、根本的な問いを投げかけます。誰がこのコインを使用でき、どのような条件のもとで使用できるのか? その答えを定義するのが Bitcoin Script です。Bitcoin Script は、ループや分岐命令を意図的に省いた、コンパクトなスタックベースのスクリプト言語です。この制約は技術的な未成熟さの表れではなく、根本的なセキュリティ上の設計判断です。
核心概念:locking script と unlocking script
すべての UTXO(Unspent Transaction Output)は、locking script(scriptPubKey)によって封印されています。これはコインを移動させるために満たされなければならない条件を定義します。その UTXO を使用しようとする者は、対応するunlocking script(scriptSig、SegWit の場合は Witness)を提供しなければなりません。両スクリプトはスタック上で合わせて実行され、結果が TRUE でなければなりません。そうでなければ、すべての検証ノードがそのトランザクションを拒否します。
スタックベースの実行:インタープリタの仕組み
Bitcoin Script はプッシュダウンオートマトンの原理で動作します。オペコードとデータ値は順番に処理されます。データ値はスタックに積まれ、オペコードはスタックから値を読み取り、操作し、結果を書き戻します。例として、OP_DUP はスタックの先頭要素を複製し、OP_CHECKSIG は公開鍵に対して暗号署名を検証します。
ループや条件分岐が存在しないため、スクリプトの実行時間は予測可能で有限です。無限ループ――ノードへのサービス拒否攻撃の典型的な手法――は構造的に不可能です。コンセンサスルールはさらに制限を設けています。スクリプトあたり最大 201 個のオペコード(プッシュデータオペコードを除く)、スタック要素あたり最大 520 バイトです。
バグではなく、仕様です: Bitcoin Script が Turing 完全でないことは、意図的な設計上の選択です。これにより攻撃ベクターのクラス全体が排除され、あらゆるノードがすべてのトランザクションを決定論的に検証できるようになっています。
主なスクリプトタイプの概要
P2PK(Pay-to-Public-Key)は最も古いタイプで、locking script が公開鍵をそのまま含みます。使用者は有効な署名を提供するだけで済みます。P2PK は初期のブロック報酬にいまも見られますが、使用前から公開鍵が露出している点から、現在ではレガシーと見なされています。
P2PKH(Pay-to-Public-Key-Hash)は古典的な標準形式です。locking script には公開鍵のハッシュのみが含まれます(OP_DUP OP_HASH160 <PubKeyHash> OP_EQUALVERIFY OP_CHECKSIG)。受取人は使用時に完全な公開鍵と有効な署名を提示することで所有権を証明します。公開鍵は使用時にのみ公開されるため、プライバシー面で若干の利点があります。
P2SH(Pay-to-Script-Hash、BIP 16)は 2012 年 4 月に有効化され、パラダイムシフトをもたらしました。locking script にはredeemScriptと呼ばれるスクリプトのハッシュのみが含まれます。2-of-3 マルチシグのような複雑なロジックは redeemScript の中に隠されています。送信者はその複雑さを知る必要がなく、使用者は完全な redeemScript を開示して条件を満たす必要があります。P2SH アドレスは 3 で始まります。
P2WPKH(Pay-to-Witness-Public-Key-Hash、BIP 141 / SegWit)は 2017 年 8 月にブロック 481,824 で有効化されました。最大の革新は、署名データがトランザクションの独立したWitness領域に移されたことです。これによりトランザクション・マリアビリティの問題が解決されました。以前は第三者が未確認トランザクションの TXID を有効性を損なわずに変更できるという構造的な問題があり、Lightning Network のような安全な Layer-2 プロトコルの構築を妨げていました。P2WPKH インプットは P2PKH インプットと比較して、重量(vBytes)を約 35〜40%削減でき(2026 年時点)、これはトランザクション手数料の直接的な削減につながります。
コンセンサスルールと標準ルール:重要な区別
Bitcoin はコンセンサスルールと標準ルール(ポリシー)を区別しています。コンセンサスルールは、どのトランザクションが有効としてブロックチェーンに含まれ得るかを決定します。標準ルールは、ノードがメモリプールに受け入れてピアに中継するトランザクションを決定します。非標準スクリプト――異例のオペコードの組み合わせなど――はデフォルトではノードによって中継されませんが、マイナーがブロックに組み込むことは可能です。この分離により、ネットワークはプロトコルの柔軟性を根本的に制限することなく、保守的な中継ポリシーを維持することができます。
OP_RETURN と Taproot:さらなる展望
OP_RETURNは、最大 80 バイトの任意データをブロックチェーンにprovably unspendable(使用不可能であることが証明された)な出力として埋め込むことを可能にします。このような出力は UTXO セットに取り込まれないため、UTXO セットを肥大化させません。タイムスタンプやプロトコルのアンカリングといったユースケースに対するクリーンな解決策です。
Taproot(BIP 341)は 2021 年 11 月にブロック 709,632 で有効化され、Schnorr 署名と MAST(Merkelized Abstract Syntax Trees)が導入されました。P2TR(Pay-to-Taproot)は、協調パスが使用される場合、複雑な使用条件を外部の観察者から不可視にします。そして概念的には、Bitcoin Script の根幹にあり続けた locking/unlocking の原理の上に構築されています。
すべての拡張機能の土台: Lightning チャンネルスクリプト、マルチシグウォレット、Taproot コントラクトのいずれも、Satoshi Nakamoto が Bitcoin の原初の設計に組み込んだ locking script と unlocking script の明確な分離の上に成り立っています。
関連情報
每笔 Bitcoin 交易都在追问一个核心问题:谁有权花费这些币,在什么条件下可以花费?答案由 Bitcoin Script 给出——这是一种紧凑的、基于栈的脚本语言,刻意省略了循环和跳转指令。这一限制并非技术不成熟的表现,而是一项根本性的安全设计决策。
核心概念:锁定脚本与解锁脚本
每个 UTXO(未花费交易输出)都由一个 locking script(scriptPubKey)封锁。它定义了移动这些币所必须满足的条件。任何想要花费该 UTXO 的人,都必须提供匹配的 unlocking script(scriptSig,SegWit 中为 Witness)。两段脚本在同一个栈上共同执行,结果必须为 TRUE——否则每个验证节点都会拒绝该交易。
基于栈的执行机制:解释器如何运作
Bitcoin Script 按照下推自动机(pushdown automaton)的原理运行。操作码与数据值按顺序处理:数据值被压入栈,操作码从栈中读取数据、对其进行操作,再将结果压回栈中。例如,OP_DUP 复制栈顶元素;OP_CHECKSIG 使用公钥验证密码学签名。
由于没有循环和条件跳转,任何脚本的执行时间都是可预测且有限的。无限循环——针对节点发起拒绝服务攻击的经典手段——在结构上根本不可能发生。共识规则还设有额外上限:每个脚本最多 201 个操作码(不含推送数据操作码),每个栈元素最多 520 字节。
这是特性,不是缺陷:Bitcoin Script 的非图灵完备性是经过深思熟虑的设计选择。它从根本上消除了一整类攻击向量,使每笔交易都能被任意节点以确定性方式验证。
主要脚本类型概览
P2PK(Pay-to-Public-Key)是最古老的类型:locking script 直接包含完整的公钥。花费者只需提供一个有效签名即可。P2PK 仍见于早期区块奖励,但如今已被视为过时类型,因为公钥在花费前便已公开可见。
P2PKH(Pay-to-Public-Key-Hash)是经典标准。locking script 仅包含公钥的哈希值(OP_DUP OP_HASH160 <PubKeyHash> OP_EQUALVERIFY OP_CHECKSIG)。接收方在花费时,须同时提供完整公钥和有效签名来证明所有权。公钥仅在花费时才公开——具有一定的隐私保护优势。
P2SH(Pay-to-Script-Hash,BIP 16)于 2012 年 4 月激活,代表着一次范式转变。locking script 仅包含所谓 redeemScript 的哈希值。复杂逻辑——例如 2-of-3 多签——隐藏在 redeemScript 内部。发送方无需了解这些复杂性;花费方必须公开并满足完整的 redeemScript。P2SH 地址以 3 开头。
P2WPKH(Pay-to-Witness-Public-Key-Hash,BIP 141 / SegWit)于 2017 年 8 月在区块 481,824 处激活。其核心创新在于:签名数据被移至交易中独立的 Witness 区域。这解决了交易延展性(Transaction Malleability)问题——此前第三方可以在不使交易失效的情况下篡改未确认交易的 TXID,这一结构性缺陷阻碍了 Lightning Network 等安全二层协议的构建。与 P2PKH 输入相比,P2WPKH 输入在重量上节省约 35–40%(以 vBytes 计,截至 2026 年),直接带来更低的交易手续费。
共识规则与标准规则:一个重要的区别
Bitcoin 区分共识规则与标准规则(policy)。共识规则决定哪些交易有效、可被纳入区块链。标准规则决定节点接受哪些交易进入内存池并向对等节点转播。非标准脚本——例如不寻常的操作码组合——默认不会被节点转播,但矿工仍可将其打包进区块。这种分离使网络能够执行保守的转播策略,同时不从根本上限制协议的灵活性。
OP_RETURN 与 Taproot:展望未来
OP_RETURN 允许将最多 80 字节的任意数据作为可证明不可花费(provably unspendable)的输出嵌入区块链。由于此类输出永远不会被纳入 UTXO 集,不会造成 UTXO 集膨胀——这是时间戳记录或协议锚定等应用场景的一种简洁解决方案。
Taproot(BIP 341)于 2021 年 11 月在区块 709,632 处激活,引入了 Schnorr 签名和 MAST(Merkelized Abstract Syntax Trees)。P2TR(Pay-to-Taproot)在使用协作路径时,可对外部观察者隐藏复杂的花费条件——其概念上完全延续了 Bitcoin Script 中 locking/unlocking 的核心原则。
一切扩展的基石:无论是 Lightning 通道脚本、多签钱包,还是 Taproot 合约——所有这些都建立在 locking script 与 unlocking script 的清晰分离之上,而这一设计正是 Satoshi Nakamoto 在 Bitcoin 最初设计中所奠定的。
延伸阅读
تطرح كل معاملة Bitcoin في جوهرها سؤالاً محورياً: من يحق له إنفاق هذه العملات، وبأي شروط؟ تكمن الإجابة في Bitcoin Script – لغة برمجة نصية مدمجة تعتمد على المكدس (stack)، وتتعمّد حذف الحلقات التكرارية وتعليمات القفز. هذا القيد ليس دليلاً على قصور تقني، بل هو قرار أمني أساسي راسخ.
جوهر الآلية: لocking Script وUnlocking Script
يُختَم كل UTXO (Unspent Transaction Output) بـlocking script (scriptPubKey)، الذي يحدد الشرط الواجب استيفاؤه قبل أن يُسمح بتحريك العملات. ومن يرغب في إنفاق الـUTXO عليه تقديم unlocking script مطابق (scriptSig، أو في حالة SegWit: Witness). يُنفَّذ البرنامجان معاً على المكدس؛ ويجب أن تكون النتيجة TRUE – وإلا رفضت كل عقدة مُتحقِّقة المعاملةَ.
التنفيذ المبني على المكدس: كيف يعمل المُفسِّر
يعمل Bitcoin Script على غرار الآلة الدافعة للأسفل (pushdown automaton). تُعالَج رموز التشغيل (opcodes) وقيم البيانات بالتسلسل: تُدفع قيم البيانات إلى المكدس، وتقرأ رموز التشغيل القيمَ منه وتعالجها ثم تُعيد الناتج إليه. فمثلاً: OP_DUP يُضاعف العنصر العلوي في المكدس، بينما يتحقق OP_CHECKSIG من توقيع تشفيري مقابل مفتاح عام.
ولغياب الحلقات التكرارية والقفزات الشرطية، يظل وقت تنفيذ أي برنامج نصي متوقعاً ومحدوداً. والحلقات اللانهائية – التي تُعدّ ناقلاً كلاسيكياً لهجمات حجب الخدمة على العقد – مستحيلة هيكلياً. وتفرض قواعد الإجماع حدوداً إضافية: 201 رمز تشغيل كحدٍّ أقصى للبرنامج الواحد (باستثناء رموز دفع البيانات)، و520 بايت كحدٍّ أقصى لكل عنصر في المكدس.
ميزة وليست ثغرة: عدم اكتمال Bitcoin Script من حيث نموذج تورينج هو قرار تصميمي متعمَّد، يُقضي على فئة كاملة من ناقلات الهجوم، ويجعل كل معاملة قابلة للتحقق بصورة حتمية من قِبل أي عقدة.
أبرز أنواع البرامج النصية
P2PK (Pay-to-Public-Key) هو النوع الأقدم: يتضمن الـlocking script المفتاحَ العام كاملاً مباشرةً، ولا يحتاج المنفق إلا إلى تقديم توقيع صالح. لا يزال P2PK حاضراً في مكافآت الكتل الأولى، غير أنه يُعدّ اليوم نوعاً قديماً نظراً لظهور المفتاح العام قبل الإنفاق.
P2PKH (Pay-to-Public-Key-Hash) هو المعيار الكلاسيكي. يحتوي الـlocking script على هاش المفتاح العام فحسب (OP_DUP OP_HASH160 <PubKeyHash> OP_EQUALVERIFY OP_CHECKSIG). ويُثبت المستلم ملكيته عند الإنفاق بتقديم المفتاح العام كاملاً وتوقيع صالح، ولا يُكشَف عن المفتاح العام إلا لحظة الإنفاق – مما يمنح ميزة خصوصية محدودة.
P2SH (Pay-to-Script-Hash, BIP 16) فُعِّل في أبريل 2012 وشكَّل تحولاً جذرياً في المفهوم. يحتوي الـlocking script حصراً على هاش ما يُعرف بـredeemScript، في حين تظل التعقيدات – كمنطق التوقيع المتعدد 2-من-3 – مخفيةً داخل الـredeemScript. لا يحتاج المرسل إلى معرفة هذا التعقيد؛ أما المنفق فعليه الكشف عن الـredeemScript كاملاً واستيفاؤه. تبدأ عناوين P2SH بـ3.
P2WPKH (Pay-to-Witness-Public-Key-Hash, BIP 141 / SegWit) فُعِّل في أغسطس 2017 عند الكتلة 481.824. والجديد الجوهري: نقل بيانات التوقيع إلى حقل Witness منفصل في المعاملة، مما حلَّ مشكلة Transaction Malleability – إذ كان بمقدور أطراف ثالثة في السابق تغيير TXID لمعاملة غير مؤكدة دون الإخلال بصحتها، وهي مشكلة هيكلية كانت تحول دون بناء بروتوكولات Layer-2 آمنة كشبكة Lightning. توفِّر مدخلات P2WPKH ما بين 35–40% من الحجم بالـvBytes مقارنةً بمدخلات P2PKH (حتى عام 2026)، مما يُترجم مباشرةً إلى رسوم معاملات أقل.
قواعد الإجماع مقابل قواعد المعيار: فارق جوهري
يُفرِّق Bitcoin بين قواعد الإجماع وقواعد المعيار (policy). تحدد قواعد الإجماع المعاملاتِ التي تُعدّ صالحة ويجوز إدراجها في البلوكشين، بينما تحدد قواعد المعيار المعاملاتِ التي تقبلها العقد في الـmempool وتُعيد إرسالها إلى الأقران. البرامج النصية غير المعيارية – كتركيبات opcodes غير المألوفة – لا تُوجِّهها العقد بصورة افتراضية، لكن يظل بمقدور المُعدِّنين إدراجها في الكتل. يتيح هذا الفصل للشبكة الحفاظ على سياسات إعادة توجيه محافظة دون تقييد مرونة البروتوكول في جوهره.
OP_RETURN وTaproot: نظرة إلى الأمام
يتيح OP_RETURN تضمين ما يصل إلى 80 بايت من البيانات الاعتباطية في البلوكشين كمخرج لا يمكن إنفاقه بصورة مُثبَتة (provably unspendable). ولأن هذه المخرجات لا تُدرج في مجموعة UTXO، فإنها لا تُضخِّمها – وهو حلٌّ أنيق لحالات استخدام كالتوقيت الزمني أو ترسيخ البروتوكولات.
مع Taproot (BIP 341)، الذي فُعِّل عند الكتلة 709.632 في نوفمبر 2021، جرى تقديم توقيعات Schnorr وMASTـ (Merkelized Abstract Syntax Trees). يجعل P2TR (Pay-to-Taproot) شروط الإنفاق المعقدة غير مرئية للمراقبين الخارجيين عند سلوك المسار التعاوني – وهو مبنيٌّ مفاهيمياً على مبدأ الـlocking/unlocking ذاته الراسخ في Bitcoin Script منذ نشأته.
أساس كل التوسعات: سواء أكانت برامج قنوات Lightning النصية، أم محافظ التوقيع المتعدد، أم عقود Taproot – فكلها مبنية على الفصل الواضح بين الـlocking script والـunlocking script الذي أرسى دعائمه Satoshi Nakamoto في التصميم الأصلي لـBitcoin.
مزيد من المعلومات
⚖️ Die stärksten GegenargumenteThe Strongest CounterargumentsLos contraargumentos más fuertesOs contra-argumentos mais fortes最も強力な反論最有力的反方观点أقوى الحجج المضادة
Jedes Gegenargument in seiner stärksten Form – geprüft und nach Datenlage entschieden, kein Wunschdenken.Each counterargument in its strongest form – scrutinized and adjudicated per the data, no wishful thinking.Cada contraargumento en su forma más fuerte: examinado y juzgado según los datos, sin ilusiones.Cada contra-argumento na sua forma mais forte – examinado e julgado segundo os dados, sem ilusões.各反論を最も強い形で提示し、データに基づいて検証・判定しています。希望的観測はありません。每个反方观点均以其最强形式呈现——依据数据审视并判定,绝不一厢情愿。كل حجة مضادة في أقوى صورها — مفحوصة ومحسومة وفق البيانات، لا وفق التمني.
Die Nicht-Turing-Vollständigkeit eliminiert Komplexität nicht – sie verschiebt sie: Lightning, Sidechains und die jahrelangen Covenant-Debatten (OP_CTV, OP_CAT) existieren gerade deshalb, weil Bitcoin Script Ausdrucksfähigkeit fehlt. Die „Feature, kein Bug"-Rahmung blendet diese realen Innovationskosten aus.Non-Turing-completeness does not eliminate complexity – it displaces it: Lightning, sidechains, and the years-long covenant debates (OP_CTV, OP_CAT) exist precisely because Bitcoin Script lacks expressiveness. The "feature, not bug" framing hides these real innovation costs.La no-completitud de Turing no elimina la complejidad, la desplaza: Lightning, las sidechains y los años de debate sobre covenants (OP_CTV, OP_CAT) existen precisamente porque a Bitcoin Script le falta expresividad. El encuadre de «característica, no defecto» oculta estos costes reales de innovación.A não-completude de Turing não elimina a complexidade – desloca-a: a Lightning, as sidechains e os anos de debate sobre covenants (OP_CTV, OP_CAT) existem precisamente porque falta expressividade ao Bitcoin Script. O enquadramento «característica, não defeito» esconde estes custos reais de inovação.チューリング非完全性は複雑さを消し去るのではなく、別の場所に移すだけだ。Lightning、サイドチェーン、そして何年も続くコベナント論争(OP_CTV、OP_CAT)は、まさにBitcoin Scriptの表現力不足ゆえに存在する。「バグではなく仕様」という枠付けは、この現実のイノベーションコストを覆い隠している。非图灵完备并没有消除复杂性——只是把它转移了:Lightning、侧链以及旷日持久的约束条款之争(OP_CTV、OP_CAT)恰恰因为Bitcoin Script缺乏表达力而存在。「是特性而非缺陷」的框架掩盖了这些真实的创新成本。عدم اكتمال تورينغ لا يزيل التعقيد – بل ينقله إلى مكان آخر: فشبكة Lightning والسلاسل الجانبية ونقاشات القيود الممتدة لسنوات (OP_CTV وOP_CAT) موجودة تحديدا لأن Bitcoin Script يفتقر إلى القدرة التعبيرية. وتأطير «ميزة لا عيب» يخفي تكاليف الابتكار الحقيقية هذه.
Die Abwanderung der Smart-Contract-Entwicklung zu Ethereum und die seit Jahren ungelösten Covenant-Soft-Fork-Diskussionen sind dokumentierte Folgekosten der Design-Entscheidung; der Artikel selbst zeigt, dass SegWit und Taproot nötig wurden, um Grenzen der Basisschicht zu umgehen. Ob der Trade-off dennoch richtig ist, bleibt Wertungsfrage – die Kosten selbst sind real und werden im Artikel nicht bilanziert.The migration of smart-contract development to Ethereum and the years of unresolved covenant soft-fork discussions are documented consequential costs of the design decision; the article itself shows that SegWit and Taproot became necessary to work around base-layer limits. Whether the trade-off is still right remains a value judgment – but the costs are real and the article does not account for them.La migración del desarrollo de contratos inteligentes hacia Ethereum y los años de discusiones no resueltas sobre soft forks de covenants son costes derivados documentados de esa decisión de diseño; el propio artículo muestra que SegWit y Taproot fueron necesarios para sortear los límites de la capa base. Si el equilibrio sigue siendo acertado es un juicio de valor, pero los costes son reales y el artículo no los contabiliza.A migração do desenvolvimento de contratos inteligentes para a Ethereum e os anos de discussões não resolvidas sobre soft forks de covenants são custos derivados documentados dessa decisão de design; o próprio artigo mostra que o SegWit e o Taproot se tornaram necessários para contornar os limites da camada base. Se o trade-off continua certo é um juízo de valor – mas os custos são reais e o artigo não os contabiliza.スマートコントラクト開発のEthereumへの流出と、何年も未解決のコベナント・ソフトフォーク議論は、この設計判断の帰結として記録されたコストである。記事自身も、基盤層の限界を回避するためにSegWitとTaprootが必要になったことを示している。トレードオフの是非は価値判断だが、コスト自体は実在し、記事はそれを収支に含めていない。智能合约开发向Ethereum的迁移,以及多年悬而未决的约束条款软分叉讨论,都是这一设计决定有据可查的衍生成本;文章自己也表明,正是为绕开基础层限制才需要SegWit和Taproot。这一取舍是否仍然正确属于价值判断——但成本本身是真实的,文章却未将其计入。هجرة تطوير العقود الذكية إلى Ethereum وسنوات من نقاشات التفرع الناعم للقيود من دون حسم هي تكاليف تبعية موثقة لهذا القرار التصميمي؛ والمقال نفسه يبين أن SegWit وTaproot أصبحا ضروريين للالتفاف على حدود الطبقة الأساسية. أما صواب هذه المفاضلة فيبقى حكما قيميا – لكن التكاليف حقيقية والمقال لا يحتسبها.
Das Sicherheitsargument trägt weniger, als der Artikel suggeriert: Begrenzte, deterministische Ausführung lässt sich auch ohne Verzicht auf Turing-Vollständigkeit erreichen – Ethereum verhindert Endlosschleifen ökonomisch über Gas-Metering statt strukturell über Sprachverbote.The security argument carries less weight than the article suggests: bounded, deterministic execution can be achieved without giving up Turing completeness – Ethereum prevents infinite loops economically via gas metering rather than structurally via language restrictions.El argumento de seguridad pesa menos de lo que sugiere el artículo: la ejecución acotada y determinista puede lograrse sin renunciar a la completitud de Turing; Ethereum impide los bucles infinitos de forma económica mediante gas metering, no estructural mediante prohibiciones del lenguaje.O argumento de segurança pesa menos do que o artigo sugere: a execução limitada e determinista pode ser alcançada sem renunciar à completude de Turing – a Ethereum impede loops infinitos economicamente via gas metering, e não estruturalmente via proibições da linguagem.安全性の論拠は記事が示唆するほど強くない。有界で決定的な実行は、チューリング完全性を捨てなくても達成できる。Ethereumは無限ループを、言語仕様の禁止という構造的手段ではなく、ガス計量という経済的手段で防いでいる。安全性论证的分量不如文章暗示的那么重:有界且确定性的执行不必放弃图灵完备也能实现——Ethereum通过gas计量以经济手段防止无限循环,而非通过语言禁令的结构性手段。حجة الأمان أقل وزنا مما يوحي به المقال: فالتنفيذ المحدود والحتمي يمكن تحقيقه من دون التخلي عن اكتمال تورينغ – إذ تمنع Ethereum الحلقات اللانهائية اقتصاديا عبر قياس الغاز بدلا من منعها بنيويا عبر قيود اللغة.
Gas-Metering funktioniert praktisch, hatte aber eigene DoS-Vorfälle (Shanghai-Angriffe 2016) und macht die Validierung ressourcenintensiver; Bitcoins Ansatz kauft Einfachheit mit Ausdrucksverzicht, Ethereums Ansatz Ausdruckskraft mit Komplexität. Welches Modell insgesamt sicherer und dezentraler ist, ist eine ungelöste Design-Debatte – der Artikel stellt die strukturelle Lösung aber als die Lösung dar, nicht als eine von zweien.Gas metering works in practice but had its own DoS incidents (the 2016 Shanghai attacks) and makes validation more resource-intensive; Bitcoin's approach buys simplicity at the cost of expressiveness, Ethereum's buys expressiveness at the cost of complexity. Which model is safer and more decentralized overall is an unresolved design debate – yet the article presents the structural solution as the solution, not as one of two.El gas metering funciona en la práctica, pero tuvo sus propios incidentes de DoS (los ataques de Shanghái de 2016) y hace la validación más intensiva en recursos; el enfoque de Bitcoin compra simplicidad a costa de expresividad, el de Ethereum compra expresividad a costa de complejidad. Cuál de los dos modelos es en conjunto más seguro y descentralizado es un debate de diseño no resuelto; el artículo, sin embargo, presenta la solución estructural como la solución, no como una de dos.O gas metering funciona na prática, mas teve os seus próprios incidentes de DoS (os ataques de Xangai de 2016) e torna a validação mais intensiva em recursos; a abordagem do Bitcoin compra simplicidade à custa de expressividade, a da Ethereum compra expressividade à custa de complexidade. Qual dos modelos é, no conjunto, mais seguro e descentralizado é um debate de design não resolvido – mas o artigo apresenta a solução estrutural como a solução, não como uma de duas.ガス計量は実務上機能しているが、独自のDoS事件(2016年の上海攻撃)を経験しており、検証をより資源集約的にする。Bitcoinの方式は表現力を犠牲に単純さを買い、Ethereumの方式は複雑さを代償に表現力を買う。総合的にどちらがより安全で分散的かは未解決の設計論争である。しかし記事は構造的解決策を、二つのうちの一つではなく唯一の解決策として提示している。gas计量在实践中可行,但也有过自己的DoS事件(2016年上海攻击),且使验证更耗资源;Bitcoin的路线以牺牲表达力换取简单性,Ethereum的路线以复杂性为代价换取表达力。哪种模型整体上更安全、更去中心化,是一场未有定论的设计之争——但文章把结构性方案当作唯一解,而非两种方案之一来呈现。قياس الغاز يعمل عمليا لكنه شهد حوادث DoS خاصة به (هجمات شنغهاي 2016) ويجعل التحقق أكثر استهلاكا للموارد؛ نهج Bitcoin يشتري البساطة بثمن التعبيرية، ونهج Ethereum يشتري التعبيرية بثمن التعقيد. أي النموذجين أكثر أمانا ولامركزية إجمالا نقاش تصميمي غير محسوم – غير أن المقال يقدم الحل البنيوي على أنه الحل الوحيد لا أحد حلين.
Die Darstellung der Datenverankerung ist veraltet: Seit Ordinals/Inscriptions (2023) landen beliebige Daten in großem Stil im Witness-Bereich – weit jenseits von 80 Byte –, und Bitcoin Core v30 (2025) hob die 80-Byte-Grenze für OP_RETURN als Standard-Policy auf. Die „saubere, begrenzte Lösung" beschreibt den Zustand von gestern.The portrayal of data embedding is outdated: since Ordinals/inscriptions (2023), arbitrary data has been landing at scale in the witness area – far beyond 80 bytes – and Bitcoin Core v30 (2025) lifted the 80-byte OP_RETURN limit as default policy. The "clean, limited solution" describes yesterday's state.La descripción del anclaje de datos está desfasada: desde Ordinals/inscriptions (2023) llegan datos arbitrarios a gran escala al área witness –mucho más allá de 80 bytes– y Bitcoin Core v30 (2025) eliminó el límite de 80 bytes de OP_RETURN como política por defecto. La «solución limpia y limitada» describe el estado de ayer.A descrição da ancoragem de dados está desatualizada: desde os Ordinals/inscriptions (2023), dados arbitrários chegam em grande escala à área witness – muito além dos 80 bytes – e o Bitcoin Core v30 (2025) eliminou o limite de 80 bytes do OP_RETURN como política padrão. A «solução limpa e limitada» descreve o estado de ontem.データ埋め込みの描写は時代遅れである。Ordinals/インスクリプション(2023年)以降、任意のデータが80バイトをはるかに超える規模でwitness領域に大量に書き込まれており、Bitcoin Core v30(2025年)はOP_RETURNの80バイト制限をデフォルトポリシーとして撤廃した。「クリーンで限定的な解決策」という記述は昨日の状態を語っている。关于数据锚定的描述已经过时:自Ordinals/铭文(2023年)以来,任意数据大规模写入witness区域——远超80字节——而Bitcoin Core v30(2025年)已将OP_RETURN的80字节限制从默认策略中移除。「干净且受限的方案」描述的是昨天的状态。تصوير تثبيت البيانات متقادم: فمنذ Ordinals والنقوش (2023) تدخل بيانات عشوائية على نطاق واسع إلى منطقة witness – متجاوزة 80 بايت بكثير – وألغى Bitcoin Core v30 عام 2025 حد 80 بايت لـ OP_RETURN كسياسة افتراضية. «الحل النظيف المحدود» يصف حال الأمس.
Die 80-Byte-Angabe war stets nur Relay-Policy, keine Konsensregel – der Artikel unterschlägt diese Unterscheidung ausgerechnet in dem Abschnitt, in dem er sie zuvor selbst einführt. Inscriptions umgehen OP_RETURN ohnehin über Witness-Daten, und die Core-v30-Policy-Änderung im Herbst 2025 war einer der größten Community-Streits des Jahres. Die Datenverankerungs-Passage ist damit faktisch überholt und sollte aktualisiert werden.The 80-byte figure was always relay policy, never a consensus rule – the article drops this distinction precisely in the section after introducing it itself. Inscriptions bypass OP_RETURN via witness data anyway, and the Core v30 policy change in autumn 2025 was one of the year's biggest community disputes. The data-embedding passage is thus factually outdated and should be updated.El límite de 80 bytes fue siempre política de retransmisión, nunca regla de consenso; el artículo omite esta distinción justo en la sección posterior a haberla introducido él mismo. Las inscriptions eluden OP_RETURN de todos modos a través de los datos witness, y el cambio de política de Core v30 en otoño de 2025 fue una de las mayores disputas comunitarias del año. El pasaje sobre anclaje de datos está, por tanto, objetivamente desfasado y debería actualizarse.O limite de 80 bytes sempre foi política de retransmissão, nunca regra de consenso – o artigo omite essa distinção precisamente na secção seguinte àquela em que ele próprio a introduz. As inscriptions contornam o OP_RETURN de qualquer forma através dos dados witness, e a mudança de política do Core v30 no outono de 2025 foi uma das maiores disputas comunitárias do ano. A passagem sobre ancoragem de dados está, portanto, factualmente ultrapassada e deveria ser atualizada.80バイトという数字は常にリレーポリシーであり、コンセンサスルールではなかった。記事は自らその区別を導入した直後の節で、まさにその区別を落としている。インスクリプションはそもそもwitnessデータ経由でOP_RETURNを迂回しており、2025年秋のCore v30のポリシー変更はその年最大級のコミュニティ論争だった。データ埋め込みの段落は事実として陳腐化しており、更新されるべきである。80字节从来只是转发策略,而非共识规则——文章恰恰在自己引入这一区分之后的小节里丢掉了它。铭文本来就通过witness数据绕开OP_RETURN,而2025年秋Core v30的策略变更是当年最大的社区争议之一。因此数据锚定这一段在事实上已经过时,应予更新。رقم 80 بايت كان دائما سياسة ترحيل لا قاعدة إجماع – ويسقط المقال هذا التمييز تحديدا في القسم التالي للقسم الذي أدخله فيه بنفسه. النقوش تلتف أصلا على OP_RETURN عبر بيانات witness، وكان تغيير سياسة Core v30 في خريف 2025 من أكبر خلافات المجتمع في تلك السنة. وبذلك فإن فقرة تثبيت البيانات متقادمة واقعيا وينبغي تحديثها.
QuellenSourcesFuentesFontes出典来源المصادر
- Bitcoin Whitepaper – Satoshi Nakamoto (bitcoin.org) (bitcoin.org)
- BIP 16: Pay to Script Hash (github.com/bitcoin/bips) (github.com)
- BIP 141: Segregated Witness (github.com/bitcoin/bips) (github.com)
- BIP 341: Taproot – SegWit version 1 (github.com/bitcoin/bips) (github.com)
- Bitcoin Developer Guide – Transactions (bitcoin.org) (developer.bitcoin.org)
- Script – Bitcoin Wiki (en.bitcoin.it) (en.bitcoin.it)