Md5 nasıl oluşturulur

znlhm

Üye
24 Tem 2013
225
0
ankara
MD5 bir HASHING / FINGERPRINTING algoritmasıdır

MD5, şifreleme sistemlerinde kullanılan 128 bitlik bir hash fonksiyonudur. Sistem yapısal oarak tam güvenli değildir ancak internetin yoğun kullanımıyla birlikte hızlı çalışan bu algoritmaya ihtiyaç da artmıştır.

MD5 basitçe istenilen boyuttaki bir mesajı 128 bit uzunluğunda bir sonuç üretir. Üretilen bu mesajı 32 bit uzunluğudan 4 eşit parçaya ayıracak olursak ve bu parçaların her birisine A, B, C ve D isimleri verilirse MD5 algoritmasının çalışması aşağıdaki şekilde gösterileblir:


PP5Qo9.jpg



[FONT=&quot]Yukarıdaki şekildeki fonksiyonların açılımları aşağıdaki şekilde verilmiştir:[/FONT]
[FONT=&quot]
[/FONT]

[FONT=&quot]F(X,Y,Z) = ( X Λ Y ) V ( ¬X Λ Z )[/FONT]
[FONT=&quot]G(X,Y,Z) = ( X Λ Z ) V ( Y Λ ¬Z )[/FONT]
[FONT=&quot]H(X,Y,Z) = X ^ Y ^ Z[/FONT]
[FONT=&quot]I(X,Y,Z) = Y ^ ( X V ¬Z )

[/FONT]
[FONT=&quot]Ronald Rivest tarafından 1991 yılında MD4 kriptografik dügüm fonksiyonunun yerine geliştirilen MD5,128-bit’lik (16byte) düğüm değeri şifreleme algoritmalarına yardımcı olmak amacıyla kullanılabilecek bir HASH algoritmasıdır.

[/FONT]
[FONT=&quot]1996 yılında Hans Dobbertin MD5’in sıkıştırma fonksiyonunda bir çakışmanın olduğunu bulması kritoğrafi uzmanlarını SHA-1,RIPEMD160 gibi algoritmalara yöneltsede,kırlabilirliği ispat edilemediğinden günümüzde dahi veri güvenliğinin kontrolünü sağlamaktadır.[/FONT]
[FONT=&quot]
[/FONT]

[FONT=&quot]Hash Kodlarındaki Genel Yapı[/FONT]


orAE39.jpg




[FONT=&quot]IV = başlangıç değeri , CV = Değişken , Yi = i. Giriş bloğu , f = sıkıştırma fonksiyonu[/FONT]
[FONT=&quot]L = giriş bloklarının sayısı , n = hash kodun uzunluğu , b = giriş bloklarının uzunluğu[/FONT]
[FONT=&quot]
[/FONT]

[FONT=&quot]Hash fonksiyonu bir mesaj alıp her biri ‘ b ‘ uzunluğında olan ‘L’ tan e bloğa böler. Hash algoritması n-bit ve b- bit leri girdi olarak kabul eden bir f fonksiyouna sahiptir.f fonksiyonu cıktı olarak n bitini verir.Fonksiyonda genellikle b>n olmaktadır.Aşağıda F fonksiyonu açıklanmıştır.[/FONT]


gZkX20.jpg




[FONT=&quot]Fonksiyonda mesaj M ile gösterilmiştir ve Y(0) dan Y(L-1)’ e kadar bloklara bölünmüştür[/FONT][FONT=&quot].[/FONT]
[FONT=&quot]
[/FONT]

[FONT=&quot]MD5 Algoritmasındaki Genel Yapı ve Encryption(Şifreleme)[/FONT]


yLPVzN.jpg




[FONT=&quot]MD5 düğümleri tipik olarak 32-rakam hexadecimal numaralar olarak betimlenir.MD5 algoritması boyutu fark etmeksizin veriyi girdi olarak kabul edebilir ve sonuçta 128 bit uzunluğunda bir çıktı elde eder.

[/FONT]
[FONT=&quot]MD5, veriyi 512 bitlik bloklara ayırır ve herbir blok için aynı işlem uygulanır.Algoritmada şifrelenecek olan veri yani mesaj 512 bitin katlarından(şekilde L x 512 bits olarak gösterilmiştir) olmalıdır.[/FONT]
[FONT=&quot]
[/FONT]

[FONT=&quot]Padding işlemi şu şekilde çalışır:[/FONT]
[FONT=&quot]Verinin sonuna bir adet 1 ve geri kalanlar için ise 0 eklenerek (10000000000 …)512 bitin en yakın katından 64 bit eksik olana kadar devam eder. Sıfırlanmayan bu 64 bit verinin orijinal uzunluğunu(yukarıdaki şekilde Message Length K mod 2^64) belirtmekte kullanılır. (Orijinal Mesaj Length = 448 ( mod 512))[/FONT]
[FONT=&quot]Mesaj ister 512 bitin katı olsun ister olmasın veriler ekleme(padding) işlemine tabi tutulur.Örnek olarak mesajımızın 448 bit olduğu düşünülürse 512 bit eklenerek 960 bit elde edilir.Böylelikle ‘Orijinal Mesaj Length = 448 (mod 512)’ gerçeklenmiş olur.[/FONT]
[FONT=&quot]Padding işlemi yapıldıktan sonra algoritma ,L tane 512 bitlik blogu işler ve çıktı olarak 128 bitlik özet kısım elde edilir.[/FONT]
[FONT=&quot]
[/FONT]

[FONT=&quot]Algoritmanın en önemli kısmı sıkıştırma fonksiyonunun olduğu kısımdır.[/FONT]
[FONT=&quot]Buradaki (F-G-H-I) belirli bazı işlemlerdir ve bunlar her adımda (16step) gerçeklenerek sonuç elde edilir.Bu işlemlerin her bir adım için gerçeklendiği düşünülürse toplamda 4 x 16 = 64 işlem gerçekleşir.Bukadar işlemin gerçekleşmesinin sebebi simetrikliği engelleme(farkli sonuçlar üretebilme)isteğinden doğar.[/FONT]


gZkXrb.jpg



[FONT=&quot]Başlangıçta değerleri sabit olan, A,B,C,D diye adlandırılan 32bitlik dört değisken bulunur ve bu değişkenlerin değerleri her 512 bitlik blok işleme girdiğinde değişir ve algoritma sonunda değerler yan yana geldiğinde 128 bitlik şifrelenmiş veri elde edilir.[/FONT]

PP5Qo9.jpg



7MoAdm.jpg




[FONT=&quot]Kullanım Alanları[/FONT]

[FONT=&quot]MD5 bir internet standartı olarak(RFC 1321)bir çok güvenlik uygulamasında kullanılmaktadır.Bunun yanında veri güvenliğinin kontrolü için de kullanılamaktadır.[/FONT]
[FONT=&quot]MD5, Kullanıcı adı ve şifreyle giriş yapılan sitelerde ana makineye şifre gönderimi ve bütünlük (integrity) denetimi uygulamalarında kullanılabilir.

[/FONT]
[FONT=&quot]Decryption (Açılması)[/FONT]
[FONT=&quot]Md5 tek yönlü bir algoritmadır ve geri dönüşümü yoktur.Kullanıcı adı ve Şifre uygulamaları örnek verlirse ,Şifre MD5 algoritmasından geçirilmiş halde saklandığı için, şifre çözülemez ve kullanıcı şifresini unuttuğu takdirde sistem eski şifreyi veremez ve kullanıcıya yeni şifre atanır.[/FONT]
[FONT=&quot]
[/FONT]

[FONT=&quot]Örneğin şifreniz ‘ferhat’ olsun .Bunun 32 karakterli encrypt edilmiş hali ‘900150983CD24FB0D6963F7D28E17F72’ iken decrypt edilmiş hali ‘4C36FA32C9D93A002C3E14CE038AA709’ olabilir.[/FONT]
[FONT=&quot]Günümüzdeki bilgisayarlar kimi mesajları kırabiliyor.örneğin ‘ferhat’ kelimesinin kırılması kısa bir süre olabilirken ’13ewFK@M#f’ in kırılması yıllar alabiliyor.[/FONT]
[FONT=&quot]
[/FONT]

[FONT=&quot]Sonuç[/FONT]

[FONT=&quot]MD5 algoritması bir önceki düğüm fonksiyonu olan MD4’e göre yavaş çalışmasına rağmen şifrelendirme sistemi çok daha karışık ve çözülmesi güçtür.[/FONT]
[FONT=&quot]Buzamana kadar yapılmış saldırılara(Brute Force Saldırısı,Birthday Saldırıları(2^64) bakılarak MD5 yaralanabilir bir algortima olduğu anlaşılmıştır.En ciddi saldırıları BERSON,BOER VE BOSSLAERS,DOBBERTİN yapmıştır.[/FONT]
 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.