Guide til PGP kryptering

Guide til PGP kryptering

Hvad er PGP?

PGP er en populær krypteringsmetode, designet til at kun den rette modtager skal kunne se det krypterede indhold. Krypteringsmetoden kan også bruges til andet end kommunikation, som f.eks at kryptere en hel harddisk – men det er en helt anden snak end den vi skal tage i dag.

Pretty Good Privacy (PGP), blev skabt i 1991 af Phil Zimmermann, og var verdens første datakryptering- og dekrypteringsprogram, hvor man gjorde brug af offentlig kryptografi.

Denne guide tager afsæt i at du er en normal-begavet person med en normal-begavet PC samt besidder en normal-begavet forståelse for det der “EDB”.

Hvis du absolut vil lære mere om den tunge teknik bag PGP og hvad Phil Zimmermann spiser til morgenmad, så hop på Google.

Zimmermann – en guttermand!

Eller herind, og lær lidt mere om PGP’s tekniske design.

Eller bliv hængende, og lær at kryptere beskeder med PGP, så du kan være en lidt sejere ninja online.

Hvordan fungerer PGP?

Når man bruger PGP kryptering til kommunikation, har man to krypteringsnøgler:

  • En offentlig nøgle
  • En privat nøgle

Begge nøgler bliver skabt af personen der bruger dem.

Den offentlige PGP nøgle kan man strø om sig med præcis som man har lyst.

Det er din offentlige nøgle en anden person skal bruge, hvis vedkommende skal sende dig en krypteret besked. Altså, man bruger din offentlige nøgle til at kryptere beskeder med, som man så sender til dig. Når du modtager beskederne, skal du bruge din private nøgle til at låse beskederne op med.

Hvis du skal sende en krypteret besked til en anden, så skal du have vedkommendes offentlige PGP nøgle, til at kryptere beskeden med, inden du sender den.
Such logic, much sense. Wow.

Den private PGP krypteringsnøgle er jo så naturligvis super hemmelig, og må ikke falde i hænderne på de forkerte. Det vil sige: ingen!

Nå, men hvordan foregår det så?

Når du har en anden persons offentlige PGP krypteringsnøgle, og vil sende vedkommende en besked, så skal du først skrive beskeden, derefter smider du den igennem noget software der kan kryptere beskeden til det rene volapyk, ved hjælp af modtagerens offentlige nøgle.

Så, udvekslingen af de offentlige nøgler kan foregå præcis som man har lyst til, og skal man kommunikere med hinanden via PGP, er det naturligvis en fordel at have udvekslet dem forinden.
Hvis man skal skrive til en person man ikke kender, eller ikke har mulighed for at give sin egen offentlige PGP krypteringsnøgle til, kan man altid indsætte sin egen offentlige nøgle som signatur til sidst i beskeden, og på den måde vil modtageren få den, når vedkommende dekrypterer beskeden med sin egen private nøgle.

Det er vigtigt at bemærke, at hvis du downloader en “tilfældig” nøgle som er tilknyttet en person du vil sende en krypteret besked til, kan det i princippet være en helt anden person der har lagt nøglen op. Derfor bør man så vidt muligt altid verificere at den offentlige PGP krypteringsnøgle man downloader, vitterligt tilhører personen man vil kommunikere med.

Det kan dog ikke altid lade sig gøre at bekræfte modtagerens identitet – som hvis du f.eks skal bruge PGP kryptering til at komme i kontakt med købere eller sælgere på Darknet markeder – men her er vi jo så heldige, at der er nogle fantastiske rating-baserede markeder, hvor man i langt de fleste tilfælde kan stole på sælger og køber.

Ydermere er det også vigtig information, at PGP krypteringen ikke er mere sikker end den hardware/software krypteringen/dekrypteringen benyttes på. Det betyder, at hvis din enhed er blevet kompromitteret af hackere, med en trojansk hest, malware eller anden skadelig software der kan opsnappe hvad du trykker på tastaturet, eller aflæse dine RAM imens du bruger enheden etc., så nytter det ikke noget at bruge PGP.

Derfor anbefaler vi naturligvis at du bruger et ikke-persistent styresystem som Tails, eller et andet system der er godt opdateret og velrenommeret når det kommer til brugerens sikkerhed. Det ville være en god idé hvis du læser vores guide til Tails, inden du læser for meget af denne guide. 

Det kan f.eks være den nyeste udgave af iOS på din iPhone, eller en Android telefon fra en af de større producenter, hvor du også sørger for at holde den opdateret med de nyeste sikkerhedsopdateringer fra producenten.

Hvordan bruger jeg PGP?

Der findes mange forskellige klienter hvor PGP kryptering er implementeret fra start, eller hvor man kan slå det til.

I denne guide bruger vi det indbyggede PGP software i styresystemet Tails.

Da PGP kryptering virker på samtlige kendte, udbredte platforme, og der findes utallige gratis, Open Source værktøjer, til kryptering og dekryptering af PGP krypterede beskeder – bør du med afsæt i denne guide også nemt kunne installere og bruge PGP på andre platforme.
Dit valg af platform og software, betyder altså intet for om andre personer kan læse dine PGP krypterede beskeder.

For at bruge PGP korrekt og uden at miste nogle data, som f.eks din private nøgle, skal du have lavet en persistent “Volume” i Tails.
Det er en krypteret container, som kun du kan åbne med dit eget kodeord.

Dette kan du læse mere om i vores guide til installation Tails (som du bør læse inden denne guide, for anden gang.. Nu siger vi det heller ikke mere i denne guide!).

Det er vigtigt at den persistente lagring du laver, indeholder følgende funktioner for at PGP virker som det skal:

  • Personal Data
  • GnuPG

NB: Når du har oprettet din private og offentlige PGP nøgle, er det vigtigt at du genstarter Tails efterfølgende, for at tjekke at de er blevet gemt i den krypterede container (Persistent Volume)

Javel! Lad os få spillet noget jazz og sendt nogle hemmelige beskeder!

Hvordan opretter jeg mine PGP nøgler?

  1. Start Tails.
  2. Hent en kop kaffe.
  3. Råb af din computer.
  4. Gas ned igen, karatefar.
  5. Kæl med din kat.
  6. Klik på “Clipboard” ikonet øverst til højre på Tails skrivebordet, og dernæst på “Manage Keys


  7.  I det nye vindue der popper op, klik først på “File” og vælg så “New..”

  8. Nu dukker der en liste op, hvor du skal vælge “PGP Key” og klikke på “Continue”

     

  9. Så kan du jo indtaste dit fulde navn i næste skridt, men du kunne i den grad også lade være. Det kommer an på hvad du har tænkt dig at bruge dine PGP nøgler til. Hvis du skal købe eller sælge noget på Deep Web markederne, foreslår vi at du bruger samme navn som dit brugernavn derinde – det gør det nemmere for alle.

    Navnet skal være mindst 5 tegn langt, så hvis dit navn er kortere, tilføjer du bare nogle “-” eller hvad du lige føler for.

    Efter det, kan du indtaste din email adresse. Det fraråder vi naturligvis at du gør, medmindre du opretter PGP til din private mailadresse, som intet skal have med Darknet (uhh) at gøre.

  10. Klik nu på “Advanced key options” og indstil “Key strength (bits)” til 4096 og “Expiration Date” til et eller to år ud i fremtiden.

    Note: Efter et nøglepar er udløbet, kan det ikke bruges til at sende dig krypterede beskeder med længere (din offentlige nøgle kan ikke bruges), og du kan ikke dekryptere beskeder længere (din private nøgle kan ikke bruges). Det er en rigtig brugbar option, fordi når nøglerne udløber, kan ingen læse beskederne længere, og det betyder at der ikke er noget brugbart bevis mod dig, hvis nogle skulle få fingre i noget materiale efter udløbsdatoen, OG dine nøgler. Det er nemt at indstille og kræver stort set intet ekstra arbejde (at oprette en ny PGP hvert år, eller hvert halve år sågar, giver et enormt OpSec boost, i forhold til mængden af tid du investerer i det).

    Det er dog stadig teknisk muligt at bruge dine private nøgler efter de er udløbede, det er dog ikke alle værktøjer der lader en gøre det. Så for at have højest OpSec her, skal du slette dine gamle og udløbne PGP nøgler efter du har skabt de nye, og opdatere den offentlige nøgle, de steder hvor du har den til at stå på Internettet og i særdeleshed på Deep Web markeder.
    Bekræft ved at klikke på “Create”.

  11. Nu bliver du bedt om at lave et kodeord, som er, i kombination med din private nøgle, nødvendig for at dekryptere beskeder der er krypterede med din offentlige nøgle.
    Lav det stærkeste password du kan komme i tanke om. Som Frihedsaktivisten før har anbefalet, og gerne gør igen, kan du med stor fordel læse denne artikel om et skabe et sikkert kodeord:
    PASSPHRASES THAT YOU CAN MEMORIZE — BUT THAT EVEN THE NSA CAN’T GUESS!

    -Og lad nu for SNØVSEN være med at bruge det samme kodeord flere steder.

  12. Efter du har klikket “OK” skal du vente lidt (maksimalt et par minutter, afhængigt af computerkraften), og du vil se dine nøgler i listen af GnuPG keys (klik på “GnuPG keys” i venstre sidebar)


    Tillykke! Du har nu skabt dine egne PGP nøgler. Svedigt.

Det er sgu da fed nok! Men hvad så nu, hvis jeg gerne vil bruge dem?

Så skal du være hurtig på tasterne!
Eller i det mindste bare kunne trykke CTRL + C ned, på samme tid. Som en start.

Eksporter din offentlige nøgle

Klik på din nøgle, øverst på listen i “GnuPG keys”:


Klik så på CTRL + C på tastaturet.
Nu er din offentlige nøgle kopieret og du kan indsætte den lige hvor du har lyst til.

Lad os først starte med et tomt tekstdokument, fordi du kan.
Klik dig frem til Applications ▸ Accessories ▸ Text Editor (øverst til venstre i Tails).

Når tekst-programmet er åbent, laver du den klassiske som du kender fra folkeskolen eller gymnasiet, nemlig CTRL + V..
DANG! Se lige der! Sikke en masse ubrugeligt lort der kommer frem. Fantastisk. Lige hvad vi ventede på!

(På din skærm ser det naturligvis anderledes ud, da ingen folk har den samme offentlige eller private nøgle. ((Javel, Captain Obvious))

Importer en offentlig nøgle

For at sende en krypteret besked til andre, skal du først importere deres offentlige nøgle.
Dem kan du få på mange måder – eksemplet her, er en nøgle vi har kopieret ud fra en hjemmeside. Nærmere bestemt en markedsplads.

Du skal starte med at kopiere nøglen fra de første 5 bindestreger “—– BEGIN PGP PUB….” og så slutte efter de sidste 5 bindestreger i slutningen af nøglen “……PUBLIC KEY BLOCK–––––”

Kopier nøglen ud fra siden til din udklipsholder og gå tilbage til din “GnuPG keys” liste, tryk CTRL + V, og så klik på “Import” knappen der popper op.
Nu ligger den offentlige nøgle sammen med dine andre nøgler. I dette tilfælde kan vi se at navnet tilknyttet den offentlige PGP nøgle er “SuperNarkoHash”:

Hvis du får en pop up med følgende fejl: “Could not display ‘Clipboard text’ Reason: Unrecognized or unsupported data,”, så er der et formateringsproblem med den kopierede nøgle. Prøv igen!

Krypter en besked

Note: Du skal først importere en offentlig nøgle, før du kan kryptere en besked og sende den til modtageren af den offentlige nøgle.

For at kryptere beskeder med PGP, skal du først skrive beskeden i et tekstbehandlingsprogram. Brug ALDRIG nogensinde online PGP krypterinsværktøjer, eller skriv ting ind i din browser generelt, andre ikke skal kende til. Der findes forskellige skadelig Java og JavaScript koder som kan køre i en browser og opsnappe alt hvad der bliver indtastet, uden du kan se det.

Start tekstbehandlingsprogrammet som du også havde fat i før, og skriv en hemmelig besked:

Marker hele beskeden og tryk CTRL + C (Netop, den skal kopieres).

Smut op i højre hjørne af Tails, klik på “Clipboard” ikonet og efterfølgende på “Sign/Encrypt Clipboard with Public Keys”:

I det nye vindue skal du vælge den offentlige nøgle / bruger, som du vil kryptere en besked til, ved at sætte flueben ud for navnet.
Du kan også vælge at kryptere den samme besked til flere modtagere på listen, så smækker du blot flere flueben på listen. Det giver dig stadig kun en enkelt krypteret besked, men alle brugere du har valgt på listen kan dekryptere den.

Når du har valgt modtager(e), skal du i bunden af vinduet efter “Sign message as” vælge den nøgle du vil sende fra.
Sørg også for at der ikke er et flueben i boksen “Hide recipients”.

Når det er gjort klikker du “OK” – og her vil du normalt bliver spurgt om du stoler på disse nøgler.
Klik på “Yes” og indtast kodeordet for din private nøgle. Klik “Ok”.

Vinduet forsvinder nu, og den krypterede besked ligger i din udklipsholder.
Gå ind i tekstprogrammet igen og tryk CTRL + V.
Så skulle du se noget der minder om dette:

Note: Efter du har krypteret din besked, kan du IKKE dekryptere den selv igen. Det er kun modtager(e) du har valgt da du krypterede beskeden, der kan åbne den med deres private nøgler.

Hvis du har behov for at huske hvad du skrev i beskeden, så gem den i plantekst i den krypterede container i Tails.

Alt du skal gøre nu, er at gå ind på Deep Web markedet, din mailklient, eller hvilken anden platform du skal sende den krypterede besked på, og blot indsætte den og trykke “Send”.
Når du har gjort dette, så luk for tekstprogrammet og tryk på “Close without saving”.

Dekryptere en besked

Næsten færdig!

Når du får et svar tilbage, eller en ny besked der er krypteret med PGP, vil du garanteret nok læse den..
For at gøre det, skal du kopiere den krypterede besked. Inkludér linjerne “—–BEGIN PGP MESSAGE—–“ og “—–END PGP MESSAGE—–”.
Så, CTRL + C igen, og “Clipboard” ikonet i højre hjørne af Tails skulle gerne vise en hængelås, fordi den har opsnappet at der ligger en PGP krypteret besked i udklipsholderen og venter på at blive læst.

Klik på den og vælg “Decrypt/Verify Clipboard” fra menuen.

Nu sker en af følgende to ting:

  • Hvis koden for den private nøgle ikke allerede er gemt i hukommelsen, popper der en dialogboks frem med følgende besked:
    “Please enter the passphrase to unlock the OpenPGP secret key for USER..”
    Tast kodeordet ind og tryk “OK”.

  • Hvis der ikke er nogen privat nøgle i din “GnuPG key” liste, der stemmer overens med den modtager, som beskeden er krypteret til, kommer der en fejlmelding frem om at dekrypteringen fejlede. Hvis det er tilfældet, så send en besked til personen der sendte dig en krypteret besked, og skriv at der måtte være sket en fejl, og inkludér gerne en kopi af din offentlige nøgle, så vedkommen er sikker på at have den rigtige nøgle.
    Tip: Kryptér den besked også 😉

Hvis du taster kodeordet korrekt, og beskeden var til dig, popper der et nyt vindue op med den krypterede besked.

Very nice. Great success.

Nu kan du bruge PGP til at kryptere ind- og udgående kommunikation.