2  Kriptografinin Altın Kuralı: Kerckhoffs Prensibi

  1. yüzyılda telgrafın icadı askerî iletişimi radikal biçimde hızlandırdı; ancak aynı zamanda mesajların düşman tarafından yakalanma riskini de devasa ölçüde artırdı. Savaş alanında taşınması zor olan ve ele geçirildiğinde tüm sistemi çökerten “gizli kod kitaplarına” bir alternatif gerekiyordu.

İşte bu ortamda Hollandalı kriptograf Auguste Kerckhoffs, 1883’te yayımladığı La Cryptographie Militaire adlı makalesinde kriptografi dünyasını kalıcı olarak değiştiren prensibi ortaya koydu.

Tanım 2.1 (Kerckhoffs Prensibi, 1883) Bir şifreleme sisteminin güvenliği, algoritmanın gizliliğine değil, yalnızca anahtarın gizliliğine dayanmalıdır.

Düşman (Eve), kullanılan sistemin tüm iç işleyişini, donanımını ve yazılım kodlarını bilse bile; anahtara sahip olmadığı sürece şifreli metni çözememelidir.

Bu prensip, günümüzde siber güvenlik dünyasında sıklıkla eleştirilen “gizlilikle sağlanan güvenlik” (security through obscurity) yaklaşımının tam zıddıdır. Güvenliği algoritmayı saklayarak sağlamaya çalışmak, algoritma ifşa olduğunda tüm sistemin kalıcı olarak çökmesi anlamına gelir.

İpucu💡 Neden yalnızca anahtarı gizliyoruz?

Bir algoritma ifşa olursa —ki savaşta veya siber dünyada er ya da geç ifşa olur— tüm cihazları, yazılımları ve altyapıyı değiştirmek aylar sürer ve devasa bir maliyet yaratır.

Buna karşılık yalnızca anahtar ifşa olursa, sistemin geri kalanına hiç dokunmadan yeni bir anahtar üreterek güvenliği saniyeler içinde yeniden sağlayabilirsiniz. Kırılganlık (brittleness) ile esneklik (ductility) arasındaki fark tam olarak budur.

2.1 🗣️ Tarihten Çarpıcı Alıntılar

Kerckhoffs’un bu devrimsel fikri, ilerleyen yıllarda kriptografi ve siber güvenlik devleri tarafından kendi sözleriyle yeniden formüle edilmiştir:

“Düşman sistemi biliyor.”

Claude Shannon, bilgi teorisinin kurucusu. Bu söz literatüre Shannon’ın maksimi olarak geçmiştir.

“Sisteminizi, rakiplerinizin onu tüm detaylarıyla bildiğini varsayarak tasarlayın.”

Steven M. Bellovin. NSA’daki standart varsayım, üretilen herhangi bir yeni cihazın bir numaralı seri üretiminin doğrudan Kremlin’e teslim edildiği yönündeydi.

“Her sır, potansiyel bir çöküş noktası yaratır. Sırrın açığa çıkması, sistemin feci şekilde çökmesine neden olur. Açıklık ise sisteme esneklik sağlar.”

Bruce Schneier

2.2 📜 Kerckhoffs’un Altı Temel Kuralı

Kerckhoffs makalesinde yalnızca bu prensibi vermekle kalmamış, aynı zamanda pratik bir askerî şifreleme sisteminin sahip olması gereken altı kuralı da listelemiştir.

NotKerckhoffs’un altı orijinal tasarım kuralı
  1. Sistem matematiksel olarak olmasa bile pratik olarak kırılamaz olmalıdır.
  2. Sistem gizlilik gerektirmemeli ve düşmanın eline geçmesi bir sorun teşkil etmemelidir. (Kerckhoffs prensibi olarak anılan kural budur.)
  3. Anahtar, yazılı notlara ihtiyaç duymadan akılda tutulabilmeli ve taraflarca kolayca değiştirilebilmelidir.
  4. Sistem telgraf iletişimine — günümüzde dijital veri aktarımına — uygulanabilir olmalıdır.
  5. Cihaz taşınabilir olmalı ve kullanımı için birden fazla kişiye ihtiyaç duyulmamalıdır.
  6. Sistem kullanımı kolay olmalı; kullanıcıları uzun kural listelerine veya zihinsel yüke maruz bırakmamalıdır.

Bugün bilgisayarların işlem gücü sayesinde beşinci ve altıncı kurallar (taşınabilirlik ve insan hafızası) şekil değiştirmiş olsa da; ikinci kural, yani Kerckhoffs prensibi, modern kriptografinin tartışılmaz anayasası olmaya devam etmektedir.

Önemli⚠️ Prensibin yaygın bir yanlış okunuşu

Kerckhoffs prensibi, algoritmanın mutlaka yayımlanması gerektiğini söylemez; gizli kalmasına ihtiyaç duyulmaması gerektiğini söyler.

Modern pratikte algoritmalar yine de açık biçimde yayımlanır — çünkü bir şifreleme yönteminin güvenliğine duyulabilecek tek makul gerekçe, onun yıllarca dünyanın dört bir yanındaki kriptanalistler tarafından incelenip kırılamamış olmasıdır. AES ve SHA-3 gibi standartların açık yarışmalarla seçilmesinin sebebi tam olarak budur.