KR100842333B1 - 스마트 카드 및 스마트 카드의 동작 방법 - Google Patents

스마트 카드 및 스마트 카드의 동작 방법 Download PDF

Info

Publication number
KR100842333B1
KR100842333B1 KR1020060130516A KR20060130516A KR100842333B1 KR 100842333 B1 KR100842333 B1 KR 100842333B1 KR 1020060130516 A KR1020060130516 A KR 1020060130516A KR 20060130516 A KR20060130516 A KR 20060130516A KR 100842333 B1 KR100842333 B1 KR 100842333B1
Authority
KR
South Korea
Prior art keywords
boot mode
mode selection
boot
selection information
smart card
Prior art date
Application number
KR1020060130516A
Other languages
English (en)
Other versions
KR20080057367A (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 KR1020060130516A priority Critical patent/KR100842333B1/ko
Priority to US11/763,055 priority patent/US20080155248A1/en
Publication of KR20080057367A publication Critical patent/KR20080057367A/ko
Application granted granted Critical
Publication of KR100842333B1 publication Critical patent/KR100842333B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Stored Programmes (AREA)

Abstract

스마트 카드 및 스마트 카드의 동작 방법이 개시된다. 상기 스마트 카드는 각각이 부팅 모드 선택정보를 저장하기 위한 다수의 메모리 셀들을 구비하는 비휘발성 메모리; 상기 다수의 메모리 셀들 각각에 저장된 상기 부팅 모드 선택정보를 서로 비교하고, 비교 결과에 기초하여 리셋 신호 또는 부팅 모드 선택 신호를 출력하는 부팅 모드 제어블락; 및 상기 리셋 신호에 응답하여 리셋되거나 상기 부팅 모드 선택 신호에 응답하여 롬 부팅 코드 및 플래시 부팅 코드 중 어느 하나를 실행시키는 CPU를 구비한다.
스마트 카드, 플래시 카드, 메모리 칩

Description

스마트 카드 및 스마트 카드의 동작 방법{Smart card and method for driving of smart card}
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 일반적인 스마트 카드의 부팅 모드 동작을 설명하기 위한 기능 블락도이다.
도 2는 본 발명의 실시예에 따른 스마트 카드의 부팅 모드 동작을 설명하기 위한 기능 블락도이다.
도 3은 본 발명의 실시예에 따른 스마트 카드의 동작 방법을 나타내기 위한 순서도이다.
도 4는 본 발명에 따른 시스템을 구비하는 전자기기의 기능 블록도를 나타낸다.
도 5a 내지 도 5j는 본 발명에 따른 시스템을 구비하는 전자기기를 나타낸다.
본 발명은 스마트 카드 및 스마트 카드의 동작 방법에 관한 것으로, 보다 상세하게는 스마트 카드의 부팅 모드 진행시 상기 스마트 카드의 보안(security)을 향상시킬 수 있는 스마트 카드 및 스마트 카드의 동작 방법에 관한 것이다.
일반적으로, 플래시 메모리(Flash EEPROM)를 사용하는 스마트 카드 제품은 상기 스마트 카드를 부팅시키기 위한 방법으로 롬 부팅 모드(ROM booting mode) 및 플래시 부팅 모드(Flash booting mode)의 2가지의 부팅 모드를 사용한다.
상기 롬 부팅 모드(ROM booting mode)는 롬에 저장된 롬 부팅 코드(ROM booting code)를 실행하여 상기 스마트 카드의 하드웨어 등을 초기화하거나 어플리케이션 코드(Application code) 등을 비휘발성 메모리에 다운로드 하는 것을 제어한다.
상기 플래시 부팅 모드(Flash booting mode)는 비휘발성 메모리(Non-volatile memory)에 저장된 플래시 부팅 코드(Flash booting code)를 실행하여 어플리케이션 프로그램을 실행하기 위한 데이터 등을 초기화한다.
도 1은 일반적인 스마트 카드의 부팅 모드 동작을 설명하기 위한 기능 블락도이다. 도 1을 참조하며, 종래의 스마트 카드(100)는 호스트 인터페이스(110), 부팅 모드 제어블락(120), 레지스터(130), 램(140), 롬(150), 비휘발성 메모리(160), 및 CPU(170) 를 구비한다.
상기 호스트 인터페이스(110)는 호스트로부터 수신되거나 상기 호스트로 출력되는 데이터를 상기 스마트 카드(100)와 인터페이스(interface)한다.
상기 부팅 모드 제어블락(120)은 상기 스마트 카드(100)가 파워 온 되면 상 기 비휘발성 메모리(160)에 저장된 부팅 모드 선택 정보(Booting mode selection information)를 독출하여 해석하고, 해석된 상기 부팅 모드 선택 정보에 기초하여 상기 부팅 모드 선택 신호(sig_sel)를 출력한다.
상기 부팅 모드 선택정보는 상기 스마트 카드(100)를 롬 부팅 모드(ROM booting mode) 또는 플래시 부팅 모드(Flash booting mode) 중에서 어느 부팅 모드로 상기 스마트 카드(100)를 부팅할지에 대한 정보를 나타낸다.
상기 비휘발성 메모리(160)는 다수의 메모리 셀 영역으로 분할되고, 지정된 메모리 셀 영역(161)에 상기 부팅 모드 선택 정보를 저장한다.
상기 CPU(170)는 상기 부팅 모드 제어블락(120)으로부터 출력되는 상기 부팅 모드 선택 신호(sig_sel)를 수신하고, 수신된 상기 부팅 모드 선택 신호(sig_sel)에 응답하여 롬(150)에 저장된 상기 롬 부팅 코드 및 비휘발성 메모리(160)에 저장된 상기 플래시 부팅 코드 중 어느 하나를 실행함으로써 상기 스마트 카드(100)의 부팅을 진행시키게 된다.
상기 스마트 카드(100)의 부팅 모드를 변경하고자 할 경우에는 호스트로부터의 커맨드(command)에 의하여 상기 비휘발성 메모리(160)의 지정된 메모리 셀 영역(161)에 저장된 부팅 모드 선택정보를 변경함으로써 선택적으로 변경할 수 있다.
그런데, 상기 스마트 카드(100)는 상기 부팅 모드 선택 정보를 하나의 메모리 셀(161)에만 저장하고 있기 때문에, 비정상적인 방법으로 상기 스마트 카드(100)의 부팅 모드 선택정보가 변경된다면 사용자는 상기 스마트 카드(100)를 제어할 수 있는 능력을 상실하게 된다.
특히, 외부로부터의 악의적인 공격(예컨데, 레이저 또는 글리치에 의한 공격)에 의하여 상기 부팅 모드 선택정보가 변경된다면 상기 스마트 카드(100)에 저장된 어플리케이션 코드 등의 중요한 정보들이 유출될 우려가 있었다.
따라서, 상기 비휘발성 메모리(160)에 저장된 부팅 모드 선택 정보가 외부의 공격에 의하여 변경되어도 상기 스마트 카드의 부팅 모드가 진행되기 전에 상기 부팅 모드 선택정보의 변경 여부를 검출(detection)하여 상기 스마트 카드(100)의 부팅 동작을 중지시킬 수 있는 방법이 요구된다.
따라서, 본 발명이 이루고자 하는 기술적 과제는 스마트 카드의 부팅 모드 시 외부의 침입(또는, 공격)을 미리 검출함으로써 상기 스마트 카드의 보안을 향상시킬 수 있는 스마트 카드 및 스마트 카드의 동작 방법을 제공하는 것이다.
본 발명에 따른 메모리 칩은 각각이 부팅 모드 선택정보(booting mode selection information)를 저장하기 위한 다수의 메모리 셀들을 구비하는 비휘발성 메모리; 및 상기 다수의 메모리 셀들 각각에 저장된 상기 부팅 모드 선택 정보를 서로 비교하여 상기 각각의 부팅 모드 선택 정보가 서로 일치하지 않을 경우 리셋 신호를 출력하는 부팅 모드 제어블락을 구비한다.
상기 부팅 모드 선택정보는 상기 메모리 칩을 롬 부팅 모드 또는 플래시 부팅 모드 중에서 어느 하나로 동작시키기 위한 정보를 저장한다.
상기 메모리 칩은 상기 메모리 칩을 롬 부팅 모드로 동작시키기 위한 롬 부 팅 코드를 저장하는 롬을 더 구비한다.
상기 비휘발성 메모리는 상기 메모리 칩을 플래시 부팅 모드로 동작시키기 위한 플래시 부팅 코드를 저장한다.
상기 메모리 칩은 다수의 램; 및 상기 비휘발성 메모리로부터 출력되는 상기 부팅 모드 선택정보를 일시 저장하는 다수의 레지스터들을 더 구비한다.
본 발명에 따른 스마트 카드는 상기 메모리 칩; 및 상기 리셋 신호에 응답하여 상기 메모리 칩을 리셋시키기 위한 CPU를 구비한다.
본 발명에 따른 메모리 칩은 각각이 부팅 모드 선택정보(booting mode selection information)를 저장하기 위한 다수의 메모리 셀들을 구비하는 비휘발성 메모리; 및 상기 다수의 메모리 셀들 각각에 저장된 상기 부팅 모드 선택정보를 독출하여 해석하고, 해석된 결과에 기초하여 부팅 모드 선택 신호를 출력하는 부팅 모드 제어블락을 구비한다.
상기 부팅모드 제어블락은 상기 각각의 부팅 모드 선택정보들을 서로 비교하고, 상기 부팅 모드 선택정보들의 비교 결과를 제어 신호로써 출력하는 비교부; 및 상기 제어신호에 응답하여 상기 부팅 모드 선택정보를 독출하여 해석하고, 해석된 결과에 기초하여 부팅 모드 선택 신호를 출력하는 선택부를 구비한다.
상기 메모리 칩은 다수의 램; 및 상기 비휘발성 메모리로부터 출력되는 상기 부팅 모드 선택정보를 일시 저장하는 다수의 레지스터들을 더 구비한다.
상기 메모리 칩은 상기 메모리 칩을 롬 부팅 모드로 동작시키기 위한 롬 부팅 코드를 저장하는 롬을 더 구비한다.
상기 비휘발성 메모리는 상기 메모리 칩을 상기 플래시 부팅 모드로 동작시키기 위한 상기 플래시 부팅 코드를 저장한다.
본 발명에 따른 스마트 카드는 각각이 부팅 모드 선택정보(booting mode selection information)를 저장하기 위한 다수의 메모리 셀들을 구비하는 비휘발성 메모리; 상기 다수의 메모리 셀들 각각에 저장된 상기 부팅 모드 선택정보를 서로 비교하고, 비교 결과에 기초하여 리셋 신호 또는 부팅 모드 선택 신호를 출력하는 부팅 모드 제어블락; 및 상기 리셋 신호에 응답하여 스마트 카드를 리셋 모드 또는 에러 모드로 동작시키기거나, 상기 부팅 모드 선택 신호에 응답하여 롬 부팅 코드 및 플래시 부팅 코드 중 어느 하나를 실행시키는 CPU를 구비한다.
상기 부팅 모드 제어블락은 상기 각각의 부팅 모드 선택정보를 서로 비교하고, 비교 결과에 기초하여 리셋 신호 또는 제어신호를 출력하는 비교부; 및 상기 제어신호에 응답하여 상기 부팅 모드 선택정보를 독출하여 해석하고, 해석된 결과에 기초하여 상기 부팅 모드 선택신호를 출력하는 선택부를 구비한다.
상기 리셋 신호는 상기 부팅 모드 선택 정보가 서로 동일하지 않을 때 출력되어 상기 스마트 카드를 리셋시키기 위한 신호이고, 상기 제어신호는 상기 부팅 모드 선택 정보가 서로 동일할 때 출력되어 상기 선택부를 인에이블 시키기 위한 신호이다.
본 발명에 따른 스마트 카드의 동작 방법은 각각의 부팅 모드 선택정보를 서로 비교하고, 비교 결과에 기초하여 리셋 신호를 출력하는 단계; 및 상기 리셋 신호를 수신하고, 수신된 상기 리셋 신호에 응답하여 리셋 모드 또는 에러 모드를 실 행하는 단계를 구비한다.
상기 리셋 신호는 상기 각각의 부팅 모드 선택정보가 서로 일치하지 않을 때 출력되는 신호이다.
본 발명에 따른 스마트 카드의 동작 방법은 각각의 부팅 모드 선택 정보를 서로 비교하고, 비교 결과에 기초하여 제어신호를 출력하는 단계; 상기 제어신호에 응답하여 부팅 모드 선택 정보를 독출하여 해석하고 해석된 결과에 기초하여 부팅모드 선택 신호를 출력하는 단계; 및 상기 부팅 모드 선택 신호에 응답하여 롬 부팅 코드 또는 플래시 부팅 코드 중 어느 하나를 실행하는 단계를 구비한다.
상기 제어신호는 상기 부팅 모드 선택 정보가 서로 일치할 때 출력되는 신호이다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시 예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재번호를 나타낸다.
도 2는 본 발명의 실시예에 따른 스마트 카드의 부팅 모드 동작을 설명하기 위한 기능 블락도이다. 도 2를 참조하면, 상기 스마트 카드(200)는 호스트 인터페이스(210), 부팅 모드 제어블락(220), 비휘발성 메모리(230), 롬(240), 및 CPU(250)를 구비한다. 상기 스마트 카드(200)는 레지스터(260), 및 램(270)을 더 구비할 수 있다.
상기 호스트 인터페이스(210)는 호스트로부터 수신되거나 상기 호스트로 출력되는 데이터를 상기 스마트 카드(200)와 인터페이스(interface)한다.
상기 부팅 모드 제어블락(220)은 비교부(221), 및 선택부(222)를 구비한다.
상기 스마트 카드(200)가 파워 온 되면 상기 비교부(221)는 상기 비휘발성 메모리(230)의 다수의 메모리 셀들(231, 232, 및 233)에 각각 저장된 부팅 모드 선택정보를 읽고, 읽혀진 정보가 서로 일치하는가를 비교한다.
상기 비교부(221)는 상기 각각의 부팅 모드 선택정보를 비교한 결과가 서로 일치할 경우 상기 선택부(222)를 인에이블 시키기 위한 제어신호(sig_en)를 출력하고, 상기 각각의 부팅 모드 선택정보의 비교 결과가 서로 일치하지 않을 경우 상기 스마트 카드(200)를 리셋시키기 위한 리셋 신호(int_reset) 또는 에러 신호(sig_err)를 CPU(250)로 출력한다.
본 발명의 실시예에 따른 상기 스마트 카드(200)는 상기 비교부(221)를 하드웨어적으로 구현하였으나 이에 한정된 것은 아니며, 상기 비교부(221)를 소프트웨어로 구현함으로써 동일한 효과를 얻을 수 있다.
상기 선택부(222)는 상기 제어신호(sig_en)를 수신하고, 수신된 상기 제어신호(sig_en)에 응답하여 상기 비휘발성 메모리(230)의 다수의 메모리 셀들(231, 232, 및 233)에 각각 저장된 각각의 상기 부팅 모드 선택정보를 독출하여 해석하고, 해석된 결과에 기초하여 부팅 모드 선택 신호(sig_sel)를 출력한다.
상기 부팅 모드 선택 신호(sig_sel)는 상기 해석된 부팅 모드 선택 정보에 기초하여 롬(240)에 저장된 상기 롬 부팅 코드 또는 비휘발성 메모리(230)에 저장된 상기 플래시 부팅 코드 중 어느 하나를 선택하여 실행시키기 위한 신호이다.
즉, 상기 부팅 모드 선택 정보의 해석된 결과가 제1정보(예컨데, 롬 부팅 모드 선택정보)를 나타내는 경우 상기 선택부(222)는 제1제어신호(예컨데, 논리 'high')를 출력하고, 상기 부팅 모드 선택 정보의 해석된 결과가 제2정보(예컨데, 플래시 부팅 모드 선택정보)를 나타내는 경우 상기 선택부(222)는 제2제어신호(예컨데, 논리 'low')를 출력한다.
상기 비휘발성 메모리(230)는 각각의 부팅 모드 선택 정보를 저장하는 다수의 메모리 셀들(231, 232, 및 233)을 구비한다. 또한, 상기 비휘발성 메모리(230)는 상기 스마트 카드(200)를 플래시 부팅 모드로 실행시키기 위한 플래시 부팅 코드를 저장한다. 상기 비휘발성 메모리(230)는 플래시 EEPROM으로 구현될 수도 있다.
상기 부팅 모드 선택 정보는 상기 스마트 카드(200)를 롬 부팅 모드 또는 플래시 부팅 모드 중에서 어느 부팅 모드로 진행시킬지에 대한 정보를 나타낸다. 상기 각각의 부팅 모드 선택 정보는 서로 동일하다.
상기 다수의 메모리 셀들(231, 232, 및 233) 각각은 동일한 내용을 가지는 부팅 모드 선택 정보를 각각 저장한다. 따라서, 외부의 공격(예컨데, 레이저 또는 글리치에 의한 공격)에 의하여 상기 메모리 셀들(231, 232, 및 233) 중 적어도 어느 하나의 정보가 변경되면, 상기 비교부(221)는 리셋 신호(int_reset) 또는 에러 신호(sig_err)를 출력함으로써 상기 스마트 카드(200)가 부팅 모드를 중단하고 상 기 스마트 카드를 리셋 모드 또는 에러 모드로 진행할 수 있도록 제어한다.
예컨데, 외부의 공격으로 제1메모리 셀(231)에 저장된 부팅 모드 선택정보가 제2정보(플래시 부팅 모드 선택정보)에서 제1정보(롬 부팅 모드 선택정보)로 변경되었을 경우, 상기 비교부(221)는 각각의 메모리 셀들(231, 232, 및 233)에 저장된 부팅 모드 선택정보를 비교함으로써 외부의 공격이 있음을 인지하고 부팅 모드를 중단하기 위한 리셋 신호(int_reset) 또는 에러 신호(sig_err)를 출력한다.
상기 다수의 메모리 셀들(231, 232, 및 233) 각각은 상호간에 소정의 이격거리를 두고 배치될 수 있다. 이는, 다수의 메모리 셀들(231, 232, 및 233) 중에 어느 하나가 공격을 받을 시에 주변의 메모리 셀들(231, 232, 및 233)이 영향을 받는 것을 방지하기 위함이다.
본 발명의 실시예에서는 설명의 편의를 위하여 3개의 메모리 셀을 구비하는 스마트 카드(200)를 예를 들어 설명하였으나 이에 한정된 것은 아니며, 2개 이상의 메모리 셀을 구비함으로써 본 발명에 따른 스마트 카드(200)를 구현할 수 있다.
상기 롬(240)은 상기 스마트 카드(200)를 롬 부팅 모드로 진행시키기 위한 롬 부팅 코드를 저장한다. 상기 롬 부팅 코드는 상기 롬(240)에 저장하는 것이 바람직하나 상기 비휘발성 메모리(230)에 소정의 영역을 할당하여 저장할 수도 있다.
상기 CPU(250)는 상기 부팅 모드 선택 신호(sig_sel)를 수신하고, 수신된 부팅 모드 선택신호(sig_sel)의 제1선택신호(예컨데, 논리 'high')에 응답하여 롬 부팅 코드를 실행하고 제2선택신호(예컨데, 논리 'low')에 응답하여 플래시 부팅 코드를 실행시킨다.
상기 레지스터(260)는 상기 부팅 모드 선택 정보를 일시적으로 로딩하여 상기 주변 장치들(예컨데, 부팅모드 제어블락(220) 및 CPU(250) 등)이 참조할 수 있도록 한다. 상기 램(270)은 버스를 통하여 전송되는 데이터들을 일시 저장하고, 상기 부팅 모드 선택 정보를 저장할 수도 있다.
상기 레지스터(260) 및 상기 램(270)은 상기 부팅 모드 선택 정보가 상기 레지스터(260) 또는 상기 램(270)에 일시적으로 로딩될 때 외부의 공격에 의하여 상기 부팅 모드 선택 정보가 변경될 우려가 있다. 따라서, 상기 스마트 카드(200)는 다수의 레지스터(260) 및 다수의 램(270)을 구비하는 것이 바람직하다.
도 3은 본 발명의 실시예에 따른 스마트 카드의 동작 방법을 나타내기 위한 순서도이다. 도 2와 도 3을 참조하여 상기 스마트 카드의 동작을 설명하고자 한다.
상기 스마트 카드(200)가 파워 온 되어 부팅 모드(즉, 부팅코드를 실행)를 시작하게 되면 상기 스마트 카드(200)는 비휘발성 메모리(230)의 다수의 메모리 셀들(231, 232, 및 233)에 각각에 할당되어 부팅 모드 선택 정보 읽고, 잃혀진 정보를를 저장하기 위한 각각의 메모리 셀들(231, 232, 및 233)에 저장된 각각의 부팅 모드 선택정보를 비교한다(S310).
상기 각각의 부팅 모드 선택 정보의 비교 결과가 일치하지 않을 경우, 상기 스마트 카드(200)는 상기 각각의 부팅 모드 선택 정보 중 적어도 어느 하나가 외부의 공격에 의하여 변경된 것으로 판단하고 리셋 신호(int_reset) 또는 에러 신호(sig_err)를 출력하여 상기 스마트 카드(200)의 부팅 모드를 중단시킨다(S320).
따라서, 상기 부팅 모드 선택 정보가 변경되었음을 검출함으로써 상기 부팅 모드의 오동작을 방지할 수 있고, 악의적인 외부의 공격에 의하여 상기 스마트 카드(200)에 저장된 데이터 또는 어플리케이션 프로그램이 외부로 유출되는 것을 방지할 수 있다.
상기 각각의 부팅 모드 선택 정보의 비교 결과가 일치할 경우에는 상기 부팅 모드 선택정보에 이상이 없는 것으로 판단하고 상기 스마트 카드(200)는 상기 비휘발성 메모리(230)에 저장된 부팅 모드 선택 정보를 독출하여 해석한다(S331).
상기 스마트 카드(200)는 상기 해석된 부팅 모드 선택 정보에 기초하여 롬부팅 코드 또는 플래시 부팅 코드를 실행시킴으로서 부팅 모드를 수행한다(S332).
상기 부팅 모드 선택 정보는 상기 스마트 카드(200)를 롬 부팅 코드 또는 플래시 부팅 코드 중에서 어느 부팅 모드로 진행시킬 것인가에 대한 정보를 나타낸다.
예를 들어 설명하면, 상기 각각의 부팅 모드 선택정보가 제1정보(예컨데, 롬 부팅 모드 선택정보)를 저장하고 있는 경우 상기 스마트 카드(200)는 상기 롬(240)에 저장된 롬 부팅 코드들 실행시킴으로써 롬 부팅 모드를 수행한다.
반면에, 상기 각각의 부팅 모드 선택정보가 제2정보(예컨데, 플래시 부팅 모드 선택신호)를 저장하고 있는 경우에는 상기 스마트 카드(200)는 상기 비휘발성 메모리(230)에 저장된 플래시 부팅 코드를 실행시킴으로써 플래시 부팅 모드로 동작한다.
도 4는 본 발명에 따른 시스템에 의한 전자기기의 기능 블록도를 나타내고, 도 5a 내지 도 5j는 본 발명에 따른 시스템에 의한 전자기기를 나타낸다.
도 4 내지 도 5j를 참조하면, 본 발명에 따른 시스템은 메모리 카드로도 구현될 수 있으며, 상기 메모리 카드는 비디오 카메라(도 5a), 텔레비젼(도 5b), MP3(도 5c), 게임기(도 5d), 전자 악기(도 5e), 휴대용 단말기(도 5f), PC(personal computer, 도 5g), PDA(personal digital assistant, 도 5h), 보이스 레코더(voice recorder, 도 5i), 및 PC 카드(도 5j) 등에 사용될 수 있다.
따라서, 비디오 카메라(도 5a), 텔레비젼(도 5b), MP3(도 5c), 게임기(도 5d), 전자 악기(도 5e), 휴대용 단말기(도 5f), PC(도 5g), PDA(도 5h), 보이스 레코더(도 5i), 및 PC 카드(도 5j) 등 각각이 인터페이스(420)와 상기 인터페이스(420)에 접속될 수 있는 슬롯(410)을 구비하는 경우, 상기 시스템은 상기 슬롯(410)에 접속되어 상기 인터페이스(420)를 통하여 비디오 카메라(도 5a), 텔레비젼(도 5b), MP3(도 5c), 게임기(도 5d), 전자 악기(도 5e), 휴대용 단말기(도 5f), PC(도 5g), PDA(도 5h), 보이스 레코더(도 5i), 및 PC 카드(도 5j) 등 각각의 전자회로(430)에 구비되는 CPU(또는 마이크로프로세서)와 소정의 데이터와 명령을 주고 받을 수도 있다.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상술한 바와 같이 본 발명에 따른 스마트 카드는 외부의 공격으로부터 상기 부팅 모드 선택 정보가 변경되어도 외부의 공격을 검출함으로써 스마트 카드의 보안을 향상시킬 수 있는 효과가 있다.

Claims (19)

  1. 각각이 부팅 모드 선택정보를 저장하기 위한 다수의 메모리 셀들을 구비하는 비휘발성 메모리; 및
    상기 다수의 메모리 셀들 각각에 저장된 상기 부팅 모드 선택 정보를 읽고, 읽혀진 각각의 정보에 기초하여 리셋 신호를 출력하는 부팅 모드 제어블락을 구비하는 메모리 칩.
  2. 제1항에 있어서, 상기 부팅 모드 선택정보는,
    상기 메모리 칩을 롬 부팅 모드 또는 플래시 부팅 모드 중에서 어느 하나로 동작시키기 위한 정보인 메모리 칩.
  3. 제1항에 있어서, 상기 메모리 칩은,
    상기 메모리 칩을 롬 부팅 모드로 동작시키기 위한 롬 부팅 코드를 저장하는 롬을 더 구비하는 메모리 칩.
  4. 제1항에 있어서, 상기 비휘발성 메모리는,
    상기 메모리 칩을 플래시 부팅 모드로 동작시키기 위한 플래시 부팅 코드를 저장하는 메모리 칩.
  5. 제1항에 있어서, 상기 메모리 칩은,
    각각이 상기 비휘발성 메모리로부터 출력되는 상기 부팅 모드 선택정보를 일시 저장하기 위한 다수의 레지스터들을 더 구비하는 메모리 칩.
  6. 제1항 내지 제5항 중 어느 한 항에 기재된 메모리 칩; 및
    상기 리셋 신호에 응답하여 상기 메모리 칩을 리셋시키기 위한 CPU를 구비하는 스마트 카드.
  7. 각각이 부팅 모드 선택정보를 저장하기 위한 다수의 메모리 셀들을 구비하는 비휘발성 메모리; 및
    상기 다수의 메모리 셀들 각각에 저장된 상기 부팅 모드 선택정보를 독출하여 해석하고, 해석된 결과에 기초하여 부팅 모드 선택 신호를 출력하는 부팅 모드 제어블락을 구비하는 메모리 칩.
  8. 제7항에 있어서, 상기 부팅모드 제어블락은,
    상기 독출된 각각의 부팅 모드 선택정보를 서로 비교하고, 비교 결과에 따른 제어 신호를 출력하는 비교부; 및
    상기 제어신호에 응답하여 상기 부팅 모드 선택정보를 독출하여 해석하고, 해석 결과에 기초하여 부팅 모드 선택 신호를 출력하는 선택부를 구비하는 메모리 칩.
  9. 제7항에 있어서, 상기 메모리 칩은,
    각각이 상기 비휘발성 메모리로부터 출력되는 상기 부팅 모드 선택정보를 일시 저장하는 다수의 레지스터들을 더 구비하는 메모리 칩.
  10. 제7항에 있어서, 상기 메모리 칩은,
    상기 메모리 칩을 롬 부팅 모드로 동작시키기 위한 롬 부팅 코드를 저장하는 롬(ROM)을 더 구비하는 메모리 칩.
  11. 제7항에 있어서, 상기 비휘발성 메모리는,
    상기 메모리 칩을 플래시 부팅 모드로 동작시키기 위한 플래시 부팅 코드를 저장하는 메모리 칩.
  12. 제7항 내지 제11항 중 어느 한 항에 기재된 메모리 칩; 및
    상기 부팅 모드 선택 신호에 응답하여 상기 롬 부팅 코드 및 상기 플래시 부팅 코드 중 어느 하나를 실행시키는 CPU를 구비하는 스마트 카드.
  13. 각각이 부팅 모드 선택정보를 저장하기 위한 다수의 메모리 셀들을 구비하는 비휘발성 메모리;
    상기 다수의 메모리 셀들 각각에 저장된 상기 부팅 모드 선택정보를 서로 비 교하고, 비교 결과에 기초하여 리셋 신호 또는 부팅 모드 선택 신호를 출력하는 부팅 모드 제어블락; 및
    상기 리셋 신호에 응답하여 리셋되거나, 상기 부팅 모드 선택 신호에 응답하여 롬 부팅 코드 및 플래시 부팅 코드 중 어느 하나를 실행시키는 CPU를 구비하는 시스템.
  14. 제13항에 있어서, 상기 부팅 모드 제어블락은,
    상기 각각의 부팅 모드 선택정보를 서로 비교하고, 비교 결과에 기초하여 상기 리셋 신호 또는 제어신호를 출력하는 비교부; 및
    상기 제어신호에 응답하여 상기 부팅 모드 선택신호를 출력하는 선택부를 구비하는 시스템.
  15. 제14항에 있어서, 상기 리셋 신호는,
    읽혀진 상기 부팅 모드 선택 정보가 서로 동일하지 않을 때, 상기 스마트 카드를 리셋시키기 위하여 활성화된 신호이고,
    상기 제어신호는,
    상기 읽혀진 상기 부팅 모드 선택 정보가 서로 동일할 때, 상기 선택부를 인에이블 시키기 위하여 활성화되는 신호인 시스템.
  16. 각각의 부팅 모드 선택정보를 서로 비교하고, 비교 결과에 기초하여 리셋 신 호를 출력하는 단계; 및
    수신된 상기 리셋 신호에 응답하여 리셋되는 단계를 구비하는 스마트 카드의 동작 방법.
  17. 제16항에 있어서, 상기 리셋 신호는,
    상기 각각의 부팅 모드 선택정보가 서로 일치하지 않을 때 활성화되는 신호인 스마트 카드의 동작 방법.
  18. 각각의 부팅 모드 선택 정보를 서로 비교하고, 비교 결과에 기초하여 제어신호를 출력하는 단계;
    상기 제어신호에 응답하여 부팅모드 선택 신호를 출력하는 단계; 및
    상기 부팅 모드 선택 신호에 응답하여 롬 부팅 코드 또는 플래시 부팅 코드 중 어느 하나를 실행하는 단계를 구비하는 스마트 카드의 동작 방법.
  19. 제18항에 있어서, 상기 제어신호는,
    상기 읽혀진 각각의 부팅 모드 선택 정보가 서로 일치할 때 활성화되는 스마트 카드의 동작 방법.
KR1020060130516A 2006-12-20 2006-12-20 스마트 카드 및 스마트 카드의 동작 방법 KR100842333B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020060130516A KR100842333B1 (ko) 2006-12-20 2006-12-20 스마트 카드 및 스마트 카드의 동작 방법
US11/763,055 US20080155248A1 (en) 2006-12-20 2007-06-14 Smart cards including booting mode rotection and methods of operating

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060130516A KR100842333B1 (ko) 2006-12-20 2006-12-20 스마트 카드 및 스마트 카드의 동작 방법

Publications (2)

Publication Number Publication Date
KR20080057367A KR20080057367A (ko) 2008-06-25
KR100842333B1 true KR100842333B1 (ko) 2008-07-01

Family

ID=39544625

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060130516A KR100842333B1 (ko) 2006-12-20 2006-12-20 스마트 카드 및 스마트 카드의 동작 방법

Country Status (2)

Country Link
US (1) US20080155248A1 (ko)
KR (1) KR100842333B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101060496B1 (ko) * 2009-09-11 2011-08-30 주식회사 코아로직 부트 모드 입력 장치, 그 입력 장치를 포함하는 부팅장치, 및 그 입력 장치를 이용한 부팅방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160253501A1 (en) * 2015-02-26 2016-09-01 Dell Products, Lp Method for Detecting a Unified Extensible Firmware Interface Protocol Reload Attack and System Therefor

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09223200A (ja) * 1995-09-29 1997-08-26 Internatl Business Mach Corp <Ibm> 多機能チップ・カード
KR20060035776A (ko) * 2006-01-20 2006-04-26 노키아 코포레이션 트랜스폰더 기능성을 갖는 무선주파수식별 트랜스폰더용판독장치
JP2006172071A (ja) * 2004-12-15 2006-06-29 Techfirm Kk 通信システム、読み書き装置、読み書き方法、及び読み書きプログラム
KR100732276B1 (ko) 2005-05-30 2007-06-25 주식회사 하이닉스반도체 불휘발성 강유전체 메모리를 포함하는 rfid 장치

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5327531A (en) * 1992-09-21 1994-07-05 International Business Machines Corp. Data processing system including corrupt flash ROM recovery
US6446203B1 (en) * 1999-05-24 2002-09-03 International Business Machines Corporation Method and system for selecting from multiple boot code images to be loaded in a data processing system
US6507906B1 (en) * 1999-09-09 2003-01-14 International Business Machines Corporation Method and system for selection of a boot mode using unattended boot sequencing
US7257115B2 (en) * 2002-07-25 2007-08-14 Integrated Device Technology, Inc. Data memory address generation for time-slot interchange switches
KR100654446B1 (ko) * 2004-12-09 2006-12-06 삼성전자주식회사 보안 부팅 장치 및 방법
US7404028B2 (en) * 2005-06-30 2008-07-22 Gm Global Technology Operations, Inc. ECU identification retention across reprogramming events

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09223200A (ja) * 1995-09-29 1997-08-26 Internatl Business Mach Corp <Ibm> 多機能チップ・カード
JP2006172071A (ja) * 2004-12-15 2006-06-29 Techfirm Kk 通信システム、読み書き装置、読み書き方法、及び読み書きプログラム
KR100732276B1 (ko) 2005-05-30 2007-06-25 주식회사 하이닉스반도체 불휘발성 강유전체 메모리를 포함하는 rfid 장치
KR20060035776A (ko) * 2006-01-20 2006-04-26 노키아 코포레이션 트랜스폰더 기능성을 갖는 무선주파수식별 트랜스폰더용판독장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101060496B1 (ko) * 2009-09-11 2011-08-30 주식회사 코아로직 부트 모드 입력 장치, 그 입력 장치를 포함하는 부팅장치, 및 그 입력 장치를 이용한 부팅방법

Also Published As

Publication number Publication date
KR20080057367A (ko) 2008-06-25
US20080155248A1 (en) 2008-06-26

Similar Documents

Publication Publication Date Title
US8683189B2 (en) On-chip security method and apparatus
CN109508536B (zh) 一种篡改程序流攻击的检测方法和装置
EP2519908B1 (en) Jcvm bytecode execution protection against fault attacks
US8135945B2 (en) Flexible boot methods for multi-processor devices
US20070266214A1 (en) Computer system having memory protection function
US20140331037A1 (en) Secure boot override in a computing device equipped with unified-extensible firmware interface (uefi)-compliant firmware
EP2637124B1 (en) Method for implementing security of non-volatile memory
WO2013012700A1 (en) Executing functions of a secure program in unprivileged mode
US20050257016A1 (en) Digital signal controller secure memory partitioning
CN102968392A (zh) 防止存储器转储的微处理器
US10824710B2 (en) Method and device for authenticating application that requests access to memory
KR100842333B1 (ko) 스마트 카드 및 스마트 카드의 동작 방법
US8495734B2 (en) Method and device for detecting an erroneous jump during program execution
US7891556B2 (en) Memory access controller and method for memory access control
US7624442B2 (en) Memory security device for flexible software environment
US20090100238A1 (en) Memory card and memory card control changeover method
KR100385184B1 (ko) 컴퓨터 및 컴퓨터의 운영체계 정보 자동 설정 방법
JP2004503860A (ja) データ処理方法及び保護された命令の実行のための装置
US8190909B2 (en) Protection of the execution of a program
US8528081B2 (en) Memory system
US20100057980A1 (en) Data memory device with auxiliary function
JP4523613B2 (ja) 遊技機制御用マイクロコンピュータチップにおけるプログラム解読防止回路
JP6424633B2 (ja) 電子情報記憶媒体、異常検知方法、及びプログラム
JP7247638B2 (ja) 電子情報記憶媒体、icカード、改竄チェック方法、及びプログラム
US11366685B2 (en) Access filter for security subsystem

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: 20120531

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130531

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee