2012-05-21 13 views
18

Zajmuję się tworzeniem aplikacji, która używa SUNMSCAPI do uzyskiwania dostępu do karty elektronicznej (identyfikator elektroniczny) i pobierania niektórych certyfikatów.Ponowne użycie magazynu kluczy Java podczas uzyskiwania dostępu do karty inteligentnej w systemie Windows

Do pewnego czasu mogłem utworzyć magazyn kluczy i podpisać listę plików bez ponownego tworzenia magazynu kluczy, ale teraz mogę podpisać tylko jeden plik na raz.

Podczas podpisywania listy plików pierwszy plik jest podpisany poprawnie; przy podpisywaniu drugiego pliku pojawia się okno dialogowe "Wstaw kartę inteligentną", a używana karta inteligentna jest wyszarzona.

Czy ktoś widział to zachowanie?

+1

Czy używasz wielowątkowości? Może to być również Windows lub inna aplikacja, która uniemożliwia aplikacji uzyskanie (pełnego) dostępu do karty. –

+0

Aha, witamy w stackoverflow. –

+0

Ponieważ masz bardzo mało odpowiedzi, być może mógłbyś zamieścić kilka przykładów kodu, aby pokazać, z czym pracujesz? Możesz również chcieć odpowiedzieć na pytanie z @owlstead. –

Odpowiedz

3

Tak, widziałem to już wcześniej.

Opracowywałem front-end i oprogramowanie pośrednie do portugalskiej legitymacji do wykorzystania online, a jedną konkretną cechą było móc podpisać więcej niż jeden plik (podpis elektroniczny) i to było dokładnie to, co mieliśmy!

Model zabezpieczeń na kartach inteligentnych zapewnia, że ​​jedno uwierzytelnienie trwa tylko jedno działanie. Podpisanie pliku to jedna czynność, więc musieliśmy buforować dane uwierzytelniające (kod PIN) i przechwytywać procedurę uwierzytelniania dla każdego pliku, który chcemy podpisać.

+1

Może być tak, że to nam poprawna odpowiedź. Należy zauważyć, że kontrola dostępu do operacji podpisywania jest specyficzna dla karty, a czasem nawet konfigurowana przez użytkownika. –

Powiązane problemy