RSA ve Eliptik Eğri Algoritmasının Performans Karşılaştırması



Benzer belgeler
ŞİFRELEME BİLİMİ. Prof. Dr. Şeref SAĞIROĞLU Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Maltepe/Ankara

ELİPTİK EĞRİ ŞİFRELEME ALGORİTMASI KULLANAN DİJİTAL İMZA UYGULAMASI

Açık Anahtarlı Kriptografi ve Uygulamalar

ŞİFRELEME YÖNTEMİNİN TESPİTİ AMACIYLA ÇEŞİTLİ ŞİFRELEME ALGORİTMALARININ ARAŞTIRILMASI

GÜVENLİ HABERLEŞME TEKNİKLERİ

Güncel Kriptografik Sistemler

ASİMETRİK ŞİFRELEME ALGORİTMALARINDA ANAHTAR DEĞİŞİM SİSTEMLERİ

ŞİFRELEME YÖNTEMLERİ

Anahtar Bağımlı Bir Şifreleme Algoritması (IRON)

SİMETRİK ŞİFRELEME. DES (Veri Şifreleme Standardı, Data Encryption Standard)

RSA ŞİFRELEME ALGORİTMASININ POLLARD RHO YÖNTEMİ İLE KRİPTANALİZİ

Daha komplike uygulamalar elektronik ticaret, elektronik kimlik belgeleme, güvenli e-posta,

RSA ŞİFRELEME ALGORİTMASI

RSA Şifreleme Algoritmasının Pollard RHO Yöntemi ile Kriptanalizi

Kriptoloji. Alibek Erkabayev Mesleki Terminoloji II

Simetrik (Gizli) Kriptografik Sistemler Blok Şifreler Standartlaştırma. DES-Data Encryption Standard (Bilgi Şifreleme Standardı)

RSA ŞİFRELEME ALGORİTMASI VE ARİTMETİK MODÜL UYGULAMASI

XIX. Türkiye de Internet Konferansı (inet-tr 14) BULUT BİLİŞİM GÜVENLİĞİ HOMOMORFİK ŞİFRELEME Kasım, 2014, Yaşar Üniversitesi İÇİN

III. Gizli Anahtar Kriptografi

Temel Şifreleme Yöntemleri. Teknoloji Fakültesi / Bilgisayar Mühendisliği

Güvenli Elektronik Belge Yönetim Sistemi İçin Temel Gereksinim: E-İMZA

KRİPTO ALGORITMALARININ GELİŞİMİ VE ÖNEMİ

M.Ö lü yıllarda Mısırlı bir katip yazdığı kitabelerde standart dışı hiyeroglif işaretleri kullandı.

Şifrebilimde Yapay Sinir Ağları

S. N ala l n n T OP OP A B Ğ Fatih i h A BL B AK K

ELEKTRONİK TİCARETTE BİLGİ GÜVENLİĞİ TERİMLERİ

TODAİE edevlet MERKEZİ UYGULAMALI E-İMZA SEMİNERİ KASIM E-imza Teknolojisi. TODAİE Sunumu

DOKUZ EYLÜL ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ MÜDÜRLÜĞÜ DERS/MODÜL/BLOK TANITIM FORMU. Dersin Kodu: CSE 5065

Üniversite Sanayi İşbirliği Başarılı Uygulamalar Çalıştayı

AES (Advanced Encryption Standard)

SİMETRİK VE ASİMETRİK ŞİFRELEME ALGORİTMALARININ KARŞILAŞTIRILMASI. Konya. Konya. Şifreleme bilgisayar ağlarında haberleşme güvenliğini sağlamak için

International Journal of Innovative Research in Education

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

Bilgisayar ve Ağ Güvenliği

AYRIK YAPILAR ARŞ. GÖR. SONGÜL KARAKUŞ- FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ BÖLÜMÜ, ELAZIĞ

RSA Şifreleme Algoritması Kullanılarak SMS İle Güvenli Mesajlaşma Yöntemi

Polialfabetik Şifreleme (Vigenere)

Açık Anahtar Altyapısı Konusunda Araştırma, Geliştirme ve Uygulamalar 1

Şifreleme Sistemlerine Giriş ve Açık Anahtar Şifreleme

ŞİFRELEME YÖNTEMLERİ

6.046J/18.401J DERS 7 Kıyım Fonksiyonu (Hashing I) Prof. Charles E. Leiserson

KRİPTOLOJİYE GİRİŞ Ders 1. Yrd. Doç. Dr. Barış Koçer

RSA Şifreleme Algoritması Kullanılarak SMS İle Güvenli Mesajlaşma Yöntemi. Secure Messaging Method With SMS Using RSA Encryption Algorithm

Dr. Fatih AY Tel: fatihay@fatihay.net

ELİPTİK EĞRİ TABANLI KRİPTOGRAFİK PROTOKOL ve AKILLI KART ÜZERİNDE BİR UYGULAMA

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUVARI LİNEER KRİPTANALİZ

Algoritmalar ve Karmaşıklık

KRİPTOLOJİ SÖZLÜGÜ. authentication, authorization and accounting ( AAA ) : Kaynaklara güvenli erişimi sağlayıcı güvenlik unsurlarıdır.

Simetrik Kriptografi

Bilgi Güvenliği ve Kriptoloji Temel Kavramlar

BULANIK MANTIK VE SİSTEMLERİ BAHAR DÖNEMİ ÖDEV 1. Müslüm ÖZTÜRK Bilişim Teknolojileri Mühendisliği ABD Doktora Programı

ÜNİT E ÜNİTE GİRİŞ. Algoritma Mantığı. Algoritma Özellikleri PROGRAMLAMA TEMELLERİ ÜNİTE 3 ALGORİTMA

Kriptoloji Nedir? Elektronik Tehditler Haberleşmede Emniyet Kavramları Basit Şifreleme Yöntemleri Simetrik Kriptografi nedir? Simetrik Kriptografi

EÜFBED - Fen Bilimleri Enstitüsü Dergisi Cilt-Sayı: 7-1 Yıl:

4.43. BĠLGĠ GÜVENLĠĞĠ VE RSA ġġfreleme ALGORĠTMASININ ĠNCELENMESĠ. * Hakan ÇAKAR, * Asaf VAROL

Mukayeseli Veri Şifreleme Algoritmaları

Dr. Akif AKGÜL Oda No: 303 VERİ GİZLEME I HAFTA 3 : ŞİFRELEMENİN TEMELLERİ

ELGAMAL ŞİFRELEME ALGORİTMASINI KULLANAN GÜVENLİ BİR E-POSTA UYGULAMASI: MD MESSAGE CONTROLLER

GÜVENLİ BİR E-POSTA UYGULAMASI: GÜ-POSTA

Ayrık Fourier Dönüşümü

DES ALGORİTMASI KULLANILAN AKILLI KART İLE GÜVENLİK SİSTEMİ TASARIMI ve UYGULAMASI

Bulut Bilişim Güvenliği için Homomorfik Şifreleme

Veri Güvenliği. Ders#6 Asimetrik Şifreleme Yöntemleri

Excel Formüller ve Fonksiyonlar. Yusuf MANSUROĞLU Mühendislik Hizmetleri Müdür Yardımcısı

Mustafa Sezer PEHLİVAN. Yüksek İhtisas Üniversitesi Beslenme ve Diyetetik Bölümü

RSA ANAHTAR DAĞITIMI VE RSA İLE DİJİTAL İMZA OLUŞTURMA

Bilgi Güvenliği ve Kriptoloji

Kriptolojinin Temelleri

Şifreleme Cryptography

Asimetrik Kriptografi

Tanım 5.1.1: n ve d tamsayılar ve d 0 olsun. Eğer n=dq olacak şekilde bir q tamsayısı varsa d sayısı n sayısını böler denir. Burada q sayısına bölüm

Proje Adı: Sonlu Bir Aritmetik Dizinin Terimlerinin Kuvvetleri Toplamının İndirgeme Bağıntısıyla Bulunması.

İstatistik ve Olasılık

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

AÇIK ANAHTAR KRİPTOGRAFİSİ İLE SAYISAL İMZA TASARIMI VE UYGULAMASI

11.Konu Tam sayılarda bölünebilme, modüler aritmetik, Diofant denklemler

ALGORİTMA ANALİZİ. Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü

Internet te Veri Güvenliği

Temel Kavramlar. (r) Sıfırdan farklı kompleks sayılar kümesi: C. (i) Rasyonel sayılar kümesi: Q = { a b

DES ALGORÝTMASINI KULLANAN GÜVENÝLÝR BÝR E-POSTA ÝLETÝM UYGULAMASI: TUÐRA

BİL-341 ALGORİTMALAR BÜYÜK O NOTASYONU AHMET ATAKAN atakanahmet@hotmail.com KIRGIZİSTAN-TÜRKİYE MANAS ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#1: ALGORİTMA KAVRAMI

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

SORULAR 1-Simetrik şifreleme sistemi nedir? Asimetrik şifreleme sistemlerine göre avantajları ve dezavantajları nelerdir?

Önermeler mantığındaki biçimsel kanıtlar

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

BMT 206 Ayrık Matematik. Yük. Müh. Köksal GÜNDOĞDU 1

Stenografi ve Steganaliz. Hamza Duman / F.Ü. Yazılım Mühendisliği

ELİPTİK EĞRİ KRİPTOSİSTEM YAZILIM UYGULAMALARINDA HIZ PROBLEMİ

BMB204. Veri Yapıları Ders 12. Dizgi Eşleme (String Matching) Algoritmaları İleri Veri Yapıları

GELİŞMİŞ ŞİFRELEME STANDARDI - AES

Kriptografik Protokoller ve Uygulamalar. Sedat Akleylek Ondokuz Mayıs Üniversitesi, Bilgisayar Mühendisliği Bölümü

5 AÇIK ANAHTARLI KRİPTOSİSTEMLER VE SAYISAL İMZALAR (PUBLİC KEY CRYPTOSYSTEMS AND DİGİTAL SİGNATURES)

for döngüsü for (başlangıç değeri; şart; artım) ifade; for (başlangıç değeri; şart; artım) { ifadeler; }

İşaret ve Sistemler. Ders 1: Giriş

Bilgi Güvenliği Eğitim/Öğretimi

Şifreleme Algoritmalarının Sınıflandırılması ve Algoritmalara Saldırı Teknikleri. Yrd.Doç.Dr.Mehmet Tektaş

Kriptoloji Kavramları ve Kripto Analiz Merkezi Gökçen Arslan

Transkript:

KSÜ Fen ve Mühendislik Dergisi 8(1)-2005 35 KSU Journal of Science and Engineering 8(1)-2005 RSA ve Eliptik Eğri Algoritmasının Performans Karşılaştırması Selahaddin Batuhan AKBEN, Abdülhamit SUBAŞI KSÜ, Mühendislik ve Mimarlık Fakültesi, Elektrik Elektronik Mühendisliği Bölümü, Kahramanmaraş ÖZET: Internet teknolojisindeki gelişmelerin ardından ortaya çıkan e-iletişim (e-ticaret, e-devlet, e-eğitim vb.) bilgi güvenliği sorunlarını da beraberinde getirmiştir. Şifreleme/deşifreleme (encryption-decryption) bir internet ortamında veya bilgisayar ağında veri güvenliğini sağlamak için kullanılır. Bu nedenle günümüzde internet yada bilgisayar ağlarında şifrelemenin önemi gün geçtikçe artmaktadır. Bu çalışmada, açık ve gizli anahtar algoritmaları, bunların kullanıldığı yerler ve açık anahtar şifreleme yöntemlerinin karşılaştırması yapılmıştır. Yaygın olarak kullanılan açık anahtar şifreleme yöntemlerinden olan RSA (Rivest, Shamir, Adelman) ve Eliptik Eğri algoritmasının performansları karşılaştırılmıştır. Sonuç olarak Eliptik Eğri algoritması kullanılarak, şifrelenmiş bir bilginin, deşifrelenmesinin diğer algoritmalara göre daha güvenilir ve hızlı olduğu gösterilmiştir. Anahtar Kelimeler: RSA, Eliptik Eğri Şifreleme (EEŞ), Kriptoğrafi Performance Comparison of RSA and Elliptic Curve Algorithms ABSTRACT: After the improvements of internet technologies, e-communication had been resulted in data security problem. Encryption/decryption is used for data security in internet and computer networks. Because of this, importance of encryption in the internet and computer networks is being increased from day to day. In this study, definition of public and private key algorithms, their usage areas and comparison of public key algorithms was done. As a result it was shown that using elliptic curve algorithm for decryption of encrypted data is more reliable and faster than other public key encryption algorithms. Key Words: RSA, Elliptic Curve Encryption, Cryptography GİRİŞ Bilginin gizli kalma gereksiniminin büyük önem taşıdığı, eski çağlardan bu yana bilinmektedir. Bu yüzden bilginin gizli kalması için geliştirilen birçok yöntem vardır. Bu yöntemler, önceleri metnin şeklinin bozulması, metindeki karakterlerin yerinin değiştirilmesi olarak başlamış ve daha sonra teknolojinin gelişmesi ile daha çok kullanıcının yararlanabileceği bilgisayarla yapılan yöntemlere doğru gitmiştir. Bu yöntemler açık anahtar şifreleme (asimetrik şifreleme) ve gizli anahtar şifreleme (simetrik şifreleme) olarak ikiye ayrılır. Gizli anahtar şifreleme tekniğinde bilginin şifrelenmesi ve deşifrelenmesi aynı anahtar ile gerçekleştirilir. Bu anahtar yalnızca şifreleme ve deşifreleme işlemini yapacak kişilerde bulunur. Bu sayede matematiksel yöntemlerle anahtarın ele geçirilmesi hemen hemen imkansız olur. Bu yöntem genelde askeri alanlar gibi bilgi gizliliğinin hayati önem taşıdığı yerlerde kullanılır. Açık anahtar şifrelemede ise bilgi herkesin bildiği bir açık anahtar ile şifrelenir ancak deşifreleme işlemi yalnızca deşifreleme işlemini yapacak kişi tarafından bilinen ve açık anahtardan türetilerek elde edilen gizli anahtar ile gerçekleştirilir. Açık anahtar şifrelemede gizli anahtarın açık anahtardan elde edilmesi karmaşık matematiksel yöntemlere dayalı olduğu için açık anahtardan gizli anahtarın elde edilmesi mantık olarak imkansıza yakın olmaktadır. Günümüzde internet tabanlı sistemlerde, cep telefonu sistemlerinde, akıllı kartlarda v.b. uygulamalarda bu yöntem kullanılmaktadır. Şekil 1. Tek anahtar ile gizli anahtar (simetrik) şifreleme Şekil 2. Çift anahtar ile açık anahtar (asimetrik) şifreleme Güncel bilgisayarların giderek daha hızlanması ve daha fazla işlemi bir arada yapabilmesi, insanları farklı yöntemlerin kullanıldığı yeni algoritmalar geliştirmeye sevk etmiştir. Günümüzde en çok kullanılan yöntemler şunlardır: Yerine Koyma Yöntemleri (Substitution Methods): Gizli anahtar şifreleme tekniğinde kullanılan bu şifreleme yönteminde açık metindeki karakterlerin yerine, başka bir alfabenin karakterleri veya sayısal değerler koyulur. Şifreli metindeki orijinal karakterler kimliklerini kaybederler, fakat pozisyonları sabit kalır. Ceasar, Polybius ve Vigenere şifreleri bu yöntemlere örnek olarak gösterilebilir (Mullins, ve Moore, 2002). Yer Değişme Yöntemleri (Transposition Methods): Yine gizli anahtar şifreleme tekniğinde kullanılan bu

KSÜ Fen ve Mühendislik Dergisi 8(1)-2005 36 KSU Journal of Science and Engineering 8(1)-2005 şifreleme yönteminde ise, açık metin karakterlerinin pozisyonları yeniden düzenlenir. Orijinal karakterler konumlarını kaybeder, fakat kimlikleri değişmez. Picket Fence ve Sütun (Columnar) ve Beşerli (Double Five) şifreleme algoritmaları bu yöntemlere örnek olarak gösterilebilir (Highland, 1997). Matematiksel Yöntemler: Açık anahtar şifreleme tekniklerinde kullanılan matematiksel yöntemlerde genellikle zor problemlere dayalı olan algoritmalar kullanılmaktadır (Schneier, 1996). Çarpanlara ayırma, sonlu alanda ayrık logaritmaların hesaplanması, eliptik eğriler üzerinde ayrık logaritmaların hesaplanması, Knapsack problemleri denklemlerin köklerinin bulunması, bu matematiksel yöntemlerden bazılarıdır. Verilerin kriptografik açıdan korunması donanım ve yazılım uygulamaları olarak gerçekleştirilmektedir. Donanım uygulamaları pahalı olup basit ve güvenlidir. Yazılım uygulamaları ise esnek ve pratiktir. Günümüzde en çok kullanılan yazılım uygulamaları açık anahtar şifreleme yöntemleri ile gerçekleştirilir. Açık anahtar şifreleme yönteminin en çok kullanılan algoritmaları ise RSA ve Eliptik eğri algoritmalarıdır. Şifreleme Bilgiyi alacak şahıs bilgi gönderen şahısın açık anahtarı olan (n, e) yi elde eder. Mesaj m [0, n-1] arası olacak şekilde bir tamsayıya dönüştürülür. C = m e (mod n) olarak şifreli metin hesaplanır. Bilgiyi gönderecek şahıs şifreli metin c yi bilgiyi alacak şahısa gönderir. Deşifreleme Bilgiyi alan şahıs özel anahtarını kullanılarak düzmetini m = c d (mod n) olarak tekrar elde eder. Eliptik eğri Yöntemi Bir açık anahtar şifreleme yöntemi olan eliptik eğri algoritmasında F q sonlu alanı üzerinde eliptik eğri E ve bu eğri zerinde Q noktası için, <Q> Q nun katları kümesi olsun. A <Q> verildiğinde, öyle bir x bulun ki, A = xq olsun (Menzes, 1993). Yani eğri üzerindeki bir noktanın verilen bir sayı ile çarpımı eğri üzerindeki başka bir noktayı oluştursun MATERYAL ve METOT RSA Yöntemi Açık anahtar şifrelemenin günümüzde en çok kullanılan algoritmasıdır. Çok büyük iki asal sayının çarpımından oluşan bir tamsayı verildiğinde, bu sayının çarpanlarına ayrılması oldukça zordur. RSA şifreleme yöntemi bu probleme dayanmaktadır. Bu yöntemde düz metnin her bir karakterinin özel olarak seçilmiş bir sayıdaki (e sayısı) üssü alınarak, yine bu özel sayı ile ilgili başka bir sayıya (n sayısına) bölümünden kalan bulunarak, şifreli metin oluşturulur. Karşı tarafta ise şifreli metnin karakterlerinin aynı şekilde yine özel olarak seçilmiş başka bir sayı ile üssü alınır (d sayısı) ve birinci taraftaki sayıya (n sayısına) bölümünden kalan bulunur ve düz metin geri oluşturulur. Bütün bu işlemler için ayrı ayrı geliştirilmiş matematiksel algoritmalar vardır. Anahtar Üretimi İki adet birbirinden bağımsız rasgele büyük p ve q asal sayıları yaklaşık olarak aynı büyüklükte (aynı bit) olmak üzere üretilir. n = p.q ve Ø = (p-1).(q-1) hesaplanır. Rasgele tamsayı e, obeb(e, Ø ) = 1 ve 1 < e < Ø şartlarını sağlamak kaydıyla üretilir. Kapsamlı Öklid Algoritması kullanılarak yegane tamsayı d, 1 < d < Ø ve e.d 1 mod(ø) şartlarını sağlamak kaydıyla üretilir. Bilgiyi alacak şahsın açık anahtarı (n, e); gizli anahtar ise d olur. Şekil 3. y 2 = x 3 7x Eliptik Eğrisi Sonlu alanlar için ayrık logaritma probleminin varsayılan zorluğuna dayanan bir çok şifreleme sisteminin, eliptik eğrilere uygulaması bulunmaktadır. Bu sistemlerde açık metnin gösterimi aşikardır: Açık metnin her bir karakteri, alanın bir elemanı ile eşlenmektedir. Eliptik eğrilerde ise, karakter dizilerinin eliptik eğri üzerindeki noktalarla eşlenmesi gerekmektedir. Bu eşleme yapıldıktan sonra şifreleme işlemi bu noktalar kullanılarak gerçekleştirilir. (Menzes, 1993). Şekil 1 de verilen örnek eğride, açık metne ait bir ya da bir kaç karakterden oluşan bir bloğun P noktasıyla eşlendiği varsayılırsa, şifreleme işleminin noktanın kendisiyle toplanması suretiyle gerçekleştirilmesi durumunda, şifrelenmiş metin R noktası olmaktadır.

KSÜ Fen ve Mühendislik Dergisi 8(1)-2005 37 KSU Journal of Science and Engineering 8(1)-2005 Anahtar Üretimi Rasgele tamsayı [1, n-1] olmak üzere seçilir. Q = d.p hesaplanır. Biligiyi alacak şahısın açık anahtarı Q ve özel anahtarı ise d dir. Şifreleme Bilgiyi gönderecek şahıs bilgiyi alacak şahısın açık anahtarı olan Q yu elde eder. Mesaj m F q nun elemanı olacak şekilde bir tamsayıya dönüştürülür. Rasgele tamsayı k, [1, n-1] arası olmak üzere seçilir. (x 1, y 1 ) = k.p hesaplanır. (x 2, y 2 ) = k.q hesaplanır. Eğer x 2 = 0 olursa, adım 3 e dönülür. Şifrelenmiş metin c = m.x 2 hesaplanır. Bilgiyi gönderen şahıs (x 1, y 1, c) yi bilgiyi alacak şahısa gönderir. Deşifreleme Bilgiyi alan şahıs, özel anahtarı d yi kullanarak (x 2, y 2 ) = d. (x 1, y 1 ) i hesaplar. Bilgiyi alan şahıs m = (c.x 2 ) -1 mod n ile esas metini bulur. m = (c.x 2 ) -1 mod n ifadesindeki üs (-1), kapsamlı öklit (extended eucledian) algoritmasına göre özel bir hesaplamayı ifade eder. Çarpanlara ayırma yöntemi RSA algoritması gibi asal sayıların çarpanlara ayırma zorluğuna dayanan açık anahtar şifrelemelerde p ve q gibi iki büyük asal sayının çarpımından oluşan n sayısı verildiğinde, p ve q sayılarının bulunmasıdır. α β γ n = p p r... sayısının tüm çarpanlarının sayısı; τ(n)=(α+1)(β+1)(γ+1) (1) olmaktadır. Görüldüğü gibi τ(n) sayısı yalnız α, β ve γ değerlerine bağlıdır. n nin bölenlerinin toplamı ise S( n) = α β + 1 γ + 1 p 1 q r... p 1 q 1 r 1 (2) Burada p, q ve r asal çarpanlar, α, β ve γ ise katsayılar α β γ olup, aynı ( n = p p r ) n sayısı; χ λ µ d = p p r (0 χ α, 0 λ β, 0 µ γ) (3) biçimindeki d sayısına tam olarak bölünür. Buradan anlaşılacağı gibi farklı χ, λ ve µ değerleri için farklı d ler oluşmaktadır. Burada π kombinasyonların sayısı ise; π = (α+1)(β+1)(γ+1) (4) olmaktadır (Sushkevich, 1978). Görüldüğü gibi asal çarpanların bulunması problemi sayılar büyüdükçe, çok karmaşık bir hal almaktadır. Bir sayının asal çarpanlarının bulunması onun asallığının araştırılmasından daha çok zaman gerektirmektedir (Montgomery, 1994). Genel Anahtarın Çözülmesi Amacıyla Asal Sayıların Araştırılması Bir kriptografik algoritma, şifreleme ve deşifreleme için kullanılan matematiksel fonksiyonlardan oluşur. E şifreleme fonksiyonu, M açık metnine uygulanarak C şifreli metni E(M)=C ile elde edilir. D deşifreleme fonksiyonu ise, C şifreli metninden M açık metninin elde edilmesinde kullanılır (D(C)=M). Modern kriptografide, K ile ifade edilen bir şifreleme anahtarı kullanılır. Anahtar için mümkün değerler kümesine, anahtar uzayı (keyspace) adı verilir. Hem şifreleme hem de deşifreleme işlemleri, bu anahtarları kullanarak gerçekleştirilir. Bu durumda fonksiyonlar aşağıdaki şekli alır. E K (M)=C, D K (C)=M (5) Bazı algoritmalar, farklı şifreleme (K 1 ) ve deşifreleme (K 2 ) anahtarları kullanırlar. E K1 (M)=C, D K2 (C)=M (6) Anlaşıldığı gibi anahtar tabanlı algoritmaların simetrik (symmetric) ve açık anahtar (public key) olmak üzere iki genel türü vardır. Bu çalışmadaki amaç, genel anahtar yöntemlerden olan RSA (Rivest Shamir Adleman) ve Eliptik Eğri algoritmalarının deşifre edilmesinin araştırılmasıdır. Bu nedenle, RSA algoritması için en çok kullanılan asal çarpanlarına ayırma yöntemi ve Eliptik Eğri için de Pollard Rho algortiması incelenmiştir. n = p.q; = (p-1).(q-1) e = random ( ) While (Açık anahtar (, e) 1) d = Özel anahtar (, e); Açıkanahtar (a,b) Özelanahtar (a, b) While)b 0 iken r a mod b a b; b r return (a) İf b = 0 d a; x 1; y 0 return (y) x 2 1; x 1 0; y 2 0; y 1 1 While b>0 q a/b ; r a q.b; x x 2 -qx 1; y y 2 q.y 1 ; a b; b r; x 2 x 1 x 1 x; y 2 y 1 ; y 1 y d a; x x 2 ; y y 2 return (y) Şekil 4. RSA anahtar üretimi algoritması

KSÜ Fen ve Mühendislik Dergisi 8(1)-2005 38 KSU Journal of Science and Engineering 8(1)-2005 RSA şifreleme yöntemi için anahtar üretimi algoritması Şekil 3 te verilmiştir. Şifreleme c=m e (mod n), deşifreleme m=c d (mod n) ile yapılır (Schneier, 1996). Özel anahtar bilinmeden, RSA ile şifrelenmiş bir mesajın deşifrelenmesi, n sayısının asal çarpanlarına ayrılmasına dayalı olmaktadır. Asal çarpanlar bulunduktan sonra, p, q, e ve n sayıları kullanılarak, d özel anahtarının hesaplanması ve böylelikle şifreli bilginin deşifre edilmesi mümkündür. Asal sayıların dağılımının düzensizliği ve asal sayı dizisinin genel formülünün bulunamaması, bu sayıları ilginç kılmakta ve şifreleme yöntemlerinde önemini artırmaktadır (Maurer, 1995; Kramer, 1999). Asal sayıların bu düzensizliği aralık büyüdükçe sayı yoğunluğunun kısmen azalmasına rağmen kesin bir dağılım kuralı oluşmamaktadır (Şekil 4). max=(n-1)/2; k= max; for i = 1 to k num = 2i+1; if ((start=num 2 /2) > max) break; for j = start to N step num A[j] = 0; Şekil 6. Hızlı asal sayı bulma algoritması Sonlu alandaki ayrık logaritma yöntemi p, r ve g sayıları verildiğinde r = gk mod p (12) eşitliğini sağlayan k sayısının bulunması olarak açıklanabilir. Örneğin, 3.x 13(mod 17) için x=4 olarak hesaplanır. Bu problem zor olması nedeniyle, El Gamal ve DSS (Digital Signature Standart) gibi pek çok genel anahtar sisteminin temelini oluşturur (Stallings, 1998). Kriptografik uygulamalarda genellikle n asal sayı olmak üzere Z n * grubu kullanılmaktadır. Z n ={0,1,...,n-1} kümesi mod n deki sayıları içermektedir. Z n *={a Z n obeb (a,n)=1} kümesi ise Z n kümesindeki elemanlardan n ile aralarında asal olan sayılardan oluşmaktadır. n asal olduğunda Z n *={a 1 a n-1} olacaktır. Eliptik eğriler üzerinde ayrık logaritmaların hesaplanması yöntemi Şekil 5. Farklı aralıklardaki asal sayı yoğunluğu Asal sayıların dağılımı için ne kadar genel ifadelendirmelerin bulunduğu iddia edilse de (Agrawal ve ark., 1997) şimdilik yalnız yaklaşık değerlendirmeler yapılmaktadır. Asal sayıların oluşturulması için önerilen ifade; P=(2*3*5*7*...*p)±1, (7) şeklindedir. Euler fonksiyonları; f 1 (x)=x 2 +x+41 (8) f 2 (x)=x 2 +x+17 (9) f 3 (x)=2x 2 +29 (10) veya Fermat fonksiyonu g(n)= 2 2n + 1 (11) yalnız belirli aralıklar için geçerlidir (Anonim, 2002). Asal çarpanların bulunması için asal sayıların bilinmesi gerekir. Asal sayı büyüdükçe, işlem sayısı da artmaktadır. Asal sayıların üretilmesinde kullanılan etkin yaklaşım Şekil 6 da açıklanmıştır. y 2 =x 3 +ax+b (13) bağıntısında verilen eşitliği sağlayan (x, y) noktaları bir eliptik eğri tanımlar. Eliptik eğri üzerindeki herhangi bir P=(xP, yp) noktası için -P=(xP, -yp) noktası da kesinlikle eğri üzerindedir. Kriptografik uygulamalar hızlı ve kesin işlemler gerektirdiğinden pratikte F p ve F 2m sonlu alanları üzerindeki eliptik eğri grupları kullanılır (Anonim, 1999). Eliptik eğriler üzerindeki ayrık logaritma problemi ise verilen P, Q noktaları için P.k=Q eşitliğini sağlayan k sayısının bulunmasıdır. k, Q nun P tabanına göre ayrık logaritması olarak adlandırılır. Bir eliptik eğri üzerindeki P ve Q (Q -P) gibi iki noktanın toplamı Şekil 1 de geometrik olarak açıklanmaktadır. P ve Q noktalarının toplanması için öncelikle iki nokta arasına bir doğru çizilir. Bu doğru eliptik eğri ile -R noktasında kesişir. -R noktasının x eksenine göre simetriği olan R noktası, P ve Q nun toplamı olarak elde edilir. Eliptik eğri üzerindeki toplama işlemlerini gerçekleştirmek için geometrik yöntemin haricinde matematiksel formüller de vardır. P noktası ile P noktasının toplanmasında ise iki nokta arasına çizilen doğru, noktaların x eksenine göre simetrik olmasından dolayı dik olacaktır. Bunun sonucunda bu doğru eğriyi üçüncü bir noktadan kesmez ve yukarıda anlatılan şekilde toplanamaz. Bu nedenle eliptik eğri grubu O ile ifade edilen sonsuzluktaki noktayı içerir ve P+(-P)=O tanımlaması yapılır (Şekil 2).

KSÜ Fen ve Mühendislik Dergisi 8(1)-2005 39 KSU Journal of Science and Engineering 8(1)-2005 Y 0 = P olarak ayarlanır. i =0,1,2 için Y i+1 = F(Y i ) olur. Bu şekilde Rho oluşur. Pollard ın rho yöntemi y 2 =x 3-7x Şekil 7. Eliptik eğrilerde toplama işlemi Grup <P> S 1, S 2, ve S 3 olarak 3 eşit parçaya bölünür. Eliptik Eğri için uyarlanmış öteleme başlar. Y + P if Y S 1 F(Y) = { Y + Y if Y S 2 Y + Q if Y S 3 a k ve b k hesaplanarak Y k = a k P + b k Q şeklinde terimlerin sırası elde edilir. a 0 = 1 ve b 0 = 0 (Y 0 = P iken) a k+1 = a k + 1, 2*a k, a k mod n b k+1 = b k, 2*b k, b k + 1 mod n Özel Anahtarın Çözülmesi Eşleştirme elde edilene kadar her bir önceki terim yeni terimlerle karşılaştırıldı. Yani mevcut terimler bir sonraki eşleştirme için başlangıç değeri olarak kullanıldı. a i P + b i Q = a j P + b j Q Q = xp iken, a i + xb i a j + xb j mod n olsun. x = (a j - a i )*Inv(b i - b j ) mod n Bu yöntem eğer obeb(b i -b j, n) = 1) alınamazsa geçersiz kalır. Ticari uygulamalarda n asal bir sayı olduğu için Polard Rho yönteminin başarı oranı %100 dür. y 2 =x 3-6x+6 Şekil 8. Eliptik eğrilerde P+(-P) işlemi Eliptik Eğri Algoritmasının deşifrelenmesi amacıyla Pollard rho algoritmasının araştırılması Eliptik eğri ayrık logaritma problemi şu şekilde tanımlanır: E(F q ) bir eğri ve P, E de <P> = {P, 2P, 3P np} olacak şekilde bir nokta ve bu eğride kimlik=δ= np olsun. ECDLP: Verilen <P> de Q = xp için x tamsayısının bulunmasıdır. Q açık anahtar, x ise özel anahtardır. P öyle seçilmelidir ki n=<p> de çok büyük olmalıdır. Eliptik Eğri toplama işlemine göre P 3 = 3P = P + P + P olur. <P> deki terimlerin öteleme fonksiyonu kullanılarak sıralı üretimine walk (Yürüme) fonksiyonu F: <P> Ø <P> denir. BULGULAR ve TARTIŞMA Bu çalışmada açık anahtar şifreleme yöntemlerinden olan RSA ve Eliptik Eğri algoritmaları kullanılarak şifrelenmiş bir bilginin, deşifre edilme yöntemleri araştırılmış ve algoritmalar bilgisayar programları kullanılarak çeşitli yönleri ile karşılaştırılmıştır. Tablo 1. RSA ve Eliptik Eğri Algoritmasının Performans Karşılaştırması Pollard Rho kullanarak Eliptik Eğri Algoritması Genelleştirilmiş Sieve kullanarak çarpanlara ayırma Anahtar MIPS-Yılı Anahtar MIPS Yılı 150 3.8 10 10 512 3 10 4 205 7.1 10 18 768 2 10 8 234 1.6 10 28 1024 3 10 11 1280 1 10 14 1536 3 10 16 2048 3 10 20

KSÜ Fen ve Mühendislik Dergisi 8(1)-2005 40 KSU Journal of Science and Engineering 8(1)-2005 Karşılaştırma sonucu Tablo 1 de, Eliptik eğri metodu ile RSA daki tamsayının iki asal çarpanına genelleştirilmiş Sieve yöntemi ile ayrılması esnasında gereken hesapsal çaba gösterilmiştir. Tablodan da anlaşılacağı üzere, RSA nın sağladığı direnci ECC, çok daha düşük anahtar boyutları ile sağlamaktadır. Bu yüzden ECC, düşük anahtar boyutu ile sağladığı yüksek güvenlik sayesinde RSA`ya karşı büyük bir hesapsal üstünlük sağlamaktadır. Tablo 1 de MIPS yıl ile ifade edilen birim, saniyede bir milyon işlem yapma olanağı varsa, problemi çözmek için azami kaç yıl gerektiğidir. Daha uzun sürede deşifrelenme özelliğinden dolayı istenilen bit düzeyindeki güvenlik işlemlerinde eliptik eğri RSA ya göre daha düşük bir anahtar uzunluğu ile aynı işlemi yapabilmektedir. Tablo 2 de en yaygın olarak kullanılan ve en güvenilir yöntemlerden birisi olarak görülen RSA ile eliptik eğri şifreleme yöntemlerinin eşdeğer güvenlik sağlayabilmek için ihtiyaç duydukları anahtar boyları karşılaştırması verilmiştir. Tablo 2. Karşılaştırmalı Anahtar Boyları (Menzes, 1993) Bit olarak istenilen güvenlik EEŞ yöntemide gerekli anahtar uzunluğu RSA yönteminde gerekli anahtar uzunluğu düzeyi 56 112 512 80 160 1024 112 224 2048 128 256 3072 192 384 7680 256 512 15360 Eliptik eğri algoritmasının sağladığı bir avantaj da şifreleme için gereken süreyi azaltmasıdır. Bu avantaj sayesinde cep telefonları ve akıllı kartlar gibi güvenliğin, sürenin önemli olduğu; bellek ve işlemci kaynakların kısıtlı bulunduğu şifreleme uygulamalarında eliptik eğri algoritması daha geçerli olacağı gözükmektedir. Çalışmamızda süre açısından RSA ve eliptik eğri şifreleme performansı karşılaştırılmış ve Tablo 3 te elde edilen sonuçlar gösterilmiştir. Tablonun her bir satırında her iki yöntemin de sağladıkları eşdeğer güvenlik düzeyleri için verilerin şifrelenmesi ve deşifrelenmesi için gereken süreler gösterilmiştir. Tablo 3. RSA Şifreleme ve Eliptik Eğri Şifreleme Performans Ölçümleri RSA Süre(ms) EEŞ Süre(ms) 512 bit 2.2 - - 1024 10.3 160 7.2 2048 59.6 224 10.0 4096 390.5 - - - - 384 30.8 Tablodan da görülebileceği gibi, eşdeğer güvenlik düzeylerinde eliptik eğriler daha yüksek şifreleme hızına sahiptir. Güvenlik düzeyi arttıkça da eliptik eğri şifreleme performans farkı daha da belirginleşmektedir. Tabloda boş bırakılan alanlar, ilgili yöntemde eşdeğer güvenlik düzeyi için ölçüm yapılmadığını göstermektedir. SONUÇ Şifreleme işlemlerinde en çok kullanılan şifreleme algoritması RSA dır. Bu algoritma günümüzde 160 bit sayısal anahtar büyüklüleri ile gerçekleştirilmektedir. Ancak gelecek için daha hızlı ve daha çok işlem yapma yeteneğine sahip bilgisayarların ortaya çıkması bu anahtar büyüklüğünün yetersiz kalmasına sebep olacaktır. RSA algoritması ile Eliptik eğri algoritmasının karşılaştırılmasından da anlaşılacağı gibi, gelecekte kullanılması gereken 1024 bit uzunluğundaki RSA anahtarlarının yerine 160 bit uzunluğundaki eliptik eğri anahtarları aynı işlemleri daha kısa sürede gerçekleştirebildiği gibi daha düşük anahtar boyutu sağlamasından dolayı gerekli hafıza miktarını da azaltır. Bu da gösteriyor ki Eliptik Eğri algoritması gerek hız gerek anahtar uzunluğu gerekse süre gibi etkenlerden dolayı en çok kullanılması gereken algoritma olmalıdır. KAYNAKLAR Agrawal, M., Kayal, N., Saxena, N. 1997. Primes is in P,. Department of Computer Science & A.J. Menzes, Handbook of Applied Cryptogra. MIT Pres, 1997 Anonim. 1999. www.certicom.ca/online.html Anonoim. 2002. Engineering Indian Institute of Technology Kanpur, Kanpur-208016, INDIA, August 6 Highland, H.,J. 1997. Data Encryption: A Non- Mathematical Approach, Computers & Security, 16, 369-386. Kramer, P. 1999. Encryption and Decryption with RSA Algorithm, Mathematics and the Computer, V55.0102- Fall, November 8 Maurer, U., M. 1995. Fast Generation of Prime Numbers and Secure Public-Key Cryptographic Parameters, J. Cryptology, 8(3): 123-156. Menzes, A. 1993. Elliptic Curve Public Key Cryptosystems, Kluwer Academic Publishers, Montgomery, P.L.A. 1994. Survey of Modern Integer Factorization Algorithms, CWI Quarterly, Volume 7(4): 337-365. Mullins, J., Moore, S.K. 2002. Making Unbreakable Code, IEEE Spectrum, May: 40-45. Schneier, B. 1996. Applied Cryptography: Protocols,Algorithms and Source Code in C, Second Edition, Wiley&Sons, New York Stallings, W., 1998. Cryptography and Network Security: Principles and Practice, Second Edition, Prentice Hall, Upper Saddle River, New Jersey Sushkevich, A.K. 1978. Number Theory, Harkov, Ukraina