Criptografia bitcoin què és i com funciona?

Com funciona el xifrat Bitcoin

Quan ens enfrontem a la paraula criptografia o moneda digital usualment pensem en alguna cosa fosc, ocult o que s'usa per a fins misteriosos i poc clars. Aquesta idea està força allunyada de la realitat perquè encara que cripto significa ocult seus objectius són fonamentalment els de protegir la informació fent-la segura, immodificable i infalsificable.

No és una cosa tan diferent al que es fa amb, per exemple, els diners físic, tant en paper com en forma metàl·lica o monedes.

Qualsevol entitat emissora de diners té com a missió més important dificultar a l'màxim la falsificació de la moneda. És per això i no per una altra cosa que els bitllets de banc són tan enrevessats i tenen tants detalls. En aquest cas els elements amb els quals es treballa són:

  • El mateix paper, que és d'una qualitat especial gairebé sempre fabricada exclusivament per a l'entitat emissora.
  • Elements de seguretat com a marques d'aigua, tinta invisible, hologrames, etc.

En el cas de les monedes:

  • Aliatges de metall que proporcionen una densitat i pes molt concrets
  • Gravats complexos que en dificulten la còpia tot i que, avui dia, ja no és tan complicat però, potser, poc interessant per a potencials falsificadors per l'escàs valor de les monedes.

El que està clar és que els diners ha de ser tan infalsificable possible. D'una altra forma podria circular paper moneda en una quantitat tal que el sistema no pogués sostenir-se o provocaria una important caiguda de la seva credibilitat i, per tant, del seu valor.

Les moneda digital són dades que viatgen per la xarxa

En realitat, a Internet tot viatja amunt i avall saltant d'uns ordinadors a altres fins arribar al seu destí. Podríem preguntar-nos si tot el que enviem podria ser llegit o escoltat per altres persones i la resposta és sí, no seria gens complicat en tant i en quant les dades viatgin com a simples dades de text pla. Aquí és on comencem a comprendre l'interessant que seria fer il·legible el que no ens interessi que sigui llegit per algú més que la persona que ha de rebre. I és clar, aquí és on hem de parlar de criptografia.

Sabem que la converses telefòniques poden ser escoltades. Les pel·lícules d'espies ens han familiaritzat amb el concepte de «punxar un telèfon». Això també és senzill perquè la majoria de les telecomunicacions habituals es difonen sense xifrar (o xifrar, que és un altre terme acceptat per la RAE). Igualment els SMS es transmeten com a text llegible i poden ser fàcilment interceptats i llegits per terceres parts.

Però quan es tracta de diners electrònics, la preocupació és la mateixa que amb els diners físic. En aquest cas ha d'existir la seguretat que els diners enviat o transmès sigui legítim i també que no pugui ser interceptat i usat per persones a les que no els pertanyi aquests diners. Afortunadament, les moneda digital resolen elegantment aquests problemes.

Què és la criptografia?

Criptografia és una disciplina que s'ocupa de alterar els missatges de tal manera que no puguin entendre'ls persones no autoritzades. ɐḷɟɐɹƃoʇdıɹɔ ǝp ǝΙdɯıs ǝʇuǝɯɐpɐɯǝɹʇxǝ ɐɯɹoɟ ɐun ɐḷɹǝs oʇxǝʇ XNUMX ɹɐǝʇΙoʌ. Òbviament, a partir d'aquí, els éssers humans hem ideat formes cada vegada més complexes i segures per xifrar missatges.

Aquest és un text que ha estat traduït a codi binari.
01000111 01110101 01100001 01110010 01100100 01100001 00100000 01000011 01110010 01101001 01110000 01110100 01101111 01101100 01101111 01100111 00101110 01100011 01101111 01101101 00100000 01100101 01101110 00100000 01110100 01110101 01110011 00100000 01100110 01100001 01110110
Pots desxifrar-copiant i enganxant aquí (Trobaràs també altres mètodes de xifrat mica més sofisticats)

El text binari anterior també és una forma feble de protegir la informació ja que qualsevol podria adonar-se que és una simple translació a nombres binaris. Així que no ofereix més que una subtil protecció, interessant per a coses poc serioses.

«Hi ha dues classes de criptografia: la criptografia que impedirà que la teva germana petita llegeixi els teus arxius i la criptografia que impedirà als principals governs de l'món llegir els teus arxius»  Bruce Schneier

Per anar arribant a una mica més interessant podríem xifrar un text amb una clau. Això faria que qualsevol que interceptés aquest text no pogués llegir-lo a el no tenir la clau que permet desxifrar-lo. I, per descomptat, que la clau és prou complexa també faria molt difícil intentar esbrinar-a base de força bruta, és a dir, anar provant combinacions fins a trobar alguna cosa que fes llegible el missatge.

Però fins i tot aquí hi ha un punt feble. Perquè el receptor pugui llegir el missatge ha de conèixer la clau. O sigui que haurem de comunicar-ho d'alguna manera amb la qual cosa hi ha algunes probabilitats que algú indesitjable pugui fer-se amb el missatge i la contrasenya. A aquesta manera de xifrar missatges en diem criptografia simètrica perquè el receptor i el transmissor fan servir la mateixa clau o contrasenya.

La màquina Enigma  és una dispositiu mecànic de xifrat simètric que es va utilitzar durant la segona guerra mundial. Bàsicament el que feia era substituir les lletres de el text que es teclejava com en qualsevol màquina d'escriure per altres que venien determinades per la clau que s'hagués configurat movent una sèrie de rotors. Sense conèixer la clau que s'havia emprat era extremadament difícil recuperar el missatge original. existeixen nombrosos simuladors de màquina Enigma. Tenim fins i tot un simulador de la màquina enigma per enviar missatges xifrats per Telegram.

Hi ha una àmplia varietat de tipus de criptografia  però sens dubte és amb el desenvolupament dels processadors informàtics que hem pogut crear formes de xifrat realment segures (de moment).

Les més utilitzades en telecomunicacions són les formes de xifrat asimètric o, més aviat, una combinació de simètric i asimètric. En aquest cas el transmissor i el receptor posseeixen cadascun una clau privada i es intercanvien una claus públiques derivades de les respectives claus privades. D'aquesta manera, només el transmissor i el receptor poden llegir el missatge. Aquest sistema es pot aplicar, per exemple, a l'enviament de correus electrònics. Així, no poden ser llegits per ningú més que receptor i transmissor que han intercanviat les seves claus públiques. Tot i que la clau o claus públiques es derivin de la clau privada aquest procés no és reversible; o sigui, no és possible deduir la clau privada a partir de la clau pública.

Criptografia de Bitcoin

En general totes les moneda digital utilitzen sistemes de xifrat que les fan virtualment infalsificables. Quan envies Bitcoin d'una cartera a una altra, a l'igual que un correu electrònic xifrat, es verifiquen dos cases

  1. S'assegura que el Bitcoin enviat és legítim ja que pertanyia a qui ho transmet.
  2. El Bitcoin només pot ser usat per la persona que posseeix la clau privada de la direcció a la qual es va enviar.

Vegem aquest procés sense massa floritures tècniques:

Les adreces de la teva moneder (La qual es dóna perquè t'enviïn Bitcoin) són les claus públiques. Pot conèixer-les qualsevol ja que només serveixen per a rebre, no per utilitzar el Bitcoin. Aquesta clau pública o direcció s'ha creat a partir d'una clau privada bastant més complexa. La clau privada de l'transmissor s'utilitza per signar la transacció. La clau privada de l'receptor assegura que aquesta direcció (Clau pública) li pertany i per tant podrà usar aquest Bitcoin. Afortunadament tot aquest procés es realitza d'una manera senzilla i intuïtiva sense haver de pensar molt en com es fa ja que s'encarrega d'això aquest programari especial que anomenem wallet o moneder. En general, l'usuari només ha de ocupar-se de posar la direcció Bitcoin (clau pública) a on vol enviar aquests diners, posar la quantitat i prémer el botó "Envia".

Per descomptat, la clau privada és una cosa que només pots conèixer tu. I, d'altra banda, és fonamental guardar una còpia de seguretat (xifrada a més amb una contrasenya) per al cas que el dispositiu que la té emmagatzemada pateixi algun contratemps irreversible. Aquí pots consultar més informació sobre wallets, moneders o carteres electròniques.

És realment segur aquest mètode de xifrat?

De moment ho és a el 100% mentre no exposis les teves claus privades. La generació de claus públiques a partir de la clau privada pot realitzar-se mitjançant diferents algoritmes. Però Bitcoin fa servir l'algoritme que és, sense cap mena de dubte, el més segur conegut, anomenat Elliptic Curve Digital Signature Algorithm (ECDSA). Com el seu nom indica l'algoritme es basa en l'estructura algebraica de corbes el·líptiques sobre camps finits. Una de les seves característiques més importants és que s'aconsegueix com a mínim el mateix nivell de seguretat que altres mètodes provats però amb claus de menor grandària i, per tant, és molt més ràpid. Dit de la manera que qualsevol bon cunyat agradaria recitar de memòria: les transaccions Bitcoin es signen mitjançant el protocol ECDSA basat en els paràmetres secp256k1 en comptes dels més àmpliament usats secp256r1. Aquesta ximpleria, decidida brillantment per Satoshi Nakamoto és la que elimina qualsevol ombra de dubte sobre si d'alguna manera alguna agència secreta de l'món (suposem la NSA, que és la que va desenvolupar realment els paràmetres secp256r1) pogués mitjançant algun portentós esforç informàtic arribar a crackejar la clau mitjançant procediments de força bruta. La part que ens interessa: no hi ha el mínim indici que el protocol de xifrat de Bitcoin hagi estat trencat mai. Però seguirà sent així en el futur? No és possible saber-ho. Parlem de computació quàntica, cosa que teòricament és possible encara quan estem relativament lluny d'aconseguir un ordinador d'aquestes característiques amb el suficient nombre de Qbits com per posar en perill els algoritmes complexos de xifrat. Si això succeís, teòricament res seria segur. Però, d'altra banda, la intel·ligència col·lectiva també pot proposar noves solucions i, recordem, el codi de Bitcoin és obert; per tant tothom podem veure-ho, analitzar-lo i millorar-lo si és necessari.

@sofocles