Всем привет. Столкнулся с проблемой при настройке клиент банка под Ubuntu 16.04. Все делаю по официальным инструкциям, но Bifit плагин не может прочитать ключ (при нажатии на кнопку "обновить" ключ моргает 1 раз).
Ключ точно исправен - нормально работает на Windows и Fedora.
Поиск решения по форумам ничего не дал и информация там не особо актуальна, поэтому решил создать новую тему.
Ссылки на инструкции:
https://www.rutoken.ru/manual/RutokenOSXUnix.pdfhttps://www.rutoken.ru/support/download/drivers-for-nix/https://ibank.rficb.ru/docs/iBank2_Rutoken_2.0_Guide.pdfhttps://ibank.rncb.ru/docs/Bifit_Signer_Install_Guide.pdfВерсии ПО:
Linux 4.13.0-32-generic #35~16.04.1-Ubuntu x86_64 GNU/Linux
pcscd 1.8.22-1ubuntu1 amd64 (на 1.8.14 то же самое)
libccid 1.4.27-1 amd64 (на 1.4.22-1 то же самое)
libpcsclite1 1.8.22-1ubuntu1 amd64 (на 1.8.10-1 то же самое)
BIFIT Signer 7.2
iBank2Key Driver Linux x64 1.10 (на 1.08 тоже самое)
Firefox ESR 52.6.0 (64-бит)
Firefox 58.0.1
Chromium 64.0.3282.119
Вывод pcscd --foreground --debug --color --apdu:
00000040 hotplug_libudev.c:436:HPAddDevice() Adding USB device: Aktiv Rutoken ECP
00000062 readerfactory.c:1074:RFInitializeReader() Attempting startup of Aktiv Rutoken ECP 00 00 using /usr/lib/pcsc/drivers/ifd-bifit-ccid.bundle/Contents/Linux/libccid.so
00000209 readerfactory.c:949:RFBindFunctions() Loading IFD Handler 3.0
00000053 ifdhandler.c:1750:init_driver() Driver version: 1.4.4
00000042 ifdhandler.c:79:IFDHCreateChannelByName() lun: 0, device: usb:0a89/0030:libudev:0:/dev/bus/usb/006/017
Вывод pcscd --foreground --debug --color --apdu при нажатии "обновить" в клиент банке:
00000005 commands.c:1585:CmdXfrBlockTPDU_T0() T=0: 5 bytes
00000012 -> 000000 6F 05 00 00 00 00 0F 00 00 00 00 CA 01 89 0C
00002568 <- 000000 80 0E 00 00 00 00 0F 00 00 00 01 14 08 01 17 02 03 17 02 05 00 00 90 00
00000035 SW: 01 14 08 01 17 02 03 17 02 05 00 00 90 00
00000010 winscard.c:1640:SCardTransmit() UnrefReader() count was: 2
00000008 winscard_svc.c:682:ContextThread() TRANSMIT rv=0x0 for client 15
00000067 winscard_svc.c:362:ContextThread() Received command: DISCONNECT from client 15
00000012 readerfactory.c:847:RFReaderInfoById() RefReader() count was: 1
00000008 winscard.c:878:SCardDisconnect() Active Contexts: 1
00000006 winscard.c:879:SCardDisconnect() dwDisposition: 0
00000008 winscard.c:1014:SCardDisconnect() powerState: POWER_STATE_GRACE_PERIOD
00000008 ifdhandler.c:401:IFDHGetCapabilities() tag: 0xFB2, usb:0a89/0030:libudev:0:/dev/bus/usb/006/017 (lun: 0)
00000008 winscard.c:1027:SCardDisconnect() Stopping polling thread
00000007 ifdhandler.c:366:IFDHStopPolling() usb:0a89/0030:libudev:0:/dev/bus/usb/006/017 (lun: 0)
00000007 winscard.c:1040:SCardDisconnect() UnrefReader() count was: 2
00000007 winscard_svc.c:547:ContextThread() DISCONNECT rv=0x0 for client 15
00000023 winscard_svc.c:362:ContextThread() Received command: RELEASE_CONTEXT from client 15
00000010 winscard.c:229:SCardReleaseContext() Releasing Context: 0x7C6EC83C
00000008 winscard_svc.c:473:ContextThread() RELEASE_CONTEXT rv=0x0 for client 15
00004553 winscard_svc.c:354:ContextThread() Client die: 15
00000116 winscard_svc.c:1029:MSGCleanupClient() Thread is stopping: dwClientID=15, threadContext @0x5589a2adc360
00000374 winscard_svc.c:1035:MSGCleanupClient() Freeing SCONTEXT @0x5589a2adc360
00381852 eventhandler.c:492:EHStatusHandlerThread() powerState: POWER_STATE_POWERED
05006845 ifdhandler.c:1151:IFDHPowerICC() action: PowerDown, usb:0a89/0030:libudev:0:/dev/bus/usb/006/017 (lun: 0)
00000055 -> 000000 63 00 00 00 00 00 12 00 00 00
00003938 <- 000000 81 00 00 00 00 00 12 00 00 00
00000061 eventhandler.c:480:EHStatusHandlerThread() powerState: POWER_STATE_UNPOWERED
Вывод lsusb -v
Bus 006 Device 014: ID 0a89:0030
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0a89
idProduct 0x0030
bcdDevice 1.00
iManufacturer 1 Aktiv
iProduct 2 Rutoken ECP
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 93
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 11 Chip/SmartCard
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
ChipCard Interface Descriptor:
bLength 54
bDescriptorType 33
bcdCCID 1.00
nMaxSlotIndex 0
bVoltageSupport 1 5.0V
dwProtocols 2 T=1
dwDefaultClock 3580
dwMaxiumumClock 3580
bNumClockSupported 0
dwDataRate 9600 bps
dwMaxDataRate 9600 bps
bNumDataRatesSupp. 0
dwMaxIFSD 254
dwSyncProtocols 00000000
dwMechanical 00000000
dwFeatures 00020840
Auto parameter negotation made by CCID
Short APDU level exchange
dwMaxCCIDMsgLen 271
bClassGetResponse echo
bClassEnvelope echo
wlcdLayout none
bPINSupport 0
bMaxCCIDBusySlots 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 32
Device Status: 0x0000
(Bus Powered)
Вывод pcsc_scan:
PC/SC device scanner
V 1.4.25 (c) 2001-2011, Ludovic Rousseau <ludovic.rousseau@free.fr>
Compiled with PC/SC lite version: 1.8.14
Using reader plug'n play mechanism
Scanning present readers...
0: Aktiv Rutoken ECP 00 00
Tue Feb 6 09:17:25 2018
Reader 0: Aktiv Rutoken ECP 00 00
Card state: Card inserted,
ATR: 3B 8B 01 52 75 74 6F 6B 65 6E 20 44 53 20 C1
ATR: 3B 8B 01 52 75 74 6F 6B 65 6E 20 44 53 20 C1
+ TS = 3B --> Direct Convention
+ T0 = 8B, Y(1): 1000, K: 11 (historical bytes)
TD(1) = 01 --> Y(i+1) = 0000, Protocol T = 1
-----
+ Historical bytes: 52 75 74 6F 6B 65 6E 20 44 53 20
Category indicator byte: 52 (proprietary format)
+ TCK = C1 (correct checksum)
Possibly identified card (using /usr/share/pcsc/smartcard_list.txt):
3B 8B 01 52 75 74 6F 6B 65 6E 20 44 53 20 C1
Rutoken ECP (DS)