GPG til asymmetrisk filkryptering
Brug GPG til at kryptere filer til bestemte modtagere, signere indhold og administrere GPG-nøgleringen.
GPG til asymmetrisk filkryptering er en gratis Cryptology Academy-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Cryptology Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Cryptology Academy-kurset indeholder 4 lektioner i alt.
GPG: overblik og formål
GNU Privacy Guard (GPG) implementerer OpenPGP-standarden (RFC 4880) til asymmetrisk filkryptering og digitale signaturer. Det muliggør to grundlæggende handlinger: at kryptere en fil, så kun den tilsigtede modtager kan dekryptere den, og at signere en fil, så andre kan verificere dens ægthed og integritet. GPG er standardværktøjet til sikker filoverførsel og signering af softwareudgivelser.
Generering af GPG-nøgler
GPG-nøglegenerering foregår interaktivt med gpg --gen-key eller kan udføres fra et script med gpg --quick-gen-key. Moderne GPG bruger som standard ed25519 til signering og cv25519 (Curve25519) til kryptering og opretter en primær signeringsnøgle samt en undernøgle til kryptering. Indstillingen --full-gen-key giver fuld kontrol over nøgletypen, størrelsen og udløbsdatoen for brugere, der har brug for tilpassede konfigurationer.
Sammenligning af GPG-nøgletyper
RSA-nøgler til GPG med 4096 bit er kompatible med alle OpenPGP-implementeringer og giver stærk sikkerhed. ECDSA med Curve25519 (Ed25519 til signering, Cv25519 til kryptering) giver mindre nøgler og hurtigere operationer, samtidig med at sikkerheden er tilsvarende. Ældre DSA-nøgler er begrænset til SHA-1-digester i ældre implementeringer og bør ikke bruges. Nye nøgler bør bruge Curve25519-baserede typer.
Eksport og deling af offentlige nøgler
Når du har genereret et nøglepar, skal du eksportere din offentlige nøgle til distribution: gpg --armor --export your@email.com viser en ASCII-armoreret blok med den offentlige nøgle. Del denne fil med alle, der skal kunne kryptere filer til dig eller verificere dine signaturer. Modtagere importerer din offentlige nøgle med gpg --import publickey.asc, før de kan kryptere eller verificere.
Kryptering af filer til modtagere
Hvis du vil kryptere en fil til en bestemt modtager, skal du bruge: gpg --encrypt --recipient recipient@email.com --output secret.gpg plaintext.txt. GPG bruger modtagerens offentlige nøgle til at kryptere filens sessionsnøgle og krypterer derefter filen med AES-256 (eller den forhandlede krypteringsalgoritme). Kun modtageren, som har den tilsvarende private nøgle, kan dekryptere filens sessionsnøgle og genskabe klarteksten.
Oprettelse af løsrevne signaturer
En løsrevet signatur (gpg --detach-sign --armor file.tar.gz) opretter en separat .asc-fil, der indeholder signaturen. Den oprindelige fil forbliver uændret. Modtagere verificerer med gpg --verify file.tar.gz.asc file.tar.gz. Løsrevne signaturer er standarden for softwareudgivelser og gør det muligt at verificere signaturen uden at dekryptere eller ændre den distribuerede fil.
Verificering af signaturer
Signaturverificering bekræfter, at en fil er signeret med den angivne nøgle og ikke er blevet ændret siden signeringen. gpg --verify signature.asc file udskriver nøglefingeraftrykket, bruger-id'et og oplyser, om signaturen er gyldig eller ugyldig. Sikkerheden afhænger af, at du har korrekt tillid til underskriverens offentlige nøgle: En gyldig signatur fra en nøgle, du ikke har tillid til eller ikke har verificeret, giver kun ringe sikkerhed.
Private nøgler beskyttet med adgangssætning
GPG krypterer den private nøgle med en symmetrisk krypteringsalgoritme, der er afledt af en adgangssætning, før den gemmes. Uden adgangssætningen kan en angriber, der får fat i filen med den private nøgle, ikke bruge den. GPG bruger en nøgleafledningsfunktion til at udlede krypteringsnøglen fra adgangssætningen. Adgangssætningen bør være lang og nem at huske, men må ikke bruges andre steder, fordi alle dine krypterede filer er beskyttet af den.
Handlinger på GPG-nøgleservere
GPG-nøgleservere lagrer offentlige nøgler, så de kan findes. gpg --send-keys KEYID --keyserver hkps://keys.openpgp.org uploader din offentlige nøgle. Andre kan søge og importere med gpg --recv-keys KEYID. Nøgleservere synkroniserer med hinanden og giver global tilgængelighed. Moderne nøgleservere som keys.openpgp.org kræver e-mailbekræftelse før publicering, hvilket forhindrer spamangreb med nøgler.
Nøgleudløb og tilbagekaldelse
Hvis du angiver en udløbsdato for din nøgle, får du automatisk beskyttelse, hvis du mister kontrollen over den, uden at du behøver oprette et tilbagekaldelsescertifikat. Når en nøgle udløber, advarer GPG brugere, der krypterer til den. Hvis din nøgle kompromitteres, skal du straks publicere et tilbagekaldelsescertifikat (oprettet ved genereringen af nøglen) på nøgleservere: gpg --import revocation.cert og gpg --send-keys. Dette forhindrer, at der krypteres yderligere til den kompromitterede nøgle.
GPG i automatiserede arbejdsgange
GPG kan køre ikke-interaktivt i scripts ved hjælp af flagene --batch og --yes og ved at angive adgangssætninger via --passphrase-fd, som læser fra en fildeskriptor. GPG-agenten (gpg-agent) gemmer adgangssætningen i et konfigurerbart tidsrum, så den kan genbruges automatisk. Til CI/CD-forløb bør nøglemateriale opbevares i systemer til håndtering af hemmeligheder, ikke i kildekode eller miljøvariabler.
GPG-krypteringskommando
Hvilken GPG-kommando krypterer en fil til en bestemt modtager ved hjælp af modtagerens offentlige nøgle?
Opsummering af GPG-filkryptering
Opsummering af GPG: generér nøglepar (helst Curve25519), eksportér og del offentlige nøgler, krypter med modtagerens offentlige nøgle (--encrypt --recipient), signér filer separat med løsrevne signaturer (--detach-sign), verificér signaturer med --verify, beskyt private nøgler med adgangssætninger, angiv udløbsdatoer og klargør tilbagekaldelsescertifikater, og brug nøgleservere til at finde og distribuere offentlige nøgler.
Lær Cryptology Academy med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 67
- Lektioner
- 261
Ofte stillede spørgsmål
Er lektionen “GPG til asymmetrisk filkryptering” gratis?
Ja — hele teksten til “GPG til asymmetrisk filkryptering” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Cryptology Academy-kurset, skal du opgradere til CoddyKit PRO. Cryptology Academy-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “GPG til asymmetrisk filkryptering”?
Brug GPG til at kryptere filer til bestemte modtagere, signere indhold og administrere GPG-nøgleringen. Du øver dig i Cryptology Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på Cryptology Academy?
Der kræves ingen tidligere erfaring. Cryptology Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.
Hvor lang tid tager lektionen “GPG til asymmetrisk filkryptering”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne Cryptology Academy-lektion?
Ja. Alle Cryptology Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- GPG til asymmetrisk filkryptering
- Krypteringsværktøjet age: et moderne alternativ til GPG
- Krypterede containere med VeraCrypt
- Sikker sletning og destruktion af nøgler