|
||
| İletişimin hızla gelişmesi nedeniyle insanlar, ağ aracılığı ile bilgi paylaşma yolunu seçmektedirler. Bu yolla iletilen bilgiler zaman ilerledikçe, ağların dinlenmesi, gelen verinin değiştirilmesi, bir başkası gibi davranarak yanlış bilgi gönderilmeye çalışılması, başkasına ait bilgilerin öğrenilmeye çalışılması gibi tehditler karşısında, kişilerin rahatsız olmasına neden olmuştur. Bütün bu tehditleri önlemek amacıyla iletişimde anahtarlama yöntemleri kullanılmaya başlanmıştır. Anahtarlama yöntemleri, gönderilen ve alınan verinin değişik şifreleme algoritmaları kullanılarak gönderici tarafından şifrelenmesi ve alıcı tarafından şifrelenmiş verinin, şifresinin açılması temeli üzerine kurulmuştur. Bu şekilde ağdan geçen mesajın ağ üzerindeki tehditlerden korunması sağlanmaktadır. Bu yazıda, anahtarlama yöntemlerinden ve kullanıldığı zaman hangi tür tehditleri engelleyebildiklerinden bahsedeceğiz. 1. Simetrik Anahtarlama: Simetrik anahtarlamada genel olarak basit şifreleme algoritmaları kullanılmaktadır. Verinin şifrelenmesinde ve bu şifrenin açılmasında aynı anahtar kullanılmaktadır. Bu tip anahtarlamada, aynı anahtar hem gönderen kişide, hem de alan kişide bulunmalıdır. Bu şekilde şifrelenmiş veri ağdan geçerken bir başkası tarafından dinlenmek istendiğinde, kişi anahtara sahip değilse anlaşılamaz. 2. Anahtar İkilisi Kullanarak Anahtarlama (Public/Private Anahtar İkilisi): Bu yöntemde istendiğinde şifreleme ve deşifreleme için ayrı ayrı anahtarlar kullanılmaktadır. Bu anahtarlar ikili biçimde anılmakta olup, birbirlerinin şifreledikleri veriyi deşifreleyebilmektedirler. veri <---> private key <---> sifrelenmis veri <---> public key <---> veri Şifreleme deyince akla iki temel tehditin ortadan kaldırılması akla gelmektedir. Bunlardan bir tanesi ağ üzerinden gönderilen mesajın şifreli olarak gitmesi, bu şekilde mesajı sadece alıcı ve gönderenin görebilmesidir (şifreleme/deşifreleme). Diğeri ise alıcının mesajı gönderen kişinin gönderdiğinden emin olması, yani alıcının mesajın yolda değiştirilmediğinden ve gönderen kişinin sahte olmadığından emin olmasıdır (e-imza). Public/private anahtar ikilisi kullanılarak bu iki tehdite çözüm getirilebilmektedir. Herhangibirine ait olan public anahtar herkese açıktır, bunun yanında bu public anahtarın private anhtarı sadece ait olduğu kişi tarafından bilinmektedir. Böylece bu kişiden giden bir veri kişi tarafından şifrelenebilir ve istenilen kişi tarafından gönderen kişinin public anahtarı ile açılabilmektedir. Bu anahtar ikililerinin şifreleme veya e-imza olarak kullanımındaki aşamaları örneklerle açıklamak istersek; a) Şifreleme/Deşifreleme (Encryption/Decryption): Şifreleme, mesaj(veri) gönderen kişinin mesajın sadece alıcı tarafından okunmasını istediği durumlarda kullanılan bir yöntemdir. Bu yöntem ile mesajın iletişimi sırasında ağı dinleyen biri tarafından anlaşılamaz. Modelleyecek olursak, Feyza Mustafa'ya sadece Mustafa'nın görmesini istediği bir mesaj göndermek istiyor. Feyza ---> Mesaj ---> Mustafa Öncelikle Feyza, Mustafa'nın public anahtarını elde eder, daha sonra bu public anahtarı kullanarak göndereceği mesajı şifreler. Feyza ---> Mesaj --- PubMustafa ---> [Mesaj]PubMustafa Daha sonra şifrelenmiş olan mesajı Mustafa'ya gönderir. Mesajı alan Mustafa, mesajı kendi private anahtarını kullanarak şifreyi açar ve mesajı elde eder. [ Mesaj ]PubMustafa --- PrMustafa ---> Mesaj Mesaj, sadece Mustafa'nın private anahtarı ile deşifrelenebileceği için, Mustafa'dan başka birinin Mustafa'nın private anahtarını bilmeden mesajı alması olanaksızdır. b) Elektronik İmza ve Doğrulama: Elektronik imza, gelen bir mesajin(verinin) gerçekten gönderen kişiden geldiğinin doğrulunu ispatlama(authentication) mekanizmasıdır. Feyza-Mustafa örneğine dönecek olursak, Feyza, Mustafa ile bir lisans anlasmaşı yüzünden sürekli e-posta trafiği yaşamaktadır. Maddi açıdan önemli bir getirisi olan bu anlaşma için, Feyza bir başkasının kendi adına Mustafa'ya mesaj atmasını istememektedir. Bunun için Mustafa'ya gönderdiği mesajları e-imzası ile şifrelemektedir. Bu hikayede Feyza, Mustafa'ya mesaj göndermek için, mesajı hazırlar. Feyza ---> Mesaj Daha sonra Feyza, bu mesajı kendi private anahtarı ile şifreler. Feyza ---> Mesaj --- PrFeyza ---> [ Mesaj ]PrFeyza Feyza, şifrelediği mesajı ve kendi public anahtarını bir paket olarak hazırladıktan sonra Mustafa'ya gönderir. Feyza ---> [[Mesaj ]PrFeyza + PubFeyza ] ---> Mustafa Burada Feyza'nın kendi public anahtarını mesajla beraber göndermesinde bir sakınca yoktur. Çünkü buradaki amaç, bu mesajın Feyza tarafından gönderildiğinin ispatlanmasıdır ve public anahtarı normalde de herkesin ulaşabileceği bir bilgidir. Mesaji alan Mustafa, Feyza'nın public anahtarını kullanarak mesajı açar, ve mesajın Feyza tarafından gönderildiğinden emin olur. [ Mesaj ]PrFeyza --- PubFeyza ---> Mesaj c) Şifreli ve İmzalı Mesaj Gönderme: Hem gizlilik hem de gönderen kişinin doğruluğunu kanıtlama mekanizmaları birlikte kullanılmasıyla, mesajın hem doğru insandan geldiği, hem değiştirilmediği, hem de sadece alıcı tarafından okunduğundan emin olunabilir. Bunun için public/private anahtar ikilileri, simetrik anahtarlama ve hash algoritmaları birlikte kullanılır. Hikayemizde Feyza'nın, Mustafa'ya hem şifreli hem de imzalı bir mesaj göndermek istediğini düşünelim. Mesajın imzalanması ve mesajın şifrelenmesi aynı işlem içerisinde iki ayrı bölüm olarak incelenir. Feyza mesajı imzalamadan önce mesaj üstünde hash algoritması çalıştırarak mesajin bir kontrol toplamını(checksum) hesaplatır. Feyza ---> Mesaj --- hash alg. ---> Toplam = [ Mesaj ]Hash Burada, hash algoritması mesajın bütünlüğünün korunduğundan emin olmak için kullanılmaktadır. Bu iş için şifreleme algoritmaları yerine hash'in kullanılmasının nedeni hem daha küçük boyutta olması, hem de daha hızlı çalışmasından kaynaklanmaktadır. Kontrol toplamı oluşturulan mesajın imzalanması kısmında, oluşturulan toplam Feyza'nın private anahtarı ile şifrelenir. Toplam --- PrFeyza ---> [Toplam]PrFeyza Oluşturulan şifreli toplam, mesajin kendisi, Feyza'nın public anahtarı, kullanılan hash algoritmasının ismi bir paket oluşturur. [Mesaj + [Toplam]PrFeyza +PubFeyza + hash alg] Bu şekilde gönderilecek mesajın imzalanma işlemi tamamlanmış olur. Bu oluşturulan paketin içerisinden Mustafa, Feyza'nın public/private ikilisinden mesajı Feyza'nın gönderdiğini anlar. Mesajdaki public anahtarı kullanarak toplamı elde eder. Gönderilen çıplak mesajdan da ikinci bir toplam elde etmek için, ismi gönderilen hash algoritmasını çıplak mesaj üzerinde tekrar çalıştırır. Elde bulunan iki toplamı karşılaştırarak mesajın değişip değişmediği bilgisini öğrenir. Bu iki toplam birbiri ile aynı ise mesaj değiştirilmemiştir ve Feyza tarafından gönderilmiştir. İki toplam birbirinden farklı ise mesaj Feyza tarafından gönderilmemiştir veya mesaj yolda değiştirilmiştir, diye düşünür ve mesajı dikkate almaz. Mesajın tamamını şifreli bir biçimde ağdan geçirmek için, daha hızlı ve basit olan simetrik anahtar kullanılır. Çünkü uzun mesajlarda public/private anahtar algoritması simetriğe göre çok daha yavaş kalır. Hikayede Feyza hazırlanan mesaj paketini ağdan göndermeden önce bir kereye mahsus olmak üzere simetrik anahtar üretir ve bu simetrik anahtar ile hazırlanan mesajı şifreler. [Mesaj + [Toplam]PrFeyza +PubFeyza + hash alg ]symK Mustafa Feyza'dan gelen bu mesajı okumak için Feyza'nın ürettiği simetrik anahtara ihtiyaç duyacaktır. Bundan dolayı, üretilen simetrik anahtarda mesaj paketinin içinde olmalıdır. [Mesaj + [Toplam]PrFeyza +PubFeyza + hash alg ]symK+ symK Bu mesajı bu şekilde ağdan gönderdiğimiz durumda ağı dinleyen herhangi biri mesajı okuyabilecek pozisyondadır. Bunu engellemek ve bu mesajın sadece Mustafa tarafından görülmesini sağlamak için, mesajın şifrelenmesi olayında olduğu gibi Mustafa'nın public anahtarını kullanmak gerekmektedir. Burada Mustafa'nın public anahtarını kullanarak tüm hazırlanan paket şifrelenecek olursa, hem boyut büyüyecek hem de algoritma daha yavaş çalışacaktır. Bunun için son durumda elde edilen paketin açılması için gerekli olan simetrik anahtarın Mustafa'nın public anahtarı ile şifrelenmesi yeterli olacaktır. Son durumda ağdan geçerek Mustafa'ya ulaşacak olan paket aşağıdaki hale gelmiştir; Feyza--->[[Mesaj+[Toplam]PrFeyza+PubFeyza+hash alg]symK + [symK]PubMustafa ]--->Mustafa Bu mesajı alan herhangi biri Mustafa'nın private anahtarına sahip olmadığı için simetrik anahtara ulaşamayacak, yani gönderilen mesajı okuyamayacaktır. Bu mesajı alan Mustafa önce kendi private anahtarı ile simetrik anahtarı elde edecek, bu simetrik anahtarı kullanarak mesajı açacak, mesajla gelen Feyza'nın public anahtarını ve hash algoritmasını kullanarak, mesajın değiştirilip değiştirilmediğini ve bu mesajı Feyza'nın gönderip göndermediği bilgisini elde edecektir. Bu yöntemi kullanarak, mesajın ağda değiştirilmesi, ağı dinleyen herhangi biri tarafından okunması, başkası adına mesaj gönderme gibi tehditler unsurlarına karşı önlem alınmış olur. (SSL Güvenliğini bu yapıyla sağlar.Bu yapının kırılma ihtimali tahmini:1 trilyon dolarlık süper bilgisayarlar ile yaklaşık 33 milyon yıldır..O da sadece public key kırılabiliyor...Private değil ... ) |
||
| Dost Sitelerimiz | |
|
|
|
| Dost Sitelerimiz | |
| Arma Dizayn - Dijital Darbe - Z.K.U.D Blogcu - SosyeteForum - SHeZoFReN - SHeZoFReN - Ayna Grubum - Rusça Gülerek - Deliperi - SanalKaos - Mevzu Alemi - kudRet* - PayLaSiM-TuRK - Graphic-Turk.Com - SMF SeO Destek | |