Symmetrisk-key algoritmer algoritmer for kryptering som bruker samme kryptografiske nøkler for både kryptering av ren tekst og dekryptering av ciphertext. Tastene kan være identiske, eller det kan være en enkel transformasjon for å gå mellom de to nøklene.Tastene, i praksis, representerer en delt hemmelighet mellom to eller flere parter som kan brukes til å opprettholde en privat informasjon linken., Dette kravet om at begge parter har tilgang til den hemmelige nøkkelen er en av de viktigste ulempene med symmetrisk nøkkel kryptering, i forhold til offentlig-nøkkel kryptering (også kjent som asymmetrisk nøkkel kryptering)
Symmetrisk nøkkel kryptering kan enten bruke stream chiffer eller blokk chiffer
- Stream chiffer kryptere sifre (vanligvis bytes) eller brev (i substitusjon chiffer) av en melding, ett av gangen. Et eksempel er Vigenère Cipher.
- Blokk chiffer ta et antall bits og kryptere dem som en enhet, padding ren tekst slik at det er en flere av blokk-størrelse., Advanced Encryption Standard (AES) – algoritme, som er godkjent av NIST i desember 2001, bruker 128-bits blokker.
– Implementering
Kryptografiske primitives basert på symmetriske chiffer
Symmetriske chiffer er vanligvis brukes til å oppnå andre kryptografiske primitiv enn bare kryptering.
Kryptering av en melding ikke garantere at dette budskapet er ikke endres mens kryptert. Dermed ofte en message authentication code er lagt til en ciphertext for å sikre at endringer i ciphertext vil bemerkes av mottakeren., Message authentication-koder kan være konstruert fra symmetriske chiffer (f.eks. CBC-MAC).
Imidlertid, symmetriske chiffer kan ikke brukes til ikke-avvisning formål, bortsett fra som involverer flere parter.Se ISO/IEC 13888-2 standard.
en Annen anvendelse er å bygge hash funksjoner fra blokk chiffer., Se én vei komprimering funksjon for beskrivelser av flere slike metoder
Bygging av symmetriske chiffer
Mange moderne blokk chiffer er basert på en konstruksjon som er foreslått av Horst Feistel. Feistel konstruksjon gjør det mulig å bygge invertible funksjoner fra andre funksjoner som er seg selv ikke er invertible.,
Sikkerhet for symmetriske chiffer
Symmetriske chiffer har historisk vært utsatt for kjent-ren tekst angrep, valgt-ren tekst angrep, differensial cryptanalysis og lineær cryptanalysis. Forsiktig bygging av funksjonene for hver runde kan i stor grad redusere sjansene for et vellykket angrep.
– Tasten management
Key management refererer til forvaltning av kryptografiske nøkler på en nøkkel. Dette innebærer også kontakt med generasjon, exchange, lagring, bruk, crypto-makulering (ødeleggelse) og utskifting av nøklene., Det inneholder kryptografisk protokoll design, nøkkel-servere, bruker prosedyrer, og andre relevante protokoller.
Key management bekymringer tastene på brukernivå, enten mellom brukere eller systemer. Dette er i kontrast til viktige planlegging, som vanligvis refererer til interne håndtering av nøkler innen drift av et siffer.
Vellykket key management er kritisk til sikkerheten av en nøkkel., Det er mer utfordrende siden av kryptografi i en forstand at det innebærer aspekter av sosial manipulering som system policy, brukeropplæring, organisatoriske og avdelinger vekselsvirkningene, og koordinering mellom alle disse elementene, i motsetning til ren matematisk praksis som kan være automatisert.,
– Tasten for etablering
Symmetrisk-nøkkel algoritmer krever at både avsender og mottaker av en melding skal ha samme hemmelige nøkkelen. Alle tidlig kryptografiske systemer som kreves for en av dem liksom motta en kopi av den hemmelige nøkkelen over en fysisk sikker kanal.,
Nesten alle moderne kryptografiske systemer fortsatt bruk symmetrisk-nøkkel algoritmer internt for å kryptere masseutsending av meldinger, men de eliminerer behovet for en fysisk sikker kanal ved å bruke Diffie–Hellman key exchange eller noen annen offentlig-nøkkel-protokollen til å trygt komme til enighet om en ny og frisk hemmelig nøkkel for hver melding (forward secrecy).
– Tasten generasjon
Når den brukes med asymmetriske chiffer for sentrale transfer, pseudotilfeldig nøkkelen generatorer er nesten alltid brukt til å generere den symmetriske cipher økt tastene., Men mangel av tilfeldighet i disse generatorer eller i deres initialisering vektorer er katastrofal, og har ført til cryptanalytic pauser i det siste. Derfor er det viktig at en implementering bruk en kilde til høy entropi for sin initialisering
Gjensidige cipher
En gjensidig cipher er et siffer der, akkurat som man går inn i klartekst i kryptografi system for å få ciphertext, kan man angi ciphertext til samme sted i systemet for å få den ren tekst. En gjensidig cipher er også noen ganger referert som selv gjensidige cipher.,
Praktisk talt alle mekaniske cipher maskiner gjennomføre en gjensidig cipher, en matematisk involution på hver skrev i brevet. I stedet for å designe to typer maskiner, en for å kryptere og en for dekryptering, alle maskinene kan være identiske, og kan settes opp (skrevet) på samme måte.
Eksempler på gjensidige-chiffer inkluderer:
- Atbash
- Beaufort cipher
- Enigma-maskinen
- Marie Antoinette og Axel von Fersen kommunisert med en selv-gjensidige cipher.
- Porta polyalphabetic cipher er selv-gjensidige.,
- Lilla cipher
- RC4
- ROT13
- XOR cipher
- Vatsyayana cipher
Praktisk talt alle moderne chiffer kan bli klassifisert som enten en stream cipher, de fleste som bruker en reciprocol XOR cipher kombinator, eller en block cipher, de fleste som bruker en Feistel cipher eller Lai–Massey ordningen med en tilsvarende transformasjon i hver runde