Yazan : Şadi Evren ŞEKER

Literatürde tuz ve sirke yöntemi (salt and vinegar) olarak geçen yöntem, veri güvenliğinde kullanılan ve şifrelenen mesaja ilave bilgi eklemeye dayanan bir yöntemdir. Basitçe bir şifreleme algoritmasına yapılabilecek sözlük saldırılarına (dictionary attack) karşı geliştirilmiştir.

Tuz yönteminde mesaja ilave bilgiler eklenerek, sözlük saldırısı yapacak kişinin tutması gereken kelime sayısını arttırmak amaçlanır. Sirke yönteminde ise aynı şifreleme algoritması tekrarlanarak saldırı yapacak kişinin ilave ara sözlük değerleri tutması amaçlanır.

Örneğin kullandığımız fonksiyon SHA-1 mesaj özetleme algoritması (message digest) olsun. Ve sistemimizde sadece 3 farklı kelimeyi SHA-1 fonksiyonuna sokuyor olalım.  Sistemimizde sırasıyla = “sadi” , “evren”, “seker” kelimelerini kullandığımızı düşünelim. Bu kelimelerin SHA-1 sonuçları aşağıda verilmiştir:

sadi = c3679f041e995f47e077ebc82bd47b3921b8ac57

evren = 4575314756073d6b6e1ba32908941ae67233a248

seker = e36fc60724dfec02b8ab39c6c3f8e9866449150c

Bu durumda diyebiliriz ki SHA-1 sonuçlarını sisteminde kaydeden birisi, biz sadi,evren veya seker kelimelerinden birisini kullandığımızda aynı sonucu görecek ve hangi kelimeyi kullandığımızı ayırt edebilecektir.

Tuz yönteminde bu kelimlere ilave birer bilgi ekliyoruz. Örneğin 2 bitlik bir sayı ekleyeceğimizi düşünelim ( 0,1,2,3 sayılarından birisi)

Bu durumda saldırgan tarafın hesaplaması gereken kelime sayısı bir anda 4×3 = 12’ye çıkmaktadır. Çünkü sözlüğündeki bütün kelimelere tuz eklenebilir ve 4 ihtimalli bir tuz eklentisi her kelime için ilave 4 sözlük kaydı tutmak gerektirir.

Örneğin sadece sadi kelimesi için :

sadi0=af9257e5048a28b2fc589bf1c966a8bb28c579fb

sadi1=af92bf69fb33d7d4b047479cb3e0d39016d1f13b

sadi2=1c6091c64ac86b5981073c56a6aa6772fcb1d60c

sadi3=d3e84e8efdb571900db2ade3ecdfc825d1365f08

sonuçlarının tamamının saklanması gerekir.

Sirke yönteminde ise sonuçlar istenildiği kadar tekrarlanarak SHA-1 fonksiyonuna verilebilir. Yani saldırgan taraf  örneğin “sadi” mesajı için azami 3 tekrarlı bir fonksiyonda aşağıdaki sonuçların hepsinin sözlükte tutmalıdır:

SHA1 (sadi)=c3679f041e995f47e077ebc82bd47b3921b8ac57

SHA1(SHA1 (sadi))=4f9bbf7b11f750f2ae0d0a680aae160e7ce7dfa4

SHA1(SHA1(SHA1(sadi)))=fed6a5b8f4cf091cf36bf596eaa9081064113005

Görüldüğü üzere gerek tuz, gerekse sirke yönteminde aynı miktarda kelime ile sözlük saldırısına karşı ilave ihtimaller oluşturularak saldırganın işini zorlaştırmak amaçlanmıştır.

Bir cevap yazın

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