Pd fsrjiwwms wifvixd hip kszivrdrx xsxtshivsw

Dedicat als que persisteixen davant de les dificultats, per insalvables que puguin semblar, fins a obtenir la veritat

IVD IPP? Iq zd wiqepdv irxviziyvi'p irqmk hi pd uydhvmppd wdrkymrdvmd uyi tyndzd piw iwfdpiw. Zmwx hi ppyrc, ldyvmd nyvdx uyi w'dwwiqepdzd jsvgd d ipp. Jmrw m xsx hmvmd uyi d pd wizd qmvdhd zdmk tshiv irhizmrdv uyi ipp xdqei iq vifsrimbmd. Pd qizd iwtivdrgd, djiepmhd m esnd, iw zd vijykmdv ir pd viqsxd iwfpixbd uyi ns q'iuymzsuyiw m uyi viwypxiw uyi rs ivd ipp, s uyi ipp iw fsrjsrkyiw m uyi ns rs dfdeiw wirx ns.

Zdr fsrxmrydv dzdrgdrx fdt d qm dqe hifmwms, m ir xirmv-ps qiw d tvst iq zdmk wirxmv hspsvswdqirx vijivqdx: ipp ldzmd hi wiv ipp, m rs hyexdzd uyi ns ldzmd hi wiv ns. Uydr nd zdmk xirmv ip kvyt, mrxmqmhdhsv m tivmppsw, dp qiy zspxdrx, zd viwypxdv uyi ijifxmzdqirx ipp ivd ipp, m uyi ipp wdemd hi esr fsqirgdqirx uyi ns ivd ns.

Ppyrc uyihdzd pd edxdppd hi Çipd m ip qiy jdqsw "Zirm, zmhm, zmfm". Dzym iq xsfdvmd tivhvi. Uyi tshmd hmv tiv hmkrmjmfdv xdr qiqsvdepi sfdwms? "Dpid mdfxd iwx" iq zd wiqepdv qdwwd sezm m vimxivdxmy. Xsx ip uyi zdmk xvsedv zd wiv p'dzsvvmx "Ix xy, Evyxi?" uyi wikyv uyi rmrky rs vifsvhdvd qdm.

Jmrw m xsx pd qirx h'yr svdhsv irkmrcsw, tivwtmfdg m pyfmh fsq dvd ns iw zd sjywfdv hi jsvqd zivksrcswd m mrfsrjiwwdepi ir mrxymv uyi pm dvvmedzd ip wiy kvdr TYRX M JMRDP.


Apunt matemàtic

Els humans som de natural molt curiosos. Aquest interès pel nostre entorn ha estat una característica essencial que ens ha permès evolucionar com a espècie fins on som ara. Ara bé, aquesta inquietud investigadora té el seu costat fosc. Només cal que dues persones decideixin mantenir una conversa privada perquè una tercera persona no pugui resistir la temptació de fer tot el possible per tafanejar aquesta comunicació privada.

Per defensar els drets dels dos primers, els codificadors desenvolupen mecanismes i mètodes per xifrar la comunicació i així aconseguir mantenir-la privada. Per ajudar el tercer, el tafaner, els descodificadors s'esforcen per trobar mecanismes i mètodes per desxifrar de forma no autoritzada la xarrada privada entre els dos primers.

La història de la codificació (i descodificació) és molt interessant i plena d'anècdotes. Un mètode clàssic el va utilitzar Juli Cèsar. Consistia a canviar cada lletra del text original (i per tant descodificat) per una altra lletra i així produir un nou text ara ja codificat. Es tracta de canviar cada lletra de l'abecedari original per la lletra quatre posicions més enllà del mateix abecedari. La taula de codificació que va utilitzar Juli Cèsar és aquesta:

Per codificar textos, cal buscar la lletra que es vol codificar a la primera filera i canviar-la per la corresponent lletra de la segona filera. Per descodificar textos, tot el que s'ha de fer és buscar la lletra a la segona filera i canviar-la per la corresponent lletra de la primera filera. Per exemple, per desxifrar un text, la lletra 'D' codificada correspon a la lletra 'A'; la lletra 'E' codificada correspon a 'B'; etc. Juli Cèsar devia confiar que la tasca de descodificar el seu text sense conèixer la taula era prou difícil com per a desanimar els descodificadors tafaners.

Aquest mètode de xifratge de textos es pot definir des d'un punt de vista matemàtic. Hi ha dos conjunts (el conjunt de lletres sense codificar i el conjunt de lletres codificades) i una relació entre els dos conjunts (que és el fet de desplaçar cada lletra quatre posicions a l'alfabet). Un descodificador que no conegués la relació entre els dos conjunts buscaria alternatives per esbrinar-la. 

Una tècnica factible amb el mètode de xifratge de Juli Cèsar consisteix a analitzar les freqüències de les lletres que apareixen al text codificat. Per exemple, el descodificador observaria que la lletra 'I' és la que apareix més vegades al relat codificat que has intentat llegir, i sabria que en català la lletra que més vegades s'utilitza és la lletra 'E'. Així doncs, podria substituir totes les lletres 'I' per una 'E'. De la mateixa manera, la lletra 'D' és la segona que més apareix, i en català la segona lletra que més utilitzem és la 'A'. 

Una vegada hagi substituït unes quantes lletres (millor començar per les vocals), podria intentar esbrinar les lletres que li falten buscant les paraules que més s'utilitzen en català. Per exemple, la paraula més utilitzada és la preposició 'DE' i al text codificat la paraula 'HI' apareix moltes vegades: així que la lletra codificada 'H' podria correspondre amb la lletra 'D'. Avançant d'aquesta manera, el descodificador tindrà el text desxifrat en unes quantes hores si ho fa a mà, i en molt menys si té l'ajut d'un ordinador.

L'esperança del codificador és trobar unes regles matemàtiques que siguin com més complicades d'esbrinar millor. La sort del descodificador és que cada vegada s'han desenvolupat màquines de càlcul que han permès accelerar més les operacions i així poder acabar obtenint la regla utilitzada, per complexa que sigui. 

Per exemple, durant la segona guerra mundial els alemanys van dissenyar una màquina que permetia utilitzar regles de codificació molt complexes, que caldria moltes hores de càlcul abans que algú les albirés. I per a llavors, la seva màquina, anomenada Enigma, els hauria permès canviar fàcilment les regles ja utilitzades per unes regles noves. La sort dels aliats va ser comptar en les seves files amb Alan Turing, que va dissenyar unes màquines de càlcul que els permetien provar moltes regles de forma molt ràpida. Aquelles màquines d'Alan Turing utilitzaven elements mecànics, però ja es podrien considerar com uns ordinadors molt primitius.

En l'actualitat, tota la informació que circula per internet es codifica utilitzant les matemàtiques i el potencial de càlcul dels ordinadors. L'algoritme de codificació es coneix com xifrat de clau pública (o RSA) i va ser proposat per Ron Rivest, Adi Shamir i Leonard Adleman en 1972. La regla de codificació es basa en l'aritmètica modular. Quan aquesta aritmètica es va proposar, no tenia cap utilitat pràctica i era poc menys que un joc per tal que els matemàtics estiguessin entretinguts.

Per a codificar un text amb RSA, calen dos nombres primers sobre els quals es realitzen algunes operacions amb àlgebra modular. Tot i que la regla de codificació és coneguda per tothom, allò que es desconeix és un dels nombres primers utilitzats a la regla. El nombre primer privat és la informació que només té el codificador i no la comparteix amb ningú. Cal un segon nombre primer que és públic i sí que es comparteix. Quan algú vol codificar un text, utilitza el seu nombre primer privat i el nombre primer públic de la persona que ha de descodificar el text. En rebre el missatge, en estar codificat utilitzant el seu nombre primer públic, el receptor el podrà descodificar sense problemes.

Per tal que els ordinadors actuals no puguin començar a provar nombres primers a veure si aconsegueixen desxifrar el contingut del text, s'utilitzen nombres primers enormes. Aquests nombres són tan grans que ningú no es podia imaginar que conèixer-los tindria cap utilitat pràctica. 

¿T'imagines que la teva jugadora preferida de futbol tingués a la samarreta el nombre 77119407959408992776820155300527263864372200742365678630027678105714399623154045939140731123684692285690942961135490292162986944327353101381252303737932482823451114141958194053467498712484469550569500487994952905559075632709934056435491415286132329302472787689019397900722796720491316092481635212364527611217? Ningú no seria capaç de recordar-lo, per no parlar de les gegantines dimensions que hauria de tenir la samarreta. Els nombres que s'utilitzen per xifrar dades en internet tenen habitualment aquesta magnitud o més. El teu ordinador trigaria una vida abans no aconseguís trobar quins nombres primers s'han utilitzat per codificar la informació que has consultat a internet. I encara que ho aconseguís, hauria trigat tant que per llavors ja no importaria a ningú el més mínim conèixer aquesta informació.

No hem d'oblidar, però, que el pols constant entre codificadors i descodificadors té tendència a decantar-se pels segons. Per sofisticats i enginyosos que siguin els procediments i les regles del codificador, els descodificadors sempre aconsegueixen sortir-se amb la seva. Tot plegat, és qüestió de tenir un ordinador millor, més ràpid i amb més memòria.

Amb la tecnologia disponible en l'actualitat, les regles matemàtiques del RSA i la magnitud dels nombres primers utilitzats garanteixen la seguretat de les nostres comunicacions. Ara bé, una nova generació d'ordinadors basats en tecnologia quàntica està a punt de veure la llum. Amb aquestes noves màquines, els descodificadors tindran les eines necessàries per tornar a guanyar la partida.

Llavors caldrà que els codificadors comptin amb un equip de persones amb una ment enginyosa que sàpiguen utilitzar el potencial de les matemàtiques per tornar a garantir la nostra privacitat. Aquesta haurà de ser una quadrilla de gent jove, amb capacitat de persistir davant de les dificultats i, sobretot, molt creativa. T'hi apuntes?


Urbano Lorenzo Seva, Reus 2020