Diferencia entre revisiones de «Introducción»

De Bitcoin Wiki
Saltar a: navegación, buscar
 
(No se muestran 18 ediciones intermedias de 3 usuarios)
Línea 1: Línea 1:
 +
== Moneda ==
 +
 
Alicia vive muy lejos de Bob y quiere comprarle sus [http://www.grasshillalpacas.com/alpacaproductsforbitcoinoffer.html 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.
 
Alicia vive muy lejos de Bob y quiere comprarle sus [http://www.grasshillalpacas.com/alpacaproductsforbitcoinoffer.html 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.
  
 +
== Bancos ==
 
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.
 
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.
  
Línea 9: Línea 12:
 
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 <!-- esa ultima parte necesita revisarse con respecto a la versión inglesa ¿Qué trata de decir la versión inglesa con exactitud? -->. 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.
 
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 <!-- esa ultima parte necesita revisarse con respecto a la versión inglesa ¿Qué trata de decir la versión inglesa con exactitud? -->. 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.
  
==Prevenir el robo==
+
=== Las bases para usar Bitcoins ===
 +
===Previniendo el robo===
 +
Para garantizar que una espía, como Eva, obtenga acceso a los bitcoins de otras personas haciendo transacciones en su nombre usamos un [http://es.wikipedia.org/wiki/Criptograf%C3%ADa_asim%C3%A9trica sistema de llaves publicas] para hacer firmas digitales. En este sistema, cada persona, como Alicia y Bob, tienen un par de claves publicas y privadas que se almacenan en una [[Wallet|cartera]]. Sólo el usuario con la clave privada secreta puede firmar un documento tal como una transacción para darle algunos bitcoins a alguien más, pero cualquiera puede validar la firma usando la clave pública del usuario que realiza la transferencia.
 +
 
 +
* Bob le envía su clave publica a Alicia.
 +
* Alicia agrega en la transacción la clave publica de Bob junto con la cantidad que ella desea transferir.
 +
* Alicia firma la transacción con su clave privada secreta.
 +
 
 +
Como resultado, cualquiera que conozca la clave publica de ambos, Alicia y Bob, podrá ver que Alicia está de acuerdo en transferir una cantidad de bitcoinsa Bob, porque nadie más que Alicia tiene la clave privada secreta de Alicia. Ella no es tonta como para darle su clave privada secreta a otra persona; si hiciera esto, haría posible que otra persona firmara transacciones en su nombre, eliminado fondos de su saldo.
  
<!--
+
Luego, cuando Bob transfiera la misma moneda a Carlos, hará lo mismo: Recibir la clave pública de Carlos, añadir la nueva transacción a la cadena de transacciones y firmarla con su clave privada (la de Bob). Pero sólo Bob puede hacer esto, porque sólo Bob tiene la clave privada que es necesaria para firmar, y es la única clave que se corresponde con la clave publica de Bob que ya esta en la cadena.
==Preventing stealing==
 
To guarantee that an eavesdropper, Eve, cannot access other people's bitcoins by creating transactions in their names we use a [[Wikipedia:Public-key_cryptography|public key system]] to make digital signatures. In this system, each person, such as Alice and Bob, has a pair of public and private keys which he/she stores in a safe [[Wallet|wallet]]. Only the user with his secret private key can sign a document, such as the transaction to give some of his bitcoins to somebody else, but any one can validate the signature using the user’s public key.
 
  
* Bob sends his public key to Alice.
+
Ni siquiera Eva puede cambiar a quién pertenecen esas monedas reemplazando la clave pública de Bob con su propia clave pública, porque Alicia firmó la transferencia a Bob usando su clave privada, declarando así que esas monedas le pertenecían a ella y ahora pertenecen a Bob, así la clave privada de Alicia es mantenida en secreto a Eva. Así que, si Carlos acepta que la moneda originalmente estuvo en manos de Alicia, también aceptará el hecho que esa moneda pasó a manos de Bob y ahora se le envía esa misma moneda a él.
* Alice adds Bob’s public key along with the amount she wants to transfer, to the transaction.
 
* Alice signs the transaction with her secret private key.
 
  
As a result, anyone who knows the public keys of both Alice and Bob can now see that Alice agreed to transfer the amount to Bob, because nobody other than Alice has Alice's private key. Alice would be foolish to give her private key to other people, as this would allow them to sign transactions in her name, removing funds from her balance.
+
===Prevención del doble gasto===
 +
Esto es lo que garantizara que Alicia no pueda replicar la moneda y usarla en más de una transacción (esta es la mayor innovación detrás de Bitcoin):
  
Later on, when Bob will transfer the same coins to Charley, he will do the same thing: receive from Charley his public key, add a new transaction to the chain of transactions and sign it with his (Bob) private key. But only Bob can do this, because only Bob has the private key which is necessary for signing and which is the only private key to match Bob’s public key that is already in the chain.
+
* Los detalles de la [[Transacción|transacción]] son [[Red|enviadas y remitidas]] a todas las computadoras o a la mayor cantidad de computadoras posible.
 +
* Una cadena de [[Blocks|bloques]] constantemente creciente, que contiene el registro de todas las transacciones, se mantiene colectivamente por todas las computadoras de la red Bitcoin (cada una de ellas posee una copia completa de este registro).
 +
* Para ser aceptados en la cadena, los bloques de transacciones deben ser válidos e incluir una [[prueba de trabajo]] (un bloque es generado por la red cada 10 minutos).
 +
* Los bloques son encadenados de forma que, si algún bloque es modificado, los bloques restantes tendrán que ser reconstruidos.
 +
* Cuando aparecen múltiples continuaciones válidas en esta cadena, se aceptará sólo la rama más larga y consecuentemente se continuará extendiendo.
  
Eve cannot change who the coins belong to by replacing Bob’s public key with her public key, because Alice signed the transfer to Bob using her private key, declaring that the coins which belonged to her now belong to Bob, and Alice's private key is kept secret from Eve. So if Charley accepts that the original coin was in the hands of Alice he will also accept the fact that this coin was later passed to Bob and now Bob is passing this same coin to him.
+
Cuando Bob observa que la transacción ha sido incluida en un bloque que se ha hecho formar parte de una larga cadena de bloques de rápido crecimiento (extendida con un significativo esfuerzo computacional), puede confiar que la transacción realizada por Alicia ha sido aceptada por la red de computadoras y que será permanentemente registrada, previniendo así que Alicia haga una segunda transacción con la misma moneda.
  
==Preventing double-spending==
+
En teoría, Alicia podría intentar generar bloques falsos en los que su uso anterior de la misma moneda no apareciera, e intentar enviarle estos bloques falsos a todo el mundo para evidenciar que esa moneda sigue siendo de su propiedad. Sin embargo, la anterior transacción, que contenía la firma de Alicia, ya ha sido anunciada y distribuida a un gran número de computadoras de la red bitcoin, y un bloque conteniéndola ya ha sido generado por alguien (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 [[prueba_de_trabajo|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 sus propios medios y algunos de esos nuevos bloques contendrán la transacción previa realizada por Alicia, esto le dirá a Bob que Alicia ya gastó su moneda. La única manera en la que Alicia puede borrar su pasada transacción es creando una cadena paralela que sea más larga que la cadena generada por todos, donde no exista registro alguno de su transacción, porque sólo la cadena más larga es aceptada por la red. Para seguir siendo larga, la cadena paralela de Alicia debe crecer más 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.
This is how we guarantee that Alice cannot replicate the coin and use it in more than one transaction (this is the main innovation behind Bitcoin):
+
Para que esto sea posible, Alicia tiene que poseer de manera permanente bajo su control la mayoría de la potencia de CPU en la red, algo que asumimos que ninguna persona u organización puede hacer. Por lo tanto, mientras que las personas que controlen 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.
  
* Details about the [[Transactions|transaction]] are [[Network|sent and forwarded]] to all or as many other computers as possible.
+
===Anonimato===
* A constantly growing chain of [[Blocks|blocks]] that contains a record of all transactions is collectively maintained by all computers (each has a full copy).
+
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.
* To be accepted in the chain, transaction blocks must be valid and must include [[proof of work]] (one block generated by the network every 10 minutes).
 
* Blocks are chained in a way so that, if any one is modified, all following blocks will have to be recomputed.
 
* When multiple valid continuations to this chain appear, only the longest such branch is accepted and it is then extended further.
 
  
When Bob sees that his transaction has been included in a block, which has been made part of the single longest and fastest-growing block chain (extended with significant computational effort), he can be confident that the transaction by Alice has been accepted by the computers in the network and will be permanently recorded, preventing Alice from creating a second transaction with the same coin.
+
La [[dirección|dirección bitcoin]] de A corresponde matemáticamente a una clave pública similar a esta:
  
In theory, Alice could attempt to generate spoofed blocks in which her past usage of the same coin does not appear and try to send these blocks to everyone as evidence that the coin is still hers. However, that past transaction, which contains a signature from Alice, has already been announced, has already been distributed to a very large number of computers in the bitcoin network and a block containing it has already been generated by someone (otherwise, the first receiver of the coin would have no confirmation). Since the process of generating a valid block is designed to take a [[Proof_of_work|long time]], Alice will be unable to compete with all these computers in the rate at which she can generate blocks. Bob will receive many more blocks from third persons than Alice alone will ever be able to generate, and some of the newer blocks will contain Alice's previous transaction, telling Bob that Alice has already spent her coin. The only way for Alice to remove her transaction is to create a parallel chain which is longer than the one generated by everybody else and which doesn't contain her transaction, as only the longest chain is accepted. To remain the longest, it also has to grow faster than any other chain, so as to prevent any block generator from adding Alice's transaction to the chain. To do that, Alice has to be in a position to permanently command the majority of the CPU power on the network; something we assume no single person or organization can do. Therefore, as long as the people who control a majority of the CPUs are not cooperating with Alice, her transaction will be permanently recorded and she will be unable to create another transaction with the same coin.
+
1PC9aZC4hNX2rmmrt7uHTfYAS3hRbph4UN
  
==Anonymity==
+
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.
Bitcoin "accounts" do not have people's names on them and do not have to correspond to individuals. Each balance is simply associated with a randomly generated public-private key pair and the money "belongs" to whoever has the private key and can sign transactions with it. The transactions that are signed using those keys also don't have to include names.
+
Con el fin de proteger su [[Anonimato|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).
  
A [[Address|Bitcoin address]] mathematically corresponds to a public key and looks like this:
+
===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.
  
:15VjRaDX9zpbA8LVnbrCAFzrVzN7ixHNsC
+
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.
  
Each person can have many such addresses, each with its own balance, and this can make it more difficult to identify which person owns what amount. In order to protect his [[Anonymity|privacy]], Bob can even generate a new public-private key pair for each individual transaction. So David receiving the coin from Charley will not be able to identify who is the second person in the list of transactions (not without asking Charley).
+
Ya que, eventualmente, este incentivo disminuirá, otra forma que tiene Alicia para ganar bitcoins cuando ella genera bloques, es aceptar [[Transaction_fee|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.  
  
==Creation of coins==
+
====Juntándolo todo====
As we saw, both Bob and Charley need to verify that the original coin from Alice is valid. Alice cannot simply generate coins instantly, out of thin air, because the appearance of a coin is a transaction that needs to be accepted by others.
+
Experimente directamente el sistema en acción visitando [http://blockexplorer.com/ Bitcoin Block Explorer]. El sitio le muestra los últimos bloques de la cadena de bloques. La [[Block_chain|cadena de bloques]] contiene el historial confirmado de todas las transacciones que han tenido lugar en el sistema.
  
According to current software, the way that new coins are slowly introduced is this: every computer that manages to generate a block is allowed to put one transaction there in which it gains 50 BTC, without this amount having to come from somewhere. This amount is an incentive for people to perform the computation work required for block generation. However, it is currently agreed that the reward for generating a block will be reduced to half every 4 years. Meaning that, at some point in the year 2013, the majority of the CPUs will stop accepting blocks in which the generating transaction adds 50BTC to the sum of money, and they will only accept blocks adding half that amount. The same thing will happen in the years 2017, 2021, 2025 and so on, unless different Bitcoin client software has prevailed in the network.
+
Compruebe cuántos bloques han sido generados en la última hora; debieran ser alrededor de 6. Compruebe igualmente el número de transacciones y la cantidad total transferida en la última hora (la última vez que lo comprobé fueron 64 y 15.000 respectivamente). Esto debería darle una indicación de cuán activo es el sistema.
  
Since this incentive will eventually diminish, another way for Alice to gain bitcoins when she generates blocks is to accept [[Transaction_fee|transaction fees]]. There is a voluntary transaction fee that can be paid in every transfer of bitcoins, the amount of which is chosen, and paid, by the person who sends the money. This amount is given to the person who generates the "proof-of-work" block in which the transaction appears, which is necessary for the transaction to be accepted. Since Alice is free to include in her block whichever set of transactions she wants, she can choose to include only the transactions with the highest transaction fees. If everybody acts that way, then eventually, and depending on the total number of transactions, a minimum transaction fee will be required for a transaction to appear in the chain of blocks.
+
A continuación, penetremos en uno de estos bloques.
 +
Comience percatándose de que el [[hash|hash]] del bloque comienza por una ristra de ceros, eso es lo que hace tan difícil su elaboración.
 +
El ordenador que generó este bloque tuvo que probar muchos valores "nonce" (listados igualmente en la página de bloques), hasta que encontró uno que generó esta ristra de ceros.
 +
A continuación observe la línea titulada "Previous block" ("Bloque previo"), cada bloque contiene el hash del bloque que lo precede, así es cómo se forma la cadena de bloques.
 +
Ahora observe todas las transacciones que contiene el bloque. La primera transacción son los ingresos ganados por el ordenador que generó este bloque. Eso incluye una cantidad fija de monedas creadas de la nada y posiblemente recolectadas de comisiones sobre otras transacciones del mismo bloque.
  
==Putting it all together==
+
Introdúzcase en cualquiera de las transacciones y verá cómo está compuesta de una o más cantidades que entran y salen. El hecho de que pueda haber más de una cantidad que entra o sale, permite al sistema
Directly experience the system in action by visiting [http://blockexplorer.com/ Bitcoin Block Explorer].
+
'''aun en traducción...'''
The site shows you the latest blocks in the block chain. The [[Block_chain|block chain]] contains the agreed history of all transactions that took place in the system.
+
<!--
Note how many blocks were generated in the last hour, should be around 6. Also notice the number of transactions and the total amount transferred in the last hour (last time I checked it was about 64 and 15K.)
 
This should give you an indication of how active the system is.
 
  
Next, drill into one of these blocks.
 
Start by noticing that the block's [[hash|hash]] begins with a run of zeros, this is what made making it so difficult.
 
The computer that generated this block had to run on many ''Nonce'' values (also listed on the block's page) until it found one that generated this run of zeros.
 
Next notice the line titled ''Previous block'', each block contains the hash of the block that came before it, this is what forms the chain of blocks.
 
 
Now notice all the transactions the block contains. The first transaction is the income earned by the computer that generated this block. It includes a fixed amount of coins created out of thin air and possibly fee collected from other transactions in the same block.
 
Now notice all the transactions the block contains. The first transaction is the income earned by the computer that generated this block. It includes a fixed amount of coins created out of thin air and possibly fee collected from other transactions in the same block.
  

Revisión actual del 20:30 3 jul 2011

Moneda

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.

Bancos

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.

Las bases para usar Bitcoins

Previniendo el robo

Para garantizar que una espía, como Eva, obtenga acceso a los bitcoins de otras personas haciendo transacciones en su nombre usamos un sistema de llaves publicas para hacer firmas digitales. En este sistema, cada persona, como Alicia y Bob, tienen un par de claves publicas y privadas que se almacenan en una cartera. Sólo el usuario con la clave privada secreta puede firmar un documento tal como una transacción para darle algunos bitcoins a alguien más, pero cualquiera puede validar la firma usando la clave pública del usuario que realiza la transferencia.

  • Bob le envía su clave publica a Alicia.
  • Alicia agrega en la transacción la clave publica de Bob junto con la cantidad que ella desea transferir.
  • Alicia firma la transacción con su clave privada secreta.

Como resultado, cualquiera que conozca la clave publica de ambos, Alicia y Bob, podrá ver que Alicia está de acuerdo en transferir una cantidad de bitcoinsa Bob, porque nadie más que Alicia tiene la clave privada secreta de Alicia. Ella no es tonta como para darle su clave privada secreta a otra persona; si hiciera esto, haría posible que otra persona firmara transacciones en su nombre, eliminado fondos de su saldo.

Luego, cuando Bob transfiera la misma moneda a Carlos, hará lo mismo: Recibir la clave pública de Carlos, añadir la nueva transacción a la cadena de transacciones y firmarla con su clave privada (la de Bob). Pero sólo Bob puede hacer esto, porque sólo Bob tiene la clave privada que es necesaria para firmar, y es la única clave que se corresponde con la clave publica de Bob que ya esta en la cadena.

Ni siquiera Eva puede cambiar a quién pertenecen esas monedas reemplazando la clave pública de Bob con su propia clave pública, porque Alicia firmó la transferencia a Bob usando su clave privada, declarando así que esas monedas le pertenecían a ella y ahora pertenecen a Bob, así la clave privada de Alicia es mantenida en secreto a Eva. Así que, si Carlos acepta que la moneda originalmente estuvo en manos de Alicia, también aceptará el hecho que esa moneda pasó a manos de Bob y ahora se le envía esa misma moneda a él.

Prevención del doble gasto

Esto es lo que garantizara que Alicia no pueda replicar la moneda y usarla en más 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 cadena de bloques constantemente creciente, que contiene el registro de todas las transacciones, se mantiene colectivamente por todas las computadoras de la red Bitcoin (cada una de ellas posee una copia completa de este registro).
  • Para ser aceptados en la cadena, los bloques de transacciones deben ser válidos e incluir una prueba de trabajo (un bloque es generado por la red cada 10 minutos).
  • Los bloques son encadenados de forma que, si algún bloque es modificado, los bloques restantes tendrán que ser reconstruidos.
  • Cuando aparecen múltiples continuaciones válidas en esta cadena, se aceptará sólo la rama más larga y consecuentemente se continuará extendiendo.

Cuando Bob observa que la transacción ha sido incluida en un bloque que se ha hecho formar parte de una larga cadena de bloques de rápido crecimiento (extendida con un significativo esfuerzo computacional), puede confiar que la transacción realizada por Alicia ha sido aceptada por la red de computadoras y que será 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 en los que su uso anterior de la misma moneda no apareciera, e intentar enviarle estos bloques falsos a todo el mundo para evidenciar que esa moneda sigue siendo de su propiedad. Sin embargo, la anterior transacción, que contenía la firma de Alicia, ya ha sido anunciada y distribuida a un gran número de computadoras de la red bitcoin, y un bloque conteniéndola ya ha sido generado por alguien (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 sus propios medios y algunos de esos nuevos bloques contendrán la transacción previa realizada por Alicia, esto le dirá a Bob que Alicia ya gastó su moneda. La única manera en la que Alicia puede borrar su pasada transacción es creando una cadena paralela que sea más larga que la cadena generada por todos, donde no exista registro alguno de su transacción, porque sólo la cadena más larga es aceptada por la red. Para seguir siendo larga, la cadena paralela de Alicia debe crecer más 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 control la mayoría de la potencia de CPU en la red, algo que asumimos que ninguna persona u organización puede hacer. Por lo tanto, mientras que las personas que controlen 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.

Juntándolo todo

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.

Compruebe cuántos bloques han sido generados en la última hora; debieran ser alrededor de 6. Compruebe igualmente el número de transacciones y la cantidad total transferida en la última hora (la última vez que lo comprobé fueron 64 y 15.000 respectivamente). Esto debería darle una indicación de cuán activo es el sistema.

A continuación, penetremos en uno de estos bloques. Comience percatándose de que el hash del bloque comienza por una ristra de ceros, eso es lo que hace tan difícil su elaboración. El ordenador que generó este bloque tuvo que probar muchos valores "nonce" (listados igualmente en la página de bloques), hasta que encontró uno que generó esta ristra de ceros. A continuación observe la línea titulada "Previous block" ("Bloque previo"), cada bloque contiene el hash del bloque que lo precede, así es cómo se forma la cadena de bloques. Ahora observe todas las transacciones que contiene el bloque. La primera transacción son los ingresos ganados por el ordenador que generó este bloque. Eso incluye una cantidad fija de monedas creadas de la nada y posiblemente recolectadas de comisiones sobre otras transacciones del mismo bloque.

Introdúzcase en cualquiera de las transacciones y verá cómo está compuesta de una o más cantidades que entran y salen. El hecho de que pueda haber más de una cantidad que entra o sale, permite al sistema aun en traducción...