Kriptografi'de Genel ve Özel Anahtar Çiftlerinin Nasıl Çalıştığı: 5 Yaygın Örnek

Görsellerle desteklenen adım adım rehberler, beş farklı genel anahtar altyapısı (PKI) senaryosunda kriptografik anahtar çiftlerinin nasıl çalıştığını gösteriyor.

Biliriz ki, genel-özel anahtar çiftleri IT ortamında birçok farklı şekilde (şifreleme, kimlik doğrulama, dijital imzalar vb.) kullanılır. Ancak kullanım şekilleri her kullanım durumu için dramatik bir şekilde farklılık gösterir. Bu da size "kısacası nasıl çalışır?" sorusunu sordurabilir.

Eğer her bir kullanım durumunun ayrıntılarını, nasıl kullanıldıklarını tam olarak bilmek istemişseniz, işte beş farklı kullanım durumunun genel bir özeti.

Hadi çözelim.

Genel Anahtarlar Şifreler, Özel Anahtarlar Çözer - Doğru mu?

Kısa cevap? Her zaman değil. Evet, çoğu kullanım durumunda, genel anahtar verileri şifrelemek için kullanılırken, buna karşılık gelen özel anahtar sırları çözmek için kullanılır. Ancak, bazı süreçlerde istisnalar vardır. Tüm bunları size aşağıdaki bölümlerde ayrıntılı olarak açıklayacağız ve beş yaygın kullanım durumuna bakacağız:

  • SSL/TLS (HTTPS)
  • Kod İmzalama
  • Belge İmzalama
  • E-posta İmzalama
  • E-posta Şifreleme

1. Bir SSL/TLS Bağlantısında Genel-Özel Anahtar Çiftinin Nasıl Çalıştığı

Bir HTTPS kullanarak güvenli bir web sitesini ziyaret ettiğinizde, her bağlantı, bir TLS el sıkışma işlemi adı verilen bir süreçle başlar. Bu süreç, hassas bilgileri değiştirmek için genel anahtar şifrelemesini (asimetrik şifreleme) kullanır ve geri kalan oturum için simetrik şifrelemeye geçer.

Neden değiştirmek gerekiyor? Çünkü simetrik şifreleme, genel anahtar şifrelemesinden daha az hesaplama gücü gerektirir. Bu küçük bir zaman miktarıyla (milisaniyelerle) ilgilensek de, daha büyük ölçekte veri şifrelemesi için (daha büyük bir web trafiğine sahip büyük kuruluş lar için) daha verimlidir.

Web sitenizin bağlantılarını şifrelemek için sunucunuza bir SSL/TLS sertifikasının kurulu olması gerekmektedir. Ayrıca, istemci ve sunucunun kendilerini tanıtması ve güvenli bir şifreli oturum oluşturmak için temel bilgileri değiştirmeleri gerekmektedir. Bu ileri geri işlem TLS el sıkışması olarak adlandırılır ve çoğu tarayıcı iki çeşidi destekler - TLS 1.2 (en yaygın olanı) ve TLS 1.3.

İşte TLS 1.2 el sıkışma sürecinin nasıl çalıştığına dair bir genel bakış:

  • Bir istemci (tarayıcı), bir sunucuya (web sitesi) bağlandığında, iki taraf, destekledikleri şifreleme yöntemleri hakkında belirli protokolleri değiştirir. İstemci büyük, rastgele bir asal sayı değeri (bir "istemci rastgele" olarak adlandırılır) gönderir.
  • Sunucu, SSL/TLS sertifikasını ve genel anahtarını istemciye (tarayıcıya) gönderir ve istemci rastgele değeriyle birleştirilebilecek bir "sunucu rastgele" değeri (evet, istemci rastgele değeri ile aynı kavram) gönderir ve bu değerler ile birlikte bir "simetrik oturum anahtarı" oluşturulabilir.
  • İstemci, sunucunun sertifikasını kontrol eder ve simetrik anahtar değerlerini sunucuya geri göndermek için sunucunun genel anahtarını kullanır. (Hangi anahtar değişim algoritmasının kullanıldığına bağlı olarak ayrıntılar değişir.)
  • Her iki taraf, değiş tokuş ettikleri verileri kullanarak bir "simetrik oturum anahtarı" (yani paylaşılan oturum anahtarı) hesaplar.
  • İstemci, el sıkışmanın bozulmadığını kontrol etmek için sunucunun "mesaj kimlik doğrulama kodunu" (MAC) kontrol eder.
  • Her iki taraf, paylaşılan oturum anahtarını kullanarak güvenli, simetrik şifrelenmiş bir bağlantı oluşturur.

Bir illüstrasyon, TLS 1.2 el sıkışmasında genel ve özel anahtarların rollerini gösteriyor.

Resim alt yazısı: Bir illüstrasyon, TLS 1.2 el sıkışması sırasında istemci ve web sunucusu arasındaki etkileşimleri gösterir. Ayrıca, sunucunun genel anahtarının nasıl paylaşıldığını, özel anahtarın asla paylaşılmadığını ve sunucunun ve istemcinin bu kriptografik anahtar çiftini kullanarak nihayetinde oturumun geri kalanı için kullanacakları paylaşılan bir oturum anahtarı oluşturduğunu gösterir.

TLS 1.3 el sıkışması için işlem biraz farklılık gösterir, özellikle anahtar değişim işlemi konusunda farklılıklar vardır. Temel kavram ise aynıdır: genel-özel anahtar çifti, simetrik şifreleme için kullanılan paylaşılan bir anahtarın güvenli bir şekilde değiştirilmesini sağlar.

2. Kod İmzalama, Uygulamaları ve Kodu Güvenli Hale Getirmek İçin Özel ve Genel Anahtarları Nasıl Kullanır

Kodunuzu, yazılımınızı, yürütülebilir dosyaları vb. güvence altına almanın süreci, geliştiricinin veya yayıncının yazılım yürütülebilir dosyasına bir dijital imza eklemesiyle gerçekleştirilir. Bu süreç, kimlik doğrulama işlemini ve dosyanın imzalandığı andan itibaren değiştirilmediğini doğrulamak için kriptografik anahtarları ve işlevleri (yani karma işlevi ve şifreleme) kullanır.

Bu makalenin başında, genel anahtarların her zaman şifrelemek ve özel anahtarların çözmek için kullanılmadığını söylemiştik. İşte bunu kastettiğimiz süreç:

Ancak anahtar ne zaman ve nasıl kullanılıyor?

  • Geliştirici yazılımına/koduna bir karma işlevi (yani karma algoritma) uygular. Bu, sabit uzunlukta bir karma özeti (yani karma değeri) oluşturur.
  • Elde edilen karma özetini şifrelemek için özel anahtarını kullanır. Bu anahtar, endüstri standardı kod imzalama temel gereksinimlerine uygun olarak güvenli bir aygıtta, örneğin güvenli bir sim kart veya donanım güvenlik modülünde (HSM), saklanmalıdır.
  • Geliştirici, dijital imza oluşturur ve dosyaya bir zaman damgası uygular (Not: Zaman damgası isteğe bağlıdır, ancak önerilir).
  • Dijital olarak imzalanan yazılım, geliştiricinin genel anahtarını ve sertifikasını ekleyerek dağıtılır veya yayımlanır.

Kod imzalama sürecinin özel anahtarı kullanan adım adım bir gösterimi.

Resim alt yazısı: Kod imzalamanın nasıl çalıştığını ve genel-özel anahtar çiftinin hangi rolünü oynadığını ayrıntılı olarak açıklayan bir gösterim.

Peki genel anahtar ne zaman devreye giriyor? Kullanıcı sonunda bu işlemin gerçekleştiği yazılım doğrulama sürecinde:

  • Kullanıcı yazılımı indirir. Tarayıcı veya işletim sistemi (OS), dijital imzanın geçerli, güvenilir ve değiştirilmediğini kontrol eder.
  • Sistem, dijital imzanın doğruluğunu kontrol etmek için geliştiricinin genel anahtarını kullanır ve bunu şifresini çözmek için dosyanın karma özetiyle karşılaştırır.
  • Karma değerleri eşleşirse, doğru bir sonuca ulaşılır. Eğer değerler eşleşmezse, Windows işletim sistemleri ve tarayıcılar kullanıcıya yazılımınıza güvenmemesi gerektiğini bildiren bir uyarı verecektir.

Kod imzalama doğrulama sürecinde genel anahtarın rolünü gösteren bir gösterim.

Resim alt yazısı: Kullanıcının dijital olarak imzalanmış bir yazılımı veya kodu indirdiğinde veya yüklemeye çalıştığında kod imzalama doğrulama sürecinde genel anahtarın rolünü açıklayan bir gösterim.

 

3. Belgeleri Dijital Olarak İmzalamak İçin Genel-Özel Anahtar Çiftini Nasıl Kullanabilirsiniz

Belge imzalamadan bahsettiğimizde, el yazınızın elektronik biçimini imzalama değil, doğrulanabilir dijital bir kimlik ile bir dijital dosyaya (Word belgesi, PDF vb.) damga vurmayı kastediyoruz, böylece insanlar onun gerçek olduğunu ve değiştirilmediğini bilecekler.

Farklı elektronik (sol) ve dijital imzaların (orta ve sağ) nasıl göründüğünü gösteren yan yana bir ekran görüntüsü seti.

Resim alt yazısı: Elektronik imzalar (sol) ile dijital imzaların (orta ve sağ) farkını gösteren bir gösterim.

Eğlenceli bir not: Dijital imza, elektronik imzanın bir türüdür, ancak tüm elektronik imzaların dijital imzalar olduğu söylenemez. Biraz kafa karıştırıcı mı? Elektronik ve dijital imzalar arasındaki fark hakkında daha fazla bilgi edinmek isterseniz, eski meslektaşımın yazısına göz atabilirsiniz: Elektronik ve dijital imzalar arasındaki fark. Şimdi, ana konumuza geri dönelim...

Bir belgeyi dijital olarak imzalamak için bir belge imzalama sertifikası olmalısınız. Peki, genel ve özel anahtarın bu işteki rolü nedir? Açıkçası, bu, kod imzalama sürecinde özel anahtarın yaptığı işe benzer:

  • Belge oluşturucusu, Word veya PDF dosyasına bir karma işlevi/aldırgayı uygular. Bu, bir karma özet veya karma değeri oluşturur.
  • Oluşturulan karma özetini şifrelemek için özel anahtarını kullanır. Kod imzalama sürecinde olduğu gibi, belge imzalama anahtarınızın da güvenli bir aygıtta (token, HSM vb.) veya bir anahtar kasasında saklanması gerekmektedir.
  • Dosya sahibi, belge imzalama sertifikasını kullanarak dijital imza oluşturur ve dosyaya bir zaman damgası ekleyebilir (Not: Zaman damgası isteğe bağlıdır, ancak önerilir).
  • Dijital olarak imzalanan belge artık kullanıma hazırdır.

Belge imzalama sürecinde özel anahtarın nasıl yardımcı olduğunu gösteren adım adım bir gösterim.

Resim alt yazısı: Microsoft Office belgeleri ve PDF'ler için dijital imza oluşturma sürecinde belge imzalama özel anahtarının rolünü açıklayan bir gösterim.

  • Alıcı dosyayı indirdiğinde, cihazı dijital imzayı kontrol eder.
  • Alıcının sistemi, orijinal karma özetini elde etmek için geliştiricinin genel anahtarını kullanır ve bunu oluşturdukları bir karma ile karşılaştırır.

Şimdi, vitesi değiştirme zamanı geldi ve e-posta iletişimini imzalama konusuna geçelim.

4. Genel-Özel Anahtar Çiftleri E-posta İmzalamayı Mümkün Kılar

E-posta imzalama, bir e-posta gönderenin e-postayı gönderdiğini kanıtlamasını ve mesajın sahte bir kaynaktan gelmediğini kanıtlamasını sağlayan bir süreçtir. Bu süreç, e-posta gönderenin bir e-posta imzalama sertifikası (aynı zamanda istemci kimlik doğrulama sertifikası olarak da adlandırılır) kullanması gerektirir. Bu sertifikayı cihazına yükler veya e-posta istemcisine içe aktarır.

Windows cihazında sertifikaları depolayabileceğiniz Sertifika Yöneticisi'nin bir örneği olan bir ekran görüntüsü.

Resim alt yazısı: Windows Sertifika Yöneticisinde saklanabilecek e-posta imzalama ve istemci kimlik doğrulama sertifikalarının örneği.

Peki, e-posta imzalama süreci nasıl görünüyor ve genel-özel anahtar çifti bu denklemde nerede yer alıyor? Şimdi biraz karıştıralım. (NOT: E-posta alıcısı ve göndericisi her ikisinin de bir e-posta imzalama sertifikası yüklemiş olmaları gerekmektedir.)

  • E-posta gönderen e-postayı dijital olarak imzalamak için bir karma işlevi/algoritma kullanır.
  • Gönderen özel anahtarını kullanarak bu karma özetini şifreler ve dijital imzayı oluşturur.
  • Gönderen, gönderilen e-postaya e-posta imzalama sertifikasını ve genel anahtarını ekleyerek dijital imza bloğunu oluşturur.

E-posta imzalama sürecinin nasıl çalıştığını ve kullanıcının özel anahtarın şifrelemesiyle ne yaptığını açıklayan bir gösterim.

Resim alt yazısı: E-posta imzalama sürecinin nasıl çalıştığını ve kullanıcının özel anahtarın şifrelemesiyle ne yaptığını açıklayan bir gösterim.

  • E-posta alıcısı e-postayı aldığında, e-postanın karma özetini çözmek için gönderenin genel anahtarını kullanır.
  • Alıcı, bu değeri kendi oluşturduğu bir karmayla karşılaştırmak için orijinal karmayı kullanır.
  • Eşleşiyorsa, alıcı e-postanın gerçek olduğundan emin olabilir.

Sertifika ile imzalanmış e-postalar hakkında daha fazla bilgi edinmek için üç büyük e-posta platformunda nasıl şifrelenmiş e-postalar gönderileceği konusunda sizi bu makalemize yönlendiriyoruz.

5. Genel-Özel Anahtar Çiftleri Güvenli, Şifreli E-posta İletişimini Nasıl Mümkün Kılar

E-posta şifreleme, e-posta içeriğinin (kelimeler, görüntüler/grafikler, ekler vb.) göndermeden önce okunamaz bir forma dönüşmesi için içeriğin rastgele karıştırılması sürecidir. Ancak, e-posta başlık bilgilerini şifrelemez.

Bir e-postayı şifrelemek, gizli, kodlu mesajları güvenli bir kargo konteynerine mühürlemeye benzer; böylece gönderim sıras ında veya e-posta sunucusunda beklerken görüntülenmekten güvende olur. Bu nedenle, bazen uçtan uca şifreleme denir - çünkü bir uçtan diğerine koruma altındadır.

Peki, genel-özel anahtar çifti nasıl kullanılarak bu süreç gerçekleşir? Şimdi biraz değişiklik yapma zamanı. (NOT: E-posta alıcısı ve göndericisi her ikisinin de bir e-posta imzalama sertifikası yüklemiş olmaları gerekmektedir.)

  • E-posta alıcısı genel anahtarını e-posta gönderene göndermelidir.
  • E-posta göndereni bir e-posta tasarlar ve herhangi bir ek ekler.
  • E-posta gönderen, e-posta alıcısının genel anahtarını şifrelemek için kullanır.
  • E-posta şifrelendikten sonra alıcıya gönderilir.
  • E-posta alıcısı e-postayı aldığında, e-posta istemcisi alıcının özel anahtarını kullanarak mesajı çözer. Bu, mesajı okunabilir hale getirir.

Genel-Özel Anahtar Çiftlerinin E-posta şifreleme ve çözme sürecindeki rollerini açıklayan bir gösterim.

Resim alt yazısı: E-posta şifreleme işleminin nasıl çalıştığını ve genel ve özel anahtarların bu süreçte nasıl kullanıldığını gösteren bir gösterim.

 

Sonuç

Genel-özel anahtar çiftlerinin genel anahtarlı şifreleme alanında nasıl kullanıldığını ayrıntılı olarak bilmek zorunda olmasanız da öğrenmek kesinlikle zarar vermez. Kriptografik anahtarlar, internet güvenliğiyle ilgili her şey için temel öneme sahiptir. Web sitenize gönderilen hassas verileri güvence altına almak veya e-postalarınızın, belgelerinizin ve dosyalarınızın gizliliğ ini ve bütünlüğünü korumak olsun, genel anahtarlı kriptografi, genel-özel anahtar çiftinizin güvenliğine dayanır ve bunlar olmadan mümkün olamaz.

Genel-özel anahtar çiftleri aşağıdakileri mümkün kılar:

  • Kimlik doğrulama — Bu, dijital kimlik doğrulama ve onaylama ile ilgilidir. Bir web sitesinin, e-posta gönderenin, yazılım yayıncısının veya belge oluşturucunun (vb.) meşru olduğunu bilmenizi sağlar.
  • Veri bütünlüğü — Genel-özel anahtar çiftleri, karma ve şifreleme gibi kriptografik işlemlerle birlikte dijital imzaların oluşturulmasını mümkün kılar ve mesajların ve dosyaların doğruluğunu kanıtlar.
  • İnkar edilemezlik — Bu, verinin doğrulanmış bir kaynaktan geldiğini ve doğrulanmamış bir kaynaktan gelmediğini doğrulamayı içerir, özel anahtar güvenli bir şekilde saklandığı sürece.

Son cümle bizi bir sonraki noktaya getiriyor. Dijital güven, genel anahtarlı şifreleme temelinde olanın kalbidir. Bir web sitesinin, yazılım geliştiricinin, belge oluşturucunun veya e-posta göndericinin kimliğine güvenemiyorsanız, onlardan gönderdiğiniz veya aldığınız herhangi bir veriye güvenemeyeceğinizi nasıl bilebilirsiniz? Bilemezsiniz. Bu nedenle, özel anahtarlarınızı güvende tutmanız önemlidir.

Umarız bu makale, özel anahtarlarınızı güvenli bir şekilde yönetmenin ve saklamanın önemini vurgulamıştır. Bu kritik varlıkları güvende tutarak, (sizin ve müşterilerinizin) hassas verilerinin yanlış ellere düşmesini önlemiş olursunuz.