Szimmetrikus-kulcs algoritmusok algoritmusok kriptográfia, hogy ugyanazt a kriptográfiai kulcsok, mind a titkosítás a sima szövegként, illetve dekódolás rejtjelezett. A kulcsok azonosak lehetnek, vagy lehet, hogy egy egyszerű átalakítás megy a két kulcs között.A kulcsok a gyakorlatban megosztott titkot képviselnek két vagy több fél között, amelyek felhasználhatók a személyes információs kapcsolat fenntartására., Ez a követelmény, hogy mindkét fél hozzáférése van a titkos kulcs az egyik fő hátránya a szimmetrikus kulcsú titkosítási képest, hogy a nyilvános kulcsú titkosítás (úgy is ismert, mint aszimmetrikus kulcsú titkosítás)
a Szimmetrikus kulcsú titkosítás segítségével akár stream ciphers vagy block ciphers
- Stream ciphers titkosítja a számjegy (általában byte), vagy leveleket (a helyettesítő titkosírás) egy üzenetet, egyesével. Példa erre a Vigenère rejtjel.
- a blokk-titkosítók több bitet vesznek fel, majd egyetlen egységként titkosítják őket, a sima szöveget úgy, hogy a blokk méretének többszöröse legyen., A NIST által 2001 decemberében jóváhagyott Advanced Encryption Standard (AES) algoritmus 128 bites blokkokat használ.
implementációk
kriptográfiai primitívek alapján szimmetrikus titkosítást
szimmetrikus titkosítást általánosan használt eléréséhez más kriptográfiai primitívek, mint a titkosítás.
Az üzenet titkosítása nem garantálja, hogy ez az üzenet titkosítva nem változik. Ezért gyakran egy üzenet hitelesítési kódot adnak a rejtjelszöveghez annak biztosítása érdekében, hogy a rejtjelszöveg változásait a vevő észlelje., Az üzenet hitelesítési kódokat szimmetrikus kódokból (pl. CBC-MAC) lehet létrehozni.
a szimmetrikus rejtjeleket azonban nem lehet megtagadási célokra használni, kivéve további felek bevonásával.Lásd az ISO/IEC 13888-2 szabványt.
egy másik alkalmazás a hash funkciók blokk-rejtjelekből történő létrehozása., Lásd egyirányú tömörítési funkció leírások több ilyen módszerek
Építése szimmetrikus titkosítást
Sok modern block ciphers alapulnak építési által javasolt Horst Feistel. A Feistel konstrukciója lehetővé teszi az invertálható funkciók felépítését más olyan funkciókból, amelyek önmagukban nem invertálhatók.,
Biztonsági szimmetrikus titkosítást
Szimmetrikus titkosítást hagyományosan hajlamos ismert-plaintext támadások, kiválasztott-plaintext támadások, differenciál rejtjel, illetve lineáris rejtjel. A funkciók gondos felépítése minden fordulóban nagymértékben csökkentheti a sikeres támadás esélyeit.
Key management
Key management utal kezelése kriptográfiai kulcsok egy kriptosystem. Ez magában foglalja foglalkozik a generációs, csere, Tárolás, használat, crypto-aprítás (megsemmisítés), csere kulcsok., Ez magában foglalja a kriptográfiai protokolltervezést, a kulcsszervereket, a felhasználói eljárásokat és más vonatkozó protokollokat.
A kulcskezelés a felhasználói szintű kulcsokra vonatkozik, akár felhasználók, akár rendszerek között. Ez ellentétben áll a kulcsütemezéssel, amely általában a kulcsok belső kezelésére utal a titkosítás működésén belül.
a sikeres kulcskezelés kritikus fontosságú a titkosítási rendszer biztonsága szempontjából., A kriptográfia nagyobb kihívást jelentő oldala abban az értelemben, hogy magában foglalja a szociális tervezés olyan aspektusait, mint a rendszerpolitika, a felhasználói képzés, a szervezeti és megyei interakciók, valamint az összes ilyen elem közötti koordináció, ellentétben az automatizálható tiszta matematikai gyakorlatokkal.,
Kulcs létrehozása
Szimmetrikus kulcsú algoritmusok szükség mind a feladó, mind a címzett az üzenetet, hogy ugyanazt a titkos kulcsot. Minden korai kriptográfiai rendszer megkövetelte az egyik ilyen embertől, hogy valahogy megkapja a titkos kulcs másolatát egy fizikailag biztonságos csatornán.,
szinte minden modern kriptográfiai rendszer továbbra is szimmetrikus kulcsú algoritmusokat használ belsőleg az üzenetek nagy részének titkosításához, de kiküszöbölik a fizikailag biztonságos csatorna szükségességét a Diffie–Hellman key exchange vagy más nyilvános kulcs protokoll használatával, hogy biztonságosan megállapodjanak az egyes üzenetek új titkos kulcsáról (továbbítási titoktartás).
Kulcsgeneráció
ha aszimmetrikus rejtjelekkel használják a kulcsátvitelhez, a pseudorandom kulcsgenerátorokat szinte mindig használják a szimmetrikus titkosítási munkamenetkulcsok generálására., Azonban a véletlenszerűség hiánya ezekben a generátorokban vagy inicializációs vektorokban katasztrofális, és a múltban kriptanalitikus törésekhez vezetett. Ezért elengedhetetlen, hogy egy megvalósítási forrása magas entrópia a inicializálás
a Kölcsönös kódot
A kölcsönös titkosítás a titkosítás, ahol, ahogy belép a plaintext a kriptográfiai rendszer, hogy a rejtjelezett lehet adja meg a rejtjelezett be ugyanarra a helyre az a rendszer, hogy a sima szövegként. A kölcsönös titkosítást néha Ön-kölcsönös titkosításnak is nevezik.,
gyakorlatilag az összes mechanikus rejtjelező gép reciprok titkosítást hajt végre, egy matematikai involúciót minden beírt betűn. Ahelyett, hogy kétféle gépet terveznénk, az egyik a titkosításhoz, a másik a dekódoláshoz, az összes gép azonos lehet, és ugyanúgy beállítható (kulcsos).
a kölcsönös titkosítás példái a következők:
- Atbash
- Beaufort cipher
- Enigma machine
- Marie Antoinette és Axel von Fersen egy önreflexiós titkosítással kommunikáltak.
- A Porta polialfabetikus rejtjel Ön-kölcsönös.,
- Purple cipher
- RC4
- ROT13
- XOR cipher
- Vatsyayana rejtjel
gyakorlatilag minden modern rejtjel lehet besorolni, mint akár egy patak rejtjel, amelyek többsége egy kölcsönös XOR rejtjel kombinátor, vagy egy blokk rejtjel, amelyek többsége használja a Feistel rejtjel vagy Lai–Massey rendszer kölcsönös transzformációval minden körben