İÇİNDEKİLER

 

ÖNSÖZ

ÖZET

İÇİNDEKİLER

1.KRİPTOĞRAFİ................................................................................................................1

  1.1 Açık Anahtar Kriptosistemler...............................................................................1

    1.1.1 RSA..........................................................................................................................2

    1.1.2 Rabin Algoritması ..................................................................................................2

  1.2 Gizli Anahtar Kriptosistemleri (Simetrik Şifreleyiciler).........................................3

    1.2.1 Anahtar Uzunluğu..................................................................................................3

    1.2.2 Anahtar güvenliği ..................................................................................................4

    1.2.3 One-Time Pad ........................................................................................................5

    1.2.4 DES..........................................................................................................................6

    1.2.5 Blowfish...................................................................................................................6

    1.2.6 IDEA........................................................................................................................6

    1.2.7 RC4..........................................................................................................................6

2.RIJNDAEL....................................................................................................6

  2.1 Tasarım Temelleri.......................................................................................................7

  2.2 Çevrim Dönüşümü......................................................................................................10

  2.3 ByteSub Dönüşümü.....................................................................................................10

  2.4 Satır Kaydırma Dönüşümü.........................................................................................11

  2.5 Sütun Karıştırma Dönüşümü......................................................................................12

  2.6 Çevrim Anahtar Toplamı............................................................................................13

  2.7 Anahtar Listesi.............................................................................................................13

   2.7.1 Anahtar Genişletme.................................................................................................14

   2.7.2 Çevrim Anahtar Seçimi...........................................................................................15

 2.8 Şifreleme........................................................................................................................15

 2.9 Performans Sonuçları...................................................................................................16

2.10 Rijndael Algoritmasının Avantajları ve Kısıtları.....................................................17

 

 

3.BLOWFISH......................................................................................................................18

3.1 Alt Anahtarlar...............................................................................................................18

3.2 Şifreleme........................................................................................................................19

3.3 Alt Anahtarların Oluşturulması..................................................................................19

4 Uygulama..........................................................................................................................21

5 Kaynaklar.............................................................

 

 

ÖNSÖZ

 

İnternetin her alanda kullanıldığı ve yaşantımıza yön verdiği bir zamanda yaşamaktayız. Doğal olarak bu olarak bu değişim bilgisayarları hayatımızın vazgeçilmezleri arasına  yerleştirmiştir. 

 

Artık alışveriş, bankacılık işlemleri, mesajlaşma gibi birçok işlemi Internet üzerinden yapmaktayız. Internet’in bu kadar etkin olarak kullanılması, güvenlik sorununu  öne çıkarmaktadır. Internet  ortamında, ilettiğimiz bilgilerin dinlenmesi,ele geçirilmesi, değiştirilmesi çok da uzak bir olasılık değildir.Bilginin taşındığı iletim ortamlarının güvensizliğinden kaynaklanan bu sorun, ‘kriptoloji’ biliminin sunduğu imkanlar sayesinde ortadan kaldırılabilmektedir.

 

Bitirme ödevinde iki farklı şifreleme algoritması incelenmiştir.

 

Bu çalışmada  Rijndael ve Blowfish algoritması anlatılmıştır. Bu algoritmaların  kullanan iki program, istemci ve sunucu hazırlanmıştır.

 

Bu çalışmasının ortaya çıkmasında,  yardımlarıyla ve verdiği tavsiyelerle beni yönlendiren  danışman hocam  Sn. Yrd. Doç. Dr. Feza Buzluca’ya teşekkür ederim.

 

 

İstanbul, 2003                                                                                                 Rıdvan Gürcan

 

ÖZET

Amerikan Ulusal Standartlar ve Teknoloji Enstitüsü, elektronik bilginin daha iyi korunması için yeni standardlarını belirledi. 11 ülkeden 21 takımın önerdiği algoritmalar arasından, 2 yıl boyunca yapılan testler sonucunda Belçikalı iki kriptografi uzmanının geliştiği Rijndael algoritması, ABD'nin resmi şifreleme standardı olarak kabul edildi.

2 Ekim 2000'de kazanan algoritma açıklandı: Rijndael Algoritması. Basit ve ince tasarımı, modern işlemciler üzerinde hızlı ve etkili çalışabilmesi, her tür donanımda ve akıllı kartlarda  kullanılabilmesi, Rijndael'in diğer adayların önüne geçmesini sağlamıştı. Bundan yaklaşık 15 ay sonra da, ABD'nin resmi şifreleme standardı olarak kabul edildi. Günümüzde Rijndael, Amerikan devletinin hassas fakat "sınıflandırılmamış" elektronik bilgilerinin korunmasında kullanılıyor.Bu algoritmaya ek olarak Blowfish algoritması da incelenmiştir.

Bitirme çalışmasının uygulaması olması amacıyla, istemci ve sunucu olmak üzere iki program geliştirilmiştir. Uygulamaları geliştirmek amacıyla seçilen programlama aracı Borland C++ Builder 5.0’dır.

 

Programlar nesneye dayalı programlama teknikleri kullanılarak yazılmıştır.