✍️
E-İmza Rehberi Bireysel ve Kurumsal Elektronik İmza Portalı

Farklı ESHS'lere ait e-imza tokenları (E-Güven, TÜRKTRUST) aynı anda takılıyken oluşan sertifika çakışmaları

Sistemimizde hem E-Güven hem de TÜRKTRUST'tan alınmış farklı nitelikli elektronik sertifikalar barındıran donanımsal tokenlar (akıllı kart okuyucular) kullanılıyor. İki cihazı aynı anda tek bir bilgisayarın USB portlarına taktığımızda, imza uygulaması varsayılan Cryptographic Service Provider (CSP) olarak sadece birini görüyor veya sertifika okuma işleminde ciddi bir çakışma yaşanıyor. İki farklı firmanın token'ı aynı makinede takılıyken doğru sertifikanın seçimi ve CSP çakışmasını mimari olarak nasıl önleyebiliriz?
Durum: Çözüldü Kategori: Soru-Cevap

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çin libakisp11.dll, eToken için eToken.dll, Safenet için cryptoki.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\Provider konumuna) 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.

Yanıtlayan
Av. Selin B.