Monedero Bitcoin Core en Ubuntu

Acerca de Bitcoin

Bitcoin logoEl Bitcoin (código BTC, símbolo ₿) es una moneda criptográfica, moneda virtual o criptodivisa, creada por Satoshi Nakamoto en 2009.​ El término se aplica también al protocolo y a la red P2P que lo sustenta. El protocolo es código abierto.

Satoshi Nakamoto es la persona o grupo de personas que crearon el protocolo Bitcoin y su software cliente de referencia, Bitcoin Core. Actualmente la verdadera identidad de Satoshi Nakamoto sigue siendo desconocida y se desconoce si el nombre Satoshi Nakamoto es real o un seudónimo, o si el nombre representa a una persona o grupo de personas.

El bitcoin se divide en submúltiplos, siendo los más comunes los siguientes:

  • dBTC = deci-Bitcoin = 10-1 = 0,1 Bitcoin
  • cBTC = centi-Bitcoin = 10-2 = 0,01 Bitcoin
  • mBTC = mili-Bitcoin = 10-3 = 0,001 Bitcoin
  • µBTC = microBitcoin = 10-6 = 0,000 001 Bitcoin
  • sat = Satoshi = 10-8 = 0,000 000 01 Bitcoin (la subdivisión más pequeña registrada en la cadena de bloques).

Acerca de los monederos Bitcoin

Un monedero de Bitcoin (también llamado “billetera” o “cartera”, en inglés “wallet”), es donde el usuario guarda sus Bitcoins. El monedero es lo más importante, ya que si algo le sucede a su monedero, todos sus Bitcoins se perderán para siempre y nadie podrá recuperarlos.

Un monedero de Bitcoins cumple la misma función que una cuenta bancaria, almacenar dinero. El funcionamiento de los monederos se basa en dos elementos: la dirección pública y la clave privada. Básicamente un monedero es la unión de ambos elementos. El tipo de monedero depende de la forma en que se almacena la clave privada. Hay monederos más seguros o inseguros que otros, y monederos más cómodos o incómodos de usar, normalmente el grado de comodidad de empleo suele ser inverso a la seguridad. Podemos distinguir los siguientes tipos de monederos:

  • Monederos online: Este tipo de monedero almacena la clave privada de los usuarios en un servidor controlado por una empresa. Solo necesitan un navegador, por lo que están accesibles desde todas las plataformas. Son fáciles de usar pero poco seguros. La gran ventaja de los monederos online es la facilidad de empleo y la accesibilidad, pues son accesibles desde cualquier lugar y permiten realizar pagos y transferencias con rapidez. La desventaja es que son poco seguros y que el usuario no tiene control sobre su propio monedero, es una empresa de terceros quien lo administra.
  • Monedero para teléfonos móviles y tablets: Funcionan de modo similar a los monederos online, pero en versión app para smartphones y tabletas. Fáciles y cómodos de usar, pero poco seguros.
  • Monederos para ordenador: Este tipo de monederos son bastante seguros, ya que almacenan la clave privada del monedero en el propio ordenador, por lo que el usuario evita el riesgo de que la página web sea hackeada. La ventaja es que el usuario tiene control total sobre su monedero. La desventaja es que la seguridad del monedero está en manos del usuario, que está expuesto a un fallo de hardware o al malware. Es conveniente que la clave privada esté encriptada para otorgar un grado de seguridad extra en caso de que la seguridad del ordenador se vea comprometida. Dentro de los monederos para ordenador, se pueden distinguir dos tipos de monederos:
    • Clientes completos (“Full Client”): Descargan toda la cadena de bloques Blockchain al completo (la cual ocupa 150 GB aproximadamente y creciendo) y la mantiene actualizada actuando como nodo de la red. Se necesita mucho espacio de disco duro y una conexión de banda ancha, porque el monedero tiene cientos de GB de datos y el sistema debe sincronizarse con la red Bitcoin.
    • Clientes ligeros (“Lightweight Client”): Almacenan las claves privadas de manera local pero no descargan la cadena de bloques Blockchain, accediendo a ésta a través de un servidor tercero, el cual sí es un nodo con la Blockchain completa y actualizada.
  • Monederos físicos: Los monederos físicos son los más seguros, ya que se reduce en gran medida el riesgo de hackeo asociado a la conexión a Internet, por lo que es poco probable que alguien pueda robar la clave privada. Dentro de los monederos físicos, se pueden distinguir los siguientes tipos:
    • Monederos basados en hardware: Son dispositivos parecidos a un disco duro portátil o un pendrive USB, que almacenan las claves privadas y permiten realizar operaciones.
    • Monederos en papel: Este tipo de monedero ofrece un grado de seguridad muy alto pero es poco práctico.

Acerca del monedero Bitcoin Core

Bitcoin Core logoBitcoin Core (antes denominado Bitcoin-QT) es el monedero oficial de Bitcoin, el primero que vio la luz y que fue creado por el propio Satoshi Nakamoto, el artífice de esta criptodivisa. Bitcoin Core es el único programa cliente que implementa totalmente el protocolo, protegiendo la red, y se considera la referencia en la que se apoyan el resto de clientes existentes. Bitcoin Core constituye un nodo de la red, y contiene la Blockchain completa y actualizada. Es de código abierto y está continuamente actualizado por el equipo de desarrollo de Bitcoin Core, por lo que es uno de los monederos más completos en todos los sentidos, ofreciendo un nivel de seguridad, estabilidad, facilidad de uso y privacidad de máxima calidad. Al contrario de lo que pueda ocurrir con otros monederos, que dependen de que sus creadores sigan desarrollándolos y no los abandonen, Bitcoin Core es el monedero oficial, por lo que siempre tendrá el apoyo de los desarrolladores.

Como punto negativo, tiene el problema de que se trata de un monedero del tipo “cliente completo” (“Full Client”), por lo que se descarga completamente la cadena de bloques Blockchain (que en estos momentos ocupa alrededor de 150 GB), de tal modo que requiere espacio suficiente en el disco duro para instalarlo, así como conexión de banda ancha para sincronizarlo.

Bitcoin Core es probablemente es el monedero más analizado y desarrollado, por lo que es una opción digna de toda confianza. Está disponible en Windows, Linux y MacOS, y también para Ubuntu PPA.

Instalación de Bitcoin Core en Ubuntu

Veamos cómo instalar Bitcoin Core en Ubuntu. En primer lugar, se deben tener más de 150 GB de espacio libre en el disco duro, que es el tamaño de la Blockchain en estos momentos. Por otra parte, Ubuntu aún no dispone del paquete con Bitcoin Core, por lo que la utilidad gráfica del Centro de Software no puede ser utilizada. Una opción sería compilar desde el código fuente, pero implica muchos pasos.

La manera más fácil de instalar Bitcoin Core en Ubuntu es instalar un binario precompilado mediante un PPA (Personal Package Archive). Para ello, accederemos al terminal y comenzaremos agregando el Bitcoin PPA a nuestros repositorios de software:

$ sudo apt-add-repository ppa:bitcoin/bitcoin

Nos pedirá la contraseña que utilizamos para iniciar sesión en Ubuntu. A continuación, actualizaremos la lista de paquetes de software de Ubuntu:

$ sudo apt-get update

Finalmente, instalaremos Bitcoin Core:

$ sudo apt-get install bitcoin-qt

Este último comando puede llevar un tiempo, durante el cual se instalarán Bitcoin Core y todas sus dependencias.

Otra opción para instalar Bitcoin Core en Ubuntu es descargar un binario precompilado desde la web del proyecto Bitcoin Core (https://bitcoin.org):

Bitcoin Core descargar

En la sección “Linux” de la página de descarga, elegiremos el archivo apropiado para la arquitectura nuestra computadora Linux (32 bits o 64 bits) y descargaremos el archivo. Por ejemplo, la versión de 64 bits para Linux será:
bitcoin-0.15.1-x86_64-linux-gnu.tar.gz

Una vez descargado el fichero, ejecutaremos el siguiente comando para extraer su contenido:

$ tar xzf bitcoin-0.15.1-x86_64-linux-gnu.tar.gz

Esto creará el directorio /bitcoin-0.15.1 dentro de nuestro directorio de trabajo actual. Instalaremos los contenidos de su subdirectorio /bin en el directorio /usr/local/bin utilizando el comando install. El comando install es parte del paquete coreutils del GNU y está disponible en casi todas las distribuciones de Linux. El directorio /usr/local/bin es una ubicación estándar para ejecutables autoinstalados (podemos modificar los comandos indicados a continuación para usar una ubicación diferente). Para ello, ejecutaremos el siguiente comando:

$ sudo install -m 0755 -o root -g root -t /usr/local/bin bitcoin-0.15.1/bin/*

Para usar la GUI de Bitcoin Core, necesitaremos tener instaladas varias bibliotecas. Todas ellas deberían estar disponibles en todas las principales distribuciones de Linux, pero es posible que todavía no estén instaladas en nuestra computadora. Para determinar si nos faltan bibliotecas ejecutaremos el siguiente comando para iniciar la GUI de Bitcoin Core:

$ /usr/local/bin/bitcoin-qt

Si ya están instaladas todas las bibliotecas necesarias, se iniciará Bitcoin Core. Si falta alguna biblioteca de las requeridas, se mostrará un mensaje de error similar al siguiente:

/usr/local/bin/bitcoin-qt: error while loading shared libraries: libQtGui.so.4
cannot open shared object file: No such file or directory

En caso de que aparezcan errores, buscaremos en el sistema de paquetes de nuestra distribución el archivo que falte y lo instalaremos. Luego volveremos a ejecutar /usr/local/bin/bitcoin-qt para ver si falta algún otro archivo. Repetiremos este proceso hasta que la GUI de Bitcoin Core se ejecute sin errores.

Ejecutar Bitcoin Core

Una vez que esté instalado, Bitcoin Core se puede iniciar desde el shell con el siguiente comando:

$ bitcoin-qt

Si hemos instalado Bitcoin Core mediante PPA, podemos iniciar Bitcoin Core haciendo click en el icono “Mostrar aplicaciones” y seleccionando el icono de Bitcoin Core en la lista de aplicaciones.

Bitcoin Core icon

Si hemos instalado Bitcoin Core descargando un binario precompilado desde la web, podemos crear un acceso directo en el escritorio que apunte al comando bitcoin-qt, de tal modo que para ejecutarlo simplemente haremos click en el icono del escritorio.

Bitcoin Core acceso directo

Pantalla de bienvenida de Bitcoin Core

Una vez que hayamos iniciado Bitcoin Core, veremos la pantalla de inicio o “splash screen”.

Bitcoin Core splash screen

Si todo va bien, aparecerá la pantalla de bienvenida. Nos preguntará dónde queremos guardar los datos de nuestro monedero. Como se puede ver, requiere 150 GB de espacio al momento de escribir esto para funcionar correctamente, que es el espacio que ocupan todas las transacciones de Bitcoin realizadas desde su lanzamiento en 2009. El espacio requerido aumentará con el tiempo a medida que el número de transacciones aumente cada día. Utilizaremos el directorio predeterminado, o bien puede seleccionarse otra ubicación.

Bitcoin Core bienvenido

Una vez que hagamos click en “Aceptar” comenzará la sincronización de la cadena de bloques Blockchain, un proceso que, dependiendo de la conexión, puede tardar al menos varios días y puede tomar mucho más tiempo con una conexión a Internet lenta o con una computadora lenta. Durante la descarga, Bitcoin Core utilizará una parte importante del ancho de banda de nuestra conexión. Se puede detener Bitcoin Core en cualquier momento cerrándolo, la próxima vez que se inicie se reanudará desde el punto donde se detuvo. Una vez esté sincronizado al 100%, se irán añadiendo los siguientes bloques automáticamente cuando el programa se esté ejecutando.

Bitcoin Core sincronizando

Para ocultar la ventana de progreso de la descarga haremos click en “Ocultar” y veremos la ventana principal de Bitcoin Core. Desde aquí se puede consultar el saldo, enviar o recibir Bitcoins y ver las transacciones.

Bitcoin Core ventana principal

Una vez que haya terminado la sincronización desaparecerá la barra de progreso y el icono de “Sincronizando” se transformará en un tick de verificación que indica que ya se ha sincronizado. A partir de ese momento podremos operar.

Bitcoin Core sincronizado

Encriptar el monedero

Bitcoin Core permite disponer de un monedero en local. Bitcoin Core genera un par de claves (la dirección pública y la clave privada) que se almacenan en el fichero “wallet.dat” en nuestro ordenador para que seamos nosotros mismos los que conservemos los Bitcoins. Eso sí, hay que tener cuidado de que no se rompa nuestro disco duro o nos roben el ordenador porque podríamos perder las claves. Para salvaguardar nuestro dinero de cualquier cosa que pueda pasar, es completamente fundamental cifrarlo y hacer una copia de seguridad.

Utilizando un malware, un ciberatacante podría acceder a nuestro equipo, buscar el fichero “wallet.dat”, copiarlo y disponer nuestras claves sin demasiadas dificultades. Para evitarlo, la primera medida es cifrar ese fichero. Sin embargo, el cifrado no aporta una seguridad completa, ya que es posible que un keylogger malicioso registre las pulsaciones del teclado para capturar la contraseña. Además, el cifrado también tiene inconvenientes. No cifrar el monedero es un problema porque implica que nos lo pueden robar, pero si lo encriptamos y olvidamos la contraseña perderemos todos los Bitcoins. Por ello, debe almacenarse la contraseña cuidadosamente en lugar seguro.

Para encriptar el monedero iremos a “Configuración” > “Cifrar monedero”.

Bitcoin Core encriptar monedero

Ahora estableceremos una contraseña y presionaremos “Aceptar” (se recomienda poner una contraseña muy larga y segura, con números, letras y símbolos aleatorios).

Bitcoin Core password

Recibiremos la siguiente advertencia: “Si encripta su monedero y pierde su contraseña PERDERÁ TODOS SUS BITCOINS!”. Una vez que la contraseña esté en un lugar seguro, presionaremos “Sí”.

Bitcoin Core encriptar monedero advertencia

Para encriptar el monedero, Bitcoin Core debe reiniciarse. Previamente recibiremos una advertencia relativa a que las copias de seguridad anteriores al encriptado ya no son válidas y deben reemplazarse. Una vez leída esta advertencia, presionaremos “Aceptar”.

Bitcoin Core monedero encriptado

Recibir Bitcoins

Para recibir Bitcoins, haremos click en el botón de “Recibir”. Siempre que queramos solicitar un pago o necesitemos una dirección para que alguien nos envíe dinero, es a esta pestaña donde tendremos que ir.

Bitcoin Core recibir

Haciendo click en el botón “Solicitar pago”, el monedero creará directamente una dirección y el código QR asociado. El campo “Dirección” es la identificación que debemos enviar a la persona que quiere enviarnos Bitcoins. En el campo “Etiqueta” se recomienda poner el nombre de quien nos va a enviar el dinero, así sabremos en todo momento de dónde nos llegan los pagos.

Bitcoin Core solicitar pago

Una ventaja de este monedero es que permite crear direcciones públicas de forma fácil y sencilla, y todas se gestionan desde el mismo software, lo que resulta muy útil para realizar pagos o, en el caso de que se disponga un negocio, para aceptar pagos con Bitcoins.

Enviar Bitcoins

También podemos enviar Bitcoins a otras personas. Para ello, haremos click en el botón “Enviar”. Desde esta pestaña podremos enviar dinero a otros usuarios o realizar pagos en cualquier sitio. Ingresaremos la dirección que nos hayan facilitado en el campo “Pagar a”, la Cantidad y le asignaremos una Etiqueta. Se recomienda etiquetar siempre con el nombre del receptor, para tener controlado a quién hemos enviado dinero. La comisión asignada la dejaremos como viene por defecto (va destinada a quienes contribuyen a la validación de las transacciones). Luego haremos click en el botón “Enviar”.

Bitcoin Core enviar

Ver transacciones

Para ver todas nuestras transacciones, iremos a la pestaña “Transacciones”, donde veremos todo el historial de transacciones realizadas, tanto de envíos como de recepciones de Bitcoins. Si las hemos etiquetado todas, podremos reconocer fácilmente cada una de ellas.

Bitcoin Core transacciones

Iniciar Bitcoin Core en el arranque del sistema

Podemos iniciar Bitcoin Core cuando arranque la computadora. Para ello, iremos a “Configuración” > “Opciones”, marcaremos la casilla “Iniciar Bitcoin Core al iniciar el sistema” y haremos click en “Aceptar”.

Bitcoin Core iniciar en el arranque

La próxima vez que iniciemos sesión, Bitcoin Core se iniciará automáticamente y tendremos un icono en la bandeja del sistema.

Bitcoin Core bandeja del sistema

Copia de seguridad del monedero

Una vez que el software Bitcoin Core está instalado en nuestra computadora, el monedero donde se almacenan nuestros Bitcoins se guarda en el archivo “wallet.dat”, por lo que es muy importante hacer una copia de seguridad de este archivo. Si perdemos este archivo, nuestros Bitcoins desaparecerán.

Es de vital importancia que hagamos una copia de seguridad del monedero para evitar la pérdida de los Bitcoins almacenados en él. La copia de seguridad del monedero conviene hacerla en un dispositivo al que solo nosotros tengamos acceso, como por ejemplo en un disco duro externo, en un pendrive USB, un CD o en un almacenamiento en la nube (siempre y cuando el archivo esté encriptado, ya que cualquiera que tenga acceso al archivo no encriptado podrá robar nuestros Bitcoins). Para ello, haremos click en “Archivo” > “Guardar copia del monedero”. De esta manera, se copiará el archivo “wallet.dat” (el archivo que guarda todas las direcciones y por lo tanto nuestro dinero) en la ubicación elegida.

Se recomienda guardar este archivo en al menos en dos sitios para evitar disgustos y conservar las copias en un lugar seguro, ya que en caso de cualquier incidencia con el ordenador, gracias a la copia de seguridad y a la contraseña podremos recuperar el monedero en cualquier momento y lugar. De lo contrario, si el ordenador se bloquea y no tenemos una copia de seguridad del archivo “wallet.dat” perderemos todos nuestros Bitcoins. No se irán a otra persona, desaparecerán para siempre. Es como quemar dinero en efectivo.

Bitcoin Core backup

Seleccionaremos la ubicación donde deseamos hacer la copia de seguridad de los datos de Bitcoin Core, le asignaremos un buen Nombre y haremos click en “Guardar”. Se generará el fichero “Nombre.dat” en dicha ubicación.

Otra forma de hacer una copia de seguridad es buscar el archivo “wallet.dat” directamente en el directorio donde se ha instalado el monedero, y copiarlo en un lugar seguro. Este archivo lo encontraremos en las siguientes rutas (si hemos hecho una instalación por defecto):

  • Windows: C:\Users\Nombredeusuario\Appdata\Roaming\Bitcoin
  • Linux: ∼/.bitcoin/
  • Mac: ∼/Library/Application Support/Bitcoin/

Cómo restaurar la copia de seguridad

Una vez que tengamos una copia de seguridad de nuestro monedero, si se quiere restaurar solo hay que copiar el backup del archivo “wallet.dat” sobre el archivo existente en el directorio de datos de Bitcoin Core y se actualizará con nuestros datos.

Cómo importar una cartera de Bitcoins existente

Si instalamos Bitcoin Core en una computadora nueva y no necesitamos un nuevo monedero, sino que deseamos utilizar nuestro monedero y cadena de bloques existentes, todo lo que necesitamos hacer es cambiar el directorio de datos de Bitcoin.

Primero, localizaremos el directorio anterior de datos de Bitcoin y lo copiaremos a nuestra nueva computadora, por ejemplo con el nombre ∼/.bitcoin.old

A continuación, instalaremos Bitcoin Core en la nueva computadora y lo ejecutaremos para que cree las carpetas de datos. Una vez que comience a sincronizar, cerraremos Bitcoin Core y cambiaremos el nombre del directorio predeterminado ∼/.bitcoin:

$ mv ∼/.bitcoin ∼/.bitcoin.backup

Iniciaremos Bitcoin Core nuevamente. Debido a que hemos cambiado el nombre del directorio de datos predeterminado, el software Bitcoin Core asume que esta es la primera sesión y nos permite elegir el directorio de datos. Seleccionaremos la segunda opción y elegiremos el directorio de datos anterior.

Bitcoin Core cambiar directorio

Una vez que presionemos el botón “Aceptar”, Bitcoin Core verificará los bloques que están almacenados en nuestro directorio de datos anterior.

Bitcoin Core verificando bloques

En unos momentos, los bloques deberían cargarse y veremos nuestros Bitcoins en la nueva computadora.

Mejores prácticas de seguridad

Conviene seguir estas reglas para evitar posibles pérdidas de fondos:

  • Asegúrate de estar familiarizado con tu monedero antes de cargarlo con Bitcoins. Antes de usar Bitcoin para cualquier transacción seria, es nuestra responsabilidad elegir el monedero cuidadosamente y adoptar buenas prácticas para proteger nuestro dinero.
  • Siempre debemos encriptar nuestro monedero con una contraseña segura para que sea más difícil para un atacante robar nuestros Bitcoins. Cualquiera que tenga acceso al archivo no encriptado podrá robarnos los Bitcoins. Guardar la contraseña en lugar seguro.
  • Debemos hacer copias de seguridad regularmente del archivo “wallet.dat” en múltiples ubicaciones, tales como CD, disco duro externo, pendrive USB, nube encriptada, etc. y guardarlas en un lugar seguro.

¡ATENCIÓN! Si perdemos la copia de seguridad u olvidamos la contraseña, o no podemos acceder a nuestro monedero por alguna razón, ¡nuestros Bitcoins desaparecerán!

Artículos en la categoría "Encriptación y Criptografía"

  1. Checksum MD5
  2. Conexión remota segura SSH
  3. Software de encriptación GPG
  4. APT seguro (Secure APT)
  5. HTTPS (HTTP seguro): SSL
  6. Monedero Bitcoin Core en Ubuntu