Bitcoin P2P: de “¿Para qué?” a “Paranoico”

Diego H. Gurpegui
Improve-in
Published in
11 min readOct 5, 2019

Bitcoin posee muchas características que lo hacen único, y de esas características surgen muchos beneficios (o desventajas, depende el punto de vista). Pero si bien muchos de esos beneficios son conocidos por varias personas, eso no implica que realmente se estén aprovechando. Esto tiene que ver con la forma en que utilizamos Bitcoin, porque sí… hay muchas formas de utilizarlo.

En este artículo voy a enfocarme en “Seguridad” y “Privacidad”, y en cómo se ven afectadas dependiendo de la manera en que utilizamos Bitcoin. Pero antes de seguir, algunos descargos para que nos entendamos desde el comienzo:

Cuando hablo de “privacidad” me refiero a la capacidad individual de resguardar datos que nos identifican o identifican nuestras acciones, frente a cualquier sujeto externo que intente accederlos. Teniendo nosotros el control y el poder de decisión de cuándo hacemos visibles esos datos y a quienes.

Hablar de “seguridad” es muy muy amplio, y cuando lo hacemos podemos estar hablando de cosas como: ¿puede alguien hackear mi dispositivo? ¿puede alguien hackear mi wallet y robarme mis bitcoins? ¿es tal o cual software susceptible a fallas y errores? ¿cuando envío una transacción en Bitcoin, llegará a destino?
Por lo tanto, y como no pretendo ser muy minucioso el día de hoy, voy a referirme a todas ellas de manera indistinta bajo el término “seguridad”.

Ahora bien, ¿a qué me refiero cuando digo que hay varias maneras de utilizar Bitcoin, bajo esos dos parámetros? Me refiero a un espectro en la forma de uso que va desde “¿Para qué?” hasta “Paranoico”, y que suele corresponderse con el camino que recorre uno cuando se adentra en este mundo.

Para entender el resto del artículo deberás tener conocimientos mínimos sobre Bitcoin ya que no voy a profundizar en definiciones.

Vamos paso a paso.

Paso 1: “¿Para qué?”

Tenemos nuestros bitcoins en una plataforma (operada generalmente por una empresa), la cual suele ser un exchange o broker de Bitcoin o criptomonedas. Ingresamos con un usuario y contraseña para ver nuestro saldo y desde ahí operamos.

En este esquema no estamos aprovechando ninguna de las ventajas o diferencias que Bitcoin trajo al mundo. Con lo cual… ¿para qué?

Seguridad

En cuanto a seguridad, estamos en una situación muy parecida a la que nos encontramos con los bancos, en donde no disponemos completamente de nuestro dinero ya que el mismo se encuentra resguardado por un tercero y nosotros sólo contamos con el derecho de ordenar que se realiza con él. La diferencia podría radicar en si un sistema bancario nos ofrece más seguridad que una empresa privada para almacenar y operar nuestro dinero.

Privacidad

La privacidad es nula en este aspecto ya que el exchange o broker que utilizo no sólo tiene acceso total a todas mis operaciones con dinero (lo que dice mucho de uno); sino que además, debido a regulaciones, solicitan muchísima información personal para acreditar la cuenta (KYC). Sumado a eso, y debido a dichas regulaciones, nuestra información puede incluso ser accedida por terceros como autoridades gubernamentales que lo requieran.

Paso 2: “sin claves, sin bitcoins”

Este título es una adaptación de la conocida frase de Andreas Antonopoulos “not your keys, not your bitcoins” que hace énfasis en el hecho de que la forma de controlar tus bitcoins (moverlos, gastarlos) es sólo a través del uso de las correspondientes claves privadas.

Por lo tanto el siguiente paso es utilizar una verdadera wallet (billetera/cartera/monedero) de Bitcoin. La misma nos va a permitir tener control de las claves privadas y por lo tanto ser los únicos capaces de firmar/autorizar transacciones para mover fondos.

Seguridad

Ya no dependemos de un tercero para autorizar una transacción de Bitcoin. Además, el resguardo de nuestros bitcoins (la(s) clave(s) privada(s)) es ahora responsabilidad nuestra y está bajo nuestro poder, por lo tanto ningún tercero puede perderlos, robarlos o confiscarlos ya que no tendrían la capacidad de hacerlo en primer lugar.

Privacidad

Al no interactuar directamente con un exchange o broker, que conocen nuestra identidad completa, nuestra privacidad se ve incrementada. Aún existen otras terceras partes involucradas (ya veremos) pero el conocimiento de nuestra identidad por esas partes puede ser bajo o nulo.

Paso 3: “modo hard”

Este paso no es en realidad difícil (o “hard”), sino todo lo contrario. Es apenas una mejora sobre el paso anterior en donde ya tomamos control de nuestras claves. La diferencia es que ahora lo haremos hard-ware.

El problema con tener una wallet en un dispositivo móvil, o incluso en una laptop, es la seguridad (o vulnerabilidad) de dichos dispositivos. Éstos no cuentan con las medidas de seguridad y el hardware preparados para almacenar información crítica como pueden serlo las claves de tus bitcoins que, después de todo, son fondos… ¡y pueden ser muchos! Sumado a eso, dichos dispositivos hoy en día suelen estar online casi todo el tiempo, lo cual presenta un factor de riesgo adicional.

Por este motivo aparecen las hardware wallets, que son simplemente dispositivos físicos del tamaño de un pendrive o una calculadora que almacenan dentro de ellos las claves privadas. No sólo eso, son estos dispositivos los que firman (autorizan) las transacciones a enviar. Hay muchas características de seguridad más que estos dispositivos incluyen, que además varían según marca y modelo, sin embargo eso excede el presente artículo.

Seguridad

Al resguardar las claves internamente y firmar transacciones ahí mismo, las hardware wallets representan una mejora en el manejo de claves privadas. Por lo tanto las claves nunca “tocan” tu dispositivo móvil o laptop evitando riesgos de hack, manipulación o filtración de información. Es un buen avance en materia de seguridad.

Privacidad

Por la forma en que funcionan estos dispositivos por defecto (el buen uso puede alterar esto), no hay mejoras de privacidad con respecto al paso anterior.

Paso 4: “se un Nodo”

Hasta el momento nos aseguramos de controlar las claves que nos permiten controlar nuestros bitcoins. Pero Bitcoin nació también alrededor de la idea de que cada miembro de la red valide las transacciones y se asegure que todas las reglas del sistema se cumplen (el protocolo), sin depender de terceros que lo hagan por nosotros. Para lograr eso, por diseño, cada miembro de la red (un “nodo”) debe poder recorrer el historial completo de transacciones que siempre se hicieron (la “blockchain” de Bitcoin). Sin embargo, hasta el momento no hemos estado haciendo eso ya que las wallets que utilizamos comúnmente suelen conectarse a un servidor central que realiza todo ese trabajo por nosotros. Para hacerlo nosotros necesitamos ser realmente un Nodo de la red de Bitcoin: tener nuestro propio “full-node”.

Este full-node es un software que se encarga de conectarse al resto de los nodos de la red y realiza todas las validaciones necesarias. Las wallets que uno instala en el celular, la computadora, o aquellas que usa desde la web, no suelen cumplir con estos requisitos y por lo tanto no son un nodo. El software full-node más popular es Bitcoin Core, y junto con él también podemos instalar algunas herramientas que nos permitan que nuestras wallets móviles o desktop utilicen nuestro propio full-node para validar transacciones y saldos, en lugar de utilizar los nodos de terceros por defecto. Una de esas herramientas puede ser Electrum Personal Server, que es compatible con varias wallets de mercado, como Electrum (mobile y desktop).

Hoy en día se comercializan pequeños equipos que cuentan con el hardware y software listos para conectar a la red y contar con nuestro propio nodo en minutos (Ej: Casa, Nodl). Uno está confiando en parte en la empresa fabricante, pero en casi todos los casos es un gran progreso.

Seguridad

La seguridad informática de este esquema va a depender de cómo configuremos el entorno completo: desde el nodo, las herramientas complementarias, hasta nuestras wallets y todas las conexiones intermedias. Pero puede lograrse un buen escenario con relativamente poco esfuerzo.

Además, al tener nosotros control del full-node que hace todas las validaciones estamos protegidos ante algún tercero que quiera enviarnos bitcoins en una transacción inválida, u otro tipo de engaños o fallas.

Por último, elegir el software de nuestro full-node (ya sea Bitcoin Core u otro) nos da el poder de elección sobre qué cadena y bajo qué reglas de Bitcoin queremos operar, en caso de que en algún futuro aparezcan redes contrapuestas (como ya ha sucedido).

Privacidad

Aquí es donde más ganamos, ya que cuando dependemos de terceros para consultar nuestros saldos o hacer transacciones, también estamos haciendo visibles todas nuestras direcciones de Bitcoin y los saldos que tenemos. Utilizando nuestro propio full-node la privacidad aumenta considerablemente, siempre y cuando nos aseguremos de nunca utilizar un tercero. En el momento que lo hacemos nuestra privacidad se vuelve otra vez vulnerada sin importar los recaudos que tuvimos previamente.

Paso 5: “contra-espionaje”

Habiendo mejorado mucho nuestra privacidad, todavía pueden quedar algunos cabos por atar. Si bien ya no estamos compartiendo nuestra información financiera de manera deliberada con terceros, aún existen formas en que otros puedan espiarnos y ganar esa información sin nuestro consentimiento ni conocimiento. Entonces debemos ir un paso más allá y proteger la forma en que nuestros datos viajan para que otros no puedan verlos.

Una forma es utilizando VPNs, que básicamente nos permiten conectarnos a Internet a través de una conexión encriptada. Otra alternativa es utilizar la red Tor, un protocolo abierto que permite establecer comunicaciones conceptualmente similares a una VPN pero con participantes aleatorios y anónimos a través de Internet. Muchos software de wallets y de full-nodes vienen configurados para utilizar la red Tor, y eso es de gran ayuda.

Seguridad

La seguridad muchas veces viene de la mano de la privacidad: si nuestra identidad está asociada con información sobre el patrimonio que tenemos y cómo lo utilizamos, corremos riesgo de ser atacados por ello. Ese ataque puede ser con fines de robo/asalto, censura u otros. La privacidad pasa a ser otro aspecto de la seguridad que no debemos descuidar.

Privacidad

Al utilizar conexiones encriptadas y disuadir ojos espías, podemos evitar que alguien en nuestra red local o incluso nuestro proveedor de Internet pueda ver qué hacemos. Además podemos ofuscar información que nos identifique, como el país de origen del que nos conectamos, y así incrementar la privacidad. Claro que si utilizamos un proveedor para VPN él tendrá esta información y tal vez algún dato que nos identifique, pero ya puede ser un avance respecto a un esquema previo. La red Tor mitiga algunos de estos aspectos y suele ser la opción elegida.

Paso 6: “maldita trazabilidad”

Por la manera en que funciona Bitcoin, se requiere de un registro único, abierto, y universal de todas las transacciones realizadas. Es gracias a esto que podemos validar todas las reglas del sistema sin depender de terceros. Sin embargo, esto también implica que los fondos en Bitcoin son trazables por cualquier persona en el mundo, tal vez no directamente con una identidad pero sí de manera seudónima con direcciones. Pero cada vez que realizamos una operación comercial (¿no es ese el fin del dinero?) estamos revelando información que vincula nuestra identidad (o parte de ella) con información de nuestros fondos, sólo por el simple hecho de participar en dicha operación comercial. ¿Cómo podemos escapar de ello entonces?

Existen técnicas que permiten evitar lo mayor posible la trazabilidad en el registro de Bitcoin, y así confundir a quienes quieren vulnerar esa privacidad al punto de que sea tan costoso para ellos que no valga la pena. Una de esas técnicas es el control minucioso de cada bitcoin que poseemos, más específicamente, de los UTXO. Podemos pensarlo como si contáramos con todos billetes papel marcados y tuviésemos que decidir cuidadosamente cuándo y a quién dar cada billete para dificultar la tarea de quien quiera rastrear su recorrido. Otra técnica existente es el mixing (o mezclado) de monedas, que en la práctica se lleva a cabo, por ejemplo, utilizando CoinJoins. Esta técnica permite que muchos participantes junten todos sus bitcoins en un pozo común y luego los retiren de tal manera que un observador externo no sepa exactamente quién retiró qué. Realizar esto reiteradas veces puede hacer que el trabajo de rastreo del origen de ciertos bitcoins sea virtualmente o costosamente imposible. Algunas wallets como Samourai y Wasabi soportan estas funcionalidades.

Seguridad

Una vez más, la seguridad viene de la mano de la privacidad en este caso.

Privacidad

Sumado a las medidas que tomamos para proteger como se almacenan y cómo viajan nuestros bytes en Internet, ahora tomamos medidas para proteger la privacidad de cómo se almacenan y cómo viajan nuestros bitcoins en la red Bitcoin.
Esto puede ser de mucha importancia luego de realizar una transacción que revele información personal. Un ejemplo claro de ello es si uno compra bitcoins a través de una empresa como un exchange o casa de cambio.

Paso 7: “Paranoico”

Aún habiendo llegado hasta aquí, hay mucho más que se puede hacer y mucho más que iremos descubriendo que se puede hacer. Muchos podrán tildarlo a uno de paranoico pero ¿es uno realmente tan paranoico?

A continuación enumero sólo algunas de las medidas adicionales que pueden tomarse para mejorar la privacidad y/o la seguridad en un entorno Bitcoin:

  • Esquema de Shamir o Multifirma (multisig)
    Ambos mecanismos establecen que para acceder a ciertos fondos en Bitcoin, se deban poseer ciertos fragmentos de información (claves). Los cuales pueden estar distribuidos en diferentes localizaciones y de diferentes maneras.
    Los dos mecanismos son diferentes entre sí y funcionan de manera diferente también: Multisig es una funcionalidad propia de Bitcoin, mientras que Shamir es un método para separar una pieza de información (clave) en varias partes combinables bajo ciertas condiciones.
  • Equipos o dispositivos “airgap
    Airgap se refiere a la idea de que un dispositivo no tenga ningún tipo de conexión con el mundo exterior, ya sea por cables o de manera inalámbrica. Puede ser una laptop sin placas de red, o una hardware wallet que no se conecte a una computadora.
    En estas configuraciones, los equipos airgapped se utilizan para la firma de transacciones y así evitar que se filtre cualquier tipo de información.
  • Jaula de Faraday
    La Jaula de Faraday es una caja (o carpa, que también las hay) que permite que el campo electromagnético que está en su interior no sea percibido en el exterior. De esta manera nadie que tenga equipos especiales para detectar dichas emisiones y decodificarlas (si, existen) puede vulnerar la privacidad de lo que sucede dentro de la caja y ver qué transacciones se están firmando y cómo.
  • Mejora de entropía (aleatoriedad)
    Se sabe que el ser humano es malo para generar claves aleatorias, por eso las claves se generan en dispositivos digitales. Aún así, esa aleatoriedad no es total. Por eso se pueden utilizar otras fuentes de entropía al momento de generar claves, como por ejemplo tirar dados.

Entonces, ¿hasta cuál paso?

Cada paso cuenta con ventajas y desventajas, además de un balance entre privacidad, seguridad, comodidad y dificultad. Para saber hasta dónde quiere uno llegar, lo importante es tener en claro qué necesidades se tienen y, fundamentalmente, qué capacidades se tienen. Quedarnos en un paso muy bajo puede significar un sacrificio en seguridad o privacidad innecesario si con un pequeño esfuerzo podemos ir más allá y protegernos. Por otro lado, intentar avanzar más de lo que nuestros conocimientos permiten en un momento dado puede hacer que cometamos errores que pongan en riesgo nuestra seguridad o privacidad aún peor que si nos hubiésemos quedado en un paso previo.

¿Cuál es mi consejo rápido entonces? Preguntarse:

  1. ¿Cuántos bitcoins tengo? ¿Representa eso una porción considerable de mi patrimonio?
  2. ¿Qué necesidad tengo con mis bitcoins? ¿Cómo los pretendo utilizar?
  3. ¿De qué me quiero resguardar? ¿qué riesgos quiero mitigar? ¿A qué le temo?
  4. ¿Qué conocimientos tengo y con qué forma de utilizarlos me siento cómodo?

La respuesta puede ir variando, e incluso te puede motivar a adquirir más conocimientos y poder subir tu modo de uso (si lo necesitás). La seguridad y la privacidad no son metas que uno alcanza y da por terminada su travesía. Son caminos que uno recorre intentando siempre lograr esa asimetría que haga que el costo de romper con nuestra seguridad/privacidad para un atacante sea exponencialmente mayor que para nosotros protegerla.

En este artículo recorrimos diferentes configuraciones de manera simple y en algunos casos superficial. El tópico puede volverse complejo, pero no es algo a lo que haya que tener miedo ya que cualquier persona es capaz de aprender y entender sobre esto. A fin de cuentas, es el precio que uno debe pagar por tener soberanía total sobre su dinero… y lo vale.

Y no olvides tu sombrero de aluminio, esas ondas cerebrales pueden leerse hasta acá.

Enlaces útiles

--

--

Diego H. Gurpegui
Improve-in

Co-founder & partner at Improve-in — Software Engineer — Volunteer at ONG Bitcoin Argentina — Speaker or teacher sometimes — Into Bitcoin, fintech and more.