RSA Anahtar Çifti Oluşturma Aracı
Features
- Esnek Anahtar Uzunluğu: 256 ile 4096 bit arasında yapılandırılabilir anahtar uzunluklarıyla test ve üretim senaryolarına uygun RSA anahtar çiftleri üretir; uyumluluk için 2048+ bit önerilir.
- PEM ve DER Çıktısı: Hem metin tabanlı PEM hem de ikili DER formatlarını destekleyerek OpenSSL, Java, .NET ve tarayıcı tabanlı projelerle sorunsuz entegrasyon sağlar.
- Kriptografik Doğrulama: Modül uzunluğu, public/private eşleşmesi ve anahtar bütünlüğü otomatik denetlenir; hatalı anahtarlar üretim aşamasına geçmeden önlenir.
- Güvenli Rastgelelik: Kriptografik olarak güvenli rastgele sayı üreteci kullanarak asal üretimi ve genişletilmiş Öklid algoritmasıyla tutarlı anahtar çiftleri elde eder.
Use Cases
- SSL/TLS Sertifika Oluşturma: Web iletişimini korumak için SSL/TLS sertifikaları için RSA anahtar çiftleri oluşturun. Standart sertifikalar için 2048 bit anahtar, genişletilmiş doğrulama (EV) sertifikaları için 3072-4096 bit kullanın. HTTPS şifreleme, kullanıcı verilerinin korunması ve tarayıcılar ve kullanıcılarla güven oluşturulması için kritiktir.
- SSH Anahtar Kimlik Doğrulama: Şifresiz SSH sunucu kimlik doğrulaması için RSA anahtar çiftleri oluşturun. Sunuculardaki authorized_keys'e eklenecek açık anahtarlar oluşturarak şifresiz güvenli uzaktan erişim sağlayın. Güvenli sunucu yönetimi için geliştiriciler, sistem yöneticileri ve DevOps ekipleri tarafından yaygın olarak kullanılır.
- Kod İmzalama ve Yazılım Dağıtımı: Yazılım gerçekliğini ve bütünlüğünü doğrulamak için kod imzalama için RSA anahtar çiftleri oluşturun. Çalıştırılabilir dosyaları, yükleyicileri ve paketleri imzalayarak tahrifat ve kötü amaçlı yazılım dağıtımını önleyin. Windows Authenticode, macOS Gatekeeper ve Linux paket imzalama için gereklidir.
- Dijital İmzalar ve Belge Doğrulama: Yasal belgeler, sözleşmeler ve işlemler için dijital imzalar için RSA anahtar çiftleri oluşturun. Belgeleri gizli anahtarlarla imzalayın, açık anahtarlarla imzaları doğrulayın, inkâr edilemezlik ve belge bütünlüğünü sağlayın. Elektronik imza platformlarında, blockchain işlemlerinde ve yasal uyumlulukta kullanılır.
- API Kimlik Doğrulama ve JWT Token'ları: API kimlik doğrulama ve JWT token imzalama için RSA anahtar çiftleri oluşturun. Token'ları gizli anahtarlarla imzalayın, açık anahtarlarla doğrulayın, güvenli durumsuz kimlik doğrulama sağlayın. Mikro hizmetler, OAuth 2.0 ve modern API güvenlik mimarileri için kritiktir.
- E-posta Şifreleme (PGP/GPG): PGP/GPG e-posta şifreleme ve güvenli mesajlaşma için RSA anahtar çiftleri oluşturun. E-postaları alıcının açık anahtarıyla şifreleyin, gizli anahtarla şifresini çözün, gizli iletişim sağlayın. Gazeteciler, işletmeler ve gizlilik bilincine sahip bireyler tarafından güvenli e-posta iletişimi için kullanılır.
- VPN ve Ağ Güvenliği: VPN bağlantıları, güvenli tüneller ve ağ şifreleme için RSA anahtar çiftleri oluşturun. Güvenli sanal özel ağlar kurun, aktarımdaki verileri koruyun ve güvenli uzaktan erişim sağlayın. Kurumsal ağlarda, bulut hizmetlerinde ve güvenli iletişim protokollerinde kullanılır.
- Blockchain ve Kripto Para Cüzdanları: Kripto para cüzdanları ve blockchain uygulamaları için RSA anahtar çiftleri oluşturun. Cüzdan gizli anahtarlarını koruyun, blockchain işlemlerini imzalayın ve işlem gerçekliğini doğrulayın. Kripto para borsalarında, cüzdan uygulamalarında ve blockchain tabanlı kimlik sistemlerinde kullanılır.
Usage Guide
- Bit Uzunluğunu Seçin: Güvenlik gereksiniminize göre 2048, 3072 veya 4096 bit anahtar uzunluğunu belirleyin.
- Anahtarı Oluşturun: 'Anahtar çiftini yenile' düğmesine basarak yeni bir açık/gizli anahtar çifti üretin; işlem tarayıcınızda gerçekleştirilir.
- Çıktıyı Doğrulayın: Üretilen PEM/DER çıktısını inceleyin, gerekiyorsa OpenSSL veya benzeri araçlarla modül uzunluğunu ve formata uygunluğunu doğrulayın.
- Anahtarları Saklayın: Açık anahtarı paylaşılabilir biçimde kaydedin; özel anahtarı parola ile şifrelenmiş ve erişimi denetlenen bir depoda saklayın.
Technical Details
RSA Anahtar Oluşturma Matematiği
Algoritma iki büyük asal sayı (p, q) seçer, modül n=p×q ve Euler totient φ(n)=(p-1)(q-1) değerlerini hesaplar. Sık kullanılan açık üs e=65537 seçildikten sonra genişletilmiş Öklid algoritmasıyla d ≡ e⁻¹ (mod φ(n)) elde edilir ve anahtar çifti (n,e)/(n,d) oluşur.
Asallık Testi ve Rastgelelik
Güvenilir anahtarlar için Miller–Rabin gibi olasılıksal asallık testleri ve kriptografik rastgele sayı üreteçleri kullanılır; zayıf veya tekrar eden asal seçimleri engellenir.
Format Standartları
PKCS#1 RSA anahtar yapısını, PKCS#8 özel anahtar kapsülleme formatını ve SubjectPublicKeyInfo şemasını uygular; PEM başlıkları ve Base64 kodlama RFC 7468’e göre oluşturulur.
Frequently Asked Questions
- Oluşturulan anahtar çiftleri hangi senaryolarda kullanılabilir?
- RSA anahtar çiftleri yaygın olarak şu alanlarda kullanılır: 1) HTTPS/SSL sertifikaları: Web sitesi iletişimlerini güvenceye almak; 2) SSH anahtar kimlik doğrulaması: Şifresiz sunucu girişi; 3) Kod imzalama: Yazılımın kaynağını ve bütünlüğünü doğrulama; 4) E-posta şifreleme: PGP/GPG ile şifreli iletişim; 5) API kimlik doğrulaması: JWT jeton imzalama; 6) Dijital imzalar: Belgeler ve işlemler için yasal kanıt; 7) VPN bağlantıları: Güvenli sanal özel ağlar kurma.
- Anahtar oluşturma ne kadar sürer?
- Oluşturma süresi anahtar uzunluğuna ve cihaz performansına bağlıdır. Tipik olarak: 2048 bit ~1-3 saniye, 3072 bit ~3-8 saniye, 4096 bit ~5-15 saniye, 8192 bit 30+ saniye sürebilir. Rastgele entropi toplanması gerektiğinden ilk oluşturma daha yavaş olabilir. Uzun süre yanıt alınamazsa sayfayı yenileyip tekrar deneyin.
- PEM ve DER formatları arasındaki fark nedir?
- PEM (Privacy Enhanced Mail), Base64 kodlaması kullanan metin formatıdır ve -----BEGIN RSA PRIVATE KEY----- ile başlar; metin düzenleyicilerde kolayca kopyalanıp görüntülenebilir. DER (Distinguished Encoding Rules), daha küçük dosya boyutuna sahip ancak doğrudan okunamayan ikili formattır, Java ve belirli sertifika sistemlerinde yaygın olarak kullanılır. Çoğu durumda PEM formatı önerilir.
- Oluşturulan anahtar çiftinin geçerli olduğunu nasıl doğrularım?
- Araç oluşturulan anahtar çiftlerini otomatik olarak doğrular. Ayrıca manuel olarak da doğrulayabilirsiniz: 1) OpenSSL ile formatı doğrulayın: `openssl rsa -in private.pem -text -noout`; 2) Şifreleme/şifre çözmeyi test edin: Metni açık anahtarla şifreleyin, özel anahtarla çözüp orijinal metnin geri geldiğini doğrulayın; 3) Anahtar uzunluğunu kontrol edin: Anahtar modülünün bit sayısının beklenenle eşleştiğini doğrulayın.
- Açık anahtar özel anahtardan türetilebilir mi?
- Evet. RSA özel anahtarında, modül n ve açık üs e dahil olmak üzere açık anahtarı oluşturmak için gereken tüm bilgiler bulunur. OpenSSL kullanarak özel anahtardan açık anahtar çıkarabilirsiniz: `openssl rsa -in private.pem -pubout -out public.pem`. Ancak tersi mümkün değildir - açık anahtardan özel anahtar türetilemez; bu durum RSA güvenliğinin temelidir.
- Özel anahtarları nasıl güvenle saklamalıyım?
- En iyi uygulamalar: 1) Özel anahtarı parola ile şifreleyin (örn. `openssl rsa -aes256`); 2) Güvenli bir konumda saklayın: parola yöneticileri (1Password, LastPass), donanım güvenlik modülleri (HSM), şifreli disk bölümleri; 3) Sıkı dosya izinleri ayarlayın (Linux: chmod 600); 4) Asla Git depolarına işlemeyin; 5) Düzenli olarak çevrimdışı yedek alın; 6) Erişimi korumak için çok faktörlü kimlik doğrulama kullanın.
Related Documentation
- RFC 8017 - PKCS#1 v2.2 - RSA anahtar formatları, OAEP/PSS dolguları ve uyumluluk ayrıntıları
- NIST SP 800-56B Rev.3 - Asimetrik anahtar çifti oluşturma, doğrulama ve saklama için NIST rehberi
- Mozilla Server Side TLS - Web sunucularında RSA anahtar uzunluğu ve sertifika yönetimi için uygulama kılavuzu
- OWASP Cryptographic Storage Cheat Sheet - Üretim ortamlarında özel anahtarların güvenli saklanması ve erişim kontrolü için en iyi uygulamalar
- AWS KMS Best Practices - Bulut ortamında RSA anahtar rotasyonu ve erişim denetimi için rehber