The Spanish wiki is no longer maintained and is in read-only mode. Information contained within may be inaccurate or outdated. Please go to the English wiki for more up to date information.
Traducción automática del inglés: la wiki en español ya no se mantiene y está en modo de solo lectura. La información contenida en ella puede ser inexacta o estar desactualizada. Visite la wiki en inglés para obtener información más actualizada.
Introducción
Alicia vive muy lejos de Bob y quiere comprarle sus calcetines de Alpaca. A cambio, ella quiere enviarle un billete de un dolar a él. El billete de un dolar es una pieza de papel que es fácil de crear (por aquellos que pueden), que es aceptado por la gente en cambio por productos de valor y servicios en el mundo real, como los calcetines que Alicia quiere comprar. Algo sencillo que puede hacer Alicia es poner el billete de un dolar dentro de un sobre, enviarlo por correo a Bob, y esperar que Bob le envié los calcetines a ella.
Otra cosa que puede hacer Alicia es "transferir" el dinero a Bob. Lo que ella debe hacer primero es darle su billete de un dolar a una institución llamado Banco, el trabajo de susodicha institución es la de resguardar el dinero de Alicia, a cambio, Alicia recibe una promesa por escrito (llamado "estado de cuenta") que, cuando ella lo desee, puede ir al banco y tomar de vuelta la misma cantidad de dolares que ella deposito. Puesto que el dinero sigue siendo de Alicia, ella esta en propiedad de hacer lo que a ella mas le convenga con él, y el banco (como la mayoría de ellos), por una pequeña cuota, hará por Alicia el servicio de "dar" el billete de un dolar a Bob. Esto se puede realiza enviando a una persona hasta la puerta de la casa de Bob con el billete de Alicia en la mano (o, mejor aun, con un billete nuevo y reluciente de un dolar por si el billete de Alicia estaba en malas condiciones), pero usualmente esto no es así, el banco de Alicia le envía el billete de un dolar al banco de Bob informándole que ese dinero es para Bob, quien vera el monto añadido a su cuenta en el siguiente estado de cuenta, o, si él esta algo apresurado, en la siguiente ocasión que él contacte al banco preguntando cuanto dinero hay en su cuenta.
Desde luego los bancos tienen muchos clientes, y los bancos tiene empleados que requieren un pago para hacer el trabajo de hablar con la gente y firmar documentos, los bancos en tiempos recientes han comenzado a utilizar maquinas como los cajeros automáticos y páginas web que realizan el trabajo de interactuar con la clientela en lugar de pagarle a empleados para realizar esta labor. La tarea de estas maquinas es la de registrar que es lo que quiere hacer cada cliente con su dinero y, en la medida de los posible, actuar sobre lo que el cliente quiere (por ejemplo, los cajeros pueden entregar dinero en efectivo). Al fin de al cabo existe muy poca participación humana en el proceso la mayoría de las veces. La gente puede saber siempre cuanto dinero les queda, dinero que es resguardado por el banco, y ellos confían en los números que pueden ver en sus estados de cuenta o en los números mostrados en la pantalla de sus computadoras que representa la cantidad de billetes de dolar que pueden sacar del banco en el momento que el cliente lo desee. Ellos pueden estar seguros de eso, pueden aceptar esos números de la misma manera que aceptan papel moneda (esto es similar a cuando la gente comenzó a aceptar papel moneda en lugar del oro o la plata como pago).
De cualquier forma, el hecho es que el uso de las maquinas no cambia la estructura de este sistema, que es, y seguirá siendo, basado en una autoridad central (el banco) que es la responsable de mantener un registro sobre cuanto dinero pertenece a quien. Todos deben confiar en la honestidad de esta autoridad central (p.e: decir la verdad sobre cuanto sobre cuanto dinero en total tienen bajo su custodia, o al menos, la cantidad de papel moneda disponible para ser extraía con una petición previa de los dueños). Además, toda persona debe identificarse a si mismo ante esta autoridad dando su nombre real con el fin de tener de vuelta su dinero o enviar una cantidad de dinero a otra persona.
Bitcoin es un sistema de apropiación y de transferencia voluntaria de una moneda, llamada también, bitcoins, proceso que se hace de manera similar a una transferencia bancaria en linea, pero de manera anónima y sin depender de una autoridad central que decide cual transferencia realizar y cual no . Estos bitcoins son valiosos porque generarlos requiere una cantidad de recursos reales (tiempo de CPU y electricidad), no puede gastarse mas de una vez y tampoco se puede arrebatar sus bitcoins a una persona sin acceder de manera ilícita a su computador personal.
Previniendo el robo
Para garantizar que una espía, como Eva, obtenga acceso a los bitcoins de otras personas haciendo transacciones en su nombre nosotros usamos un sistema de llaves publicas para hacer firmas digitales. En este sistema, cada persona, como Alicia y Bob, tienen un par de llaves publicas y privadas que es almacenado en una cartera. Solo el usuario con la llave privada secreta puede firmar un documento, tales operaciones como una transacción para darle algunos bitcoins a alguien mas, pero, cualquier persona puede validar la firma usando la llave publica del usuario que realiza la transferencia.
- Bob le envía su llave publica a Alicia.
- Alicia agrega la llave publica de Bob junto con el monto que ella desea transferir a la transacción.
- Alicia firma la transacción con su llave privada secreta.
Como resultado, cualquiera que conozca la llave publica de ambos, Alicia y Bob, podrán ver que Alicia esta de acuerdo en transferir una cantidad a Bob de bitcoins, porque nadie mas que Alicia tiene la llave privada secreta de Alicia. Ella no es tonta como para darle su llave privada secreta a otra persona, si hiciera esto, haría posible que otra persona firme transacciones a nombre de ella, eliminado fondos de su saldo.
Luego, cuando Bob transfiera la misma moneda a Carlos, él hará lo mismo: Recibir la llave publica de Carlos, añadir la nueva transacción a la cadena de transacciones y firmarla con su (Bob) llave privada. Pero solo Bob puede hacer esto, porqué solo Bob tiene la llave privada que es necesaria para firmar y es la única llave que coincide con la llave publica de Bob que ya esta en la cadena.
Siquiera Eva puede cambiar a quien pertenecen esas monedas reemplazando la firma publica de Bob con su firma, esto porque Alicia firmo la transferencia a Bob usando su llave privada, declarando así que esas monedas le pertenecían a ella y ahora pertenecen a Bob, asi la llave privada de Alicia es mantenida en secreto de Eva. Así que, si Carlos acepta que la moneda originalmente estuvo en manos de Alicia, también aceptara el hecho que esa moneda paso a manos de Bob y ahora se le envía esa misma moneda a él.
Previniendo el Doble gasto
Esto es lo que garantizara que Alicia no pueda replicar la moneda y usarla en mas de una transacción (esta es la mayor innovación detrás de Bitcoin):
- Los detalles de la transacción son enviadas y remitidas a todas las computadoras o a la mayor cantidad de computadoras posible.
- Una constante y creciente cadena de bloques que contiene un registro de todas las transacciones es colectivamente mantenida por todas las computadoras de la red Bitcoin (cada una de ellas posee una copia completa de este registro).
- Para ser aceptado en una cadena, los bloques de transacción deben ser validos e incluir una prueba de trabajo (éste bloque es generado por la red cada 10 minutos).
- Los bloques son encadenados de esa manera, así que, si algún bloque es modificado, los bloques restantes tendrán que ser re-computados.
- Cuando múltiples validaciones aparecen en esta cadena, se aceptara la rama mas larga y se continuara ampliando aun mas.
Cuando Bob observa que la transacción a sido incluida en un bloque que se a hecho formar parte de una larga de rápido crecimiento cadena de bloques (extendida con un significante esfuerzo computacional) puede confiar que la transacción realizada por Alicia a sido aceptada por la red de computadoras y que sera permanentemente registrada, previniendo así que Alicia haga una segunda transacción con la misma moneda.
En teoría, Alicia podría intentar generar bloques falsos donde su pasado uso de la misma moneda no aparecerá e intentara enviarle estos bloques falsos a todo el mundo como evidencia de que esa moneda sigue siendo de su propiedad. Sin embargo, la pasada transacción, que contenía la firma de Alicia, ya a sido anunciada como también distribuida a un gran numero de computadoras de la red bitcoin, además, un bloque conteniendo esto ya a sido generado por alguien mas (de otro modo, el primer receptor de la moneda nunca hubiera obtenido confirmación alguna). Dado que el proceso de generar un bloque valido esta diseñado para tomar mucho tiempo, Alicia no podrá competir con el resto de computadoras a la velocidad que ella puede generar bloques. Bob recibirá muchos bloques de terceras personas que Alicia nunca podrá producir por su propia cuenta y algunas de los nuevos bloques contendrán la transacción previa realizada por Alicia, esto le dirá a Bob que Alicia ya gasto su moneda. La única manera en la que Alicia pueda remover su pasada transacción es creando una cadena paralela que sea mas larga que la cadena generada por todos donde no exista registro alguno de su transacción, porqué solo la cadena mas larga es aceptada por la red. Para seguir siendo larga, la cadena paralela de Alicia debe crecer mas rápidamente que cualquier otra cadena previniendo así que algún generador de bloques añada la transacción de Alicia a la cadena de transacciones. Para que esto sea posible, Alicia tiene que poseer de manera permanente bajo su comando la mayoría del poder de CPU en la red; algo que asumimos que ninguna persona u organización puede hacer. Por lo tanto, mientras que las personas quienes controlan la mayoría de CPU no cooperen con Alicia, su transacción permanecerá registrada y le sera imposible crear otra transacción con la misma moneda.
Anonimato
Las "cuentas" Bitcoin no contienen en ellas el nombre de las personas y no necesariamente corresponden específicamente a individuos. Cada saldo simplemente se asocia con el par de claves pública-privada generado al azar y el dinero "pertenece" a cualquiera que pueda firmar con la clave privada cualquier transacción de esos fondos. Las transacciones firmadas usando estas claves no incluyen los nombres de las personas que las realizan.
La dirección bitcoin de A corresponde matemáticamente a una clave pública similar a esta:
1PC9aZC4hNX2rmmrt7uHTfYAS3hRbph4UN
Cada persona puede tener muchas direcciones como esta, cada una con su propio saldo, y esto puede hacer más difícil identificar qué persona tiene tal cantidad de dinero. Con el fin de proteger su privacidad, Bob puede generar un nuevo par de claves pública-privada para cada transacción. Así es que David recibe la moneda de Carlos, receptor al que no le será posible identificar quién es la segunda persona en la listas de transacciones (no sin preguntar antes a Carlos).
La creación de monedas
Como vimos anteriormente, Bob y Carlos necesitan verificar que la moneda enviada originalmente por Alicia es válida. Alicia no puede simplemente generar monedas instantáneamente de la nada, porque la aparición de una moneda es una transacción que debe ser reconocida por las demás personas.
De acuerdo con el software actual, la manera en la que nuevas bitcoins son introducidos lentamente en la red es: a cada computadora que genera un bloque se le permite añadir una transacción en él, ganando así unos 50 BTC, sin necesidad de que esta cantidad venga de algún sitio. Esta cantidad es un incentivo para que las personas hagan el trabajo computacional que requiere generar un bloque. Sin embargo, actualmente esta acordado que la recompensa por generar un bloque se ira reduciendo a la mitad cada 4 años. Esto quiere decir que en algún momento de 2013, la mayoría de las CPUs o GPUs dejaran de aceptar bloques que añadan 50BTC al total de dinero, y sólo aceptarán bloques que añadan la mitad de esa cantidad. Lo mismo sucederá en los años 2017, 2021, 2025, etc., a menos que un software cliente Bitcoin diferente haya prevalecido en la red.
Ya que, eventualmente, este incentivo disminuirá, otra forma que tiene Alicia para ganar bitcoins cuando ella genera bloques, es aceptar comisiones sobre transacciones. Existe una comisión voluntaria sobre transacciones que puede pagarse en cada transferencia de bitcoins, cuya cantidad elige y paga la persona que envía el dinero. Esta cantidad se abona a la persona que genera el bloque "prueba de trabajo" en el que aparece la transacción, que es necesario para que la transacción sea aceptada. Ya que Alicia es libre para incluir en su bloque cualquier grupo de transacciones que desee, ella puede elegir incluir sólo las transacciones con las mayores comisiones sobre transacciones. Si todo el mundo actúa de esa forma, eventualmente, y dependiendo del número total de transacciones, se requerirá una mínima comisión sobre transacciones para que una transacción aparezca en la cadena de bloques.
Putting it all together
Experimente directamente el sistema en acción visitando Bitcoin Block Explorer. El sitio le muestra los últimos bloques de la cadena de bloques. La cadena de bloques contiene el historial confirmado de todas las transacciones que han tenido lugar en el sistema. aun en traducción...