Mastering Bitcoin
3. Introducción » Primeros Pasos » Confirmaciones
Página 16 de 98
Primeros Pasos
Para unirse a la red bitcoin y comenzar a usar la moneda, todo lo que un usuario debe hacer es descargar una aplicación o usar una aplicación web. Ya que bitcoin es un estándar existen diversas implementaciones del software cliente de bitcoin. Existe también una implementación de referencia, también conocida como el cliente Satoshi, que se administra como un proyecto de código abierto por un equipo de desarrolladores y deriva de la implementación originalmente escrita por Satoshi Nakamoto.
Las tres formas principales de clientes bitcoin son:
Cliente completo
Un cliente completo, o «nodo completo», es un cliente que almacena la totalidad del historial de transacciones bitcoin (cada transacción de cada usuario de todos los tiempos), administra las carteras del usuario y puede iniciar transacciones directamente sobre la red bitcoin. Esto es análogo a un servidor de email autónomo en el sentido en que se ocupa de cada aspecto del protocolo sin requerir de ningún otro servidor o servicio de terceros.
Cliente ligero
Un cliente ligero almacena las carteras del usuario pero depende de servidores de terceros para acceder a las transacciones y la red bitcoin. El cliente ligero no almacena una copia completa de las transacciones y por lo tanto debe confiar en los servidores de terceros para la validación de transacciones. Esto es similar a un cliente de email autónomo que se conecta a un servidor de correo para acceder al buzón, ya que depende de terceros para interacciones con la red.
Cliente web
Los clientes web se acceden a través de un navegador web y almacenan las carteras de los usuarios en servidores de terceros. Esto es análogo al webmail ya que depende enteramente de servidores de terceros.
Bitcoin Móvil
Los clientes móviles para smartphones, como los basados en el sistema Android, pueden operar como clientes completos, clientes ligeros o clientes web. Algunos clientes móviles se sincronizan con una web o cliente de escritorio, proporcionando una cartera multiplataforma a través de múltiples dispositivos pero con una fuente común de fondos.
La elección de cliente bitcoin depende de cuánto control quiera tener el usuario sobre sus fondos. Un cliente completo ofrece el mayor nivel de control e independencia al usuario, pero en contraparte coloca la responsabilidad de realizar backups y mantener la seguridad sobre el usuario. En el otro extremo del espectro de opciones, el cliente web es el más simple de montar y usar, pero su contra es que introduce riesgo ajeno ya que la seguridad y el control están compartidos entre el usuario y el dueño del servicio web. Si una cartera web se pusiera en peligro, tal como ha sucedido con varias, el usuario podría perder potencialmente todos sus fondos. Por el contrario, si el usuario posee un cliente completo sin los backups correspondientes, podría perder sus fondos debido a un desperfecto del computador.
Para los propósitos de este libro haremos una demostración del uso de una variedad de clientes descargables, desde la implementación de referencia (el cliente de Satoshi) hasta las carteras web.
Algunos de los ejemplos requerirán el uso del cliente de referencia, el cual, además de ser un cliente completo, también expone APIs para la cartera, la red y los servicios de transacción. Si planeas explorar las interfaces programáticas del sistema bitcoin necesitarás el cliente de referencia.
Comienzo Rápido
Alice, a quien introdujimos en Usos de Bitcoin, Usuarios y Sus Historias, no es una usuaria técnica y ha oído sobre bitcoin muy recientemente a través de un amigo. Ha comenzado su travesía visitando el sitio oficial bitcoin.org, donde ha encontrado una amplia selección de clientes bitcoin. Siguiendo el consejo del sitio bitcoin.org ha elegido el cliente bitcoin ligero Multibit.
Alice sigue un enlace desde el sitio bitcoin.org para descargar e instalar Multibit en su computador de escritorio. Multibit está disponible para Windows, Mac OS y Linux.

Figura 1. La pantalla de Bienvenida del cliente bitcoin Multibit
Una cartera bitcoin debe protegerse mediante una palabra o frase clave. Existen muchos agentes maliciosos intentando romper contraseñas inseguras, así que asegúrate de elegir una que no sea fácil de romper. Utiliza una combinación de caracteres en mayúsculas y minúsculas, números y símbolos. Evita incluir información personal como fechas de cumpleaños o nombres de equipos deportivos. Evita palabras comúnmente encontradas en diccionarios de cualquier idioma. De ser posible utiliza un generador de contraseñas para generar una contraseña completamente aleatoria que sea de al menos 12 caracteres de largo. Recuerda: bitcoin es dinero y puede ser movido instantáneamente a cualquier punto del planeta. Si no se protege debidamente, puede ser fácilmente robado.
Una vez que Alice ha descargado e instalado la aplicación Multibit, lo ejecuta y es recibida por la pantalla de Bienvenida, tal como se muestra en La pantalla de Bienvenida del cliente bitcoin Multibit.
Multibit automáticamente crea una cartera y una nueva dirección bitcoin para Alice, que Alice puede ver haciendo clic sobre la pestaña de Request (Solicitar) mostrada en La nueva dirección bitcoin de Alice en la pestaña de Solicitar del cliente Multibit.

Figura 2. La nueva dirección bitcoin de Alice en la pestaña de Solicitar del cliente Multibit
La parte más importante de esta pantalla es la dirección bitcoin de Alice. Al igual que una dirección de email, Alice puede compartir esta dirección y cualquiera puede usarla para enviar dinero directamente a su nueva cartera. En la pantalla aparece como una larga secuencia de letras y números:
1Cdid9KFAaatwczBwBttQcwXYCpvK8h7FK
Junto a la dirección bitcoin en su cartera hay un código QR, una forma de código de barras que contiene la misma información en un formato que puede ser escaneado por la cámara de un smartphone. El código QR es el cuadro en blanco y negro a la derecha de su ventana. Alice puede copiar la dirección bitcoin o el código QR a su portapapeles haciendo clic en el botón de copiado adyacente a cada uno de ellos. Un clic sobre el código QR en sí mismo lo ampliará para que sea fácilmente escaneable por la cámara de un teléfono.
Alice también puede imprimir el código QR como una forma sencilla de dar su dirección a otros sin ellos tener que teclear una larga cadena de letras y números.
Las direcciones bitcoin comienzan con el dígito 1 o 3. Al igual que las direcciones de email pueden ser compartidas con otros usuarios de bitcoin quienes pueden usarlas para enviar bitcoin directamente a tu cartera. A diferencia de las direcciones de email puedes crear nuevas direcciones tan frecuentemente como desees, todas las cuales dirigirán fondos a tu cartera. Una cartera es sencillamente una colección de direcciones y las claves que permiten gastar los fondos en ellas. Puedes incrementar tu privacidad usando una dirección distinta para cada transacción. Prácticamente no existe límite al número de direcciones que un usuario puede crear.
Alice ahora se encuentra preparada para empezar a usar su nueva cartera bitcoin.
Obteniendo tus Primeros Bitcoins
No es posible comprar bitcoins en un banco o casa de cambio de monedas extranjeras por el momento.
Hacia 2014 es aún muy difícil comprar bitcoins en la mayoría de los países. Existe un número de casas de cambio especializadas donde uno puede comprar y vender bitcoins por moneda local. Éstas operan como mercados de moneda en la web e incluyen:
Bitstamp
Un mercado europeo de divisas que soporta varias monedas, incluyendo euros (EUR) y dólares estadounidenses (USD) a través de transferencias bancarias.
Coinbase
Una cartera y plataforma bitcoin radicada en EEUU donde comerciantes y consumidores pueden realizar transacciones en bitcoin. Coinbase facilita la compra y venta de bitcoins, permitiendo a sus usuarios conectar sus cuentas corrientes de bancos estadounidenses a través del sistema ACH.
Las casas de cambio de criptomonedas como estas operan como punto de conexión entre monedas nacionales y criptomonedas. Como tales se encuentran sujetas a regulaciones internacionales y usualmente se limitan a un único país o región económica y se especializan en las monedas nacionales de esa área. Tu elección de casa de cambio de monedas será específica a la moneda nacional que uses y limitada a las casas de cambio que operan dentro de la jurisdicción legal de tu país. Al igual que abrir una cuenta bancaria, puede llevar días o hasta semanas el montar cuentas con estos servicios ya que requieren de varias formas de identificación para cumplir con los requisitos de las regulaciones bancarias KYC (know your customer) y AMl (ant-money laundering, o antilavado de dinero). Una vez que tengas una cuenta en una casa de cambio de bitcoin puedes comprar y vender bitcoins rápidamente tal y como harías con moneda extranjera a través de una agencia de corredores.
Puedes encontrar una lista más completa en bitcoin charts, un sitio que ofrece cotizaciones de precios y otros datos del mercado para varias docenas de casas de cambio de monedas.
Existen otros cuatro métodos de obtención de bitcoins como usuario nuevo:
Encuentra un amigo que tenga bitcoins y cómprale algunos directamente. Muchos usuarios de bitcoin comienzan de esta forma.
Utilizar un servicio de clasificados como
localbitcoins.com
para encontrar un vendedor en tu área a quien comprarle bitcoins con efectivo en una transacción en persona.
Vender un producto o servicio por bitcoins. Si eres un programador puedes ofrecer tus habilidades de programación.
Usa un cajero automático bitcoin en tu ciudad. Encuentra un cajero cercano a ti usando el mapa de
CoinDesk
.
Alice conoció bitcoin gracias a un amigo y por lo tanto tiene una forma simple de obtener sus primeros bitcoins mientras espera a que su cuenta en un mercado de divisas de California sea verificada y activada.
Enviando y Recibiendo Bitcoins
Alice ha creado su cartera bitcoin y ahora está lista para recibir fondos. Su aplicación de cartera generó una clave pública aleatoriamente (descrita en más detalle en el apartado sobre claves privadas) junto con su correspondiente dirección bitcoin. A este punto su dirección bitcoin no es conocida a la red bitcoin ni está «registrada» en ninguna parte del sistema bitcoin. Su dirección bitcoin es simplemente un número que corresponde a una clave que ella puede usar para acceder a los fondos. No existe ninguna cuenta ni asociación entre direcciones y una cuenta. Hasta el momento en que una dirección es referenciada como la destinataria del valor en una transacción publicada en el libro contable bitcoin (la cadena de bloques), es simplemente parte de un vasto número de posibles direcciones «válidas» en bitcoin. Una vez que ha sido asociada con una transacción se convierte en parte de las direcciones conocidas por la red y Alice puede verificar su saldo en el libro contable público.
Alice se encuentra con su amigo Joe, quien le presentó bitcoin, en un restaurante para intercambiar algunos dólares estadounidenses y poner algunos bitcoins en su cuenta. Ella ha llevado impresas su dirección y el código QR tal como lo muestra su cartera bitcoin. No hay nada sensible, desde una perspectiva de seguridad, sobre la dirección bitcoin. Puede ser publicada en cualquier parte sin arriesgar la seguridad de su cuenta.
Alice quiere convertir tan solo 10 dólares estadounidenses a bitcoin para evitar arriesgar demasiado dinero en esta nueva tecnología. Entrega a Joe un billete de $10 y la impresión de su dirección para que Joe pueda enviar el valor equivalente en bitcoins.
A continuación Joe debe averiguar la tasa de cambio para poder dar la cantidad correcta de bitcoins a Alice. Existen centenares de aplicaciones y sitios que informan de la tasa de mercado actual. Aquí hay algunas de las más populares:
Bitcoin Charts
Un servicio de listado de datos que muestra la tasa de cambio de bitcoin para diversas casas de cambio alrededor del mundo, denominadas en distintas monedas locales Bitcoin Average.
Un sitio que proporciona una vista simple del promedio ponderado por volumen de cada moneda ZeroBlock.
Una aplicación gratuita para Android e iOS que muestra el precio de bitcoin de distintas casas de cambio (ver ZeroBlock, una aplicación de precio de mercado de bitcoin para Android e iOS).

Figura 3. ZeroBlock, una aplicación de precio de mercado de bitcoin para Android e iOS
Bitcoin Wisdom
Otro servicio de listado de datos de mercado
Usando una de las aplicaciones o sitios web listados, Joe determina que el precio de un bitcoin es aproximadamente 100 dólares norteamericanos. A este cambio él debe dar a Alice 0.10 bitcoin, también conocidos como 100 milibitcoins, a cambio de los 10 dólares americanos que ella dio a él.
Una vez que Joe ha establecido un precio justo abre su aplicación de cartera y selecciona enviar bitcoins. Por ejemplo, si utiliza la cartera móvil de Blockchain en un teléfono Android vería una pantalla requiriendo dos valores, como se muestra en La pantalla de envío de bitcoins de la cartera móvil Blockchain.
La dirección bitcoin destinataria para la transacción.
El monto de bitcoins a enviar.
En el campo de texto de la dirección bitcoin existe un pequeño icono que se ve como un código QR.

Figura 4. La pantalla de envío de bitcoins de la cartera móvil Blockchain
Esto permite a Joe escanear el código con la cámara de su teléfono, evitando teclear la dirección bitcoin de Alice:
1Cdid9KFAaatwczBwBttQcwXYCpvK8h7FK
La cual es larga y difícil de teclear. Joe toca sobre el icono del código QR y activa la cámara de su teléfono, escaneando el código QR de la cartera impresa de Alice que ella ha llevado. La aplicación de cartera móvil llena la dirección bitcoin y Joe puede verificar que se ha escaneado correctamente comparando los dígitos de la dirección con la versión impresa por Alice.
Joe ingresa el valor bitcoin para la transacción, 0,10 bitcoins. Verifica cuidadosamente que ha ingresado el valor correcto, ya que está a punto de enviar dinero y cualquier error puede resultar costoso. Finalmente pulsa Send para transmitir la transacción. La cartera bitcoin móvil de Joe construye una transacción que asigna 0,10 bitcoins a la dirección provista por Alice, derivando los fondos de la cartera de Joe y firmando la transacción con la firma digital de Joe. Esto notifica a la red bitcoin que Joe ha autorizado transferir valor de una de sus direcciones a la dirección de Alice. Como la dirección se transmite mediante un protocolo entre pares, rápidamente se propaga por toda la red bitcoin. En menos de un segundo, la mayoría de los nodos bien conectados en la red reciben la transacción y ven la dirección de Alice por primera vez.
Si Alice tiene un smartphone o un ordenador portátil consigo, también será capaz de ver la transacción. El libro contable bitcoin —un archivo en constante crecimiento que registra cada transacción bitcoin que ha ocurrido desde el comienzo— es público, lo cual significa que todo lo que ella debe hacer es buscar su propia dirección y ver si se le han enviado fondos. Hacer eso es muy fácil en el sitio web blockchain.info, simplemente ingresando su dirección en el campo de búsqueda. El sitio le mostrará una página listando todas las transacciones desde y hacia su dirección. Si Alice está observando esa página se actualizará mostrando una nueva transacción transfiriendo 0,10 bitcoins a su saldo poco después de que Joe presione Enviar.
Confirmaciones
Al principio la dirección de Alice mostrará la transacción de Joe como «sin confirmar». Esto significa que la transacción ha sido propagada por la red pero no ha sido incluida aún en el libro contable bitcoin, conocido como la cadena de bloques (blockchain). Para ser incluida, la transacción debe ser «recogida» por un minero e incluida en un bloque de transacciones. Una vez que se cree un nuevo bloque, en aproximadamente 10 minutos, las transacciones dentro del bloque serán aceptadas y «confirmadas» por la red y pueden ser gastadas. La transacción es vista instantáneamente, pero solo es «confiable» por todos cuando ha sido incluida en un bloque minado.
Alice es ahora la orgullosa propietaria de 0,10 bitcoins que puede gastar. En el próximo capítulo echaremos un vistazo a su primera compra con bitcoin y examinaremos las tecnologías de transacción y propagación en mayor detalle.