Desarrollo Básico
Es hora de ensuciarse las manos. Esta sección cubre los fundamentos prácticos que todo desarrollador Bitcoin necesita: ejecutar un nodo, entender las redes y realizar operaciones básicas de wallet.
Nodo Bitcoin
Instalación
Consulta nuestras guías de configuración de entorno para instrucciones detalladas de instalación:
Básicos de bitcoin-cli
bitcoin-cli es la interfaz de línea de comandos para interactuar con tu nodo Bitcoin:
# Verificar estado del nodo
bitcoin-cli getblockchaininfo
# Obtener info de la red
bitcoin-cli getnetworkinfo
# Obtener info de peers
bitcoin-cli getpeerinfo
# Obtener info del mempool
bitcoin-cli getmempoolinfo
bitcoin.conf
El archivo de configuración controla el comportamiento de tu nodo. Opciones clave:
# Red (descomenta una)
#testnet=1
#regtest=1
# Configuración RPC
rpcuser=tuusuario
rpcpassword=tucontraseña
server=1
# Rendimiento
dbcache=450
maxmempool=300
# Poda (ahorrar espacio en disco)
#prune=1000
Redes
Bitcoin tiene tres redes, cada una con un propósito diferente:
Mainnet
La red real de Bitcoin donde las transacciones tienen valor monetario real.
- Usar para: Aplicaciones en producción, pagos reales
- Nunca usar para: Pruebas o experimentos
- Puerto: 8333
Testnet
Una red de pruebas pública con monedas de prueba sin valor. Se comporta como mainnet pero con monedas gratuitas de faucets.
- Usar para: Pruebas de integración, testing con otros desarrolladores
- Monedas: Gratuitas de faucets (sin valor monetario)
- Puerto: 18333
- Versión actual: Testnet4
# Iniciar nodo en testnet
bitcoind -testnet
bitcoin-cli -testnet getblockchaininfo
Regtest (Regression Testing)
Una red local y privada donde controlas todo. Puedes minar bloques al instante y crear transacciones a voluntad.
- Usar para: Desarrollo local, pruebas unitarias, iteración rápida
- Monedas: Mina las tuyas al instante
- Puerto: 18444
# Iniciar nodo regtest
bitcoind -regtest
# Crear un wallet
bitcoin-cli -regtest createwallet "dev"
# Generar una dirección
bitcoin-cli -regtest getnewaddress
# Minar 101 bloques (los primeros 100 son inmaduros, el bloque 101 hace gastable la primera coinbase)
bitcoin-cli -regtest generatetoaddress 101 <tu-direccion>
# Verificar saldo
bitcoin-cli -regtest getbalance
Regtest es tu mejor amigo como desarrollador. Úsalo para toda experimentación local.
Operaciones Básicas de Wallet
Crear y Gestionar Wallets
# Crear un nuevo wallet
bitcoin-cli -regtest createwallet "miwallet"
# Listar wallets
bitcoin-cli -regtest listwallets
# Obtener info del wallet
bitcoin-cli -regtest getwalletinfo
Direcciones
# Generar una nueva dirección de recepción
bitcoin-cli -regtest getnewaddress
# Generar un tipo de dirección específico
bitcoin-cli -regtest getnewaddress "" "bech32" # bc1q... (SegWit)
bitcoin-cli -regtest getnewaddress "" "bech32m" # bc1p... (Taproot)
bitcoin-cli -regtest getnewaddress "" "legacy" # 1... (P2PKH)
Enviar Transacciones
# Enviar a una dirección
bitcoin-cli -regtest sendtoaddress <direccion> 0.5
# Enviar con tasa de comisión específica (sat/vB)
bitcoin-cli -regtest -named sendtoaddress address=<direccion> amount=0.5 fee_rate=10
# Obtener detalles de transacción
bitcoin-cli -regtest gettransaction <txid>
# Decodificar una transacción raw
bitcoin-cli -regtest decoderawtransaction <hex>
Explorar Transacciones
# Listar transacciones recientes
bitcoin-cli -regtest listtransactions
# Listar salidas no gastadas (UTXOs)
bitcoin-cli -regtest listunspent
# Obtener datos raw de transacción
bitcoin-cli -regtest getrawtransaction <txid> true
¿Qué Sigue?
Con estos fundamentos bajo tu cinturón, estás listo para elegir un track de especialización:
- Desarrollador de Protocolo — Sumérgete en los internos de Bitcoin Core
- Desarrollador de Aplicaciones — Construye wallets y apps
- Desarrollador de Infraestructura — Crea exploradores y APIs (próximamente)
- Desarrollador de Minería — Desarrolla software de minería (próximamente)
Consulta la página de Tipos de Desarrolladores para ayudarte a decidir.