Linux에서 스마트 카드 리더 실행하기

Linux에서 스마트 카드 리더 실행하기

저번에 노트북에서 분리한 스마트 카드 리더가 있습니다. USB를 사용하지만 스마트카드 리더기가 내장되어 있어 케이블을 만드는 데 문제가 없다.

USB 드라이버가 이를 올바르게 인식하는 것 같습니다.

[1370965.148035] usb 1-3.2: new low-speed USB device number 25 using ehci-pci
[1370965.229948] usb 1-3.2: New USB device found, idVendor=08d4, idProduct=0009
[1370965.229962] usb 1-3.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[1370965.229969] usb 1-3.2: Product: Fujitsu Siemens USB Smartcard Reader
[1370965.229976] usb 1-3.2: Manufacturer: OMNIKEY AG

거의 표준적인 Fujitsu Siemens USB 스마트 카드 리더이므로 "Fujitsu Siemens 스마트 카드 USB 2A" 및 "Fujitsu Siemens 스마트 카드 키보드 USB 2A"용 드라이버와 함께 사용해야 합니다. "키보드" 변형이 USB 키보드에 영구적으로 연결된다는 점을 제외하면 둘 다 동일합니다(같은 경우와 마찬가지로).

PC/SC 드라이버가 카드 리더를 인식하지 못합니다. 위에서 언급한 독자가 지원됩니다.쿠시드, 그러나 pcscd공급업체 및 제품 ID로는 리더를 식별할 수 없습니다.

00000286 hotplug_libudev.c:260:get_driver() Looking for a driver for VID: 0x08D4, PID: 0x0009, path: /dev/bus/usb/001/026

(단지 다음 USB 장치로 점프합니다. 결국 모든 USB 장치를 시도한 후 아무 작업도 수행하지 않습니다.)

이제 어떻게 해야 하는지 조언을 듣고 싶습니다. 내가 할 수 있는 유일한 일은 CCID 드라이버 소스 코드를 다운로드하여 크랙을 시도하는 것뿐입니다. 아니면 적어도 그것이 지금 당장 생각할 수 있는 유일한 방법입니다. 제가 시도할 수 있는 다른 것이 있나요?


조금 더 나아갔어오픈 CT:

한 줄의 주석 처리를 제거해야 했습니다 /etc/openct.conf.

driver  cardman {
    ids = {
#       usb:076b/0596, # OMNIKEY CardMan 2020
#       usb:076b/1784, # OMNIKEY CardMan 6020
        usb:08d4/0009, # Fujitsu Siemens SCR USB Reader
    };
};

왜 이러한 운전자 ID가 주석 처리되어 있는지 모르겠습니다 cardman. 아마도 운전자가 아직 실제로 작동하지 않는 것일까요?

어쨌든, 이것으로 나는 뭔가를 얻을 수 있습니다 openct-tool:

$ openct-tool list
  0 OMNIKEY CardMan 2020/6020/6120

간단한 EEPROM 카드를 넣었는데 카드를 감지했지만 읽을 수는 없습니다.

$ openct-tool read
Detected OMNIKEY CardMan 2020/6020/6120
Card present, status changed
failed to reset card

그래서 여전히 작동하지 않습니다. 실제로 ...


이 카드 리더를 지원하는 PC/SC 드라이버가 있었습니다.PCSC-라이트-cm2020그러나 지금은 없어진 것 같습니다.

나는 다운로드했다소스코드 패키지제조업체에서. 아주 오래됐어요. 콘텐츠를 복사했지만 /usr/lib64/pcsc/drivers잘못된 아키텍처용으로 컴파일되었기 때문에 분명히 작동하지 않습니다.

유일한 소스는 컴파일된 커널 모듈이지만 libcm2020.so나에게 필요한 것은 아닙니다 pcscd.

누락된 소스 코드가 있는데 찾을 수 없는 경우 libcm2020.so라이브러리를 컴파일하는 경우 소스 코드를 찾을 수 있는 힌트가 있으면 좋을 것입니다.

답변1

openct-tool read

루트로 시도하거나 더 나은 방법은 USB 카드 리더기의 권한을 확인한 다음(저는 smargo라는 다른 카드 리더기를 사용하고 연결되어 있으므로 ttyUSB0확인함 /dev/ttyUSB0) 다시 수행하는 것입니다 openct-tool read.

관련 정보