OpenPGP card bricked
NIIBE Yutaka
gniibe at fsij.org
Wed Mar 14 05:03:16 CET 2018
Hello,
It seems that your smartcard is not working at all.
Possibly, bricked.
The log says (I removed the timestamp and process name):
> DBG: ccid-driver: CCID submit transfer (83): 0
> DBG: ccid-driver: PC_to_RDR_IccPowerOn:
> DBG: ccid-driver: dwLength ..........: 0
> DBG: ccid-driver: bSlot .............: 0
> DBG: ccid-driver: bSeq ..............: 1
> DBG: ccid-driver: bPowerSelect ......: 0x00 (auto)
> DBG: ccid-driver: [0008] 00 00
The host PC asks the reader (RDR) to power on the smartcard.
> DBG: ccid-driver: CCID: interrupt callback 0
> DBG: ccid-driver: CCID submit transfer again 0
Then, the reader's interrupt transfer notifies to the host for change of
card status. Host keeps the interrupt transfer, so, submit the transfer
to the USB host controller again.
> DBG: ccid-driver: RDR_to_PC_DataBlock:
> DBG: ccid-driver: dwLength ..........: 0
> DBG: ccid-driver: bSlot .............: 0
> DBG: ccid-driver: bSeq ..............: 1
> DBG: ccid-driver: bStatus ...........: 65
> DBG: ccid-driver: bError ............: 254
> DBG: ccid-driver: CCID command failed: CCID timed out while talking to the ICC
The reader responds it fails to power on the smartcard.
> reader slot 0: using ccid driver
> DBG: enter: apdu_connect: slot=0
> DBG: enter: apdu_reset: slot=0
> DBG: ccid-driver: PC_to_RDR_IccPowerOn:
> DBG: ccid-driver: dwLength ..........: 0
> DBG: ccid-driver: bSlot .............: 0
> DBG: ccid-driver: bSeq ..............: 4
> DBG: ccid-driver: bPowerSelect ......: 0x00 (auto)
> DBG: ccid-driver: [0008] 00 00
The host asks again to the reader.
> DBG: ccid-driver: RDR_to_PC_DataBlock:
> DBG: ccid-driver: dwLength ..........: 0
> DBG: ccid-driver: bSlot .............: 0
> DBG: ccid-driver: bSeq ..............: 4
> DBG: ccid-driver: bStatus ...........: 65
> DBG: ccid-driver: bError ............: 254
> DBG: ccid-driver: CCID command failed: CCID timed out while talking to the ICC
Same failure. Host gives up.
> DBG: leave: apdu_reset => sw=0x10009
> DBG: leave: apdu_connect => sw=0x10009
> DBG: enter: apdu_close_reader: slot=0
> DBG: enter: apdu_disconnect: slot=0
> DBG: leave: apdu_disconnect => sw=0x0
> DBG: ccid-driver: PC_to_RDR_IccPowerOff:
> DBG: ccid-driver: dwLength ..........: 0
> DBG: ccid-driver: bSlot .............: 0
> DBG: ccid-driver: bSeq ..............: 5
> DBG: ccid-driver: [0007] 00 00 00
> DBG: ccid-driver: RDR_to_PC_SlotStatus:
> DBG: ccid-driver: dwLength ..........: 0
> DBG: ccid-driver: bSlot .............: 0
> DBG: ccid-driver: bSeq ..............: 5
> DBG: ccid-driver: bStatus ...........: 1
> DBG: ccid-driver: bClockStatus ......: 0x01 (stopped-L)
And the host asks power off. The reader replies.
> DBG: ccid-driver: libusb_cancel_transfer
> DBG: ccid-driver: libusb_handle_events_completed
> DBG: ccid-driver: CCID: interrupt callback 3
The host cancels interrupt transfer which watches card status change.
After the failure of internal CCID driver, it tries PC/SC.
--
More information about the Gnupg-users
mailing list