PGP Nedir? Pretty Good Privacy Şifreleme Hakkında Kapsamlı Rehber

PGP Şifreleme Nedir?

PGP (Pretty Good Privacy), veri iletişimi için gizlilik ve kriptografik kimlik doğrulama sağlayan bir şifreleme programıdır. PGP şifreleme, simetrik anahtar kriptografisi ile açık anahtar kriptografisinin bir kombinasyonunu kullanarak kullanıcıların mesajları, dosyaları ve diğer verileri yalnızca hedeflenen alıcının okuyabileceği şekilde şifrelemesini sağlar. İlk olarak 1991 yılında Phil Zimmermann tarafından oluşturulan PGP, dünyanın en yaygın kullanılan e-posta şifreleme standardı haline gelmiş ve RFC 4880'de tanımlanan OpenPGP spesifikasyonunun temelini oluşturmuştur. Gizli bir e-posta göndermeniz, bir yazılım yayıncısının kimliğini doğrulamanız veya hassas dosyaları korumanız gerektiğinde, PGP gazeteciler, güvenlik araştırmacıları, hükümetler ve günlük kullanıcılar tarafından güvenilen, kanıtlanmış bir kriptografik çerçeve sağlar.

Yazılım kurmadan PGP şifrelemeyi hemen denemek istiyorsanız, KeychainPGP tamamen tarayıcınızda çalışan bir çevrimiçi PGP aracı sunar.

PGP'nin Tarihçesi

Phil Zimmermann, Haziran 1991'de PGP 1.0'ı ücretsiz yazılım olarak yayınladı. Güçlü kriptografinin yalnızca hükümetlere ve ordulara değil, tüm vatandaşlara erişilebilir olması gerektiği inancıyla hareket etti. O dönemde güçlü şifreleme, ABD ihracat düzenlemelerine göre mühimmat olarak sınıflandırılıyordu ve Zimmermann, PGP'yi uluslararası olarak dağıttığı için ABD Gümrük Servisi tarafından üç yıllık bir cezai soruşturmaya maruz kaldı. Soruşturma 1996'da iddianame olmaksızın sonuçlandırıldı ve dava dijital özgürlükler tarihinde dönüm noktası haline geldi.

PGP birçok ticari evrimden geçti. Zimmermann 1996'da PGP Inc.'i kurdu; şirket 1997'de Network Associates (McAfee) tarafından, ardından 2010'da Symantec tarafından satın alındı. Bu geçişler boyunca altta yatan kriptografik protokol, İnternet Mühendisliği Görev Gücü (IETF) tarafından OpenPGP adıyla standardize edildi ve böylece protokolün ticari mülkiyetten bağımsız olarak açık ve birlikte çalışabilir kalması sağlandı.

OpenPGP standardının yayınlanması, herkesin uyumlu uygulamalar oluşturabileceği anlamına geliyordu. Bu durum, bugün hâlâ en yaygın kullanılan PGP araçlarından biri olan GNU Privacy Guard (GnuPG veya GPG) adlı özgür ve açık kaynaklı uygulamanın ortaya çıkmasına yol açtı. Bu uygulamalar arasındaki farkları anlamak için PGP ve GPG karşılaştırması rehberimize bakın.

PGP Şifreleme Nasıl Çalışır

PGP şifreleme, sofistike kriptografik tekniklerin bir kombinasyonuna dayanır. Tek bir yöntem kullanmak yerine PGP, simetrik şifrelemenin hızını asimetrik (açık anahtar) şifrelemenin anahtar dağıtım avantajlarıyla birleştiren bir hibrit şifreleme modeli kullanır.

Açık Anahtar Kriptografisi

PGP'nin merkezinde, asimetrik kriptografi olarak da bilinen açık anahtar kriptografisi yer alır. Her PGP kullanıcısı, matematiksel olarak birbiriyle ilişkili iki anahtardan oluşan bir anahtar çifti oluşturur:

  • Açık Anahtar — herkesle açıkça paylaşılır. Diğer kişiler bu anahtarı size mesaj şifrelemek ve dijital imzalarınızı doğrulamak için kullanır.
  • Özel Anahtar (gizli anahtar olarak da bilinir) — kesinlikle gizli tutulur. Bu anahtarı size gönderilen mesajların şifresini çözmek ve dijital imzalar oluşturmak için kullanırsınız.

Bu sistemin temel özelliği, bir açık anahtarla şifrelenen verilerin yalnızca karşılık gelen özel anahtarla çözülebilmesi ve bunun tersinin de geçerli olmasıdır. Bu, taraflar arasında özel olarak iletişim kurabilmeleri için önceden paylaşılan bir sır iletme ihtiyacını ortadan kaldırır.

Hibrit Şifreleme Modeli

Açık anahtar kriptografisi anahtar dağıtım sorununu çözse de, RSA gibi asimetrik algoritmalar büyük miktarda veriyi şifrelemek için hesaplama açısından maliyetlidir. PGP bu sorunu hibrit bir yaklaşım kullanarak çözer:

  1. Oturum anahtarı oluşturma — PGP her mesaj için rastgele ve benzersiz bir simetrik oturum anahtarı (genellikle 128 veya 256 bit) oluşturur.
  2. Veri şifreleme — Mesaj içeriği, oturum anahtarıyla hızlı simetrik şifreleme (AES-256 gibi) kullanılarak şifrelenir.
  3. Oturum anahtarı şifreleme — Oturum anahtarının kendisi, alıcının açık anahtarı (asimetrik işlem) kullanılarak şifrelenir.
  4. Paketleme — Şifrelenmiş mesaj ve şifrelenmiş oturum anahtarı bir araya getirilip alıcıya gönderilir.

Alıcı mesajı aldığında süreç tersine çevrilir: oturum anahtarının şifresini çözmek için özel anahtarını kullanır, ardından çözülen oturum anahtarıyla mesaj içeriğinin şifresini çözer.

PGP Dijital İmzalar

Şifrelemenin ötesinde PGP, iki temel işlevi yerine getiren dijital imzalar sağlar: kimlik doğrulama (mesajı kimin gönderdiğini kanıtlama) ve bütünlük (mesajın iletim sırasında değiştirilmediğini kanıtlama).

İmzalama süreci şu şekilde işler:

  1. PGP, SHA-256 veya SHA-512 gibi bir algoritma kullanarak mesaj içeriğinin kriptografik özetini (sabit uzunlukta bir özet) hesaplar.
  2. Özet daha sonra gönderenin özel anahtarıyla şifrelenerek dijital imza üretilir.
  3. İmza mesaja eklenir.

Herhangi bir alıcı, imzayı gönderenin açık anahtarıyla çözerek orijinal özeti elde edebilir, alınan mesajın özetini bağımsız olarak hesaplayabilir ve iki özeti karşılaştırabilir. Eşleşirlerse, mesaj özgün ve değiştirilmemiştir.

OpenPGP Standardı

OpenPGP, PGP uyumlu yazılımlar tarafından kullanılan mesaj formatlarını, algoritmaları ve prosedürleri tanımlayan açık standarttır. Kendisi bir yazılım ürünü değil, herhangi bir geliştiricinin uygulayabileceği bir spesifikasyondur.

Referans dokümanları şunlardır:

  • RFC 4880 (Kasım 2007) — Mevcut ana OpenPGP mesaj formatı spesifikasyonu.
  • RFC 6637 (Haziran 2012) — OpenPGP'yi eliptik eğri kriptografisi (ECC) desteğiyle genişletir.
  • RFC 9580 (2024) — Ed25519/X25519 zorunlu desteği, AEAD şifreleme modları ve geliştirilmiş anahtar parmak izleriyle standardı modernize eden en son revizyon.

OpenPGP birlikte çalışabilirliği garanti eder: KeychainPGP ile şifrelenen bir mesaj GnuPG, Mailvelope veya herhangi bir uyumlu uygulama tarafından çözülebilir.

Güven Ağı

PGP'nin ayırt edici özelliklerinden biri, açık anahtarların özgünlüğünü belirlemek için merkezi olmayan güven ağı (Web of Trust) modelidir. TLS/SSL tarafından kullanılan merkezi sertifika otoritesi (CA) modelinden farklı olarak PGP, kullanıcıların birbirleri için kefil olmalarına izin verir.

Güven ağı anahtar imzalama yoluyla çalışır: birinin kimliğini doğruladığınızda ve belirli bir açık anahtarı kontrol ettiğini onayladığınızda, onun anahtarını kendi anahtarınızla imzalarsınız. Bu imza, anahtarın temsil ettiğini iddia eden kişiye ait olduğuna inandığınıza dair kamuya açık bir beyandır.

KeychainPGP gibi araçlar, kullanıcıların anahtarlarla doğrudan sezgisel bir arayüz üzerinden çalışmasına olanak tanıyarak ve pano şifreleme kullanarak şifrelenmiş mesajları ve açık anahtarları kolayca paylaşmayı sağlayarak bu süreci basitleştirir.

PGP Algoritmaları ve Anahtar Türleri

PGP, alanın ilerlemesiyle birlikte evrilen bir dizi kriptografik algoritmayı destekler.

Klasik Algoritmalar

  • RSA (Rivest-Shamir-Adleman) — PGP tarihinde en yaygın kullanılan asimetrik algoritma. 2048 bit RSA anahtarları bugün minimum güvenlik seviyesi olarak kabul edilir, uzun vadeli koruma için 4096 bit anahtarlar önerilir.
  • DSA (Digital Signature Algorithm) — Şifreleme için ElGamal ile birlikte imzalar için kullanılır. Günümüzde daha az tercih edilir.
  • AES (Advanced Encryption Standard) — Mesaj içeriğini şifrelemek için kullanılan baskın simetrik şifreleme. AES-128 ve AES-256 desteklenir.
  • SHA-2 (SHA-256, SHA-384, SHA-512) — Dijital imzalarda özet hesaplama için kullanılan kriptografik özet fonksiyonları.

Modern Algoritmalar

OpenPGP uygulamalarının son nesli, RSA ile eşdeğer güvenliği önemli ölçüde daha küçük anahtar boyutlarıyla sunan eliptik eğri kriptografisini (ECC) destekler:

  • Ed25519 — Curve25519 tabanlı bir dijital imza algoritması. Hızlı ve kompakt imzalar üretir. RFC 9580'de önerilir.
  • X25519 (Curve25519 ECDH) — Anahtar değişimi (şifreleme) için kullanılır. Güçlü güvenlik özellikleriyle mükemmel performans sunar.
  • NIST P-256 / P-384 / P-521 — NIST tarafından standartlaştırılmış eliptik eğriler. OpenPGP tarafından desteklenir ancak genellikle Curve25519 tabanlı algoritmalara göre daha az tercih edilir.

KeychainPGP gibi modern araçlar bu çağdaş algoritmaları destekler ve Ed25519 ile X25519 ile anahtar oluşturmayı basit ve doğrudan hale getirir.

PGP'nin Yaygın Kullanım Alanları

  • Güvenli e-posta — Orijinal ve en bilinen kullanım alanı. PGP, e-posta içeriğini şifrelemeye ve özgünlüğünü kanıtlamak için mesajları imzalamaya olanak tanır.
  • Dosya şifreleme — PGP, güvenli depolama veya aktarım için tek tek dosyaları veya tüm arşivleri şifreleyebilir.
  • Yazılım doğrulama — Açık kaynak projeleri düzenli olarak sürümlerini PGP anahtarlarıyla imzalar. Kullanıcılar bir indirmenin özgünlüğünü doğrulamak için bu imzaları kontrol edebilir.
  • Güvenli mesajlaşma — PGP, herhangi bir metin mesajını şifrelemek için kullanılabilir; özellikle uçtan uca şifreleme sunmayan platformlarda faydalıdır.
  • Kimlik doğrulama — PGP anahtar parmak izleri doğrulanabilir dijital kimlikler olarak hizmet eder. GitHub'daki geliştiriciler PGP ile commit'lerini imzalayabilir.
  • Belge imzalama — Hukuki iş akışları bazen inkar edilemezliği sağlamak için PGP imzalarını kullanır.

Günümüzde PGP

Oluşturulmasından otuz yılı aşkın bir süre sonra PGP, mevcut en önemli kriptografik araçlardan biri olmaya devam etmektedir. OpenPGP standardı gelişmeye devam ediyor; RFC 9580 modern eliptik eğri algoritmalarının zorunlu desteği ve AEAD şifreleme modları dahil önemli modernizasyonlar getirmektedir.

PGP araç ekosistemi önemli ölçüde zenginleşmiştir. GnuPG, komut satırı kullanımı için referans uygulama olmaya devam etmektedir. KeychainPGP gibi modern araçlar yerel masaüstü uygulamaları (Windows, macOS, Linux), Android uygulaması, betik yazma için CLI ve tarayıcı içi web uygulaması sunar — hepsi aynı Rust tabanlı Sequoia-PGP motoru üzerine inşa edilmiştir.

PGP'ye Başlarken

PGP şifrelemeye başlamaya hazır mısınız? İşte en iyi sonraki adımlar:

  1. Tarayıcınızda deneyin — Hiçbir şey kurmadan anahtar çifti oluşturmak, mesaj şifrelemek veya imza doğrulamak için KeychainPGP çevrimiçi PGP aracını kullanın.
  2. Başlangıç rehberini okuyun — Kriptografide yeniyseniz, Yeni Başlayanlar İçin PGP rehberimiz sizi adım adım yönlendirir.
  3. Pratik iş akışını öğreninPGP Nasıl Kullanılır rehberimiz anahtar oluşturma, şifreleme ve şifre çözme, anahtar halkanızı yönetme ve en iyi uygulamaları kapsar.
  4. Pano şifrelemeyi anlayın — Metni doğrudan panonuzdan şifrelemek ve şifresini çözmek için pano ile PGP şifrelemeyi keşfedin.
  5. Araçları tanıyın — İş akışınız için doğru aracı seçmek üzere PGP ve GPG arasındaki farkları anlayın.

PGP şifreleme, otuz yılı aşkın süredir hassas iletişimleri korumaktadır. Modern araçlar ve standartlarla, her zamankinden daha erişilebilir hale gelmiştir.