jfreesteel icon indicating copy to clipboard operation
jfreesteel copied to clipboard

eidviewer ne iscitava licnu kartu

Open MedicMomcilo opened this issue 8 years ago • 2 comments

Operativni sistem: Fedora 22 i686 Citac kartica: Omnikey Cardman 4000 PCMCIA (openct) Java: java-1.8.0-openjdk-1.8.0.45-40.b14.fc22.i686

Nakon nekog vremena program prikaze gresku "Greska pri citanju: sun.security.smartcardio.PCSCException: SCARD_E_NOT_TRANSACTED"

Izlaz komande java -jar eidviewer-1.1.jar:

$ java -jar eidviewer-1.1.jar 
[Thread-1] INFO net.devbase.jfreesteel.Reader - EidCard is null, wait for insertion
[Thread-1] INFO net.devbase.jfreesteel.Reader - CONNECT
[Thread-1] INFO net.devbase.jfreesteel.EidCard - Card inserted
[Thread-1] INFO net.devbase.jfreesteel.EidCard - exclusive
[Thread-1] INFO net.devbase.jfreesteel.EidCard - exclusive free
[Thread-1] ERROR net.devbase.jfreesteel.EidCard - Card error
javax.smartcardio.CardException: sun.security.smartcardio.PCSCException: SCARD_E_NOT_TRANSACTED
    at sun.security.smartcardio.ChannelImpl.doTransmit(ChannelImpl.java:219)
    at sun.security.smartcardio.ChannelImpl.transmit(ChannelImpl.java:90)
    at net.devbase.jfreesteel.EidCard.selectFile(EidCard.java:179)
    at net.devbase.jfreesteel.EidCard.selectFile(EidCard.java:175)
    at net.devbase.jfreesteel.EidCardApollo.readElementaryFile(EidCardApollo.java:55)
    at net.devbase.jfreesteel.EidCard.readEidInfo(EidCard.java:295)
    at net.devbase.jfreesteel.viewer.EidViewer.inserted(EidViewer.java:265)
    at net.devbase.jfreesteel.Reader.notifyCardListener(Reader.java:193)
    at net.devbase.jfreesteel.Reader.access$6(Reader.java:191)
    at net.devbase.jfreesteel.Reader$1.notifyListeners(Reader.java:159)
    at net.devbase.jfreesteel.Reader$1.run(Reader.java:139)
    at java.lang.Thread.run(Thread.java:745)
Caused by: sun.security.smartcardio.PCSCException: SCARD_E_NOT_TRANSACTED
    at sun.security.smartcardio.PCSC.SCardTransmit(Native Method)
    at sun.security.smartcardio.ChannelImpl.doTransmit(ChannelImpl.java:189)
    ... 11 more
[Thread-1] INFO net.devbase.jfreesteel.Reader - EidCard not null, wait for removal

Debug log tokom ubacivanja kartice pcscd --foreground --debug:

*pokrenuta aplikacija*

33941289 winscard_msg_srv.c:253:ProcessEventsServer() Common channel packet arrival
00000044 winscard_msg_srv.c:265:ProcessEventsServer() ProcessCommonChannelRequest detects: 6
00000010 pcscdaemon.c:134:SVCServiceRunLoop() A new context thread creation is requested: 6
00032878 winscard_svc.c:331:ContextThread() Authorized PC/SC client
00000028 winscard_svc.c:335:ContextThread() Thread is started: dwClientID=6, threadContext @0x87e4e38
00000022 winscard_svc.c:353:ContextThread() Received command: CMD_VERSION from client 6
00000011 winscard_svc.c:365:ContextThread() Client is protocol version 4:3
00000009 winscard_svc.c:385:ContextThread() CMD_VERSION rv=0x0 for client 6
00002216 winscard_svc.c:353:ContextThread() Received command: ESTABLISH_CONTEXT from client 6
00000145 winscard.c:216:SCardEstablishContext() Establishing Context: 0x7E6E616E
00000009 winscard_svc.c:446:ContextThread() ESTABLISH_CONTEXT rv=0x0 for client 6
00000912 winscard_svc.c:353:ContextThread() Received command: CMD_GET_READERS_STATE from client 6
00000158 winscard_svc.c:353:ContextThread() Received command: CMD_GET_READERS_STATE from client 6
00524539 winscard_svc.c:353:ContextThread() Received command: CMD_GET_READERS_STATE from client 6
00019693 winscard_svc.c:353:ContextThread() Received command: CMD_GET_READERS_STATE from client 6
00000076 winscard_svc.c:353:ContextThread() Received command: CMD_WAIT_READER_STATE_CHANGE from client 6

*ubacena kartica*

15074029 eventhandler.c:404:EHStatusHandlerThread() powerState: POWER_STATE_POWERED
00000026 eventhandler.c:419:EHStatusHandlerThread() Card inserted into OpenCT 00 00
00000011 winscard_svc.c:780:MSGSignalClient() Signal client: 6
00000006 winscard_svc.c:783:MSGSignalClient() SIGNAL rv=0x0 for client 6
00000030 Card ATR: 3B B9 18 00 81 31 FE 9E 80 73 FF 61 40 83 00 00 00 DF 
00000053 winscard_svc.c:353:ContextThread() Received command: CMD_GET_READERS_STATE from client 6
00000172 winscard_svc.c:353:ContextThread() Received command: CMD_GET_READERS_STATE from client 6
00002162 winscard_svc.c:353:ContextThread() Received command: CONNECT from client 6
00033730 winscard_svc.c:484:ContextThread() Authorized client for 'OpenCT 00 00'
00000030 winscard.c:258:SCardConnect() Attempting Connect to OpenCT 00 00 using protocol: 3
00000009 readerfactory.c:768:RFReaderInfo() RefReader() count was: 1
00000007 winscard.c:353:SCardConnect() powerState: POWER_STATE_INUSE
00000008 prothandler.c:110:PHSetProtocol() Attempting PTS to T=1
00002308 winscard.c:432:SCardConnect() Active Protocol: T=1
00000031 winscard.c:452:SCardConnect() hCard Identity: 4cbfa668
00000010 winscard.c:513:SCardConnect() UnrefReader() count was: 2
00000011 winscard_svc.c:498:ContextThread() CONNECT rv=0x0 for client 6
00002260 winscard_svc.c:353:ContextThread() Received command: CMD_GET_READERS_STATE from client 6
00000072 winscard_svc.c:353:ContextThread() Received command: STATUS from client 6
00000026 readerfactory.c:795:RFReaderInfoById() RefReader() count was: 1
00000018 winscard.c:1314:SCardStatus() UnrefReader() count was: 2
00000017 winscard_svc.c:606:ContextThread() STATUS rv=0x0 for client 6
00047099 winscard_svc.c:353:ContextThread() Received command: BEGIN_TRANSACTION from client 6
00001482 readerfactory.c:795:RFReaderInfoById() RefReader() count was: 1
00000028 winscard.c:1105:SCardBeginTransaction() Status: 0x00000000
00000007 winscard.c:1108:SCardBeginTransaction() UnrefReader() count was: 2
00000008 winscard_svc.c:550:ContextThread() BEGIN_TRANSACTION rv=0x0 for client 6
00001196 winscard_svc.c:353:ContextThread() Received command: TRANSMIT from client 6
00009114 readerfactory.c:795:RFReaderInfoById() RefReader() count was: 1
00000033 winscard.c:1610:SCardTransmit() Send Protocol: T=1

*greska se pojavljuje*

66110945 ifdwrapper.c:550:IFDTransmit() Card not transacted: 612
00000029 winscard.c:1635:SCardTransmit() Card not transacted: 0x80100016
00000008 winscard.c:1655:SCardTransmit() UnrefReader() count was: 2
00000009 winscard_svc.c:653:ContextThread() TRANSMIT rv=0x80100016 for client 6
00000649 winscard_svc.c:353:ContextThread() Received command: END_TRANSACTION from client 6
00000149 readerfactory.c:795:RFReaderInfoById() RefReader() count was: 1
00000014 winscard.c:1248:SCardEndTransaction() Status: 0x00000000
00000007 winscard.c:1251:SCardEndTransaction() UnrefReader() count was: 2
00000029 winscard_svc.c:566:ContextThread() END_TRANSACTION rv=0x0 for client 6

Izlaz komande pcsc_scan:

$ pcsc_scan 
PC/SC device scanner
V 1.4.23 (c) 2001-2011, Ludovic Rousseau <[email protected]>
Compiled with PC/SC lite version: 1.8.13
Using reader plug'n play mechanism
Scanning present readers...
0: OpenCT 00 00

Sun Aug  9 15:10:41 2015
Reader 0: OpenCT 00 00
  Card state: Card inserted, 
  ATR: 3B B9 18 00 81 31 FE 9E 80 73 FF 61 40 83 00 00 00 DF

defined(@array) is deprecated at /usr/lib/perl5/vendor_perl/Chipcard/PCSC.pm line 69.
    (Maybe you should just omit the defined()?)
ATR: 3B B9 18 00 81 31 FE 9E 80 73 FF 61 40 83 00 00 00 DF
+ TS = 3B --> Direct Convention
+ T0 = B9, Y(1): 1011, K: 9 (historical bytes)
  TA(1) = 18 --> Fi=372, Di=12, 31 cycles/ETU
    129032 bits/s at 4 MHz, fMax for Fi = 5 MHz => 161290 bits/s
  TB(1) = 00 --> VPP is not electrically connected
  TD(1) = 81 --> Y(i+1) = 1000, Protocol T = 1 
-----
  TD(2) = 31 --> Y(i+1) = 0011, Protocol T = 1 
-----
  TA(3) = FE --> IFSC: 254
  TB(3) = 9E --> Block Waiting Integer: 9 - Character Waiting Integer: 14
+ Historical bytes: 80 73 FF 61 40 83 00 00 00
  Category indicator byte: 80 (compact TLV data object)
    Tag: 7, len: 3 (card capabilities)
      Selection methods: FF
        - DF selection by full DF name
        - DF selection by partial DF name
        - DF selection by path
        - DF selection by file identifier
        - Implicit DF selection
        - Short EF identifier supported
        - Record number supported
        - Record identifier supported
      Data coding byte: 61
        - Behaviour of write functions: write AND
        - Value 'FF' for the first byte of BER-TLV tag fields: invalid
        - Data unit in quartets: 2
      Command chaining, length fields and logical channels: 40
        - Extended Lc and Le fields
        - Logical channel number assignment: No logical channel
        - Maximum number of logical channels: 1
    Tag: 8, len: 3 (status indicator)
      LCS (life card cycle): 00 (No information given)
      SW: 0000 (Error not defined by ISO 7816)
+ TCK = DF (correct checksum)

Possibly identified card (using /usr/share/pcsc/smartcard_list.txt):
3B B9 18 00 81 31 FE 9E 80 73 FF 61 40 83 00 00 00 DF
    Serbian Identity Card
    This is the new Serbian biometric identity card (every adult cityzen
    must have). The chip contains owners picture, name, date and place
    of birth, current address, unique ID number and fingerprint.
^C

MedicMomcilo avatar Aug 09 '15 14:08 MedicMomcilo

Pre nego što pogledam detaljnije, da li se greška javlja i sa nekim drugim čitačem ili drugom karticom na istom čitaču?

grakic avatar Aug 10 '15 17:08 grakic

Nažalost, nemam drugih čitača. Ista greška se javlja sa još dve lične karte.

MedicMomcilo avatar Aug 10 '15 22:08 MedicMomcilo