Windows'ta dağıtılan yazılım, Authenticode imzasıyla yayıncısını kanıtlar. Süreç dört aşamadır: sertifika, araç, imzalama, doğrulama.
1. Sertifika ve anahtar
Uygulama ve kurulum dosyaları için OV çoğu zaman yeterlidir; sürücü imzalama gerekiyorsa EV düşünülür. Özel anahtar token ya da bulut HSM'de bulunur. Seçenekler için kod imzalama sertifikalarına bakın.
2. Araç kurulumu
SignTool, Windows SDK içinde gelir. Visual Studio kullanıyorsanız "Windows SDK Signing Tools for Desktop Apps" bileşeni yeterlidir. Bulut sertifikası kullanıyorsanız sağlayıcının istemcisini de kurun.
3. İmzalama
signtool sign /fd SHA256 /tr http://timestamp.digicert.com /td SHA256 /a uygulama.exe
/fd: dosya özet algoritması/trve/td: RFC 3161 zaman damgası sunucusu ve algoritması/a: uygun sertifikayı otomatik seçer
4. Doğrulama
signtool verify /pa /v uygulama.exe
Ayrıca Dosya Özellikleri > Dijital İmzalar sekmesinden imza ve zaman damgasını görebilirsiniz.
İmzalama sırası
- Önce içerdiği exe ve dll dosyalarını imzalayın.
- Sonra kurulum paketini (msi/exe) oluşturun.
- En son paketin kendisini imzalayın.
SmartScreen notu
İmza tek başına SmartScreen uyarılarını anında kaldırmayı garanti etmez; itibar, sertifika türü ve dosyanın yaygınlığıyla ilişkilidir. OV sertifikalarda itibar zamanla oluşur, EV'de süreç genellikle daha hızlıdır.
Sık sorunlar
- "No certificates were found": token/bulut istemcisi bağlı değil veya yanlış sertifika seçimi.
- Zaman damgası hatası: sunucuya erişim yok; başka bir TSA URL'si deneyin.
Kısa kontrol listesi
- SHA-256 özet algoritmasını kullandım mı?
- Zaman damgası ekledim mi?
- Önce içeriği, sonra paketi imzaladım mı?
- İmzalı dosyayı temiz bir makinede çalıştırıp uyarıyı kontrol ettim mi?
Bulut HSM ile token kullanmadan imzalamak için Certum bulut kod imzalama sayfasına göz atabilirsiniz.