Xifratge simètric i asimètric
Contingut
Xifratge simètric
$ echo "aquest és el missatge que volem xifrar" > missatge.txt $ gpg -c missatge.txt (ens demana un password)
S'ha generat el fitxer missatge.txt.gpg
Ara volem esborrar el missatge original. Ho farem amb l'eina srm (secure rm):
$ sudo apt-get install secure-delete
$ srm -v missatge.txt Using /dev/urandom for random input. Wipe mode is secure (38 special passes) Wiping missatge.txt ************************************** Removed file missatge.txt ... Done
Ara desxifrem el missatge, per tal de recuperar el missatge original:
$ gpg -d missatge.txt.gpg > missatge.txt gpg: dades xifrades amb AES256 gpg: xifrat amb 1 contrasenya $ cat missatge.txt aquest és el missatge que volem xifrar
Nota: si al descrifrar no te pide la clave, no te preocupes, es porque la está “recordando” por un período de tiempo; si reinicias la PC esto cambiará. Es como cuando usas sudo y se guardan los privilegios por unos minutos.
Xifratge asimètric
El que farem:
- Generar un parell de claus públiques i privades
- Exportar la clau pública per tal de què altres persones puguin xifrar arxius amb la nostra clau, i només nosaltres els puguem desxifrar
- Importar la clau pública d'una altra persona i xifrar dades amb aquesta clau pública.
- Desencriptar un arxiu amb la nostra clau privada.
Generar clau pública i privada
$ gpg --full-generate-key gpg (GnuPG) 2.2.19; Copyright (C) 2019 Free Software Foundation, Inc. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Seleccioneu quin tipus de clau voleu: (1) RSA and RSA (default) (2) DSA and Elgamal (3) DSA (només signar) (4) RSA (només signar) (14) Existing key from card La vostra selecció?
Escollim l'opció 1 (clau pública i privada). També escollim clau de 4096 bytes, i que la clau mai caduca. Ens demana introduir un password.
...
gpg: key 1570CB5745D5619E marked as ultimately trusted
gpg: directory '/home/joan/.gnupg/openpgp-revocs.d' created
gpg: revocation certificate stored as '/home/joan/.gnupg/openpgp-revocs.d/5C81A0CF5E19744FF8A364AD1570CB5745D5619E.rev'
s'han creat i signat les claus pública i secreta.
pub rsa4096 2021-10-26 [SC]
5C81A0CF5E19744FF8A364AD1570CB5745D5619E
uid Joan Quintana (clau) <joanqc@gmail.com>
sub rsa4096 2021-10-26 [E]
Exportar la clau pública
Ara hem d'exportar la clau pública:
$ gpg -a --export joanqc@gmail.com > clau_publica.gpg.asc
$ cat clau_publica.gpg.asc -----BEGIN PGP PUBLIC KEY BLOCK----- mQINBGF33GEBEADH8m6Zfw537XCGg3c19xneaxlbNPMLFO3mtc/hlE7htjPOif9/ 8hN9GaJPjEc1n3cFflCzu/l5w8LrHWxWS28iFmE2+wP2VXgh+4o3pFK5xJU8VljQ ... 2IY/oPFHCFMZTskabyeSJYZRoHJt+OtnJMwHi6zVG1pRk0YOKz/WCpnRpywsia3G mjdrHSK2MFLKotva+AdadZuP3auLZw/y8gx6a8z+NAzJvE5F/GQUP3z3jPCRPGv+ JWxe =4fDz -----END PGP PUBLIC KEY BLOCK-----
Importar la clau pública d'un altre usuari
Si otro usuario nos envía su clave pública (o si queremos mostrarle a alguien cómo se importa nuestra clave que acabamos de exportar) la manera de importarla es fácil.
Tenim la clau: clau_publica_parzybyte.gpg.asc
gpg --import clau_publica_parzybyte.gpg.asc gpg: clau FA1321BF19520E34: clau pública "Luis Cabrera Benito (Hola mundo) <contacto@parzibyte.me>" importada gpg: Nombre total processat: 1 gpg: importades: 1
(TBD)
creat per Joan Quintana Compte, octubre 2021