2010-10-14 17 views
9

sırasında simetrik anahtarı oluşturmak kapsamaz:nasıl tarayıcı ben tipik https web senaryoda tarayıcı ile sunucu arasındaki SSL anlaşması üzerinde küçük bir karışıklık var SSL anlaşmasında

şimdiye kadar anlamış Ne

olduğunu SSL anlaşması sürecinde, istemci (bu durumda tarayıcı), ortak anahtarla (sunucudan alınan sertifika) rastgele seçilen simetrik anahtarı şifreler. Bu sunucuya geri gönderilir, sunucu özel anahtarla (simetrik anahtar) şifresini çözer. Bu simetrik anahtar, her iki uçtaki mesajları şifrelemek/şifresini çözmek için artık oturumun geri kalanı sırasında kullanılır. Bunu yapmanın ana nedenlerinden biri simetrik anahtarlar kullanılarak daha hızlı şifreleme olarak verilir.

Sorular 1) Tarayıcı bu "rasgele" seçilen simetrik anahtarı nasıl seçer ve üretir?

2) geliştiricileri (veya/ve tarayıcı kullanıcıları) simetrik anahtarlar üretme mekanizma üzerindeki kontrolünü var mı?

+0

istemci oturum anahtarı oluşturmak değildir; şifrelemez; ve iletmez. Oturum anahtarı bir anahtar anlaşma protokolü ile elde edilir. Açıklamanız temelde yanlış. Sorunuz yanlış bir varsayım üzerine kurulmuştur. – EJP

cevap

8

Here bağlantı kurulması nasıl çalıştığını HTTPS çok iyi bir açıklamasıdır. Ben oturum anahtarı, bu süreç "anahtar anlaşması protokolü" olarak bilinen iki taraf (istemci ve sunucu) tarafından nasıl elde edildiğine özetini sağlayacaktır çalıştığını burada nasıl:

  1. istemci 48 byte “öncesi üretir ana gizli ”rasgele değer.
  2. İstemci, girdiyi 128 bayta eşit yapmak için bu baytları rasgele verilerle doldurur.
  3. İstemci, sunucunun ortak anahtarıyla şifreler ve onu sunucuya gönderir.
  4. Ardından anahtar aşağıdaki şekilde her iki taraf tarafından üretilir usta:

    master_secret = PRF(
        pre_master_secret, 
        "master secret", 
        ClientHello.random + ServerHello.random 
    ) 
    

PRF da spec tanımlanan ve oldukça zeki oluyor “Sözde Rastgele Fonksiyon” dir. Bu sır, ASCII etiket ve biz anahtarlı-Hash Mesaj Kimlik Doğrulama Kodu (HMAC) MD5 ve SHA-1 karma fonksiyonlar hem sürümleri kullanılarak verin tohum veri birleştirir. Girişin yarısı her bir karma işlevine gönderilir. hatta MD5 ve SHA-1 zayıflıkları karşısında, saldırıya oldukça dirençlidir çünkü zeki. Bu işlem, kendimiz için geri bildirim sağlayabilir ve , ihtiyaç duyduğumuz sayıda bayt üretmek için sonsuza kadar yinelenir.

Bu prosedürün ardından, 48 byte “ana gizli” elde ederiz.

+0

İstemci, oturum anahtarını oluşturmaz; şifrelemez; ve iletmez. Oturum anahtarı bir anahtar anlaşma protokolü ile elde edilir. – EJP

+0

@EJP Haklısınız, cevabım tamamen yanlıştı, yeniden yazdım. Lütfen kontrol edin ve şimdi daha iyi olduğunu düşünüyorsanız bana bildirin. – Andrey