2014-09-08 5 views
-1

MIFARE Classic 4k가 포함 된 SmartMX 칩 (정확히는 smartmx-m3b.03.d3-NX212A)이 포함 된 하이브리드 스마트 카드가 있습니다. 카드의 MIFARE 부분에 액세스하려고 시도했지만 Android에서이 작업을 수행하는 동안 android.nfc.tech.MifareClassic 태그에 액세스하는 것은 쉬운 일이 아니지만 Windows에서 수행하는 방법을 모릅니다. 이 카드의 MIFARE Classic에 액세스하기 위해 PCSC Reader 특정 명령을 찾아야합니까? 아니면 MIFARE classic 용 명령을 랩핑하기 위해 SmartMX 칩 특정 APDU를 찾아야합니까?SmartMX Hybrid Card - MIFARE Classic에 액세스하는 방법

+0

카드가 하이브리드 카드 (즉, 접촉 인터페이스가있는 SmartMX가 MIFARE Classic 비접촉 칩과 함께 하나의 플라스틱 카드로 포장 됨) 또는 이중 인터페이스 카드 (예 : MIFARE Classic 에뮬레이션이있는 SmartMX 및 연락처와 비접촉식 인터페이스)? –

+0

Windows에서 카드에 액세스 할 때 연락처 또는 비접촉식 인터페이스를 통해 MIFARE Classic 메모리에 액세스 하시겠습니까? –

+0

@MichaelRoland 이중 인터페이스 카드입니다. SmartMX와 MIFARE 클래식 에뮬레이션. 비접촉식 인터페이스를 통해 MIFARE Classic에 액세스하여 다양한 판독기 및 운영 체제에서 카드에 액세스하려고합니다. –

답변

2

이 값은 사용중인 스마트 카드 판독기에 따라 크게 달라집니다. 무엇보다도 먼저 mictter이 지적했듯이 독자는 MIFARE Classic 기술을 지원해야합니다. 기본적으로 일부 NXP 칩셋을 기반으로하는 비접촉식 리더 또는 MIF Classic 판독기 기술에 대한 NXP의 라이센스 정책에도 불구하고 MIFARE 클래식 리더 기능).

다음으로 독자가 자동 ​​프로토콜을 활성화하면 문제가 발생할 가능성이 높습니다. 지금까지 사용했던 대부분의 PS/SC 판독기 (예 : HID Omnikey 5321)는 자동으로 사용 가능한 프로토콜 계층까지 프로토콜 활성화를 수행합니다. 비접촉식 인터페이스를 통해 MIFARE Classic 및 ISO-DEP (ISO/IEC 14443-4, ISO/IEC 7816-4 APDU가 위에 있음) 프로토콜을 모두 제공하는 SmartMX 칩의 경우 독자가 자동으로 ISO-DEP를 수행한다는 것을 의미합니다 링크 활성화. 이것은 효과적으로 MIFARE 클래식 프로토콜 (MF 클래식 프로토콜은 하위 레이어에서 작동 함 -> ISO/IEC 14443-3)을 통해 액세스를 비활성화합니다.

  • 이 한쪽에 APDU의를 구사하고, MIFARE 클래식 메모리 영역 반대편에 1에 액세스하는 애플릿을 사용

    따라서, 당신은 기본적으로 두 가지 옵션이 있습니다. NXP는이 비접촉식 인터페이스에 사용할 수 있거나 사용하지 않을 수있는 기성품 애플릿을 제공합니다. 또한 NXP는 자신의 애플릿 내에서 사용할 수있는 API 을 MIFARE Classic 메모리 영역 에 액세스 할 수 있도록 제공합니다. 따라서 사용자 정의 애플릿을 작성할 수 있습니다.

  • MIFARE 클래식 카드로 카드에 액세스하려면 스마트 카드 판독기를 ISO/IEC 14443-3 프로토콜 계층에서만 활성화하십시오. 독자에 따라 이것은 사소하고 불가능한 것일 수 있습니다. 앞서 언급 한 HID Omnikey 리더와 같은 일부 독자는 레지스트리 설정 (또는 HID Workbench 도구를 통해)을 통해 자동 프로토콜 활성화 수준을 변경하는 것을 지원합니다. 일부 독자 (예 : 이전 버전 인 ACR122U)는 활성화 된 프로토콜 계층을 자유롭게 선택할 수있는 비접촉식 카드의 수동 열거 및 활성화를 수행 할 수 있습니다. 현재 버전의 PC/SC 사양 (일부/많은 독자가 해당 기능을 지원하지 않을 수 있음을 의미)은 비접촉식 카드의 수동 활성화를 사용자 정의 프로토콜까지 강제 실행하는 데 사용할 수있는 SWITCH_PROTOCOL 명령을 정의합니다 레벨 (이 명령의 작동 방법은 PC/SC 2 specification, Part 3, Supplemental Document 2 - Contactless ICCs 참조).


1) 읽기 중 "MIFARE 클래식 메모리 영역"또는 "가상 MIFARE 클래식 카드". 그 칩 종류에 대한 많은 정보를 찾지 못했습니다. 이 칩과 소프트웨어가 새로 추가 된 방식에 따라 MIFARE Classic 메모리 영역 대신 MIFARE4Mobile 사양의 새 버전에 따라 진정한 가상 MIFARE 클래식 카드를 관리 할 수 ​​있을지는 의문입니다.

) 사용중인 SmartMX가 JCOP OS를 실행하며 임의의 Java Card 애플릿을 설치할 수 있다고 가정합니다.

+0

매우 상세한 답변을 보내 주셔서 감사합니다. 나는 내 자신을 조금 파고 들고 프로토콜 선택이 카드의 SAK 값에 기초한다는 것을 알았다. –

+0

누구나 SCL3711로 프로토콜 스위치를 수행 할 수있는 솔루션을 찾았습니까? – Bebeoix

0

MIFARE Classic은 독점 기술이므로 독자가 지원해야합니다. 예를 들어 NXP에서 만든 NFC 컨트롤러가있는 Android 휴대 전화 만 액세스 할 수 있습니다 (내 Nexus 5에 Broadcom이 있으므로 android.nfc.tech.MifareClassic에 액세스 할 수 없음).

적절한 해결 방법은 MIFARE4Mobile입니다. GlobalPlatform APDU를 JavaCard 애플릿 (일반적으로 NXP에서 제공하지만 다른 구현이 있음)에 보낼 수 있으며 애플릿 "Service Manager"는 카드의 MIFARE Classic 요소를 제어합니다.

+0

두 독자 모두 MIFARE Classic을 지원합니다. 하지만 저는 카드를 _ 스마트 카드 대신 MIFARE 클래식으로 취급하는 방법을 독자에게 알리는 방법을 모릅니다. –

+0

독자가 독자의 문서를 봐야 할까 봐 걱정됩니다. 일부 독자는 APDU와 유사한 명령을 사용하고 다른 API는 독점 API를 사용합니다. 내가 아는 한, PCSC에는 Mifare Classic 명령이 없습니다. – mictter

+0

내 독자는 MIFARE 클래식 카드 용 APDU 명령과 비슷하지만 하이브리드 카드에서는 작동하지 않습니다. 분명히 하이브리드 카드로, 모든 명령은 카드의 _smarter_ 칩에 의해 처리됩니다. –