Escribe para buscar…

Criptografia

La criptografia te com objectiu la integritat, la confidencialitat i el no repudi de les dades.

Esta página todavía no se ha traducido — se muestra en su idioma original:Català

Introducció

La criptografia és un tema molt estens, però tens sort ja que només cal entendre algunes parts concretes de la criptografia per poder fer-la servir.

La criptografia en general té tres objectius:

  • Integritat. Demostrar que el missatge no ha estat modificat, ni accidentalment ni deliberadament.
  • Confidencialitat. Fer que el missatge sigui il·legible per a ningú, excepte el destinatari previst.
  • No repudi. Poder demostrar que el missatge prové del remitent declarat.

Les diferents eines de criptografia admeten diferents aspectes d’aquests objectius.

Funcions hash

Una funció hash és com una caixa negra que pren una sola entrada i dóna una única sortida.

Una funció hash pren una entrada de longitud arbitrària (un fitxer, un missatge, un vídeo, etc.) i produeix una sortida de longitud fixa (per exemple, 256 bits per a SHA-256).

Una funció hash pren com a entrada qualsevol seqüència de bytes que vulguis i produeix una seqüènica única de pocs bytes com a resultat.

Per exemple la funció SHA-256 sempre torna 32 bytes com a resultat, dona igual que la seqüència d’entrada sigui de 1000 bytes com de 2 Terabytes.

La seqüència de bytes por ser qualsevol cosa, un fitxer de video, audio, etc. perquè a la fi tots son bytes.

I el que és més important, donada la mateixa entrada, la funció hash sempre produeix la mateixa seqüència de bytes.

A un fitxer li pots canviar el nom, però sempre tindrà el mateix hash a no ser que el modifiquis.

Per això el hash pot identificar de manera unívoca un fitxer i el nom del fitxer no

Per qué serveix una funció hash?

Ves a la pàgina web Ubuntu 22.04 LTS (Jammy Jellyfish) daily.

Desde la pàgina web em puc descarregar una ova, i com que és de la pàgina oficial d’Ubuntu puc suposar que no està manipulada.

shell
$ wget https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.ova
...[============================================================>] 601.11M  23.1MB/s    in 30s     
2024-06-13 16:42:02 (19.7 MB/s) - ‘jammy-server-cloudimg-amd64.ova’ saved [630312960/630312960]

De totes maneres, i encara que gairebé ningú ho fa, en aquesta pàgina a més de baixar-te una ISO d’Ubuntu et pots baixar el hash de la ISO per confirmar que la còpia que et baixaràs d’un dels llocs de distribució d’Ubuntu no està manipulada:

1

Si mires el contingut del fitxer SHA256SUMS pots veure que té un hash de la iso.

shell
$ wget -q https://cloud-images.ubuntu.com/jammy/current/SHA256SUMS
$ more SHA256SUMS | grep ova
6b1a026eb2b881158abc8baf2d6f0a1f8e64656b740b7a133bbe42ed52f8cb69 *jammy-server-cloudimg-amd64.ova

El hash és de 32 bytes encara que l’ova sigui de 620MB!

openssl és una aplicació que està instal.lada a tots els Linux, que entre altres coses em permet computar resums.

Per confirmar que tinc una còpia autèntica vaig a computar el hash de l’ova amb l’algorisme SHA-256:

shell
$ openssl dgst -sha256 jammy-server-cloudimg-amd64.ova 
SHA2-256(jammy-server-cloudimg-amd64.ova)= 6b1a026eb2b881158abc8baf2d6f0a1f8e64656b740b7a133bbe42ed52f8cb69
$ more SHA256SUMS | grep ova
6b1a026eb2b881158abc8baf2d6f0a1f8e64656b740b7a133bbe42ed52f8cb69 *jammy-server-cloudimg-amd64.ova

Estás leyendo una vista previa.

Inicia sesión para leer el artículo completo. Cualquier cuenta abre 4 artículos gratuitos al mes; el alumnado y el profesorado leen las páginas de su curso sin límite.

Iniciar sesión