자바 카드

정의
자바 카드는 Java 프로그래밍 언어 기반의 애플릿(Applet)을 실행할 수 있도록 설계된 스마트 카드 플랫폼이다. 주로 보안 인증, 결제, 모바일 통신 등 다양한 분야에서 사용되며, Oracle Corporation이 표준을 제정하고 제공한다.

개요
자바 카드는 전통적인 스마트 카드와 달리, 카드 내부에 Java 가상 머신(Java Card Runtime Environment, JCRE)과 운영 체제, 그리고 애플릿을 저장·실행할 수 있는 메모리를 탑재한다. 개발자는 Java Card Development Kit를 이용해 Java 언어(제한된 서브셋)로 애플릿을 작성하고, 이를 카드에 로드하여 동작시킬 수 있다. 카드의 하드웨어 사양은 메모리 용량이 수십 킬로바이트 수준으로 제한적이며, 전원은 리더기로부터 공급되는 전자기 유도 방식으로 얻는다.

어원/유래
‘자바(Java)’는 Sun Microsystems(현 Oracle)에서 개발한 프로그래밍 언어 및 플랫폼 이름이며, ‘카드(card)’는 스마트 카드 자체를 의미한다. 따라서 ‘자바 카드’는 “Java 기반 스마트 카드”라는 의미에서 붙여진 용어이다. 정확한 최초 사용 시기는 1996년 Sun Microsystems가 Java Card 기술을 발표한 시기로 알려져 있다.

특징

구분 내용
플랫폼 Java Card Runtime Environment (JCRE) 및 Java Card API 제공
프로그래밍 언어 Java Card 2.x/3.x 사양에 정의된 제한된 Java 서브셋 사용
보안 공개키 기반 암호화, 대칭키 암호화, 디지털 서명, 보안 도메인(applets) 격리
자원 제약 RAM·EEPROM 용량이 수십 KB 수준, CPU 속도 제한
표준화 ISO/IEC 7816(스마트 카드 물리·통신 규격) 및 ISO/IEC 10536(Java Card) 등과 호환
업데이트 원격으로 애플릿 교체·업그레이드 가능 (Secure Element OTA 등)
응용 분야 신용·체크카드, 모바일 결제, ePassport, SIM 카드, 의료 카드, 기업 인증 등

관련 항목

  • Java – 자바 카드를 구현하는 기반 프로그래밍 언어 및 플랫폼.
  • 스마트 카드 – 전자식 신원 확인·거래용 카드 기술 전체를 포괄하는 용어.
  • Java Card Development Kit (JDK) – 자바 카드 애플릿 개발을 위한 도구 집합.
  • GlobalPlatform – 스마트 카드 및 보안 모듈 관리 표준, 자바 카드와 함께 사용됨.
  • Java ME (Micro Edition) – 제한된 환경을 위한 Java 플랫폼, 자바 카드와 기술적 연관이 있음.
  • ISO/IEC 7816 – 스마트 카드 물리·전기·통신 인터페이스 표준.

※ 본 내용은 공개된 기술 문서와 표준 사양을 기반으로 작성되었으며, 최신 버전의 사양에 따라 세부 내용이 변동될 수 있다.

둘러보기

더 찾아볼 만한 주제