Preguntas sobre direcciones
Checksums, cadenas, prefijos y lo que una validación correcta no demuestra.
¿Qué significa exactamente aquí que una dirección sea válida?+
Significa que el texto está bien formado y es coherente consigo mismo: los caracteres pertenecen al alfabeto correcto, la longitud coincide con el tipo que declara el prefijo y el checksum incorporado en la dirección concuerda con el resto. Eso es todo. No significa que la dirección exista, que alguien tenga su clave privada, que haya recibido fondos alguna vez, que esté en la cadena que crees ni que pertenezca a la persona a la que vas a pagar. Ninguna de esas preguntas se puede responder sin consultar un nodo, y esta página no consulta nada.
¿Por qué una dirección de Ethereum toda en minúsculas sigue siendo válida?+
Porque es una dirección válida, solo que desprotegida. EIP-55 esconde un checksum en las mayúsculas y minúsculas, así que una dirección escrita entera en minúsculas o entera en mayúsculas no lleva ningún checksum, y un único carácter mal escrito en ella pasaría totalmente desapercibido. Por eso esta página da cuatro resultados en lugar de dos: las minúsculas y las mayúsculas se marcan como sin checksum, la mezcla se verifica con el hash Keccak-256 y una dirección con mezcla que falla se señala como errata o alteración. Si puedes elegir, comparte siempre la forma con checksum.
¿En qué cadena está mi dirección 0x?+
Todas las cadenas EVM comparten el mismo formato de dirección de veinte bytes, así que el texto no puede decírtelo. Ethereum, Arbitrum, Optimism, Base, Polygon, BNB Chain y las demás aceptan la misma dirección, y la misma clave privada la controla en todas. Es cómodo hasta que deja de serlo: enviar un token a la dirección correcta en la cadena equivocada es una de las formas más comunes de perder fondos, y ningún validador puede avisarte, porque la dirección no tiene nada de malo. Confirma la red en tu billetera, no en la dirección.
¿Puedes decirme si es un contrato o una billetera normal?+
Sin conexión, no. La diferencia entre una cuenta de propiedad externa y un contrato es si hay código almacenado en esa dirección, lo cual es estado de la cadena y no algo codificado en el texto. Un explorador de bloques puede decírtelo, y es importante: enviar tokens a un contrato que no se escribió para recibirlos es una forma conocida de perderlos para siempre.
¿Qué diferencia hay entre bc1q y bc1p?+
El carácter que sigue a bc1 es la versión de testigo. Una q es la versión 0, que es segwit nativo: cuarenta y dos caracteres para una sola clave y sesenta y dos para un script. Una p es la versión 1, que es taproot. Además usan checksums distintos. La versión 0 usa la constante original de bech32 de BIP-173, y la versión 1 y superiores usan bech32m de BIP-350. El cambio fue deliberado: hace que una billetera antigua que solo conoce bech32 rechace una dirección taproot en lugar de estropearla en silencio, así que aquí están implementadas ambas constantes y una discrepancia se informa como un error propio.
¿Por qué faltan 0, O, I y l en las direcciones de Bitcoin?+
Base58 es Base64 sin los caracteres que se confunden. El cero y la O mayúscula se parecen en muchas fuentes, igual que la I mayúscula y la l minúscula, y el más y la barra de Base64 dan problemas cuando se hace doble clic en una dirección o se incluye en una URL. Bech32 resuelve lo mismo de otra manera: elimina 1, b, i y o de su alfabeto y usa minúsculas en todo el texto. Por eso una dirección bech32 nunca mezcla mayúsculas y minúsculas: el checksum se calcula sobre una sola variante, así que un texto mezclado no se puede verificar en absoluto.
El checksum era correcto, pero envié a la dirección equivocada. ¿Cómo es posible?+
Casi seguro por una sustitución, no por una errata. El malware que secuestra el portapapeles vigila cualquier cosa que parezca una dirección y la reemplaza por la del atacante, que es una dirección perfectamente válida y pasa todas las comprobaciones de esta página. Los ataques de envenenamiento de direcciones funcionan de forma parecida: llenan tu historial de transacciones con una dirección casi idéntica, de modo que si más tarde copias de la fila equivocada, la dirección sigue siendo válida. Un checksum solo detecta la corrupción, nunca un cambio. La defensa es verificar la dirección por otro canal, comparar el texto completo y no solo los primeros y últimos cuatro caracteres, y enviar antes una pequeña cantidad de prueba.
¿Funciona con Litecoin, Dogecoin, Solana o Monero?+
No como destinos válidos, pero se reconocen lo suficiente como para nombrarlos. Una dirección de Litecoin se decodifica como Base58Check con un byte de versión que no es el de Bitcoin, y una dirección ltc1 tiene una parte legible por humanos que no es bc, así que ambas indican a qué cadena pertenecen en lugar de un simple rechazo. Solana y Monero usan codificaciones totalmente distintas y aparecerán como formato no reconocido. Lo que esta página verifica es Bitcoin y las cadenas EVM.
¿Qué pasa si pego una clave privada o una frase semilla?+
Una clave privada WIF se reconoce por su byte de versión y se detiene con una advertencia en lugar de un veredicto, porque ese texto puede gastar tus monedas y nunca debería escribirse en un sitio web, tampoco en este. No se transmite nada en ningún caso, ya que la página no hace peticiones, pero el hábito seguro es absoluto: una dirección de recepción es pública y se puede pegar en cualquier sitio, mientras que una clave privada o una frase semilla solo debería introducirse en tu propio software de billetera. Esta herramienta nunca genera claves, frases semilla ni direcciones. Solo lee lo que pegas.
¿Se sube algo cuando compruebo una dirección?+
No. Keccak-256, SHA-256 y el polinomio de bech32 están implementados en la propia página, así que la validación es pura aritmética que se ejecuta en tu pestaña. No hay consulta a exploradores, ni endpoint RPC, ni analítica sobre lo que introduces, ni conexión de billetera. Un lote de doscientas direcciones de clientes se comprueba sin que ninguna salga de tu equipo, que es el principal motivo para usar un validador local en lugar de pegar una lista de pagos en un buscador.