SSL (Secure Socket Layer) teknolojisi sayesinde sunucu ile istemci arasında düz metin olarak gidip gelen veri şifrelenerek güvenli bir şekilde aktarılmaya başladı.

Bugün kullandığımız internet sitelerinin dolayısıyla www’nin temelinde iki önemli unsur bulunur. Bunlardan birincisi içeriği sağlayan sunucu bir diğeri ile içeriği talep eden istemci. Tüm web sistemi bu iki olgu üzerine kurulmuştur. Bir birini tamamlayan bu iki sistem http adı verilen bir protokolü kullanarak haberleşirler. Burada http protokülün detayına girmeyeceğim. Konumuza dönecek olursak http protokolü üzerinden haberleşen sunucu ve istemci arasında gidip gelen tüm mesajlar düz metin yani şu anda okuduğunuz yazılar gibi elimize geçtiğinde kolaylıkla okuyabileceğimiz yazılar şeklindedir.

Bazı basit bilgilerin bu şekilde sunucu ve istemci arasında gidip gelmesi sorun olmaz. Ancak kredi kartı şifresi, banka hesap bilgileri gibi çok daha hassas bilgilerin bu şekilde aktarılması bir çok güvenlik açığı yaratır. İşte bu durumdan dolayı ortaya SSL çıktı.

SSL kısaca sunucu ile istemci arasında aktarılan mesajları şifreleyip aktararak bu güvenlik açığını kapatmaktadır. SSL yapısı gereği başlık (header) bilgisi dahil gelen giden tüm bilgiyi şifreliyor ve bu şifrelenmiş bilgi ancak ulaşması gereken adrese ulaşınca çözülebiliyordu. Dolayısıyla mesajları doğru yönledirmek için başlık (header) bilgisini okuyamayan sunucular ip adreslerini kullanarak iletişimi yönlendiriyorlardı. Bu durumun bir sonucu olarakta bir IP adresinde sadece bir tane SSL sitesi kullanmak durumunda kalıyordunuz.

Bunlardan geçmiş zamanda bahsediyorum. Çünkü artık bu engel aşılmış durumda ve tek bir IP adresi üzerinden istediğiniz kadar SSL ile çalışan site sunabilirsiniz. Bu kolaylığı bize sağlayan teknolojinin adı ise Server Name Indication (SNI) teknolojisidir. SNI bir TLS eklentisidir.

SNI bunun için gelen bağlantının host header isteğini sunucuya ulaştırır, bu sayede sunucu hangi web sitesinin çağırıldığını anlar ve o web sitesi için ayarlanmış olan sertifikanın public anahtarını istemciye gönderir. Böylece ilgili sitenin sertifikası doğrulanmış olur. Bu şekilde birden çok sertifika kullanılabilir hale gelmektedir.