Doğum günü akını

**Doğum günü akını**, olasılık kuramındaki doğum günü probleminin ardındaki matematiği kullanan bir kriptografik akındır. Akının amacı bir *f* işlevine girdi olarak verilen x_1 ve x_2'nin f(x_1)=f(x_2) koşulunu sağlamasıdır. Böyle bir x_1,x_2 ikilisi çakışma olarak adlandırılmaktadır. Çakışma bulma yöntemi, *f* işlevini gelişigüzel girdilerle hesaplayıp çakışma koşulunun sağlanıp sağlanmadığını incelemektir. Bu yöntem, yukarıda sözü edilen doğum günü probleminden yararlanır. Şöyle ki; bir f(x) işlevi eşit olasılıklı H farklı sonuç üretiyorsa ve H yeterince büyükse f(x_1) = f(x_2) koşulunu sağlayan x_1 ve x_2 değerleri kolayca bulunabilir.

## Matematiksel ifadesi

Bir H kümesinden gelişigüzel n değerlerini seçtiğimizi varsayalım. p(n;H) ifadesini de bir n değerinin birden çok kez seçilmesi olasılığı olarak tanımlayalım. Böylece,
:: p(n;H) \approx 1 - e^{-(n(n-1))/2 \cdot H} \approx 1-e^{-n^2/{2 \cdot H}} eşitliğine ulaşılabilir.

n(p;H), seçilebilecek en küçük sayıyı gösteriyorsa bir çakışmanın meydana gelme olasılığı en az p'ye eşittir. Yukarıdaki eşitlik tersine çevrildiğinde aşağıdaki eşitliğe ulaşılır.

::n(p;H)\approx \sqrt{2\cdot H\cdot\ln\left({1 \over 1-p}\right)},

0.5'lik bir çakışma olasılığı temel alındığında
::n(0.5;H) \approx 1.1774 \sqrt H ifadesine ulaşılır.

Q(H)'nin ilk çakışma bulununcaya dek seçilen değer sayısını belirttiğini varsayalım. Bu sayı,

::Q(H)\approx \sqrt{{\pi\over 2}H} değerine yakınsar.

Örneğin, 64 bitlik bir öz kullanıldığında ortaya çıkan farklı sonuç sayısı yaklaşık 1.8 × 1019'dur. Tüm bu sonuçların gözlenme olasılıkları birbirine eşitse bir çakışmanın meydana gelmesi için en çok 5.1 × 109 denemeye gerek duyulacaktır. Bu değer, **doğum günü sınırı** olarak adlandırılır. Bu değer, n bitlik kodlar için 2^{n/2} olarak hesaplanmıştır. Diğer örnekler ise aşağıdaki tabloda gösterilmiştir.
:
:*Tablo, tüm öz değerlerinin oluşma olasılıklarının eşit olduğu durumda gerekli olan değer sayılarını göstermektedir.*

İşlev çıktılarının farklı yoğunlukta dağıldığı durumların çakışma olasılığını artırdığı kolayca gözlenebilmektedir. Bir öz işlevinin 'dengesi' o işlevin doğum günü akınlarına karşı direncini ifade etmekte, MD ve SHA gibi popüler özlerin zayıf noktalarının aydınlatılması çalışmalarını tetiklemektedir (Bellare ve Kohno, 2004 ).

## Sayısal imzaların akına karşı duyarlığı
Sayısal imzalar, doğum günü akınına duyarlı olabilmektedirler. Bir m iletisi önce f(m) ile imlenmektedir. Burada f bir kriptografik öz işlevini göstermektedir. Alice'in Bob'u kandırmaya çalıştığını varsayalım. Alice önce yasal bir m sözleşmesi hazırlar ve ardından sahte bir m' sözleşmesini imzalar. Alice daha sonra m üzerinde bazı yazım değişiklikleri yaparak birden fazla m sözleşmesi elde etmeye çalışır.

Alice, sahte m' sözleşmesini de aynı yolla çoğaltır ve öz işlevini yasal ve sahte sözleşmeler üzerine uygulayarak f(m) = f(m') koşulunun sağlandığı ilk değeri bulur. Yasal sözleşmeyi Bob'a imzalatan Alice, bu imzayı sahte sözleşmeye ekler. Böylece, Bob'un sahte sözleşmeye imza koyduğu "kanıtlanmış" olur.

Bu akının önüne geçebilmek amacıyla imzayı oluşturan öz işlevinin çıktı uzunluğu artırılmaktadır. Çalışma süresi katbekat artan bu akın böylece uygulanamaz hale dönüşmektedir.

Pollard'ın rho algoritması, ayrık logaritmaların hesaplanmasında doğum günü akınını kullanan bir yöntemdir.

## Ayrıca bakınız
* Ortada buluşma akını

## Kaynakça
*
* Mihir Bellare, Tadayoshi Kohno: Öz İşlevinin Dengesi ve Doğum Günü Akınları Üzerindeki Etkisi. EUROCRYPT 2004: s. 401–418
* *[[Uygulamalı Kriptografi]], 2. baskı*, Bruce Schneier
* *[[CISSP Hepsi İçinde Çalışma Kılavuzu]], 4. baskı*, Shon Harris

## Notlar

## Dış bağlantılar
* "Sayısal imza ve kimlik doğrulama nedir?"
* Kriptanalitik uygulamalarla koşut çakışma çalışması