HTTP ve HTTPS arasındaki fark SSL sertifikasıdır. HTTPS yükleyen internet sitesi SSL sertifikasını kullanır ve veri transferinde bilgi şifrelenir. HTTP’de ise veri metin formatında gönderilir ve herkes tarafından kolay bir şekilde okunabilir. HTTP yerine HTTPS kullanmak site verisinin güvenliği konusunda büyük bir adım atmaktadır. SSL sertifikası kurmadan internet sitesi veri hırsızlığına karşı korunmasız olmaktadır. Google son yıllarda arama sonuçlarında HTTPS kullanan siteleri öne çıkarırken HTTP sitelerinde kullanıcılara “Güvenli Değil” uyarısı göstermektedir ve arama sonuçlarında alt sıralara atmaktadır.
İçindekiler
HTTP Nasıl Çalışır?
HTTP ya da uzun uzun Hypertext Transfer Protocol istemci ile host için ihtiyaç duyulan protokolleri sağlar. Bu protokoller bilgiye nasıl erişileceğini, bilginin nasıl transfer edileceğini, gösterileceğini ve belirli bir komut geldiğinde nasıl hareket edileceğini belirler. HTTP’nin ilk versiyonu V0.9 Tim Berners ve ekibi tarafından CERN’de geliştirildi ve protokol geliştiriciler tarafından kabul edildi. Zaman içerisinde birçok geliştirmeler yapılsa da yöntem hala aynı sorgu-cevap modeli.
Ayrıca bkz: Chrome, Safari veya Firefox’ta Özel Tarama Güvenli Mi?
İletişim sürecinde istemci ile sunucu arasındaki bağlantı kalıcı değildir. İstek gönderildiğinde bağlantı sağlanır sonrasında kopar. İsteğe cevap gönderilirken sunucu ile olan bağlantı tekrar sağlanır. İstemci ile sunucu birbirlerini sadece bağlantı süresince tanırlar ve bağlantı koptuktan sonra tekrar iletişime geçtiklerinde bilgi paylaşımı en başından başlar. İstemci ile sunucu arasındaki her bağlantı yapılan ilk bağlantı gibidir. İstemci ve sunucu okuyabildiği sürece HTTP ile her türlü veri transfer edilebilir. İlk olarak bu sadece metin bazlı veriydi ancak yapılan çok sayıda geliştirme ile artık sınırsız tipte ver iHTTP üzerinden gönderilebiliyor.
HTTP Veriyi Nasıl Çeker?
Tarayıcıya bir link yazdığınızda tarayıcı bu linkin yönlendirdiği içeriği çekmek için sunucuya bir istek gönderir. İstek proxy’ler aracılığı ile gönderilir. İstek sonucunda ise sunucu bir cevap yollar. Bu istekler GET, DELETE, HEAD, POST, TRACE, OPTIONS, CONNECT, PUT ve PATCH olmak üzere 9 tanedir. İstekler sunucunun yapması gereken komutu içerir. İsteğin ikinci kısmında içeriğin adresi yer almaktadır ve son kısmında ise HTTP versiyonu bulunur. Bunların dışında dil bilgisi, format ve istemcinin bilgisi gibi diğer çeşitli bilgiler de istek içerisinde yer alabilir. Bu bilgilerin hepsi sunucuya gelir ve karşılığında sunucu bir cevap verir.
Sunucunun cevabında ilk olarak HTTP versiyonu ve 200, 404 ya da 502 gibi durum kodu yer alır. Sunucu aynı zamanda içeriğe bağlı olarak bazı diğer bilgileri de gönderir. Bu bilgiler içerisinde bağlantının yapıldığı tarih, sunucu bilgisi, önbellek kontrolü ve istemci tarayıcı bilgisi gibi bilgilerdir.
HTTPS Nasıl Çalışır?
HTTPS, interneti daha güvenli yapmak için Netscape tarafından geliştirildi. SSL (Secure Sockets Layer), TLS’e (Transfer Layer Security) güncellendi. Ancak günümüzde bu iki terim birbiri yerine o kadar sık kullanılıyor ki neredeyse eş anlamlı hale geldi. TLS, HTTPS İstek-Cevap Döngüsünü şifreleyerek güvenli hale getiriyor. TLS olmadan HTTP içeriği metin tabanlı olduğu için Man in the Middle saldırısı gibi saldırılarla okunabiliyor. İstemci ile sunucu arasındaki transferin şifrelenmiş bir güvenlik katmanı üzerinden gerçekleşmesi gerekiyor. Sadece cevabı alan kişi bu şifreyi çözecek ve verinin okunur olmasını sağlayacak anahtara sahip. Man in the Middle saldırısında bulunanlar için ise veri rastgele sıralanmış çok sayıda harfler şeklinde gözüküyor.
HTTP ve HTTPS Arasındaki Farklar
İki protokol arasındaki en büyük fark güvenlik ve şifreleme ancak bunun dışında da bazı önemli farklı bulunmaktadır. Protokol farklılığı ilk olarak adres satırında ortaya çıkar. Arkaplanda ise daha önemli farklar bulunmaktadır.
HTTP veri transferini PORT 40 üzerinden gerçekleştirirken HTTPS bunu PORT 443 üzerinden yapar.
- HTTP uygulama katmanında iş görür. Diğer taraftan HTTPS taşıma katmanında çalışmaktadır. Uygulama katmanında veriler alıcılar için okunabilir hale getirilmektedir. Diğer taraftan taşıma katmanı bir verinin A noktasından B noktasına iletilmesini sağlamaktadır. HTTPS veriyi şifrelediği için bu katmanda çalışmaktadır.
- HTTPS için SSL sertifikası gereklidir. Bu sertifika hem ücretsiz hem de ücretli bir şekilde edinilebilir. HTTP herhangi bir şifreleme yapmadığı için sertifika kullanımına da gerek yoktur.
- Google arama sonuçları sayfasında HTTPS siteleri daha üst sıralarda çıkarmaktadır. Bu nedenle SEO için de HTTPS önemli bir avantajdır. Ayrıca Google Chrome tarayıcısı HTTPS siteleri yeşil renkle “Güvenli” olarak gösterirken HTTP siteleri kırmızı renkle “Güvenli Değil” yazısıyla gösterir.
- Ödeme hizmeti sunan bütün siteler için HTTPS protokolü gereklidir. Yapılan araştırmalara göre müşterilerin %84’ü sitede “Güvenli Değil” ibaresini gördüğünde alışveriş yapmaktan vazgeçmektedir.
- HTTPS bir diğer avantajı ise AMP sayfalarıdır. Bir sitenin AMP versiyonunu yapabilmek için o sitenin SSL sertifikasına sahip olması gerekmektedir.