Як працює ssl - ssl шифрування - безпека
Протокол SSL займає місце між двома протоколами: протоколом програми-клієнта (HTTP, FTP, Telnet і так далі) і протоколом TCP / IP, що служить для транспортування пакетів.
Сам же SSL ділиться на два шари: Handshake Protocol Layer (шар підтвердження підключення) і Record Layer (шар записи). При цьому шар підтвердження підключення в свою чергу розбивається на три протоколи: Handshake Protocol (підтвердження підключення), Change Cipher Spec Protocol (зміна параметрів шифру) і Alert Protocol (попередження).
Наступна схема ілюструє рівні протоколу SSL:
Handshake Protocol Layer (шар підтвердження підключення)
Як було сказано раніше, даний шар має в своєму складі три протоколи:
Handshake Protocol (протокол підтвердження підключення)
Даний протокол використовується для узгодження даних сесії між клієнтом і сервером. При цьому передається наступна інформація:
1. Ідентифікаційний номер сесії;
2. Сертифікати сторін;
3. Параметри використовуваного криптографічного алгоритму;
4. Використовуваний алгоритм стиснення;
5. Інформація, що застосовується для створення ключів, або відкритий ключ.
Change Cipher Spec Protocol (протокол зміни параметрів шифрування)
Даний протокол застосовується для зміни даних ключа, використовуваного для шифрування даних між клієнтом і сервером.
Alert Protocol (протокол попередження)
Попереджувальне повідомлення свідчить про зміну статусу або про наявність помилки. При цьому відбувається повідомлення обох сторін.
Для забезпечення безпеки, а саме для перевірки справжності учасників обміну інформацією, в протоколі підтвердження використовується сертифікат (стандарт X.509). Сертифікатом в криптографії називають цифровий документ, який підтверджує відповідність між відкритим ключем і інформацією, що ідентифікує власника ключа. Сертифікат випускається центром сертифікації - третьою стороною, якій апріорі довіряють боку, безпосередньо беруть участь у передачі інформації.
У криптографії використовується два основні методи шифрування: симетричне і асиметричне шифрування (з відкритим ключем). У протоколі SSL застосовуються обидва методи.
При застосуванні симетричного ключа обома сторонами використовується однаковий ключ для шифрування даних, це необхідна умова для того, щоб забезпечити безпеку передачі інформації. Такий вид шифрування застосовується для обробки великих обсягів даних.
Асиметричне ж шифрування використовує два ключа, отриманих за допомогою ряду математичних обчислень. У протоколі SSL використовується асиметричне шифрування для того, щоб сервер міг упевнитися в достовірності клієнта і навпаки.