T.C.
DEPARTMENT of
COMPUTER ENGINEERING
CSE 428
Network Security
E-Commerce
Konu:
Elektronik Güvenlik, Şifreleme
Teknikleri ve Algoritması açık olan Şifreleme Teknikleri(Public Key Encryption)
Elektronik Güvenlik, Şifreleme Teknikleri
ve Algoritması açık olan Şifreleme Teknikleri (Public Key Encryption)
Bilginin
güvenli iletimi yani iletim esnasında bilginin gizliliğinin ve bütünlüğünün
korunması önemli bir gereksinim haline gelmiştir. Özellikle, e-ticaret ve
e-devlet projeleri, internet üzerinden askeri, özel ve resmi yazışmalar, ulusal
güvenlik, internet bankacılığı v.b. gibi alanlarda bilginin güvenliğini
sağlamak amacıyla çeşitli algoritmalar ve bunları kullanan donanım ve
yazılımlar geliştirilmiştir.
Günlük hayatta karşılaştığımız
uygulamalardan da anlaşılacağı gibi bilgi güvenliği denilince akla ilk gelen,
şifreleme ve şifreleme algoritmalarıdır. Bu nedenle çalışmamızda, literatürde
yaygın olarak kullanılan şifreleme algoritmaları sınıflandırılmıştır. Sınıflandırma
işleminde; algoritmaların anahtar kullanıp kullanmaması, şifreleme - çözme
işlemlerinde kullanılan anahtar sayısı ve algoritmaların gizlilik yada
anonimliği göz önüne alınarak bunların genel yapısı incelenmiştir.
Internette gezerken birilerinin sizi izlediğini
biliyor muydunuz? Bunu nasıl yapıyorlar? Web sitelerinin sizin web istemcinize
gönderdiği cookie'ler aracılığı ile sitenin en son hangi kısmını ve ne zaman
ziyaret ettiğinizi takip etmesi ve kayıt altına alması mümkündür. Web'de bir
çok belgeye yada programa erişmeden web sunucu tarafından önce bir form
doldurarak kişisel bilgilerinizi vermeniz isteniyor.Bu formu doldurduğunuz
zaman artık bütün bilgilerinize erişmiş oluyorlar. Elektronik iletişimin
artmasıyla beraber başta finans kurumları olmak üzere birçok kuruluş ticari
işlemlerini elektronik iletişimin en yaygın aracı olan İnternet'e taşımaya
başlamıştır. Örneğin, bankacılık sektörü internet üzerinden para yatırma işlemi
hariç her türlü faaliyeti gerçekleştirebilen sanal şubeler kullanmaktadırlar.
Böylece, bilgilerin herkese açık bir ağ üzerinde dolaşmasının doğurduğu haklı
tedirginlik gündeme gelmiş, bu konu yoğun bir şekilde tartışılmaya
başlanmıştır.
“Şirketler, finans kurumları, devlet
kurumları, kişiler ve internet’te bilgi transferi yapan özel yada tüzel
kişilerin internet’te bilgi güvenliği ve şifreleme teknikleri konusunda ciddi
bir şekilde bilgi sahibi olmaya ihtiyaçları olduğunu anlamaktayız. Elektronik
ticaret ve finansal işlemlerin yürütüldüğü siteler internet'ten bilgi
alışverişini şifreleyerek gerçekleştirdikleri zaman genel olarak güvenlidirler.
Şifrelenmiş bilgi internet üzerinde iletilirken ele geçirilse bile, şifrenin
kırılması çok büyük bir yatırım ve oldukça uzun bir zaman dilimi
gerektirdiğinden güvenli olduğu kabul edilebilir.
Elektronik
Güvenlik Nedir?
E-güvenlik;
tüm sistemi ağ yapısı, kullanıcıları ve yazılımları ile bir arada bir bütün
olarak düşünmeyi gerektirir. Güvenli bir uygulamanın minimum gereksinimleri
şunlardır:
- Gizlilik: Mesajın sadece gönderici ve alıcı kişiler tarafından
görülebilmemeli.
- Bütünlük: Mesajın gönderici dışında hiç kimse tarafından değiştirilememeli.
- Doğrulama: Mesajı gönderen kişinin kimliğinin doğrulanması, böylece yetkili
kişiler dışında hiç kimsenin mesaja erişimine izin verilmemeli.
- İnkar Edememe: Mesajı gönderen kişinin mesajı gönderdiğini
inkar edememeli.
Bu gereksinimleri karşılamak
için kriptolojiden yararlanılır.
Kriptoloji
Özellikle internet teknolojisinin
yaygınlaşmasıyla adını sıkça duymaya başladığımız kriptoloji gitgide önem kazanmaktadır.
Bu bilim dalı Kriptografi, Kriptoloji ve Kriptoanaliz olmak üzere üç ana
kısımdan meydana gelir. Kriptoloji şifreleme algoritmalarının matematiksel
temelleriyle ilgilenen bir matematik dalıdır. Kriptografi ise bu algoritmaları
kullanarak yapılan gizli mesajlaşma, onaylama, dijital imzalar, elektronik para
ve diğer uygulamaların tüm yönleriyle
ilgilidir. Kriptografik algoritmaların açıklarını bulup ortaya çıkartma ve bu
açıkların giderilmesiyle ilgilenen dala ise kriptoanaliz denilmektedir. Şifreleme
(Encryption), veriyi alıcından başkasının okuyamayacağı şekilde kodlamaya
verilen addır. Şifre Çözme(Decryption) ise alıcının kodlanmış veriyi çözüp eski
haline getirmesi işlemidir.
Farz edelim ki bir kişi diğer bir kimseye
bir mesaj göndermek istiyor ve başka hiçbir kimsenin mesajı okumadığından emin
olmak istiyor. Ancak, bir başka kimsenin mektubu açması veya elektronik
iletişimi duyması olasılığı vardır. Kriptografik terminolojide mesaj plaintext
(düz-metin) veya cleartext (açık-metin) olarak adlandırılır. Mesajın içeriğini
diğer kişilerden saklamak için kodlamaya encryption (şifreleme) adı verilir.
Şifrelenmiş mesaja ciphertext (şifreli-mesaj) denir. Ciphertext’ten düz-metni
elde etme işlemine decryption (şifre çözme) adı verilir. Veriyi şifrelerken ve
çözerken kullanılan matematiksel metoda ise şifreleme algoritması
denilmektedir. Şifreleme ve çözme genelde bir anahtar(Key) kullanılarak yapılır
ve şifreleme algoritması çözme işlemi ancak doğru anahtarın bilinmesiyle
gerçekleştirilebilir.
1. Şifreleme Tekniklerinin Sınıflandırılması
Şifreleme teknikleri algoritmalarına,
anahtar sayısına ve şifrelenecek mesajın tipine göre sınıflandırılmıştır.
Sınıflandırmada bütün şifreleme algoritmalarını tek tek incelemek yerine her
bir algoritma türü için en yaygın olarak kullanılan ve en temel yapıya sahip
birkaç algoritma örnek olarak verilmiştir.
1.1 Şifreleme
Tekniklerinin Algoritmalarına ve Anahtar Sayısına Göre Sınıflandırılması
Tarihi sürece bakıldığında şifreleme
teknikleri önce açık yada gizli algoritma kullanmalarına göre ikiye ayrılırlar.
1.1.1. Algoritması
Gizli Olan Şifreleme Teknikleri
Literatürde bulunan en ilkel şifreleme
algoritmaları sadece alıcı ile gönderen arasında bilinen ve birbirinin tersi
olan gizli bir algoritmaya dayanmaktadır. Bu tip algoritma ilk defa Sezar
tarafından generallerine mesaj göndermek için kullanılmıştır. Her bir karakteri
belirli bir miktar kaydırma prensibine dayanmaktadır. Bu şifreleme türünün
diğer örnekleri ise Yer değiştirme ve Alfabe değiştirme şifreleridir.
1.1.2. Algoritması
Açık Olan Şifreleme Teknikleri (Public Key Encryption)
Şifreleme algoritmalarının geniş bir
kullanım alanına sahip olabilmesi için standart hale getirilmesi gerekir. Gizli
algoritmaya dayalı şifreleme sistemleri, algoritmanın gizliliğinin sağlanması
zorunluluğu nedeniyle sadece sınırlı bir kullanım alanına sahiptir ve standart
hale getirilmesi mümkün değildir. Özellikle, bankalar ve elektronik ticaret
siteleri gibi yaygın iletişim ağlarına sahip kuruluşlar için gizli algoritmaya
dayalı şifreleme sistemleri uygun değildir. Ayrıca, şifreleme sisteminin
güncellenmesi gerektiğinde gizli algoritmaya dayalı şifreleme sistemleri esnek
bir yapıya sahip olmadıklarından eski sistemin tamamen kaldırılıp yerine
yenisinin kurulması gerekir. İşte bu standart hale getirme ve güncelleme
gereksinimini karşılamak için algoritması herkes tarafından bilinen şifreleme
sistemleri tasarlanmıştır. Bu tip şifreleme sistemlerine, açık metin sadece
gönderen ile alıcı tarafından bilinen bir anahtarla şifrelendiği için bir
anahtara dayalı şifreleme sistemi denilir. Modern şifreleme tekniklerinin büyük
bir çoğunluğu açık algoritmaya sahip teknikler kullanırlar. Anahtara dayalı
şifreleme sistemleri anahtar sayısına göre simetrik ve asimetrik şifreleme
teknikleri olarak ikiye ayrılır:
1.1.2.1.Simetrik
Şifreleme Teknikleri
Hem şifreleme hem de
çözme işlemi için tek bir anahtar kullanılır. Aynı zamanda bu teknik; şifreleme
işleminde kullanılan anahtarı, gönderen ve alıcıdan başka kimsenin bilmemesi
gerektiği için, gizli anahtar, anonim anahtar yada özel anahtar şifreleme
olarak da adlandırılır. Ayrıca şifreleme ve çözme işlemlerinde tek bir
anahtarla birbirinin simetriği olan algoritmalar kullanarak
gerçekleştirildiğinden simetrik şifreleme teknikleri olarak da bilinirler. Bu
şifreleme tekniğini kullanan algoritmalara örnek olarak XOR Şifreleme, DES,
3DES, IDEA, DESX, SKIPJACK, RC2, RC4, RC5 algoritmaları verilebilir. Bunların
en meşhuru Veri Şifreleme algoritması (Data Encryption Algorithm) olarak da
bilinen DES’tir. DES 64 bit blok boyutu olan bir blok şifrelemedir. 64 bitlik
düzyazı bloklarını 56 bitlik anahtarlar kullanarak 64 bitlik şifreli yazı
bloklarına çevirir.Simetrik şifreleme tekniğinde gizli anahtarın taraflar
arasında iletilmesi problemi bulunmaktadır. Bu gizli anahtar taraflar arasında
iletilirken istenmeyen kişiler tarafından ele geçirilebilir. Simetrik şifreler
ise hız avantajına sahiptir; genellikle asimetrik şifrelerden 100, 1000 kat
arası daha hızlı çalışırlar. Bu avantaj simetrik şifreleri yoğun ve hız
gerektiren mesajlaşmalarda tek seçenek haline getirmiştir. Ancak başka bir yere
güvenli bir mesaj göndermek istendiğinde, anahtarı karşı tarafa ulaştırmak
gerekmektedir. En bilinen simetrik şifreleme algoritmaları DES, Triple DES, RC2
ve RC4 tür. Bir simetrik şifrenin kuvveti anahtar uzunluğu ile doğru
orantılıdır. 40 bit genelde zayıf kabul edilirken 128 bit ve üzeri bir anahtar
uzunluğu kuvvetli kabul edilir.
1.1.2.2. Asimetrik Şifreleme
Teknikleri
Simetrik
şifreleme tekniğinde bulunan anahtar dağıtım problemini çözmek için şifreleme
ve çözme işlemlerinin her birisi için ayrı ayrı anahtar kullanma prensibine
dayanan bir şifreleme sistemi geliştirilmiştir. Bu sistemde şifreleme işlemi
herkes tarafından bilinen anonim anahtarla yapılır. Bundan dolayı bu sistem
anonim anahtar şifreleme sistemi olarak adlandırılır. Şifreleme ve çözme işlemi
birbirinin simetriği olmayan (yani aynısı olan) algoritmalarla gerçekleştirildiğinden
dolayı da asimetrik şifreleme sistemi olarak bilinir. Asimetrik şifreler aynı
zamanda kimlik doğrulamada da kullanılabilir. Eğer bir metni kendi 'özel'
anahtarınızla şifrelerseniz bu şifreli metin ancak sizin 'açık' anahtarınızla
açılabilir. Böylece sizin 'açık' anahtarınızla metni çözebilen bir kişi bunu
sizin şifrelediğinizden emin olur. Bu fikir 'Sayısal İmza' kavramının temelini
oluşturur. En bilinen asimetrik şifreleme algoritmaları RSA, Diffie-Hellman, DSA
ve 'Elliptic Curve Cryptography'dir.Bunlardan en meşhuru ve en yaygın olarak
kullanılanı RSA dır. RSA algoritmasının büyük sayıların modüler aritmetiğine
dayalı çok basit bir prensibi vardır. Gücünü ise büyük sayıları asal
çarpanlarına ayırma probleminden alır. Asimetrik şifreleme tekniğinde şifreleme
ve çözme işlemi simetrik şifreleme tekniğine göre daha fazla zaman almaktadır.
Bu zaman şifrelenecek mesajın ve anahtarların boyutlarına göre üssel olarak
artar ve kırılması daha zordur.
RSA
-Rivest, Shamir ve Adleman- Şifre Sistemi
Bu
algoritma, 1978 yılında MIT Üniversitesi'nde Rivest, Shamir ve Adleman adlı üç
araştırmacı tarafından bulunmuştur. Bu algoritmanın güvenliği, çok büyük
sayıları çarpımlarına ayırmanın zorluğuna dayanmaktadır.
Geliştirilen ilk asimetrik anahtarlı şifreleme
algoritmalarından biridir. Bu teknikte şifreleme ve şifre çözme için farklı
kripto anahtarları kullanılır. Bu iki anahtar öyle özelliklere sahiptir ki
birisi ile şifrelenen mesaj ancak ve ancak eşi olan diğer anahtar ile açılabilir.
Bu anahtarlar çok büyük asal sayılar kullanılarak elde edilirler. Şifreli
iletişim yapmak isteyen herkesin iki tane anahtarı vardır. Bunlardan biri
sadece şifre sahibi tarafından bilinir (özel anahtar) ve başkalarının eline
geçmesi engellenmelidir. Bu anahtarın eşi olan diğer anahtar ise (açık anahtar)
serbestçe iletişim kurulacak kişilere verilebilir. Anahtarlar ne kadar uzun
seçilirse şifrenin kırılması o kadar zor olur.
Bu sistemin kullanımı
şöyledir:
1.
p
ve q olarak adlandırılan çok büyük iki asal sayı bulunur.
2.
n
= p*q ve z = (p-1)*(q-1) hesaplanır.
3. z'ye ilişkili
(relatively) asal bir sayı bulunur ve bu sayı d olarak adlandırılır. 4. e*d = 1 mod z eşitliğini sağlayan
e sayısı bulunur.
Bu
parametreler hesaplandıktan sonra şifreleme işlemine başlanır. Matematikçiler
çok büyük sayıların çarpanlarına ayrılabilmesinin gerçekten zor bir problem
olduğu konusunda hemfikirdirler. Ancak bilgisayar hızlarındaki artış, p ve q
sayılarını seçerken bizleri çok dikkatli olmaya zorlar. Örneğin 512 ikillik bir
mod (n) kullanmak, artık çok güvenli sayılmamakta, 1024 ikil şu anki standart
olarak kabul edilmektedir.RSA şifreleme sistemi, sayısal imza olarak da
kullanılabilir. Bunun için e ve d'nin kullanım sırasını değiştirmek ve alıcının
anahtar çifti yerine, göndericinin anahtar çiftini kullanmak yeterlidir.
Diffie-Hellman
Anahtar
değiş-tokuşu için yaygın olarak kullanılan bir protokoldür. Pek çok
kriptografik protokolde iki taraf aralarında bir iletişim başlatmak isterler.
Ancak, varsayalım ki başlangıçta herhangi bir ortak gizliliğe sahip olmasınlar,
ve böylece gizli anahtar kriptosistemlerini kullanabilirler. Bu durum için,
Diffie-Hellman protokolü tarafından sağlanan anahtar değiş-tokuşun, güvenli
olmayan kanallar üzerinden ortak bir gizli anahtar iletiminin sağlanmasına bir
çare bulmuştur. Diffie-Hellman problemi olarak adlandırılan bu yöntem, kesikli
logaritmalarla ilgili bir problem üzerine kurulmuştur. Bu problemin çok zor
olduğu , ve bazı durumlarda kesikli logaritma problemi kadar zor olduğu
düşünülmektedir.
Diffie-Hellman
protokolünün, uygun bir matematiksel grup kullanıldığında genelde güvenli
olduğu düşünülmektedir. Özel olarak, üslü ifadelerde kullanılan üretici eleman
geniş bir peryoda (sıraya) sahip olmalıdır. Kesikli logaritma algoritmaları Diffie-Hellman'a
saldırmak için kullanılabilir, ve -parametrelerin doğru olarak seçildiğini
kabul edersek- şu anda yapılabileceklerin en iyisi pasif saldırılardır. Eğer
alışıldık bir aritmetik modülo asıl sayı kullanılarak Diffie-Hellman
uygulanılırsa, yeterince geniş bir asal seçmek ve üretici elemanın seçiminde
özen göstermek yeterli olacaktır. Güç algılanan problemler, üreteçin kötü seçimlerinden
kaynaklanıyor olabilir.. Genelde Diffie-Hellman donanım üzerinde uygulanmaz, ve
böylece donanım saldırıları önemli bir tehdir oluşturmazlar. Gelecekte, mobil
iletişim yaygınlaştığında, bu durum değişebilir.
Eliptik Eğri Kriptosistemleri (Elliptic Curve Cryptography)
Kriptografideki
eliptik eğriler temel olarak, p karakteristiğinin (p>3 olmalıdır)
sonlu alanında düşünüldüğünde, y2 = x3 + ax + b
denklemini sağlayan noktaların bir kümesidir. p = 2 ve p = 3
karakteristikleri için biraz farklı bir denklem gerekmektedir.
Eliptik
eğriler üzerindeki noktalar bir araya toplanabilir ve bunlar grup adı
verilen bir yapı oluştururlar (aslında bir Abel Grubu). Bu , şunu
söylemenin farklı bir yoludur; aynı tamsayılarla yaptığımız gibi bunlar ile de
sadece toplama ve çıkarma kullanarak aritmetik yapabiliriz.
Bunların
bazı teorik faydaları vardır ve ayrıca çok pratiktirler. Hiperbolik eğriler,
bir sonlu alan veya diğer bazı pek çok gruptaki kesikli logaritmalarda
olduğunun aksine, eliptik eğrilerin kesikli logaritma problemlerini hesaplamak
için bilinen bir subexponential algoritma yoktur. Eliptik eğriler için hızlı
kesikli logaritma hesaplamasının olmamasının bir faydası anahtar genişliğinin,
üretilen dijital imzaların ve şifrelenen mesajların küçük olmasıdır. Gerçekte,
anahtar genişliği için güvenlik düzeyinin hesaplanmasının kolay bir yolu, bir
anahtar genişliğini, bir gizli anahtar kriptosistemine bitler halinde almak ve
sonra bunu 2 ile çarpmaktır.
Eliptik
eğriler donanım ve yazılım ile çok etkin bir biçimde uygulanabilirler, ve hız
bazında RSA ve DSS gbi kriptosistemler ile yarışabilirler. Eliptik eğri
kriptosistemlerini standartlaştırmak için pek çok girişimde bulunulmaktadır
(örneğin, ANSI tarafından ECDSA). Şu anda eliptik eğriler yayın olarak
bilinmektedirler, ama pratikte pek kullanılmamaktadırlar. Özel örneklere karşı
saldırılarda gelişmeler kaydedilmiş olmasına rağmen, eliptik eğri
kriptosistemlerinin güvenliği yıllardan beri oldukça sağlamdır. Bununla
birlikte, bunlar, yıllar öncesinden araştırmacılar tarafından tahmin edilmişler
ve henüz büyük bir şaşkınlık ortaya çıkmamıştır.
Lenstra
ve Verheul tarafından geliştirilen XTR algoritması eliptik eğrilere karşı güçlü
bir rakip haline gelebilir. Ancak, eliptik eğriler performans açısından bir
miktar iyi görünmekte, ve anahtar genişliğinde kesinlikle daha iyidirler.
DSA (Digital Signature Algorithm)
Asimetrik şifreleme algoritmasıdır. Bu algoritma açık
anahtar altyapısı kullanılarak elektronik imzalamanın nasıl yapılacağını
tanımlamaktadır.
SONUÇLAR VE DEĞERLENDİRME
Şifreleme/deşifreleme (encryption-decryption) bir
bilgisayar ağında veya kişisel bilgisayarlarda haberleşme ya da dosya
güvenliğini sağlamak için kullanılır. Özellikle,
e-ticaret ve e-devlet projeleri, internet üzerinden askeri, özel ve resmi
yazışmalar, ulusal güvenlik, internet bankacılığı v.b. gibi alanlarda bilginin
güvenliğini sağlamak amacıyla çeşitli algoritmalar ve bunları kullanan donanım
ve yazılımlar geliştirilmiştir.
KAYNAKLAR
William Stalings , Cryptography and Network
Security: Principles and Practice , Second Editon,
Feistel H.,Cryptography
and Computer Privacy,Scientific
American,May 1973.
Konheim,A. ,Cryptography:
A Primer.New York :Wiley,1981.
Stallings W., Network And Internetwork Security,New Jersey:IEEE PRESS,1995
Hiç yorum yok:
Yorum Gönder
isterseniz anonim seçeneginden kayıtsız gönderebilirsiniz iyi günler