Utreexo: Cómo hacer Bitcoin más ligero sin cambiar sus reglas
Imagina correr un nodo Bitcoin en tu viejo portátil sin descargar gigabytes: Utreexo lo hace posible, aligerando la red para una descentralización real
¿Está Bitcoin bajo una amenaza cuántica?
En este artículo, intentaremos saber si se trata de una preocupación real e inminente o de algo imposible de suceder. Y lo más importante, si fuera real, ¿cómo nos afectaría, dónde nos afectaría y se podría hacer algo al respecto?
¿Qué pasa si pagas menos de 1 sat/vB en Bitcoin?
Pagar menos de 1 sat/vB en Bitcoin puede afectar la sincronización de nodos, las wallets ligeras y la propagación de bloques. Aquí te explicamos por qué.
Hashrate - El Latido de la Red
El hashrate es el pulso de Bitcoin, pero, ¿cómo funciona exactamente? ¿Qué representa esta cifra que suele verse en terahashes, exahashes o incluso zettahashes por segundo?
Hacía un mundo Cashless
La lucha entre el control y la descentralización: Libra, DCEP y Bitcoin, ¿alternativas? Voy a permitirme analizar brevemente los activos digitales o criptomonedas que consideró están en el debate del mundo Cripto, tratando de no tomar apasionamientos desmedidos. Antes aclaro que existe un sin fin de criptomonedas a día de hoy, analizarlas todas sería imposible pero además de ello sería una perdida de tiempo, mi intención es hacerlo sobre las alternativas que a mi parecer son las más importantes, el resto son experimentos que morirán o ¿no?, pero que no son para efectos de este análisis, relevantes. Breve comparativa: Bitcoin, Libra y DCEP Libra, la “alternativa” de occidente. Libra (la stablecoin propuesta por facebook con otros socios), lanzo un nuevo white paper con modificaciones buscando ser aceptada a los ojos de los órganos reguladores de USA y del mundo entero (menos China y luego explicaré por qué). Dentro de las modificaciones que realizaron y que ahora proponen están: Con base en estos 4 grandes puntos, la asociación Libra ha dado un giro al debate con el que nació y ha cambiado un poco el discurso en los países, principalmente en USA, de rechazo a dialogo. El otro factor que ha hecho cambiar el discurso de los principales órganos centrales de los países (la FED y el BCE principalmente) es China. DCEP, la “alternativa” de China. China desde hace algún tiempo se ha venido pronunciando de manera abierta (todo lo abierto que el régimen chino permite) sobre una cierta posición favorable al mundo de los cripto activos. De hecho los grandes exchanges de cripto activos son chinos y los grandes pools de minería de las principales criptomonedas también. Así, China ha venido manejando sus mensajes y sus movimientos. Hace ya algunos meses, se empezó a comentar que China estaba a favor de Bitcoin (de hecho China lanzó una iniciativa a favor del uso de la Blockchain), y China en un principio no lo desmintió. Algunos analistas dicen que ese fue el motivo de la subida de Bitcoin a cerca de los 12.000 USD de hace unos meses. Posteriormente el gobierno Chino aclaro que estaban razonablemente a favor del uso de la tecnología blockchain pero no de Bitcoin (para quien no lo sepa, blockchain es una tecnología derivada de Bitcoin, aunque esto puede generar cierta polémica). Estos mensajes no muy claros estaban, creo yo, tratando de evitar mostrar las cartas reales, que son el hecho de que desde hace unos 5 años, China viene trabajando en una stablecoin denominada DCEP (Digital Currency Electronic Payment, DC/EP) cuyo objetivo es mantener una paridad 1 a 1 con el RenMinBi (o Yuan como se le conoce en el mundo) y además convertirse eventualmente en una moneda digital global similar o que reemplace al dólar en las operaciones de comercio e intercambio internacionales. Todo ello derivado de que China ve en Bitcoin un peligro para su soberanía, indicando que las monedas digitales solo deben ser emitidas y controladas por los gobiernos y los bancos centrales, y que no deben ser usadas para especular (realizar trading). Al igual que la FED y el BCE, el motivo de fondo es el temor a perder el control en el flujo de valor, que al final de cuentas es perder el poder. Este último punto y el de perder la posibilidad de rastrear fácilmente la identidad de quién realice una operación, es el principal argumento de los gobiernos y entidades centrales para estar en contra de las criptomonedas como Bitcoin. Ante esta situación, China ha venido trabajando en tratar de adelantarse a la adopción (que por otro lado es inevitable y, con la situación del Covid19, aún más) de una moneda digital, por ello de manera sigilosa ha venido trabajando en ella. EL DCEP será lanzado de manera masiva en unos meses, sin embargo ya están realizando pruebas y con un régimen como el Chino, que ha indicado dónde deben usarse y cómo (no ha preguntado, lo ha dicho) se espera que la masificación de su uso se de en breve. Para quienes conozcan el mercado Chino sabrán que prácticamente el uso del dinero físico no existe, Wechat Pay, Alipay y Huawei Pay son de uso cotidiano, por lo que la adopción no será un problema. El DCEP no será una stablecoin descentralizada. Todo lo contrario, estará férreamente controlada por el gobierno, quién podrá no solo saber en qué momento se ha realizado una transacción y por qué importe, sino que sabrá entre quienes, qué, cuándo, dónde y podrá hacerlo al segundo, de manera completamente controlada. Mientras tanto, en el mundo occidental, se debate otro modelo de control, el propuesto por Libra, con objetivos similares, pero que debe pasar por la aprobación de más socios (en eso China juega con ventaja, no tiene que preguntarle a nadie), donde debe pasar por establecer reglas claras sobre quiénes tendrán acceso a qué y cómo. Y lo más importante, cómo asegurar que no se pierda el control que los gobiernos tienen sobre los activos de los pobladores de cada uno de sus países. Bitcoin, la Alternativa de Internet. Hay una tercera opción, de hecho es la que vino a revolucionar todo este mundo de los Cripto activos, es Bitcoin, una criptomoneda que, guste o no, a día de hoy tiene un precio, si se le compara con el dólar, de más de 7.000 dólares, que es in confiscable, con una política monetaria conocida, predecible y confiable, que es descentralizada y segura. Bitcoin nació con la intensión de eliminar intermediarios, dotando a sus tenedores la posibilidad de realizar transacciones entre ellos sin necesidad de un tercero, es en esencia, un concepto sencillo, es un protocolo de intercambio, persona a persona, de valor con muchas ventajas tan importantes como la posibilidad de disponer de tu dinero cuando lo creas conveniente, de evitar el doble gasto, de actuar como si fueras tu propio banco y de privacidad en tus transacciones con otros, sin tener que ceder toda tu información (Bitcoin es pseudoanónimo: las operaciones en Bitcoin son publicas y cualquiera puede revisarlas, pero no así la identidad de quién las haya realizado, aunque existen maneras de desanonimizarlas, pero no es menester de este artículo). Bitcoin es el peligro que ven los gobiernos y los bancos centrales, ya que propone una descentralización total del dinero, eliminando intermediarios, reduciendo tiempos y acortando distancias. Pero en el fondo, Bitcoin es una serie de protocolos más complejos pero que introducen conceptos muy interesantes y útiles como la Inmutabilidad de las operaciones en la red, las reglas de Consenso que mantienen a la red unida, la Proof of Work o Prueba de Trabajo que es el concepto sobre el que se basa la Descentralización y la Confianza de la red, la inmediatez de las operaciones (mucho más rápidas que la red SWIFT de los Bancos Centrales) y la seguridad en la criptografía usada. El principal problema de Bitcoin, por lo que he podido ver, es la ignorancia sobre su funcionamiento, la mayoría de la gente lo ve como algo ilícito, difícil y sin sustento (por resumir muchísimo los puntos). Nada más lejos de la realidad, detrás del desarrollo de Bitcoin hay toda una arquitectura, tanto técnica como funcional sustentada en principios que podrán gustar más o menos, pero que no nacen de la nada, como los principios de política monetaria basados principalmente en las teorías de la economía Austriaca, o en los fundamentos de criptografía que sostienen en gran medida la seguridad de la red o en la Prueba de Trabajo, que es complemento de la seguridad y que aporta el sustento del valor de la moneda. Sobre la mesa está el debate sobre Bitcoin y hay todo un movimiento sobre el desarrollo de la tecnología que está buscando hacer de Bitcoin algo más fácil de usar y cercano al usuario común y corriente, pero que mueve muchísimo dinero. Según el sitio especializado Coindesk a fecha de publicación de este artículo, Bitcoin tiene un Market Cap de $141.60B. Con una creciente inversión de empresas en su desarrollo siendo algunas de las más destacadas Blockstream o Chaincode Labs. Pero lo más destacable es la comunidad de desarrolladores, con cerca de 700 desarrolladores, este proyecto Open Source no deja de sorprender a propios y extraños. El dinero, tal y como lo conocemos hoy día, creo que ha llegado a tocar fondo, ahora toca ver hacia dónde nos movemos, pero no en manada, sí con cabeza y con sentido. El mundo, antes de la crisis del Covid19 estaba cambiando a 20 km/h y a partir de ahora dará un giro para acelerar el cambio a 100 km/h. Toca estar atentos a las opciones y tratar de escoger no solo la que la mayoría elija, desafortunadamente no siempre la mejor opción es la que más se usa, sino escoger la que nos brinde la posibilidad de gestionar nuestro valor de forma segura y libre. Se lo debemos a nuestros hijos, el momento es ahora. ★★★★★
Cómo calcular la comisión de una transacción en Bitcoin
Realiza una estimación sobre la comisión de tu transacción, desde tu nodo completo de Bitcoin
Ajuste de Dificultad
En este artículo vamos a desentrañar algunos conceptos claves en Bitcoin, como son: Ajuste de Dificultad, Target u Objetivo, Proof of Work y la importancia de la Latencia.
Encontrando la cadena
¿Cómo sabe un nodo que está conectado a la cadena más larga y con más esfuerzo de Bitcoin?
La Mineria de Bitcoin
En este artículo, analizaremos cómo funciona la minería en Bitcoin y cuáles son sus componentes.
Configuración del nodo de Bitcoin
Algunos consejos o temas interesantes sobre la configuración de tu nodo completo de Bitcoin
Atomic Swap
Atomic Swap ¿Qué es un atomic swap? Un Atomic swap, hace referencia a la capacidad de realizar un intercambio de valor entre dos cripto-activos o criptomonedas de forma descentralizada, es decir no hay un intermediario realizando el intercambio, sino que sucede entre las redes de las criptomonedas intervinientes, por ejemplo, en un atomic swap entre Bitcoin y Litecoin, no existiría un exchange que procese realice el intercambio y que por ello cobré una comisión, en principio solo pagarías por la comisión que te cobraría la red de una criptomoneda y de la red de la otra. En el ejemplo anterior, la comisión que te cobraría la red de Bitcoin y la red de Litecoin. Otra ventaja de los atomic swap es que mientras se realiza el proceso los intervinientes no pierden la custodia de sus criptomonedas hasta que no se completa el intercambio. Para que un un atomic swap se lleve acabo es necesario utilizar un Smart Contract de TimeLock o Hash Time Locked Contract, por su nombre en inglés, el cual es un contrato que establece un bloqueo sobre la criptomoneda por un periodo de tiempo determinado o hasta que se complete el intercambio de manera satisfactoria (sin entrar en los detalles técnicos, esto sucede a través de pruebas criptográficas que proporcionan los intervinientes). El bloqueo de tiempo se puede configurar para que suceda en un bloque en especifico o una marca de tiempo especificada. Esto se implementa para evitar que si el intercambio no se llega a completar, el proceso no se quede indefinidamente esperando a que suceda, por ello se implementa, para que pasado el tiempo establecido o alcanzado el bloque determinado el intercambio se anule, obviamente, siempre y cuando no se haya realizado todavía. Entonces, continuando con el flujo, cuando se realiza un atomic swap, al usar el Smart Contract Hash Time Locked este proceso hace que en ambas redes los fondos estén bloqueados y además actúa de forma tal que las dos partes controlan el proceso criptográfico que les permitirá acceder a los fondos y una vez proporcionada la prueba criptográfica o alcanzado el fin del contrato el proceso termina. Imagen tomada del proyecto Decrep atomic swap: https://github.com/decred/atomicswap/blob/master/workflow.svg Como podrás ver, los atomic swap son en esencia un proceso sencillo, aunque en su implementación y a bajo detalle, la magia sucede gracias a los contratos Hash Time Locked Contract. Tipos de swap. Ahora, hablando con un poco más de detalle, los atomic swap pueden realizarse en lo que se denomina on-chain (dentro de la cadena o dentro de la red de la criptomoneda en cuestión) y off-chain (fuera de la red). Por último, comentarte que aunque este tipo de intercambios se encuentran aún en fase de desarrollo, no son tan conocidos en la comunidad y que a día de hoy tienes opciones un tanto limitadas en cuanto al número de criptomonedas para intercambiar, este tipo de plataformas están en plena evolución y desarrollo ya que permiten el manejo de uno de los principales conceptos del mundo cripto, que es la descentralización, lo cual les augura un buen futuro y crecimiento. Aquí te dejo algunas plataformas que permiten realizar atomic swap, que he buscado y que me parecen interesantes: ★★★★★
Forks
Qué es un fork y cuáles son los principales forks de Bitcoin Un fork, conocido así por su nombre en inglés, significaría en español y tratándose del contexto que vamos a tocar en este articulo, de una separación o bifurcación de la cadena original de Bitcoin. Un fork se lleva a cabo por modificaciones en el protocolo de Bitcoin y debido a esas modificaciones en el protocolo, las reglas que se encargan de validar el comportamiento de toda la red, que no son otras que las reglas de consenso, se ven afectadas y es decisión de los participantes el implementarlas o no. Dependiendo de las características e impacto de los cambios es que se podría determinar el tipo de fork Tipos de forks. Algunos datos adicionales sobre bifurcaciones suaves. Como ya hemos comentado los softforks son cambios que permiten realizar mejoras o correcciones en la red y/o el protocolo. Pueden ir, por ejemplo, desde la introducción de reglas para evitar que los mineros creen transacciones hashes duplicados, hasta pasar por modificaciones que exigirán la introducción de tiempos de bloqueo para las salidas de las transacciones individuales. En lo que respecta a la aplicación, estos cambios podrían suponer almacenar nueva información en las transacciones, restringir reglas de validación de la transacción o redefinir el uso de funciones, por ejemplo. Bifurcaciones propias de Bitcoin: Bitcoin ha experimentado dos bifurcaciones no intencionadas (y temporales) que requirieron intervención de los mineros para resolverlas. Además en este link tienes más información sobre los diferentes softforks que se han registrado en Bitcoin (creo que no está del todo actualizado). Principales forks de Bitcoin Ahora vamos a hablar de bifurcaciones que han derivado en la creación de nuevas cadenas, es decir, son bifurcaciones que han seguido como proyectos en paralelo a Bitcoin y ahora validan sus propias reglas de consenso. ★★★★★
Nodos en Bitcoin
Nodos en Bitcoin Un nodo es una línea de defensa En términos estrictos, un nodo de Bitcoin es cualquier computadora configurada con el software de Bitcoin y que se ejecuta para conectarse a la propia red de Bitcoin. Pero en el detalle, un nodo no es solo un equipo conectado a través de la red de Bitcoin, yo considero a Bitcoin un protocolo de detalles: el consenso, las pruebas de trabajo, la emisión de recompensas, la transmisión de valor y otros tantos conceptos que están inmersos en el protocolo de Bitcoin. Todos esos detalles hacen que Bitcoin sea único y disruptivo, sin embargo escucho frecuente que algunas de las dudas sobre Bitcoin son, ¿vale la pena ejecutar un nodo?, ¿ayudo a la red si tengo un nodo?, ¿cómo ayudo?. Clasificación de nodos ¿Pero y porqué debería tener un nodo? Si llegados a este punto te sigues preguntando si deberías tener un nodo y te preguntas como la gran mayoría lo hemos hecho, ¿pero y el beneficio económico?, ¿qué gano yo con tener un nodo?. Hice de esto un hilo en twitter donde explico lo que es desde mi punto de vista el razonamiento de porqué debes tener un nodo: Bitcoin es un activo de gran valor, con un nodo completo participas y fortaleces el consenso de la red, le das más resistencia a la red y un nodo completo te permite validar tus operaciones, sin tener que confiar en nadie más, todo esto te convierte en parte del protocolo, por ello creo que tener un nodo completo con la historia es la mejor idea, no puedes dejar en manos de nadie más, que las tuyas, tu valor, tu dinero, tu seguridad. En resumen, un nodo es soberanía, es la posibilidad de no tener que confiar en terceros, te vuelve tú propio Banco, un nodo es tu voz y tu voto en la red de Bitcoin, pero para ello debes entender que hace, cómo funciona, como puedes configurarlo y qué opciones tienes para ello. Un poder, conlleva una responsabilidad, por ello debes saber usarlo. ¿Necesitas más?, te dejo este par de podcast’s en los que hablamos del tema, uno con Lunaticoin y el Otro con Javier Bastardo (Satoshi en Venezuela). ★★★★★
Halving en Bitcoin
Bitcoin Block Reward Halving Countdown Halving en Bitcoin En Bitcoin los tiempos en realidad se establecen por bloques y no en años, como el Halving, que sucede cada 210.000 bloques, sin embargo los cálculos que intervienen, dado el protocolo, permiten estimar que el tiempo que va a transcurrir para generar esos 210.000 bloques es de aproximadamente de 4 años. Esto que pudiera parecer tan trivial, no lo es, es una de las reglas de consenso de Bitcoin, tiene de fondo una razón, limitar la oferta con una cadencia y establecer unas reglas conocidas de emisión de bitcoins. Como decía, cada 210,000 bloques se produce un halving, esto significa que la emisión de recompensas que se le da a cada minero por haber resuelto el problema matemático que supone el la prueba de trabajo o PoW (Proof of Work), se reduce a la mitad. A este proceso se le denomina halving, precisamente porque la recompensa es reducida a la mitad. Si quieres conocer más te invito a leer sobre ello: Mining and Consensus Dado que cada bloque minado proporciona una emisión de bitcoin a modo de recompensa y a su vez esa recompensa empezó a darse a partir de 50 bitcoins por bloque minado, se ha calculado que el número total de bitcoins en el número de años que se va a estar emitiendo (hasta 2140) dará 21 millones de bitcoins (210.000 bloques cada halving empezando por 50 bitcoins de recompensa, y dividiendo a la mitad la recompensa cada 210.000 bloques hasta 2140). La limitación a 21 millones ha estado implementada en el código desde que Satoshi lo publico. Hago esta aclaración porque anteriormente caí en la trampa de creer que el BIP 0042 desmentía este hecho (de hecho yo así lo había publicado). Pero este en realidad ese BIP fue una broma que Pieter Wuille quién un 1 de abril de 2014, día en el que algunos países celebran el aprils fools o día de las bromas, aprovechó para publicarlo y con ello hacer la broma. Lo que si es cierto es que mediante ese BIP se realizó una modificación que corregía un problema en el código C++ en el que esta implementada la parte del tratamiento del halving y que tendría un fallo en un futuro, sin embargo la emisión de 21,000,000 millones de bitcoins siempre estuvo. Como podrás ver, dentro del protocolo de Bitcoin, todo tiene un tiempo, un motivo y encaja en una función, el que cada 210.000 bloques se tenga una reducción de recompensas, establece un modelo de tiempo, invariable y predecible de escasez, pero a la vez de transparencia sin igual en la emisión de ninguna moneda o valor que se conozca en el mundo actual. Además, al estar definido el modelo de emisión, y a la vez este no ser incremental, no hay inflación, es decir un sistema deflacionario, donde no se crea más valor que el establecido, lo cual conlleva que el valor no disminuye debido a la escasez y a que al ser un modelo descentralizado no hay un ente central que pueda modificar esta política, no como en el modelo fiat actual, dónde cualquier gobierno del mundo, imprime dinero sin el mayor pretexto que el de decir que se imprima, no hay nada de sustento por detrás. Existe el discurso que dice que ante la disminución de recompensas por el halving, los mineros abandonaran la red y Bitcoin dejará de tener razón de ser. Quienes hacen este tipo de aseveraciones no tienen en mente o no conocen el proceso entero de como funciona el protocolo en su conjunto, ya que si algo así llegará a suceder, el target de la red (conocido como la dificultad) se ajustaría de manera que minar en la red sería posible a través de equipos menos caros que con los que se realiza actualmente, ese es el objetivo de la minería, la minería no tiene SOLO como objetivo el proveer nuevos bitcoins, sino también el mantener la seguridad de la red descentralizada, por ello el ajuste del target en la red se ajusta dependiendo del hash rate que haya en la red y con ello permitir que siempre pueda haber un interés en continuar minando. Emisión o Supply de bitcoin Ahora bien, continuando con el tema de la emisión de bitcoins y dado que hay algunos temas de precisión en todo el calculo de cifras, déjame decirte que en realidad no van a existir 21 Millones de bitcoins, como mucha gente piensa, esto es porque el software del desarrollo de Bitcoin admite 8 decimales para recompensa, por lo que se calcula que en el bloque número 6930000, la recompensa será de 0 (por los temas de redondeo de precisión), dejando aproximadamente 20.999.999,9769 de satoshis emitidos. Por lo que los cálculos de la tabla que se encuentra más abajo son aproximados debido al redondeo (los he realizado en una tabla tipo hoja de cálculo y sin meter precisión ni redondeo). Imagen de @ChartsBtc Épocas de emisión de bitcoin o epoch Una época o epoch por su termino en inglés, es el periodo de tiempo que pasa entre un ajuste de la recompensa a los mineros (el subsidio que se da a los mineros por realizar el trabajo de PoW y minería) y el siguiente ajuste. Esto sucede cada 210,000 bloques. Los Epoch, que llevamos hasta el momento son: Se estima que haya 33 épocas con recompensa o subsidio por bloque. La idea es que una vez se llegue al punto donde el subsidio se acabe, la recompensa por bloque se compondrá sólo de las comisiones por transacción que pagarán los usuarios por realizarlas. Es decir, el subsidio de bloque se reducirá 33 veces. 32 veces reduciendo la recompensa de bloque a la mitad, y el último halving (el 33) reduciendo el subsidio de bloque de 1 satoshi por bloque a cero satoshis por bloque. Esto es porque el límite de la recompensa por bloque se contabiliza en un número entero de satoshis. El protocolo no permite la creación de fracciones de satoshis. Así que el último halving se estima que suceda en el bloque 6.720.000 reduciendo el subsidio o recompensa del bloque de 2 satoshis a 1 satoshis. Esto, se estima que suceda aproximadamente en el año 2136. Y en el bloque 6.930.000, aproximadamente en el año 2140, pasará a cero. Esto significa que el último bloque con subvención será el bloque 6.929.999. La siguiente tabla tiene como objetivo mostrar la emisión de bitcoin que se dará a lo largo de los años y tratar de dejar claro el modelo de escasez, emisión y tiempo que rigen al modelo de generación de «monedas» de Bitcoin, todo gira entorno a tiempos perfectamente establecidos, bloques emitidos y consenso completado. Halving and bitcoin emision Halving and bitcoin emision Algunos datos post halving 11 de mayo 2020 (UTC: 05/11/2020 19:23:00) Pasado el Halving se predecía un incremento en el tiempo entre bloques debido a la supuesta capitulación de mineros, al no serles rentable el continuar minando Bitcoins. Sin embargo ese incremento, por lo menos al momento no se ha dado. Comparto algunos datos sacados directamente de un nodo: Mi conclusión es que casi nada ha cambiado si bien hay una diferencia de más o menos un minuto, entre antes y después del halving, para los tiempos medios de minado en Bitcoin no hay gran diferencia. Los datos dicen que los mineros han estado preparados y han minimizados sus impactos, el halving es un evento conocido y predecible, por lo que permite perfectamente la anticipación a sus efectos y consecuencias. Posiblemente en el siguiente ajuste de dificultad es cuando se podría ver algún cambio drástico, pero sigo pensando que no ocurrirá, y tú, ¿qué opinas?. ★★★★★
Bitcoin Explorer
Bitcoin Explorer (antes llamado BTC-RPC-EXPLORER) Bitcoin Explorer es un explorador desarrollado por Janoside que permite visualizar la actividad de la red de Bitcoin desde tu propio nodo. Me parece una excelente opción para continuar con el aprendizaje de Bitcoin y además para poder visualizar tus transacciones y las de la red sin necesidad de comprometer tu privacidad ya que puedes instalarlo en tu nodo y consultarlo desde ahí o en tu red local. Recordemos que puedes ver todas las operaciones que hay en la red, aunque no sepas de quién son y eso es lo genial!. He realizado esta guía para documentar los pasos que seguí para instalar btc-rpc-explorer y con ello poder conectarlo con mi nodo. La instalación ha sido realizada en una laptop con fedora 31 y Bitcoin core 0.22. (he actualizado el equipo a fedora 42 y Bitcoin Core 28.0 y no he tenido ningún problema) Entiendo que las configuraciones deben similares en los entornos linux pero no tengo certeza de que funcione en windows. Pre-requisitos Como las propias indicaciones de la descarga en el sitio oficial indican, para poder hacer uso de este explorador debes cumplir con los pre-requisitos los cuales son: Nota: en mi caso no lo he ejecutado con Docker, por lo que esta guía no cubre esa parte. Paso a paso Como podrás ver la salida de ese comando te da el dato rpcauth que debes poner en el archivo bitcoin.conf (rpcauth=……….) El password es un ash que debes guardarte ya que lo vas a necesitar, yo no lo he incluido en el bitcoin.conf, aunque podrías hacerlo poniéndolo en la variable rpcpassword=hasdetupassword Si tienes problemas para ejecutar este comando descargalo desde el Github usando la siguiente instrucción: wget https://raw.githubusercontent.com/bitcoin/bitcoin/master/share/rpcauth/rpcauth.py Y después ejecuta: rpcauth.py myusername Esto te debería arrojar una salida igual a la anteriormente indicada: (String to be appended to bitcoin.conf: rpcauth=myusername:c439fbb5150c3a58079ad06b03c971fa$25fc8f8c89c79a8ce38ba9790861fdff4dc2916c23f8d31b7e9b65312d186d3c Your password: NjVnDAbNOMU9YLFVI7-okFNJ0PPhA3x_iyFglHO9AXM=) Si tienes problemas busca esto mismo en esta url: https://www.buildblockchain.tech/blog/btc-node-developers-guide Con esto incluido en tu archivo bitcoin.conf (no olvides reiniciar el nodo), ya tenemos configurado el nodo para ejecutar comandos RPC. En este archivo que viene de ejemplo en el sitio desde dónde descargaste el explorador, hay varias variables que podrías cambiar, pero para efectos prácticos yo he dejado casi todo en la configuración por defecto (default) y solo he cambiado lo siguiente: Una vez que tengas esto, ya solo sigue probar que esta todo ok, pero ….. Ejecuta el explorador desde una terminal con el siguiente comando: btc-rpc-explorer #si obtienes un error que dice: Si después de esto tienes problemas, lamento decirte que tienes que investigar que más podría ser o avísame y estaré dispuesto a ayudarte (telegram: https://t.me/Decentralizedb). Si todo ha ido bien, enhorabuena, tienes que darle las gracias a https://github.com/janoside que son los que han desarrollado este magnifico explorador. Funcionalidad adicional Una cosa que también puedes ver desde el cuadro de mando de tu explorador es el precio de bitcoin al momento de ejecutar tu explorador. En principio, según las instrucciones del sitio de Janoside bastaría con tener en tu archivo de configuración ~/.config/btc-rpc-explorer.env configurado lo siguiente: BTCEXP_NO_RATES=false Sin embargo en mi caso, me encontré con que no tomaba esa configuración, por lo cual tuve que investigar un poco más y encontré que donde tenía que cambiar el valor era en el archivo que se llama config.js que se encuentra en la ruta ~/btc-rpc-explorer/app o si no lo localizas ahí o no te toma el valor de ahí en la ruta /usr/local/lib/node_modules/btc-rpc-explorer/app y buscando que la siguiente línea quede como sigue: queryExchangeRates: (process.env.BTCEXP_NO_RATES.toLowerCase() != «false«), Nota adicional. Para no tener que estar ejecutando esto desde un terminal todo el tiempo y como una opción, una vez que me di cuenta que todo se ejecutaba de manera correcta, me he configurado un archivo para ejecutar como si fuera una aplicación. La ventaja es que no tienes una terminal ejecutando, la desventaja, es que no podrás ver los mensajes que te pueda dar por consola (terminal) si algo va mal, por eso es algo opcional. Lo que hice fue crear un archivo de texto llamado btc-explorer.desktop en la siguiente ruta: ~/.local/share/aplications/ el cual tiene lo siguiente: [Desktop Entry] Categories=Tools; Comment=Blockchain explorer Encoding=UTF-8 Exec=btc-rpc-explorer -a passwordParaIngresarDesdelaWeb –bitcoind-user myusername –bitcoind-pass yPL8WKwYoHu5e1qt7ka38TP6xlFssut5YnSpmxaqfdU= –bitcoind-cookie ~/.bitcoin/.cookie MimeType=text/html; Name=btc explorer Type=Application X-DBUS-ServiceName= X-DBUS-StartupType= Los campos marcados en negritas deben de ser sustituidos por los valores que tú tengas configurados. Esto permite ejecutarlo como si fuera una aplicación más a través de la interfaz gráfica. ★★★★★ O mediante Lightning network: ⚡ decentralizedb@getalby.com
¿Qué es Bitcoin?
Avisos importantes: Una de las reglas más valiosas en el mundo Bitcoin es: no confíes, verifica. Por ello debes leer, aprender y con ello tomar tus propias decisiones. ¡Gracias por pasarte por aquí! ¿Qué es Bitcoin? Antes de decir que es Bitcoin, voy a decir brevemente lo que Bitcoin no es (desde mi punto de vista). Bitcoin no es una empresa: no hay una patente o una marca comercial detrás. Bitcoin no tiene una representación. No hay una dirección física o postal a la que puedas hacer llegar tus quejas, demandas o felicitaciones. Bitcoin no tiene sede. Al momento de escribir este artículo existen más o menos unos 100,000 nodos (sin tomar en consideración a los nodos mineros) distribuidos por todo el mundo. Ahora, dicho eso, diré que: Bitcoin es, en esencia, un concepto sencillo: es un protocolo de intercambio, persona a persona, de valor. Sin embargo en sus detalles es un tanto más complejo. De hecho, yo lo definiría como un protocolo de detalles. Si hablamos de la tecnología (Bitcoin, con mayúsculas) es una serie de implementaciones, desarrollos basados en Criptografía, Consenso, Pruebas de Trabajo y Almacenamiento que en conjunto crean una arquitectura pocas veces vista antes de su concepción. Y es cierto que como toda tecnología nueva e innovadora, tiene sus mejoras y siembra sus dudas, pero ….. ¿recuerdas cuando te plantaste por primera vez frente a un ordenador?, por muy milenial que seas, tus dudas tendrías. Por el lado práctico, si hablamos de bitcoin (con minúsculas, yo lo distingo así, no todo el mundo lo hace), nos referimos a ventajas tan importantes como la posibilidad de disponer de tu dinero cuando lo creas conveniente, de evitar el doble gasto, de tener el control de tu dinero (ser tu propio banco) y de la privacidad en tus transacciones con otros, sin tener que ceder toda tu información. Este último punto ha dado pie a pensar que se trata de ocultar y de hacer algo malo. Suelen decirte…. si no estás haciendo nada malo, no tienes nada que ocultar. Pero es al contrario: como no hago nada malo no tengo por qué informar al resto del mundo. Dicho lo anterior y para profundizar en lo que pretende y proporciona Bitcoin, hay que conocer y re-visitar muchas cosas que creías entender; volver a conceptos que pensabas que entendías o simplemente volver a estos conceptos pero con una mirada diferente, una mirada más amplia. Como todo, Bitcoin tiene un inicio y ese inicio en realidad no fue con el lanzamiento del whitepaper de Satoshi Nakamoto (te recomiendo ampliamente que leas estas 9 páginas). Iniciando el camino Bitcoin se inició a partir de muchos conceptos, muchas ideas que se fueron acumulando en el pasado. Creo sin lugar a dudas que el gran detonante de todas las ideas que permitieron a Satoshi Nakamoto publicar el whitepaper, fue la madurez de Internet y el movimiento de cypherpunks, quienes desde los 90’s empezaron a trabajar en dotar a Internet de una privacidad que empezaban a visualizar en riesgo. Una crisis financiera y un escrito de 9 páginas Seguramente Satoshi (sea quién sea) ya estaría trabajando desde antes en la idea de Bitcoin, pero no cabe duda de que la crisis financiera de 2008 fue la gran precursora para su lanzamiento. De hecho, los primeros esbozos de la idea del Bitcoin fueron compartidos en listas de correo del sitio metzdowd.com (cypherpunk mailing list), donde finalmente, en octubre de 2008, Satoshi Nakamoto, publicó su whitepapeper:“Bitcoin: A Peer-to-Peer Electronic Cash System”. Como ya indicaba, es un documento de tan solo 9 páginas con 12 puntos, que no debes perderte. Vale la pena leerlo, revisarlo, meditarlo y empezar a entrar en el Rabbit Hole. Un consejo: Si se te complica entender los términos y fórmulas matemáticas que vienen en el whitepaper, solo márcalos y continúa leyendo para que captes la idea completa. La pizza millonaria Posteriormente a la publicación de dicho whitepaper, el 3 de enero de 2009, se implementa la red peer to peer de bitcoin, con un protocolo propio, y nace el primer bloque (Genesis block). A partir de ahí, te cuento algunas anécdotas interesantes: El principal objetivo de Bitcoin, es la creación de un sistema de transferencia de valor de manera que se realice de persona a persona. El principio de un gran proyecto Un pequeño paréntesis para tomar contexto: Internet, ha tomado más de 20 años de adopción y desarrollo. Y sigue en evolución. Teniendo en cuenta lo anterior, diré que, con las herramientas avanzadas que se tienen hoy día, Satoshi no solo diseñó un gran proyecto, sino que visualizó el momento ideal y la forma de aplicar muchas de las ideas y principios de verdaderos genios del movimiento por un Internet libre. Gracias a todo ello, se generó la semilla de un sistema de distribución de riqueza diferente. Para mi, ese es el verdadero mérito y la magia de Bitcoin.Satoshi conjugó en su whitepaper conceptos que, como comentaba, hay que entender, re-descubrir o estudiar, y que son tales como: Y muchas más ideas, que, conforme vas ahondando en un tema, te llevan a estudiar otras. No obstante, no te asustes, empieza por lo básico y ahonda tanto como quieras, pero ve poco a poco. Eso sí, una cosa debes tener siempre en consideración: Bitcoin es la posibilidad de tener tu propio banco y ello implica que eres responsable de tus valores y de tu privacidad…pero como en la película Spiderman: La buena noticia es que esas obligaciones son para ti, en tu beneficio y para tu control, cosa que nunca antes habías podido tener. Tienes más información en el menú en la parte de blog, pero si hay algo que deseas comentar, por favor déjame tu comentario y muchas gracias por pasarte por aquí. O mediante Lightning network: ⚡ decentralizedb@getalby.com
Comandos P2P
Comandos del protocolo P2P de Bitcoin Si tienes instalado un nodo completo de Bitcoin, sabrás que el protocolo te proporciona una interfaz de comandos que se realizan a través de un procedimiento remoto de ejecución o RPC por sus siglas en inglés (Remote Procedure Call), los cuales son útiles para realizar validaciones, operaciones y cualquier tipo de ejecución de índole administrativa en tu nodo. Estos comandos pueden ejecutarse desde la consola de Bitcoin (el caso de Bitcoin-Core) o desde un terminal de comandos de linux, windows o unix. Para asegurar que los comandos están activos es necesario activar en el archivo de configuración de bitcoin.conf con la opción server=1 (dependiendo de como accedas a Bitcoin esta opción está habilitada por defecto o no, pero con este parámetro te aseguras de que esta habilitada). Para evitar problemas de configuración o compatibilidad de clientes RPC, Bitcoin provee su propio cliente para la ejecución de comandos a través del cliente bitcoin-cli desde el cual puedes usar como interprete de línea de comandos. Hablar de todos los comandos implicaría prácticamente replica la API de Bitcoin, y no es mi objetivo ni veo que pueda aportar nada, si quieres indagar más, te remiendo entrar en este link. Sin embargo si que trataré de ir incorporando algunos comandos que para mi fueron de utilidad en el aprendizaje básico de Bitcoin. Voy a darte un ejemplo, si ya conoces el mundo de Bitcoin o te das un paseo por este sitio web, encontraras un software, que dicho sea de paso, me gusta mucho y lo encuentro super útil, llamado btc-rpc-explorer. Este software te permite conocer de manera gráfica mucha información de tu nodo, pero no sabes de dónde viene, sin embargo si por ejemplo fueras programador o tuvieras inquietud por hacerte tu propio cuadro de mando para conocer la información de lo que sucede en la red y que es muy útil para entender si hay un alto volumen de transacciones por confirmar, cuál es la dificultad con la que se esta minando, etc., con unos cuantos comandos podrías saberlo. Bitcoin Explorer Aquí el ejemplo. En la imagen, sacada del btc-rpc-explorer y ejecutando tres sencillos comandos podrías conocer la información que se muestra en la imagen, esos comandos son: Otro excelente ejemplo de lo útil que son los comandos y de toda la información que te dan es el comando gettxoutsetinfo Te permite calcular algunas estadísticas sobre la base de datos de UTXO que cada nodo de Bitcoin mantiene. Por toda esta información al ejecutar este comando tarda un poquito más que otros comandos. Otros comandos de ayuda podría ser el que se implementó desde la versión 0.17.0 de Bitcoin Core, fue una nueva API para realizar etiquetado de direcciones ya que anteriormente solo se podía realizar el etiquetado desde la interfaz gráfica del cliente Bitcoin-Qt, esta nueva API incluye algunos comandos que aunque simples pueden ser de utilidad para el etiquetado de las direcciones y para aprovechar ese etiquetado. Por ejemplo, el comando setlabel, recibe de entrada una dirección y un texto o etiqueta, ambos parámetros son obligatorios; con esto le asignas una etiqueta a la dirección que hayas usado, esto es útil para mantener organizada tu información y saber en ¿qué o para qué? haz usado esta dirección y por ejemplo si luego usas el comando getreceivedbylabel, el cual recibe de entrada una etiqueta y otro parámetro de manera opcional que es el número de confirmaciones tendrás el total de bitcoin agrupado bajo esa etiqueta. Otros comandos RPC para interactuar con tu nodo: ★★★★★ O mediante Lightning network: ⚡ decentralizedb@getalby.com
Carteras
Carteras, monederos, wallets o llaveros Existe una gran variedad de información sobre las carteras de bitcoin o wallets, por su termino en inglés. También puedes encontrar información que las menciona como monederos o llaveros, y aunque trataré de explicar qué son y cómo funcionan, quiero advertir que es un tema muy extenso y en continua evolución, por lo que es probable que haya algunas cosas que se me queden en el tintero, pero trataré de hacer un articulo entendible y lo más actualizado que los desarrolladores me lo permitan, también decirte que el artículo es un poco extenso, te pido paciencia, creo que el tema es lo suficientemente importante y lo requiere por lo que puedes leerlo con lápiz y papel en mano y en 2 o 3 partes. ¿Porqué son importantes las carteras? Una cartera es fundamental hablando de Bitcoin, recuerda que Bitcoin es una tecnología y además nueva, en plena evolución, por ello la selección y uso de una cartera va a depender de dos factores (bajo mi punto de vista): Lo segundo pero no menos importante a indicar sobre las carteras, es que más allá del tipo de usuario que seas, lo que tienes que tener super claro es que si no controlas tus claves, si no eres tú y solo tú quién las tiene, NO tienes tus satoshis. Esta es la clave de toda la seguridad y desde mi punto de vista, el punto más importante a tener en consideración a la hora de evaluar tu cartera. Para poner un ejemplo, imagina que tienes un coche, es tuyo pero a pesar de que es tuyo y tu tienes las llaves del mismo, le diste (o te clonó) otro juego de llaves a tu hermana (por ejemplo), por mucho que sea tú hermana, ella tiene acceso a tu coche y en el momento en el que lo considere puede moverlo. En el caso de bitcoin, quién tenga las llaves privadas podría venderlos o enviárselos a otra cartera dónde tu no tengas acceso y por mucho que sepas quién lo hizo, no hay nada que puedas hacer para que te los devuelva si esa persona así no lo quiere. “Independientemente del nivel de conocimiento que tengas o de tus necesidades de uso, lo más importante de una cartera, es que tengas a buen recaudo tus llaves. Si no tienes tus llaves, no tienes tus satoshis!!!” La Seguridad es fundamental Como toda tecnología, Bitcoin no esta exento de los riesgos que conlleva su uso, por ello es muy importante que lo tengas en consideración en todo momento durante el manejo de tus satoshis. La seguridad debe ser referente, tanto a la seguridad informática como la de tu entorno. Nunca realices operaciones en un ordenador que no tengas un alto grado de certeza de que este libre de virus y troyanos. No hagas transferencias desde un móvil que no tengas controlado y siempre, siempre mantén montos pequeños en los dispositivos que tengas conectados, tener tú cartera permanentemente conectada es un factor más de riesgo. Fíjate donde estas operando y en tu entorno, verifica que no haya gente que pueda copiar tus claves, por mucho que te parezcan complicadas de aprender, además de que puedan tomarte una foto, asegúrate de que no haya alguna cámara grabando. Parece paranoia, pero recuerda, es tu dinero de lo que estamos hablando. Estos son solo algunas consideraciones, pero como decía al inicio, Bitcoin es una tecnología y en evolución, por lo que seguramente con el paso de los meses, haya que ir incluyendo nuevas recomendaciones. Tipos de carteras Pasando a los tipos de carteras, existe una gran variedad de puntos de vista sobre la clasificación, y cómo tecnología en evolución, no creo que sea una buena idea entrar en ese debate. De manera general si podríamos decir que existen, por lo menos los siguientes tipos de carteras: Como decía antes, es muy probable que encuentres alguna otra clasificación, bajo mi punto de vista las carteras que conozco a día de hoy se podrían incluir en cualquiera de las clasificaciones anteriores. Hora de la verdad, escoge tu cartera!!! Ahora, lo siguiente sería que selecciones una cartera, para ello en el sitio de bitcoin.org y su selector de carteras que te va guiando en base a algunos criterios como el del tipo, tu experiencia y demás. Existen 4 formatos de direcciones o address que el protocolo de Bitcoin maneja: En los últimos dos formatos de dirección, es dónde pondría foco, ¿porqué?, porque si bien en la mayoría de las transacciones de envío de bitcoin, el que envía es el que paga la comisión de red (el fee), cuando tu quieras gastar los satoshis que recibas de alguien más, te va a tocar pagar a ti la comisión y si tienes un formato de dirección más eficiente, tipo Segwit native pagaras menos comisión de minería, esto tiene que ver con las salidas o UTXOS, dónde a mayor tamaño de la transacción, mayor la comisión a pagar. Otra consideración importante que debes tener en mente es que cada tipo de dirección tiene compatibilidad hacía atrás. Es decir, una dirección Segwit native tiene todos los beneficios de las versiones anteriores. Sin embargo una dirección Legacy no conoce y no puede beneficiarse de ninguna de las mejoras de una Segwit, por ejemplo. Cuando empece me hubiera gustado mucho que alguien me hubiera dado su opinión, por eso yo te voy a recomendar que investigues sobre estas en particular (pero recuerda que siempre es tú responsabilidad decidir, no dejes que nadie te diga lo que tienes que hacer): Una cosa interesante que deberías ver que te ofrezca una cartera es que te permita elegir la comisión que quieres pagar por las transacciones a realizar, no es lo mismo realizar una transacción que quieres que le llegue a alguien en cuestión de minutos, que si te da igual que tarde, en el primer caso deberás pagar una comisión mayor para que tu transacción sea tomada por los mineros en un menor tiempo y en el segundo caso, puedes pagar una comisión menor ya que no te importa esperar más tiempo a que la transacción se procese. Vale, todo bien pero y ¿cómo funciona una cartera? ¿Recuerdas que hemos comentado que Bitcoin es un protocolo y tiene reglas de consenso?, pues todas las carteras de bitcoin, deben cumplir con el protocolo y las reglas para poder registrar transacciones dentro de la red, esto que parece tan trivial, es una de las claves de la seguridad de la red, si una cartera intenta introducir una transacción “falsa”, los nodos la validaran y rechazaran. Siguiendo y sin entrar en detalles técnicos, te diría que la mayoría de las carteras modernas, usan un proceso llamado hierarchical deterministic, el cual proporciona la posibilidad que dada una semilla, se genere una cartera con claves privadas derivadas, las llaves privadas derivan a su vez llaves públicas y las llaves públicas derivan direcciones para la recepción de satoshis (todo ello es parte del protocolo de Bitcoin, para realizarlo entre otras cosas se usa el algoritmo ECDSA). Escríbelas en un papel y guárdalo muy bien, copialas en un dispositivo al que nadie tenga acceso y guárdalo muy bien o usa un software especializado en almacenaje seguro, y no digo que uno u otro, puedes usar todas estas opciones. Otra cosa muy importante, es que el proceso no es reversible, es decir no es posible dada una dirección, llegar a las claves privadas, lo cual blinda de seguridad a tu cartera. Siguiendo con la explicación sobre ¿cómo funcionan las carteras?, estamos en el punto dónde ya generaste tu cartera, ya respaldaste muy bien tus semillas; entonces esa cartera tendrá 2 tipos de llaves, la llave pública y la llave privada, ambas relacionadas a través de un algoritmo matemático seguro, todo esto lo hace el software de la cartera por lo que no tienes que preocuparte. Con la clave pública una cartera puede derivar un sin fin de direcciones, es decir la dirección que podrás usar para recibir satoshis. Así cuando alguien envía satoshis a una dirección, a grandes rasgos lo que sucede es que se genera una transacción (trx) desde una cartera, esa transacción contendrá (a muy grandes rasgos): Es en las salidas o UTXO’s (Unspent Transaction Outputs) donde se tiene el «dinero» para poder gastar. Estas salidas son reconocidas por todos los participantes en la red. La salida contiene dos partes: Las entradas de transacciones son a su vez monedas de una transacción anterior. Para poder hacer uso de las monedas, el protocolo establece mecanismos que permiten validar que esas salidas o UXTO’s son tuyos y que puedes gastarlos o en el caso contrario, que son de quién te los envía y puedes recibirlos. Como todas las transacciones son registradas en la cadena de bloques, se tiene registro de todos los UTXO’s y su último estado, por lo que en realidad lo que existe son registros de transacciones y una cartera, para poder mostrar el saldo que tienes lo que hace es buscar todos los UTXO’s que «pertenecen» a la clave privada de la cartera, suma los totales y te muestra el saldo total y en el proceso inverso, hará lo mismo, sumará todos los UTXO’s que controla la clave privada, verifica que la suma es suficiente para cubrir el gasto y de ser así creará la transacción de gasto. Es decir, por si no he sido claro, las carteras no tienen un concepto de balance o saldo. El protocolo de Bitcoin solo tiene noción de UTXOs, los cuales contienen, un valor particular y el script que identifica quién puede gastarlos. Por lo que para definir el saldo de una wallet, se tiene que calcular la suma de los valores de todos las monedas que pertenecen a la wallet usando la clave correspondiente a esa wallet. La wallet tampoco rastrea los saldos de sus direcciones, sino que considera el conjunto de monedas que puede gastar, es decir las que tiene en toda la billetera y realiza un seguimiento de su valor total. Un último consejo en cuanto la privacidad se refiere, usa una dirección diferente cada vez que vayas a recibir bitcoin, ello evita el el seguimiento por dirección, recordemos que bitcoin es anónimo en cuanto a quién pertenecen las direcciones, pero publico en cuanto a la información de las mismas, por lo que si reciclas direcciones es más fácil para alguien que por ejemplo ya te haya realizado un envió algunas vez, estar monitoreando tu dirección para saber cuantos ingresos más tienes. No se trata de que estés haciendo nada malo, se trata de que nadie que tú no quieras, sepa que haces, son conceptos diferentes la privacidad y el secretismo, tu dirección no es secreta, es privada! Bueno, de manera genérica así funciona una cartera de bitcoin, hay más conceptos e información inmersos en el funcionamiento de una cartera, además de que el tema es un poco complicado, por lo que espero no haberte liado, sin embargo si estas interesado en algunos temas más en particular o hay partes que no han sido claras o quieres profundizar, te invito a que lo comente y poco a poco entre todos iremos enriqueciendo la información. Te agradezco que te hayas tomado la molestia de leerme. O mediante Lightning network: ⚡ decentralizedb@getalby.com
¿Cómo funciona Bitcoin?
¿Cómo funciona Bitcoin? Bitcoin, como indica Satoshi Nakamoto en el whitepaper, es un protocolo o sistema persona a persona que establece un sistema de pago a través de su token, denominado bitcoin. Uno de los muchos objetivos que plantea resolver Bitcoin (con mayúscula refiriéndome al sistema en su conjunto, no al token) es la intermediación. Por ello Satoshi establece en el whitepaper que el sistema de pago debería realizarse de persona a persona y que la confianza debe resolverse a través de pruebas criptográficas que garanticen esos pagos, esto lo hace con la finalidad de evitar que la confianza caiga en manos de un tercero, haciendo que sea en el sistema y en los intervinientes de una transacción en quienes recaiga esa confianza. Para realizar los pagos se utiliza bitcoin (con minúsculas, haciendo referencia al token) y uno de los principales méritos que se consiguen con este token es evitar el doble gasto. Esto que parece tan sencillo de decir, es una de las razones por las que las instituciones financieras han invertido millones de dólares en sistemas informáticos que controlen y eviten el que haya un doble gasto. El problema del doble gasto es inherente al dinero electrónico o digital, ya que si no se lleva un registro instantáneo, se corre el riesgo de que pueda gastarse más de una vez o pueda duplicarse (falsificarse). Y como decía, esto que parece tan trivial, conlleva por detrás un sin fin de conceptos. Bitcoin te «obliga» a estudiar temas tan básicos como el de la inflación, la devaluación, el valor y otros más. A este proceso de ir encadenando la necesidad de profundizar en los diferentes conceptos que subyacen en Bitcoin, es lo que se le suele llamar el mundo Bitcoin como meterse en el Rabbit Hole o caer por la madriguera, lo llaman así en alusión a la metáfora de Alicia, entrando en la madriguera del conejo, en el famoso libro de Alicia en el País de las Maravillas, (ya habláremos de esto en otra ocasión). (Si hay conceptos que no entiendes porque te parecen muy técnicos o no te suenan, simplemente léelos pero no trates de entenderlos, sigue adelante que la idea es que puedas entender sin hacer uso de ellos y si no es así, por favor déjame tus comentarios, la idea es que esto se pueda entender sin necesidad de ello.) Volviendo al tema del doble gasto, Bitcoin lo resuelve haciendo uso de un libro contable digital de manera compartida por mucha gente (Shared Ledger). Es decir, imagina que tienes una serie de participantes conectados en una red (nodos); que cada participante tiene la posibilidad de registrar en un libro contable cada operación que sucede en la red y que cada participante de la red tiene la posibilidad de confirmar que las operaciones que se han registrado son verdaderas. Esa validación se realiza a través de un protocolo previamente establecido y con el que toda la red esta de acuerdo (Proof of Work). Proof of Work o Prueba de Trabajo Se basa en trabajo computacional. Este proceso lo realizan participantes conocidos como mineros, todos los participantes de la red verifican y tienen una «copia» de la cadena de bloques o Blockchain, pero solo los nodos mineros realizan el proceso de validar y añadir registros a la cadena (con el permiso del resto de la red). Dado que el proceso de prueba computacional tiene un costo, es necesario dar un incentivo a los mineros participantes para que lleven a cabo ese trabajo, esa recompensa se denomina Coinbase y empezó con 50 bitcoins por cada bloque que un minero resolvía, a día de hoy esta recompensa esta en 6,25 bitcoins por bloque, pero irá disminuyendo debido a una regla del protocolo que reduce la recompensa a la mitad cada 210,000 bloques, es aproximadamente cada 4 años (aunque en realidad se mide en el número de bloques). A esta regla se le conoce como halving. Características de Bitcoin Gracias a todo lo anterior la red esta dotada de Consenso (Consensus), Procedencia (Provenance), Inmutabilidad (Immutability) y Finalidad (Finality). Estos conceptos, son más complejos de lo que parecen y son los que rigen el funcionamiento de Bitcoin. Y aunque es mi idea explicarlos con mayor detalle más adelante, ahora para simplificar la comprensión en este punto, diremos que: Todos estos conceptos hacen de Bitcoin una tecnología disruptiva, única al momento, que no solo provee de mecanismos de control, de transferencia de valor, sino que además ha provisto de nuevas tecnologías, como Blockchain, la cual es, desde mi punto de vista, una tecnología periférica que se ha puesto de moda y del cual hablaré en otra ocasión con mayor detalle. Bloques Volviendo al funcionamiento de Bitcoin, y como hemos comentado, las operaciones se registran en bloques, esos bloques, tienen una estructura bastante sencilla: Transacciones De toda la estructura anterior, la que tal vez interese más en este momento de la lectura, y por entender dónde estaría el «dinero» dentro de Bitcoin, es la Transacción (trx). Como ya indicaba una transacción contiene otra estructura, que viéndola con un poco más de detalle contiene: Cada campo dentro de toda la estructura del bloque tiene una función en particular y es de importancia, sin embargo para entender en dónde se almacena la referencia al valor de «dinero» que se almacena para una transacción en particular, es de vital relevancia entender que es en las salidas o UTXO’s (Unspent Transaction Outputs) donde se tiene ese «dinero», estas salidas son reconocidas por todos los participantes en la red. UTXO La salida o UTXO contiene dos partes: Para poder hacer uso del UTXO, el protocolo establece mecanismos que permiten validar que esas salidas o UXTO’s son tuyos y que puedes gastarlos y/o en el caso contrario, que son de quién te los envía y puedes recibirlos. Imagina estos UTXOS, como las monedas que puedes gastar, con la salvedad que al ser monedas electrónicas, no las tienes en tu bolsillo (no te asustes, tampoco tienes lo que dice tu tarjeta de débito), sino que están registrados en la cadena de bloques de Bitcoin, que es inalterable, incensurable y que si tienes tus llaves de acceso, nadie puede usar en tu nombre. Si no te ha quedado claro el concepto de UTXO, te dejo este otro artículo donde reviso un poco más a detalle el tema. Podríamos profundizar mucho más y sobre todo en la parte técnica de como funciona Bitcoin, sin embargo, creo que en este punto podríamos darnos una breve idea de como funciona Bitcoin y ver dónde esta la magia que hace que todo esto sea seguro y funcione. Es mi intención ir desarrollando más contenido que profundice en los temas aquí desarrollados y en todos los conceptos básicos y no tan básicos que hacen que esta tecnología sea tan increíble, por el momento lo dejamos aquí.
Evolución de Bitcoin
Evolución de Bitcoin Lejos de lo que puedas creer o te hayan dicho, Bitcoin es una tecnología en plena evolución. A pesar de lo joven que es, 10 años apenas, esta en pleno crecimiento y evolución. No obstante, hay mucho más detrás de lo que hoy conocemos, la historia previa a Bitcoin es la base de su presente y parte de su futuro Internet, es una tecnología relativamente nueva y esta en constante mejora, pues igual, Bitcoin es un protocolo en evolución, robusto y seguro, pero en evolución. Pronto incluiré información a cerca de las capas que componen el desarrollo de Bitcoin, como esta evolucionando y mucha información más al respecto. ★★★★★ O mediante Lightning network: ⚡ decentralizedb@getalby.com