SlideShare a Scribd company logo
Diffie-Hellman Key Exchange
GÜRKAN YILDIRIM
927219086
Ders: Kriptoloji ve Güvenlik Protokolleri
Eğitmen: Öğr. Gör. Mehmet Fatih ZEYVELİ
İnsanlığa ilk duyurulan açık anahtar algoritması,
Diffie ve Hellman`ın açık anahtarlı kriptografi
olarak tanımladıkları 1976 yılında yayımlanmış
"New Directions in Cryptography" isimli
makalelerinde yer aldı ve bu algoritma kriptografik
sisteme örnek olarak Diffie-Hellman Key Exchange
idi. Bir çok ticari uygulama bu anahtar değişimini
kullandı. Algoritmanın amacı, iki kullanıcının bir
anahtarı güvenli şekilde birbirlerine iletmeleri ve
daha sonrasında da bu anahtar yardımı ile şifreli
mesajları birbirlerine gönderebilmelerini
sağlamaktı. Algoritma anahtar değişimi ile
sınırlıdır.
GÜRKAN YILDIRIM
927219086
Giriş
Anahtar değiş-tokuşu için yaygın olarak kullanılan bir
protokoldür. Pek çok kriptografik protokolde iki taraf
aralarında bir iletişim başlatmak isterler. Başlangıçta
aralarında herhangi bir ortak gizliliğe sahip olmayan
taraflar gizli anahtar kriptosistemlerini kullanabilirler. Bu
durum için, Diffie-Hellman protokolü tarafından
sağlanan anahtar değiş-tokuşu, güvenli olmayan kanallar
üzerinden ortak bir gizli anahtar iletiminin sağlanmasına
bir çare bulmuştur. Diffie-Hellman problemi olarak
adlandırılan bu yöntem, kesikli logaritmalarla ilgili bir
problem üzerine kurulmuştur. Bu problemin çok zor
olduğu ve bazı durumlarda kesikli logaritma problem
kadar zor olduğu düşünülmektedir.
GÜRKAN YILDIRIM
927219086
Diffie-Hellman protokolünün, uygun bir
matematiksel grup kullanıldığında genelde güvenli
olduğu düşünülmektedir. Özel olarak, üslü ifadelerde
kullanılan üretici eleman geniş bir peryoda (sıraya)
sahip olmalıdır. Kesikli logaritma algoritmaları Diffie-
Hellman'a saldırmak için kullanılabilir ve -
parametrelerin doğru olarak seçildiğini kabul
edersek- şu anda yapılabileceklerin en iyisi pasif
saldırılardır. Eğer alışıldık bir aritmetik modülo asıl
sayı kullanılarak Diffie-Hellman uygulanılırsa,
yeterince geniş bir asal seçmek ve üretici elemanın
seçiminde özen göstermek yeterli olacaktır. Güç
algılanan problemler, üretecin kötü seçimlerinden
kaynaklanıyor olabilir.
Diffie-Hellman algoritmasının LAN (yerel network)
kullanıcıları arasında kullanımı için bir diğer
örnekte şu şekilde verilebilir: Diyelim ki bu ağ
altında çalışan her kullanıcı dayanıklı ve uzun birer
ve buna bağlı genel bir hesaplamış olsunlar.
Kişilerin açık anahtarları ve herkezce bilinen ve
değerleri herkezin erişebileceği merkezi bir
rehberde tutulduğu taktirde, herhangi bir anda bir
kullanıcısı mesajlaşmak istediği bir kullanıcısının
açık değerine ulaşabilecek ve onun için şifrelediği
mesajı kendisine gönderebilecektir. Eğer merkezi
rehber güvenilir ise, bu iletişim gizliliği ve kimlik
denetimini sağlamış olacaktır. Tüm bunlara rağmen
bu teknik, aktif tekrarlama gibi ataklara karşı
korumasız kalmaktadır.
GÜRKAN YILDIRIM
927219086
Diffie -Hellman ortak gizli anahtar oluşturma sistemi
ayrık logaritma -Hellman algoritması: problemini
üzerine kurulmuş ve güvenirliği çok büyük asal sayıları
seçmeye dayanmaktadır.[2],[3],[5] p yeteri kadar büyük
bir asal sayı olsun öyle ki Zp de ayrık logaritma
problemini çözmek mümkün olmasın. g'de Zp de
primitif bir kök (primitive root) olsun. p ve g herkes
tarafından bilinsin. A ve B kişileri aşağıdaki yolu
izleyerek ortak bir anahtar oluşturabilirler: A, 0 ≤ a ≤ p-
2 eşitsizliğini sağlayan ve tesadüfi olan bir a sayısı seçer.
c = ga (mod p)'yı hesaplar ve bunu B'ye gönderir. B, 0 ≤
b ≤ p-2 eşitsizliğini sağlayan ve tesadüfi olan bir b sayısı
seçer. d = gb (mod p)'yı hesaplar ve bunu A'ya gönderir.
A, ortak anahtar k' yı şu şekilde hesaplar: k = da = (gb )
a B, ortak anahtar k' yı şu şekilde hesaplar: k = cb = (ga )
b Böylelikle A ve B aralarında ortak bir anahtar olan k
için anlaşmış olurlar.
Sayısal bir örnek:
Ortak anahtarı oluşturmak için öncelikle p sayısını p=541 ve g sayısını g=2 seçelim. A kişisi
kendi gizli anahtarı olan a sayısını, a =137 ve B kişisi kendi gizli anahtarı olan b sayısını, b = 193
olarak belirlesin.
c = ga (mod p) → 208 = 2 137 (mod 541)
d = gb (mod p) → 195 = 2 193 (mod 541)
c ve d değerleri hesaplandıktan sonra a ve b kişileri bu değerleri birbirine göndeririler ve ortak
olan k anahtarı sayısal olarak şu şekilde hesaplanır;
k = cb = (ga ) b (mod p)
→ (2 137) 193 (mod 541)
→ (208) 193 (mod 541)
→ 486 (mod 541)
GÜRKAN YILDIRIM
927219086
Anahtarın Simetrik
Şifreleme Algoritmasında
Kullanımı
Bu bölümde Diffie-
Hellman ortak gizli anahtarı
oluşturduktan sonra bu gizli
anahtarı simetrik şifreleme
algoritmasında şifreleme ve
deşifreleme işlemlerin de
nasıl kullanıldığını gösteren
bir akış diyagramı
verilmiştir.
GÜRKAN YILDIRIM
927219086
KRIPTOANALIZ
Bugün, genel anahtar (veya asimetrik) şifreleme sistemleri temel olarak güvenli
olmayan kanallarda gizli anahtarlar oluşturmak ve dağıtmak için kullanılmaktadır [1].
Bu gizli anahtarlar daha sonra simetrik bir kriptografik protokol aracılığıyla şifreleme
için kullanılır.
Daha fazla taraf gerçek verileri sağlayabilir ve iki veya iki kişi arasındaki iletişimi
sağlayabilir. Genel anahtar şifreleme sisteminin doğal hızı, simetrik şifreleme
sistemindekinden daha yavaş olduğundan, tipik durumlarda, açık anahtar şifreleme
sistemi, gerçek verilerin dağıtılması için tercih edilen yöntemdir.
Öte yandan, gizli bir anahtarın dağıtılması gerektiğinde, bir açık anahtar
şifreleme sistemi çekici bir çözümdür. Bu, gizli veya gizli varlıklara güvenmemelerini
sağlayan güvenli bir iletişim kanalıdır.
KRIPTOANALIZ
Diffie-Hellman (DH) anahtar anlaşması protokolü, günümüzde yaygın
olarak kullanılan ilk açık anahtar şifreleme sistemidir. Mucitleri Whitfield Diffie
ve Martin Hellman, açık anahtar şifreleme ve dijital imzalar [2] üzerine Turing
Ödülü`nü tanıtan çığır açan makaleleri nedeniyle 2015 ACM Ödülünü kazandı.
DH protokolü, gizli bir anahtarda bir dizi mesajı değiş tokuş ederek birlikte
güvenli olmayan bir kanal oluşturur (iletişim kuran iki tarafın birbiri hakkında
önceden bilgisi yoktur).
Bu özellik sayesinde birçok popüler internet protokolü (DH yöntemi gibi)
tarafından benimsenmiştir. İnternet Protokolü Güvenliği (IPsec), Aktarım
Katmanı Güvenliği (TLS) ve Güvenli Kabuk (SSH), şifreleme anahtarları.
KRIPTOANALIZ
DH protokolündeki açık anahtar üretimi, ayrık logaritmanın zorluğunu (saldırgan
tarafından) hesaplar. DH protokolünün klasik sınırlamalarından biri, form kimlik
doğrulaması sağlamamasıdır.
Bu nedenle, iletişim kuran tarafın kimliği, DH protokolü ve uygun kimlik doğrulama
protokolü entegre edilebilir. Bu amaçla, kullanıcı kimlik doğrulamasını sağlamak için DH
protokolünün Dijital İmza Algoritması (DSA) ile entegre olmayı düşünüyoruz. İkincisi,
1991 yılında Ulusal Standartlar ve Teknoloji Enstitüsü (NIST) tarafından önerildi ve
Dijital İmza Standardının (DSS) bir parçasıdır.
DSA imza mesajı açıkça gönderilir. Beklenmedik veri şifrelemesi sağlayın. Entegre
DH-DSA protokolü ilk olarak tanıtıldı ve hem güvenli hem de kimliği doğrulanmıştır.
Kimlik doğrulamaya ulaşmak için bu yöntem, içinde alınıp verilen mesajların
değiştirilmesini önerir. DH anahtarlı DSA. O zamandan beri, protokolün birçok zayıflığı
[4], [5] ve çeşitli değişiklikler [6] - [9] önerildi.
KRIPTOANALIZ
Güvenlik Özellikleri
Bu bölümde, güvenli iletişim protokolünün üç önemli işlevini kısaca tanıtıyor ve açıklıyoruz.
İletme gizliliği (veya mükemmel iletme gizliliği), (belirli) bir anahtar anlaşması protokolünün
uzun vadeli şifreleme anahtarlarını tehlikeye atma işlevidir ve bu anahtarlar geçmiş oturum
anahtarlarını yok etmez. Başka bir deyişle, ileri gizlilik işlevi kullanıcının oturum anahtarını yok
etmeyecektir, örneğin, sunucunun özel anahtarı yok edilecektir. Ayrıca, oturumdan veya
paroladan sonra gelecekteki özel anahtar tehlikesini de önler.
Bilinen anahtar güvenliği, diğer oturum anahtarlarına zarar vermek için oturum
anahtarlarının tehlikeye atılmadığı (belirli) anahtar sözleşme anlaşmalarının bir işlevidir. Bu
nedenle, iletişim kuran iki tarafın, her yönde birer tane olmak üzere iki oturum anahtarı
oluşturduğunu varsayın. Düşman konuşmayı yakalasa bile, bir yöndeki anahtarın ters yönde
oturum anahtarını hesaplaması yine de zor olacaktır. Tekrar saldırı direnci, (belirli) güvenliğin bir
işlevidir. Tekrarlanan saldırılara direnmek için iletişim protokolünde geçerli bir mesaj yakalandı
ve ardından mesaj kötü niyetle tekrarlandı. Tekrar saldırılarını önlemek için, bu mekanizmayı
doğrulamak için iletişim kuran tarafların bazı mekanizmaları bulunmaktadır.
KRIPTOANALIZ
Step Alice 𝑥𝐴, 𝑦𝐴 Bob 𝑥𝐵, 𝑦𝐵
1 Generater Random 𝑣 ∈ 𝑍𝑞
mA=gv
mod p
𝑟A = mA mod q
𝑠A = 𝑣−1
[𝐻 (mA) + 𝑥𝐴𝑟𝐴 ] mod q
mA, 𝑠A
2 Generater Random w∈ 𝑍𝑞
m𝐵=g𝑤
mod p
𝑟𝐵 = m𝐵 mod q
𝑠𝐵 = 𝑤−1
[𝐻 (m𝐵) + 𝑥𝐵𝑟𝐵 ] mod q
m𝐵, 𝑠𝐵
3 Verify Signature (𝑟𝐵, 𝑚𝐵) of message m𝐵
Compute 𝐾 = 𝑚𝐵
𝑣
𝑚𝑜𝑑 𝑝
Verify Signature (𝑟𝐴, 𝑚𝐴) of message m𝐴
Compute 𝐾 = 𝑚𝐴
𝑤
𝑚𝑜𝑑 𝑝
KRIPTOANALIZ
Arazi`nin Protokolü
Arazi`nin Protokolü
DH protokolünü entegre etmeye yönelik en eski girişimlerden biri DSA, Land [3] idi. Hedef, paylaşılan bir oturum
anahtarı olan Alice ve Bob iletişim kuran iki taraftır. Bu bölümde, esasen Land`in anlaşmasıydı. Sonra zayıf yönlerini
tartışıyoruz. Özellikle, protokolün bilinen anahtar güvenliği sağlamadığını ve tekrar saldırılara açık olduğunu gösterir.
Temel protokol adımları Şekil 1`de gösterilmektedir.
Başlangıçta, Alice ve Bob protokolü L, p, q ve g parametrelerini seçtiler. Bu parametrelerin (düşmandan) gizli
tutulmasına gerek yoktur. Daha sonra Alice ve Bob, uzun vadeli anahtarlar adı verilen kendi genel ve özel şifreleme
anahtarlarını oluşturdu. Aşağıda açıklandığı gibi protokol parametreleri ve uzun vadeli anahtarlar oluşturun.
i) Alice ve Bob seçer
 64 ve 512 ≤ L ≤ 1024`ün katı olan bir L sayısı
 büyük bir p, 2 L − 1 <p <2 L
 p − 1 ve q`nin bölen üssü 2159 <q <2160
 g Zp`de q çarpım sırasına sahip bir eleman (yani, g = h (p − 1) / q mod p> 1 bazı rasgele tamsayı h için 1 <h <p - 1) ile,
burada Zp = {0, 1,. . . , p - 1}.
(ii) Alice üretir
 rastgele bir 0 olan özel anahtarı xA < xA <q
 açık anahtarı yA = gxA mod s.
(iii) Bob üretir
 xB rastgele bir sayı olan özel anahtarı 0 < xB <q
 açık anahtarı yB = g xB mod p
KRIPTOANALIZ
Arazi`nin Protokolü
Mesaj alışverişi
Protokol parametrelerini ve uzun vadeli anahtarı oluşturduktan sonra, Alice ve Bob, mA ve mB
mesajlarıyla birlikte kendi doğru oluşturulmuş imzaları olan sA ve sB`ye sahip olurlar. Aşağıda, olay ve imza
mesajı oluşturmak için gereken sırayı açıklıyoruz.
(iv) Alice
 rastgele bir sayı üretir v ∈ Zq
 mA = gv mod p
 rA = mA mod q hesaplar
 mA mesajı için sA imzasını şu şekilde hesaplar: sA = v −1 [H (mA) + xArA] mod q, burada v −1 v mod q`nun çarpımsal
tersidir (yani, v −1v mod q = 1) ve H, mesaj m`de güvenli bir hash işlevidir. 160 bitlik bir hash değeri üretir, H (m)
 Bob`a (mA, sA) gönderir.
(v) Bob
 rastgele bir sayı üretir w ∈ Zq
 mB = gw w mod p
 rB = mB mod q
 sB = w−1 [H (mB) + xBrB] mod q
 Alice`e (mB, sB) gönderir
KRIPTOANALIZ
Mesaj alışverişi
Mesaj doğrulama ve anahtar türetme
Yukarıdaki mesaj alındığında, her iki taraf bağımsız olarak paylaşılan bir oturum anahtarı K alabilir. Değiş tokuş
edilen düşmanların mesajlarını gözlemlemek K anahtarını belirleyemez, çünkü ayrık logaritma varsayımı problemini
çözmek zordur (Varsayım 1) [12].
(vi) Alice
 Bob`dan alır (mB, sB)
 rB = mB mod q hesaplar
 mB mesajının DSS imzasını (rB, sB) doğrular
 (gizli) paylaşılan oturum anahtarını hesaplar K = mv
B mod p.
(vii) Bob
 Alice`den alır (mA, sA)
 rA = mA mod q hesaplar
 mesaj mA`nın DSS imzasını (rA, sA) doğrular
 (gizli) paylaşılan oturum anahtarını hesaplar K = mw
A mod p
Alice ve Bob tarafından hesaplanan anahtar K`nin aynısı. Yani Alice tarafından hesaplanan anahtar K =mv
B mod p
=(gw mod p)v mod p = gwv mod p. Benzer şekilde, Bob tarafından hesaplanan anahtar K = mw
A mod p = (gv mod p)w mod
p = gvw mod p. Son olarak, Varsayım 1 nedeniyle, bir düşman gözlemleyerek (gv mod p) ve (gw mod p), ne v ve w ne de
(gvw mod p).
KRIPTOANALIZ
Mesaj alışverişi
Güvenlik analizi
Bu bölümde arazinin güvenlik analizini tanıtıyoruz. Protokol, bilinen temel güvenlik işlevine odaklanır. Aşağıdaki iki
özel anahtardan birinin (xA veya xB) ele geçirilmesi durumunda, düşman, K`ye benzer şekilde önceki tüm paylaşılan
anahtarları hesaplayabilir. [4] Aşağıda gösterildiği gibi. Unutmayın, değişim mesajının imzası:
sA = v −1 [H (mA) + xArA] mod q (1)
sB = w −1[H (mB) + xBrB] mod q (2)
(1) ve (2) `den:
v = s−1
A[H (mA) + xArA] mod q (3)
w = s−1
B [H (mB) + xBrB] mod q (4)
(3) ve (4) `ü çarparak şunu elde ederiz:
vw = s-1
As-1
B [H(mA)+xArA] [H (mB) + xBrB] mod q (5)
Dolayısıyla, paylaşılan anahtar K aşağıdaki gibi ifade edilebilir:
K = gvw mod p
= gs-1
A
s-1
B
[H (m
A
) + x
A
r
A
] [H (m
B
) + x
B
r
B
] mod p (6)
(6) `da bazı manipülasyonlar yaparak şunu elde ederiz:
Ks
A
s
B = g [H (m
A
) + x
A
r
A
] [H (m
B
) + x
B
r
B
] mod p (7)
KsAsB = gH(m
A
) H(m
B
) gx
A
r
A
H(mB) gH(m
A
) x
B
r
B gx
A
r
A
x
B
r
B mod p (8)
KRIPTOANALIZ
Mesaj alışverişi
Alice ve Bob`un genel anahtarları aşağıdaki gibidir:
yA = gxA mod p (9)
yB = gxB mod p (10)
Dolayısıyla, (9) ve (10) nedeniyle (8) `den şunu elde ederiz:
KsAsB = gH(mA) H (mB) yr
A
AH (m
B
) yH
B
(m
A
)r
B (gx
A
x
B)r
A
r
B mod p (11)
(11) `de, K paylaşılan anahtarının, herkesin bildiği bir miktar ve gx
A
x
B mod p miktarı ile temsil
edilebileceğini gözlemliyoruz, yani düşman onu alırsa. Oturum anahtarı K ise, gx
A
x
B mod p sayısı
hesaplanabilir. Bu nedenle düşman hepsini hesaplayabilecektir. Tüm şifrelenmiş ve önceki oturum
anahtarlarının şifresini çözmek için mA ve mB mesajları K. Bu, protokolün bilinen herhangi bir
anahtar güvenliği sağlamadığı anlamına gelir.
Son olarak, Land`in protokolü tekrarlanan saldırılara karşı savunmasızdır. Bu nedenle, örneğin
düşman mesajı engelleyebilir. İmza sA`yı mA ile çalın ve ardından Bob`a dönün. Bu durumda,
Bob`un aldığı mesajın yeni mi yoksa yeni mi olduğu. [9], saldırı tekrarını azaltmak için protokoldeki
zaman damgasını kullanmak için bir yöntem önerdi.
KRIPTOANALIZ
Mesaj alışverişi
Step Alice 𝑥𝐴,𝑦𝐴 Bob 𝑥𝐵,𝑦𝐵
1 Generater Random 𝑣 ∈ 𝑍𝑞
mA=gv
mod p
mA
2 Generater Random w∈ 𝑍𝑞
𝐾𝐴𝐵= 𝑚𝐴
𝑥𝐵
mod p
𝐾𝐵𝐴= 𝑦𝐴
𝑤
mod p
m𝐵=g𝑤
mod p
𝑟𝐵 = m𝐵 mod q
𝑠𝐵 = 𝑤−1
[𝐻 (m𝐵║ 𝐾𝐵𝐴║𝐾𝐴𝐵+
𝑥𝐵𝑟𝐵 ] mod q
m𝐵,𝑠𝐵
3 𝐾𝐴𝐵= 𝑦𝐵
𝑣
mod p
𝐾𝐵𝐴= 𝑚𝐵
𝑥𝐴
mod p
𝑟𝐴= 𝑚𝐵 mod q
Verify Signature (𝑟𝐵,𝑚𝐵) of message m𝐵
𝑟𝐴= 𝑚𝐴 mod q
𝑠𝐴 = 𝑣−1
[𝐻 (m𝐴║ 𝐾𝐴𝐵║𝐾𝐵𝐴+ 𝑥𝐴𝑟𝐴 ] mod q
𝑠A
4 𝑟𝐴= 𝑚𝐴 mod q
Verify Signature (𝑟𝐴,𝑚𝐴) of message m𝐴
Harn`in Protokolü
Bu bölümde, Harn ve ark. Tarafından önerilen üç
aşamalı DHDSA protokolünün bir varyantını tanıtıyor ve
analiz ediyoruz.
Protokol
Harn`ın anlaşması ile Land`ın anlaşması arasında bazı
benzerlikler vardır. Farklılıklar aşağıda tartışılmaktadır. Şekil
2 ayrıca basit protokolün adımlarını gösterir.
Popüler İnternet güvenliği protokollerine benzer
şekilde, Harn`ın TLS ve IPsec protokolleri, her yönde bir
anahtar olmak üzere iki farklı paylaşılan oturum anahtarıdır.
Özellikle, KAB oturum anahtarı Alice`den Bob`a gönderilen
mesajı şifrelemek için kullanılır ve KBA oturum anahtarı
Bob`dan Alice`e gelen mesajı şifrelemek için kullanılır. Söz
konusu anahtar Alice tarafından (12) ve (13) aracılığıyla
oluşturulmuştur:
KRIPTOANALIZ
Harn`in Protokolü
KAB = y v
B mod p
KBA = mx
A
B mod p (12)
KAB = m x
B
A mod p
KBA = yw
A mod p (13)
(yA, xA) ve (yB, xB) `nin sırasıyla Alice ve Bob için genel ve özel anahtarlar olduğunu hatırlayın. Benzer şekilde, mA ve mB de
Alice ve Bob arasında değiş tokuş edilen mesajlar olarak tanımlanır ve Land`in protokolüne uygun olarak tanımlanır:
mA = gv mod p
mB = gw mod p (14)
(9), (10) ve (14) kullanılarak, (12) ve (13) denklemleri aşağıdaki gibi dönüştürüldü:
KAB = gxBv mod p
KBA = gxAw mod p (15)
İki oturum anahtarı kullanıldığından, sA ve sB imzaları aşağıdaki gibi tanımlanır (Arazi protokolünden farklı):
sA = v −1 [H (mA || KAB || KBA) + xArA] mod q (16)
sB = w −1 [H (mB || KBA || KAB) + xBrB] mod q (17)
nerede || bitiştirme operatörüdür.
(16) ve (17) `de, mesaj imzaları sA ve sB, sırasıyla mesaj mA ve mB olan oturum anahtarına bağlıdır. Bu nedenle, Land
protokolünün aksine, mA mesajı başlangıçta bir imza olmadan gönderilir (adım 1). Çünkü Alice bunu ilk başta bilmiyordu. KBA için
gerekli mB`yi hesaplayın. Bu nedenle, sA imzalamak 3. adıma kadar beklemelidir.
KRIPTOANALIZ
Harn`in Protokolü
Güvenlik Analizi
Bu bölümde güvenlik özelliklerini tartışıyoruz. Hahn`ın anlaşması. Özellikle, bilinen anahtar güvenlik,
yönlendirme gizliliği ve saldırı önleme özelliklerine dayalı protokol analizi sağlanmaktadır.
1) Bilinen anahtar güvenliği: Bilinen anahtar güvenlik işlevi ile ilgili olarak, seans anahtarı, KAB ve KBA
hakkında ne kadar bilgi sızdırıldığı, Alice ve Bob arasında sA ve sB`nin imzasını gözlemleyen düşmanla
paylaşılır. Bu amaçla, aşağıda KAB ve KBA arasındaki ilişkiyi ortaya çıkarmak için (16) ve (17) `yi
dönüştürüyoruz.
(16) ve (17) `nin her iki tarafını v ile çarparak başlayın ve sırasıyla w:
sAv = [H (mA || KAB || KBA) + xArA] mod q (18)
sBw = [H (mB || KBA || KAB) + xBrB] mod q (19)
XArA ve xBrB için sırasıyla (18) ve (19) `u çözün:
xArA = [sAv - H (mA || KAB || KBA)] mod q (20)
xBrB = [sBw - H (mB || KBA || KAB)] mod q (21)
Çarpma (20) ve (21):
xArA [sBw - H (mB || KBA || KAB)] =
xBrB [sAv - H (mA || KAB || KBA)] mod q (22)
Yukarıdaki denklem şuna eşdeğerdir:
xArAsBw + xBrBH (mA || KAB || KBA) =
[xBrBsAv + xArAH (mB || KBA || KAB)] mod q (23)
KRIPTOANALIZ
Harn`in Protokolü
G`yi (23) modulo p`nin her iki tarafının gücüne yükseltin:
gxArAsBw + xBrBH (mA || KAB || KBA) =
gxBrBsAv + xArAH (mB || KBA || KAB) mod p (24)
(9), (10) ve (15) `i (24)` e değiştirin:
(KBA) rAsB (yB) rBH (mA || KAB || KBA) =
(KAB) rBsA (yA) rAH (mB || KBA || KAB) mod p (25)
(25) `deki iki aşama arasındaki ilişkiye bakılarak düşmanın anahtarlardan birini bildiği sonucuna varılabilir. Paylaşılan anahtar, başka bir paylaşılan
anahtarın hesaplanması problemi en azından ayrık logaritmanın çözülmesiyle aynıdır.Geleneksel bilgisayarlarda etkili bir hesaplama yöntemi yoktur [6],
[12].
2) İletim gizliliği: Daha sonra, gelişmiş gizlilik hakları [7], [13] ile Harn protokolünün bir güvenlik analizini gerçekleştiriyoruz. Yönlendirme gizliliği Uzun
vadede, özel anahtar (yani xA veya xB) tehlikeye girdiğinde, rakip, oluşturulan oturum anahtarını (yani KAB ve KBA) önceden belirleyemez.
(12) ve (13) `ten hatırlayın, oturum anahtarları aşağıdaki gibi ifade edilir:
KAB = m x
A
B mod p
KBA = m x
B
A mod p (26)
Burada mA ve mB, güvenli olmayan kanallarda ve dolayısıyla düşmanlar arasında Alice ve Bob arasında değiş tokuş edilen miktarlardır. Düşmanın xA
aldığını varsayalım. Daha sonra KAB (26) ile kolayca hesaplanabilir. Benzer şekilde, xB elde edildiğinde, KBA hesaplanabilir. Bu nedenle bu yöntemler gizlilik
sağlamaz.
3) Saldırı direncini tekrarlanması: Bir tekrar saldırısında düşmanın geçerli bir mesajı yakalayıp hedef alıcıya tekrar göndereceğini unutmayın. Harn`ın
protokolü aşağıdaki nedenlerle saldırıları tekrarladı. Alice`in Bob`a imzalı bir mesaj (mA, sA) gönderdiğini hayal edin. Mesaj ve imzası sırasıyla (14) ve (16)
tarafından verilmektedir. SA`nın türetilmesinin KBA`ya ve w`ye bağlı olduğuna dikkat edin (15). Bununla birlikte, üçüncü bölümde gösterildiği gibi, w,
Bob`un özel oturum anahtarıdır. Bu nedenle Bob, alınan mesaj mA tazedir. Benzer şekilde Alice, Bob`un gönderdiği mesajın güncelliğini doğrulayabilir.
KRIPTOANALIZ
Harn`in Protokolü
Phan`in Protokolü
Bu bölümde, Phan [7] tarafından önerilen DHDSA protokolünün varyantlarını tanıtıyor ve
analiz ediyoruz. Temel protokol adımları da Tablo 3`te gösterilmektedir.
Step Alice 𝑥𝐴, 𝑦𝐴 Bob 𝑥𝐵, 𝑦𝐵
1 Generater Random 𝑣 ∈ 𝑍𝑞
mA =gv mod p
nA =𝑦𝐴
𝑣
mod p
mA, nA)
2 Generater Random w ∈ 𝑍𝑞
𝐾𝐴𝐵 = 𝑚𝐴
𝑥𝐵𝑤
mod p
𝐾𝐵𝐴 = 𝑛𝐴
𝑤
mod p
m𝐵 =g𝑤 mod p
𝑛𝐵 =𝑦𝐵
𝑤
mod p
𝑟𝐵 = m𝐵 mod q
𝑠𝐵 = 𝑤−1 [𝐻 m𝐵║ 𝐾𝐵𝐴║𝐾𝐴𝐵+ 𝑥𝐵𝑟𝐵 ] mod q
m𝐵
, 𝑛𝐵, 𝑠𝐵
3 𝐾𝐴𝐵 = 𝑛𝐵
𝑣
mod p
𝐾𝐵𝐴 = 𝑚𝐵
𝑥𝐴𝑣
mod p
𝑟𝐵 = 𝑚𝐵 mod q
Verify Signature (𝑟𝐵, 𝑚𝐵 of message m𝐵
𝑟𝐴 = 𝑚𝐴 mod q
𝑠𝐴 = 𝑣−1 [𝐻 m𝐴║ 𝐾𝐴𝐵║𝐾𝐵𝐴+ 𝑥𝐴𝑟𝐴 ] mod q
𝑠𝐴
4 𝑟𝐴 = 𝑚𝐴 mod q
Verify Signature (𝑟𝐴, 𝑚𝐴 of message m𝐴
KRIPTOANALIZ
Phan`in Protokolü
Protokol
Phan`ın anlaşması, Harn`ın anlaşmasının bir değişikliği olarak görülebilir. Anlaşma, aşağıdaki tartışma farklıdır.
Alice ve Bob, sırasıyla nA ve nB ek rasgele miktarlar üretir. Bu mesajlar mA, mB taşır ve paylaşılan bir anahtar
oluşturmak için kullanılır. özellikle:
nA = yv
A mod p
nB = yw
B mod p (27)
Alice tarafından üretilen paylaşılan anahtarlar şunlardır:
KAB = nv
B mod p = g xBvw mod p
KBA = mx
A
Bw mod p = gxAvw mod p (28)
Bob tarafından oluşturulan paylaşılan anahtar aşağıdadır:
KAB = mx
A
bw mod p = g xBvw mod p
KBA = nw
A mod p = g xAvw mod p (29)
Phan protokolünün yB`si yerine nB`yi kullanın ve (28) `i (12) ile karşılaştırın. Aşağıda gösterilen alt bölümde
bu, yB tarafından iyi bilinmektedir, ancak nB tarafından bilinmemektedir. Aynı nedenden ötürü, Bob (29) anahtarı
tarafından üretilen akım, yA yerine nA`ya bağlıdır.
KRIPTOANALIZ
Phan`in Protokolü
Güvenlik Analizi
Bilinen anahtar güvenliği ile ilgili olarak, Phan`ın protokolü Harn`ın protokolüyle aynı işleve sahiptir.
Özellikle, rakip paylaşılan oturum anahtarını (KAB gibi) biliyorsa, diğer paylaşılan oturum anahtarını (KBA)
dijital olarak çıkarmak zordur.
Aşağıda Phan protokolünün gelişmiş gizlilik özelliklerini tartışıyoruz. Uzun vadeli özel anahtar bu işlevi
tehlikeye atarsa, önceden oluşturulmuş oturum anahtarının korunması gerekir. Bu nedenle, xA`nın yok
edildiğini varsayalım. (28) ve (29) `da düşmanın KBA`sını hesaplamak için w bilinmelidir. Ancak, bölüm
III`ten Bob tarafından yapıldığını ve asla Alice`e gönderilmediğini hatırlayarak (bu yüzden yakalandı).
Lütfen düşmanın yine de müdahale edebileceğini unutmayın. mB
w, g`ye eşittir. Bununla birlikte, mB ve g`yi
bilmek w`yi hesaplamak zordur (ayrık logaritma problemi).
Benzer şekilde, xB yok edilirse, rakibin KAB`ını hesaplamak için hala v`yi bilmeniz gerekir. Ancak, v Alice
tarafından oluşturulmuşsa, asla Bob`a gönderilmeyecek ve bu nedenle yakalanacaktır. Bu nedenle, Phan
protokolünün iletme gizliliğini sağlar.
Phan`in Protokolü
KRIPTOANALIZ
Ayrık Logaritma Atağı
Young ve Yung ikilisinin çalışmalarında, kleptografi alanında en çok işi yaptılar ve
burada Diffie-Hellman anahtar değişimine [9] saldırılarının basitleştirilmiş bir
versiyonunu tartışacaklar. Bu saldırı senaryosuna göre aktif kriptografik sistemin
üreticisi, ürettiği sistemin kullanıcılarından gizli bilgileri sızdırmaya çalışır. Bu işlem,
herkese açık olarak yayınlanacak bir genel anahtar oluştururken arka kapı bilgilerini
gizlemeye çalışacaktır. Bu amaçla, saldırgan ürettiği her sistem için en az 160
benzersiz kimlik değeri yerleştirdi. Mekanizma, kimlik değeri ile gizli anahtarı
birleştirerek bir karma işlevi sağlar ve böylece aşağıdaki anahtarı hesaplar.
Bu saldırıda saldırgan, Alice ile Bob arasındaki Diffie-Hellman anahtar değişim
protokolünün çıktısı olan açık anahtarı elde edebilecek. Taraflardan birine bir Truva atı
yerleştiren bir saldırgan, genel anahtarı açığa çıkarmak için yeterlidir. Bu saldırı
senaryosunda Truva atı Alice`nin cihazında bulunuyor.
KRIPTOANALIZ
Ayrık Logaritma Atağı
Saldırı
Saldırgan, trafik kaydı 𝐴𝑖 ve 𝐵𝑖 değerlerini pasif olarak dinler ve Alice ile Bob arasındaki K2`yi elde etmek için kullanır.
1. 𝐴1 ve 𝐵2 değerini ele geçirir ve 𝐴1𝑋 𝑚𝑜𝑑 𝑝 hesaplar.
2. Saldırgan ID`yi bildiğinden 𝑎2 = (𝐼𝐷||𝑌 𝑎1 𝑚𝑜𝑑 𝑝) değerini hesaplar.
3. 𝐵2 𝑎2 𝑚𝑜𝑑 𝑝 hesaplayarak 𝐾2 ortak anahtarını elde eder.
Not: Bu saldırı yöntemine (𝑡, 𝑡 + 1) -thief saldırısı adı verilir, bu da anahtarın 𝑡 + 1 genel anahtardan çıkarılabileceği
anlamına gelir.
KRIPTOANALIZ
Ayrık Logaritma Atağı
Atak mekanizması:
(p ve q asal sayıları (p = 2q + 1); ∗ bir üretici ve sırası 𝑞; 𝐻: {0,1} ∗ → 𝑍𝑞; 𝑌 = 𝑝 mod p saldırganın genel anahtarı ve
𝑋 anahtarı; 𝐴𝑖 = 𝑔 ai mod p Alice`nin açık ve gizli anahtarları ; 𝑌 Alice`nin cihazında bulunur.)
1. Alice rasgele 𝑎1 ∈ Zq seçip 𝐴1 = 𝑔𝑎1 of değerini hesaplayarak Bob`ya gönderir. Bob rastgele 𝑎1 ∈ Zq seçer ve
ardından 𝐵1 = 𝑔1 𝑚𝑜𝑑 p değerini hesaplayarak Alice`ye gönderir.
2. Alice ve Bob, K1 = 𝑎1𝑏1𝑏 mod p işlevinin açık anahtarını hesaplar. Alice, 𝑎1 değerini bir sonraki anahtar
değişikliğine kadar saklayacaktır.
3. Alice bir sonraki anahtar değişikliğini hesapladığında 𝑎2 = 𝑎2 𝑚𝑜𝑑 p değerini hesaplamak için a2 = 𝐻 (𝐼𝐷 || 𝑎1
𝑚𝑜𝑑 p) hesaplanarak Bob`ya gönderilir. Bob 𝑏2∈𝑍𝑞 rastgele seçim, 𝐵2 = 𝑔
𝑏2 𝑚𝑜𝑑 𝑝 değerini hesaplar ve Alice`ye gönderir.
4. Alice ve Bob 𝐾2 = 𝑔 𝑎2𝑏2 𝑚𝑜𝑑 𝑝 ortak anahtarını hesaplar.
Diffie-Hellman (Ortadaki Adam)
Diffie-Hellman, anahtar değişimi için kullanılır. Bob ve Alice iki değer (g ve p) üzerinde hemfikirdir,
burada p asal sayıdır. Sonra Bob ve Alice rastgele iki sayı (a ve b) üretir ve değerleri değiştirir. Maalesef
ortadaki kişi saldırıya açık ve Eve iki anahtar ürettiğinde biri Bob`a, diğeri Alice`e verilecek:
g: 15 (a shared value), n: 1009 (a prime number)
Eve`s value: 7
== Random value generation ===
Alice calculates:
a (Alice random): 5
Alice value (A): 607 (g^a) mod p
Bob calculates:
b (Bob random): 9
Bob value (B): 280 (g^b) mod p
==Alice sends value to Eve ===
Eve takes Alice`s value and calculates: 968
Bob gets Eve`s value and calculates key of: 206
==Bob sends value to Eve ===
Eve takes Bob`s value and calculates: 540
Alice gets Eve`s value and calculates key of: 540
KRIPTOANALIZ
Diffie-Hellman (Ortadaki Adam)
Method
Bu durumda, Eve hangi değeri alırsa alsın, Bob ve Alice`in
rastgele sayılarına göre bir değer döndürecektir.
Örneğin, g = 15 ve p = 1011 ve Alice rastgele bir 5 değeri
kullanıyorsa, Alice anahtar için aşağıdakileri hesaplayacaktır:
A=155 mod 1011 = 114
Bob rastgele 9 değerini alırsa, Bob şunları hesaplayacaktır:
B=159 mod 1011 = 462
Eve tünelde Alice`in değerini değiştirerek şunu verir:
1147 mod 1011 = 402
Alice, 402 değerini alır. Şunların anahtarını hesaplar:
KeyAlice = 4025 mod 1011 = 636
Bob 426 değerini alır ve şunun anahtarını hesaplar:
KeyBob = 4629 mod 1011 = 483
Bu elbette yanlış çünkü Diffie-Hellman yöntemi de aynı
değeri sağlamalıdır. Ancak, Eve aracıdır, bu nedenle temelde
mesajın şifresini çözebilen ve yeniden şifreleyen iki anahtarı
vardır
KRIPTOANALIZ
Diffie-Hellman (Ortadaki Adam)
DF için aşağıda örnek kod yer almaktadır:
import random
import base64
import hashlib
import sys
g=15
p=1011
a= 5
b = 9
eve = 7
message=21
A=(g**a) % p
B=(g**b) % p
Eve1 = (A**eve) % p
Eve2 = (B**eve) % p
Key1= (Eve1**a) % p
Key2= (Eve2**b) % p
KRIPTOANALIZ
print(`g: `,g,` (a shared value), n: `,p, ` (a prime number)`)
print(`n== Random value generation ===`)
print(`nAlice calculates:`)
print(`a (Alice random): `,a)
print(`Alice value (A): `,A,` (g^a) mod p`)
print(`nBob calculates:`)
print(`b (Bob random): `,b)
print(`Bob value (B): `,B,` (g^b) mod p`)
print(`n==Alice sends value to Eve ===`)
print(`Eve takes Alice`s value and calculates: `,Eve1)
print(`Alice gets Eve`s value and calculates key of: `,Key1)
print(`n==Bob sends value to Eve ===`)
print(`Eve takes Bob`s value and calculates: `,Eve2)
print(`Bob gets Eve`s value and calculates key of: `,Key2)
Diffie-Hellman (Ortadaki Adam)
Sonuç
Bu makalede üç güvenlik analizi anlatılmıştır. Entegre DH-DSA protokolünün türü.
Özellikle, gelişmiş gizlilik, bilinen temel güvenlik ve tekrar saldırı direnci işlevlerine
odaklanıyoruz. Land`in anlaşması ileri gizlilik sağlamaz ve tekrar saldırılara karşı
savunmasızdır. Bunun nedeni, oluşturulan oturum anahtarlarının birbirinden bağımsız
olmasıdır. Bu nedenle, düşman ödün verirse, bir oturum anahtarı herkese açık olarak değiş
tokuş edilen mesajlara dayanır, böylece diğer oturum anahtarları kolayca tanımlanabilir.
Harn`ın protokolü bilinen temel güvenlik ve tekrar saldırılara karşı direnç sağlar.
Yüksek düzeyde mahremiyet yoktur. Son olarak, Phan`ın protokolü yukarıda
bahsedilen üç güvenlik özelliğine de sahiptir. Gelecekteki araştırmalarda, anahtar
güncelleme, tehditler (bilinmeyen anahtar paylaşım saldırıları gibi) gibi diğer güvenlik
işlevlerini göz önünde bulundurarak DH-DSA protokolünü ve türevlerini incelemeyi
planlanmaktadır.
KRIPTOANALIZ
Teşekkürler

More Related Content

What's hot

Diffie hellman key exchange algorithm
Diffie hellman key exchange algorithmDiffie hellman key exchange algorithm
Diffie hellman key exchange algorithm
Sunita Kharayat
 
Hping, TCP/IP Paket Üretici
Hping, TCP/IP Paket ÜreticiHping, TCP/IP Paket Üretici
Hping, TCP/IP Paket Üretici
BGA Cyber Security
 
Ethical Hacking
Ethical HackingEthical Hacking
Ethical Hacking
Keith Brooks
 
Kriptoloji kriptolama teknikleri
Kriptoloji kriptolama teknikleriKriptoloji kriptolama teknikleri
Kriptoloji kriptolama teknikleri
selimcihan
 
SSH - Secure Shell
SSH - Secure ShellSSH - Secure Shell
SSH - Secure Shell
Peter R. Egli
 
Introduction to Public Key Infrastructure
Introduction to Public Key InfrastructureIntroduction to Public Key Infrastructure
Introduction to Public Key Infrastructure
Theo Gravity
 
Fundamentals of cryptography
Fundamentals of cryptographyFundamentals of cryptography
Fundamentals of cryptography
Hossain Md Shakhawat
 
2. Stream Ciphers
2. Stream Ciphers2. Stream Ciphers
2. Stream Ciphers
Sam Bowne
 
Cryptography
CryptographyCryptography
Cryptography
amiable_indian
 
What is Asymmetric Encryption? Understand with Simple Examples
What is Asymmetric Encryption? Understand with Simple ExamplesWhat is Asymmetric Encryption? Understand with Simple Examples
What is Asymmetric Encryption? Understand with Simple Examples
CheapSSLsecurity
 
SSL intro
SSL introSSL intro
SSL intro
Three Lee
 
6. cryptography
6. cryptography6. cryptography
6. cryptography7wounders
 
SSL Nedir
SSL NedirSSL Nedir
Cryptography
CryptographyCryptography
Cryptography
IGZ Software house
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15
BGA Cyber Security
 
Cryptography
CryptographyCryptography
Cryptography
Sandip kumar
 
Symmetric and Asymmetric Encryption.ppt
Symmetric and Asymmetric Encryption.pptSymmetric and Asymmetric Encryption.ppt
Symmetric and Asymmetric Encryption.ppt
HassanAli980906
 
Cryptography
CryptographyCryptography
Cryptography
subodh pawar
 
Encryption algorithms
Encryption algorithmsEncryption algorithms
Encryption algorithms
trilokchandra prakash
 

What's hot (20)

Diffie hellman key exchange algorithm
Diffie hellman key exchange algorithmDiffie hellman key exchange algorithm
Diffie hellman key exchange algorithm
 
Hping, TCP/IP Paket Üretici
Hping, TCP/IP Paket ÜreticiHping, TCP/IP Paket Üretici
Hping, TCP/IP Paket Üretici
 
Ethical Hacking
Ethical HackingEthical Hacking
Ethical Hacking
 
Kriptoloji kriptolama teknikleri
Kriptoloji kriptolama teknikleriKriptoloji kriptolama teknikleri
Kriptoloji kriptolama teknikleri
 
SSH - Secure Shell
SSH - Secure ShellSSH - Secure Shell
SSH - Secure Shell
 
Introduction to Public Key Infrastructure
Introduction to Public Key InfrastructureIntroduction to Public Key Infrastructure
Introduction to Public Key Infrastructure
 
Fundamentals of cryptography
Fundamentals of cryptographyFundamentals of cryptography
Fundamentals of cryptography
 
Ch02...1
Ch02...1Ch02...1
Ch02...1
 
2. Stream Ciphers
2. Stream Ciphers2. Stream Ciphers
2. Stream Ciphers
 
Cryptography
CryptographyCryptography
Cryptography
 
What is Asymmetric Encryption? Understand with Simple Examples
What is Asymmetric Encryption? Understand with Simple ExamplesWhat is Asymmetric Encryption? Understand with Simple Examples
What is Asymmetric Encryption? Understand with Simple Examples
 
SSL intro
SSL introSSL intro
SSL intro
 
6. cryptography
6. cryptography6. cryptography
6. cryptography
 
SSL Nedir
SSL NedirSSL Nedir
SSL Nedir
 
Cryptography
CryptographyCryptography
Cryptography
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15
 
Cryptography
CryptographyCryptography
Cryptography
 
Symmetric and Asymmetric Encryption.ppt
Symmetric and Asymmetric Encryption.pptSymmetric and Asymmetric Encryption.ppt
Symmetric and Asymmetric Encryption.ppt
 
Cryptography
CryptographyCryptography
Cryptography
 
Encryption algorithms
Encryption algorithmsEncryption algorithms
Encryption algorithms
 

Similar to Diffie-Hellman Key Exchange

ch10_key_management.ppt
ch10_key_management.pptch10_key_management.ppt
ch10_key_management.ppt
PanimalarK
 
Data encryption
Data encryptionData encryption
Data encryption
Balvant Biradar
 
White Paper on Cryptography
White Paper on Cryptography White Paper on Cryptography
White Paper on Cryptography
Durgesh Malviya
 
Vtu network security(10 ec832) unit 3 notes.
Vtu network security(10 ec832) unit 3 notes.Vtu network security(10 ec832) unit 3 notes.
Vtu network security(10 ec832) unit 3 notes.
Jayanth Dwijesh H P
 
Rsa and diffie hellman algorithms
Rsa and diffie hellman algorithmsRsa and diffie hellman algorithms
Rsa and diffie hellman algorithms
daxesh chauhan
 
Rsa diffi-network security-itt
Rsa diffi-network security-ittRsa diffi-network security-itt
Rsa diffi-network security-ittrameshvvv
 
Whitepaper - Protecting Data in Transit
Whitepaper - Protecting Data in TransitWhitepaper - Protecting Data in Transit
Whitepaper - Protecting Data in Transit
Phil Bartlett
 
Unit - 3.ppt
Unit - 3.pptUnit - 3.ppt
Unit - 3.ppt
DHANABALSUBRAMANIAN
 
Public key algorithm
Public key algorithmPublic key algorithm
Public key algorithm
Prateek Pandey
 
Applying Security Algorithms Using openSSL crypto library
Applying Security Algorithms Using openSSL crypto libraryApplying Security Algorithms Using openSSL crypto library
Applying Security Algorithms Using openSSL crypto library
Priyank Kapadia
 
Cupdf.com public key-cryptography-569692953829a
Cupdf.com public key-cryptography-569692953829aCupdf.com public key-cryptography-569692953829a
Cupdf.com public key-cryptography-569692953829a
jsk1950
 
OpenPGP/GnuPG Encryption
OpenPGP/GnuPG EncryptionOpenPGP/GnuPG Encryption
OpenPGP/GnuPG Encryption
Tanner Lovelace
 
Rsa
RsaRsa
Digital Certified Mail
Digital Certified MailDigital Certified Mail
Digital Certified Mail
Matthew Chang
 

Similar to Diffie-Hellman Key Exchange (20)

Unit 3(1)
Unit 3(1)Unit 3(1)
Unit 3(1)
 
Unit 3(1)
Unit 3(1)Unit 3(1)
Unit 3(1)
 
ch10_key_management.ppt
ch10_key_management.pptch10_key_management.ppt
ch10_key_management.ppt
 
Data encryption
Data encryptionData encryption
Data encryption
 
White Paper on Cryptography
White Paper on Cryptography White Paper on Cryptography
White Paper on Cryptography
 
Vtu network security(10 ec832) unit 3 notes.
Vtu network security(10 ec832) unit 3 notes.Vtu network security(10 ec832) unit 3 notes.
Vtu network security(10 ec832) unit 3 notes.
 
Rsa and diffie hellman algorithms
Rsa and diffie hellman algorithmsRsa and diffie hellman algorithms
Rsa and diffie hellman algorithms
 
Rsa diffi-network security-itt
Rsa diffi-network security-ittRsa diffi-network security-itt
Rsa diffi-network security-itt
 
Whitepaper - Protecting Data in Transit
Whitepaper - Protecting Data in TransitWhitepaper - Protecting Data in Transit
Whitepaper - Protecting Data in Transit
 
Unit - 3.ppt
Unit - 3.pptUnit - 3.ppt
Unit - 3.ppt
 
Public key algorithm
Public key algorithmPublic key algorithm
Public key algorithm
 
Introduction to cryptography
Introduction to cryptographyIntroduction to cryptography
Introduction to cryptography
 
Ch10
Ch10Ch10
Ch10
 
Applying Security Algorithms Using openSSL crypto library
Applying Security Algorithms Using openSSL crypto libraryApplying Security Algorithms Using openSSL crypto library
Applying Security Algorithms Using openSSL crypto library
 
Cupdf.com public key-cryptography-569692953829a
Cupdf.com public key-cryptography-569692953829aCupdf.com public key-cryptography-569692953829a
Cupdf.com public key-cryptography-569692953829a
 
OpenPGP/GnuPG Encryption
OpenPGP/GnuPG EncryptionOpenPGP/GnuPG Encryption
OpenPGP/GnuPG Encryption
 
Rsa
RsaRsa
Rsa
 
Ch09
Ch09Ch09
Ch09
 
Digital Certified Mail
Digital Certified MailDigital Certified Mail
Digital Certified Mail
 
Unit 4
Unit 4Unit 4
Unit 4
 

Recently uploaded

14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application
SyedAbiiAzazi1
 
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTSHeap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Soumen Santra
 
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
Victor Morales
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
SUTEJAS
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
Massimo Talia
 
Series of visio cisco devices Cisco_Icons.ppt
Series of visio cisco devices Cisco_Icons.pptSeries of visio cisco devices Cisco_Icons.ppt
Series of visio cisco devices Cisco_Icons.ppt
PauloRodrigues104553
 
Low power architecture of logic gates using adiabatic techniques
Low power architecture of logic gates using adiabatic techniquesLow power architecture of logic gates using adiabatic techniques
Low power architecture of logic gates using adiabatic techniques
nooriasukmaningtyas
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
NidhalKahouli2
 
Online aptitude test management system project report.pdf
Online aptitude test management system project report.pdfOnline aptitude test management system project report.pdf
Online aptitude test management system project report.pdf
Kamal Acharya
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
obonagu
 
PROJECT FORMAT FOR EVS AMITY UNIVERSITY GWALIOR.ppt
PROJECT FORMAT FOR EVS AMITY UNIVERSITY GWALIOR.pptPROJECT FORMAT FOR EVS AMITY UNIVERSITY GWALIOR.ppt
PROJECT FORMAT FOR EVS AMITY UNIVERSITY GWALIOR.ppt
bhadouriyakaku
 
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
dxobcob
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
bakpo1
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
manasideore6
 
digital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdfdigital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdf
drwaing
 
01-GPON Fundamental fttx ftth basic .pptx
01-GPON Fundamental fttx ftth basic .pptx01-GPON Fundamental fttx ftth basic .pptx
01-GPON Fundamental fttx ftth basic .pptx
benykoy2024
 
PPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testingPPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testing
anoopmanoharan2
 
Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
manasideore6
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
Aditya Rajan Patra
 
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
obonagu
 

Recently uploaded (20)

14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application
 
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTSHeap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
 
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
 
Series of visio cisco devices Cisco_Icons.ppt
Series of visio cisco devices Cisco_Icons.pptSeries of visio cisco devices Cisco_Icons.ppt
Series of visio cisco devices Cisco_Icons.ppt
 
Low power architecture of logic gates using adiabatic techniques
Low power architecture of logic gates using adiabatic techniquesLow power architecture of logic gates using adiabatic techniques
Low power architecture of logic gates using adiabatic techniques
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
 
Online aptitude test management system project report.pdf
Online aptitude test management system project report.pdfOnline aptitude test management system project report.pdf
Online aptitude test management system project report.pdf
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
 
PROJECT FORMAT FOR EVS AMITY UNIVERSITY GWALIOR.ppt
PROJECT FORMAT FOR EVS AMITY UNIVERSITY GWALIOR.pptPROJECT FORMAT FOR EVS AMITY UNIVERSITY GWALIOR.ppt
PROJECT FORMAT FOR EVS AMITY UNIVERSITY GWALIOR.ppt
 
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
 
digital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdfdigital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdf
 
01-GPON Fundamental fttx ftth basic .pptx
01-GPON Fundamental fttx ftth basic .pptx01-GPON Fundamental fttx ftth basic .pptx
01-GPON Fundamental fttx ftth basic .pptx
 
PPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testingPPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testing
 
Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
 
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
 

Diffie-Hellman Key Exchange

  • 1. Diffie-Hellman Key Exchange GÜRKAN YILDIRIM 927219086 Ders: Kriptoloji ve Güvenlik Protokolleri Eğitmen: Öğr. Gör. Mehmet Fatih ZEYVELİ
  • 2. İnsanlığa ilk duyurulan açık anahtar algoritması, Diffie ve Hellman`ın açık anahtarlı kriptografi olarak tanımladıkları 1976 yılında yayımlanmış "New Directions in Cryptography" isimli makalelerinde yer aldı ve bu algoritma kriptografik sisteme örnek olarak Diffie-Hellman Key Exchange idi. Bir çok ticari uygulama bu anahtar değişimini kullandı. Algoritmanın amacı, iki kullanıcının bir anahtarı güvenli şekilde birbirlerine iletmeleri ve daha sonrasında da bu anahtar yardımı ile şifreli mesajları birbirlerine gönderebilmelerini sağlamaktı. Algoritma anahtar değişimi ile sınırlıdır. GÜRKAN YILDIRIM 927219086 Giriş
  • 3. Anahtar değiş-tokuşu için yaygın olarak kullanılan bir protokoldür. Pek çok kriptografik protokolde iki taraf aralarında bir iletişim başlatmak isterler. Başlangıçta aralarında herhangi bir ortak gizliliğe sahip olmayan taraflar gizli anahtar kriptosistemlerini kullanabilirler. Bu durum için, Diffie-Hellman protokolü tarafından sağlanan anahtar değiş-tokuşu, güvenli olmayan kanallar üzerinden ortak bir gizli anahtar iletiminin sağlanmasına bir çare bulmuştur. Diffie-Hellman problemi olarak adlandırılan bu yöntem, kesikli logaritmalarla ilgili bir problem üzerine kurulmuştur. Bu problemin çok zor olduğu ve bazı durumlarda kesikli logaritma problem kadar zor olduğu düşünülmektedir. GÜRKAN YILDIRIM 927219086
  • 4. Diffie-Hellman protokolünün, uygun bir matematiksel grup kullanıldığında genelde güvenli olduğu düşünülmektedir. Özel olarak, üslü ifadelerde kullanılan üretici eleman geniş bir peryoda (sıraya) sahip olmalıdır. Kesikli logaritma algoritmaları Diffie- Hellman'a saldırmak için kullanılabilir ve - parametrelerin doğru olarak seçildiğini kabul edersek- şu anda yapılabileceklerin en iyisi pasif saldırılardır. Eğer alışıldık bir aritmetik modülo asıl sayı kullanılarak Diffie-Hellman uygulanılırsa, yeterince geniş bir asal seçmek ve üretici elemanın seçiminde özen göstermek yeterli olacaktır. Güç algılanan problemler, üretecin kötü seçimlerinden kaynaklanıyor olabilir.
  • 5. Diffie-Hellman algoritmasının LAN (yerel network) kullanıcıları arasında kullanımı için bir diğer örnekte şu şekilde verilebilir: Diyelim ki bu ağ altında çalışan her kullanıcı dayanıklı ve uzun birer ve buna bağlı genel bir hesaplamış olsunlar. Kişilerin açık anahtarları ve herkezce bilinen ve değerleri herkezin erişebileceği merkezi bir rehberde tutulduğu taktirde, herhangi bir anda bir kullanıcısı mesajlaşmak istediği bir kullanıcısının açık değerine ulaşabilecek ve onun için şifrelediği mesajı kendisine gönderebilecektir. Eğer merkezi rehber güvenilir ise, bu iletişim gizliliği ve kimlik denetimini sağlamış olacaktır. Tüm bunlara rağmen bu teknik, aktif tekrarlama gibi ataklara karşı korumasız kalmaktadır.
  • 6. GÜRKAN YILDIRIM 927219086 Diffie -Hellman ortak gizli anahtar oluşturma sistemi ayrık logaritma -Hellman algoritması: problemini üzerine kurulmuş ve güvenirliği çok büyük asal sayıları seçmeye dayanmaktadır.[2],[3],[5] p yeteri kadar büyük bir asal sayı olsun öyle ki Zp de ayrık logaritma problemini çözmek mümkün olmasın. g'de Zp de primitif bir kök (primitive root) olsun. p ve g herkes tarafından bilinsin. A ve B kişileri aşağıdaki yolu izleyerek ortak bir anahtar oluşturabilirler: A, 0 ≤ a ≤ p- 2 eşitsizliğini sağlayan ve tesadüfi olan bir a sayısı seçer. c = ga (mod p)'yı hesaplar ve bunu B'ye gönderir. B, 0 ≤ b ≤ p-2 eşitsizliğini sağlayan ve tesadüfi olan bir b sayısı seçer. d = gb (mod p)'yı hesaplar ve bunu A'ya gönderir. A, ortak anahtar k' yı şu şekilde hesaplar: k = da = (gb ) a B, ortak anahtar k' yı şu şekilde hesaplar: k = cb = (ga ) b Böylelikle A ve B aralarında ortak bir anahtar olan k için anlaşmış olurlar.
  • 7. Sayısal bir örnek: Ortak anahtarı oluşturmak için öncelikle p sayısını p=541 ve g sayısını g=2 seçelim. A kişisi kendi gizli anahtarı olan a sayısını, a =137 ve B kişisi kendi gizli anahtarı olan b sayısını, b = 193 olarak belirlesin. c = ga (mod p) → 208 = 2 137 (mod 541) d = gb (mod p) → 195 = 2 193 (mod 541) c ve d değerleri hesaplandıktan sonra a ve b kişileri bu değerleri birbirine göndeririler ve ortak olan k anahtarı sayısal olarak şu şekilde hesaplanır; k = cb = (ga ) b (mod p) → (2 137) 193 (mod 541) → (208) 193 (mod 541) → 486 (mod 541) GÜRKAN YILDIRIM 927219086
  • 8. Anahtarın Simetrik Şifreleme Algoritmasında Kullanımı Bu bölümde Diffie- Hellman ortak gizli anahtarı oluşturduktan sonra bu gizli anahtarı simetrik şifreleme algoritmasında şifreleme ve deşifreleme işlemlerin de nasıl kullanıldığını gösteren bir akış diyagramı verilmiştir. GÜRKAN YILDIRIM 927219086
  • 9. KRIPTOANALIZ Bugün, genel anahtar (veya asimetrik) şifreleme sistemleri temel olarak güvenli olmayan kanallarda gizli anahtarlar oluşturmak ve dağıtmak için kullanılmaktadır [1]. Bu gizli anahtarlar daha sonra simetrik bir kriptografik protokol aracılığıyla şifreleme için kullanılır. Daha fazla taraf gerçek verileri sağlayabilir ve iki veya iki kişi arasındaki iletişimi sağlayabilir. Genel anahtar şifreleme sisteminin doğal hızı, simetrik şifreleme sistemindekinden daha yavaş olduğundan, tipik durumlarda, açık anahtar şifreleme sistemi, gerçek verilerin dağıtılması için tercih edilen yöntemdir. Öte yandan, gizli bir anahtarın dağıtılması gerektiğinde, bir açık anahtar şifreleme sistemi çekici bir çözümdür. Bu, gizli veya gizli varlıklara güvenmemelerini sağlayan güvenli bir iletişim kanalıdır. KRIPTOANALIZ
  • 10. Diffie-Hellman (DH) anahtar anlaşması protokolü, günümüzde yaygın olarak kullanılan ilk açık anahtar şifreleme sistemidir. Mucitleri Whitfield Diffie ve Martin Hellman, açık anahtar şifreleme ve dijital imzalar [2] üzerine Turing Ödülü`nü tanıtan çığır açan makaleleri nedeniyle 2015 ACM Ödülünü kazandı. DH protokolü, gizli bir anahtarda bir dizi mesajı değiş tokuş ederek birlikte güvenli olmayan bir kanal oluşturur (iletişim kuran iki tarafın birbiri hakkında önceden bilgisi yoktur). Bu özellik sayesinde birçok popüler internet protokolü (DH yöntemi gibi) tarafından benimsenmiştir. İnternet Protokolü Güvenliği (IPsec), Aktarım Katmanı Güvenliği (TLS) ve Güvenli Kabuk (SSH), şifreleme anahtarları. KRIPTOANALIZ
  • 11. DH protokolündeki açık anahtar üretimi, ayrık logaritmanın zorluğunu (saldırgan tarafından) hesaplar. DH protokolünün klasik sınırlamalarından biri, form kimlik doğrulaması sağlamamasıdır. Bu nedenle, iletişim kuran tarafın kimliği, DH protokolü ve uygun kimlik doğrulama protokolü entegre edilebilir. Bu amaçla, kullanıcı kimlik doğrulamasını sağlamak için DH protokolünün Dijital İmza Algoritması (DSA) ile entegre olmayı düşünüyoruz. İkincisi, 1991 yılında Ulusal Standartlar ve Teknoloji Enstitüsü (NIST) tarafından önerildi ve Dijital İmza Standardının (DSS) bir parçasıdır. DSA imza mesajı açıkça gönderilir. Beklenmedik veri şifrelemesi sağlayın. Entegre DH-DSA protokolü ilk olarak tanıtıldı ve hem güvenli hem de kimliği doğrulanmıştır. Kimlik doğrulamaya ulaşmak için bu yöntem, içinde alınıp verilen mesajların değiştirilmesini önerir. DH anahtarlı DSA. O zamandan beri, protokolün birçok zayıflığı [4], [5] ve çeşitli değişiklikler [6] - [9] önerildi. KRIPTOANALIZ
  • 12. Güvenlik Özellikleri Bu bölümde, güvenli iletişim protokolünün üç önemli işlevini kısaca tanıtıyor ve açıklıyoruz. İletme gizliliği (veya mükemmel iletme gizliliği), (belirli) bir anahtar anlaşması protokolünün uzun vadeli şifreleme anahtarlarını tehlikeye atma işlevidir ve bu anahtarlar geçmiş oturum anahtarlarını yok etmez. Başka bir deyişle, ileri gizlilik işlevi kullanıcının oturum anahtarını yok etmeyecektir, örneğin, sunucunun özel anahtarı yok edilecektir. Ayrıca, oturumdan veya paroladan sonra gelecekteki özel anahtar tehlikesini de önler. Bilinen anahtar güvenliği, diğer oturum anahtarlarına zarar vermek için oturum anahtarlarının tehlikeye atılmadığı (belirli) anahtar sözleşme anlaşmalarının bir işlevidir. Bu nedenle, iletişim kuran iki tarafın, her yönde birer tane olmak üzere iki oturum anahtarı oluşturduğunu varsayın. Düşman konuşmayı yakalasa bile, bir yöndeki anahtarın ters yönde oturum anahtarını hesaplaması yine de zor olacaktır. Tekrar saldırı direnci, (belirli) güvenliğin bir işlevidir. Tekrarlanan saldırılara direnmek için iletişim protokolünde geçerli bir mesaj yakalandı ve ardından mesaj kötü niyetle tekrarlandı. Tekrar saldırılarını önlemek için, bu mekanizmayı doğrulamak için iletişim kuran tarafların bazı mekanizmaları bulunmaktadır. KRIPTOANALIZ
  • 13. Step Alice 𝑥𝐴, 𝑦𝐴 Bob 𝑥𝐵, 𝑦𝐵 1 Generater Random 𝑣 ∈ 𝑍𝑞 mA=gv mod p 𝑟A = mA mod q 𝑠A = 𝑣−1 [𝐻 (mA) + 𝑥𝐴𝑟𝐴 ] mod q mA, 𝑠A 2 Generater Random w∈ 𝑍𝑞 m𝐵=g𝑤 mod p 𝑟𝐵 = m𝐵 mod q 𝑠𝐵 = 𝑤−1 [𝐻 (m𝐵) + 𝑥𝐵𝑟𝐵 ] mod q m𝐵, 𝑠𝐵 3 Verify Signature (𝑟𝐵, 𝑚𝐵) of message m𝐵 Compute 𝐾 = 𝑚𝐵 𝑣 𝑚𝑜𝑑 𝑝 Verify Signature (𝑟𝐴, 𝑚𝐴) of message m𝐴 Compute 𝐾 = 𝑚𝐴 𝑤 𝑚𝑜𝑑 𝑝 KRIPTOANALIZ Arazi`nin Protokolü
  • 14. Arazi`nin Protokolü DH protokolünü entegre etmeye yönelik en eski girişimlerden biri DSA, Land [3] idi. Hedef, paylaşılan bir oturum anahtarı olan Alice ve Bob iletişim kuran iki taraftır. Bu bölümde, esasen Land`in anlaşmasıydı. Sonra zayıf yönlerini tartışıyoruz. Özellikle, protokolün bilinen anahtar güvenliği sağlamadığını ve tekrar saldırılara açık olduğunu gösterir. Temel protokol adımları Şekil 1`de gösterilmektedir. Başlangıçta, Alice ve Bob protokolü L, p, q ve g parametrelerini seçtiler. Bu parametrelerin (düşmandan) gizli tutulmasına gerek yoktur. Daha sonra Alice ve Bob, uzun vadeli anahtarlar adı verilen kendi genel ve özel şifreleme anahtarlarını oluşturdu. Aşağıda açıklandığı gibi protokol parametreleri ve uzun vadeli anahtarlar oluşturun. i) Alice ve Bob seçer  64 ve 512 ≤ L ≤ 1024`ün katı olan bir L sayısı  büyük bir p, 2 L − 1 <p <2 L  p − 1 ve q`nin bölen üssü 2159 <q <2160  g Zp`de q çarpım sırasına sahip bir eleman (yani, g = h (p − 1) / q mod p> 1 bazı rasgele tamsayı h için 1 <h <p - 1) ile, burada Zp = {0, 1,. . . , p - 1}. (ii) Alice üretir  rastgele bir 0 olan özel anahtarı xA < xA <q  açık anahtarı yA = gxA mod s. (iii) Bob üretir  xB rastgele bir sayı olan özel anahtarı 0 < xB <q  açık anahtarı yB = g xB mod p KRIPTOANALIZ Arazi`nin Protokolü
  • 15. Mesaj alışverişi Protokol parametrelerini ve uzun vadeli anahtarı oluşturduktan sonra, Alice ve Bob, mA ve mB mesajlarıyla birlikte kendi doğru oluşturulmuş imzaları olan sA ve sB`ye sahip olurlar. Aşağıda, olay ve imza mesajı oluşturmak için gereken sırayı açıklıyoruz. (iv) Alice  rastgele bir sayı üretir v ∈ Zq  mA = gv mod p  rA = mA mod q hesaplar  mA mesajı için sA imzasını şu şekilde hesaplar: sA = v −1 [H (mA) + xArA] mod q, burada v −1 v mod q`nun çarpımsal tersidir (yani, v −1v mod q = 1) ve H, mesaj m`de güvenli bir hash işlevidir. 160 bitlik bir hash değeri üretir, H (m)  Bob`a (mA, sA) gönderir. (v) Bob  rastgele bir sayı üretir w ∈ Zq  mB = gw w mod p  rB = mB mod q  sB = w−1 [H (mB) + xBrB] mod q  Alice`e (mB, sB) gönderir KRIPTOANALIZ Mesaj alışverişi
  • 16. Mesaj doğrulama ve anahtar türetme Yukarıdaki mesaj alındığında, her iki taraf bağımsız olarak paylaşılan bir oturum anahtarı K alabilir. Değiş tokuş edilen düşmanların mesajlarını gözlemlemek K anahtarını belirleyemez, çünkü ayrık logaritma varsayımı problemini çözmek zordur (Varsayım 1) [12]. (vi) Alice  Bob`dan alır (mB, sB)  rB = mB mod q hesaplar  mB mesajının DSS imzasını (rB, sB) doğrular  (gizli) paylaşılan oturum anahtarını hesaplar K = mv B mod p. (vii) Bob  Alice`den alır (mA, sA)  rA = mA mod q hesaplar  mesaj mA`nın DSS imzasını (rA, sA) doğrular  (gizli) paylaşılan oturum anahtarını hesaplar K = mw A mod p Alice ve Bob tarafından hesaplanan anahtar K`nin aynısı. Yani Alice tarafından hesaplanan anahtar K =mv B mod p =(gw mod p)v mod p = gwv mod p. Benzer şekilde, Bob tarafından hesaplanan anahtar K = mw A mod p = (gv mod p)w mod p = gvw mod p. Son olarak, Varsayım 1 nedeniyle, bir düşman gözlemleyerek (gv mod p) ve (gw mod p), ne v ve w ne de (gvw mod p). KRIPTOANALIZ Mesaj alışverişi
  • 17. Güvenlik analizi Bu bölümde arazinin güvenlik analizini tanıtıyoruz. Protokol, bilinen temel güvenlik işlevine odaklanır. Aşağıdaki iki özel anahtardan birinin (xA veya xB) ele geçirilmesi durumunda, düşman, K`ye benzer şekilde önceki tüm paylaşılan anahtarları hesaplayabilir. [4] Aşağıda gösterildiği gibi. Unutmayın, değişim mesajının imzası: sA = v −1 [H (mA) + xArA] mod q (1) sB = w −1[H (mB) + xBrB] mod q (2) (1) ve (2) `den: v = s−1 A[H (mA) + xArA] mod q (3) w = s−1 B [H (mB) + xBrB] mod q (4) (3) ve (4) `ü çarparak şunu elde ederiz: vw = s-1 As-1 B [H(mA)+xArA] [H (mB) + xBrB] mod q (5) Dolayısıyla, paylaşılan anahtar K aşağıdaki gibi ifade edilebilir: K = gvw mod p = gs-1 A s-1 B [H (m A ) + x A r A ] [H (m B ) + x B r B ] mod p (6) (6) `da bazı manipülasyonlar yaparak şunu elde ederiz: Ks A s B = g [H (m A ) + x A r A ] [H (m B ) + x B r B ] mod p (7) KsAsB = gH(m A ) H(m B ) gx A r A H(mB) gH(m A ) x B r B gx A r A x B r B mod p (8) KRIPTOANALIZ Mesaj alışverişi
  • 18. Alice ve Bob`un genel anahtarları aşağıdaki gibidir: yA = gxA mod p (9) yB = gxB mod p (10) Dolayısıyla, (9) ve (10) nedeniyle (8) `den şunu elde ederiz: KsAsB = gH(mA) H (mB) yr A AH (m B ) yH B (m A )r B (gx A x B)r A r B mod p (11) (11) `de, K paylaşılan anahtarının, herkesin bildiği bir miktar ve gx A x B mod p miktarı ile temsil edilebileceğini gözlemliyoruz, yani düşman onu alırsa. Oturum anahtarı K ise, gx A x B mod p sayısı hesaplanabilir. Bu nedenle düşman hepsini hesaplayabilecektir. Tüm şifrelenmiş ve önceki oturum anahtarlarının şifresini çözmek için mA ve mB mesajları K. Bu, protokolün bilinen herhangi bir anahtar güvenliği sağlamadığı anlamına gelir. Son olarak, Land`in protokolü tekrarlanan saldırılara karşı savunmasızdır. Bu nedenle, örneğin düşman mesajı engelleyebilir. İmza sA`yı mA ile çalın ve ardından Bob`a dönün. Bu durumda, Bob`un aldığı mesajın yeni mi yoksa yeni mi olduğu. [9], saldırı tekrarını azaltmak için protokoldeki zaman damgasını kullanmak için bir yöntem önerdi. KRIPTOANALIZ Mesaj alışverişi
  • 19. Step Alice 𝑥𝐴,𝑦𝐴 Bob 𝑥𝐵,𝑦𝐵 1 Generater Random 𝑣 ∈ 𝑍𝑞 mA=gv mod p mA 2 Generater Random w∈ 𝑍𝑞 𝐾𝐴𝐵= 𝑚𝐴 𝑥𝐵 mod p 𝐾𝐵𝐴= 𝑦𝐴 𝑤 mod p m𝐵=g𝑤 mod p 𝑟𝐵 = m𝐵 mod q 𝑠𝐵 = 𝑤−1 [𝐻 (m𝐵║ 𝐾𝐵𝐴║𝐾𝐴𝐵+ 𝑥𝐵𝑟𝐵 ] mod q m𝐵,𝑠𝐵 3 𝐾𝐴𝐵= 𝑦𝐵 𝑣 mod p 𝐾𝐵𝐴= 𝑚𝐵 𝑥𝐴 mod p 𝑟𝐴= 𝑚𝐵 mod q Verify Signature (𝑟𝐵,𝑚𝐵) of message m𝐵 𝑟𝐴= 𝑚𝐴 mod q 𝑠𝐴 = 𝑣−1 [𝐻 (m𝐴║ 𝐾𝐴𝐵║𝐾𝐵𝐴+ 𝑥𝐴𝑟𝐴 ] mod q 𝑠A 4 𝑟𝐴= 𝑚𝐴 mod q Verify Signature (𝑟𝐴,𝑚𝐴) of message m𝐴 Harn`in Protokolü Bu bölümde, Harn ve ark. Tarafından önerilen üç aşamalı DHDSA protokolünün bir varyantını tanıtıyor ve analiz ediyoruz. Protokol Harn`ın anlaşması ile Land`ın anlaşması arasında bazı benzerlikler vardır. Farklılıklar aşağıda tartışılmaktadır. Şekil 2 ayrıca basit protokolün adımlarını gösterir. Popüler İnternet güvenliği protokollerine benzer şekilde, Harn`ın TLS ve IPsec protokolleri, her yönde bir anahtar olmak üzere iki farklı paylaşılan oturum anahtarıdır. Özellikle, KAB oturum anahtarı Alice`den Bob`a gönderilen mesajı şifrelemek için kullanılır ve KBA oturum anahtarı Bob`dan Alice`e gelen mesajı şifrelemek için kullanılır. Söz konusu anahtar Alice tarafından (12) ve (13) aracılığıyla oluşturulmuştur: KRIPTOANALIZ Harn`in Protokolü
  • 20. KAB = y v B mod p KBA = mx A B mod p (12) KAB = m x B A mod p KBA = yw A mod p (13) (yA, xA) ve (yB, xB) `nin sırasıyla Alice ve Bob için genel ve özel anahtarlar olduğunu hatırlayın. Benzer şekilde, mA ve mB de Alice ve Bob arasında değiş tokuş edilen mesajlar olarak tanımlanır ve Land`in protokolüne uygun olarak tanımlanır: mA = gv mod p mB = gw mod p (14) (9), (10) ve (14) kullanılarak, (12) ve (13) denklemleri aşağıdaki gibi dönüştürüldü: KAB = gxBv mod p KBA = gxAw mod p (15) İki oturum anahtarı kullanıldığından, sA ve sB imzaları aşağıdaki gibi tanımlanır (Arazi protokolünden farklı): sA = v −1 [H (mA || KAB || KBA) + xArA] mod q (16) sB = w −1 [H (mB || KBA || KAB) + xBrB] mod q (17) nerede || bitiştirme operatörüdür. (16) ve (17) `de, mesaj imzaları sA ve sB, sırasıyla mesaj mA ve mB olan oturum anahtarına bağlıdır. Bu nedenle, Land protokolünün aksine, mA mesajı başlangıçta bir imza olmadan gönderilir (adım 1). Çünkü Alice bunu ilk başta bilmiyordu. KBA için gerekli mB`yi hesaplayın. Bu nedenle, sA imzalamak 3. adıma kadar beklemelidir. KRIPTOANALIZ Harn`in Protokolü
  • 21. Güvenlik Analizi Bu bölümde güvenlik özelliklerini tartışıyoruz. Hahn`ın anlaşması. Özellikle, bilinen anahtar güvenlik, yönlendirme gizliliği ve saldırı önleme özelliklerine dayalı protokol analizi sağlanmaktadır. 1) Bilinen anahtar güvenliği: Bilinen anahtar güvenlik işlevi ile ilgili olarak, seans anahtarı, KAB ve KBA hakkında ne kadar bilgi sızdırıldığı, Alice ve Bob arasında sA ve sB`nin imzasını gözlemleyen düşmanla paylaşılır. Bu amaçla, aşağıda KAB ve KBA arasındaki ilişkiyi ortaya çıkarmak için (16) ve (17) `yi dönüştürüyoruz. (16) ve (17) `nin her iki tarafını v ile çarparak başlayın ve sırasıyla w: sAv = [H (mA || KAB || KBA) + xArA] mod q (18) sBw = [H (mB || KBA || KAB) + xBrB] mod q (19) XArA ve xBrB için sırasıyla (18) ve (19) `u çözün: xArA = [sAv - H (mA || KAB || KBA)] mod q (20) xBrB = [sBw - H (mB || KBA || KAB)] mod q (21) Çarpma (20) ve (21): xArA [sBw - H (mB || KBA || KAB)] = xBrB [sAv - H (mA || KAB || KBA)] mod q (22) Yukarıdaki denklem şuna eşdeğerdir: xArAsBw + xBrBH (mA || KAB || KBA) = [xBrBsAv + xArAH (mB || KBA || KAB)] mod q (23) KRIPTOANALIZ Harn`in Protokolü
  • 22. G`yi (23) modulo p`nin her iki tarafının gücüne yükseltin: gxArAsBw + xBrBH (mA || KAB || KBA) = gxBrBsAv + xArAH (mB || KBA || KAB) mod p (24) (9), (10) ve (15) `i (24)` e değiştirin: (KBA) rAsB (yB) rBH (mA || KAB || KBA) = (KAB) rBsA (yA) rAH (mB || KBA || KAB) mod p (25) (25) `deki iki aşama arasındaki ilişkiye bakılarak düşmanın anahtarlardan birini bildiği sonucuna varılabilir. Paylaşılan anahtar, başka bir paylaşılan anahtarın hesaplanması problemi en azından ayrık logaritmanın çözülmesiyle aynıdır.Geleneksel bilgisayarlarda etkili bir hesaplama yöntemi yoktur [6], [12]. 2) İletim gizliliği: Daha sonra, gelişmiş gizlilik hakları [7], [13] ile Harn protokolünün bir güvenlik analizini gerçekleştiriyoruz. Yönlendirme gizliliği Uzun vadede, özel anahtar (yani xA veya xB) tehlikeye girdiğinde, rakip, oluşturulan oturum anahtarını (yani KAB ve KBA) önceden belirleyemez. (12) ve (13) `ten hatırlayın, oturum anahtarları aşağıdaki gibi ifade edilir: KAB = m x A B mod p KBA = m x B A mod p (26) Burada mA ve mB, güvenli olmayan kanallarda ve dolayısıyla düşmanlar arasında Alice ve Bob arasında değiş tokuş edilen miktarlardır. Düşmanın xA aldığını varsayalım. Daha sonra KAB (26) ile kolayca hesaplanabilir. Benzer şekilde, xB elde edildiğinde, KBA hesaplanabilir. Bu nedenle bu yöntemler gizlilik sağlamaz. 3) Saldırı direncini tekrarlanması: Bir tekrar saldırısında düşmanın geçerli bir mesajı yakalayıp hedef alıcıya tekrar göndereceğini unutmayın. Harn`ın protokolü aşağıdaki nedenlerle saldırıları tekrarladı. Alice`in Bob`a imzalı bir mesaj (mA, sA) gönderdiğini hayal edin. Mesaj ve imzası sırasıyla (14) ve (16) tarafından verilmektedir. SA`nın türetilmesinin KBA`ya ve w`ye bağlı olduğuna dikkat edin (15). Bununla birlikte, üçüncü bölümde gösterildiği gibi, w, Bob`un özel oturum anahtarıdır. Bu nedenle Bob, alınan mesaj mA tazedir. Benzer şekilde Alice, Bob`un gönderdiği mesajın güncelliğini doğrulayabilir. KRIPTOANALIZ Harn`in Protokolü
  • 23. Phan`in Protokolü Bu bölümde, Phan [7] tarafından önerilen DHDSA protokolünün varyantlarını tanıtıyor ve analiz ediyoruz. Temel protokol adımları da Tablo 3`te gösterilmektedir. Step Alice 𝑥𝐴, 𝑦𝐴 Bob 𝑥𝐵, 𝑦𝐵 1 Generater Random 𝑣 ∈ 𝑍𝑞 mA =gv mod p nA =𝑦𝐴 𝑣 mod p mA, nA) 2 Generater Random w ∈ 𝑍𝑞 𝐾𝐴𝐵 = 𝑚𝐴 𝑥𝐵𝑤 mod p 𝐾𝐵𝐴 = 𝑛𝐴 𝑤 mod p m𝐵 =g𝑤 mod p 𝑛𝐵 =𝑦𝐵 𝑤 mod p 𝑟𝐵 = m𝐵 mod q 𝑠𝐵 = 𝑤−1 [𝐻 m𝐵║ 𝐾𝐵𝐴║𝐾𝐴𝐵+ 𝑥𝐵𝑟𝐵 ] mod q m𝐵 , 𝑛𝐵, 𝑠𝐵 3 𝐾𝐴𝐵 = 𝑛𝐵 𝑣 mod p 𝐾𝐵𝐴 = 𝑚𝐵 𝑥𝐴𝑣 mod p 𝑟𝐵 = 𝑚𝐵 mod q Verify Signature (𝑟𝐵, 𝑚𝐵 of message m𝐵 𝑟𝐴 = 𝑚𝐴 mod q 𝑠𝐴 = 𝑣−1 [𝐻 m𝐴║ 𝐾𝐴𝐵║𝐾𝐵𝐴+ 𝑥𝐴𝑟𝐴 ] mod q 𝑠𝐴 4 𝑟𝐴 = 𝑚𝐴 mod q Verify Signature (𝑟𝐴, 𝑚𝐴 of message m𝐴 KRIPTOANALIZ Phan`in Protokolü
  • 24. Protokol Phan`ın anlaşması, Harn`ın anlaşmasının bir değişikliği olarak görülebilir. Anlaşma, aşağıdaki tartışma farklıdır. Alice ve Bob, sırasıyla nA ve nB ek rasgele miktarlar üretir. Bu mesajlar mA, mB taşır ve paylaşılan bir anahtar oluşturmak için kullanılır. özellikle: nA = yv A mod p nB = yw B mod p (27) Alice tarafından üretilen paylaşılan anahtarlar şunlardır: KAB = nv B mod p = g xBvw mod p KBA = mx A Bw mod p = gxAvw mod p (28) Bob tarafından oluşturulan paylaşılan anahtar aşağıdadır: KAB = mx A bw mod p = g xBvw mod p KBA = nw A mod p = g xAvw mod p (29) Phan protokolünün yB`si yerine nB`yi kullanın ve (28) `i (12) ile karşılaştırın. Aşağıda gösterilen alt bölümde bu, yB tarafından iyi bilinmektedir, ancak nB tarafından bilinmemektedir. Aynı nedenden ötürü, Bob (29) anahtarı tarafından üretilen akım, yA yerine nA`ya bağlıdır. KRIPTOANALIZ Phan`in Protokolü
  • 25. Güvenlik Analizi Bilinen anahtar güvenliği ile ilgili olarak, Phan`ın protokolü Harn`ın protokolüyle aynı işleve sahiptir. Özellikle, rakip paylaşılan oturum anahtarını (KAB gibi) biliyorsa, diğer paylaşılan oturum anahtarını (KBA) dijital olarak çıkarmak zordur. Aşağıda Phan protokolünün gelişmiş gizlilik özelliklerini tartışıyoruz. Uzun vadeli özel anahtar bu işlevi tehlikeye atarsa, önceden oluşturulmuş oturum anahtarının korunması gerekir. Bu nedenle, xA`nın yok edildiğini varsayalım. (28) ve (29) `da düşmanın KBA`sını hesaplamak için w bilinmelidir. Ancak, bölüm III`ten Bob tarafından yapıldığını ve asla Alice`e gönderilmediğini hatırlayarak (bu yüzden yakalandı). Lütfen düşmanın yine de müdahale edebileceğini unutmayın. mB w, g`ye eşittir. Bununla birlikte, mB ve g`yi bilmek w`yi hesaplamak zordur (ayrık logaritma problemi). Benzer şekilde, xB yok edilirse, rakibin KAB`ını hesaplamak için hala v`yi bilmeniz gerekir. Ancak, v Alice tarafından oluşturulmuşsa, asla Bob`a gönderilmeyecek ve bu nedenle yakalanacaktır. Bu nedenle, Phan protokolünün iletme gizliliğini sağlar. Phan`in Protokolü KRIPTOANALIZ
  • 26. Ayrık Logaritma Atağı Young ve Yung ikilisinin çalışmalarında, kleptografi alanında en çok işi yaptılar ve burada Diffie-Hellman anahtar değişimine [9] saldırılarının basitleştirilmiş bir versiyonunu tartışacaklar. Bu saldırı senaryosuna göre aktif kriptografik sistemin üreticisi, ürettiği sistemin kullanıcılarından gizli bilgileri sızdırmaya çalışır. Bu işlem, herkese açık olarak yayınlanacak bir genel anahtar oluştururken arka kapı bilgilerini gizlemeye çalışacaktır. Bu amaçla, saldırgan ürettiği her sistem için en az 160 benzersiz kimlik değeri yerleştirdi. Mekanizma, kimlik değeri ile gizli anahtarı birleştirerek bir karma işlevi sağlar ve böylece aşağıdaki anahtarı hesaplar. Bu saldırıda saldırgan, Alice ile Bob arasındaki Diffie-Hellman anahtar değişim protokolünün çıktısı olan açık anahtarı elde edebilecek. Taraflardan birine bir Truva atı yerleştiren bir saldırgan, genel anahtarı açığa çıkarmak için yeterlidir. Bu saldırı senaryosunda Truva atı Alice`nin cihazında bulunuyor. KRIPTOANALIZ Ayrık Logaritma Atağı
  • 27. Saldırı Saldırgan, trafik kaydı 𝐴𝑖 ve 𝐵𝑖 değerlerini pasif olarak dinler ve Alice ile Bob arasındaki K2`yi elde etmek için kullanır. 1. 𝐴1 ve 𝐵2 değerini ele geçirir ve 𝐴1𝑋 𝑚𝑜𝑑 𝑝 hesaplar. 2. Saldırgan ID`yi bildiğinden 𝑎2 = (𝐼𝐷||𝑌 𝑎1 𝑚𝑜𝑑 𝑝) değerini hesaplar. 3. 𝐵2 𝑎2 𝑚𝑜𝑑 𝑝 hesaplayarak 𝐾2 ortak anahtarını elde eder. Not: Bu saldırı yöntemine (𝑡, 𝑡 + 1) -thief saldırısı adı verilir, bu da anahtarın 𝑡 + 1 genel anahtardan çıkarılabileceği anlamına gelir. KRIPTOANALIZ Ayrık Logaritma Atağı Atak mekanizması: (p ve q asal sayıları (p = 2q + 1); ∗ bir üretici ve sırası 𝑞; 𝐻: {0,1} ∗ → 𝑍𝑞; 𝑌 = 𝑝 mod p saldırganın genel anahtarı ve 𝑋 anahtarı; 𝐴𝑖 = 𝑔 ai mod p Alice`nin açık ve gizli anahtarları ; 𝑌 Alice`nin cihazında bulunur.) 1. Alice rasgele 𝑎1 ∈ Zq seçip 𝐴1 = 𝑔𝑎1 of değerini hesaplayarak Bob`ya gönderir. Bob rastgele 𝑎1 ∈ Zq seçer ve ardından 𝐵1 = 𝑔1 𝑚𝑜𝑑 p değerini hesaplayarak Alice`ye gönderir. 2. Alice ve Bob, K1 = 𝑎1𝑏1𝑏 mod p işlevinin açık anahtarını hesaplar. Alice, 𝑎1 değerini bir sonraki anahtar değişikliğine kadar saklayacaktır. 3. Alice bir sonraki anahtar değişikliğini hesapladığında 𝑎2 = 𝑎2 𝑚𝑜𝑑 p değerini hesaplamak için a2 = 𝐻 (𝐼𝐷 || 𝑎1 𝑚𝑜𝑑 p) hesaplanarak Bob`ya gönderilir. Bob 𝑏2∈𝑍𝑞 rastgele seçim, 𝐵2 = 𝑔 𝑏2 𝑚𝑜𝑑 𝑝 değerini hesaplar ve Alice`ye gönderir. 4. Alice ve Bob 𝐾2 = 𝑔 𝑎2𝑏2 𝑚𝑜𝑑 𝑝 ortak anahtarını hesaplar.
  • 28. Diffie-Hellman (Ortadaki Adam) Diffie-Hellman, anahtar değişimi için kullanılır. Bob ve Alice iki değer (g ve p) üzerinde hemfikirdir, burada p asal sayıdır. Sonra Bob ve Alice rastgele iki sayı (a ve b) üretir ve değerleri değiştirir. Maalesef ortadaki kişi saldırıya açık ve Eve iki anahtar ürettiğinde biri Bob`a, diğeri Alice`e verilecek: g: 15 (a shared value), n: 1009 (a prime number) Eve`s value: 7 == Random value generation === Alice calculates: a (Alice random): 5 Alice value (A): 607 (g^a) mod p Bob calculates: b (Bob random): 9 Bob value (B): 280 (g^b) mod p ==Alice sends value to Eve === Eve takes Alice`s value and calculates: 968 Bob gets Eve`s value and calculates key of: 206 ==Bob sends value to Eve === Eve takes Bob`s value and calculates: 540 Alice gets Eve`s value and calculates key of: 540 KRIPTOANALIZ Diffie-Hellman (Ortadaki Adam)
  • 29. Method Bu durumda, Eve hangi değeri alırsa alsın, Bob ve Alice`in rastgele sayılarına göre bir değer döndürecektir. Örneğin, g = 15 ve p = 1011 ve Alice rastgele bir 5 değeri kullanıyorsa, Alice anahtar için aşağıdakileri hesaplayacaktır: A=155 mod 1011 = 114 Bob rastgele 9 değerini alırsa, Bob şunları hesaplayacaktır: B=159 mod 1011 = 462 Eve tünelde Alice`in değerini değiştirerek şunu verir: 1147 mod 1011 = 402 Alice, 402 değerini alır. Şunların anahtarını hesaplar: KeyAlice = 4025 mod 1011 = 636 Bob 426 değerini alır ve şunun anahtarını hesaplar: KeyBob = 4629 mod 1011 = 483 Bu elbette yanlış çünkü Diffie-Hellman yöntemi de aynı değeri sağlamalıdır. Ancak, Eve aracıdır, bu nedenle temelde mesajın şifresini çözebilen ve yeniden şifreleyen iki anahtarı vardır KRIPTOANALIZ Diffie-Hellman (Ortadaki Adam)
  • 30. DF için aşağıda örnek kod yer almaktadır: import random import base64 import hashlib import sys g=15 p=1011 a= 5 b = 9 eve = 7 message=21 A=(g**a) % p B=(g**b) % p Eve1 = (A**eve) % p Eve2 = (B**eve) % p Key1= (Eve1**a) % p Key2= (Eve2**b) % p KRIPTOANALIZ print(`g: `,g,` (a shared value), n: `,p, ` (a prime number)`) print(`n== Random value generation ===`) print(`nAlice calculates:`) print(`a (Alice random): `,a) print(`Alice value (A): `,A,` (g^a) mod p`) print(`nBob calculates:`) print(`b (Bob random): `,b) print(`Bob value (B): `,B,` (g^b) mod p`) print(`n==Alice sends value to Eve ===`) print(`Eve takes Alice`s value and calculates: `,Eve1) print(`Alice gets Eve`s value and calculates key of: `,Key1) print(`n==Bob sends value to Eve ===`) print(`Eve takes Bob`s value and calculates: `,Eve2) print(`Bob gets Eve`s value and calculates key of: `,Key2) Diffie-Hellman (Ortadaki Adam)
  • 31. Sonuç Bu makalede üç güvenlik analizi anlatılmıştır. Entegre DH-DSA protokolünün türü. Özellikle, gelişmiş gizlilik, bilinen temel güvenlik ve tekrar saldırı direnci işlevlerine odaklanıyoruz. Land`in anlaşması ileri gizlilik sağlamaz ve tekrar saldırılara karşı savunmasızdır. Bunun nedeni, oluşturulan oturum anahtarlarının birbirinden bağımsız olmasıdır. Bu nedenle, düşman ödün verirse, bir oturum anahtarı herkese açık olarak değiş tokuş edilen mesajlara dayanır, böylece diğer oturum anahtarları kolayca tanımlanabilir. Harn`ın protokolü bilinen temel güvenlik ve tekrar saldırılara karşı direnç sağlar. Yüksek düzeyde mahremiyet yoktur. Son olarak, Phan`ın protokolü yukarıda bahsedilen üç güvenlik özelliğine de sahiptir. Gelecekteki araştırmalarda, anahtar güncelleme, tehditler (bilinmeyen anahtar paylaşım saldırıları gibi) gibi diğer güvenlik işlevlerini göz önünde bulundurarak DH-DSA protokolünü ve türevlerini incelemeyi planlanmaktadır. KRIPTOANALIZ