Шифрование
Материал из DiPHOST.Ru wiki system
Хэширование
Хеширование (англ. cryptographic hash function) — преобразование входного массива данных произвольной длины в выходную битовую строку фиксированной длины. Такие преобразования также называются хеш-функциями, а их результаты называют хешем или дайджестом (англ. digest).
Идеальная хеш-функция имеет четыре важных свойства:
- простое быстрое вычисление значения для любого массива данных;
- неосуществимость вычислить массив по значению хеша;
- неосуществимость изменения массива без изменения хеша;
- неосуществимость нахождения двух разных массивов для одного хеша.
Эти свойства позволяют использовать хеш-функции для проверки целостности данных, для сравнения данных произвольной длины по хешу, для ускорения поиска данных произвольной длины - сравниваются хэши фиксированной длины.
Одними из самых распространённых на сегодня функций являются CRC16, MD5, SHA-1.
Симметричное шифрование
Симметричное шифрование - алгоритм шифрования, который использует один и тот же ключ для зашифровывания и расшифровывания (иначе говоря - пароля). Т.е. в частном случае существует некий секретный ключ, известный обоим сторонам, с помощью которого одна сторона шифрует информацию, вторая - расшифровывает. В основном используется из-за простоты и скорости реализаций.
Популярные алгоритмы симметричного шифрования - AES, DES, 3DES, IDEA, Blowfish, Twofish
Асимметричное шифрование
Асимметричное шифрование или шифрование с открытым ключом