4.2.2.1 Симметричное шифрование

В случае шифрования с симметричным ключом шифрование и дешифрование проводится одним и тем же ключом, который известен обеим сторонам.
Рисунок 4‑2. Шифрование с симметричным ключом (Источник: Learning Materials for Information Technology Professionals (EUCIP-Mat))
В случае этого алгоритма принципиальным является
сохранение в тайне ключа шифрования. Если ключ становится известным третьей
стороне, данные перестают быть защищёнными. Этот ключ нельзя безопасно передать
через сеть, а надо использовать альтернативные способы его передачи (пересылка
обычной почтой или через куллера). Это хлопотно да и не даёт гарантию
безопасности.
Недостатком шифрования с симметричным ключом является и то, что требуется
передать ключ всем, кому можно ознакомться с информацией. Но ведь
известно, что если ключ известен десяткам людей, то вряд ли он останется
тайным.
Одни методы шифрования используют блок-криптограф (block cipher), в случае
которого сначала шифруется определённый объём данных, а затем переходят к
шифрованию следующего блока, другие - осуществляют
шифрование в потоке (stream cipher), в случае которого шифрование идёт в потоке бит за
битом (или байт за байтом).
Симметричные алгоритмы широко используются и при достаточной сложности их
взламывание не является простым делом. Приведём некоторые примеры:
- Data Encryption Standard (DES) использовался длительное время и являлся первым стандартом признаным официальными учреждениями. К настоящему времени он заменён AES алгоритмами. DES использует ключ длины 56 бит. В настоящее время его взламывание является делом пары дней.
- Тройной-DES (3DES) является более безопасной версией DES алгоритма
- Advanced Encryption Standard (AES) использует Rijndael алгоритмы. AES сейчас является основным подходом к шифрованию используемым американскими государственными учреждениями. Этот стандарт поддерживает шифрование сдлинной ключа до 256 бит.
- Rivest's Cipher (RC) есть алгоритм разработанный RSA лабораториями. Современными версиями являются RC5 и RC6. RC5 использует 2048-битный ключ.