HSM (Hardware Security Module), kriptografik anahtarları güvenli donanım içinde üreten, saklayan ve imza işlemini içeride yapan cihazdır. HSM tabanlı kod imzalamada özel anahtar asla dışa aktarılamaz; imzalama aracı yalnızca özeti HSM'ye gönderir, imzayı geri alır.
Neden HSM?
- CA/B Forum kuralları kod imzalama özel anahtarının uygun standartlarda bir donanım modülünde korunmasını gerektirir.
- Anahtar çalınması, dosyadan kopyalanma riskine karşı en güçlü savunmadır.
- Erişim günlüğü ve yetkilendirme denetimi sağlar.
Erişim yöntemleri
- PKCS#11: Birçok HSM ve token bu arayüzü sunar; Java ve OpenSSL tabanlı araçlar kullanır.
- CNG/KSP (Windows): Üreticinin Key Storage Provider'ı kurulur; signtool doğrudan kullanır.
- Ağ HSM veya bulut HSM: İmza isteği ağ üzerinden HSM'ye gider.
signtool ile KSP kullanımı
signtool sign /fd SHA256 /tr http://time.certum.pl /td SHA256 ^
/f sertifika.cer /csp "<KSP_ADI>" /kc "<ANAHTAR_KONTEYNERI>" uygulama.exe
KSP adı ve konteyner adı HSM üreticisinin belgelerinde verilir. Sertifika depodaysa /sha1 parmak izi yöntemi de kullanılabilir.
CI/CD için ipuçları
- İmzalama yetkisini yalnızca onaylı yayın hattına verin.
- HSM parolasını gizli yönetim aracında tutun, düz metin betiklere yazmayın.
- İmzalama işlemini tek bir güvenli imzalama sunucusunda toplayın.
Sık sorunlar
Sürücü (KSP/PKCS#11 kütüphanesi) sürümü uyumsuzsa veya HSM erişim oturumu kapanmışsa imza başarısız olur. İmza hatalarında HSM istemcisinin günlüklerine bakın.
Ne zaman tercih edilir?
Yüksek hacimli imzalama yapan, denetim ve izlenebilirlik gerektiren kurumlar için HSM en uygun çözümdür. Bir kişinin ara sıra imzaladığı küçük projelerde ise token veya bulut HSM daha az kurulum gerektirir. Karar verirken imza hacmi, ekip büyüklüğü ve otomasyon ihtiyacını birlikte değerlendirin.
Kendi HSM'nizi yönetmek istemiyorsanız USB token ve kargo gerektirmeyen bulut HSM seçeneğini Certum Cloud kod imzalama sayfasında inceleyebilir, genel seçenekler için kod imzalama sayfasına bakabilirsiniz.
Özet: HSM, özel anahtarı cihaz dışına çıkarmadan imzalama yapılmasını sağlar ve CA/B Forum beklentilerini karşılar. Erişim yönetimi ve günlükleme ile birlikte kurumsal imzalamanın temel yapı taşıdır.