El Gamal Encryption ( El Cemal Şifrelemesi)
Yazan: Şadi Evren ŞEKER
Asimitrik şifreleme yöntemlerinden birisidir. Anahtar üretimi ve şifreleme / açma olarak iki aşamadan oluşur. Dayandığı matematiksel zorluk, dairesel gruplar (cyclic group) üzerindeki ayrık logaritmadır (discrete logarithm).
Anahtar üretme aşaması:
El Gamal şifrelemesinde dairesel gruplardan (cyclic group) faydalanılmaktadır. Alice q derecesinde bir G grubunu g üreticisi (Generator) ile üretir. Alice bu gruptan { 0 , … , q-1 } rasgele bir x değerini seçer. Alice h = gx değerini hesaplar.
Bu işlemler sonucunda Alice , g, G , q ve h değerlerini umumî anahtar (public key) olarak yayınlar.
Şifreleme aşaması (encryption):
Bob, göndermek istediği mesajı şifrelemek için Alice tarafından yayınlanan G grubundan faydalanır. Buna göre şifreli metin (cipher text) aşağıdaki şekilde adım adım hesaplanır:
Bob öncelikle Alice tarafından açık olarak yayınlanan G grubundan rasgele bir sayı seçer (bu örnekte y olarak geçecektir)
Bob iki adet sayıyı hesaplayarak Alice’e gönderir bunlar:
c1 = gy ve
c2 = m hy değerleridir. Dolayısıyla Bob, Alice’e (c1 , c2 ) çiftini yollar.
Şifre açma aşaması (decryption):
Alice, Bob’dan aldığı (c1 , c2 ) çiftini açmak için kendi hususî anahtarı olan x değerinden faydalanır.
Alice mesaja ulaşmak için basitçe ( c2 / c1x ) bölümünü hesaplar.
Bu şifreleme yönteminde G grubundan daha büyük mesajların gönderilmesi durumunda mesajı alt parçalara bölerek göndermek de mümkündür.
« Dairesel Grup (Cyclic Group) | MD5 (Message Digest , Mesaj Özet) »
Yorumlar
Bilgisayar Kavramları üzerinde şu anda okumakta olduğunuz 'El Gamal Encryption ( El Cemal Şifrelemesi)' isimli yazı 30 Apr 2008 tarihinde, saat: 21:38 'de Şadi Evren ŞEKER tarafından gönderilmiş, toplam 710 defa okunmuştur.
Benzer yazıları Veri Güvenliği(Cryptography) kategorilerinden okuyabilirsiniz. Yazar ile irtibat kurmak için email gönderebilirsiniz. Yazıya yorum yapabilir ya da yapılan yorumları RSS 2.0 ile takibe alabilirsiniz.
Yazarın Kitabı
Bu yazının yazarı Şadi Evren ŞEKER'in son çıkan kitabı "Programlama ve Veri Yapılarına giriş (C, C++ ve JAVA ile)" hakkında bilgi almak için Buraya tıklayabilirsiniz.
Eklenen Son Yazılar
- Visual Basic ile Gösterici (Pointer) Kullanımı
- Hasse Çizgeleri (Hasse Diagrams)
- Zeki Vekiller (Akıllı Ajanlar, Intelligent Agents, Zeki Etmenler )
- Integral Kriptoanalizi ( Toplam Tecessüsü , Integral Cryptoanalysis)
- Diferansiyel Kriptoanalizi ( Fark Tecessüsü , Differential Cryptoanalysis)
- Sierpinski Üçgeni (Sierpinski Triangle)
- C ile programlamaya giriş final sınavı çözümleri
- Çok Seviyeli Sıralar (Multi Level Queues)
- Çift Özetleme (Double Hashing)
- İkinci Dereceden Sondalama (Quadratic Probing)
Yapılan Son Yorumlar
- Şadi Evren ŞEKER: Null, NULL, nil veya null olarak...
- Fatih Kabakci: hocam merhabalar,...
- kara: Çok güzel anlatılmış gerçekten teşekkürler...
- Şadi Evren ŞEKER: Bahsettiğiniz şekil dönüşümü...
- Caner: Kullanıcıdan açı girdisi almıyorsanız...
- Furkan Yediyildiz: Algoritmanin mantigi cok güzel...
- havva: çok sağolun çok güzel açıklamalar var tşk...
- Şadi Evren ŞEKER: typedef komutu, bir yapıdan yeni bir...
- fatih kabakci: hocam ben structures ile ilgili bir sorum...
- Şadi Evren ŞEKER: evet, yukarıda açıklanan, herhangi...
- Abdurrahman ulusoy: fi açısından teta kadar döndürme...
- Şadi Evren ŞEKER: Hayır yok, bir noktanın, herhangi...
- Abdurrahman ulusoy: Bu durumda yukarıdaki formüllerin...
- Abdurrahman ulusoy: Merhaba hocam Üstteki mesajımda...
- mustafa ekmekcioğlu: merhaba şadi bey ben hacettepe...
- Şadi Evren ŞEKER: Talebiniz üzerine...
- Evren Kocaturk: ve bunu matlab üzerinde, gerekli...
- Evren Kocaturk: teşekkürler, işime yarayacak gibi,...
- tuncay çavuşoğlu: Şadi bey teşekkürler.Kısa ve...
- attila: hocam bunun bir örneginide Visual Basic diliyle...
Yakın Yazılar
Açık Anahtarlı Şifreleme (Public Key Cryptography)
El Gamal Encryption ( El Cemal Şifrelemesi)
Scytale Cipher (Sarmal Şifrelemesi)
Feistel Şifreleme (Feistel Cipher, Fesitel Ağı, Feistel Network)
Blowfish Şifreleme (balon balığı şifrelemesi, blowfish cipher)
Kamelya Şifrelemesi (Camellia Cipher)
Bilinen Açık Mesaj Saldırısı (Known Plain Text Attack)
Yahut Şifrelemesi (XOR Encryption)
Vigenere Şifreleme (Vigenere Cipher)
Hill Şifrelemesi (Hill Cipher)
Bağlantılar