Asimetrik algoritmalar, kriptografinin en temel taşlarından biridir ve internet üzerinde güvenli iletişim kurmamızı sağlayan en yaygın yapılardan biri olarak karşımıza çıkar.
Bu yaklaşım, güvenliği basit ama güçlü bir fikir üzerine kurar: veriyi şifreleyen anahtar ile şifreyi çözen anahtar birbirinden farklıdır. Public Key (açık anahtar) ve Private Key (özel anahtar) verinin gizliliğini, doğruluğunu ve bütünlüğünü sağlar.

Bu yapı günlük hayatta pek çok servisin temelinde yer alır. İnternet sitelerine güvenli erişimi mümkün kılan TLS, blokzincir tabanlı sistemlerde cüzdanlara erişim ve işlem yetkilendirme süreçleri, WhatsApp gibi uygulamalarda mesajların yalnızca doğru kişiler tarafından okunabilmesi ve daha birçok kritik mekanizma çalışırken asimetrik algoritmalardan faydalanır.
Asimetrik algoritmaların gücü, açık anahtar bilgisi bilinse dahi buna karşılık gelen özel anahtara ulaşmanın matematiksel olarak pratikte mümkün olmamasına dayanır. Bu güvenlik, çözümü matematiksel açıdan son derece zor olan ve yüksek hesaplama maliyeti gerektiren problemlerin kullanılmasından kaynaklanır. Bu problemlerin günümüz işlem gücüyle çözülememesi, asimetrik algoritmaları güçlü ve güvenilir kılar.
Asimetrik Algoritmalar Nasıl Çalışıyor?
Asimetrik algoritmalar, güvenli iletişimi sağlamak için farklı operasyonlar kullanabilir. Verinin üçüncü taraflar tarafından okunmadan ve değiştirilmeden iletilmesini sağlamak amacıyla, pratikte üç temel operasyon ön plana çıkar.
Bu üç temel operasyon; şifreleme (encryption), dijital imza (signatures) ve anahtar değişimi (key exchange) olarak karşımıza çıkar.
- Şifreleme, verinin yalnızca yetkili taraflarca okunabilmesini sağlar.
- Dijital imza, verinin kaynağını ve bütünlüğünü doğrular. İletim sürecinde üçüncü tarafların veriyi değiştirmediğini garantileriz.
- Anahtar değişimi güvenli bir kanal yokken tarafların ortak bir gizli anahtar üzerinde uzlaşabilmesini mümkün kılar.
Bu operasyonlar, tek bir algoritma yerine farklı asimetrik şifreleme algoritmaları tarafından yapılır.

Not 2: RSA, şifreleme, dijital imza ve anahtar değişimi işlemlerinin tamamını destekleyebilen tek asimetrik algoritmadır.
1. Şifreleme
Şifreleme operasyonlarının sürdürülmesinde RSA şifreleme algoritmasından yararlanılır.
RSA’da, iletilecek veri alıcının açık anahtarı kullanılarak şifrelenir. Bu şekilde oluşturulan şifreli metin, yalnızca alıcıya ait özel anahtar ile çözülebilir.
Bu yapı sayesinde açık anahtar üçüncü kişilerin eline geçse bile, şifrelenmiş veriye yetkisiz kişilerin erişmesi mümkün olmaz. RSA’nın şifreleme tarafındaki güvenliği, büyük asal sayılara dayanan matematiksel yapısından kaynaklanır ve açık anahtardan özel anahtara ulaşmayı pratikte imkansıza yakın hale getirir.

RSA, büyük asal sayıların çarpanlara ayrılmasının zorluğuna dayanan matematiksel bir problem üzerine kuruludur.
2. İmzalama
Dijital imza, asimetrik şifreleme algoritmalarının şifrelemeden farklı bir kullanım alanıdır ve temel amacı gizlilik değil, kimlik doğrulama ve veri bütünlüğü sağlamaktır. Bu yapıda, gönderilecek veri alıcının açık anahtarıyla değil, gönderenin özel anahtarı ile imzalanır.
Oluşturulan bu imza, verinin gerçekten ilgili kişi tarafından üretildiğini ve iletim sırasında üçüncü kişiler tarafından değiştirilmediğini kanıtlar. Alıcı ise, gönderene ait açık anahtar yardımıyla imzayı doğrulayarak verinin bütünlüğünü ve kaynağını kontrol eder.

Bu adımda mesajın tamamı doğrudan imzalanmaz, bunun yerine önce bir hash fonksiyonundan geçirilerek sabit uzunlukta bir metin özeti üretilir. Bunun nedeni, dijital imzanın büyük veriler üzerinde doğrudan uygulanmaya pek elverişli olmamasıdır.
Ardından, metin özeti Private Key ile imzalanarak mesaj ile birlikte alıcı tarafa gönderilir. Alıcı taraf aldığı mesajı Public Key ile doğrular.
Bu şekilde mesajın iletim süresince farklı kişiler tarafından değiştirilmediği ve bütünlüğünü koruduğu doğrulanır.
Not: Bu kısımda şifrelemeden farklı olarak mesajın kendisi değil, mesajdan üretilen özet Private Key ile imzalanır ve bu imza Public Key ile doğrulanır. Çünkü burada amaç gizlilik değil, verinin doğruluğunun ve bütünlüğünün karşı tarafa kanıtlanmasıdır.
3. Anahtar Değişimi
Anahtar değişimi, iki tarafın aralarında güvenli bir iletişim kanalı yokken ortak bir gizli anahtar oluşturabilmesini sağlamak için yapılır. İnternet gibi açık ağlarda bir anahtarın doğrudan gönderilmesi, üçüncü kişilerin bu anahtarı ele geçirmesine yol açabilir. Bu nedenle tarafların, anahtarı açıkça paylaşmadan aynı gizli değere ulaşabilecekleri bir yönteme ihtiyaç duyulur. Anahtar değişimi algoritmaları, bu ihtiyacı karşılayarak güvenli iletişimin başlatılmasını mümkün kılar.
Günümüzde anahtar değişimi operasyonları çoğunlukla Diffie–Hellman algoritması kullanılarak gerçekleştirilir.

Bu örnekte Ali ve Ayşe, ortak açık değer x üzerinden kendi gizli değerlerini kullanarak sırasıyla xᶜ ve xᵈ ifadelerini üretir ve bu değerleri açık kanal üzerinden paylaşır. Mete bu değerleri görebilmesine rağmen, c ve d gizli olduğu için Ali ve Ayşe’nin ulaştığı ortak anahtarı hesaplayamaz.
Bu sayede güvenli olmayan ortamlarda dahi üçüncü kişilerin verileri okuması engellenmiş olur.
Bu yazıda asimetrik algoritmaların temel çalışma mantığını ve güvenli iletişimdeki rolünü ele almaya çalıştım. Okuduğunuz için teşekkür ederim.
