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.
Blockchain
Introducción
Qué es Blockchain
Estructura de un bloque
Merkle trees
Bitcoin network
La arquitectura de una red P2P
Minería y consenso
La economía de Bitcoin
Minando un bloque
Cambiando las reglas de consenso (forks)
Transacciones
Transacciones: outputs e inputs
Qué es Bitcoin Script
Transaction fees en Bitcoin
Keys and adresses
Llaves públicas y privadas / Bitcoin addresses
Formatos de llaves públicas y privadas
Tipos de wallets: nondeterministic, deterministic
Wallets
Seeds and mnemonic codes
Conclusión
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.
Antes: $249
Paga en 4 cuotas sin intereses
Termina en:
Juan Sebastián Marulanda
El funcionamiento de las transacciones en la Blockchain de Bitcoin tienen un motivo lógico, su propio lenguaje de programación llamado 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 “Turing 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.
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
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.
.
Script de transacciones.
En una transacción, siempre se encontrarán dos tipos de scripts:
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.
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
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?