¿Por qué Bitcoin es seguro?
La seguridad de Bitcoin es robusta gracias a cómo está compuesta su red, su software y su criptografía. Se trata de una red descentralizada en la que nadie puede decidir sobre los fondos de los usuarios. Gracias a esto, los bitcoins (BTC) pueden considerarse inhackeables e inconfiscables.
1 ¿Por qué la red de Bitcoin es segura?
Bitcoin basa su seguridad en la criptografía, una técnica que sirve para cifrar información utilizando matemáticas. Esto permite ocultar información que está a la vista de todo público, pero que no puede ser comprendida ni interpretada al menos que se cuente con la llave que la descifra. En Bitcoin cada transacción aplica un nivel de criptografía de grado militar, como lo es su algoritmo de cifrado llamado SHA-256.
Desde su concepción, Bitcoin resolvió uno de los principales problemas que experimentos anteriores de criptomonedas no pudieron resolver: el doble gasto. Y lo logra sin la necesidad de utilizar un ente central. De esta manera se evita que una misma cantidad de dinero sea enviada dos o más veces a direcciones diferentes.
Bitcoin fue la solución concebida por Satoshi Nakamoto. Esta persona (o grupo de personas) combinó varias características de seguridad, que permitieron a Bitcoin ser lo que es: seguro e inhackeable. Una de estas es la cadena de bloques o blockchain, un libro de contabilidad público que registra cada una de las transacciones que se realizan en la red. Otra es la prueba de trabajo (PoW) un sistema que evita que verifica la autenticidad de una transacción, a través de acertijos criptográficos. En este último caso son los mineros quienes aportan PoW a la red a través de su poder de cómputo para resolver los acertijos.
Los nodos de red (otra parte de Bitcoin) guardan una copia de toda la cadena de bloques y se actualizan cada vez que un nuevo bloque es añadido, lo que ocurre aproximadamente cada 10 minutos. Si un nodo se apaga, deja de funcionar o es atacado, la red no se ve afectada, gracias a los más de 13 mil copias (nodos) públicos que existen alrededor del mundo (se estima que hay más de 300 mil nodos privados). Esto demuestra que Bitcoin no tiene un único vector de ataque.
Al ser Bitcoin de código abierto, tratarse de una red distribuida y no ser controlado por ningún ente central, la cantidad de poder de cómputo juega un papel fundamental. Para que una transacción sea aprobada, o incluso para que exista un cambio en el protocolo de Bitcoin, el 51% de todo el poder de cómputo debe aprobarlo. De esto se trata el protocolo de consenso basado en PoW.
Ataque del 51%
Un ataque de este tipo, ocurre cuando una entidad controla la mayoría (más del 51%) de los nodos de una red y puede hacer modificaciones sobre ella, ya que posee la mayoría de poder de voto. Mientras más grande y descentralizada es una red, más difícil y costoso es aplicar este tipo de ataques.
2 ¿Cómo se mantiene segura una transacción en Bitcoin?
Es normal escuchar que en Bitcoin una transacción es segura porque es irreversible, pero ¿cómo se logra esto? En primer lugar, hay que tener en cuenta lo que señalábamos anteriormente sobre que PoW sirve para asegurar las transacciones. Para que una transacción se confirme, debe ser aprobada dentro de un bloque en la blockchain de Bitcoin.
Un bloque, en la terminología de Bitcoin, es un conjunto de datos que se agrega a la base de datos de la red. Cada bloque contiene un grupo finito de transacciones. La cantidad de transacciones por bloque se limita según el tamaño de este. Cada bloque suele ocupar alrededor de 1,5 MB de espacio. Para que un bloque se confirme con un grupo de transacciones dentro, los mineros deben resolver los acertijos matemáticos que la red establece.
El nombre «cadena de bloques» proviene de su funcionalidad: cada bloque apunta al bloque anterior de forma encadenada. Es decir, para generar el código del bloque (hash) cuyo valor es único y es generado por parámetros únicos, se utiliza también el hash del bloque anterior. Si se cambiase tan siquiera un mínimo valor del bloque anterior, como una coma o un punto, este cambiaría su hash, cambiando el hash de todos los bloques subsiguientes. Dado que el hash es tan sensible a modificaciones, por más ínfimas que sean, permite que Bitcoin sea inmodificable, auditable y seguro.
Nodos honestos
Los nodos, quienes guardan la copia de la red, tampoco pueden modificar la contabilidad registrada. Cabe recordar que, si se cambia tan siquiera un dígito de cualquier transacción dentro de un bloque, todo el hash terminará cambiado. Por lo que los otros nodos detectarán que se trata de una copia fraudulenta, sin mayor esfuerzo ni auditorías profundas.
Cuando una transacción se aprueba en un bloque es considerada irreversible por el usuario. Quien envíe una transacción, una vez que se confirme, no puede revertirla. La cantidad de confirmaciones se refiere a la cantidad de bloques minados posteriormente al bloque en que se minó la transacción.
Si bien las transacciones son irreversibles a nivel de usuario, el protocolo puede revertir una transacción a causa de una reorganización de cadena, en las cuales una transacción que haya recibido una confirmación, es rechazada. Las reorganizaciones son completamente aleatorias e incidentes no premeditados dentro de Bitcoin.
Reorganizaciones de la cadena
Bitcoin, y cualquier otra criptomoneda que utilice blockchain, puede sufrir de una reorganización. Esto pasa cuando un bloque que es minado y considerado valido, termina por no pertenecer a la cadena de Bitcoin. La causa de ello se debe a que otro bloque tomó el lugar de este. A este tipo de bloques nulos se les considera como huérfanos. Todas las transacciones que fueron minadas en un bloque huérfano vuelven a la lista de espera a ser minadas, también conocida como mempool. Para evitar esto, se recomienda esperar por lo menos 3 confirmaciones. En este punto, las posibilidades de una reorganización son muy improbables y la transacción se considera irreversible.
Bitcoin da incentivos para una red honesta
El protocolo de Bitcoin establece para cada uno de sus actores (mineros, nodos y usuarios) incentivos para mantener la red honesta. Una red honesta es aquella en la que cada uno de los involucrados actúa de forma correcta. Sin embargo, puede ocurrir que estos decidan actuar mal, intentando beneficiarse de algún error en la red. Para evitar esto Bitcoin establece penalizaciones a este tipo de comportamientos.
Por ejemplo, cada minero que mina un nuevo bloque de forma honesta y válida recibe una recompensa de 6,25 BTC, más el total de las comisiones pagadas por las transacciones confirmadas en ese bloque.
Si un minero intentase validar una transacción que incurre en doble gasto, es decir, fondos que ya habían sido gastados previamente, el resto de mineros lo detectarán fácilmente (gracias a la función hash de cada bloque) e invalidarán, dado que tiene que compartir la validación del bloque con toda la red para que se admita la confirmación. En este caso, el minero malicioso perderá el gasto energético que dedicó a resolver el bloque y no recibirá los 6,25 BTC de recompensa más las comisiones.
3 ¿Por qué es seguro el código de Bitcoin?
El código fuente de Bitcoin, su estructura básica informática, es completamente de código abierto. Cualquier persona puede acceder a él, pero no significa que cualquiera pueda modificarlo. Esta es una de las fortalezas que brinda seguridad a Bitcoin.
Al ser Bitcoin de código abierto, cualquier persona con conocimientos técnicos puede auditar el código, saber qué es lo que hace y validar que funcione de forma segura. La auditabilidad del código es esencial para la seguridad. Actualmente hay grupos de desarrolladores que se dedican a validar que todo funcione correctamente.
Bajo el formato de código abierto, cualquier persona puede proponer mejoras a Bitcoin. Sin embargo, estas deben pasar por un proceso de debate entre desarrolladores, para que finalmente sean incluidas en el código. Si no existe un consenso general de aprobación de la propuesta, esta simplemente no se agrega, o se espera hasta que tenga la aprobación necesaria.
Bitcoin bifurcado
En caso de que, uno o un grupo de desarrolladores, decidan agregar algún cambio a Bitcoin, sin que exista consenso general, y no sea finalmente agregado al código principal, la red se bifurca, creando una nueva copia de Bitcoin. El grupo de desarrolladores lanzará una nueva versión de Bitcoin, que no corresponde al Bitcoin original, con los cambios propuestos. Este tipo de situaciones ya ha ocurrido anteriormente: es el caso de Bitcoin Cash.
4 El software de Bitcoin es compatible con versiones anteriores
Cuando se habla de software, es común recibir actualizaciones. En el caso de Bitcoin, el grupo principal de desarrolladores, conocido como Bitcoin Core, lanza al menos una actualización anual con algún tipo de mejora.
Sin embargo, como en cualquier software (por ejemplo, la app de Twitter de Android o iOS), puede ocurrir que se reciba una actualización fallida que haga que la app entre en mal funcionamiento. En este caso, la solución es esperar a que los desarrollares lancen una nueva versión de emergencia para solventar el problema. Hasta que esto no ocurra, no se podrá seguir utilizando la app, situación que sería fatal si en Bitcoin ocurriese.
Para el caso del software de Bitcoin, este posee compatibilidad con versiones anteriores. Es decir, en el caso hipotético de que una actualización creara un mal funcionamiento, los usuarios pueden ejecutar la versión anterior, y la red de Bitcoin continuaría ejecutándose con normalidad. La única diferencia es que las características nuevas, agregadas en la actualización fallida, no podrán ser utilizadas hasta que se lance una corrección.
5 ¿Por qué es segura una dirección de Bitcoin?
Una dirección es el código alfanumérico que los usuarios de Bitcoin utilizan para recibir fondos. Está compuesta por una clave pública, de donde se deriva la dirección, y una clave privada que permite firmar las transacciones de salida de los fondos depositados en esa dirección.
Las wallets, por su parte, son softwares que administran y resguardan estas direcciones y claves privadas. Las wallets no forman parte del protocolo de Bitcoin, sino que sirven como un servicio que facilita a los usuarios la tarea de recibir y enviar fondos.
Ahora bien, la seguridad de este par (dirección y clave privada) se basa en la criptografía, como todo en Bitcoin. Para generar una clave privada, se utiliza un sistema criptográfico llamado curva elíptica. Esta toma datos aleatorios del dispositivo donde se está generando la clave, ya sea cantidad de números primos en el procesador, hora, fecha, incluso el volumen, para crear un dato único, un hash, que da como resultado la clave privada.
¿Son seguras las wallets de Bitcoin?
Para brindar seguridad, las wallets se deben desarrollan sobre software y hardware seguro. Incluso, hay wallets con hardware dedicado a la seguridad, consideradas las wallets más seguras. No obstante, partiendo de la premisa que las wallets son un administrador de llaves privadas, recae en la responsabilidad del usuario en mantener las llaves seguras. En primer lugar, una wallet debe dar acceso siempre a las llaves. Un exchange, privado, por ejemplo, deja enviar y recibir fondos, pero son ellos quienes administran las llaves. A partir de esto, se ha establecido la máxima bitcoiner que reza: no tus llaves, no tus bitcoins.
La función hash, como ya se explicó, solo permite recrear el valor de salida introduciendo exactamente las mismas entradas. Un solo valor diferente, da como resultado un hash totalmente distinto. Por lo tanto, para replicar la creación de la misma llave privada, se necesita replicar todo lo que estaba ocurriendo en el procesador de este dispositivo en un momento dado, situación que es básicamente imposible.
Tal es la entropía que este sistema criptográfico genera que, en términos matemáticos, si se desea intentar generar llave privada de una dirección, utilizando un super computadoras de alto rendimiento, son necesarios más de 1 septillón de años o 10^24 años. Para encontrar la llave privada correcta los computadores necesitan adivinar un número de entre 1 y 115 duodecillones (un 1 seguido por 72 ceros).
Precacuiones al momento de elegir una wallet
En muchos casos, una wallet puede ser hackeada, no por problemas en la red de Bitcoin, sino por problemas en su construcción sea de hardware o software. Siempre se debe estar al tanto de las noticias sobre las actualizaciones de una wallet, y mantener las llaves seguras.
En foros como BitcoinTalk, algunos usuarios han intentado llevar a cabo hackeos manuales con el objetivo de generar llaves privadas y demostrar la seguridad de Bitcoin. Sin embargo, desde que se creó el hilo en el foro en 2018 hasta la fecha actual, no se ha logrado hackear ninguna dirección.
En resumen, hackear una dirección de bitcoin, buscando obtener la llave privada de forma manual (fuerza bruta), raya lo imposible. Debido a ello, la seguridad de los fondos en una dirección, dependerá del cuidado y resguardo que el usuario le dé a la llave privada, no del protocolo de Bitcoin.
6 Lecturas para seguir aprendiendo
La seguridad de Bitcoin es cuestión de aprendizaje continuo. Desde CriptoNoticias te invitamos a seguir profundizando en Bitcoin y su ecosistema a través de los siguientes artículos:
Fuente original: https://www.criptonoticias.com/criptopedia/por-que-bitcoin-seguro/