diffie hellman

12
AÇIK ANAHTAR ALT YAPISI DIFFIE HELLMAN ALGORİTMASI 1

Upload: enes-caglar

Post on 14-Jun-2015

1.841 views

Category:

Education


3 download

TRANSCRIPT

Page 1: Diffie  hellman

1

AÇIK ANAHTAR ALT YAPISI

DIFFIE HELLMAN ALGORİTMASI

Page 2: Diffie  hellman

Diffie-Hellman algoritması:

İ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.

Page 3: Diffie  hellman

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 problemi kadar zor olduğu

düşünülmektedir. 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ı:

Page 4: Diffie  hellman

Diffie-Hellman algoritması: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.

 

Page 5: Diffie  hellman

5

Page 6: Diffie  hellman

Diffie-Hellman algoritması:

Page 7: Diffie  hellman

Diffie-Hellman algoritması:Diffie-Hellman ortak gizli anahtar oluşturma sistemi ayrık logaritma 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.

Page 8: Diffie  hellman

Diffie-Hellman algoritması:

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 = 2137 (mod 541) d = gb (mod p) → 195 = 2193 (mod 541) c ve d değerleri hesaplandıktan sonra a ve be 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) → (2137)193 (mod 541) → (208)193 (mod 541) → 486 (mod 541)

Page 9: Diffie  hellman

Diffie-Hellman Ortak 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.

Page 10: Diffie  hellman
Page 11: Diffie  hellman

Örnek

Page 12: Diffie  hellman

Örnek