Introduciendose a Bitcoin usando la Testnet

bonatti

Madmaxista
Desde
8 Jun 2013
Mensajes
131
Reputación
356
Veo a mucha gente ansiosa por enterarse de como comprar y como gestionar los bitcoins, pero no veo que nadie recomiende usar la Testnet para familiarizarse con Bitcoin, y creo que es una herramienta muy útil para tomar contacto y confianza con las herramientas básicas antes de comprar en un exchange y sacarlo a un wallet, o profundizar en la tecnología si alguno tiene interés.

El funcionamiento de la red es prácticamente el mismo, salvando pequeñas diferencias, como por ejemplo que las direcciones empiezan por números diferentes. Las direcciones de Bitcoin empiezan por 1 o 3 (las P2SH), y en la Tesnet empiezan por 2 o por m/n (las P2SH). Que diferencia a una dirección básica de una P2SH no es relevante para un primer contacto, aparentemente tienen el mismo formato, y que empiecen por numeros diferentes se debe a que las direcciones de Bitcoin tienen un prefijo para evitar equivocaciones sencillas (por ejemplo tras*mitiendo bitcoins reales pensando que lo estás haciendo en la Testnet).

Para que podais jugar con la tesnet necesitais dos cosas:
* Wallets en modo testnet
* Testnet bicoins

Para conseguir lo primero, podeis usar diferentes Wallets de los más frecuentes en la red con parámetros de configuración activados para funcionar en modo Testnet. No voy a entrar en los detalles de cada Wallet, porque podeis encontrar infinidad de tutoriales en la red e información de como usarlos, solo os indico como activar el modo tesnet:
1) Bitaddres, para hacer paperwallets fundamentalmente. Si pensais generar un paperwallet para almacenar una cantidad de bitcoins significativa en valor, no es recomendable hacerlo en la web directamente, hay otras maneras (dejo como ejercicio la explicación el porqué y si hay gente interesada, entramos en explicaciones más detalladas). Para usarlo en modo tesnet, sólo hay que añadir "?testnet=true" al final de la URL que carga el paperwallet:
bitaddress.org
2) Bitcoin Core, el cliente "oficial" con el que están montados la mayor parte de los nodos de la red, aunque los usuarios que no montan un nodo, no lo usan como Wallet habitualmente porque no es muy cómodo ni sencillo de usar, pero que para jugar ofrece muchas funcionalidades a nivel de consola de comandos. Este Wallet genera direcciones aleatoriamente, y va generando nuevas a medida que las necesita. En caso de usarlo en la red principal es conveniente usarlo con cuidado, hay que guardar el fichero del wallet periodicamente con frecuencia, puesto que si se han generado direcciones nuevas y no has guardado el fichero, podrían perder claves privadas y los bitcoins asociados a ellas. (Lo tachado era cierto hasta Bitcoin 0.13, como me hizo notar el usuario @MIP en el hilo principal del Bitcoin). Este Wallet genera direcciones según un algoritmo determinista a partir de una clave maestra, de modo que es suficiente con guardar un backup del wallet y podrá regenerar todas las direcciones usadas en la cartera sin problema en caso de restaruralo en otro equipo. En la tesnet, al no tener valor los tokens, podemos jugar sin cuidado. Para inicializar el cliente en modo testnet, hay que localizar el fichero bitcoin.conf (en cada sistema operativo estará en un ubicación diferente) y añadir en una línea el parámetro "testnet=1". Podeis estar seguros de que el cliente se ha activado en modo Testnet porque al arrancar el tonalidad del icono de Bitcoin se ve en verde en vez de en naranja. Otra caracteristica de este cliente es que valida toda la cadena de bloques, y la almacenará al completo (pueder tardar bastante, sed pacientes, sobre todo si no teneis una conexión decente). En la Testnet es mucho menos voluminosa que en la red principal, pero aun así son unos cuantos gigas. Si no quieres ocupar mucho espacio de tu disco duro, conviene configurar el parámetro "prune=550" en una linea adicional del fichero bitcoin.conf, para que almacene sólo los últimos 550 Mb de la cadena (es el límite inferior, o lo era la última vez que lo miré). Podeis descargar Bitcoin Core aquí:
Download - Bitcoin
3) Electrum. Es uno de los clientes más populares para usar en PC. Electrum es un cliente SPV (simplified payment verification), es decir, que no descarga toda la cadena de bloques y verifica cada una de las tras*acciones, sino que solo busca y comprueba las tras*acciones relevantes para las direcciones del wallet que gestiona, confiando en otros nodos para obtener la información de estas tras*acciones. Con este os recomiendo que genereis un Wallet estándar nuevo, con una semilla nueva, que es bastante intuitivo. Electrum generará lo que se denomina una "Cartera jerárquica determinista" a partir de la semilla. Es un concepto muy interesante y útil, pues a partir de una misma semilla de varias palabras, se puden generar de forma determinista direcciones privadas para varios Wallets para diferentes monedas (para los programas/clientes que lo soporten). Determinista significa que a partir de la semilla siempre se generará la misma secuencia de direcciones para cada wallet, siguiendo unas especificaciones incluidas entre las diferentes BIPs (Bitcoin improvement proposals). Esto garantiza que recordando esa semilla (las palábras claves que la representan, siempre en el mismo orden) podais regenerar vuestro Wallet donde vayais, en cualquier dispositivo, con tal de que el software utilizado siga el estándar correctamente. Para hacer funcionar Electrum en modo tesnet, en Linux había que añadir el parámetro "--testnet" al comando de arranque del programa, en otros sistemas operativos no estoy seguro de como va, pero seguro que hay información en Internet abundante (en Mac seguro que es igual, en Windows lo normal es que haya que editar el fichero que lanza el programa y añadir algo también como parámetro de arranque). Podeis descargar las diferentes versiones de Electrum aquí (coged la más actual):
Index of /
4) Eclaire Mobile Tesnet. Si alguien quiere jugar con la Lightning Network, recomiendo este Wallet por su sencillez de uso. Disponible para Android en Google Play. No soy usuario de iPhone, tendreis que buscar alternativas si estais interesados. También hay clientes de Lightning para PC, por ejemplo el de Zap (Downloads), pero no estoy actualizado sobre como ponerlo en marcha sobre la Tesnet. Con Eclaire es muy sencillo hacer tras*aciones on-chain o por lightning. Tendreis que llevar algun testnet bitcoin al wallet, abrir un canal, y ya podeis hacer tras*acciones lightning, por ejemplo para compraros un café virtual en:
Starblocks | Spend bitcoin with LN on TESTNET
5) Hardware wallets. Si tienes un hardware wallet y quieres familiarizarte con su uso, también lo puedes usar con la Testnet, al menos el que yo tengo (un Ledger Nano s). En su momento cuando lo compré no había aplicación oficial de la Tesnet, y había que recompilar y cargar a mano la aplicación con utilidades de desarrollo. Pero ahora ya puedes cargarla directamente desde el gestor de aplicaciones como cualquier otra.

Vale, ya tengo como gestionar mis testnet bitcoins, pero ¿cómo los consigo?. Buscad en Internet por "bitcoin testnet faucets" y encontrareis páginas donde os enviarán gratuitamente cantidades pequeñas a la dirección que proporcioneis. Yo acabo de solicitar en esta, y me han llegado sin problema 0,001 testnet bitcoins:
Yet Another Bitcoin Testnet Faucet! Bech32!

Para terminar con la parte práctica, como os decía, la testnet es en esencia una copia de la red principal, que existe para poder probar sin preocupaciones por perder bitcoins reales. Se pueden consultar su cadena de bloques, las tras*acciones, etc. de la misma manera que la red principal, por ejemplo aquí:
Bitcoin Testnet Block Explorer | BlockCypher

Es interesante ver como quedan registradas vuestras tras*acciones, como podeis localizarlas con el ID único que se genera a partir de los datos de la tras*acción, o por direcciones origen o destino... vamos, que jugueis con ello.

Y como añadido, con la esperanza de que alguno quiera realmente estudiar como funciona esto en profundidad, creo que el mejor contenido para ello es el libro de Antonopoulos que ya va por su segunda edición y está diponible gratuitamente (también se puede adquirir en formato físico) aquí:
bitcoinbook/bitcoinbook

Intentaré atender las dudas si las hay de quien esté interesado en jugar con todo esto.

EDITADO: para corregir información incorrecta sobre el cliente de Bitcoin Core.
 
Última edición:
Zskj9C56UondJxcjVaienfhVaNb7LJVWG6e787gZqp6Rzu7zqhhDT9cK4TEQdjymsNLPK4pzuP6GBnRuMGUZbTo5jypuDGmY75EdHSm8oy5MvnUVB7MQ


Un reply de un troll, todo un éxito.

Realmente os puede quitar más de un dolor de cabeza practicar un poco sin riesgo. Entiendo el FOMO, pero no entiendo el poco interés por saber que diablos estás comprando y como funciona.

Me doy por vencido.
 
Gracias. También te lo pongo por mensaje.

En Electrum, en Windows hay que hacer una copia del acceso directo y en propiedades añadir en Destino al final de la ruta "--testnet". Como indicas. Fácil y sencillo.

Edito: solucionado.
 
Última edición:
No se podria adivinar tu seed de 12 palabras de Electrum en un futuro mediante bruteforce? no me hace gracia eso, me parece mas seguro Bitcoin Core aunque es un ****** de usar.
 
No se podria adivinar tu seed de 12 palabras de Electrum en un futuro mediante bruteforce? no me hace gracia eso, me parece mas seguro Bitcoin Core aunque es un ****** de usar.

A simple vista puede parecer que sí, pero ten en cuenta que el orden importa, y el número de posibles palabras es 2048, por lo que el total de combinaciones es 2048 a la potencia de 12, o lo que es lo mismo, 2 a la potencia de 132, que es un número que en base decimal tiene 39 ceros. Con ese número, usando toda la potencia computacional del planeta en ataques de fuerta bruta, tardarías muchísimos más años de los que tiene el universo en adivinar uno de los millones de wallets existentes. Y ya si añades una passphrase para aumentarlo a 256 bits de seguridad, puedes imaginar lo que costaría.
 
A simple vista puede parecer que sí, pero ten en cuenta que el orden importa, y el número de posibles palabras es 2048, por lo que el total de combinaciones es 2048 a la potencia de 12, o lo que es lo mismo, 2 a la potencia de 132, que es un número que en base decimal tiene 39 ceros. Con ese número, usando toda la potencia computacional del planeta en ataques de fuerta bruta, tardarías muchísimos más años de los que tiene el universo en adivinar uno de los millones de wallets existentes. Y ya si añades una passphrase para aumentarlo a 256 bits de seguridad, puedes imaginar lo que costaría.


Pues a mi me suena leer a alguno de los cracks de esto (creo que Luke Dash Jr) diciendo que no usaria Electrum.

Por cierto, he probado Electrum y al intentar conectarme a un servidor, clico dos veces a un server de la lista, y se conecta a otro aleatorio, no lo entiendo. Estoy usandolo con Tor.
 
Pues a mi me suena leer a alguno de los cracks de esto (creo que Luke Dash Jr) diciendo que no usaria Electrum.

Luke Dash Jr es un fanático de la seguridad, no usaría nunca un cliente SPV como es Electrum, sino siempre clientes que bajen toda la cadena y verifiquen cada tras*acción. Realmente usando un cliente SPV, no estás verificando por ti mismo, te estás fiando de la información que te pasan otros nodos. No he visto ataques a la red Bitcoin que puedan comprometer un cliente SPV por el hecho de serlo, pero podría pasar (y lo cierto es que más probables serían esos ataques cuantos menos nodos completos hubiera en la red).

Siempre es bueno que haya más nodos completos en la red para incrementar la descentralización, pero que nadie piense que por usar un cliente SPV sus claves privadas tienen menos protección. En ese sentido, lo que tienes es que garantizar la seguridad de tu equipo informático para estar seguro de que nadie tiene acceso a tus claves, pero eso es independiente de si usar un nodo completo como Bitcoin Core, o un SPV como Electrum. Lo ideal, si no tienes mucha confianza en mantener seguro tu sistema operativo y vas a gestionar unas cantidades significativas, es usar un hardware wallet que genera las claves privadas internamente y no salen nunca de allí salvo que las quieras exportar por algún motivo.
 
Última edición:
Por cierto, he probado Electrum y al intentar conectarme a un servidor, clico dos veces a un server de la lista, y se conecta a otro aleatorio, no lo entiendo. Estoy usandolo con Tor.

No he probado Electrum con Tor, quizás no consigue conectarse al servidor que le indicas y elige otro por defecto en su lugar. ¿Estás usando Electrum con la red principal o con la testnet?
 
Un reply de un troll, todo un éxito.

Realmente os puede quitar más de un dolor de cabeza practicar un poco sin riesgo. Entiendo el FOMO, pero no entiendo el poco interés por saber que diablos estás comprando y como funciona.

Me doy por vencido.
no te mosquees, se agradece tu interes y tu sugerencia. A mi por lo menos me interesa y le echare un ojo. Pero no respondo porque mis conocimientos de BTC son tan escasos que no puedo aportar nada. Supongo que estaremos varios en esta situacion

Saludos
 
no te mosquees, se agradece tu interes y tu sugerencia. A mi por lo menos me interesa y le echare un ojo. Pero no respondo porque mis conocimientos de BTC son tan escasos que no puedo aportar nada. Supongo que estaremos varios en esta situacion

Saludos
No te preocupes que no me mosqueo, era un mensaje para provocar un poco y ver si se animaba alguien, y parece que algo ha funcionado :p

Precisamente lo que espero es que gente con conocimientos escasos se anime a probar un poco, y echarle una mano si se atasca o si alguna cosa que ve no le cuadra. Así que si te animas a cacharrear un poco y se te ocurre cualquier cosa que preguntar, por aquí andaremos
 
Volver