Posted on Leave a comment

10 formas de perder tu bitcoin

Traducción al español del artículo “10 ways to lose your bitcoin” de Bitcoin Q+A  

Con la reciente ola de ataques de phishing que ha sufrido la empresa Ledger y que por desgracia han demostrado ser efectivos me he lanzado a escribir un breve artículo para compartir con los recién llegados de Bitcoin para advertirles de las formas más comunes en las que pueden perder el control de sus preciados sats. Por favor, no dejes que estos incidentes te desanimen a la hora de entrar en Bitcoin, el mundo poco a poco está despertando al mejor dinero que hemos tenido. Desafortunadamente esa misma propiedad hace que Bitcoin sea muy atractivo tanto para la gente normal como para los estafadores.

Todos los riesgos que se describen a continuación se pueden mitigar al 100% si se informa, hace preguntas y se mueve con cuidado. Dicho esto, si no estás seguro de algo no dudes en comunicarte y preguntarme cualquier duda.

Antes de comenzar cubramos parte de la terminología básica utilizada en este artículo…

Semilla: Por lo general son 12 o 24 palabras y son una copia de seguridad legible por humanos de toda su billetera Bitcoin. Estas palabras se pueden importar a casi cualquier software de billetera para recuperar todas las direcciones, claves privadas y públicas que la billetera puede generar. Tus palabras clave (semilla) son tu bitcoin cualquiera que tenga acceso a ellas tiene acceso a todos tus bitcoins. Protégelos y haga una copia de seguridad que sea resistente al fuego, al agua y a la corrosión, etc.

Frase de contraseña: Una palabra o varias palabras adicionales a la semilla que se especifica al crear la billetera, con ella se consigue un nivel adicional de seguridad contra ataques. Si usa una billetera protegida con una contraseña para poder recuperar su billetera debe tener las palabras de su semilla y su frase de contraseña. Almacene sus palabras y su frase de contraseña por separado.

Clave privada: Necesaria para poder gastar los bitcoins. Un usuario debe demostrar la propiedad de sus bitcoins mediante el uso de una clave privada. Es una larga cadena de letras y números que no son muy amigables para el ojo humano. Gracias al moderno software de billetera con interfaces de usuario simplificadas, un usuario típico casi nunca interactuará directamente con ellos.

Copias de seguridad

Como se mencionó anteriormente, las palabras de su semilla (y frase de contraseña si se especifica) son su copia de seguridad de sus bitcoin. Si se lo roban, lo pierde o lo destruyen ya no va a poder acceder a su billetera activa (por ejemplo, si pierde su teléfono o dispositivo de hardware) está jodido. Cualquiera que tenga acceso a las palabras de tu semilla tiene acceso a tu billetera, así que tenlo en cuenta al seleccionar una ubicación de almacenamiento.

Del mismo modo, hay personas que han perdido sus propios sats al complicar demasiado su esquema de copia de seguridad, utilizando algún método de memoria ‘ultra seguro’, que acaban olvidando o hacen imposible que su familia pueda recuperarlos en caso de su muerte.

Copia de seguridad de la semilla de blockplate

Solución 1: Almacene las palabras de su semilla con un método que pueda soportar muchos abusos.

Solución 2: No complique demasiado su copia de seguridad, es posible que su familia necesite recuperar su billetera cuando no esté cerca. Considere utilizar un servicio como Mensaje final para la planificación de la herencia.

Solución 3: Si utiliza una frase de contraseña almacene una copia de seguridad en una ubicación distinta a su semilla.

Exchanges comprometidos

Los ataques con éxito a los sitios de intercambios son casi tan antiguos como el propio Bitcoin. Ha habido y sigue habiendo múltiples hacks cada año en los que miles de personas pierden su dinero con poca o ninguna esperanza de recuperarlo. Puede ser fácil comprar sats en un intercambio y dejarlo allí pero todos los días que su bitcoin se almacena con un tercero corre un riesgo. Estos ataques ocurren repentinamente y sin previo aviso y, a veces, ocurren dentro de la organización.

“Si no tienes tus claves, no tienes tus bitcoins”.

Solución 1: Retire su bitcoin inmediatamente después de la compra a una billetera donde controle las claves privadas.

Solución 2: Use intercambios sin custodia como Bisq o Hodl Hodl donde siempre tiene el control de sus claves privadas.

Ataques de phishing

Un ataque de phishing esencialmente engaña a una persona para que ceda voluntariamente el acceso a su bitcoin con falsos pretextos, generalmente engañando al usuario para que entregue sus palabras iniciales. Los dos métodos más comunes de estos ataques son: 

  • Enviar un mensaje de texto o correo electrónico a alguien que pretende ser de un fabricante de carteras de hardware, indicando que hay un problema con su cuenta e indicándole que vaya a un sitio web rápidamente para tomar medidas. Por supuesto, el sitio web es malicioso y parece idéntico al que un usuario esperaría ver, a menudo con un nombre de dominio muy similar para no levantar sospechas. Una vez en el sitio malicioso, se le pedirá al usuario que ingrese sus palabras iniciales para ‘asegurar’ su bitcoin, momento en el que se agotará toda su billetera.
  • Enviar mensajes a alguien en una aplicación de chat como Telegram. Por lo general, estos estafadores esperan a que las personas hagan una pregunta en un grupo de chat público y luego envían un mensaje privado a la persona que finge ser de ‘atención al cliente’. En ese momento, construyen una relación con el pretexto de ayudarlos a rectificar el problema, cuando en realidad están trabajando para que el usuario renuncie a sus palabras iniciales.

Texto de phishing de coindesk.com

Solución 1: NUNCA ingrese sus palabras iniciales en un sitio web, bajo ninguna circunstancia.

Solución 2: Los usuarios de billeteras de hardware solo deben ingresar sus palabras iniciales directamente en el dispositivo

Solución 3: Sospeche inmediatamente de cualquier persona que le envíe mensajes privados en una sala de chat relacionada con Bitcoin.

Solución 4: Cuándo compre hardware relacionado con Bitcoin, use correos electrónicos desechables para registrarse y, si es posible, intente que los artículos se entreguen en otro lugar que no sea su domicilio.

Configuraciones complejas

Al ingresar a Bitcoin puede ser fácil querer probar todas las últimas carteras súper seguras, configuraciones y nodos multi-sig, etc. Pero una mayor seguridad conlleva una mayor complejidad. Para la mayoría de las personas que comienzan una billetera móvil como Samourai o Blue que se haya respaldado adecuadamente es más que suficientemente segura. Primero, siéntete cómodo con los conceptos básicos de una billetera móvil, luego busca pasar a una billetera de hardware como Coldcard a medida que aumentan tus tenencias de bitcoins. Ni siquiera considere una configuración multi-sig hasta que esté 100% seguro del proceso. Lea este hilo de Twitter para tener una idea de lo que quiero decir.

Logotipo de Bitcoin de KISS

Solución 1: Al empezar, “hazlo simple, estúpido”.

Solución 2: Practica limpiar y restaurar tu billetera varias veces usando tus palabras clave antes de enviar grandes cantidades de sats.

Trading

Para el 95% de la población, el comercio de criptomonedas es simplemente un juego de azar. Estos intercambios están configurados para tomar sus bitcoins. Lo entiendo, existe la tentación de aumentar su pila de bitcoins mediante el comercio de monedas alternativas (altamente volátiles), pero créame, se arruinará. Puede haber un grupo muy pequeño de la población con las habilidades necesarias para comerciar en el mercado y obtener ganancias, ¡pero ese tipo al que sigues en YouTube no es uno de ellos!

Gráfico de vista comercial

Solución 1: No opere. ¡Fácil!

Obsequios ‘gratuitos’

En el año 2020 ocurrió uno de los mayores hacks que Twitter haya visto. Un individuo obtuvo acceso a algunas de las cuentas más grandes de la plataforma y, una vez dentro, el atacante publicó tweets de estas cuentas ofreciendo devolver el doble de bitcoins a cualquiera que haya depositado en la dirección mostrada. Por supuesto, una vez que el bitcoin se depositó en la dirección de los piratas, no se le rembolsó BTC alguno. Según los informes, el escaneo obtuvo alrededor de $ 110000 en BTC.

Solución 1: Si suena demasiado bueno para ser verdad, ¡es casi seguro que lo es! Cualquiera que prometa enviarte más bitcoins después de que les envíes es un estafador.

Software malicioso

El software malicioso es una de las formas más complejas de librarlo de su bitcoin. Estos tipos de ataques generalmente dependen de que un usuario descargue un software que se ve y actúa como el verdadero, de una fuente que también parece genuina. La diferencia es que el software malicioso tiene funciones integradas diseñadas para robar su bitcoin. Esto puede suceder de varias formas, pero las dos más comunes son: –

  • Cuando un usuario envía una transacción, el malware cambiará la dirección de recepción especificada por el usuario por una controlada por el estafador.
  • El software genera un conjunto de palabras semilla que ya está controlado por el estafador. Cuando el usuario desprevenido deposita bitcoins, el estafador puede gastarlo en la otra dirección que controle.

Página de descarga de Electrum falsa (observe la URL)

Solución 1: Descargue su software de Bitcoin de una fuente confiable. Preste mucha atención a la URL a la que accede, los estafadores se están volviendo inteligentes con trucos como usar ‘ ë’ en lugar de ‘e’. Si no está seguro, pregunte en la comunidad.

Solución 2: Todo el software de código abierto debe estar firmado por uno de los miembros del equipo de desarrolladores. Si tiene el conocimiento para hacerlo, verifique que esta firma coincida con la proporcionada por la fuente de descarga oficial. Esto demuestra que el software que está descargando fue producido por quien esperaba.

Intercambio de Sim

Un intercambio de SIM ocurre cuando un atacante obtiene el control de la cuenta de teléfono móvil de alguien. Para tener éxito el atacante se hace pasar por la víctima en persona en una tienda o, más comúnmente, por teléfono con el proveedor de servicios móviles y declara que la tarjeta SIM de la víctima ha sido comprometida y necesita ser desviada a otro número (que ellos controlan). Una vez que el atacante tiene el control del número de teléfono de la víctima, procede a usar la autenticación por SMS para obtener acceso a las cuentas de correo electrónico y cualquier cuenta de bitcoin en línea y buscar fondos para robar.

Explicador de intercambio de sim – technadu.com

Solución 1: No guarde bitcoins en una cuenta en línea como un intercambio.

Solución 2: No utilice la autenticación de 2 factores por SMS. Siga con una aplicación o un enfoque basado en claves .

Solución 3: Llame a su proveedor de servicios de telefonía móvil y coloque un candado de seguridad en su cuenta, asegurándose de que debe ir a la tienda y presentar una identificación para realizar cualquier cambio en la cuenta.

Solución 4: Este ataque depende de que el pirata informático conozca cierta información sobre usted. Mantenga la información personal que publica en línea al mínimo absoluto.

Enviar a la cadena incorrecta

Este tipo de percance se ha vuelto cada vez más difícil de hacer con la introducción de nuevos tipos de direcciones, pero aún es posible enviar bitcoin (BTC) a una dirección de bitcoin cash (BCH). Si lo hiciera, las monedas se perderían o, como mínimo, sería muy difícil de recuperar para el usuario medio.

Explorador de bloques que detalla las direcciones coincidentes

Solución 1: Verifique siempre que está enviando a una dirección de Bitcoin, generada por alguien que tenga una billetera de Bitcoin ‘adecuada’.

Usar carteras no convencionales

Una situación mucho menos común con el auge de los tipos de billetera moderna, pero que vale la pena mencionar. Un usuario puede perder bitcoin mediante el barrido de sólo una parte del saldo total de un p cartera aper a una nueva cartera y posteriormente destruir el pensamiento de papel cartera que el saldo restante de la cartera de papel ahora se mantiene como el cambio en la nueva cartera. Esto se explica en detalle aquí.

Ejemplo de billetera de papel

Solución 1: Si va a usar billeteras de papel, úsalas sólo una vez y gaste todo el saldo.

Conclusiones

– No hay reembolsos en Bitcoin.

– Sospecha de todos.

– Las palabras de tu semilla son tu bitcoin, guárdalas con tu vida.

Nunca ingrese sus palabras iniciales en un sitio web.

– Eduque a cualquier persona que tenga acceso a sus copias de seguridad para que no caiga en estas trampas.

Posted on 1 Comment

Exporting Bitcoin UTXO to Postgres database

utxo Bitcoin

UTXO (Unspent Transaction Output) are transactions in which the outputs have not been spent, that is, sent to another address. A Bitcoin transaction is made up of one or more incoming addresses with BTC/satoshis and one or more outgoing addresses where the funds end. If these BTC have not been sent in another subsequent transaction to another address, it is called UTXO. The sum of all the UTXO exit funds add up to the total of coins there are. In Bitcoin there is a database called chainstate that contains only those transactions and that is used to avoid having to perform certain searches on the entire Blockchain. 

To save these UTXOs,software is used, it LevelDB is a key-value storage of very fast reading and writing developed by Google that provides an ordered assignment of keys and values.

Greg Walker has implemented theutility bitcoin-utxo-dump to export the UTXO and for this he relied onbitcoin tools Sergi Delgado Segura’s, we used the in3rsha tool to create a script that dumps all the UTXO is a base of PostgreSQL data. Thanks to this, we can make any query about UTXO with the facilities provided by a relational database.

I take this opportunity to launch some queries on the utxo table generated to find out how many addresses there are with more than 0.00001, 0.1, 1 and 1000 BTC. If we were interested in having this data daily, for example, to know the evolution of the number of whales (> = 1000BTC), we would only have to create a job in linux to execute the script every day.

https://github.com/BGeometrics/bitcoin-utils/blob/master/scripts/utxo2ddbb.sh

#!/bin/bash

# Script to dump bitcoin utxo database to postgres database
 
# Install go and postgreSQL
#### apt install golang postgresql
# Stop bitcoin full node because two applications cannot access LevelDB at the same time
# Access user postgres
#### sudo su - postgres

DIR_CHAINSTATE=/mnt/hgfs/Proyect/bitcoin-utxo-dump/chainstate
DIR_DUMP=/mnt/hgfs/Proyect/bitcoin-utxo-dump/
PGPASSWORD=postgres
 
# Download and compile program bitcoin-utxo-dump of ins3rsha
go get github.com/in3rsha/bitcoin-utxo-dump

# Execure dump Bitcoin utxo to file
./go/bin/bitcoin-utxo-dump -db $DIR_CHAINSTATE

# Import dump in table in database
psql -d postgres -U postgres -c "DROP INDEX IF EXISTS index_address_amount;"
psql -d postgres -U postgres -c "DROP TABLE IF EXISTS utxo;"
psql -d postgres -U postgres -c "CREATE TABLE IF NOT EXISTS utxo (id INT NOT NULL, tx_id VARCHAR(100) NOT NULL, vout INT NOT NULL, amount BIGINT NOT NULL, type VARCHAR(50) NOT NULL, address VARCHAR(100));"
psql -d postgres -U postgres -c "copy utxo(id, tx_id, vout, amount, type, address) FROM '$DIR_DUMP/utxodump.csv'  DELIMITER ',' CSV HEADER;"
psql -d postgres -U postgres -c "CREATE INDEX IF NOT EXISTS index_address_amount ON utxo (address, amount);"
psql -d postgres -U postgres -c "CREATE TABLE IF NOT EXISTS address (THE_DATE DATE NOT NULL DEFAULT CURRENT_DATE, BTC000001 INT, BTC1 INT, BTC1000 INT);"

# Selects
# Address >= 0.00001 BTC
BTC000001=$(psql -d postgres -U postgres -t -c "select count(*) from (select address, sum(amount) / 100000000 as BTC from utxo group by address having sum(amount) / 100000000 >= 0.00001) B000001")

# Address >= 1 BTC
BTC1=$(psql -d postgres -U postgres -t -c "select count(*) from (select address, sum(amount) / 100000000 as BTC from utxo group by address having sum(amount) / 100000000 >= 1) B1")

# Whales Bitcoin, address >= 1000 BTC
BTC1000=$(psql -d postgres -U postgres -t -c "select count(*) from (select address, sum(amount) / 100000000 as BTC from utxo group by address having sum(amount) / 100000000 >= 1000) B1000")
psql -d postgres -U postgres -c "INSERT INTO address(BTC000001, BTC1, BTC1000) VALUES ($BTC000001, $BTC1, $BTC1000)"

psql -d postgres -U postgres -c "select * from address"
Posted on Leave a comment

Exportación de los UTXO de Bitcoin a una base de datos

utxo Bitcoin

Los UTXO (Unspent Transaction Output) son las transacciones en las cuales las salidas no han sido gastadas es decir enviadas a otra dirección. Una transacción en Bitcoin está compuesta por una o varias direcciones de entrada con BTC/satoshis y una o varias direcciones de salida donde acaban los fondos, si estos BTC no han sido enviados en otra transacción posterior a otra dirección se la denomina UTXO. La suma de todos los fondos que hay en las direcciones de salida de las UTXO suman el total de monedas que hay. En Bitcoin existe una base de datos denominada chainstate que contiene únicamente esas transacciones y que se utiliza para evitar tener que realizar ciertas búsquedas sobre toda la Blockchain. 

Para guardar estos UTXO se utiliza el software LevelDB que es un almacenamiento clave-valor de muy rápida lectura y escritura desarrollada por Google que proporciona una asignación ordenada de claves y valores.

Greg Walker ha implementado la utilidad bitcoin-utxo-dump para exportar las UTXO a un fichero de texto, para ello se basó en las bitcoin tools de Sergi Delgado Segura, aquí vamos a utilizar la herramienta de in3rsha para crear un script que haga el dump de todos los UTXO a una base de datos PostgreSQL. Gracias a ello podemos realizar cualquier consulta sobre los UTXO con las facilidades que nos provee una base de datos relacional.

Una vez exportadas transacciones aprovecharemos para lanzar unas consultas sobre la tabla utxo generada para saber cuántas direcciones hay con más de 0,00001, 0,1, 1 y 1000 BTC. Si nos interesase tener estos datos diariamente, por ejemplo para conocer la evolución del número de ballenas (>= 1000BTC), sólo tendríamos que crear un job en linux para ejecutar el script diariamente.

https://github.com/BGeometrics/bitcoin-utils/blob/master/scripts/utxo2ddbb.sh

#!/bin/bash

# Script to dump bitcoin utxo database to postgres database
 
# Install go and postgreSQL
#### apt install golang postgresql
# Stop bitcoin full node because two applications cannot access LevelDB at the same time
# Access user postgres
#### sudo su - postgres

DIR_CHAINSTATE=/mnt/hgfs/Proyect/bitcoin-utxo-dump/chainstate
DIR_DUMP=/mnt/hgfs/Proyect/bitcoin-utxo-dump/
PGPASSWORD=postgres
 
# Download and compile program bitcoin-utxo-dump of ins3rsha
go get github.com/in3rsha/bitcoin-utxo-dump

# Execure dump Bitcoin utxo to file
./go/bin/bitcoin-utxo-dump -db $DIR_CHAINSTATE

# Import dump in table in database
psql -d postgres -U postgres -c "DROP INDEX IF EXISTS index_address_amount;"
psql -d postgres -U postgres -c "DROP TABLE IF EXISTS utxo;"
psql -d postgres -U postgres -c "CREATE TABLE IF NOT EXISTS utxo (id INT NOT NULL, tx_id VARCHAR(100) NOT NULL, vout INT NOT NULL, amount BIGINT NOT NULL, type VARCHAR(50) NOT NULL, address VARCHAR(100));"
psql -d postgres -U postgres -c "copy utxo(id, tx_id, vout, amount, type, address) FROM '$DIR_DUMP/utxodump.csv'  DELIMITER ',' CSV HEADER;"
psql -d postgres -U postgres -c "CREATE INDEX IF NOT EXISTS index_address_amount ON utxo (address, amount);"
psql -d postgres -U postgres -c "CREATE TABLE IF NOT EXISTS address (THE_DATE DATE NOT NULL DEFAULT CURRENT_DATE, BTC000001 INT, BTC1 INT, BTC1000 INT);"

# Selects
# Address >= 0.00001 BTC
BTC000001=$(psql -d postgres -U postgres -t -c "select count(*) from (select address, sum(amount) / 100000000 as BTC from utxo group by address having sum(amount) / 100000000 >= 0.00001) B000001")

# Address >= 1 BTC
BTC1=$(psql -d postgres -U postgres -t -c "select count(*) from (select address, sum(amount) / 100000000 as BTC from utxo group by address having sum(amount) / 100000000 >= 1) B1")

# Whales Bitcoin, address >= 1000 BTC
BTC1000=$(psql -d postgres -U postgres -t -c "select count(*) from (select address, sum(amount) / 100000000 as BTC from utxo group by address having sum(amount) / 100000000 >= 1000) B1000")
psql -d postgres -U postgres -c "INSERT INTO address(BTC000001, BTC1, BTC1000) VALUES ($BTC000001, $BTC1, $BTC1000)"

psql -d postgres -U postgres -c "select * from address"

La versión en Inglés Exporting bitcoin utxos to a database.

Posted on Leave a comment

De la semilla a los BTC

Muchos hodlers de BTC para acumular bitcoins no utilizan un hardware wallet, les basta y les sobra con una semilla, una clave (passphrase) y las direcciones públicas a las que envían los bitcoins. Siempre es interesante guardar también el derivation path que indica las claves que se están utilizando y facilita la importación, y la clave pública maestra por si se quiere saber de forma sencilla los fondos totales.

Esta opción es perfecta, lo único que en diversos momentos puede quedar la duda de si las direcciones donde estás enviando los BTC corresponden con la semilla que tienes, para disipar esa incertidumbre y hacerlo de forma segura lo mejor es realizar una importación de la semilla y comprobar algunas de las direcciones públicas y la clave pública maestra.

Cómo hacerlo:

  • Descargarse el sistema operativo Tails que es un Linux portable orientado a la privacidad.
  • Grabarlo en un dispositivo USB, tal y como se indica en su página web.
  • Arrancar un ordenador con el dispositivo USB con Tails conectado. Si no arrancase Tails puede ser posible que sea necesario entrar en la BIOS y haya que cambiar el orden de inicio del sistema para que cargue el S.O. que está en el USB antes que el que está en el disco duro.
  • Una vez iniciado Tails hay que crear un almacenamiento persistente cifrado donde estará el cliente de Bitcoin, Electrum, que está en la opción Útiles. 

En este almacenamiento creado se permite guardar todo tipo de ficheros.

  • Una vez creado nos solicitará reiniciar el sistema y cuando aparezca la pantalla de bienvenida de Tails hay que elegir la opción de Almacenamiento Persistente Cifrado e introducir la clave que hemos puesto antes. No configurar la wifi ya que no se va a necesitar ni se quiere tener conexión a Internet.
  • Arrancar la aplicación de Electrum que está en el menú Aplicaciones -> Internet.

En Electrum crear una cartera estándar y elegir la opción de ya tengo una semilla.

En la caja de texto introducir las palabras de la semilla, luego la clave (passphrase) y el deirvation path.

  • Una vez introducido todo se inicia la wallet de Electrum y en la opción direcciones (Address) se muestran las primeras direcciones públicas que son las que tienen que coincidir con las que estamos utilizando para enviarnos los BTC. También se puede obtener la master public key (XPUB o YPUB o ZPUB). Esta master key se puede importar en un wallet como Electrum, BlueWallet… y así saber la cantidad total de BTC que tenemos, eso sí el compartir la XPUB con terceros no compromete nuestros fondos ya que es pública pero pueden saber los fondos de que disponemos, si no queremos dar esta información lo mejor sería importar esta clave en un Electrum conectado a un full node de Bitcoin nuestro, pero eso es otra historia.
Posted on Leave a comment

BCubium out stock

BCubium out stock

We have not sent for a long time BCubium Because the motherboard on which it is mounted, the NanoPi NEO Plus2 Friendly Elect has stopped manufacturing it which has caused us to run out of supply.

There are several websites that sell the ones they have in warehouses at high prices but that does not guarantee supply in the medium term.

It is true that there are many other boards in the market but our bet was to have a minimalist Bitcoin full node, that is, of very small dimensions (FAQs) to have a node with larger measures, there are already very interesting solutions on the market.

The BCubium web project has been released on Github from the beginning in the BGeometrics BCubium-web repository. The rest of the project, which are installation, configuration and management scripts, will be released later.

BCubium is a complete Bitcoin node in a wenge wood cube of only 62 mm on a side to achieve these minimum dimensions. It is used:

  • Motherboard NanoPi NEO Plus2
  • CPU: Allwinner H5 , Quad-core 64-bit high-performance
  • DDR3 RAM: 1GB
  • WiFi: 802.11b / g / n
  • 500GB microSD Samsung or Lexar

On that hardware runs: 

  • Bitcoin Core 0.20
  • Lightning Network Daemon 0.10.0-beta
  • Tor 0.2.9.14
  • BTC RPC Explorer 1.1.8
  • Ride The Lightning 0.7-beta
  • WireGuard
  • BCubium 0.0 .1 It

It may seem that it is just about resources but it is enough for what a full node is required to do: update the Blockchain, request information through BTC-RPC Explorer or directly with RCP commands and basic operations with LND and Ride The Lightning. It falls short to synchronize the history of the Blockchain, that’s why it was sent preloaded and when starting the LND process it demands a lot of RAM so we adjust the parameters of Bitcoin Core reducing it. The use of Docker containers was not chosen due to the excess consumption of both CPU and RAM (Why don’t we use Docker in BCubium full node).

So with this notification we end our journey with BCubium, our minimalist full node. 

Posted on Leave a comment

Sin stocks de BCubium

BCubium out stock

Desde hace tiempo ya no enviamos BCubium porque la placa base sobre la que está montado, la NanoPi NEO Plus2 de Friendly Elect ha dejado fabricarlo lo que ha provocado que nos hayamos quedado sin suministro.

Hay varias websites que venden las que tienen en los almacenes a precios elevados pero eso no garantiza el suministro a medio plazo.

Es cierto que existen en el mercado otras muchas placas pero nuestra apuesta era tener un Bitcoin full node minimalista es decir de dimensiones muy reducidas (FAQs) para tener un nodo con medidas más grandes ya existen en el mercado soluciones muy interesantes.

El proyecto web de BCubium ha estado liberado en Github desde el principio en el repositorio BCubium-web de BGeometrics. El resto del proyecto que son scripts de instalación, configuración y gestión lo liberaremos más adelante.

BCubium es un nodo completo de Bitcoin en un cubo de madera de wengué de sólo 62 mm de lado para conseguir tener esas dimensiones mínimas se utiliza:

  • Motherboard NanoPi NEO Plus2
  • CPU: Allwinner H5,Quad-core 64-bit high-performance
  • DDR3 RAM: 1GB
  • WiFi: 802.11b/g/n
  • 500GB microSD Samsung or Lexar

En ese hardware se ejecuta: 

  • Bitcoin Core 0.20
  • Lightning Network Daemon 0.10.0-beta
  • Tor 0.2.9.14
  • BTC RPC Explorer 1.1.8
  • Ride The Lightning 0.7-beta
  • WireGuard
  • BCubium 0.0.1

Puede parecer que va justo de recursos pero es suficiente para lo que se le pide a un full node: actualizar la Blockchain, solicitud de información a través de BTC-RPC Explorer o directamente con comandos RCP y operativa básica con LND y Ride The Lightning. Se queda corto para sincronizar el histórico de la Blockchain, por eso se enviaba precargado y a la hora de arrancar el proceso de LND demanda mucha RAM por lo que ajustamos los parámetros de Bitcoin Core reduciéndola. No se optó por la utilización de contenedores Docker por el exceso de consumo tanto de CPU como de RAM (Why don’t we use Docker in BCubium full node).

Así que con esta notificación finalizamos nuestra andadura con BCubium nuestro full node minimalista.

Posted on Leave a comment

Recomendaciones a la hora de comprar hardware wallet

Hardware Wallet Security

El 25 de junio de este año uno o unos ciberdelincuentes accedían a la base de datos de más de un millón de clientes de Ledger, empresa que vende dispositivos hardware wallet para almacenar bitcoins y otras criptomonedas.

El 28 de octubre muchos de los usuarios del hardware wallet recibieron correos electrónicos y SMS fraudulentos donde se hacían pasar por la empresa y les invitaban a instalarse una versión del software para hacerse con las claves privadas de los usuarios y robarles las criptomonedas.

Este hecho vuelve a poner de manifiesto que cuando se trata de almacenar bitcoins todas las precauciones son pocas. Todos los datos personales que dejamos en Internet son susceptibles de acabar en manos de cibercriminales o en la Darknet a disposición del mejor postor, si a esto le añadimos el hecho de que estos datos son los compradores de un dispositivo para almacenar BTCs el riesgo es muy alto.

Estas son unas recomendaciones a la hora de comprar un hardware wallet, sea el que sea:

  • No utilizar el email personal, puedes utilizar uno secundario o incluso puedes usar una cuenta temporal.
  • Siempre que tengas la posibilidad lo mejor es no dejar la dirección personal de tu casa una buena opción es dar la dirección de tu empresa, eso sí al abrirlo asegurate que el embalaje y la bolsa de seguridad del hardware wallet no ha sido abierta.
  • No pongas tu teléfono personal.

Cierto que estas medidas dificultan una posible comunicación futura con la empresa pero teniendo en cuenta que estás comprando un dispositivo para alojar bitcoins es mejor eso que todos tus datos acaben en la Darknet a disposición de cualquiera.

Posted on Leave a comment

Hodl Trading Bitcoin (español)

Hodl Bitcoin

Aunque podría ser, HODL no es el acrónimo de “Hold On for Dear Life”, el término tiene su origen en el 18 de diciembre del año 2013 en el foro de Bitcoin Talk cuando el usuario GameKyuubi escribe una entrada titulada “I AM HODLING” dudando sobre su naturaleza de trader y dejando constancia de su admiración por los que dicen que son capaces de predecir los movimientos en el precio del bitcoin. Esa errata tipográfica en la palabra HODLING donde baila las letras D y L se hizo rápidamente viral y perpetuo el término hodl. 

Un trader es la persona que opera en corto aprovechando lo que cree que son los mejores momentos para comprar y vender acciones o criptomonedas y así conseguir ganancias y mitigar pérdidas. En contraposición tendríamos al hodler que es quien opta por invertir en un activo digital comprando regularmente en el tiempo y almacenándolo a la espera de que se revalorice.

Al igual que GameKyuubi no creo que en el trading con bitcoins, es una buena forma de perder BTCs y donde se aplica la regla del 90-90-90, el 90% de los nuevos participantes pierden el 90% del dinero de su cuenta en un máximo de 90 días. 

El trading de bitcoins para los neófitos no funciona basta con comparar las recomendaciones de los supuestos expertos con el comportamiento posterior del mercado, no aciertan, tampoco funcionan los indicadores más utilizados de los análisis técnicos como medias móviles, RSI (Relative Strength Index), retroceso de fibonacci, bandas de Bandas Bollinger… En el mercado de Bitcoin las ballenas tienen mucho peso, son conocedoras de los análisis técnicos típicos que siguen los traders y les es muy fácil provocar tendencias en el corto plazo. Cada uno valorará pero el riesgo de pérdida con el trading en este mercado es alto.

En cambio la estrategia Hodl es sencilla y si funciona, hasta la fecha la tendencia en el precio del bitcoin ha sido alcista, existe una alta volatilidad en el corto plazo pero su trayectoria en el medio y largo plazo es claramente ascendente.

.

La compra de pequeñas cantidades de forma regular en un activo como bitcoin que es de alta volatilidad tiene la ventaja de acabar promediando el precio de compra. Unas veces la suerte estará contigo y te tocará adquirir los BTCs cuando el precio está bajo y otras por el contrario comprarás en el período ascendente, a la larga unas se compensarán con las otras y acabarás teniendo un precio medio de compra de tus BTCs. Esta forma de operar se denomina DCA (Dollar Cost Averaging Into Bitcoin) e igual que es muy recomendable para acumular BTCs no la considero igual de interesante de realizar con el Dollar o con el Euro ya que su valor disminuye con el tiempo.

Cuando por el contrario compras muy pocas veces pero una gran cantidad de bitcoins no tienes ese factor de promediado y estarás expuesto a la volatilidad del precio.

Plataformas Bitcoin P2P

Una forma habitual de hodlear es comprar semanalmente una cantidad razonable de acuerdo a tus ingresos y realizarlo en un sitio donde no te exijan identificarte es decir sin KYC (Know Your Client) para favorecer tu privacidad y tampoco tengan la custodia de tus bitcoins, la compra venta se hace entre particulares. Hay varios sitios donde se opera así como bisqhodlhodl… 

Exchange Bitcoin

Hay quien prefiere automatizar la compra y utiliza para la compra un exchange y la posibilidad que ofrecen de poder lanzar órdenes de compra periódicas. En estos casos lo recomendable desde el punto de vista de la seguridad y de la privacidad es una vez comprados enviarlos a una dirección nueva de una cartera que tenga la opción de realizar CoinJoin como por ejemplo Samourai wallet  y posteriormente enviarlos a una dirección generada en tu hardware wallet.

Hodl Trading Bitcoin

Por último y la más rentable desde el punto de vista económico es realizar la compra mediante una orden de trading aprovechando que históricamente la trayectoria del precio del bitcoin ha sido ascendente. Revisando el porcentaje de días en la historia de Bitcoin en los que comprar BTCs ha sido rentable para los inversores al precio actual, es de un 96.2%. 

En vez de comprar de forma directa regularmente se da de alta una orden de compra por un precio inferior, por ejemplo a un 95% de su precio actual, si en el periodo hasta la siguiente compra el precio de BTC baja por debajo de ese umbral la orden se ejecuta realizando la compra a un precio inferior del que hubiésemos comprado de forma directa si por el contrario no se ejecutó hacemos la compra al precio de mercado y ponemos la siguiente orden de compra. Además de la ventaja de haber comprado a un precio inferior tenemos que las órdenes de compra en los sitios de traders no tienen comisión y la compra inmediata a precio de mercado si.

Para aclarar la operativa pongamos un ejemplo, imaginemos que compramos BTC todos los lunes.

Precio BTC: 10000$

Limit Price: 9500$  (95% de Precio BTC)

Amount: 0.002  (20 / Precio BTC)

En el Trader

Si el lunes siguiente la orden de compra no se ha ejecutado tenemos que realizar la compra manual de los BTCs con los 20$ y además pondremos la siguiente orden de compra. 

El beneficio de la técnica Hodl Trading viene cuando se ejecuta la orden ya que en ese caso hemos comprado a un 5% más barato de lo que lo habríamos hecho si hubiésemos realizado la compra directamente.

Traducción de Hold Trading Bitcoin 

Posted on Leave a comment

Hodl Trading Bitcoin

Hodl Bitcoin

Although it could be, HODL is not the acronym for “Hold On for Dear Life”, the term has its origin in December 18, 2013 in the Bitcoin Talk forum when the user GameKyuubi writes an entry titled “I AM HODLING”doubting his nature as a trader and stating his admiration for those who say they are capable of predicting movements in the price of bitcoin. That typographical error in the word HODLING where the letters D and L dance quickly became viral and the term hodl perpetuated. 

A trader is the person who trades short taking advantage of what he believes are the best times to buy and sell stocks or cryptocurrencies and thus make profits and mitigate losses. In contrast we would have the hodler who is the one who chooses to invest in a digital asset buying regularly over time and storing it waiting for it to revalue.

Like GameKyuubi I do not believe that in bitcoin trading, it is a good way to lose BTCs and where the 90-90-90 rule applies, 90% of new participants lose 90% of the money in their account in a maximum of 90 days. 

Trading in bitcoins for neophytes does not work, it is enough to compare the recommendations of the supposed experts with the subsequent behavior of the market, they are wrong, neither do the most used indicators of technical analysis such as moving averages, RSI (Relative Strength Index), retracement. Fibonacci bands, Bollinger Bands … Whales carry a lot of weight in the Bitcoin market, they are knowledgeable about the typical technical analyzes that traders follow and it is very easy for them to provoke trends in the short term. Everyone will value but the risk of loss when trading in this market is high.

On the other hand, the Hodl strategy is simple and if it works, to date the trend in the price of bitcoin has been upward, there is high volatility in the short term but its trajectory in the medium and long term is clearly upward.

.

Buying small amounts on a regular basis in an asset like bitcoin that is highly volatile has the advantage of ending up averaging the purchase price. Sometimes luck will be with you and you will have to acquire the BTCs when the price is low and others on the contrary you will buy in the ascending period, in the long run some will be compensated with the others and you will end up having an average purchase price of your BTCs. This way of operating is called DCA (Dollar Cost Averaging Into Bitcoin) and just as it is highly recommended to accumulate BTCs, I do not consider it as interesting to do with the Dollar or with the Euro since its value decreases over time.

When, on the contrary, you buy very few times but a large amount of bitcoins you do not have that averaging factor and you will be exposed to price volatility.

Bitcoin P2P platforms

A common way to hodle is to buy a reasonable amount weekly according to your income and do it in a place where you are not required to identify yourself, that is, without KYC (Know Your Client) to favor your privacy and do not have custody of your bitcoins , the sale is made between individuals. There are several sites where it operates as well as bisqhodlhodl… 

Exchange Bitcoin

There are those who prefer to automate the purchase and use an exchange for the purchase and the possibility that they offer to launch periodic purchase orders. In these cases, it is advisable from the point of view of security and privacy is once purchased to send them to a new address of a wallet that has the option of making CoinJoin such as Samourai wallet  and then send them to an address generated in your hardware wallet.

Hodl Trading Bitcoin

Finally and the most profitable from the economic point of view is to make the purchase through a trading order, taking advantage of the fact that historically the trajectory of the price of bitcoin has been upward. Reviewing the percentage of days in the history of Bitcoin in which buying BTCs has been profitable for investors at the current price, it is 96.2%. 

Instead of buying directly, a purchase order is registered for a lower price, for example at 95% of its current price, if in the period until the next purchase the price of BTC falls below that threshold the order is executed by making the purchase at a lower price than we would have bought directly if, on the contrary, it was not executed, we make the purchase at the market price and place the next purchase order. In addition to the advantage of having bought at a lower price, we have that purchase orders on traders’ sites have no commission and immediate purchase at market price does.

To clarify the operation, let’s take an example, let’s imagine that we buy BTC every Monday.

BTC Price: $ 10,000

Limit Price: $ 9500 (95% of BTC Price)

Amount: 0.002 (20 / BTC Price)

In the Trader

If the following Monday the purchase order has not been executed we have to make the manual purchase of the BTCs with the $ 20 and we will also place the next purchase order. 

The benefit of the Hodl Trading technique comes when the order is executed since in that case we have bought at 5% cheaper than we would have done if we had made the purchase directly.

Posted on Leave a comment

Escuchando la red P2P de Bitcoin

Sniff Bitcoin Network

Por curiosidad vamos a escuchar el tráfico de red que hay entre mi full node y el resto de la red de Bitcoin. Como lo que me interesa es conocer los comandos de tráfico normal no ejecutaré ningún comando del protocolo y tendré el sniffer actuando hasta que se genere un bloque nuevo.

Para ello utilizaremos la herramienta tcpdump sobre el Bitcoin full node BCubium que nos permite capturar el tráfico de red sobre el puerto de comunicación en concreto. En nuestro caso como el nodo se está ejecutando Tor activaremos la escucha en el puerto 9050 y en el interfaz de red de loopback.

El comando a ejecutar es el siguiente:

tcpdump -i lo -s 65535 port 9050 -w /mnt/disk/tmp/BCubium_net_20200912.dump

Inspeccionamos el fichero generado con la utilidad Wireshark.

Nos encontramos los tipos de mensajes enviados: addr, getdata, headers, inv, ping, pong y tx.

addr

Proporciona información sobre los nodos conocidos de la red. Si los nodos no se anuncian se olvidan después de 3 horas.

inv

Permite a un nodo avisar de la existencia de uno o más objetos. Se puede recibir sin solicitarlo o en respuesta a un mensaje de tipo getblocks.

getdata

Se usa en respuesta a un mensaje inv para recuperar el contenido de un objeto específico. Por lo general, getdata se envía después de recibir el paquete inv, después de filtrar objetos conocidos. Se puede utilizar para recuperar transacciones.

headers

Este mensaje se envía en respuesta al mensaje getheader que devuelve los encabezados de bloque deseados.

ping

Mensaje para probar la vivacidad de la conexión TCP / IP. Se presupone que cualquier error de conexión es una conexión cerrada y la dirección se elimina como par actual.

pong

Mensaje de respuesta a un mensaje de ping por un nodo para demostrar su vivacidad en la red. 

tx

Describe una transacción de bitcoin, en respuesta a getdata.

version

Cuando un nodo crea una conexión saliente, inmediatamente anuncia su versión.

verack

El mensaje verack se envía en respuesta a la versión. Consta únicamente de un encabezado de mensaje con la cadena de comando “verack”.

Hay más información sobre el protocolo de Bitcoin en la página, Protocol documentation

Un hecho que me ha sorprendido es que aunque hemos estado escuchando la red bastante más de 10 minutos y en los logs aparece que se han minado dos bloques en el análisis del tráfico no aparecen ningún bloque completo supongo que será debido a que en la práctica no se enviarán los bloques enteros con todas sus transacciones sino las referencias a estas para que a partir de ellas se cojan de la mempool y montar el bloque consiguiendo con ello un ahorro muy importante en el volumen del tráfico de red.

Traducción del artículo Sniff the Bitcoin network