hce 예제

다음은 HostApduService 매니페스트 선언의 예입니다: NFC 리더기는 SEL_REQ 명령을 전송하여 HCE 장치를 선택할 수 있습니다. HCE 디바이스의 SEL_RES 응답은 적어도 6비트(0x20) 세트를 가지며, 이는 디바이스가 ISO-DEP를 지원한다는 것을 나타냅니다. 다른 비트가 설정될 수 있기 때문에 HCE 장치와 상호 작용하려는 독자는 6비트만 명시적으로 확인하고 전체 SEL_RES를 0x20 값과 비교하지 않아야 합니다. Android 4.4는 호스트 기반 카드 에뮬레이션(HCE)을 도입했습니다. HCE에서 NFC 터미널은 안드로이드 응용 프로그램이 실행 중인 호스트 CPU(예: 인텔® 아톰™ 프로세서)로 직접 데이터를 라우팅하며, 보안 요소는 프로세스에 관여하지 않습니다(그림 2). 따라서 `ID = A000002471001`이 있는 파일 또는 Applet를 선택하는 예제는 다음과 같습니다: `00 A4 0400 07 A00000002471001 00` 해당 apduservice.xml 파일의 예는 apduservice.xdu 파일에 이 메타 데이터 태그입니다. 두 개의 독점 적 인 ED를 포함하는 단일 AID 그룹 선언이있는 이러한 파일의 예는 아래에 표시됩니다 : 모든 휴대 전화에는 SIM 카드를 읽는 데 사용되는 적어도 연락처 스마트 카드 판독기가 있습니다. 대부분의 안드로이드 폰은 NFC 리더의 형태로 비접촉식 스마트 카드 리더를 가지고, 우리는 사용하는 방법에 대한 예를 줄 것이다. 예를 들어 일부 카테고리(예: 결제)의 경우 사용자는 Android 설정 UI에서 기본 서비스를 선택할 수 있습니다. 다른 범주의 경우 충돌 시 어떤 서비스를 호출해야 할지 항상 사용자에게 문의하는 정책이 될 수 있습니다.

특정 범주에 대한 충돌 해결 정책을 쿼리하려면 getSelectionModeForCategory()를 참조하십시오. SW1 및 SW2: 상태 바이트이며, 때로는 첫 번째 바이트가 실제 상태를 알려줄 수 있고 두 번째 바이트가 해당 상태에 대한 자세한 정보를 지정할 수 있기 때문에 구분됩니다. 예를 들어 잘못된 PIN으로 “PIN 확인”이라는 명령을 사용하는 경우 카드는 X가 남은 시도 수인 `63 CX` 상태를 반환합니다. HCE 서비스에서 보낼 데이터를 안전하게 저장하고 검색하려면 예를 들어 앱의 데이터를 다른 앱에서 격리하는 Android 응용 프로그램 샌드박스를 사용할 수 있습니다. Android 보안에 대한 자세한 내용은 보안 도움말을 참조하세요. 이 자산의 크기는 260×96 dp이어야 하며 android:apduServiceBanner 속성을 태그에 추가하여 메타 데이터 XML 파일에 지정할 수 있습니다. 예는 아래와 같습니다: 사용자가 NFC 리더에 장치를 탭하면 Android 시스템은 NFC 리더가 실제로 대화하고 싶어하는 HCE 서비스를 알아야 합니다. ISO/IEC 7816-4 사양이 들어오는 위치: 응용 프로그램 ID(AID)를 중심으로 응용 프로그램을 선택하는 방법을 정의합니다. AID는 최대 16바이트로 구성됩니다. 기존 NFC 리더 인프라에 대한 카드를 에뮬레이션하는 경우 해당 독자가 찾고 있는 AID는 일반적으로 잘 알려져 있고 공개적으로 등록되어 있습니다(예: 비자 및 마스터카드와 같은 결제 네트워크의 AID). CLA: 클래스 바이트는 명령이 ISO7816을 어느 정도 준수하는지 나타내기 위해 사용되며, 이 경우 어떤 종류의 “보안 메시징”이 사용될 것인지를 나타냅니다.

간단하게 하기 위해 예제에서는 이 바이트를 사용하지 않으며 항상 `00`을 전달합니다. . 이것은 분명히 우리의 첫 번째 에뮬레이션을 만드는 단지 모형입니다.

Comments are closed