RSA Anahtar Dönüştürücü
RSA özel anahtarlarını PKCS#1 ↔ PKCS#8 arasında tarayıcıda dönüştürün.
Tamamen tarayıcınızda çalışır — yapıştırdığınız veya oluşturduğunuz hiçbir şey cihazınızdan çıkmaz.
Bir RSA özel anahtarı yapıştırın. Biçim otomatik algılanır ve diğer biçime dönüştürülür.
Kısa cevap
RSA Key Converter, RSA özel anahtarlarını PKCS#1 ve PKCS#8 arasında tarayıcınızda çevirir; anahtar hiçbir yere gönderilmez. Bir yazılım anahtarınızı reddediyorsa doğru format zarfına dönüştürmek için kullanın.
RSA Key Converter, RSA özel anahtarlarınızı PKCS#1 ve PKCS#8 formatları arasında tamamen tarayıcınızda dönüştürür; anahtar hiçbir zaman bir sunucuya yüklenmez. İki format da aynı anahtarı taşır ama farklı bir çerçeveyle sarar ve farklı yazılımlar farklı çerçeve bekler. Bu uyuşmazlık, sertifika kurulumunda 'anahtar okunamadı' veya 'geçersiz anahtar' hatalarının sık rastlanan sebebidir; araç bu sorunu saniyeler içinde çözer.
Aralarındaki fark başlık satırından anlaşılır: PKCS#1, -----BEGIN RSA PRIVATE KEY----- ile başlar ve yalnızca RSA'ya özgüdür; PKCS#8 ise -----BEGIN PRIVATE KEY----- ile başlar, anahtar tipinden bağımsız genel bir sarmalayıcıdır ve isteğe bağlı parola şifrelemesini destekler. Eski Apache/mod_ssl yapılandırmaları çoğu zaman PKCS#1 beklerken, Java, .NET ve birçok modern kütüphane PKCS#8 ister; bu araç ikisi arasında köprü kurar.
PKCS#1 ve PKCS#8 arasındaki fark
PKCS#1, doğrudan RSA anahtar yapısını kodlar ve başlığında RSA kelimesi geçer; sade ama yalnızca RSA için geçerlidir. PKCS#8, anahtarı bir algoritma tanımlayıcısıyla birlikte genel bir zarf içine koyar; böylece aynı format RSA, ECDSA veya Ed25519 anahtarları için de kullanılabilir ve başlığı yalnızca PRIVATE KEY der. PKCS#8'in bir diğer avantajı, anahtarı bir parolayla şifreleyerek saklamayı standart biçimde desteklemesidir. İçerideki matematiksel anahtar her iki formatta da aynıdır; değişen sadece ambalajdır.
Ne zaman dönüştürmeniz gerekir
Bir yazılım anahtarınızı reddediyorsa, sorun çoğu zaman yanlış format zarfıdır. Örneğin OpenSSL'in eski sürümüyle ürettiğiniz PKCS#1 bir anahtarı, PKCS#8 bekleyen bir Java keystore aracına veriyorsanız hata alırsınız. Ya da tam tersi: modern bir araçtan çıkan PKCS#8 anahtarı, yalnızca PKCS#1 tanıyan eski bir yapılandırmaya koyuyorsanızdır. Başlık satırına bakıp hedef yazılımın hangisini beklediğini öğrenir, bu araçla o yöne çevirirsiniz.
Her şey tarayıcıda kalır
Özel anahtar, SSL güvenliğinizin kalbidir; onu bir çevrimiçi dönüştürücüye yüklemek, anahtarınızın bir kopyasını tanımadığınız bir sunucuya vermek anlamına gelir. Bu araç dönüşümü tamamen tarayıcınızın belleğinde yapar: anahtar ne yüklenir ne de bir API'ye gönderilir. Böylece üretim anahtarlarınızı, dış servislere veri göndermeyi yasaklayan kurumsal politikaları ihlal etmeden ve sızma riski olmadan dönüştürebilirsiniz.
Şifreli anahtarlar ve doğrulama
PKCS#8 formatı, özel anahtarı bir parolayla şifreli olarak saklamayı destekler; bu, anahtarı diskte korumak için iyi bir uygulamadır ama sunucuya kurarken çözülmesi gerekir. Bir formata çevirdikten sonra, anahtarın gerçekten sertifikanızla eşleştiğinden emin olmak isterseniz Certificate Key Matcher aracıyla modulus/eşleşme kontrolü yapabilirsiniz. Format dönüşümü anahtarın içeriğini değiştirmez, dolayısıyla dönüşüm sonrası eşleşme korunur; yalnızca çerçeve değişir.
Sıkça sorulan sorular
- Format değişince anahtarım bozulur mu?
- Hayır. PKCS#1 ve PKCS#8 aynı matematiksel RSA anahtarını farklı çerçevelerle sarar; dönüşüm yalnızca ambalajı değiştirir, anahtarın kendisini değil. Bu yüzden dönüşüm sonrası anahtar hâlâ aynı sertifikayla eşleşir ve aynı trafiği çözer. Yanlış yöne çevirirseniz sadece hedef yazılım anlamayabilir; anahtar bozulmaz.
- Anahtarımın hangi formatta olduğunu nasıl anlarım?
- İlk satıra bakın. -----BEGIN RSA PRIVATE KEY----- PKCS#1'dir. -----BEGIN PRIVATE KEY----- PKCS#8'dir (şifresiz). -----BEGIN ENCRYPTED PRIVATE KEY----- ise parolayla şifrelenmiş PKCS#8'dir. Başlık, hangi zarfı kullandığınızı doğrudan söyler.
- Java için hangi formatı kullanmalıyım?
- Java ekosistemi ve birçok modern kütüphane genellikle PKCS#8 bekler. Elinizde PKCS#1 bir anahtar varsa (RSA PRIVATE KEY başlıklı), bu araçla PKCS#8'e çevirin. Bazı Java araçları anahtarı ayrıca bir keystore (JKS/PKCS#12) içine almanızı da isteyebilir; o adım format dönüşümünden sonra gelir.
- Bu araç ECDSA anahtarlarını da çevirir mi?
- Bu araç adından da anlaşılacağı gibi RSA anahtarlarına odaklıdır. ECDSA anahtarları da PKCS#8 zarfıyla saklanabilir ama PKCS#1 yalnızca RSA'ya özgü olduğu için ECDSA için karşılığı yoktur; EC anahtarların kendi SEC1 formatı vardır. Elinizde EC anahtarı varsa RSA'ya özgü bu dönüşüm geçerli olmaz.
- Anahtarım gerçekten hiçbir yere gönderilmiyor mu?
- Evet. Dönüşüm tamamen tarayıcınızda çalışır; özel anahtar ne bir sunucuya yüklenir ne de bir API'ye iletilir. Ağ sekmesini açıp doğrulayabilirsiniz. Özel anahtarla çalıştığınız için bu, güvenli kullanımın ön koşuludur.