Kod imzalama sürecinde çeşitli hatalarla karşılaşmak yaygındır. Bu rehberde en sık karşılaşılan 10 kod imzalama hatasını, nedenlerini ve adım adım çözümlerini sunuyoruz.
Hata 1: "No certificates were found that met all the given criteria"
Neden: Windows Certificate Store'da uygun bir kod imzalama sertifikası bulunamadı.
Çözüm:
certmgr.mscaçın ve Personal → Certificates altında sertifikanızı kontrol edin- Sertifikanın "Code Signing" intended purpose'a sahip olduğunu doğrulayın
- Özel anahtarın mevcut olduğundan emin olun (sertifika simgesinde anahtar ikonu olmalı)
- Sertifika süresi dolmamış olmalı
Hata 2: "SignerSign() failed (-2147024885/0x8007000b)"
Neden: Dosya formatı imzalamaya uygun değil veya dosya erişim sorunu var.
Çözüm:
- Dosyanın geçerli bir PE (Portable Executable) formatında olduğunu doğrulayın
- Dosyanın başka bir program tarafından kilitlenmediğinden emin olun
- Yönetici yetkisi ile çalıştırmayı deneyin
Hata 3: "The specified timestamp server could not be reached"
Neden: Timestamp sunucusuna erişilemiyor.
Çözüm:
- İnternet bağlantınızı kontrol edin
- Proxy ayarlarını gözden geçirin
- Farklı bir timestamp URL deneyin (DigiCert, Sectigo, GlobalSign)
- Firewall'un timestamp sunucu portunu (80/443) engellememediğinden emin olun
Hata 4: "The signer's certificate is not valid for signing"
Neden: Sertifika, kod imzalama amacı (EKU) için uygun değil.
Çözüm: Sertifikanızın Extended Key Usage alanında Code Signing (1.3.6.1.5.5.7.3.3) değerinin bulunduğundan emin olun. SSL sertifikası ile kod imzalama yapılamaz.
Hata 5: "Access denied" veya "CryptAcquireContext failed"
Neden: USB Token'a erişim sorunu veya CSP yapılandırma hatası.
Çözüm:
- USB Token'ın doğru takılı olduğundan emin olun
- Token sürücülerini güncelleyin
- Token PIN'ini doğru girdiğinizden emin olun
- Token'ı çıkarıp yeniden takın
- SafeNet Authentication Client'ı yeniden başlatın
Hata 6: "The signature is invalid" (Doğrulama hatası)
Neden: İmzalandıktan sonra dosya değiştirilmiş.
Çözüm: İmzalama işleminden sonra dosyayı değiştirmemeniz gerekir. Build sürecinde önce tüm işlemleri tamamlayın, en son adım olarak imzalayın. UPX veya benzeri araçlarla imzalandıktan sonra sıkıştırma yapmayın.
Hata 7: "Certificate chain is not complete"
Neden: Intermediate CA sertifikaları Windows Store'da eksik.
Çözüm:
- CA'nızın intermediate sertifikalarını indirin
certmgr.mscaçın, Intermediate Certification Authorities altına yükleyin- PFX dosyanızın tam zinciri içerdiğinden emin olun
Hata 8: Dual Signing Sorunu (SHA-1 + SHA-256)
Neden: Eski ve yeni sistemlerle uyumluluk için çift imza atılmaya çalışılıyor.
Çözüm: 2026'da SHA-1 desteği büyük ölçüde kaldırıldığından, sadece SHA-256 kullanmanız yeterlidir. Dual signing'e gerek kalmamıştır.
Hata 9: "The file size exceeds the limit" (Büyük dosya imzalama)
Neden: Çok büyük dosyalar (4GB+) imzalama sırasında bellek sorununa yol açabilir.
Çözüm: 64-bit SignTool kullanın. /ph parametresi ile page hash'i etkinleştirin. Çok büyük dosyalarda /p7 ile PKCS#7 detached signature kullanmayı düşünün.
Hata 10: Cloud HSM Bağlantı Hataları
Neden: Cloud HSM servisiyle (KeyLocker, SimplySign) iletişim kurulamıyor.
Çözüm:
- HSM client uygulamasının çalışır durumda olduğunu doğrulayın
- Kimlik doğrulama token'ınızın geçerli olduğundan emin olun
- İnternet bağlantınızı ve proxy ayarlarınızı kontrol edin
- HSM sağlayıcının durum sayfasını kontrol edin (kesinti olabilir)
Genel Sorun Giderme Adımları
signtool sign /debug /v ...ile verbose çıktı alıncertutil -store Myile yüklü sertifikaları listeleyin- Event Viewer'da Application loglarını kontrol edin
- Sertifikanın süresini
certutil -verify cert.cerile doğrulayın
Yorumlar
Henüz yorum yapılmamış. İlk yorumu siz yapın!
Yorum Yaz