No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Prep谩rate para tu pr贸ximo empleo comprando hoy a precio especial

Antes: $249

Currency
$209
Suscr铆bete

Termina en:

8 D铆as
2 Hrs
2 Min
32 Seg
Curso de Bitcoin para Developers

Curso de Bitcoin para Developers

Juan Sebasti谩n Marulanda

Juan Sebasti谩n Marulanda

Qu茅 es Bitcoin Script

10/16
Recursos

El funcionamiento de las transacciones en la Blockchain de Bitcoin tienen un motivo l贸gico, su propio lenguaje de programaci贸n llamado Bitcoin Script.

驴Qu茅 es Bitcoin Script?

Bitcoin Script, se trata de un lenguaje de scripting que permite verificar si las condiciones para la utilizaci贸n de las UTXO (salidas) est谩n dadas y poder desbloquearlas.

Toda actividad en la red de Bitcoin est谩 determinada por el lenguaje de programaci贸n que Satoshi Nakamoto cre贸 especialmente para su funcionamiento.

Los Scripts que Bitcoin permite programar son 鈥淭uring Incompleto鈥, lo que significa que su funcionalidad es limitada, no admite condicionantes ni bucles l贸gicos. Solo permite la ejecuci贸n de un programa de forma secuencial, una instrucci贸n despu茅s de la otra en basado en una pila o stack.

Esto le da a Bitcoin una capa extra de seguridad. Al no permitir bucles infinitos, se evita por naturaleza los ataques de denegaci贸n de servicios.

Evitando ataques de denegaci贸n de servicios
Las Blockchains implementan diversos mecanismos para evitar este tipo de ataques. La Blockchain de Ethereum utiliza el concepto de Gas para limitar el procesamiento de la l贸gica de un programa y evitar operaciones infinitas.

驴C贸mo es un Script en Bitcoin?

Los programas se escriben utilizando una serie de OP_CODES (C贸digo de Operaci贸n) definidos en la arquitectura de Bitcoin. Cada c贸digo posee una funcionalidad definida, ya sea de criptograf铆a, aritm茅tica, flujo de informaci贸n, manejo l贸gico, etc. Los scripts se definen y se ejecutan de izquierda a derecha.

Un script para la transferencia de BTC entre dos cuentas luce de la siguiente manera:

OP_DUP OP_HASH160 ef4a75e1e4572b8f810abe52cdd2e7cfd74b63e2 OP_EQUALVERIFY OP_CHECKSIG

Dicho script, tambi茅n denominado scriptPubKey o script de bloqueo, contiene las condiciones para consumir una salida. A su vez, la transacci贸n contiene un campo scriptSig, o script de desbloqueo, con la firma y la clave p煤blica para satisfacer las condiciones del gasto de esa salida.

El proceso por detr谩s de los scripts de Bitcoin poseen una importante complejidad criptogr谩fica para demostrar la propiedad de un UTXO, realizar validaciones de hashes y lograr transferir valor entre dos cuentas.

Tal vez est茅s ansioso o ansiosa por saber m谩s sobre c贸mo funciona Bitcoin t茅cnicamente y escribir tus propios scripts. 隆Calma! Podr谩s continuar al finalizar este curso con el Curso de Bitcoin Core y Script donde se ver谩 m谩s en profundidad c贸mo hacerlo. Continuemos que a煤n hay mucho por aprender sobre el funcionamiento t茅cnico de Bitcoin.


Contribuci贸n creada por: Kevin Fiorentino (Platzi Contributor).

Aportes 8

Preguntas 0

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

Aqu铆 es donde comienza a tener sentido este curso. Bitcoin tiene su propio lenguaje de programaci贸n, no sab铆a eso. Es un antes y un despu茅s esta clase.
Recomiendo este art铆culo para saber m谩s sobre Bitcoin Script.

Script.

Es un lenguaje de programaci贸n muy simple que tiene como objetivo validar la informaci贸n sobre el dinero programable. No tiene bucles ni estructuras de datos complejas, lo cual habilita una nueva capa de seguridad sobre la red, haciendo posible que no se inserten vulnerabilidades a trav茅s de las transacciones.

  • Lenguaje de script para transacciones bitcoin.
  • El script que bloquea una UTXO junto con el script que desbloquea se ejecuta para verificar si satisface las condiciones.
  • Turing incompleto.
  • Basado en pila.

.
Script de transacciones.

En una transacci贸n, siempre se encontrar谩n dos tipos de scripts:

  • Script de bloqueo.
    • Condici贸n para consumir una salida.
    • scriptPubKey.
  • Script de desbloqueo.
    • Script que satisface las condiciones para consumir una salida.
    • scriptSig.
creo que el curso le hace falta un poco de animaciones, para explicar las cosas, como infografias y animaciones echas en after effects, curioso que platzi con tantos recursos no aumente el valor de sus clases de esa manera, y tampoco habilitan los subtitulos, seria genial tenerlos y que fueran descargables o que te lo mostrara al menos, como en coursera

Ejemplo de Bitcoin Script

RESUMEN CLASE 10:
SCRIPT

I.- SCRIPT

  • Lenguaje de script para transacciones bitcoin.

  • El script que bloquea una UTXO junto con el script que desbloquea se ejecuta para verificar si satisface las condiciones.

  • Turing incompleto.

  • Basado en pila.

II.- SCRIPTS DE TRANSACCIONES

  • Script de bloqueo

    • Condici贸n para consumir una salida.

    • scriptPubKey.

  • Script de desbloqueo

    • Script que satisface las condiciones para consumir una salida.

    • scriptSig.

Terrible, este curso es muy incompleto. Nada de apoyo visual para poder entender mejor los conceptos. Son conceptos complejos y personalmente aprendo viendo ejemplificaciones y ejemplos con apoyos multimedia. No solo con teor铆a.

Una explicaci贸n de Turing completo <https://stackoverflow.com/questions/7284/what-is-turing-complete> y Turing incompleto <https://stackoverflow.com/questions/315340/practical-non-turing-complete-languages>

El gas hace referencia a la unidad que mide la cantidad de esfuerzo computacional requerida para ejecutar operaciones espec铆ficas en la red de Ethereum. Como cada transacci贸n de Ethereum requiere recursos computacionales para ejecutarse, cada transacci贸n requiere una comisi贸n