Elige un tipo de dirección
Toca un prefijo para ver su estructura, su tamaño y su compatibilidad.
La dirección original de Bitcoin (2009). Codifica el hash de una clave pública: quien demuestre que tiene la clave privada correspondiente (con una firma ECDSA) puede gastar. Es el formato «Legacy»: todo el software lo entiende, pero es el que más pesa al gastarse.
- Prefijo
1- Nombre técnico
- P2PKH (Pay to Public Key Hash)
- Longitud
- 26–34 caracteres (normalmente 34)
- Codificación
- Base58Check: distingue mayúsculas de minúsculas y evita 0, O, I y l
- Ejemplo público
1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNaSon direcciones de ejemplo de documentación: no envíes fondos a ellas.- Desde
- 2009
- Compatibilidad
- La entiende prácticamente todo el software y servicio de Bitcoin.
Paga al hash de un script, no de una clave: para gastar hay que revelar el script (el redeem script) y cumplirlo. Se creó en 2012 para multifirma y luego sirvió para SegWit anidada (P2SH-P2WPKH), que dio acceso a SegWit a wallets que aún no entendían bc1. Por eso una dirección 3… no dice qué script esconde.
- Prefijo
3- Nombre técnico
- P2SH (Pay to Script Hash, BIP 16)
- Longitud
- 34 caracteres
- Codificación
- Base58Check (versión 0x05)
- Ejemplo público
3J98t1WpEZ73CNmQviecrnyiWrnqRhWNLySon direcciones de ejemplo de documentación: no envíes fondos a ellas.- Desde
- 2012 (BIP 16)
- Compatibilidad
- La entiende casi todo; incluso wallets antiguas pueden enviarle fondos.
SegWit nativa (2017). La firma pasa a un campo aparte, el testigo (witness), que cuenta menos para el tamaño. P2WPKH codifica el hash de una clave (20 bytes, 42 caracteres); P2WSH el hash de un script (32 bytes, 62 caracteres). Usa Bech32 (BIP 173), pensado para detectar errores y para leerse bien en QR.
- Prefijo
bc1q- Nombre técnico
- P2WPKH / P2WSH (SegWit v0, BIP 141)
- Longitud
- 42 caracteres (P2WPKH) o 62 (P2WSH)
- Codificación
- Bech32: solo minúsculas (o solo mayúsculas), alfabeto de 32 símbolos
- Ejemplo público
bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4Son direcciones de ejemplo de documentación: no envíes fondos a ellas.- Desde
- Ago. 2017 (BIP 141)
- Compatibilidad
- La admiten las wallets y los servicios actuales; algunos servicios antiguos pueden no aceptarla como destino.
Taproot (2021). Es SegWit versión 1. La dirección no contiene un hash, sino directamente una clave pública de 32 bytes (x-only) ya «ajustada» con el árbol de scripts opcional. Se firma con Schnorr (BIP 340). Si todos están de acuerdo, se gasta con una sola firma (key path); si no, se revela solo la rama de script usada (script path). Usa Bech32m (BIP 350).
- Prefijo
bc1p- Nombre técnico
- P2TR (Pay to Taproot, BIP 341)
- Longitud
- 62 caracteres
- Codificación
- Bech32m: igual que Bech32 pero con otra constante de checksum
- Ejemplo público
bc1p0xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7vqzk5jj0Son direcciones de ejemplo de documentación: no envíes fondos a ellas.- Desde
- Nov. 2021 (BIP 341)
- Compatibilidad
- Soportada por las wallets y los nodos actuales; hay que confirmar que el servicio de destino la acepta antes de enviar.
Descodificador de direcciones
Pulsa un ejemplo y mira cómo se lee una dirección: qué parte indica el tipo, cómo se escribe y cuánto cuesta gastarla.
- prefijo «bc» (mainnet)
- separador «1»
- versión (tipo)
- datos: hash o clavehash del script o clave + checksum de 4 bytes
- checksum (6 caracteres)
La «1» inicial es el byte de versión 0x00 convertido a Base58. El resto es el HASH160 de la clave pública más un checksum de 4 bytes. Para gastar hay que revelar la clave y firmar con ECDSA: es la entrada más pesada.
La «3» inicial es el byte de versión 0x05. Lo que sigue es el hash de un script (BIP 16), no de una clave: por eso no se ve qué esconde. El coste mostrado es el de la variante SegWit anidada (P2SH-P2WPKH); una multifirma pesa más.
«bc» es el prefijo de la red principal, «1» separa prefijo y datos, y la «q» es el valor 0: versión 0 de SegWit. Siguen 20 bytes (hash de la clave) y un checksum Bech32 de 6 caracteres. La firma va en el testigo, que cuenta menos.
Igual que bc1q, pero la «p» es el valor 1: versión 1 de SegWit (Taproot). Contiene directamente una clave de 32 bytes y su checksum usa la constante de Bech32m (BIP 350). Gastar por key path solo necesita una firma Schnorr: es la entrada más ligera.
Tamaño de una entrada (vB), por tipo
La tarifa es la del cuadro «Tarifa de ejemplo» de más abajo (cámbiala allí). Direcciones de ejemplo: vectores de prueba de BIP 173 (bc1q…) y BIP 350 (bc1p…) y documentación de Bitcoin Wiki (1… y 3…). Tamaños: ver «De dónde salen esos tamaños». Son direcciones de documentación: no envíes fondos a ellas.
Cuánto pesa gastar cada tipo
La comisión de una transacción es su tamaño en vB (bytes virtuales) por la tarifa en sat/vB. Cada vez que gastas una entrada (un UTXO), el tamaño depende del tipo de dirección donde estaba. Cambia la tarifa para ver el coste de gastar una entrada.
Matiz importante: el ahorro está en gastar. Enviar a una dirección Taproot o P2WSH añade 12 vB a la salida (43 vB frente a 31 vB de una bc1q de clave) y esos bytes los paga quien crea la transacción. Las cifras son por entrada con una firma ECDSA de hasta 72 bytes o una Schnorr de 64 bytes, de clave única (key path en Taproot); la multifirma y los scripts cambian los tamaños.
De dónde salen esos tamaños
Peso y vB: según BIP 141, el peso es 4 × (bytes sin testigo) + 1 × (bytes de testigo), y el tamaño virtual es el peso dividido entre 4. Ejemplo con P2WPKH: la entrada ocupa 41 bytes fuera del testigo (36 de referencia al UTXO + 1 de longitud de script + 4 de secuencia), es decir 164 de peso, más unos 108 de testigo (firma de hasta 72 B y clave de 33 B con sus longitudes) = 272 de peso = 68 vB. En P2PKH, esos ~107 bytes de firma y clave van en el script normal y cuentan completos: 148 vB. En Taproot key path, el testigo es solo una firma Schnorr de 64 bytes (+2 de longitudes): 164 + 66 = 230 de peso = 57,5 vB.
Tabla comparativa
| Prefijo | Tipo | Codificación | Longitud | Entrada (vB) | Salida (vB) | Desde | Compatibilidad |
|---|---|---|---|---|---|---|---|
| 1… | P2PKH | Base58Check | 26–34 | 148 | 34 | 2009 | Universal |
| 3… | P2SH | Base58Check | 34 | 91 (P2SH-P2WPKH) | 32 | 2012 (BIP 16) | Casi universal |
| bc1q… | P2WPKH / P2WSH | Bech32 | 42 / 62 | 67,75 (P2WPKH) | 31 / 43 | Ago. 2017 (BIP 141) | Muy extendida |
| bc1p… | P2TR | Bech32m | 62 | 57,5 (key path) | 43 | Nov. 2021 (BIP 341) | Extendida; comprobar el destino |
Tamaños de entrada: P2PKH 148 vB, P2SH-P2WPKH 91 vB, P2WPKH 67,75 vB y P2TR key path 57,5 vB (cálculo propio a partir de la estructura de BIP 141 y BIP 341). Salida: 34, 32, 31 y 43 vB (P2WSH también 43). Las cantidades con decimales aparecen porque el peso se mide en cuartos de byte.
¿De qué tipo es mi dirección?
Pega una dirección y la web mira su prefijo y su longitud en tu navegador (no se envía a ningún sitio). No comprueba el checksum: no sirve para validar pagos.
Preguntas frecuentes
¿Qué diferencia hay entre bc1q y bc1p?
La letra después de «bc1» es la primera del campo de datos: la «q» corresponde a la versión de testigo 0 (SegWit, Bech32) y la «p» a la versión 1 (Taproot, Bech32m). bc1q contiene el hash de una clave o de un script; bc1p contiene directamente una clave pública de 32 bytes ajustada.
¿Puedo enviar de una dirección 1… a una bc1…, o al revés?
Sí. El tipo de la dirección de origen y el del destino son independientes. Lo único que hace falta es que la wallet que crea la transacción sepa codificar el tipo de destino; casi todas las actuales saben hacerlo con los cuatro formatos.
¿Mis direcciones antiguas dejan de funcionar?
No. Las reglas de consenso de Bitcoin siguen aceptando todos los formatos. Mover fondos a otro tipo es una transacción normal y paga su comisión; no es obligatorio.
¿Por qué las direcciones bc1 no tienen mayúsculas?
Bech32 usa un alfabeto de 32 símbolos sin distinguir mayúsculas de minúsculas (se escribe todo en minúsculas, o todo en mayúsculas, pero nunca mezclado). Las mayúsculas permiten códigos QR más compactos. Base58Check, en cambio, sí distingue las dos.
¿Debo reutilizar la misma dirección?
Mejor no: reutilizar una dirección une públicamente todos sus pagos y resta privacidad. Las wallets modernas generan una dirección nueva para cada cobro a partir de una misma semilla. Más en la guía de privacidad.
Fuentes: BIP 13 y BIP 16 (P2SH), BIP 141 (SegWit, peso y vB), BIP 173 (Bech32), BIP 350 (Bech32m), BIP 340 y BIP 341 (Schnorr y Taproot) y Bitcoin Wiki: Base58Check. Las direcciones de ejemplo son las de los vectores de prueba de BIP 173 y BIP 350 y de la documentación de Bitcoin Wiki.