HTTPS veya HyperText Transfer Protokolü Güvenli, bir bilgisayar ağı, genellikle internet üzerinden güvenli iletişim için kullanılan bir protokoldür. İstemci (bir web tarayıcısı gibi) ile sunucu (bir web sitesi gibi) arasında alınıp verilen verilerin gizli ve bütünsel kalmasını sağlamak için standart HTTP’yi SSL/TLS şifreleme protokolleriyle birleştirir. HTTPS, verileri AES (Gelişmiş Şifreleme Standardı) gibi simetrik şifreleme algoritmaları kullanarak şifreleyerek ve güvenilir Sertifika Yetkilileri (CA’lar) tarafından verilen dijital sertifikalar aracılığıyla sunucunun orijinalliğini sağlayarak çalışır. Bu şifreleme, yetkisiz kişilerin istemci ile sunucu arasındaki iletişimi gizlice dinlemesini veya kurcalamasını önleyerek kullanıcılara güvenli bir tarama deneyimi sağlar.
HTTP veya HyperText Aktarım Protokolü, World Wide Web’deki veri iletişiminin temelidir. İstemcinin (genellikle bir web tarayıcısı), web sayfalarını veya diğer kaynakları almak için sunucuya (bir web sitesini barındıran bir web sunucusu) istekler gönderdiği bir istemci-sunucu modelinde çalışır. Süreç adım adım şu şekilde işliyor:
- Client İsteği: İstemci, sunucuya bağlantı başlatır ve bir HTTP istek mesajı gönderir. Bu mesaj, web sayfası URL’si gibi erişmek istediği kaynağı ve diğer isteğe bağlı parametreleri belirtir.
- Sunucu Yanıtı: İsteği aldıktan sonra sunucu bunu işler ve bir HTTP yanıt mesajı gönderir. Bu yanıt, istenen kaynağın yanı sıra isteğin başarılı olup olmadığı veya hataların olup olmadığı gibi durum bilgilerini de içerir.
- Veri Aktarımı: İstemci HTTP yanıtını alır ve istenen web sayfasını veya kaynağı kullanıcıya görüntüler. Ek kaynaklara ihtiyaç duyulursa (örneğin resimler, komut dosyaları), istemci bunları sunucudan almak için sonraki HTTP isteklerini gönderebilir.
- Bağlantı Kapanması: Veri aktarımı tamamlandıktan sonra istemci, HTTP sürümüne ve sunucu ayarlarına bağlı olarak bağlantıyı kapatabilir veya sonraki istekler için açık tutabilir.
HTTPS, AES gibi simetrik şifreleme algoritmalarını kullanarak verileri iletimden önce şifreleyerek güvenli bir şekilde gönderir. Süreç şunları içerir:
- Şifreleme: Ağ üzerinden herhangi bir veriyi göndermeden önce HTTPS, onu AES gibi simetrik şifreleme algoritmalarını kullanarak şifreler. Bu, ele geçirilse bile verilerin uygun şifre çözme anahtarları olmadan okunamaz durumda kalmasını sağlar.
- Veri İletimi: Şifrelenmiş veriler ağ üzerinden istemciden sunucuya veya tam tersi şekilde iletilir. Bu aktarım, SSL/TLS anlaşması sırasında kurulan güvenli bağlantı aracılığıyla gerçekleşir.
- Şifre Çözme: Şifrelenmiş verileri aldıktan sonra, alıcı (istemci veya sunucu), SSL/TLS anlaşması sırasında oluşturulan paylaşılan simetrik şifreleme anahtarlarını kullanarak şifreyi çözer. Bu şifre çözme, alıcının orijinal düz metin verilerine güvenli bir şekilde erişmesine ve bunları işlemesine olanak tanır.
HTTPS, istemci ile sunucu arasında güvenli bir bağlantı kurmak için SSL/TLS el sıkışma aşamasında genellikle RSA (Rivest-Shamir-Adleman) gibi asimetrik şifreleme algoritmalarını kullanır. Asimetrik şifreleme, anahtar değişimi ve kimlik doğrulama amacıyla kullanılır. Güvenli bir bağlantı kurulduktan sonra HTTPS, istemci ile sunucu arasında iletilen gerçek verileri şifrelemek için AES (Gelişmiş Şifreleme Standardı) gibi simetrik şifreleme algoritmalarını kullanır. Asimetrik ve simetrik şifrelemenin bu kombinasyonu, HTTPS bağlantıları üzerinden değiştirilen verilerin gizliliğini, bütünlüğünü ve orijinalliğini sağlar.