{"licence":{"name":"CC BY-SA 4.0","spdx":"CC-BY-SA-4.0","url":"https://creativecommons.org/licenses/by-sa/4.0/","attribution":"Atlas, a bilingual technical dictionary (https://cmaintz.github.io/tech-atlas/)"},"id":"cs/symmetric-encryption","url":{"en":"https://cmaintz.github.io/tech-atlas/en/terms/cs/symmetric-encryption/","da":"https://cmaintz.github.io/tech-atlas/da/terms/cs/symmetric-encryption/"},"term":{"en":"Symmetric encryption","da":"Symmetrisk kryptering"},"aka":{"en":["symmetric cryptography","secret-key encryption","shared-key encryption"],"da":["symmetrisk kryptografi"]},"domain":["cs"],"cluster":"cryptography","layer":"theory","status":"current","era":1977,"summary":{"en":"Encryption where the same secret key both locks and unlocks the data, so sender and receiver must share it in advance.","da":"Kryptering, hvor den samme hemmelige nøgle både låser og låser data op, så afsender og modtager skal dele den på forhånd."},"body":{"formal":{"en":"A class of methods, such as the Advanced Encryption Standard, in which one cryptographic key both turns readable data into scrambled data and turns it back. It is fast enough for large amounts of data but does not solve how the key is shared safely.","da":"En klasse af metoder, fx AES, hvor én og samme kryptografiske nøgle både gør læsbare data umulige at læse og gør dem læsbare igen. Den er hurtig nok til store datamængder, men løser ikke, hvordan nøglen deles sikkert."},"plain":{"en":"Like a padlocked box where you and a friend each hold a copy of the same key - easy to use, but you had to hand the copy over in person first.","da":"Som en kasse med hængelås, hvor du og en ven har hver sin kopi af samme nøgle - let at bruge, men du skulle først give ham kopien personligt."},"inPractice":{"en":"A home-care worker's laptop is stolen from a car in a municipality. Its disk is protected with symmetric encryption, unlocked only at login, so the thief cannot read the citizens' data on it.","da":"En bærbar fra hjemmeplejen i en kommune bliver stjålet fra en bil. Disken er beskyttet med symmetrisk kryptering, der først låses op ved login, så tyven kan ikke læse borgernes oplysninger på den."},"whyItMatters":{"en":"It does the heavy lifting of protecting almost all stored and sent data, so the whole protection is only as strong as how well the shared key is kept secret.","da":"Den står for det tunge arbejde med at beskytte næsten alle gemte og sendte data, så beskyttelsen er aldrig bedre end den måde, den fælles nøgle holdes hemmelig på."}},"deepDive":{"en":"Symmetric ciphers come in two forms. Block ciphers such as AES (Rijndael, standardised in FIPS 197 in 2001) transform fixed 128-bit blocks under a 128-, 192- or 256-bit key in 10, 12 or 14 rounds; stream ciphers such as ChaCha20 generate a keystream that is XORed with the plaintext. A block cipher alone is only a keyed permutation. What is actually used is a mode of operation (NIST SP 800-38 series), and the mode determines most of the security. ECB encrypts identical blocks to identical ciphertext and leaks structure; CBC needs an unpredictable IV and, without integrity protection, is exposed to padding-oracle attacks (Vaudenay 2002, later POODLE and Lucky Thirteen in TLS); CTR turns the block cipher into a stream cipher.\n\nModern practice is authenticated encryption with associated data (AEAD), which provides confidentiality and integrity in one primitive: AES-GCM (SP 800-38D), ChaCha20-Poly1305 (RFC 8439) and AES-CCM. TLS 1.3 permits only AEAD suites. AEAD shifts the critical requirement to the nonce: with GCM, reusing a 96-bit nonce under the same key reveals the XOR of the plaintexts and lets an attacker recover the authentication key and forge messages. SP 800-38D therefore limits random-nonce GCM to 2^32 invocations per key, and nonce-misuse-resistant modes such as AES-GCM-SIV (RFC 8452) exist for cases where uniqueness cannot be guaranteed. Encrypt-then-MAC is the safe generic composition when a separate MAC must be used.\n\nDisk encryption is a special case, because there is no room for a nonce or tag in a 512- or 4096-byte sector: XTS-AES (SP 800-38E, IEEE 1619), used by BitLocker, FileVault and LUKS, gives confidentiality per sector but no authentication, so an attacker with write access can corrupt data undetected. Block size also matters: 64-bit block ciphers such as 3DES and Blowfish are vulnerable to birthday-bound attacks after around 32 GB under one key (Sweet32, 2016), and NIST SP 800-131A Rev. 2 disallowed 3DES encryption after 2023. DES's 56-bit key was brute-forced by the EFF's dedicated machine in 1998.\n\nKey length versus quantum computers is often overstated: Grover's algorithm gives at most a quadratic speed-up, so AES-128 is reduced to roughly 64-bit security in an idealised model that ignores the enormous cost of running it, and AES-256 is the conservative choice for long-lived data. The real weaknesses of symmetric encryption are almost never the cipher itself but key distribution, nonce management, missing authentication and side channels in software implementations, which is why hardware instructions such as AES-NI and constant-time libraries matter. Symmetric encryption differs from hashing (no key, not reversible) and from public-key cryptography, which is typically used only to establish the symmetric key that then protects the data.","da":"Symmetriske ciffre findes i to former. Blokciffre som AES (Rijndael, standardiseret i FIPS 197 i 2001) omdanner faste blokke på 128 bit under en nøgle på 128, 192 eller 256 bit i 10, 12 eller 14 runder; stream-ciffre som ChaCha20 genererer en nøglestrøm, der XOR'es med klarteksten. Et blokciffer alene er kun en nøglet permutation. Det, der faktisk bruges, er en driftsform (mode of operation, NIST SP 800-38-serien), og den afgør det meste af sikkerheden. ECB krypterer ens blokke til ens chiffertekst og lækker struktur; CBC kræver en uforudsigelig IV og er uden integritetsbeskyttelse udsat for padding oracle-angreb (Vaudenay 2002, senere POODLE og Lucky Thirteen i TLS); CTR gør blokcifret til et stream-ciffer.\n\nModerne praksis er autentificeret kryptering med tilknyttede data (AEAD), som giver fortrolighed og integritet i én primitiv: AES-GCM (SP 800-38D), ChaCha20-Poly1305 (RFC 8439) og AES-CCM. TLS 1.3 tillader kun AEAD-suiter. AEAD flytter det kritiske krav over på noncen: genbruges en 96-bit nonce under samme nøgle i GCM, afsløres XOR af klarteksterne, og angriberen kan udlede autentificeringsnøglen og forfalske beskeder. SP 800-38D begrænser derfor GCM med tilfældige nonces til 2^32 kald pr. nøgle, og nonce-misuse-resistente driftsformer som AES-GCM-SIV (RFC 8452) findes til situationer, hvor unikhed ikke kan garanteres. Encrypt-then-MAC er den sikre generiske kombination, når der skal bruges en separat MAC.\n\nDiskkryptering er et særtilfælde, fordi der ikke er plads til nonce eller tag i en sektor på 512 eller 4096 byte: XTS-AES (SP 800-38E, IEEE 1619), som bruges af BitLocker, FileVault og LUKS, giver fortrolighed pr. sektor, men ingen autentificering, så en angriber med skriveadgang kan ødelægge data uden at blive opdaget. Blokstørrelsen betyder også noget: blokciffre på 64 bit som 3DES og Blowfish er sårbare over for angreb ved fødselsdagsgrænsen efter omkring 32 GB under én nøgle (Sweet32, 2016), og NIST SP 800-131A Rev. 2 forbød 3DES-kryptering efter 2023. DES' 56-bit nøgle blev brudt med brute force af EFF's specialbyggede maskine i 1998.\n\nNøglelængde over for kvantecomputere bliver ofte overdrevet: Grovers algoritme giver højst en kvadratisk hastighedsforøgelse, så AES-128 reduceres til ca. 64 bits sikkerhed i en idealiseret model, der ser bort fra de enorme omkostninger ved at køre den, og AES-256 er det konservative valg til data med lang levetid. De reelle svagheder ved symmetrisk kryptering ligger næsten aldrig i selve cifret, men i nøgledistribution, håndtering af nonces, manglende autentificering og sidekanaler i softwareimplementeringer, og derfor betyder hardwareinstruktioner som AES-NI og biblioteker med konstant køretid noget. Symmetrisk kryptering adskiller sig fra hashing (ingen nøgle, kan ikke vendes om) og fra asymmetrisk kryptografi, som typisk kun bruges til at etablere den symmetriske nøgle, der derefter beskytter data."},"edges":[{"type":"requires","to":"cs/cryptographic-key","confidence":"high","strength":"normal"},{"type":"kind-of","to":"cs/encryption","confidence":"high","strength":"normal"},{"type":"used-with","to":"cs/tls","why":{"en":"TLS uses public-key cryptography only to agree on a shared key, then protects the rest of the connection with fast symmetric encryption.","da":"TLS bruger kun asymmetrisk kryptografi til at aftale en fælles nøgle og beskytter derefter resten af forbindelsen med hurtig symmetrisk kryptering."},"confidence":"high","strength":"primary"},{"type":"used-with","to":"cs/vpn","confidence":"high","strength":"normal"}],"depth":1,"sources":[{"title":"NIST FIPS 197 - Advanced Encryption Standard (AES)","url":"https://csrc.nist.gov/pubs/fips/197/final","tier":"standard","publisher":"NIST"},{"title":"Paar & Pelzl, Understanding Cryptography","tier":"textbook"}],"draft":true}