-
Las carteras móviles de bitcoin son más utilizadas que las de escritorio.
-
De ser un cliente ligero, ahora algunas carteras móviles ejecutan nodos de Bitcoin.
Hoy 11 de marzo de 2021 se cumplen 10 años del lanzamiento de la primera cartera de bitcoin compatible con Android, cuando en esa misma fecha pero del año 2011 fue propuesta por un desarrollador en el foro BitcoinTalk.
El desarrollador Andreas Schildbach publicó en ese entonces la primera versión de una cartera Bitcoin para Android, que al día de hoy sigue siendo uno de los principales sistemas operativos de dispositivos móviles, si no, el más utilizado.
El desarrollador continúa dando mantenimiento a la cartera, la cual podemos descargar en su versión más reciente desde la tienda Google Play en nuestro dispositivo móvil.
En la publicación de esta versión, en principio experimental, Hal Finney, reconocido pionero de Bitcoin y la primera persona en recibir una transacción de este protocolo, comentó que para noviembre de 2010, varios usuarios crearon un fondo de 1.760 BTC para recompensar a quien creara una cartera de Bitcoin compatible con Android.
Aunque no queda claro si Schildbach u otro desarrollador recibieron esta recompensa, lo cierto es que su versión fue la primera cartera de Bitcoin implementable en Android. Los 1.760 BTC valdrían al día de hoy casi 99 millones de dólares , según la calculadora de precios de CriptoNoticias.
¿Cabe Bitcoin y su historia en mi celular?
El principal reto para una cartera móvil en 2011 era la imposibilidad de guardar toda la cadena de bloques de Bitcoin, el historial de sus transacciones, en un dispositivo con una memoria de almacenamiento y de procesamiento tan pequeñas.
Aunque para ese entonces la blockchain de Bitcoin no tenía el tamaño que tiene hoy (333 gigabytes, según YCharts), y la versión de Schildbach era de prueba, funcional en la testnet mediante el cliente Bitcoinj, escrito en el lenguaje de programación JavaScript. La duda sobre cómo utilizar esta cartera fue debatida por los miembros del foro y primeros bitcoiners de la historia.
«¿Sabes cómo almacenar la blockchain en otro lugar?», preguntó Hal Finney refiriéndose a qué espacio se utilizaría desde esta cartera para alojar la cadena de bloques de Bitcoin.
Asimismo, la velocidad de sincronización de la cartera con la cadena fue un punto de preocupación entre los comentaristas, pues si en ese caso un dispositivo no lograba sincronizarse, podría reorganizar la cadena a su gusto y entrar en conflicto con el consenso de la red.
«Sí, la gestión de la blockchain en bitcoinj amerita trabajo. No es solo el almacenamiento. Es manejar las bifurcaciones o reorganizaciones de la cadena. Estoy trabajando primero en esto por las probabilidades de que la cadena se reorganice si mantenemos un registro permanente de la cadena», comentó el usuario Mike Hearn en BitcoinTalk.
Un usuario preguntó si era necesario tener toda la blockchain al momento de gastar los bitcoins, ante lo que alguien le contestó que no realmente, aunque sí la necesita para saber cuántos bitcoins tiene y puede gastar.
El mismo usuario que ofrece esta respuesta planteó la idea de una «blockchain remota», es decir, un servidor que pudiera conectarse a la blockchain y transmitirla al cliente de Bitcoin en Android, estando disponible con tan solo conectarse a internet.
La primera cartera de bitcoin fue desarrollada por Satoshi Nakamoto y funcionaba solo en equipos de escritorio. La particularidad de la cartera Bitcoin Core, que se podría decir es la cartera oficial de Bitcoin, es que necesita descargar por completo el historial de la red, constituyendo un nodo completo.
En ese entonces, la blockchain pesaba menos de 5 gigas, aunque igual tomaba bastante tiempo para sincronizar. Así como ahora también necesita sincronizarse cada vez que se inicialice, razón por la que no es práctico desconectar un nodo de Bitcoin si se le dará uso frecuente.
El desarrollador Mike Hearn propuso en la siguiente versión de la Bitcoin Wallet (cartera de bitcoin para Android), utilizar un mecanismo conocido como «Bloom Filters» (Filtros de Bloom) para manejar la sincronización con la blockchain de manera más eficiente.
Hearn argumenta que la cartera de clientes ligeros (Simplified Payment Verification o Verificación de Pago Simple), descargan la blockchain y verifican que los bitcoins de la cartera no hayan sido gastados. Si no fueron gastados, desechan los datos que recién acaban de descargar. Este proceso no es eficiente, señala.
Los filtros del Bloom solucionan esto. Cuando se conectan, el cliente crea una estructura de datos (el filtro) que representa las llaves de la cartera y lo envía a sus pares remotos (en la red P2P). Luego, estos pares solo podrán enviar las transacciones que coincidan con el filtro a través de la red.
Mike Hearn, desarrollador de Bitcoin.
Para Hearn, el hecho de que los filtros de bloom sean probabilísticos, simplifica el manejo de los datos de Bitcoin.
Como lo explica el sitio educativo Bit2Me Academy, los filtros de bloom traen beneficios a Bitcoin en la sincronización de las carteras o wallets de clientes ligeros (SPV).
El sistema Bitcoin emplea bloom filters para acelerar la sincronización de las wallets o monederos SPV; los cuales permiten que éstos puedan especificar sólo las transacciones para las que desean recibir las actualizaciones del sistema. Formando un conjunto de transacciones que pueden transmitir a los nodos completos de la red. Allí se puede verificar a través de estos filtros. Recibiendo luego la confirmación de si este conjunto de transacciones se ha añadido o no a la cadena. Sin necesidad de manejar una copia completa de la blockchain.
Actualmente se utilizan otro tipo de filtros de datos en Bitcoin. En 2019 se integró una nueva estructura de datos a través de la BIP-158, que puede encontrarse en el GitHub de Bitcoin Core. Pero la solución inicial terminó de darle impulso a la cartera móvil original de Bitcoin y consigo, a cientos de carteras y proyectos que fueron desarrollándose hasta llegar a las innovaciones de hoy.
Por ejemplo, como reportamos en CriptoNoticias, ya existen proyectos que permiten ejecutar un nodo completo desde un dispositivo móvil. Asimismo, otras carteras permiten también ejecutar nodos de Lightning, ampliando las capacidades y acercando a Bitcoin a usuarios de todo el mundo, en las más populares tiendas de aplicaciones móviles.