WIPIVERSE

호스트 카드 에뮬레이션

호스트 카드 에뮬레이션(HCE, Host Card Emulation)은 이동통신 기기의 중앙 프로세서(호스트)에서 NFC(Near Field Communication) 카드를 소프트웨어적으로 에뮬레이션하는 기술이다. HCE를 사용하면 별도의 보안 칩(예: SE, Secure Element)을 장착하지 않아도 스마트폰이나 태블릿이 실물 카드와 동일한 방식으로 NFC 리더기와 통신할 수 있다.

정의 및 원리

  • 호스트 기반: 전용 하드웨어 보안 요소가 아닌, 운영체제와 애플리케이션 수준에서 카드 기능을 구현한다.
  • ISO/IEC 14443 등 기존 접촉식 스마트 카드 프로토콜을 소프트웨어적으로 재현한다.
  • 모바일 기기가 NFC 리더기와 교신할 때, 리더기가 전송하는 명령(APDU)을 호스트에서 처리하고, 응답을 반환한다.

주요 이력

연도 사건
2013 구글이 Android 4.4 (KitKat)에서 HCE 기능을 공개, 공식 API 제공
2014‑ 이후 모바일 결제, 교통 카드, 액세스 제어 등 다양한 서비스에 적용 확대

사용 사례

  • 모바일 결제: 구글 페이, 삼성 페이 등에서 신용·직불 카드 정보를 HCE를 통해 전송.
  • 교통 카드: 도시철도·버스 등에서 교통 요금 결제용 가상 카드 제공.
  • 액세스 제어: 사무실 출입통제, 호텔 객실키 등에서 HCE 기반 인증 활용.

기술적 구성

  1. AID(애플리케이션 식별자): 리더기가 요구하는 서비스에 따라 지정된 식별자를 통해 해당 애플리케이션을 선택.
  2. APDU(응용 프로토콜 데이터 단위): 카드와 리더기 사이에 교환되는 명령 및 응답 구조.
  3. Android HCE API: HostApduService 클래스를 상속하여 구현하며, onCreate, processCommandApdu, onDeactivated 등 메서드로 동작을 제어.

보안 및 제한 사항

  • 키 관리: 암호화 키와 인증 데이터는 애플리케이션 레벨에서 안전하게 저장·관리해야 함.
  • 취약점: 호스트 환경이 직접 접근 가능하므로, 물리적·소프트웨어적 공격에 대비한 추가 보안 조치가 필요.
  • 표준 호환성: ISO/IEC 14443‑4, EMVCo 등 국제 표준을 따르는 서비스와 호환성을 유지해야 한다.

어원

  • Host: 컴퓨팅에서 하드웨어·소프트웨어가 동작하는 중심 시스템을 의미.
  • Card: 물리적 스마트 카드(접촉식·비접촉식)와 동등한 기능을 제공하는 논리적 개념.
  • Emulation: 실제 하드웨어가 수행하는 동작을 소프트웨어로 모방한다는 의미.

활용 가능 맥락

  • 모바일 앱 개발 시 NFC 기반 서비스 구현이 필요할 때 HCE API를 활용한다.
  • 기존 물리 카드 인프라를 디지털 전환하고자 하는 기업·기관에서 비용 절감 및 운영 효율성을 위해 채택한다.

주의: 본 설명은 공개된 기술 문서와 공개된 사례에 기반하고 있으며, 특정 제품·서비스에 대한 상세 구현 내용은 각 제조사·서비스 제공자의 공식 문서를 참고해야 한다.

둘러보기

더 찾아볼 만한 주제

    전체 문서 보기