Skip to content

Hill Şifreleme

Klasik şifreleme sistemlerinin istatistiksel frekans analizine yenik düşmesini engellemek için tasarlanan Hill Şifrelemesi, kriptografiye Lineer Cebiri (Matrisleri) sokan ilk büyük devrimdir.

Bu sistemde harfler tek başına değil, belirlenen bir n uzunluğundaki sütun vektörleri halinde gruplanarak bir matris ile çarpılır.

Sistemin Formal Tanımı

Hill sisteminde işlemler n boyutlu vektörler ve n×n boyutlu kare matrisler üzerinden yürütülür. (Notlarımızda kolaylık olması adına n=2, yani 2×2 matrisler kullanacağız).

Tanım: Hill Şifrelemesinin Matematiksel Modeli

  • Açık Metin (P): Elemanları Z26'dan alınan n boyutlu sütun vektörlerinin kümesi.
  • Şifreli Metin (C): Elemanları Z26'dan alınan n boyutlu sütun vektörlerinin kümesi.
  • Anahtar Uzayı (K): Elemanları Z26'da olan ve mod 26'ya göre tersi alınabilen (invertible) tüm n×n boyutlu kare matrisler.
  • Şifreleme Fonksiyonu (E): Her KK anahtar matrisi ve xP açık metin vektörü için:eK(x)Kx(mod26)
  • Deşifreleme Fonksiyonu (D): Her yC şifreli metin vektörü için:dK(y)K1y(mod26)

⚠️ Anahtar Seçme Koşulu: Determinant ve Ters Matris

Afin şifrelemesinde anahtarın birebir olabilmesi için a değerinin 26 ile aralarında asal olmasını istemiştik. Hill şifrelemesinde ise matrisin tersinin olabilmesi (K1'in hesaplanabilmesi) şarttır.

Bir matrisin tersinin formülü şu şekildedir:

K1=1det(K)adj(K)(mod26)

Bu formülün mod 26'da çalışabilmesi için kesirli kısımdaki det(K) değerinin mod 26'da çarpımsal bir tersi olması gerekir.

📌 Geçerli Bir Hill Anahtarı İçin Altın Kural

Bir K matrisinin Hill şifrelemesinde anahtar olarak kullanılabilmesi için determinantının 26 ile aralarında asal olması zorunludur:

gcd(det(K),26)=1

Pratik bir deyişle; matrisin determinantı mod 26'da çift sayı olamaz (2'ye bölünür) ve 13 olamaz (13'e bölünür). Eğer determinant bu kurala uymuyorsa, sistem o şifreyi bir daha asla geri açamaz!

📌 Dolgu (Padding) Kuralı

Eğer şifreleyeceğiniz mesajın harf sayısı, vektör boyutu olan n'in tam katı değilse, mesajın sonuna anlamsız harfler (genellikle 'X' veya 'Z') eklenerek bloklar tamamlanır.

📝 Çözümlü Uygulamalar

Aşağıdaki örneklerde işlemleri Harf - Sayı Dönüşüm Tablosunu kullanarak yapınız. Vektör boyutumuz n=2'dir.

Örnek: Açık metni "HELP" olan mesajı, aşağıda verilen K matrisi ile şifreleyiniz.

Anahtar Matris:

K=(3325)
💡 Çözümü Göster / Gizle

Çözüm: Öncelikle anahtarın geçerli olup olmadığını determinant ile kontrol edelim: det(K)=(35)(32)=156=9gcd(9,26)=1 olduğu için bu kusursuz bir anahtardır.

Metnimiz "HELP", 2'li bloklara ayrılır: HE ve LP.

1. Blok: HE (7,4)

(3325)(74)=(3(7)+3(4)2(7)+5(4))=(21+1214+20)=(3334)

Mod 26'ya göre denklerini alalım:

(3334)(78)(mod26)

Tabloya göre 7= H, 8= I. (İlk şifreli blok: HI)

2. Blok: LP (11,15)

(3325)(1115)=(33+4522+75)=(7897)

Mod 26'ya göre denklerini alalım: 78=263+00(mod26)97=263+1919(mod26)

(7897)(019)(mod26)

Tabloya göre 0= A, 19= T. (İkinci şifreli blok: AT)

Sonuç: HELP kelimesi Hill şifrelemesiyle HIAT olarak şifrelenir. (Dikkat edin: Açık metindeki 'E' ve 'L' tamamen farklı harflere dönüşürken, aralarındaki istatistiksel bağ matrisin içinde eridi gitti!)

Örnek: Şifreli "HIAT" metnini, aynı K anahtar matrisini kullanarak deşifre ediniz.

Anahtar Matris:

K=(3325)
💡 Çözümü Göster / Gizle

Çözüm: Deşifreleme için dK(y)K1y(mod26) formülünü kullanacağız. Önce K1 ters matrisini bulmalıyız.

Adım 1: Determinantın Tersini Bulmakdet(K)=9 bulmuştuk. 9'un mod 26'daki çarpımsal tersini (91) arıyoruz: 9x1(mod26)x=3 (Çünkü 93=271).

Adım 2: Adjoint (Ek) Matrisi Bulmak2×2 bir (abcd) matrisinin ek matrisi (dbca)'dır.

adj(K)=(5323)

Adım 3: Ters Matrisi (K1) Oluşturmak

K13(5323)=(15969)(mod26)

Eksi değerleri mod 26'da pozitife çevirelim (99+26=17, 66+26=20):

K1(1517209)(mod26)

Adım 4: Şifreli Blokları Ters Matris İle Çarpmak

1. Blok: HI (7,8)

(1517209)(78)=(105+136140+72)=(241212)

2417(mod26) H2124(mod26) E

2. Blok: AT (0,19)

(1517209)(019)=(0+3230+171)=(323171)

32311(mod26) L17115(mod26) P

Sonuç: Matris çarpımları ve mod 26 kuralları bizi tekrar orijinal HELP mesajına ulaştırdı!

Akademik amaçlarla tasarlanmış açık kaynaklı eğitim arşivi. Bu sitedeki tüm ders notları ve içerikler CC BY-NC-SA 4.0 Lisansı ile korunmaktadır.