GPG

Från DannoWiki
Hoppa till navigeringHoppa till sök

GPG - GNU Privacy Guard

Installera

  • Säkerställ att gpg är installerat:
sudo apt update && sudo apt install gnupg -y
  • Skapa nycklarna
gpg --full-generate-key

GPG kommer nu att ställa några frågor. Här är de optimala valen idag:

  1. Val av nyckeltyp: Välj (9) ECC and ECC (Elliptisk kurvkryptografi). Det är den moderna standarden som ersatt tunga RSA-nycklar. Den är supersäker, extremt snabb och ger kortare nyckelfiler.
  2. Vilken elliptisk kurva: Välj (1) Curve 25519 (kallas ofta Ed25519 för signering och Cv25519 för kryptering). Detta är kryptovärldens guldstandard just nu.
  3. Giltighetstid: Här väljer du hur länge nyckeln ska gälla. För personligt bruk är 0 (nyckeln går aldrig ut) eller 2y (2 år, vilket är standard i professionella miljöer) bra. Välj 0 om du vill hålla det enkelt lokalt.
  4. Namn och E-post: Ange ditt riktiga namn och den e-postadress du vill koppla till nyckeln (t.ex. den du använder i Thunderbird eller Nextcloud).
  5. Passphrase (Lösenord): Ett popup-fönster kommer att be dig välja ett lösenord för din privata nyckel. Välj något starkt! Utan detta lösenord kan ingen (inte ens du) använda nyckeln för att avkryptera eller signera.

När datorn har räknat klart (vilket går på ett ögonblick med ECC) har du skapat ditt nyckelpar!

Kryptera

  • Testa att kryptera och avkryptera en fil, genom att skapa en testfil:
 echo "Detta är en hemlighet för föreningen 2026." > hemligt.txt
  • Kryptera filen
 gpg --encrypt --recipient "din-epost@adress.se" hemligt.txt

(Ersätt "din-epostadress.se med med den e-post du angav när du skapade nyckeln).

Vad hände nu? GPG letade upp din publika nyckel och låste filen med den.
Du har nu en ny fil som heter hemligt.txt.gpg.
Om du försöker läsa den med cat hemligt.txt.gpg ser du bara binärt skräp.

  • Avkryptera filen

För att låsa upp den använder vi vår privata nyckel. GPG fattar detta automatiskt:

 gpg --decrypt hemligt.txt.gpg > upplåst.txt

Systemet kommer nu att be dig om det lösenord (passphrase) du valde i Steg 1.

Signera (TESTA DETTA)

Signering handlar inte om att dölja innehållet, utan om att bevisa vem som skrev det och att ingen har manipulerat filen.

Det finns tre sätt att göra detta i terminalen:
Alternativ A: Kryptera OCH signera samtidigt (Vanligast för känsliga filer)

 gpg --sign --encrypt --recipient "mottagare@epost.se" hemligt.txt

Detta gör filen oläslig för utomstående, och när mottagaren låser upp den talar GPG om: "Denna fil är signerad av [Ditt Namn] och är intakt."

Alternativ B: "Cleartext"-signering (Perfekt för e-post/meddelanden)
Detta behåller texten läsbar, men lägger till en kryptografisk stämpel i botten.

 gpg --clearsign hemligt.txt

Om du tittar i den nya filen hemligt.txt.asc ser du din text i klartext, följt av ett block med
-----BEGIN PGP SIGNATURE-----. Om någon ändrar så mycket som ett tecken i texten och kör en verifiering, kommer GPG att säga "BAD SIGNATURE".

Alternativ C: Fristående signatur (Det som används för Linux-paket och program)

 gpg --detach-sign hemligt.txt

Detta skapar en helt separat liten fil som heter hemligt.txt.sig.
Du kan skicka själva filen som vanligt, och den som vill kontrollera att den är äkta laddar även ner .sig-filen och kör gpg --verify hemligt.txt.sig hemligt.txt.