KR100842333B1 - 스마트 카드 및 스마트 카드의 동작 방법 - Google Patents
스마트 카드 및 스마트 카드의 동작 방법 Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record 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/067—Record 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/07—Record 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/22—Microcontrol or microprogram arrangements
- G06F9/24—Loading 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
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 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항에 있어서, 상기 부팅 모드 선택정보는,상기 메모리 칩을 롬 부팅 모드 또는 플래시 부팅 모드 중에서 어느 하나로 동작시키기 위한 정보인 메모리 칩.
- 제1항에 있어서, 상기 메모리 칩은,상기 메모리 칩을 롬 부팅 모드로 동작시키기 위한 롬 부팅 코드를 저장하는 롬을 더 구비하는 메모리 칩.
- 제1항에 있어서, 상기 비휘발성 메모리는,상기 메모리 칩을 플래시 부팅 모드로 동작시키기 위한 플래시 부팅 코드를 저장하는 메모리 칩.
- 제1항에 있어서, 상기 메모리 칩은,각각이 상기 비휘발성 메모리로부터 출력되는 상기 부팅 모드 선택정보를 일시 저장하기 위한 다수의 레지스터들을 더 구비하는 메모리 칩.
- 제1항 내지 제5항 중 어느 한 항에 기재된 메모리 칩; 및상기 리셋 신호에 응답하여 상기 메모리 칩을 리셋시키기 위한 CPU를 구비하는 스마트 카드.
- 각각이 부팅 모드 선택정보를 저장하기 위한 다수의 메모리 셀들을 구비하는 비휘발성 메모리; 및상기 다수의 메모리 셀들 각각에 저장된 상기 부팅 모드 선택정보를 독출하여 해석하고, 해석된 결과에 기초하여 부팅 모드 선택 신호를 출력하는 부팅 모드 제어블락을 구비하는 메모리 칩.
- 제7항에 있어서, 상기 부팅모드 제어블락은,상기 독출된 각각의 부팅 모드 선택정보를 서로 비교하고, 비교 결과에 따른 제어 신호를 출력하는 비교부; 및상기 제어신호에 응답하여 상기 부팅 모드 선택정보를 독출하여 해석하고, 해석 결과에 기초하여 부팅 모드 선택 신호를 출력하는 선택부를 구비하는 메모리 칩.
- 제7항에 있어서, 상기 메모리 칩은,각각이 상기 비휘발성 메모리로부터 출력되는 상기 부팅 모드 선택정보를 일시 저장하는 다수의 레지스터들을 더 구비하는 메모리 칩.
- 제7항에 있어서, 상기 메모리 칩은,상기 메모리 칩을 롬 부팅 모드로 동작시키기 위한 롬 부팅 코드를 저장하는 롬(ROM)을 더 구비하는 메모리 칩.
- 제7항에 있어서, 상기 비휘발성 메모리는,상기 메모리 칩을 플래시 부팅 모드로 동작시키기 위한 플래시 부팅 코드를 저장하는 메모리 칩.
- 제7항 내지 제11항 중 어느 한 항에 기재된 메모리 칩; 및상기 부팅 모드 선택 신호에 응답하여 상기 롬 부팅 코드 및 상기 플래시 부팅 코드 중 어느 하나를 실행시키는 CPU를 구비하는 스마트 카드.
- 각각이 부팅 모드 선택정보를 저장하기 위한 다수의 메모리 셀들을 구비하는 비휘발성 메모리;상기 다수의 메모리 셀들 각각에 저장된 상기 부팅 모드 선택정보를 서로 비 교하고, 비교 결과에 기초하여 리셋 신호 또는 부팅 모드 선택 신호를 출력하는 부팅 모드 제어블락; 및상기 리셋 신호에 응답하여 리셋되거나, 상기 부팅 모드 선택 신호에 응답하여 롬 부팅 코드 및 플래시 부팅 코드 중 어느 하나를 실행시키는 CPU를 구비하는 시스템.
- 제13항에 있어서, 상기 부팅 모드 제어블락은,상기 각각의 부팅 모드 선택정보를 서로 비교하고, 비교 결과에 기초하여 상기 리셋 신호 또는 제어신호를 출력하는 비교부; 및상기 제어신호에 응답하여 상기 부팅 모드 선택신호를 출력하는 선택부를 구비하는 시스템.
- 제14항에 있어서, 상기 리셋 신호는,읽혀진 상기 부팅 모드 선택 정보가 서로 동일하지 않을 때, 상기 스마트 카드를 리셋시키기 위하여 활성화된 신호이고,상기 제어신호는,상기 읽혀진 상기 부팅 모드 선택 정보가 서로 동일할 때, 상기 선택부를 인에이블 시키기 위하여 활성화되는 신호인 시스템.
- 각각의 부팅 모드 선택정보를 서로 비교하고, 비교 결과에 기초하여 리셋 신 호를 출력하는 단계; 및수신된 상기 리셋 신호에 응답하여 리셋되는 단계를 구비하는 스마트 카드의 동작 방법.
- 제16항에 있어서, 상기 리셋 신호는,상기 각각의 부팅 모드 선택정보가 서로 일치하지 않을 때 활성화되는 신호인 스마트 카드의 동작 방법.
- 각각의 부팅 모드 선택 정보를 서로 비교하고, 비교 결과에 기초하여 제어신호를 출력하는 단계;상기 제어신호에 응답하여 부팅모드 선택 신호를 출력하는 단계; 및상기 부팅 모드 선택 신호에 응답하여 롬 부팅 코드 또는 플래시 부팅 코드 중 어느 하나를 실행하는 단계를 구비하는 스마트 카드의 동작 방법.
- 제18항에 있어서, 상기 제어신호는,상기 읽혀진 각각의 부팅 모드 선택 정보가 서로 일치할 때 활성화되는 스마트 카드의 동작 방법.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101060496B1 (ko) * | 2009-09-11 | 2011-08-30 | 주식회사 코아로직 | 부트 모드 입력 장치, 그 입력 장치를 포함하는 부팅장치, 및 그 입력 장치를 이용한 부팅방법 |
Families Citing this family (1)
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)
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)
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 |
-
2006
- 2006-12-20 KR KR1020060130516A patent/KR100842333B1/ko not_active IP Right Cessation
-
2007
- 2007-06-14 US US11/763,055 patent/US20080155248A1/en not_active Abandoned
Patent Citations (4)
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)
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 |