VPN или Virtual Private Network в конечном счёте обеспечивает подключение двух устройств, при этом используемое соединение логическое.
Чаще всего VPN используется для подключения устройств поверх небезопасной среды, например интернет.
Конечно, мы можем заказать у провайдера выделенную линию, но главное преимущество VPN - это её дешевизна, поскольку выделенная линия стоит гораздо дороже обычного подключения к Интернет.
Итак, VPN отличная вещь, повсеместно используемая, и всё эти замечательные свойства обеспечиваются различными технологиями криптографии (Cryptography):
Confidentiality обеспечивается через Encryption.
Data Integrity есть функция Hashing.
Шифр(Cypher) представляет собой список правил или Algorithm, согласно которому производится encryption и decryption данных.
Существует сотни алгоритмов как доступных в свободном доступе, так и закрытых (правительство или национальная безопасность).
Можно выделить несколько типов Cipher:
Ключ(Key) по сути является инструкцией по перестановке символов или их замене. Понятно что все участники должны располагать этой инструкцией. Ключи могут использоваться на протяжении всего сеанса, а могут и динамически меняться на протяжении сеанса.
Алгоритмы шифрования могут работать с blocks of data или с bits или bytes of data.
Примеры Symmetric block cipher algorythms:
■ Advanced Encryption Standard (AES)
■ Triple Digital Encryption Standard (3DES)
■ Blowfish
■ Digital Encryption Standard (DES)
■ International Data Encryption Algorithm (IDEA)
Понятие симметричности алгоритма уже встречалось в этом материале. Рассмотрим данный вопрос подробнее:
Symmetric encryption Algorithm или Symmetrical Cypher - использует один и тот же ключ для шифрования и расшифрования данных.
Примеры Symmetric encryption Algorithm:
■ DES
■ 3DES
■ AES
■ IDEA
■ RC2, RC4, RC5, RC6
■ Blowfish
На сегодняшний день Symmetric encryption Algorithm используется в большинстве типов VPN. Причина в том, что подобные алгоритмы требуют гораздо меньшей загрузки CPU.
Чем сложнее ключ, тем сильнее шифрование.
Обычно длина ключа варьируется от 112bits до 256bits. Надежно считается шифровать ключом длиной минимум 128bits.
Asymmetric encryption A