¿Sabes lo que es un bitcoin?

bitcoin

      José Selvi ( ) nos explica que son los bitcoin, de forma sencilla y entendible para todos nosotros.

     De los bitcoin se ha hablado mucho, y se escribe mucho más, pero nunca he encontrado la forma de poder “traducir” y publicar una entrada que se hiciera entendible a los lectores de este Blog.

    facil Algunas de las entradas de este blog son “traducciones” o interpretaciones de otros artículos técnicos, que entiendo que pueden ser de interés para todos vosotros pero que, por su elevado nivel técnico, no son sencillas de entender. Llevo mucho tiempo intentando explicaros lo que son las “criptomonedas“, el dinero de Internet, pero tengo que confesar que, aunque he empezado a escribir en bastantes ocasiones, jamás he logrado escribir mucho más de un párrafo en “el idioma de los mortales” y hacer comprensible este, para mi, tema de dificilísima traducción.

   navajanegra En una conversación mantenida, durante una cena “en un lugar de la Mancha de cuyo nombre no quiero acordarme…“, (Albacete 😉 ), rodeado de “hackers peligrosos“, ponentes y asistentes de una de las conferencias de seguridad informática más importantes “Navaja Negra“, lancé un órdago a José Selvi ( )


.   Esta entrada nace de nuestra conversación hablando de la dificultad de transmitir ciertos conceptos al público no técnico.

      Jose es ingeniero superior en informática e ingeniero técnico en telecomunicación. Podéis obtener muchisima más información en http://www.pentester.es, así “ahorramos” papel.

BITCOIN (by José Selvi)

selvi

       Hace tiempo, durante las pasadas conferencias “Navaja Negra” en Albacete, tuve la oportunidad de coincidir con Ángel. Yo siempre he presumido de ser capaz de explicarle cualquier cosa técnica hasta a mi madre (que no es nada técnica), así que Ángel me lanzó el reto: ¿Serías capaz de explicar cómo funcionan los bitcoins? Hasta ahora me ha sido imposible sacar tiempo para hacerlo, pero aprovechando las vacaciones… Challenge Accepted!

       Antes de nada tengo que avisar que, dado que el público objetivo de este artículo son personas con pocos conocimientos técnicos, voy a tomarme algunas licencias, simplificando algunos procesos. Si alguien quiere obtener información más técnica de cómo funciona a bajo nivel todo puede acudir a otros documentos como ESTOS:

http://es.slideshare.net/jonmatonis/bitcoin-talk-at-ud4kamp12-by-pancake

https://docs.google.com/open?id=0B3gC0PZRiTpcWnFfejFZQTBKR3M

https://docs.google.com/open?id=0B3gC0PZRiTpcWnFfejFZQTBKR3M&usp=gmail

     divisas En nuestro modelo actual, cada país (o conjunto de países) tienen una moneda a la que dan soporte, es decir, el estado se compromete con los usuarios de esa moneda a que tiene el valor correspondiente y que es válida para intercambiarla por otros objetos. Luego están los bancos, que son entidades (supuestamente) de confianza en los cuales depositamos nuestro dinero y éste se convierte en un número almacenado en una base de datos. Cualquier transacción se realiza, o bien físicamente, intercambiando la moneda, o bien a través del banco, que es el encargado de validar a la persona que realiza la transferencia y realizar las restas y sumas correspondientes en sus bases de datos.

      bitcoin-moneyEl modelo de los bitcoins surgió como una alternativa a éste modelo, huyendo de la necesidad de contar con un respaldo de un país y sin la necesidad de tener que contar con entidades de confianza como los bancos. Para que nos entendamos, es como si todos acordáramos que a partir de este momento podemos pagar con garbanzos, y pusiéramos el precio de todos los objetos que habitualmente vendemos y compramos en garbanzos. Mientras todos estemos de acuerdo en ello, podríamos utilizar el garbanzo como moneda para la compra/venta de bienes.

      ¿Cuál sería el problema con los garbanzos? Que daría lugar a hacer trampas: a que gente plantara sus propios garbanzos para “generar dinero”, por ejemplo ¿Cómo solucionan los Bitcoins estos problemas? Con criptografía, como veremos más adelante. Por este motivo se dice que el bitcoins es una “criptomoneda“.

bitcoin-cripto

      Cuando nos damos de alta se nos asigna una especie de nombre de usuario con el que identificar todas nuestras transacciones, que es una cadena de caracteres de longitud fija, estilo como ésta: 1KgW1oTPTQXAyL6F9eQhfhyS9Hoqva5Zzf

      A priori no hay manera sencilla de saber qué persona física se encuentra detrás de este identificador (aunque no es imposible), motivo por el cual el pago con bitcoins está siendo empleado por algunos delincuentes para obtener el pago de chantajes, como por ejemplo los delincuentes que distribuyen Ransomware.

¿Cómo obtengo bitcoins?

     hand giving bitcoin Hay tres maneras de obtener bitcoins. La primera de ellas es, obviamente, cobrar un trabajo realizado en bitcoins, de tal forma que tu cliente realice una transacción en la que te paga con la cantidad de bitcoins acordados.

.

     La segunda de ellas es comprar bitcoins, de la misma forma que realizaríamos un cambio de euros a dólares, por ejemplo. Para ello hay entidades llamadas “Mercados de Intercambio” que se encargan de cobrarte en la moneda física y realizar una transacción en la que te proporciona el número equivalente de bitcoins (con su correspondiente comisión, como con cualquier otra moneda). Un ejemplo de estas webs es bitstamp.net

    bitcoin-miner La última es ofreciendo tu ordenador para que se realicen una serie de cálculos criptográficos de mantenimiento que son necesarios para el funcionamiento del modelo. Es el llamado “minado“. Las personas que realizan el minado son recompensadas con bitcoins por su trabajo. La manera en que todo esto ocurre la explicaremos más adelante.

¿Cómo se almacena mi dinero?

   guardar Lo cierto es que tu dinero en bitcoins es “omnipresente“, es decir, está en todas partes y en ningún sitio a la vez. Cada vez que alguien te paga con bitcoins o tú compras bitcoins, se almacena en una cadena de transacciones pública llamada “BlockChain” de la que todos los usuarios tienen conocimiento (en la actualidad ocupa alrededor de 20GB). Es como si estuviéramos dentro de un enorme grupo de WhatsApp con todos los usuarios de bitcoins. Si yo escribo ahí que le pago a otro usuario 0.5 bitcoins, automáticamente todos saben que yo tengo 0.5 bitcoins menos y que él tiene 0.5 bitcoins más. Si todos hacemos lo mismo, automáticamente todos tenemos una base de datos local de cuánto dinero tiene cada usuario (a priori no sabemos quién es, solo su identificador).

      Existen unos mecanismos de control para la validación de estas transacciones, pero las explicaremos en detalle más adelante, cuando hablemos de la minería de bitcoins. De momento simplemente entended que cuando se realiza esta transacción, pasados unos minutos, el resto de la red valida la transacción y en ese momento se puede considerar realizada (como si tuviéramos que esperar un “OK” de al menos 10 miembros del grupo de WhatsApp, por ejemplo)

 ¿Cómo ordeno una transacción?

    wallet  Los usuarios de bitcoins disponen de un contenedor llamado “Wallet” (monedero), que habitualmente debería estar en nuestro ordenador (también podríamos tenerlo on-line en algunos sitios que se ofrecen a ello). Ese “Wallet” contiene unas claves criptográficas, similares a las que tenemos en nuestro DNI electrónico. Con estas claves nosotros firmamos las transacciones del mismo modo que firmamos digitalmente nuestra declaración de la renta por Internet. Siguiendo el ejemplo anterior de WhatsApp, no solo diríamos en el grupo “Le pago 0.5 bitcoins al usuario X“, sino que esa transacción iría firmada con nuestras claves criptográficas, para garantizar que nadie puede suplantarnos y hacer transacciones en nuestro nombre.

      Hay que tener especial cuidado con el “Wallet“, ya que es el único medio que tenemos para poder operar con nuestro dinero. En un banco tradicional si olvidas la clave de tu tarjeta o la pierdes puedes ir a sus oficinas, identificarte con tu DNI, y que te generen unas nuevas. Con bitcoins no. Si alguien hackea tu ordenador y te roba tus claves criptográficas es como cuando a una persona le roban las credenciales de acceso a su banca on-line y pasa a poder hacer cualquier tipo de operación bancaria. Por este motivo es recomendable cifrar las claves con una contraseña robusta. Si ocurre cualquier problema que te haga perder las claves de tu “Wallet” (se te olvida la clave de cifrado, pierdes el equipo o se borra) habrás perdido la posibilidad de operar con tu dinero, es decir, lo habrás perdido.

¿Dónde puedo comprar CON bitcoins?

      bitcoin-divLa manera más fácil es entre dos particulares que ambos operen con bitcoins. Hasta donde yo sé, no hay muchos grandes almacenes o tiendas on-line que estén aceptando el pago con bitcoins por el momento, pero sí que han surgido nuevas webs de compra/venta que aceptan esta moneda. En algunos casos, tiendas on-line de fabricantes conocidos, como por ejemplo Dell, aceptan esta moneda, pero es menos habitual.

¿Puedo volver a convertir los bitcoins conseguidos en euros?

      Por supuesto, del mismo modo que podías comprar bitcoins con euros puedes hacer la operación inversa en los mismos “Mercados de Intercambio” que comentábamos antes.

¿Cómo se validan las transacciones?

       bitcoin-transEsta es, en mi opinión, la parte más compleja de todo el modelo de bitcoins. Está muy relacionada con la llamada “Minería de bitcoins“, ya que la validación es realizada por una serie de usuarios que ejecutan un rol especial y a los que se les llama “Mineros“. Cualquiera de nosotros podemos ser simples usuarios o ser mineros. La única diferencia es que el ser mineros requiere que cedamos parte de la capacidad de procesamiento de nuestro ordenador para realizar las tareas criptográficas de validación.

¿Cuáles son esas tareas criptográficas de validación?

mon

      Como comentábamos con anterioridad, cada transacción es enviada a esa especie grupo de WhatsApp formado por todos los miembros de la red (suele ser llamada “Bitcoin P2P Network“). Cada cierto tiempo o si se alcanza un número máximo de transacciones, todas las transacciones realizadas son “empaquetadas” formando un bloque, con lo que iremos teniendo bloques de transacciones, formando una cadena de bloques (el “BlockChain” que comentábamos antes).

      Para evitar que una misma persona realice una transacción anómala y otros mineros bajo su control la validen, se introdujo un mecanismo para evitar que se pueda predecir que mineros van a validar tu transacción. Lo que se hizo fue establecer un valor adicional dentro del bloque, llamado “nonce“. Cada bloque estará formado por las transacciones, la referencia al bloque anterior, y este valor, que deberá ser elegido por cada minero. El valor del “nonce” no puede ser cualquiera, sino que tiene que ser un valor que haga que al realizar una serie de operaciones criptográficas sobre el bloque, el resultado sea una cadena que comience por una cantidad establecida de ceros, como por ejemplo:

000000000000000027f28849760c3d8a8bcc786f8d462a9fe6b413ffdcf9f5db

     Para ello, cada uno de los mineros deberá probar valores aleatorios para el “nonce” (prueba y error) hasta encontrar el valor que haga cumplir esta condición. El primero en encontrarlo lo comunica al resto de la red y habrá sido el ganador del reto. El resto de nodos pararían su cálculo y únicamente validarían que el “nonce” encontrado cumple la condición. En ese momento las transacciones del bloque quedarían validadas.

     La dificultad del reto se va ajustando para que un minero tarde alrededor de 10 minutos (en promedio) en resolver el reto. Esto proporciona el factor aleatorio que se buscaba en la validación, ya que no existe manera de garantizar que vas a encontrar la solución al reto en un tiempo determinado. Evidentemente, cuantas más máquinas tienes calculando la solución al reto, más fácil es encontrarlo.

      Aguja-en-un-PajarPara que nos entendamos, es como si todos los mineros tuvieran que encontrar una aguja en un pajar. La cantidad de paja se va ajustando para que más o menos se controle en cuanto tiempo se va a encontrar la aguja como máximo, y eso proporciona cierta incertidumbre sobre quien va a encontrar la aguja. Luego todos comprueban que de verdad se ha encontrado la aguja, y listo.

En la página https://blockchain.info se puede ver, en tiempo real, como se van generando las transacciones y, cada cierto tiempo, como se van creando y validando los bloques.

¿Cómo se recompensa a los mineros?

  bitcoin-miner2 El trabajo de los mineros, sobretodo la resolución del reto, implica que se tengan que realizar un trabajo de cálculo complejo, y eso desgasta el ordenador y consume energía eléctrica. La manera que tiene la red de recompensar este trabajo es a través de dos mecanismos.

      El primero de ellos son las comisiones. Una transacción puede realizarse ofreciendo una comisión por su validación. Eso agiliza la validación del bloque, ya que habrá más mineros interesados en resolver el reto de un bloque que ofrece una comisión por su validación que resolver el reto de otro bloque que no lo hace. Esta cantidad suele ser relativamente pequeña.

     El segundo medio de recompensa es un mecanismo por el cual el ganador del reto gana una cantidad establecidas de bitcoins, solo por el hecho de resolver el reto. Estos bitcoins son “generados de la nada”, por decirlo así. En sus inicios, la recompensa por la resolución de un reto era de 50 bitcoins, y está establecido que dicha cantidad se irá dividiendo entre 2 cada 4 años, hasta llegar a cero. En este momento la recompensa está establecida en 25 bitcoins, que al cambio serían unos 11.000 euros.

¿Si me pongo a minar ganaré entonces un montón de dinero?

bitcoin-money-

      No exactamente. No se otorga ninguna recompensa por el simple hecho de participar en la resolución de un reto, sino únicamente si eres el primero en resolverlo. Eso quiere decir que si participas con tu ordenador doméstico es probable que siempre haya otros con máquinas más potentes que resuelvan el reto antes que tú, por lo que podrías pasarte años invirtiendo tiempo y dinero y no obtener ningún tipo de recompensa.

    bitHay entidades que se dedican cuasi-profesionalmente a la minería de bitcoins, empleando hardware especializado que realiza los cálculos de forma muy eficiente, gastando muy poca energía, y de forma muy rápida. Es muy difícil para un usuario competir con estas entidades.

      Para aumentar un poco sus posibilidades, los usuarios particulares que quieren hacer minería de bitcoins suelen unirse a comunidades (llamadas “pools“) en las cuales muchos usuarios realizan la resolución del reto de forma conjunta, aumentando sus probabilidades de resolverlo. Si consiguen resolverlo, la recompensa se reparte de forma equitativa entre los miembros (a priori, proporcional a la cantidad de recursos que ha invertido).

      El modelo es similar a cuando un grupo de gente se asocia para jugar un número a la lotería. Al jugar más números aumentan la probabilidad de que les toque. Si no les toca habrán repartido los gastos, y si les toca repartirán los beneficios. Disminuyen el beneficio pero también disminuyen el riesgo.

¿Qué son los litecoins, dogecoins, etc.?

Bitcoin-Litecoin-DogeCoin

      Son otras monedas criptográficas, con modelos muy similares a los Bitcoins, pero no integrado entre sí, es decir, deberás tener un “Wallet” para cada una de ellas, hasta donde yo sé.

      Y hasta aquí la IMPRESIONANTE explicación de José explicándonos lo que es el dinero criptográfico, el dinero de Internet.

      A mí me queda decir dos cosas:

      José, ganaste el órdago con creces, creo que has creado una “guía traducida” sobre las criptomonedas que va a ser utilizada por mucha gente, y te agradezco que hayas elegido este blog para publicarla.

      Y por supuesto, a todos vosotros, hablamos de “dinero“, virtual o no, por ello no debéis olvidar que en Internet…

Nosotros somos nuestra mayor vulnerabilidad, pero también nuestro mejor antivirus.

 

Nos vemos en la red…

X1RedMasSegura

email

3 pensamientos en “¿Sabes lo que es un bitcoin?

  1. Pingback: Bitacoras.com

  2. Hola José, tu info sencillamente esta completa y tiene todo lo que necesitamos saber para estar al tanto de esta divisa que cada día crece más y tiene más seguidores y empresas que aceptan hacer operaciones con el BTC. Ahora, para bien o para mal estamos en un mundo donde al parecer los pagos digitales son el futuro de las operaciones y sería bueno averiguar más acerca del bitcoin, pues en un futuro no muy lejano podríamos estar haciendo pagos o recibiendo pagos con esta moneda.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *