Шифруемся! Все что ты хотел знать о криптографии и алгоритмах шифрования
Xakep, номер #046, стр. 046-058-2 1. DES (Data Encryption Standart) - стандарт шифрования данных, разработанный в 1974 году компанией IBM. Один из самых известных алгоритмов. В США он используется для шифрования НЕсекретных данных, также используется для шифрования паролей в *nix (/etc/passwd). Функции шифрования и дешифрования используют ключ, без которого неавторизованные пользователи не смогут дешифровать сообщение. Этот ключ, получаемый на основе введенного пароля и другой инфы, состоит из 64 двоичных цифр (1 и 0). 56 битов используются для шифрования, остальные 8 - для проверки ошибок. Общее количество возможных ключей весьма велико. Единственный способ определить использовавшийся ключ: проверить все возможные ключи при известных входных и выходных данных для DES. Существует более семидесяти квадриллионов (вроде это 7 и 16 нуликов =)). Если ты заинтересовался деталями, то зайди на эти сайты: http://www.itl.nist.gov/div897/pubs/fip46-2.htm http://www.itl.nist.gov/div897/pubs/fip81.htm http://www.eff.org/descracker/ - загляни сюда, если хочешь знать о попытках взлома DES. 2. 3DES или Triple DES - алгоритм DES с тройным шифрованием. Гораздо более надежнее DES, поскольку длина ключа теперь 168 бит (в DES было 64). Это длина самого короткого из трех ключей. Шифрует текст с помощью первого ключа, затем расшифровывает с помощью второго ключа и снова шифрует с помощью третьего. 3. MD4 и MD5 - алгоритмы резюмирования сообщений. Становится все более популярнее, чем DES. MD5 менее быстродействующий, но более безопасный по сравнению с MD4. Используется для проверки целостности файлов. Я читал об одном опыте, в котором принимали участие более 1000 мощных компьютеров, на протяжении года генерировавшие хеш-коды для строк, и за все время не было обнаружено совпадения MD5-кодов для разных строк. Математически было доказано, что они могли бы с тем же результатом заниматься этим на протяжении еще нескольких лет. Но все же есть вероятность того, что у разных строк MD5-коды совпадут. Подробнее о MD5 читай тут - http://nic.mil/ftp/rfc/rfc1321.txt. 4. IDEA (International Data Encryption Algorithm) - Международный алгоритм шифрования данных. Работает с блоками длиной 64 бита и использует ключ 128 бит. 5. RSA (Rivest-Shamir-Adleman) - криптографический алгоритм и система шифрования с открытым ключом. Очень популярен, поскольку легко интегрируется во множество приложений (уже интегрирован в Ослика IE). Подробнее тут - http://www.rsasecurity.com. 6. BLOWFISH - более надежный и быстрый алгоритм по сравнению с DES. Может использовать ключи длиной 448, 256, 192 и 128 бит. 7. TWOFISH - был разработан группой людей (в которую входил разработчик BLOWFISH) для компании Counterpane systems. Также считается очень надежным и гибким, использует ключи длиной 128, 192 и 256 бит, а блоки - 128 бит. 8. CRC32 - 32-битовая CRC (Cyclical Redundancy Checking, т.е. циклический контроль с помощью избыточных кодов). Этот алгоритм используется для проверки целостности файлов при шифрованной передаче. |