Donanım(sal) Güvenlik Modülü Nedir? Nasıl seçilmelidir?

Thales N-HSM ürünü.

HSM yani Hardware Security Module güzel Türkçemize “Donanım Güvenlik Modulü” veya “Donanımsal Güvenlik Modülü” olarak geçmiş. Yazı içerisinde, kulağımı tırmalamasına rağmen, ben de alışılageldik şekilde kullanacağım, çünkü galat-ı meşhur, lugat-ı fasihten evladır. Kulağımı tırmalamasının nedeni, Türkçeleştirilmiş şeklinin anlamsız olması. Aslında “Güvenli Donanım Modülü” gibi bir çeviri anlam bakımından daha uygun düşerdi. Çünkü “ne modülü?” diye sorduğunuzda “güvenlik modülü” cevabı kabul edilebilir; fakat baştaki “donanım” kullanışsız kalıyor. Türkçe’de -sel, -sal kullanımı zaten yanlış bir durum.

Dil-Anlam bilgisi sorunlarını(kendim de çok dikkatli değilim maalesef) bir kenara bırakıp HSM nedir onu inceleyelim.

Donanımsal Güvenlik Modülü’nün ne olduğunu anlamak için biraz tarihe bakmak yerinde olacaktır. İngilizlerin, Almanları övüyormuş gibi görünüp, kendilerini övmek için muhteşem bir kripto cihazı olarak lanse ettikleri “Enigma”‘yı anlatarak konuma giriş yapacağım.

Alan Turing’in hayatı eşliğinde, İngilizlerin kriptoanaliz faaliyetlerini konu edinen film.

“Enigma” aslında muhteşem bir şifreleme cihazı değildi. Operatörlerin zorlanacağı prosedürler içeriyordu.

Lorenz SZ40

Kısmen, protokolün gizliliğine dayanan bir yapısı vardı. Protokol gizliliği, algoritmanın çalışma gizliliği, cihazın çalışma protokolü ve en nihayetinde; cihazın, bütün güvenliği nasıl sağladığı ile ilgili bir bütünü kapsıyor. Yani “Enigma” cihazlarından birini ele geçirseniz ve onu ayarlamak için kullanılan “codebook”‘u edinirseniz ve ayrıca operatörlerin güvenlik prosedürlerini sıkı bir şekilde uygulamadığının farkına varırsanız-ki vardılar-, o zaman şifreli metinleri kırılabilirsiniz. Bir de Enigma basılan harfin aynısını kapsayacak şekilde şifreleme yapmıyordu. Bu da güvenliği düşüren bir unsur. Çünkü bir harf 26 karakter değil de 25 karakterden biri olabiliyor. Enigma’yı yapanlar da bu faaliyetlerin farkında olduklarından protokol değiştirmiş, cihazı zamanla güncellemişler. Hatta üst güvenlik gerektiren durumlarda Lorenz’i kullanmışlar.

Her halükarda yeni hazırlanan protokol de istihbarat çalışması yapılarak elde edilebilecek bir şey. Ayrıca Almanların düzenli bir millet oluşu da şifre çözmeyi kolaylaştırdı. (Hala düzenliler, aşağıdaki video’dan görebilirsiniz.)

Çünkü gönderilen her şifreli metin, dilekçe formatı gibi bir formatta gidiyordu. Tarih bilgisi, hava durumu bilgisi ve “Hitler’e selam” şeklinde başlayan metinler düşünün. Bunlar dışında zayıf işletim prosedürleri uygulayan Alman askerleri de zayıf halkaydı. İngilizlere, tüm bunların yanında bir de Polonyalılar yardımcı oldular. (Hatta İngilizler’den önce “Bomba” isminde bir makine de yaptılar. Alan Turing ve arkaşdaşları onların cihazını esas aldı (Filmler ve kitaplarda Polonyalıların ölümcül derecede önemli katkılarına çok az yer ayrılır). Nitekim “Enigma” şifreleme cihazları İngiltere’nin eline geçmişti ve bunlardan, onlarcasını yapıp birleştirerek “Bombe” cihazını yaptılar. Cihaz, gizlilik gerekçesiyle daha sonra yok edildi; fakat Bletchley Park’ta bir rekonstrüksiyon mevcut. İngiltere’ye giderseniz mutlaka Londra yakınlarındaki BP’yi parkı ziyaret edin.

Bombe böyle görünüyordu.

Konumuza tekrar dönersek, kısmi veya tam protokol gizliliği, güvenliği zayıflattığı için gözden düştü (Aslında Enigma Kerchoff prensibine uygun tasarlanmaya çalışıldı fakat operatöre yüklenen sorumluluklar işi bozuyordu). Bunun yerine açık protokol, gizli anahtar prensibi benimsendi (Kerckhoff). Bundan sonra protokol bilinse bile anahtar bilinmeden şifreli metin çözülememeliydi. Bugünün ticari algoritmalarının tamamı açık protokoldür. Şifreleme cihazları da bu şekilde evrildiler. Anahtarı saklamak en önemli faaliyet haline geldi.

HSM’ler de bu eğilimin son halkasını oluşturuyorlar. HSM’lerin de vazifeleri burada ortaya çıkmaktadır: Anahtarları ilelebet muhafaza ve müdafaa etmek, kriptografik fonksiyonları güvenli bir alanda icra etmek ve icrayı hızlı gerçekleştirmek.

HSM seçmek için bu temel özellikleri kullanabiliriz. Burada kritik kısım, tarihten de gördüğümüz üzere anahtarların muhafazası ve müdafaası. Bunun için HSM cihazları kurcalamaya karşı duyarlı bir şekilde üretilir. Birisi fiziksel olarak cihazın içini açmaya çalıştığında anahtarlar otomatik olarak kullanışsız hale gelir. Bu özelliği klavuzlarda “tamper resistant” olarak okursunuz. HSM’lerin hızlı çalışması gerektiği zaten söylenmişti bunun için kullanılan ölçü birimi “Signing Transactions Per Second” kısaca TPS’tir. TPS olarak söylenen değere dikkat etmek gerekiyor çünkü, artık kullanımı tavsiye edilmeyen, RSA 1024’e göre imzalama hızı kastediliyor. Örneğin; Thales Ncipher 6000 diyorsa buradaki 6000’e kadar, 1024 bit anahtar uzunluğu kullanarak RSA imza atıyor demektir. Bu ölçü bir ihtiyaç ölçüsü olmaktan çıkmış artık HSM’leri karşılaştırma ölçüsü haline gelmiştir. Son olarak da desteklenen kripto fonksiyonlara bakabiliriz. Burada Elliptic Curve desteği önemli(özellikle NIST eğrileri). Asimetrik şifreleme(şifrelediğiniz ve çözdüğünüz anahtar farklı) için RSA’in uzun anahtar boylu olanları da mutlaka desteklenmeli(Örn. 4096). Simetrik şifreleme(şifrelediğiniz ve çözdüğünüz anahtar aynı) için AES desteğine bakılmalı. Ayrıca modları da önemli. ECB mod artık geçerliliğini yitirmiştir. Bir de bu şifreleme fonksiyonlarının kullanılmasını sağlayan yazılım arayüzleri vardır. HSM’lerin hepsi PKCS11 arayüzünü desteklemektedir. Tüm işlemlerinizi bu arayüz sayesinde yaptırabilirsiniz. Bunun dışında Java için JCA/JCE(JCE, JCA’nın uzantısıdır) ve Windows için CAPI(Crypto API) arayüz desteklerini de cihazınızda isteyebilirsiniz. Bu arayüzler dışında bir de fiziksel bağlantı arayüzleri mevcuttur. İhtiyaca göre PCI Express HSM veya Network HSM alabilirsiniz. Bunların iletişim yolları farklıdır. Biri ekran kartı gibi PCI-e arayüzünü kullanırken diğeri adı üstünde, ağı kullanır.

Temel seçim parametrelerini yukarıda irdeledik. Bunlar ihtiyaçlarınıza göre değişebilir. Bunlar dışında önemli bir konu da FIPS 140-2 ve ISO-19790 gibi sertifikalara sahip olmak(min seviye 3). Bunlar alacağınız cihazın, fiziksel olarak güvenliğinin sağlandığını sertifikalar. Genelde FIPS 140-2 şartnamelerde kendine daha fazla yer bulur. ISO 19790 nisbeten yeni çıkmış bir standarttır. Yaygın değildir fakat daha güncel ve güvenilirdir.

Konuyla ilgili bir sonraki yazımda HSM’lerin daha derinine ineceğiz ve doğru HSM’i seçmek için gerekli olan maddelere bakacağız. Bunun için de teknik raporlardan faydalanacağız.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.