Yazan : Şadi Evren ŞEKER

Veri güvenliğinde kullanılan bir protokol (teşrifat, protocol) çeşididir. Temel olarak ortadaki kişi (man in middle) saldırılarına karşı geliştirilmiştir. Amacı, şifreli veri iletişimi sırasında, iletişimi izleyerek sabote etmek isteyen kötü niyetli kişilere karşı güvenlik sağlamaktır.

Bilindiği üzere ortadaki kişi saldırısında, mesajlaşmanın üzerinden geçtiği bir kişi, her iki tarafa da sahte anahtarlar yollayarak , açık anahtar şifrelemesi (public key cryptography) kullanılan bir mesajlaşmaya saldırabilmekteydi. Bu saldırının nasıl önlenebildiği ve dolayısıyla ara kilit protokolü (interlock protocol) aşağıda açıklanmıştır:

Ali ve Bekir arasında mesajlaşma yapılmak isteniyor olsun. Mesajı açık anahtar şifrelemesi (public key cryptography) ile şifrelemek isteyen taraflar öncelikle umumi anahtarlarını (public key) karşı tarafa geçirirler:

Karşılıklı anahtar geçişinin ardından mesajlaşma başlar. Ancak buradaki mesajlaşma klasik açık anahtar şifrelemesinden biraz farklıdır. Örneğin Bekir’e mesaj iletmek isteyen Ali, mesajını klasik bir şekilde Bekir’in umumi anahtarı ile şifreleyerek yollamaz. Bunun yerine şifrelenmiş mesajın yarısını yollar. Ve bu adımla ara kilit protokolü başlamış olur.

İlk adımda yarısı yollanan mesaj Bekir tarafından alınır. Elbette mesaj yarım olduğu için Bekir’in hususi anahtarı (private key) bu mesajı açmak için kullanılamaz. Mesajın tamamı elde edilmeden de mesaj açılamayacaktır.

Bu yazı şadi evren şeker tarafından yazılmış ve bilgisayarkavramlari.com sitesinde yayınlanmıştır. Bu içeriğin kopyalanması veya farklı bir sitede yayınlanması hırsızlıktır ve telif hakları yasası gereği suçtur.

Bu adımda Ali den mesajın ikinci yarısı beklenecektir. İşte tam bu noktada ara kilit protokolünün kuvveti ortaya çıkmaktadır. Ali’nin ikinci mesajı yollaması ancak ve ancak Bekir’in bir mesaj parçası yollamasından sonra gerçekleşecektir. Ali, Bekir’den bir mesaj aldıktan sonra mesajın diğer yarısını yollayacaktır ve mesajın tamamını elde eden Bekir, mesajı kendi hususi anahtarı ile açacaktır. Benzer şekilde Ali’ye de mesajın ikinci yarısını yollayacak ve Ali de mesajın tamamını açacaktır.

Bu yeni durumda Bekir mesajı açabilecektir. Şayet sistemde örneğin Cüneyt isminde saldırgan olan bir kişi bulunsaydı ve aradaki mesajlaşmayı dinliyor olsaydı:

Bu durumda Cüneyt saldırı için taraflara kendi anahtarını sanki karşı tarafın anahtarıymış gibi dağıtacaktı:

Ancak Cüneyt’in anahtarı ile şifrelenen mesajlar, Cüneyt tarafından okunamayacaktı çünkü mesajın tamamına erişme şansı bulunmayacaktı. Buradaki kritik nokta mesajın yarısının açılamamasıdır. Ayrıca ikinci kritik nokta mesajların karşılıklı olarak yarım yollanmasıdır. Yan örneğin Ali, Bekir’e mesaj yollarken arka arkaya iki yarıyı yollasaydı, Cüneyt başarılı bir şekilde saldırabilecekti. Ancak Ali, Bekir’den bir mesaj yarısı gelene kadar beklemektedir. Bu durumda iki tarafta da mesajlar yarım halde olacaktır. Bu durumda Cüneyt saldırıyı gerçekleştiremez çünkü yarım mesajları açamaz.

Bu durumda ortadaki adam saldırısı başarısız hale getirilmiş olmaktadır ve açık anahtar şifrelemesi kullanılarak daha güvenli mesajlaşma gerçekleştirilebilir.

Elbette bu noktada kritik olan bir iki durum şudur. Örneğin Ali, Bekir’e bir mesaj yolladığı sırada Bekir de Ali’ye mesaj yollamak istemiyor olabilir. Yani teşrifatımızın (protokol) sağlıklı işlemesi için tarafların karşılıklı mesaj alışverişinde bulunması beklenir. Bu durumda Bekir cevap olarak başarılı bir şekilde iletişimi gerçekleştirdiğini bildiren bir onay (acknowledgement) mesajı geri yollarsa bu mesajın içeriğinin tahmin edilebilmesi ve sistemde yeni zafiyetler oluşturması mümkündür. Çözüm olarak anlamlı rastgele bir mesaj yollanabilir.

Diğer bir durum, mesajlaşmada kullanılan yarım mesaj kavramıdır. Örneğin blok şifreleme (block cipher) için bu durum bir problem oluşturabilir. 100 blokluk bir mesajın 50 bloğunun yollanması bir tehdit oluşturur. Bunun yerine örneğin blok boyutu 10 byte ise her bloğun ilk 5 byte’ını yollamak gerekir ki mesajın bir yarısına saldıran kişi açamasın.

Ayrıca şifreleme sırasında başlangıç yöneyi (initialization vector )kullanılıyorsa bu vektör mesajın ikinci yarısında yollanmalıdır ki ilk yarısına saldıran kişiye bir avantaj sağlamasın. Ayrıca ikinci yarıya saldıran kişinin de işine yaramasın.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir