ECC (P-256) Şifrele & Çöz

Ücretsiz çevrimiçi ECC (P-256) Şifrele & Çöz aracı. %100 yerel işlem — verileriniz asla cihazınızı terk etmez.

National Standards
Other
Çıkış

Sonuç burada görüntülenecek...

Giriş Şifrele

Usage Guide

ECC/ECIES (P-256) Hakkında

NIST P-256 eğrisine dayalı ECC/ECIES (Eliptik Eğri Tümleşik Şifreleme Şeması), hibrit bir asimetrik şifreleme şemasıdır. Anahtar anlaşması için ECDH (Eliptik Eğri Diffie-Hellman) ile kimlik doğrulamalı simetrik şifreleme için AES-256-GCM'yi birleştirir. ECIES tek bir işlemde gizlilik, bütünlük ve özgünlük sağlar. Anahtarlar kompakttır — P-256 özel anahtarı yalnızca 32 bayttır, eşdeğer güvenlik için RSA-2048 ise 256 bayt gerektirir.

Şifreleme Algoritması — İmza Değil: ECC/ECIES verileri gizli tutan bir şifreleme algoritmasıdır. Özgünlüğü kanıtlayan ancak verileri şifrelemeyen bir imza algoritması olan ECDSA ile tamamen farklıdır. Alıcının genel anahtarını kullanarak gizli bir mesaj göndermek istediğinizde ECIES kullanın.

Kullanım Adımları

Bu araç ECIES anahtar çifti oluşturma, şifreleme (genel anahtarla) ve şifre çözme (özel anahtarla) işlemlerini destekler:

1. Anahtar Çifti Oluştur'Generate Key Pair' düğmesine tıklayarak bağlantılı bir özel anahtar/genel anahtar çifti oluşturun. Her iki anahtar da PEM formatında çıkar (-----BEGIN PRIVATE KEY----- / -----BEGIN PUBLIC KEY-----).
2. Mesaj Şifrele'Encrypt' modunu seçin. Giriş alanına düz metni girin ve anahtar parametresine PEM genel anahtarını yapıştırın. 'Encrypt'e tıklayın — çıktı, geçici genel anahtarı (epk) ve şifreli metni (ct) içeren bir JSON nesnesidir.
3. Mesaj Şifresini Çöz'Decrypt' modunu seçin. Giriş alanına JSON şifreli metni yapıştırın ve anahtar parametresine PEM özel anahtarını yapıştırın. 'Decrypt'e tıklayın — çıktı orijinal düz metindir.
4. Özel Anahtarı Güvenle SaklaÖzel anahtarı güvenli bir yerde saklayın (şifre yöneticisi, şifreli kasa, HSM). Genel anahtar serbestçe paylaşılabilir. Özel anahtarın kaybolması, şifrelenmiş tüm mesajların şifresini çözme yeteneğinin kaybolması anlamına gelir.
Yalnızca Tarayıcıda: Tüm anahtar oluşturma ve şifreleme işlemleri WebCrypto API kullanılarak tamamen tarayıcınızda çalışır. Hiçbir anahtar veya mesaj sunucuya iletilmez.

Çıktı Formatı

ECIES şifrelemesi iki alanlı bir JSON nesnesi üretir:

epk (Geçici Genel Anahtar)66 onaltılık karakter = 33 bayt. Bu, göndericinin tek kullanımlık anahtar çiftinin sıkıştırılmış P-256 noktasıdır. Alıcı bunu kendi özel anahtarıyla birlikte ECDH aracılığıyla paylaşılan sırrı yeniden oluşturmak için kullanır.
ct (Şifreli Metin)Onaltılık dize. AES-256-GCM ile şifrelenmiş düz metni ve ardından 16 baytlık (32 onaltılık karakter) GCM kimlik doğrulama etiketini içerir. Etiket, şifreli metnin kurcalanmadığını garanti eder.
Örnek Çıktı{"epk":"02a3f1e2d4c5b6...","ct":"7f8e9d0c1b2a...f3e4d5c6b7a8"}
Nonce (IV)12 baytlık AES-GCM nonce'u, HKDF anahtar türetme adımından deterministik olarak türetilir — anahtar türetmeye gömülüdür ve JSON'da ayrıca saklanması gerekmez.

ECIES Nasıl Çalışır

ECIES, dahili olarak şu adımları gerçekleştiren hibrit bir şifreleme şemasıdır:

Adım 1 — Geçici Anahtar ÇiftiGönderici her şifreleme işlemi için yeni bir (geçici) P-256 anahtar çifti oluşturur. Bu anahtar çifti yalnızca bir kez kullanılır ve ardından atılır.
Adım 2 — ECDH Anahtar AnlaşmasıGönderici ECDH kullanarak paylaşılan bir sır hesaplar: paylaşılan_sır = ECDH(gönderici_geçici_özel_anahtar, alıcı_genel_anahtar). Alıcı da ECDH(alıcı_özel_anahtar, gönderici_geçici_genel_anahtar) ile aynı değeri hesaplayabilir.
Adım 3 — HKDF Anahtar TüretmePaylaşılan sır, 44 bayt türetmek için HKDF-SHA256'dan geçirilir: ilk 32 bayt AES-256-GCM şifreleme anahtarı olur, sonraki 12 bayt GCM nonce'u (IV) olur.
Adım 4 — AES-256-GCM ŞifrelemeDüz metin, türetilen anahtar ve nonce kullanılarak AES-256-GCM ile şifrelenir. Çıktı, şifreli metin ile 16 baytlık kimlik doğrulama etiketinin birleşimidir.
Adım 5 — ÇıktıGeçici genel anahtar (sıkıştırılmış, 33 bayt) ve şifreli metin onaltılık dizeler olarak kodlanır ve bir JSON nesnesi olarak döndürülür.
İleri Gizlilik: Her şifreleme yeni bir geçici anahtar çifti kullandığından, alıcının uzun vadeli özel anahtarı gelecekte ele geçirilse bile geçmişteki şifreli metinler çözülemez. Bu özellik ileri gizlilik (mükemmel ileri gizlilik) olarak adlandırılır. RSA-OAEP ileri gizlilik sağlamaz.

FAQ

Q: ECIES ile RSA şifrelemesi arasındaki fark nedir?

A: Hem ECIES hem de RSA-OAEP asimetrik şifreleme şemalarıdır, ancak birkaç önemli açıdan farklılık gösterirler. Anahtar boyutu: P-256 özel anahtarı 32 bayttır; RSA-2048 eşdeğer güvenlik için 256 bayt gerektirir. Hız: ECIES işlemleri RSA'dan çok daha hızlıdır. İleri gizlilik: ECIES, geçici anahtar çiftleri aracılığıyla ileri gizlilik sağlar — RSA-OAEP sağlamaz. Yeni sistemler için asimetrik şifreleme açısından ECIES genellikle RSA'ya tercih edilir.

Q: İleri gizlilik nedir ve neden önemlidir?

A: İleri gizlilik (mükemmel ileri gizlilik, PFS), uzun vadeli özel anahtar daha sonra ele geçirilse bile geçmişteki şifreli mesajların güvenli kalması anlamına gelir. ECIES'te her şifreleme, kullanımdan sonra atılan yepyeni bir geçici anahtar çifti oluşturur. RSA-OAEP, alıcının uzun vadeli genel anahtarını doğrudan kullanır — bu özel anahtar ele geçirilirse, tüm geçmiş şifreli metinler çözülebilir.

Q: JSON çıktısındaki alanlar ne anlama gelir?

A: ECIES çıktı JSON'ında iki alan vardır: epk (geçici genel anahtar), göndericinin tek kullanımlık anahtar çiftinin sıkıştırılmış 33 baytlık P-256 noktasını temsil eden 66 onaltılık karakterdir. ct (şifreli metin), AES-256-GCM ile şifrelenmiş veriler ve ardından 16 baytlık GCM kimlik doğrulama etiketi içeren bir onaltılık dizedir. JSON'un tamamını korumanız gerekir — herhangi bir alan değiştirilir veya kesilirse, şifre çözme kimlik doğrulama hatasıyla başarısız olur.

Q: Aynı genel anahtarla birden fazla mesaj şifreleyebilir miyim?

A: Evet. Aynı alıcı genel anahtarıyla istediğiniz kadar mesaj şifreleyebilirsiniz. Her şifreleme otomatik olarak yeni bir geçici anahtar çifti oluşturur, bu nedenle her şifreli metin bağımsızdır ve farklı türetilmiş anahtar ve nonce kullanır. Nonce yeniden kullanım riski yoktur.

Q: ECC/ECIES kuantum bilgisayarlara karşı güvenli midir?

A: Hayır. ECIES, Shor algoritmasını çalıştıran yeterince büyük bir kuantum bilgisayarının çözebileceği Eliptik Eğri Ayrık Logaritma Problemine (ECDLP) dayanır. Aynı durum RSA için de geçerlidir. Kuantum sonrası asimetrik şifreleme için NIST, ML-KEM'i (eski adıyla CRYSTALS-Kyber) standartlaştırmıştır. ECIES, günümüzün klasik tehdit modelleri için hâlâ en iyi pratik seçenek olmaya devam etmektedir.

Use Cases

Önerilen: Uçtan Uca Şifreli Mesajlaşma

ECIES, gönderenin alıcının genel anahtarını bildiği uçtan uca şifreli mesajlaşma için uygundur. Yerleşik ileri gizlilik, alıcının özel anahtarı daha sonra ele geçirilse bile önceden gönderilen mesajların korunduğu anlamına gelir.

Recommended Configuration:
  • ✅ PEM genel anahtarınızı göndericilere dağıtın
  • ✅ PEM özel anahtarınızı şifreli bir kasada veya HSM'de tutun
  • ✅ İleri gizlilik yerleşiktir — her mesaj yeni bir geçici anahtar çifti kullanır
  • ❌ Özel anahtarınızı gönderici dahil kimseyle paylaşmayın
Önerilen: Büyük Veriler için Hibrit Şifreleme

ECIES, büyük dosyalar için genellikle hibrit şifreleme modelinde kullanılır: Bir AES-256-GCM simetrik anahtarını güvenli şekilde iletmek için ECIES kullanın, ardından gerçek büyük dosyayı şifrelemek için bu anahtarı kullanın. TLS, PGP ve gerçek dünyadaki şifreleme protokollerinin çoğu bu şekilde çalışır.

Recommended Configuration:
  • ✅ Simetrik veri şifreleme anahtarını (DEK) sarmak/iletmek için ECIES kullanın
  • ✅ Gerçek dosya içeriği için AES-256-GCM veya ChaCha20-Poly1305 kullanın
  • ✅ ECIES ile sarılan anahtarı şifreli dosyayla birlikte saklayın
  • ❌ Birkaç KB'tan büyük dosyaları doğrudan ECIES ile şifrelemeyin
Önerilen: RSA-OAEP Yerine Geçme

Şu anda asimetrik şifreleme için RSA-OAEP kullanan yeni sistemler için P-256 ile ECIES, önerilen modern alternatiftir. Çok daha küçük anahtarlar ve ek ileri gizlilik avantajıyla eşdeğer veya daha iyi güvenlik sağlar.

Recommended Configuration:
  • ✅ Yeni asimetrik şifreleme ihtiyaçları için RSA-OAEP yerine ECIES tercih edin
  • ✅ P-256 (ECIES) anahtarları RSA-2048 anahtarlarından 8 kat küçüktür
  • ✅ ECIES, RSA-OAEP'nin sağlayamadığı ileri gizlilik ekler
  • ❌ Eski sistemlerle uyumluluk gerekmedikçe yeni sistemlerde RSA-OAEP kullanmaya devam etmeyin
Önerilen: API Hassas Veri Güvenli İletimi

ECIES, API isteklerindeki hassas verileri koruyabilir — örneğin iletimden önce sunucunun genel anahtarıyla kullanıcının kredi kartı numarasını veya kişisel verilerini şifrelemek. Bu, aktarım güvenliğinin ötesinde derinlemesine savunma sağlar.

Recommended Configuration:
  • ✅ Sunucunun PEM genel anahtarını API istemcilerine yayınlayın
  • ✅ Göndermeden önce hassas alanları (kişisel veri, ödeme bilgisi) şifreleyin
  • ✅ Derinlemesine savunma için TLS ile birleştirin
  • 💡 Her istek otomatik olarak yeni bir geçici anahtar kullanır — istek başına anahtar rotasyonu gerekmez
Önerilmez: Büyük Dosyaların Doğrudan Şifrelenmesi

ECIES, kısa mesajlar ve anahtar sarma için tasarlanmıştır — büyük dosyaları doğrudan şifrelemek için değil. Doğru model hibrit şifrelemedir: rastgele oluşturulmuş bir AES-256-GCM anahtarını (32 bayt) ECIES ile şifreleyin, ardından gerçek dosyayı şifrelemek için bu AES anahtarını kullanın.

Recommended Configuration:
  • ❌ Birkaç KB'tan büyük dosyaları doğrudan ECIES ile şifrelemeyin
  • ✅ Rastgele bir AES-256-GCM veri şifreleme anahtarını (DEK) şifrelemek için ECIES kullanın
  • ✅ Dosya içeriğini şifrelemek için DEK ile AES-256-GCM kullanın
  • 💡 Saklayın: ECIES ile şifrelenmiş DEK + AES ile şifrelenmiş dosya içeriği birlikte

En İyi Uygulamalar Özeti

  • ECC/ECIES bir şifreleme algoritmasıdır — gizlilik sağlar. İmza algoritması değildir. Dijital imzalar için ECDSA kullanın.
  • İleri gizlilik yerleşiktir: her şifreleme yeni bir geçici anahtar çifti oluşturur, dolayısıyla özel anahtar daha sonra ele geçirilse bile geçmişteki şifreli metinler güvende kalır.
  • Büyük veriler için hibrit şifreleme kullanın: anahtar sarma için ECIES, verinin kendisi için AES-256-GCM veya ChaCha20-Poly1305.
  • Özel anahtar (PEM formatı) gizli tutulmalıdır. Genel anahtar (PEM formatı) şifreli mesaj göndermesi gereken herkese serbestçe dağıtılabilir.

Tartışma ve Geri Bildirim

0 yorum
Ben