KR100615890B1 - 스마트 카드 운영체제의 패치 방법 - Google Patents

스마트 카드 운영체제의 패치 방법 Download PDF

Info

Publication number
KR100615890B1
KR100615890B1 KR1020040103150A KR20040103150A KR100615890B1 KR 100615890 B1 KR100615890 B1 KR 100615890B1 KR 1020040103150 A KR1020040103150 A KR 1020040103150A KR 20040103150 A KR20040103150 A KR 20040103150A KR 100615890 B1 KR100615890 B1 KR 100615890B1
Authority
KR
South Korea
Prior art keywords
patch
smart card
operating system
state
code
Prior art date
Application number
KR1020040103150A
Other languages
English (en)
Other versions
KR20060064338A (ko
Inventor
송호근
주재형
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Priority to KR1020040103150A priority Critical patent/KR100615890B1/ko
Publication of KR20060064338A publication Critical patent/KR20060064338A/ko
Application granted granted Critical
Publication of KR100615890B1 publication Critical patent/KR100615890B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10009Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
    • G06K7/10198Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves setting parameters for the interrogator, e.g. programming parameters and operating modes
    • G06K7/10227Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves setting parameters for the interrogator, e.g. programming parameters and operating modes loading programming parameters or programs into the interrogator, e.g. for configuring the interrogator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Electromagnetism (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Stored Programmes (AREA)

Abstract

스마트 카드 운영체제중 보완이 필요한 함수만을 패치 가능하도록 하고, 이러한 패치로 인한 보안의 취약성을 해결하기 위하여, 스마트 카드 운영체제의 함수중 임의의 함수를 패치 대상 함수로 선정하고, 선정된 패치 대상 함수와 해당 위치 정보를 매핑시킨 패치 함수 테이블을 설정하며, 패치 대상 함수를 보완한 패치 코드 및 패치 코드의 위치 정보를 다운로드하고, 이렇게 다운로드된 패치 코드의 위치 정보로 패치 함수 테이블을 갱신하며, 갱신된 패치 함수 테이블을 참조하여 다운로드된 패치 코드를 패치하는 스마트 카드 운영체제의 패치 방법이 제공된다.
스마트 카드, 운영 체제, 패치, 자바 카드

Description

스마트 카드 운영체제의 패치 방법{Method for patching smart card operating system}
도 1은 본 발명의 일 실시예에 따른 스마트 카드 운영체제의 패치 방법의 개략 흐름도.
도 2는 도 1의 스마트 카드 운영체제의 패치 방법의 패치 실행 단계를 나타낸 흐름도.
도 3은 본 발명에 따른 스마트 카드의 패치 허용 상태 및 전환 가능성을 개략적으로 도시한 상태도.
도 4(a) 및 도 4(b)는 본 발명의 일 실시예에 따라 패치 코드 및 상기 패치 코드의 위치 정보를 전송하기 위한 프로토콜인 APDU(Application Protocol Data Unit)의 구조도.
도 5는 본 발명에 따른 스마트 카드의 EEPROM 메모리 구조도.
도 6(a)는 패치 대상 함수의 간접 호출 메커니즘의 개략 구성도이며, 도 6(b)는 상기 간접 호출 메커니즘의 구현 흐름도.
본 발명은 스마트 카드 운영체제의 패치 방법에 관한 것으로서, 보다 상세하게는 스마트 카드 운영체제중 보완이 필요한 함수만을 패치 가능하도록 하며, 이러한 패치로 인한 보안의 취약성을 해결하기 위한 스마트 카드 운영체제의 패치에 관한 것이다.
스마트 카드는 일반적인 신용카드와 그 크기와 모양이 매우 유사하나, 카드 자체에 프로세서를 내장하고 있어서 일정 수준의 정보 저장과 처리 능력을 갖는다. 이러한 스마트 카드는 독립적인 전원공급장치, 출력장치, 입력장치 등을 가지지 않으므로, 외부 세계와의 통신을 위해서는 CAD(Card Acceptance Device)나 카드리더라 불리는 장치를 이용한다. 이러한 스마트 카드는 연산 능력에 따라 메모리 카드, 마이크로프로세서 카드, CAD 장치와의 접속 방법에 따라 접촉식, 비접촉식 등으로 구분된다. 이러한 스마트 카드의 대표적인 2가지 응용분야는 비밀 정보의 저장과 인증 작업의 수행이라 할 수 있다. 스마트 카드는 자체적인 정보의 저장 능력과 카드 자체의 휴대성으로 인하여 효과적인 비밀정보의 저장 매체로 사용될 수 있으며, 자체적인 계산 능력으로 인하여 인증 작업을 수행할 수 있다.
스마트 카드는 CPU, ROM, EEPROM, RAM, 시리얼 포트 등을 내장하는 단일 반도체 칩에 의해서 동작한다. 운영체제가 저장되는 ROM은 칩 내부의 하나의 구성요소로서, 운용체제 보완이 필요할 경우에는 스마트 카드의 칩은 다시 제작되어야 하는 바, 이에 따른 시간, 비용, 기회 손실이 매우 크다.
스마트 카드 운영체제를 카드로 제작하여 사용자에게 배포하는데 개략적인 과정은 다음과 같다. 우선, 스마트 카드 운영체제를 개발하고, 스마트 카드 반도체 칩을 제작하며, 제작된 반도체 칩을 패키징하게 되며, 그리고 나서, 카드에 내장된 운용체제와 API를 이용하여 카드 응용 서비스 제공업자가 다양한 분야에서 적합한 형태로 프로그래밍이 가능한 환경을 제공하기 위한 "화이트 카드" 형태로 제작한 후, 인증 작업을 실시하게 된다.
만약, 운영체제 패치가 없을 경우에는, 카드 제작 완료 후에 운영체제 보완이 필요한 경우에, 상기에서 살펴본 스마트 카드 제작과정을 다시 반복해야하는 바, 추가 비용 및 기회 손실이 발생하게 된다.
본 발명은 상술한 종래의 문제점을 극복하기 위한 것으로서, 본 발명의 목적은 스마트 카드 운영체제의 요구 사항 변경, 인증 요건 미흡 또는 결함 등으로 인하여 스마트 카드 운영체제의 보완이 필요한 경우에, 스마트 카드의 재제작없이 기존 카드의 운영체제를 패치하여 재활용하고, 패치에 따른 보안성을 강화한 스마트 카드 운영체제의 패치 방법을 제공하는 것이다.
상기 본 발명의 목적을 달성하기 위한 본 발명의 스마트 카드 운영체제의 패치 방법에 따르면, (a) 패치 대상 함수와 해당 위치 정보를 매핑시킨 패치 함수 테이블을 구성하는 단계; (b) 패치 대상 함수를 보완한 패치 코드 및 패치 코드의 위치 정보를 다운로드하는 단계; (c) 다운로드된 패치 코드의 위치 정보로 패치 함수 테이블을 갱신하는 단계 및 (d) 갱신된 패치 함수 테이블을 참조하여 다운로드된 패치 코드가 패치되는 단계를 포함하는 것을 특징으로 한다.
상기 패치 함수 테이블은 상기 위치 정보를 참조하여, 해당 패치 대상 함수 또는 패치 코드를 간접 호출하는 것을 특징으로 한다.
상기 (a)단계는 (a1) 상기 스마트 카드가 패치 허용 상태인지를 판단하여, 만약 패치 허용 상태가 아닌 경우에는 상기 스마트 카드를 패치 허용 상태로 전환시키는 단계를 더 포함하는 것을 특징으로 한다.
상기 본 발명에 따른 스마트 카드 운영체제의 패치 방법은 (e) 상기 스마트 카드를 패치 불허용 상태로 전환시키는 단계를 더 포함하는 것을 특징으로 한다.
상기 (a1)단계의 스마트 카드의 패치 허용 상태는 스마트 카드 프레임워크가 디스에이블(disable)인 상태인 것을 특징으로 한다.
상기 스마트 카드의 패치 불허용 상태는 스마트 카드 프레임워크가 인에이블(enable)인 상태인 것을 특징으로 한다.
상기 스마트 카드의 패치 불허용 상태는 상기 스마트 카드의 패치 허용 상태로의 전환 가능 및 전환 불가능을 선택적으로 설정할 수 있는 것을 특징으로 한다.
상기 선정된 패치 대상 함수의 해당 위치 정보 또는 상기 패치 코드의 위치 정보는 상기 스마트 카드의 메모리 어드레스인 것을 특징으로 한다.
상기 패치 코드 및 패치 코드의 위치 정보인 메모리 어드레스는 상기 스마트 카드 운영체제의 EEPROM에 저장되는 것을 특징으로 한다.
상기 패치 대상 함수를 보완한 패치 코드 및 상기 패치 코드의 위치 정보는 APDU(Application Protocol Data Unit)를 통하여 다운로드되는 것을 특징으로 한다.
상기 패치 함수 테이블을 구성하는 단계는 상기 패치 함수 테이블이 EEPROM 상에 초기화 되었는지 판단한 후, 만약 초기화 않은 경우 ROM상에 구성된 패치 함수 테이블을 EEPROM에 복사하는 것을 특징으로 한다.
상기 스마트 카드 운용체제는 스마트 카드 애플리케이션과 상호 호환이 가능한 개방형 스마트 카드 플랫폼이거나 상호 호환이 불가능한 폐쇄형 스마트 카드 플랫폼인 것을 특징으로 한다.
상기 개방형 스마트 카드 플랫폼은 자바 카드인 것을 특징으로 한다.
상기 본 발명에 따른 스마트 카드 운영체제의 패치 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체가 제공된다.
이하, 본 발명의 실시예를 첨부한 도면을 참조하여 설명하기로 한다.
도 1을 참조하여, 본 발명의 일 실시예에 따른 스마트 카드 운영체제의 패치 방법의 개략 흐름도를 살펴보면, 이하와 같다.
우선, 스마트 카드를 초기화하는 과정을 수행한다(S110). 스마트 카드의 초기화 과정은 레지스터 초기화, 스택 포인터(Stack Pointer) 초기화, ROM 초기화, 시리얼 포트의 오픈 등의 과정들을 통하여 이루어진다.
스마트 카드가 초기화되면, 패치 대상 함수의 위치 정보를 매핑시킨 패치 함수 테이블을 구성하는 과정을 수행한다(S120). 상기 패치 함수 테이블을 초기화하는 과정은 우선, 상기 패치 함수 테이블이 스마트 카드의 EEPROM상에 초기화 되었는지 확인하고, 만약 초기화 되어 있지 않다면 스마트 카드의 ROM상의 기본 패치 함수 테이블을 EEPROM으로 복사한다. 이 후 패치 대상 함수는 상기 EEPROM상의 패 치 함수 테이블에 의해 간접적으로 호출된다.
이렇게 구성된 패치 함수 테이블의 위치 정보를 참조하여 상기 패치 대상 함수가 간접 호출된다. 간접 호출 메커니즘에 대해서는 이하의 도 6에서 상세히 살펴본다.
그리고 나서, 스마트 카드가 패치 허용 상태에 놓여있는지를 판단하게 된다(S130). 판단 결과, 스마트 카드가 패치 불허용 상태에 있는 경우에는, 상기 스마트 카드를 패치 허용 상태로 전환시키는 과정을 수행한다(S140). 본 실시예에서, 스마트 카드의 패치 허용 상태는 스마트 카드 프레임워크가 디스에이블(disable)인 상태를 의미하며, 만약 스마트 카드가 자바 카드라면, JCRE(Java Card Runtime Environment; 자바 카드 수행환경)이 초기화되지 않은 상태를 의미한다.
만약, 스마트 카드가 패치 허용 상태에 있는 경우라면, 보완된 패치 코드 및 상기 패치 코드의 위치 정보를 다운로드하여 패치를 실행하는 과정을 수행한다(S150). 이와 같이, 패치를 실행하는 과정은 이하의 도 2에서 상세히 언급된다.
패치 실행이 완료되면, 스마트 카드를 패치 불허용 상태로 전환시키는 과정을 수행하여(S160), 패치로 인하여 취약하게된 보안을 강화하게 된다.
본 실시예에서, 상기 스마트 카드의 패치 불허용 상태는 스마트 카드 프레임워크가 인에이블(enable)인 상태인 의미하며, 이러한 패치 불허용 상태는 스마트 카드의 패치 허용 상태로의 전환이 가능 상태 및 전환이 불가능한 상태를 선택적으로 설정할 수 있게 된다. 그 결과, 패치로 인하여 취약하게된 보안이 강화된다.
도 2는 도 1의 스마트 카드 운영체제의 패치 방법의 패치 실행 단계(S150)를 구체적으로 나타낸 흐름도이다.
보완된 패치 코드 및 상기 패치 코드의 위치 정보를 다운로드하는 과정을 수행한다(S151). 본 실시예에서, 상기 패치 대상 함수를 보완한 패치 코드 및 상기 패치 코드의 위치 정보는 스마트 카드의 통신 언어인 APDU(Application Protocol Data Unit)를 통하여 다운로드된다. 그러나, 상기 APDU만으로 한정되는 것은 아니다.
상기 다운로드된 패치 코드 및 위치 정보를 스마트 카드의 EEPROM에 저장하는 과정을 수행한다(S152). 본 실시예에서, 상기 선정된 패치 대상 함수의 해당 위치 정보 또는 상기 패치 코드의 위치 정보는 상기 스마트 카드의 메모리 어드레스를 의미하나, 이에 한정되지 않는다.
그리고 나서, 기설정된 패치 함수 테이블의 데이터를 갱신하는 과정 즉, 패치 함수 테이블에 매핑된 위치 정보를 다운로드된 패치 코드의 위치 정보로 갱신하는 과정을 수행한다(S153).
상기 153과정에서 갱신된 패치 함수 테이블의 위치 정보를 참조하여, 종래의 함수가 아닌 다운로드되어 EEPROM에 저장되어 있는 보완된 패치 코드를 간접 호출하는 과정을 수행한다(S154). 그리고 나서, 상기의 과정들을 통하여 패치 수행이 완료된다(S155).
도 3은 본 발명에 따른 스마트 카드의 패치 허용 상태 및 전환 가능성을 개략적으로 도시한 상태도이다.
상기 도 3에는 패치 허용 여부 및 상태 전환 가능성에 따른 스마트 카드의 3 가지 상태가 도시된다. 상기 3가지 상태는 초기화 전(前) 상태, 초기화 상태 및 배포(release) 상태로 구분된다.
상기 초기화 전 상태는 스마트 카드 운영체제의 패치 허용 상태이며, 상기 배포 상태 및 초기화 상태는 스마트 카드 운영체제의 패치 불허용 상태이다.
상기 초기화 전 상태는 초기화 상태 및 배포 상태로 전환이 가능하며, 상기 초기화 상태 역시 초기화 전 상태 및 배포 상태로 전환이 가능하다. 반면에, 배포 상태는 어떠한 상태로도 전환될 수 없다.
상기 도 1에서도 설명한 바와 같이, 스마트 카드의 패치 허용 상태(즉, 초기화 전 상태)는 스마트 카드 프레임워크가 디스에이블(disable)인 상태를 의미하며, 만약 스마트 카드가 자바 카드라면, JCRE(Java Card Runtime Environment; 자바 카드 수행환경)이 초기화되지 않은 상태를 의미한다. 또한, 상기 스마트 카드의 패치 불허용 상태는 스마트 카드 프레임워크가 인에이블(enable)인 상태인 의미하며, 이러한 패치 불허용 상태는 스마트 카드의 패치 허용 상태로의 전환이 가능 상태(즉, 초기화 상태) 및 전환이 불가능한 상태(즉, 배포 상태)를 선택적으로 설정할 수 있게 된다.
도 4(a) 및 도 4(b)는 본 발명의 일 실시예에 따라 패치 코드 및 상기 패치 코드의 위치 정보를 전송하기 위한 프로토콜인 APDU(Application Protocol Data Unit)의 구조도이다.
스마트 카드의 통신 언어인 APDU는 ISO 7816에 정의되어 있으며, 스마트 카드는 호스트 애플리케이션이 주는 명령(Command APDU)을 기준으로 동작하고, 이에 반응하는 응답(Response APDU)을 전송한다.
이러한 명령(Command APDU)은 상기 도 4(a) 및 (b)와 같은 구조를 가진다. 기본적으로 헤더(Header)와 몸체(Body)로 구분하는데 반드시 헤더에 명령어와 해당 명령어의 입력 값(parameter)을 정의한다. 또한 각 값들은 16진수로 구성되어 있으며, 참고로 각 값들이 의미하는 내용은 다음과 같다.
클래스 바이트-1바이트
CLA(Class Byte)는 카드에 전송하는 명령어 집합을 정의하고 있으며 ISO 7816-4에 자세하게 서술되어 있다.
명령어 바이트-1바이트
CLA에 의해 분류된 명령어는 명령어 바이트(Instruction byte : INS)에서 정의한다. 이 명령어 바이트는 클래스 바이트에서 ISO 7816에 정의한 표준안에 따라 사용자가 특정 애플리케이션을 위해 정의할 수 있으며 자바 카드 애플릿 역시 이 표준안을 준수하여 원하는 명령어를 구성할 수 있다.
P1-1바이트와 P2-1바이트
이 값은 INS에서 사용하는 입력 값이다. 명령어에 입력 값을 주어서 특정 명령어를 실행하도록 한다.
Lc(Length of Command data): 전송할 데이터 크기
명령을 카드에 보낼 때 보낼 데이터의 크기를 의미하며 이 크기만큼 데이터 필드(Data field)에 값을 넣는다.
Data : Lc 값
명령을 실행할 때 필요한 데이터 내용이 포함된다.
상기 도 4(a)에서 보완된 패치 코드는 Data에 포함되며, 상기 도 4(b)에서 상기 패치 코드의 위치 정보인 인덱스 및 어드레스는 Data에 포함된다.
도 5는 본 발명에 따른 스마트 카드의 EEPROM 메모리 구조도이다. 상기 도 5에 도시된 스마트 카드의 EEPROM 메모리에는 패치 간접 참조 코드, 패치 함수 테이블, 비휘발성 변수, 패치 코드 및 캡 파일용과 인스턴스(instance)용 힙(heap)을 포함한다.
상기 패치 코드 및 캡 파일용과 인스턴스용 힙의 크기는 가변적이며, 나머지는 고정된다. 상기 도 1 및 도 2에서 살펴본 바와 같이, 보완된 패치 코드 및 그에 대한 위치 정보는 이러한 스마트 카드의 EEPROM에 저장된다.
도 6(a)는 패치 대상 함수의 간접 호출 메커니즘의 개략 구성도이며, 도 6(b)는 상기 간접 호출 메커니즘의 구현 흐름도이다.
상기 도 6(a)를 살펴보면, 함수 A의 실행중 함수 B를 호출하게 되면, 직접적으로 함수가 호출되지 않고, 패치 함수 테이블을 참조하여, 상기 패치 함수 테이블에 매핑되는 위치 정보에 저장되어 있는 함수 B를 간접적으로 호출하게 된다.
상기 도 6(b)는 상기 도 6(a)에 도시된 메커니즘을 흐름도로 나타낸 것으로서,S610은 함수 A실행중에 패치 대상 함수 B를 호출하는 과정이고, S620은 상기 패치 대상 함수 B의 위치 정보를 패치 함수 테이블에서 참조하는 과정이며, S630은 패치 대상 함수 B가 간접 호출되는 과정이다.
이상에서 설명한 것은 본 발명에 따른 스마트 카드 운영체제의 패치 방법의 예시적인 실시예에 불과한 것으로서, 본 발명은 상기한 실시예에 한정되지 않고, 이하의 특허청구범위에서 청구하는 바와 같이, 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변경 실시가 가능한 범위까지 본 발명의 기술적 정신이 있다고 할 것이다.
상술한 바와 같이, 본 발명의 스마트 카드 운영체제의 패치 방법에 따르면, 스마트 카드 운영체제의 요구 사항 변경, 인증 요건 미흡 또는 결함 등으로 인하여 스마트 카드 운영체제의 보완이 필요한 경우에도 스마트 카드의 재제작없이 기존 카드의 운영체제를 패치하여 재활용할 수 있게 된다.

Claims (14)

  1. 스마트 카드 운영체제의 패치(patch) 방법에 있어서,
    (a) 패치 대상 함수와 해당 위치 정보를 매핑시킨 패치 함수 테이블을 구성하는 단계;
    (b) 상기 패치 대상 함수를 보완한 패치 코드 및 상기 패치 코드의 위치 정보를 다운로드하는 단계;
    (c) 상기 다운로드된 상기 패치 코드의 위치 정보로 상기 패치 함수 테이블을 갱신하는 단계 및
    (d) 상기 갱신된 패치 함수 테이블을 참조하여 상기 다운로드된 패치 코드가 패치되는 단계를 포함하는 것을 특징으로 하는 스마트 카드 운영체제의 패치 방법.
  2. 제 1항에 있어서, 상기 패치 함수 테이블은 상기 위치 정보를 참조하여, 해당 패치 대상 함수 또는 패치 코드를 간접 호출하는 것을 특징으로 하는 스마트 카드 운영체제의 패치 방법.
  3. 제 2항에 있어서, 상기 (a)단계는
    (a1) 상기 스마트 카드가 패치 허용 상태인지를 판단하여, 만약 패치 허용 상태가 아닌 경우에는 상기 스마트 카드를 패치 허용 상태로 전환시키는 단계를 더 포함하는 것을 특징으로 하는 스마트 카드 운영체제의 패치 방법.
  4. 상기 제 3항에 있어서, 상기 스마트 카드 운영체제의 패치 방법은
    (e) 상기 스마트 카드를 패치 불허용 상태로 전환시키는 단계를 더 포함하는 것을 특징으로 하는 스마트 카드 운영체제의 패치 방법.
  5. 제 3항에 있어서, 상기 (a1)단계의 스마트 카드의 패치 허용 상태는 스마트 카드 프레임워크가 디스에이블(disable)인 상태인 것을 특징으로 하는 스마트 카드 운영체제의 패치 방법.
  6. 제 4항에 있어서, 상기 스마트 카드의 패치 불허용 상태는 스마트 카드 프레임워크가 인에이블(enable)인 상태인 것을 특징으로 하는 스마트 카드 운영체제의 패치 방법.
  7. 제 6항에 있어서, 상기 스마트 카드의 패치 불허용 상태는 상기 스마트 카드의 패치 허용 상태로의 전환 가능 및 전환 불가능을 선택적으로 설정할 수 있는 것을 특징으로 하는 스마트 카드 운영체제의 패치 방법.
  8. 상기 제 1항에 있어서, 상기 선정된 패치 대상 함수의 해당 위치 정보 또는 상기 패치 코드의 위치 정보는 상기 스마트 카드의 메모리 어드레스인 것을 특징으로 하는 스마트 운용체제의 패치 방법.
  9. 상기 제 8항에 있어서, 상기 패치 코드 및 패치 코드의 위치 정보인 메모리 어드레스는 상기 스마트 카드 운영체제의 EEPROM에 저장되는 것을 특징으로 하는 스마트 카드 운용체제의 패치 방법.
  10. 제 1항에 있어서, 상기 패치 대상 함수를 보완한 패치 코드 및 상기 패치 코드의 위치 정보는 APDU(Application Protocol Data Unit)를 통하여 다운로드되는 것을 특징으로 하는 스마트 카드 운용체제의 패치 방법.
  11. 제 1항에 있어서, 상기 (a)단계는 상기 패치 함수 테이블이 EEPROM 상에 초기화 되었는지 판단한 후, 만약 초기화 않은 경우 ROM상에 구성된 패치 함수 테이 블을 EEPROM에 복사하는 것을 특징으로 하는 스마트 카드 운용체제의 패치 방법.
  12. 제 1항 내지 제 11항중 어느 한 항에 있어서, 상기 스마트 카드 운용체제는 스마트 카드 애플리케이션과 상호 호환이 가능한 개방형 스마트 카드 플랫폼이거나 상호 호환이 불가능한 폐쇄형 스마트 카드 플랫폼인 것을 특징으로 하는 스마트 카드 운용체제의 패치 방법.
  13. 제 12항에 있어서, 상기 개방형 스마트 카드 플랫폼은 자바 카드인 것을 특징으로 하는 스마트 카드 운용체제의 패치 방법.
  14. 제 1항 내지 제 11항중 어느 한 항에 기재된 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020040103150A 2004-12-08 2004-12-08 스마트 카드 운영체제의 패치 방법 KR100615890B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040103150A KR100615890B1 (ko) 2004-12-08 2004-12-08 스마트 카드 운영체제의 패치 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040103150A KR100615890B1 (ko) 2004-12-08 2004-12-08 스마트 카드 운영체제의 패치 방법

Publications (2)

Publication Number Publication Date
KR20060064338A KR20060064338A (ko) 2006-06-13
KR100615890B1 true KR100615890B1 (ko) 2006-08-25

Family

ID=37159919

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040103150A KR100615890B1 (ko) 2004-12-08 2004-12-08 스마트 카드 운영체제의 패치 방법

Country Status (1)

Country Link
KR (1) KR100615890B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101334734B (zh) * 2007-06-27 2012-01-11 北京中电华大电子设计有限责任公司 电信卡动态下载补丁程序方法
CN103927189B (zh) * 2013-01-11 2017-10-31 上海华虹集成电路有限责任公司 智能卡片内操作系统补丁的实现方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06242990A (ja) * 1993-02-12 1994-09-02 Fujitsu Ltd メモリパッチ装置
JPH0784775A (ja) * 1993-06-28 1995-03-31 Nec Corp ソフトウェア修正方式
US6338435B1 (en) 1999-01-15 2002-01-15 Todd Carper Smart card patch manager
JP2003216431A (ja) 2002-01-18 2003-07-31 Cec:Kk Icカードのオペレーティングシステム更新システムおよび当該システムに使用するicカード
KR20040060366A (ko) * 2002-12-30 2004-07-06 삼성전자주식회사 무선통신매체의 os 업그레이드 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06242990A (ja) * 1993-02-12 1994-09-02 Fujitsu Ltd メモリパッチ装置
JPH0784775A (ja) * 1993-06-28 1995-03-31 Nec Corp ソフトウェア修正方式
US6338435B1 (en) 1999-01-15 2002-01-15 Todd Carper Smart card patch manager
JP2003216431A (ja) 2002-01-18 2003-07-31 Cec:Kk Icカードのオペレーティングシステム更新システムおよび当該システムに使用するicカード
KR20040060366A (ko) * 2002-12-30 2004-07-06 삼성전자주식회사 무선통신매체의 os 업그레이드 방법

Also Published As

Publication number Publication date
KR20060064338A (ko) 2006-06-13

Similar Documents

Publication Publication Date Title
CN110023941B (zh) 一种实现安全操作系统切换的片上系统和方法
CN105447692A (zh) 安全模块应用的应用标识符(aid)优先化
CN210666775U (zh) 用于嵌入式通用集成电路卡的防篡改设备和电子设备
US11907931B2 (en) Method and system for managing virtual electronic card, secure chip, terminal and storage medium
US10248795B2 (en) Implementing method for JavaCard application function expansion
EP3208717A1 (en) Method for managing objects in a secure element
US9830203B2 (en) Method for communicating with an application on a portable data storage medium, and such a portable data storage medium
JP4972706B2 (ja) 独自のメモリ装置識別表示を管理する方法、サーバー及びモバイル通信装置
EP3286682B1 (en) Method of managing applications in a secure element when updating the operating system
KR100615890B1 (ko) 스마트 카드 운영체제의 패치 방법
EP3384383B1 (en) Method for managing a package in a secure element
JP4236830B2 (ja) アップロード機能付き記憶装置
CN104412230A (zh) 集成电路无线电
JP5516314B2 (ja) セッションバッファを動的に変更できるicカード及びicカードシステム
CN114925368A (zh) 用于启动应用程序的安全元件和方法
WO2008104601A2 (en) Method of managing command execution in an electronic token
CN107851044B (zh) 适于从第一应用传送第一数据以供第二应用使用的集成电路卡
CN111814209A (zh) 用于将补丁应用于可执行代码的系统和方法
KR100689223B1 (ko) 스마트 카드 운영체제의 최적화 패치 방법 및 보안 패치방법
CN111400778A (zh) 一种虚拟磁盘文件的加密方法、系统、设备及介质
JP7206942B2 (ja) 電子情報記憶媒体、icチップ、初期設定方法、及び初期設定プログラム
KR101028187B1 (ko) 스마트 칩 및 이를 이용한 이동통신 단말 제어 방법
KR100576967B1 (ko) 자바 스마트 카드
EP3104297B1 (en) Slave smartcard used as a memory extension for a master smartcard
CN113692576A (zh) Native与JavaCard动态切换的方法及设备

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130708

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140603

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150629

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee