Simetrik Şifreleme ve Asimetrik Şifreleme Algoritmaları

0
3669
views
Günümüzde verinin gizliliğini sağlamak önemli bir konudur. Bu yazıda verinin gizliliğini (ve bütünlüğünü) sağlamak amacı ile kulanılan en çok kullanılan simetrik ve asimetrik şifreleme algoritmaları incelenecektir.

Pentist: Sızma Testleri ve Bilgi Güvenliği Danışmanlık Hizmetleri

 

A) Temel Kavramlar

  • Kriptografi: Şifreleme algoritmaları kullanarak şifreleme oluşturma bilimidir.
  • Kriptanaliz: Şifre ya da anahtar kullanmadan deşifre etme yöntem ve prensipleri.
  • Kriptoloji: Hem kriptografiyi hem de kriptanalizi kapsar.

Kriptografide kullanılan bazı temel kavramlar;

  • Plaintext: Orijinal, düz metin
  • Ciphertext: Şifrelenmiş metin
  • Cipher: Düz metni, şifrelenmiş metne çeviren algoritma. Şifreleme algoritması
  • Şifreleme (Encrypt): Düz metni şifrelenmiş metne çevirme
  • Şifre Çözme (Decrypt): Şifreli metinden düz metni kurtarma

 

 

Simetrik ve asimetrik şifreleme algoritmaları ile ilgili detaylar ile ilgili kaynaklardaki Siberportal bağlantısı incelenebilir.

 

Kriptografinin temel amaçları aşağıdaki gibi sıralanabilir.

  • Gizlilik (Confidentiality)
  • Bütünlük (Integrity)
  • Kimlik Sınaması (Authenticity)
  • İnkar Edilememezlik (Non-repudiation)
  • Erişim Kontrolü (Access control)

 

Kirşof prensibi (Kerchoff principle), anahtar dışında, kriptografik sistem ile ilgili her şey (algıritma dahil) herkese açık olmasını savunur.

 

B) Simetrik Şifreleme Algoritmaları

Simetrik şifreleme, bilgileri şifrelemek ve deşifre etmek için yalnızca bir gizli anahtar içeren en basit şifreleme türüdür. Simetrik şifreleme, kriptografi teknikleri ve şifreleme algoritmaları içinde en eski ve en iyi bilinen tekniktir. Bir sayı, bir kelime veya rastgele harfler dizisi olabilen gizli bir anahtar kullanır.

 

Simetrik şifreleme ile ilgili detay bilgi için kaynaklardaki Siberportal bağlantısı incelenebilir.

Not: Bu yazıda sadece bit tabanlı simetrik şifreleme algoritmaları incelenecektir.  Karakter tabanlı simetrik şifreleme algoritmaları başka bir yazıda incelenecektir.

Not: SP Ağı (SPN – Substitution-Permutation Network); AES (Rijndael), 3-Way, Kuznyechik, PRESENT, SAFER, SHARK, ve Square gibi gibi blok şifreleme algoritmalarında kullanılan ve şifrelemenin gücünü arttıran bir matematiksel işlemdir.

 

B.1) Blowfish

Piyasada kullanılan en hızlı blok şifreleyicilerdendir. Karmaşık anahtar çizelgesi kullanarak kırılmasını zorlaştırır. Blowfish, 23’den 448 bite kadar anahtar uzunluklarına sahiptir. Çalışabilmesi için 4 kilobyte RAM’den daha fazla belleğe ihtiyaç duyarlar. Bu nedenle en küçük gömülü sistemlerde kullanılamazlar.

Not: Linux sistemlerde kullanılan Bcrypt ise, Blowfish simetrik şifreleme yöntemi temel olarak hazırlanmış parola özet fonksiyonudur.

 

B.2) DES (Data Encryption Standart)

Dünyada en çok kullanılan simetrik şifreleme algoritmalarından birisidir. Feistel şifreleme metodunu kullanır. Blok şifreleme kullanan DES, işlem sırasında 64 bitlik veriyi 56 bitlik anahtar kullanarak şifreler. DES algoritmasında 16 tur substitution ve transposition işlemleri gerçekleştirilir.

Anahtar uzunluğunun kısa olması nedeniyle kırılmıştır. Bunun üzerine Triple-DES, (encrypt-decrypt-encrypt) yani 3DES olarak geliştirilmiştir. 3DES, DES’in üst üste 3 kere kullanılması olup anahtar uzunluğu 168 bittir. Bundan dolayı standart DES’e göre 3 kat yavaştır ama günümüzde SSH gibi uygulamalarda kullanılır. AES’in çıkması üzerine DES popülerliğini kaybetmiştir. Çünkü AES’e göre 6 kat daha yavaştır.

Bunun yanında çok fazla kullanım alanı bulunmasa da 2DES algoritması da vardır. Ancak bu algoritma da Meet-In-The-Middle saldırısına karşı açıktır.

 

B.3) AES (Advanced Encrption Standart – Rijndael)

DES kırıldıktan sonra yeni bir arayışa girilmiş ve AES simetrik şifreleme algoritması oluşturulmuştur. DES’in zayıf yönleri kuvvetlendirilmiş halidir ve blok şifreleme algoritmasını kullanır. AES’te bloklar 128 bit kadardır.

AES, DES’e göre daha hızlıdır. Uzunluk olarak 128, 192 ve 256 bit anahtarları destekler. Günümüzde de en popüler algoritmalardan birisidir ve kaba kuvvet saldırılarına karşı dayanıklı olduğu düşünülmektedir.

 

B.4) RC4 (Rivest Encryption 4)

Şifrelenecek veriyi akan (stream) bir bit dizisi olarak algılar. RC4 belirlenen anahtar ile veriyi şifreleyen bir algoritmadır. Genellikle hız gerektiren uygulamalarda kullanılır. Şifreleme hızı yüksektir ve MB/sn seviyesindedir. Güvenliği rastgele bir anahtar kullanımına bağlıdır. Anahtar uzunluğu değişkendir. 128 bitlik bir RC4 şifrelemesi sağlam bir şifreleme olarak kabul edilir. Bankacılık ve Dökümantasyon(PDF) şifrelemelerinde yaygın olarak kullanılır.

 

B.5) RC5 (Rivest Encryption 5)

Modern şifreleme algoritmaları sınıfında yer almaktadır. 16–32 ve 64 bitli kelime uzunlukları ile çalışabilmektedir. Anahtar boyutu ve döngü sayısı değişken olarak alınabilir. Böylece, yüksek anahtar boyutu ve fazla döngü sayısı ile uzun çalışma zamanı fakat kırılması neredeyse imkansız şifreler; düşük anahtar boyutu ve az döngü sayısı ile kısa çalışma zamanı ve bununla beraber daha güçsüz şifreler arasında seçim yapılabilme olanağını sağlar. Bellek gereksiniminin de düşüklüğü ile cep telefonlarından süper bilgisayarlara kadar her yerde çalışabilir bir algoritmadır.

 

B.6) TWOFISH

AES kadar hızlıdır. DES gibi Feistel yapısını kullanır. DES’den farkı anahtar kullanılarak oluşturulan değişken S-boxlara(Blok şifrelerde genellikle anahtar ve şifre metni arasındaki ilişkiyi gizlemek için kullanılırlar.) sahip olmasıdır. Metinleri 32 bitlik parçalara ayırarak işleme sokar ve blok algoritması olarak çalışır. Şifreleme ve deşifreleme algoritmalarının birbirinden farklı olması uygulama maliyetini arttırmış, aynı zamanda yazılım uygulamalarını yavaşlatmıştır.

 

B.7) IRON

Feistel yapısını kullanır. 64 bitlik veri bloklarını 128 bit anahtarla şifreler ve 16 ile 32 döngü sayısında çalışır. Alt anahtarların sayısı döngü sayısına eşittir. Bu nedenden dolayı algoritma anahtar bağımlıdır. Bu algoritmanın avantajı, bitler yerine 16-tabanındaki sayılarda kullanılması, dezavantajı ise yazılım için tasarlanmış olmasıdır.

 

 

B.8) IDEA

Açılımı “International Data Encryption Algorithm” olan IDEA bir blok şifreleme algoritmasıdır. Aynı zamanda Ascom tech adlı firmanın tescilli algoritmasıdır. PGP‘nin temelini oluşturan algoritmalardan birisidir. Bilinen en güçlü algoritmalardandır. IDEA, şifrelenecek olan 64 bitlik metin ve 128 bitlik anahtarı kullanarak 64 bitlik şifrelenmiş metni oluşturur.

 

B.9) CAST-128

GPG ve PGP’nin bazı versiyonlarında varsayılan şifre olarak birçok üründe kullanılan simetrik bir anahtar bloğu şifresidir. Kanada Hükümeti’nin kullanımı tarafından kullanılmaktadır. 64 bit blok boyutu ve anahtar boyutu 40 ile 128 bit arasında olan (ancak yalnızca 8 bitlik artışlarla) 12 veya 16 yuvarlak Feistel bir ağdır. Anahtar boyutu 80 bit’ten uzun olduğunda 16 turun tamamı kullanılır .

 

C) Asimetrik Şifreleme Algoritmaları

Şifreleme ve şifre çözme işlemleri için farklı anahtarların kullanıldığı şifreleme sistemidir.

Açık anahtar altyapısı internet üzerinde güvenli haberleşmeyi sağlayan TLS (SSL’in gelişmiş hali) protokolü, güvenli e-posta haberleşmesinde kullanılan PGP protokolü ve dosya şifreleme ve çözmeye yarayan GPG gibi protokollerde kullanılmaktadır.

Asimetrik şifreleme ile ilgili detay bilgi için kaynaklardaki Siberportal bağlantısı incelenebilir.

 

C.1) Diffie-Hellman (DH) Anahtar Değişimi

Diffie ve Helman tarafından bulunmuş ilk asimetrik şifreleme algoritmasıdır. DH iki katılımcının öncesinde herhangi bir bilgi alışverişi yapmadan güvenli olmayan bir kanal vasıtasıyla (güvenli bir şekilde) ortak bir şifrede karar kılmalarına yarayan bir protokoldür. Algoritma anahtar değişimi ile asıl amacı, iki kullanıcının bir anahtarı güvenli bir şekilde birbirlerine iletmeleri ve daha sonrasında da bu anahtar yardımı ile şifreli mesajları birbirlerine gönderebilmelerini sağlamaktır. Diffie–Hellman algoritması oluşturularak simetrik şifreleme algoritmaları için büyük problemi olan gizli anahtarı koruma ve dağıtım büyük ölçüde aşılmıştır. Bununla birlikte Diffie-hellman algoritması sadece ortak gizli anahtarı belirlemekte kullanılmaktadır.

 

C.2) Rivest-Shamir-Adleman (RSA)

Üç bilim adamının baş harflerinden oluşan RSA, dijital imzalama içinde kullanılmaktadır. Güvenilirliği, çok büyük asal sayıların işlem yapma zorluğuna dayanan bir algoritmadır. Günümüzde bankacılık sistemleri ve ticari sistemlerde öncelikli tercih edilen şifreleme tekniğidir. Bu büyük sayılar nedeniyle oldukça güvenilirdir ama işlemler yavaştır. Bu nedenle fazla bant genişliği harcaması yüzünden kablosuz ağ sistemlerinde kullanılması bazı sorunlara yol açabilir.

 

C.3) El Gamal

Diffie-Hellman anahtar alışverişine dayanan bir açık anahtarlı şifreleme yöntemidir. Anahtar üretimi ve şifreleme/açma olarak iki aşamadan oluşur. Matematiksel zorluk olarak dairesel gruplar üzerindeki ayrık logaritmalara dayanan bir dijital imzadır.

 

C.4) Digital Signature Algorithm (DSA)

NIST tarafından sayısal imza standardı olarak tasarlanmıştır. DSA algoritması da, RSA gibi açık anahtarlı bir kriptografik algoritmadır. Dijital imza algoritması, ElGamal imza algoritmasının bir varyantıdır.

 

C.5) Merkle-Hellman

RSA asimetrik şifreleme sisteminden farkı şifreleme işleminin tek yönlü çalışmasıdır. Açık anahtar sadece şifreleme yaparken, gizli anahtar sadece şifre çözme işlemini gerçekleştirir. Bu nedenle de Dijital İmzalama için kullanılamaz. Düşünce olarak RSA’dan daha basit ve zekice olmasına rağmen kırılmıştır.

 

C.6) Elliptic Curve Cryptography (ECC)

Eliptik Eğri Kriptolojisi (Elliptic Curve Cryptography), sonlu cisimler üzerindeki eliptik eğrilerin cebirsel topolojisine dayanan bir açık anahtar şifrelemesidir. Eliptik eğri kriptografisinin en büyük özelliği depolama ve iletme gereksinimlerini azaltarak daha küçük anahtar boyutuna sahip olmasıdır. Bir eliptik eğri grubu, büyük modülerli ve buna bağlı olarak büyük anahtar boyutlu RSA tabanlı sistem ile aynı güvenlik seviyesi sunabilir. Örneğin; Eliptik eğri ile 256-bitlik anahtar boyutunda elde edeceğimiz güvenliği RSA ‘de 3072-bitlik anahtar ile sağlanabilir. Bu algoritma IHA’larda güvenlik açısından kullanılabilir. Ayrıca ECC smart kartlar,cep telefonları, PDA’lar (personal digital assistant), sayısal posta işaretleri gibi zorunlu ortamlara uygundur.

 

D) Bir Not

Bazı güvenlik sistemleri 1024-bit RSA genel anahtarlama planının uygulamasını yaymaya çalışır, çünkü kuruluşlar bunun yeterince iyi olduğunu düşünürler. Bununla birlikte bu tehlikeli bir yaklaşımdır. Çünkü genel anahtarlama sisteminin güvenliği kullanılan simetrik şifrelemeyle birebir eşleşmiş olmalıdır. Tabloda görüldüğü gibi, 1024-bit RSA simetrik şifrelemede kullanılan 128-bit güvenlik seviyesiyle uyuşmuyor. Bu gereksinimi karşılamak yani genel anahtarlama planını eşleştirmek için istenen 3072- bit RSA ya da 256-bit ECC kullanılmasıdır. Bu sayede işlemci gücü, saklama kapasitesi, bant genişliği, güç tüketimi gibi durumlarda RSA’ya göre avantaj sağlar.

 

Kaynaklar:

https://medium.com/@hicranozkan/simetrik-ve-asimetrik-anahtarl%C4%B1-%C5%9Fifreleme-algoritmalar%C4%B1-a60a4e0eb079
https://www.siberportal.org/blue-team/cryptography/basics-of-symmetric-encryption-and-asymmetric-encryption/

 

 

 

Pentist: Sızma Testleri ve Bilgi Güvenliği Danışmanlık Hizmetleri

CEVAP VER

Yorumunuzu giriniz
İsminizi giriniz

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.