Xifrat Digital

Xifrat digital: què és AES i com protegeixen les nostres dades?

Cada dia enviem missatges, fem compres per Internet, accedim al banc, guardem fotografies al núvol o compartim documents. En molts d’aquests processos hi ha una tecnologia que treballa de manera invisible: el xifratge.

El xifratge permet convertir informació que qualsevol persona podria llegir en una seqüència de dades aparentment incomprensible. Només qui disposa de la clau adequada pot recuperar la informació original.

Però no existeix un únic sistema de xifratge. AES, ChaCha20, RSA, ECC, X25519… són noms que apareixen constantment quan parlem de seguretat informàtica, però no tots fan exactament la mateixa funció.


🔐 Què és el xifratge?

El xifratge és el procés de transformar una informació original, anomenada text en clar, en una informació codificada o text xifrat.

De manera simplificada:

Informació original + clau → xifratge → informació xifrada

I per recuperar-la:

Informació xifrada + clau → desxifratge → informació original

La clau és, per tant, un element fonamental.

Un bon sistema criptogràfic no depèn que l’algoritme sigui secret. L’algoritme pot ser públic; el que s’ha de protegir és la clau criptogràfica.


🛡️ AES: Advanced Encryption Standard

AES significa Advanced Encryption Standard i és probablement un dels algoritmes de xifratge simètric més utilitzats actualment.

Va ser adoptat com a estàndard als Estats Units l’any 2001 i ha esdevingut una peça fonamental de la criptografia moderna.

AES utilitza una clau secreta compartida.

Per exemple:

Clau → 256 bits

El mateix secret permet xifrar i desxifrar la informació.

AES utilitza tres longituds de clau

Versió Longitud de clau
AES-128 128 bits
AES-192 192 bits
AES-256 256 bits

Com més gran és la clau, més combinacions possibles existeixen.

AES-256, per exemple, té:

2²⁵⁶ possibles claus

Aquesta quantitat és tan enorme que una cerca exhaustiva de totes les claus és considerada impracticable amb la tecnologia convencional actual.


🔑 Què significa que AES sigui simètric?

AES és un sistema de xifratge simètric.

Això significa que s’utilitza la mateixa clau secreta —o material criptogràfic derivat d’aquesta— per protegir i recuperar les dades.

Podem imaginar-ho com una caixa amb pany:

📄 Document → 🔒 AES + clau → 📦 informació xifrada

I després:

📦 informació xifrada → 🔑 mateixa clau → 📄 Document

El problema és evident:

Com fem arribar la clau secreta a l’altra persona sense que ningú la pugui interceptar?

Aquí entra en joc la criptografia asimètrica.


🔐 Criptografia simètrica i asimètrica

Podem dividir una gran part de la criptografia moderna en dos grans grups.

Criptografia simètrica

Utilitza una clau secreta compartida.

Exemples:

  • AES
  • ChaCha20

És especialment eficient per xifrar grans quantitats de dades.

Criptografia asimètrica

Utilitza un parell de claus:

🔓 Clau pública
🔐 Clau privada

La clau pública es pot compartir.

La clau privada s’ha de mantenir secreta.

Alguns sistemes coneguts són:

  • RSA
  • ECC
  • Ed25519
  • X25519

La criptografia asimètrica és habitualment molt més costosa computacionalment que la simètrica, però resol problemes importants d’intercanvi de claus i autenticació.


🔄 Com treballen juntes?

En realitat, molts sistemes de seguretat no escullen entre AES o criptografia asimètrica.

Utilitzen les dues.

Un exemple molt habitual és una connexió HTTPS.

Simplificant molt el procés:

1️⃣ El navegador contacta amb el servidor.

2️⃣ Es verifica la identitat del servidor mitjançant certificats digitals.

3️⃣ Les dues parts estableixen material criptogràfic compartit.

4️⃣ A partir d’aquí, les dades es protegeixen amb criptografia simètrica.

Això permet combinar:

Criptografia asimètrica → establir confiança i claus

amb:

Criptografia simètrica → xifrar eficientment les dades


⚡ ChaCha20: una alternativa a AES

AES no és l’únic sistema de xifratge simètric modern.

Un altre algoritme molt important és ChaCha20, desenvolupat per Daniel J. Bernstein.

ChaCha20 és especialment interessant en dispositius on el maquinari no disposa d’acceleració específica per AES.

Una combinació habitual és:

ChaCha20-Poly1305

Aquí tenim dues funcions:

ChaCha20 → xifra les dades

Poly1305 → autentica les dades

Això ens porta a un concepte molt important: no n’hi ha prou amb amagar les dades.

També hem de poder saber si han estat modificades.


🛡️ Xifrar no és el mateix que autenticar

Imagineu que enviem:

«Transferir 100 €»

El xifratge impedeix que una tercera persona pugui llegir fàcilment el contingut.

Però també volem evitar que algú modifiqui les dades durant el transport.

Per això existeixen els sistemes de xifratge autenticat, coneguts com a AEAD (Authenticated Encryption with Associated Data).

Alguns exemples són:

  • AES-GCM
  • AES-CCM
  • ChaCha20-Poly1305

Aquests sistemes proporcionen simultàniament:

🔒 Confidencialitat
Les dades no poden ser llegides fàcilment.

🛡️ Integritat
Podem detectar modificacions.

✅ Autenticitat
Podem verificar que les dades provenen de qui correspon, dins del model de seguretat utilitzat.


🔢 I què és RSA?

RSA és un dels sistemes de criptografia asimètrica més coneguts.

A diferència d’AES, RSA utilitza:

una clau pública + una clau privada

La seva seguretat està relacionada amb la dificultat de determinats problemes matemàtics, especialment la factorització de nombres enters grans.

RSA ha estat fonamental en la història d’Internet i continua existint en nombrosos sistemes.

Tanmateix, en protocols moderns s’estan afavorint altres tècniques, especialment basades en corbes el·líptiques, per a moltes funcions criptogràfiques.


🧮 ECC: criptografia amb corbes el·líptiques

ECC, Elliptic Curve Cryptography, és una família de tècniques de criptografia de clau pública.

Un dels seus grans avantatges és que pot proporcionar nivells de seguretat comparables als de sistemes tradicionals utilitzant claus molt més petites.

Dins d’aquest ecosistema trobem algorismes com:

  • X25519
  • Ed25519
  • ECDSA
  • ECDH

No tots fan exactament la mateixa funció.

Per exemple:

X25519 → intercanvi de claus

Ed25519 → signatures digitals

Aquesta distinció és important perquè una signatura digital no és simplement un sistema de xifratge.


✍️ Què és una signatura digital?

Una signatura digital permet demostrar que una determinada informació ha estat signada amb una determinada clau privada.

El receptor pot utilitzar la clau pública corresponent per verificar la signatura.

Això permet comprovar, segons el sistema utilitzat:

  • qui ha signat la informació;
  • que no ha estat modificada;
  • que la signatura correspon a la clau privada associada.

És un mecanisme essencial per a certificats digitals, programari signat i moltes comunicacions segures.


#️⃣ I què és un hash?

Aquí apareix un altre concepte que sovint es confon amb el xifratge.

Una funció hash transforma una entrada de qualsevol mida en una empremta digital de longitud determinada.

Per exemple:

Document → SHA-256 → empremta de 256 bits

Alguns algoritmes coneguts són:

  • SHA-256
  • SHA-512
  • SHA-3
  • BLAKE2
  • BLAKE3

Un hash criptogràfic no està pensat per recuperar el document original.

Per això:

Xifratge ≠ Hash

El xifratge està pensat per poder recuperar la informació mitjançant la clau adequada.

El hash està pensat per obtenir una empremta de la informació.


🧩 Per què necessitem tants sistemes?

Perquè cadascun resol un problema diferent.

Tecnologia Funció principal
AES Xifratge simètric
ChaCha20 Xifratge simètric
RSA Criptografia de clau pública
ECC Criptografia de clau pública
X25519 Intercanvi de claus
Ed25519 Signatures digitals
SHA-256 Funció hash
SHA-3 Funció hash
AES-GCM Xifratge + autenticació
ChaCha20-Poly1305 Xifratge + autenticació

🌐 On trobem aquests sistemes?

La criptografia forma part de pràcticament tota la infraestructura digital actual.

🌍 Internet

HTTPS utilitza protocols criptogràfics per protegir les comunicacions entre navegador i servidor.

☁️ Emmagatzematge al núvol

Els serveis d’emmagatzematge poden utilitzar xifratge per protegir les dades durant la transmissió i mentre estan emmagatzemades.

📱 Smartphones

Els sistemes operatius moderns utilitzen criptografia per protegir informació emmagatzemada al dispositiu.

💬 Missatgeria

Les aplicacions amb xifratge d’extrem a extrem utilitzen diferents primitives criptogràfiques per protegir les converses.

💳 Banca electrònica

La criptografia protegeix les comunicacions i permet autenticar usuaris, servidors i transaccions.

🔐 Gestors de contrasenyes

Utilitzen diverses primitives criptogràfiques per protegir les credencials i altres secrets.


⚠️ AES-256 no significa que tot sigui segur

Aquesta és una idea important.

Que un programa digui que utilitza AES-256 no significa automàticament que sigui segur.

La seguretat depèn de molt més:

  • com es genera la clau;
  • com es protegeix;
  • quin mode d’operació s’utilitza;
  • com es generen els vectors d’inicialització o nonces;
  • com s’autentiquen les dades;
  • com es gestionen les contrasenyes;
  • com està implementat el programari;
  • com es protegeixen les claus.

Per exemple, utilitzar un algoritme robust amb una contrasenya feble pot deixar el sistema exposat.

La criptografia és, per tant, un conjunt de mecanismes, no simplement un número com «256 bits».


🚀 I què passarà amb els ordinadors quàntics?

La computació quàntica planteja nous reptes per a alguns sistemes criptogràfics actuals.

En particular, l’algoritme de Shor podria afectar de manera important sistemes de clau pública basats en problemes matemàtics com la factorització i el logaritme discret.

Això afecta especialment sistemes tradicionals com:

RSA i diverses formes d’ECC.

AES també es veu afectat en el model teòric de Grover, però d’una manera diferent. Per això, AES-256 continua tenint un paper important en les estratègies de transició cap a la criptografia postquàntica.

La indústria està avançant cap a nous algoritmes postquàntics, dissenyats per resistir aquest tipus d’atacs.


🧠 En resum

La criptografia moderna és molt més que AES.

Podem imaginar-la com una caixa d’eines:

🔒 AES / ChaCha20
Per xifrar dades.

🔑 RSA / ECC / X25519
Per establir confiança, intercanviar claus o treballar amb criptografia de clau pública.

✍️ Ed25519 / ECDSA
Per signatures digitals.

#️⃣ SHA-256 / SHA-3 / BLAKE2 / BLAKE3
Per obtenir empremtes criptogràfiques.

🛡️ AES-GCM / ChaCha20-Poly1305
Per protegir dades proporcionant xifratge i autenticació.

La propera vegada que vegis el cadenat 🔒 del navegador, darrere d’aquella petita icona hi haurà tot un conjunt de tècniques matemàtiques treballant conjuntament per protegir la comunicació.

La criptografia és, en definitiva, una de les peces fonamentals sobre les quals es construeix la seguretat del món digital.

Darrera actualització el 27 de setembre de 2026