Farklı ESHS'lere ait e-imza tokenları (E-Güven, TÜRKTRUST) aynı anda takılıyken oluşan sertifika çakışmaları
1 Cevap
Farklı Elektronik Sertifika Hizmet Sağlayıcılarına (ESHS) ait donanımsal token'ların (örneğin biri Aladdin eToken, diğeri Gemalto veya Giesecke+Devrient tabanlı bir kart) aynı işletim sisteminde eşzamanlı olarak kullanılması, Windows Cryptographic API (CAPI) veya PKCS#11 kütüphaneleri seviyesinde sıklıkla Middleware (ara katman yazılımı) çakışmalarına neden olmaktadır. 5070 Sayılı Elektronik İmza Kanunu'na göre oluşturulan bu Nitelikli Elektronik Sertifikalar uluslararası X.509 standartlarına uygun olsa da, donanım sürücülerinin işletim sistemi seviyesinde akıllı kart okuyucu (Smart Card Reader) servislerine kaydolma ve kendilerini önceliklendirme şekilleri farklılık gösterir.
Sertifika ve CSP Çakışmalarını Yönetme ve Çözme Yöntemleri:
- 1. Dinamik PKCS#11 Kütüphanesi Yükleme (Yazılımcılar İçin Önerilen Yöntem): Uygulamanızı geliştiriyorsanız, işletim sisteminin varsayılan CAPI seçimine güvenmek yerine, sistemde takılı olan okuyucuları doğrudan PC/SC (Personal Computer/Smart Card) API'leri (örneğin Java için
javax.smartcardio) ile donanım seviyesinde taramalısınız. Hangi okuyucuda hangi kartın takılı olduğunu (ATR - Answer to Reset değeri üzerinden) tespit ettikten sonra, o karta ait özel PKCS#11 kütüphanesini (DLL/SO dosyasını) dinamik olarak yükleyin (örneğin Akis içinlibakisp11.dll, eToken içineToken.dll, Safenet içincryptoki.dll). Böylece CAPI çakışması yaşanmadan her token tamamen kendi izole middleware'i üzerinden doğrudan okunur. - 2. Windows CSP ve Minidriver Yapılandırması (Son Kullanıcılar ve Sistem Yöneticileri İçin): Eğer tarayıcı veya hazır bir masaüstü uygulaması kullanıyorsanız ve sistemde CAPI/CNG (Cryptography Next Generation) devreye giriyorsa, çakışmanın ana nedeni genellikle her iki token'ın da aynı Base CSP'yi üzerine yazmaya çalışması veya çakışan Smart Card Minidriver'ları kullanmasıdır. Çözüm olarak, her iki ESHS'nin güncel middleware yazılımlarını (örneğin ArkSigner, E-Tuğra yönetim araçları veya E-Güven'in yazılımları) kurarken "Sadece Minidriver yükle" seçeneklerine dikkat edin. Her token'ın kendi CSP'sini sistemin Kayıt Defterine (Registry üzerinden
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Providerkonumuna) düzgün kaydettiğinden emin olun. - 3. Kullanıcı Arayüzünde Açık Seçim Sunma: Uygulama içerisinde imzalama anında, sadece sistemin ilk bulduğu sertifikayı seçmek (auto-select) yerine, Windows sertifika deposundaki (Windows Certificate Store - MY Store) tüm geçerli kişisel sertifikaları okuyup listeleyen bir arayüz diyaloğu sunun. Sertifikaların Issuer (Veren ESHS), Subject ve Serial Number (Seri No) bilgilerini ekrana basarak kullanıcıya "E-Güven Sertifikanız" veya "TÜRKTRUST Sertifikanız" şeklinde bilinçli bir seçim yaptırın ve imzalama işlemini seçilen sertifikanın private key referansı üzerinden tetikleyin.
Bu adımlar titizlikle uygulandığında çoklu token çakışmalarının, donanım tanımama sorunlarının ve yanlış CSP seçimlerinin tamamen önüne geçilmiş olacak, kesintisiz bir e-imza deneyimi sağlanacaktır.