KR100951949B1 - 스마트 카드에서의 데이터베이스 관리 시스템을 이용한정보 관리 방법 및 장치 - Google Patents
스마트 카드에서의 데이터베이스 관리 시스템을 이용한정보 관리 방법 및 장치 Download PDFInfo
- Publication number
- KR100951949B1 KR100951949B1 KR1020070116878A KR20070116878A KR100951949B1 KR 100951949 B1 KR100951949 B1 KR 100951949B1 KR 1020070116878 A KR1020070116878 A KR 1020070116878A KR 20070116878 A KR20070116878 A KR 20070116878A KR 100951949 B1 KR100951949 B1 KR 100951949B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- smart card
- type
- recording medium
- terminal
- 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
- G06K19/077—Constructional details, e.g. mounting of circuits in the carrier
- G06K19/0772—Physical layout of the record carrier
- G06K19/07732—Physical layout of the record carrier the record carrier having a housing or construction similar to well-known portable memory devices, such as SD cards, USB or memory sticks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Human Computer Interaction (AREA)
- Telephone Function (AREA)
Abstract
본 발명은 대용량 스마트 카드에 관한 것이다. 본 발명에 따른 스마트 카드에서 데이터를 관리하는 방법은 터미널로부터 데이터 삽입 요청 신호를 수신하는 삽입 요청 수신 단계; 상기 삽입 요청된 데이터의 특성에 상응하는 기록 매체를 선택하는 기록 매체 선택 단계; 및 상기 선택된 기록 매체에 상기 삽입 요청된 데이터를 저장하는 데이터 저장 단계를 포함하는 것을 특징으로 한다. 따라서, 본 발명에 스마트 카드에 대용량 메모리 및 이를 관리하는 스마트 카드 데이터베이스 관리 시스템을 추가함으로써, 터미널로부터 삽입 요청된 데이터를 해당 데이터의 특성에 상응하는 기록 매체에 저장할 수 있는 장점이 있다.
USIM, DBMS, SQL, 번역기, ISO-7816, 스마트카드, PIMS, EEPROM
Description
본 발명은 스마트 카드에 관한 것으로서, 좀 더 상세하게는, 대용량 메모리가 구비된 스마트 카드에 있어서, 스마트 카드 데이터베이스 관리 시스템을 이용하여 다양한 정보를 효과적으로 관리하고, 스마트 카드의 이동에 따른 서비스 연속성을 보장하는 것이 가능한 대용량 스마트 카드를 이용한 정보 관리 방법 및 장치를 제공한다.
3세대 이동 통신 시장에서 스마트 카드의 사용이 기본 사양 중의 하나로 결정되면서 각 이동 통신사마다 자사의 USIM(Universal Subscriber Identity Module) 카드 사양 정의 및 USIM 카드를 이용한 서비스 개선에 대한 연구가 활발히 진행되고 있다.
종래에는 국내 이동 통신 시장은 CDMA기술을 기반으로 하는 동기식 IS-95망 을 주류를 이루었으나, 최근에는 광대역 코드 분할 다중 접속(WCDMA:Wideband Code Division Multiple Access) 방식을 근간으로 하는 UMTS(Universal Mobile Telecommunication System) 서비스가 상용화되고 있는 있는 실정이다.
따라서, GSM(유럽에서 사용하는 비동기식 이동 통신 서비스)에서 가입자 인증에 사용된 SIM카드와 동기식CDMA에서 가입자 인증에 사용되는 UIM카드를 통합한 가입자 인증 카드의 개발을 통해 세대간, 시스템간 로밍 문제를 해결하기 위한 연구가 진행되고 있다.
특히, 최근에는 다양한 가입자의 욕구를 충족시키기 위해. 가입자 인증 카드는 오픈 플랫폼의 하나인 자바 카드로 개발되고 있으며. 개별적인 부가가치서비스들을 각각의 자바 카드 애플릿으로 개발하여, 가입자의 요구에 따라 개인화(Personalized)된 부가가치서비스를 유연하게 제공할 수 있다.
즉, USIM 카드는 대용량, 다기능의 스마트 카드 기능을 갖추고 있어 통신 기능, 글로벌 로밍 기능 및 신용카드, 뱅킹, 증권거래, 멤버십, 결재 등 다양한 부가 서비스 기능을 통합적으로 제공할 수 있다.
현재 스마트 카드는 웹서버 기능을 위해서 ISO 7816 규격을 기반으로 터미널-예를 들면, 이동 단말기-과 스마트 카드 사이의 통신 기능을 제공한다.
일반적으로, 스마트 카드는 CPU와 카드 운용 체제를 갖추고 있기 때문에 하나의 카드에서 다양한 응용 프로그램을 구현하고, 여러 가지 응용 서비스를 통합하여 사용할 수 있다는 점에서 그 편리성과 사용 분야 확대의 잠재성이 매우 큰 기술이다.
이러한, 스마트 카드 기술의 잠재력을 고려해볼 때, 스마트 카드 플랫폼 기술은 다양한 카드 응용 프로그램을 수용하기 위해 사용자 및 개발자의 편의성 및 기능적인 면을 보완한 진화된 형태로 발전되어 갈 전망이다.
종래의 스마트 카드와 터미널간의 PIMS 정보는 초기 부팅 시 터미널의 메모리상에 모두 로딩되어 저장되며, 터미널에 의해 생성된 PIMS 정보는 스마트 카드에 저장함으로써, 스마트 카드와 터미널간의 PIMS 정보 동기화가 이루어졌다.
하지만, 이러한 방식은 스마트 카드에 저장된 모든 PIMS 정보를 순차적으로 터미널로 읽어 들여와야 하기 때문에 PIMS 정보의 양이 큰 경우, 터미널의 부팅 시간이 과도하게 소요되는 문제점이 있었다.
예를 들면, 스마트 카드의 USIM 응용 디렉토리(ADF_USIM)의 폰북 전용 파일(DF_phonebook)에 저장된 100개의 레코드를 터미널로 읽어와 저장하는데 30초가 소요되는 경우, 1000개의 레코드에 대해서는 300초가 소요된다.
또한, 종래의 ISO 7816 규격에 따른 스마트 카드는 텍스트(Text) 기반의 데이터 저장만을 수용하므로 이미지 및 MMS를 포함하는 개인 멀티미디어 데이터를 처리하지 못하는 문제점이 있었다.
상기와 같은 종래 기술의 문제점을 해결하기 위한 본 발명의 목적은 스마트 카드 데이터베이스 관리 시스템을 이용하여 정보를 효율적으로 관리하는 것 이 가능한 대용량 스마트 카드를 제공하는 것이다.
본 발명의 다른 목적은 스마트 카드에 저장될 데이터의 특성에 따라 적합한 기록 매체를 선택하는 기능이 탑재된 스마트 카드를 제공하는 것이다.
본 발명의 다른 목적은 스마트 카드 데이터베이스 관리 시스템 및 개인 멀티미디어 정보 관리 서버를 스마트 카드상에 탑재함으로써, 스마트 카드상에서의 보다 효과적인 개인 멀티미디어 데이터 관리 방법 및 장치를 제공하는 것이다.
본 발명의 다른 목적은 사용자가 터미널에 탑재된 개인 멀티미디어 관리 응용 프로그램을 이용하여 스마트 카드상의 개인 멀티미디어 정보를 실시간으로 관리할 수 있는 대용량 스마트 카드를 이용한 멀티미디어 PIMS 서비스를 제공하는 것이다.
본 발명의 다른 목적은 SQL 번역 기능이 탑재된 스마트 카드를 제공하는 것이다.
본 발명의 다른 목적은 ISO 7816에 정의된 질의문 및 사용자 정의된 SQL 질의문을 모두 처리하는 것이 가능한 스마트 카드를 제공하는 것이다.
본 발명의 다른 목적은 일반적인 SQL 구문과 ISO 7816에서 정의된 구분 사이의 매핑 관계를 정의한 질의 매핑 테이블을 제공함으로써, 보다 사용자 편의적인 스마트 카드 제어 방법을 제공하는 것이다.
본 발명의 다른 목적은 SQL 기반의 질의 응답이 가능한 고속 통신 인터페이스를 터미널과 스마트 카드 사이에 구비함으로써, 보다 고속의 데이터 통신이 가능한 스마트 카드를 제공하는 것이다.
본 발명의 다른 목적들은 이하의 실시예에 대한 설명을 통해 쉽게 이해될 수 있을 것이다.
본 발명의 일 실시예에 따르면, 스마트 카드에서 데이터를 관리하는 방법이 개시된다.
본 발명에 따른 스마트 카드에서의 데이터 관리 방법은 터미널로부터 데이터 삽입 요청 신호를 수신하는 삽입 요청 수신 단계; 상기 삽입 요청된 데이터의 특성에 상응하는 기록 매체를 선택하는 기록 매체 선택 단계; 및 상기 선택된 기록 매체에 상기 삽입 요청된 데이터를 저장하는 데이터 저장 단계를 포함하는 것을 특징으로 한다.
본 발명의 다른 일 실시예에 따르면 스마트 카드에서의 데이터 관리 방법이 개시된다. 좀 더 상세하게, 스마트 카드에서 정보의 추출 요청에 따라 이를 처리하는 방법이 개시된다.
본 발명의 일 실시예에 따른 스마트 카드에서 데이터를 관리하는 방법은 터미널로부터 데이터 추출 요청 신호를 수신하는 추출 요청 수신 단계; 상기 추출 요청된 데이터의 특성에 상응하는 기록 매체를 선택하는 기록 매체 선택 단계; 및 상기 선택된 기록 매체로부터 상기 추출 요청된 데이터를 추출하는 데이터 추출 단계를 포함하는 것을 특징으로 한다.
본 발명의 다른 일 실시예에 따르면, 대용량 메모리가 구비된 스마트 카드가 개시된다.
본 발명의 일 실시예에 따른 스마트 카드는 터미널로부터 데이터 식별 정보를 포함하는 데이터 삽입 요청 신호를 수신하면, 상기 삽입 요청된 데이터가 저장될 기록 매체 타입 정보를 획득하고, 상기 획득된 기록 매체 타입에 따라 상기 삽입 요청된 데이터의 저장을 제어하는 카드운용체제; 및
상기 카드운용체제로부터 상기 데이터 식별 정보를 수신하여 상기 삽입 요청된 데이터를 저장할 기록 매체를 선택하고, 상기 선택된 기록 매체에 상응하는 기록 매체 타입 정보를 상기 카드운용체제에 전송하는 데이터베이스관리시스템을 포함하되, 상기 데이터베이스관리시스템은 상기 카드운용체제로부터 저장 요청 신호를 수신하면 상기 삽입 요청된 데이터를 상기 대용량 메모리에 저장하는 것을 특징으로 한다.
본 발명은 스마트 카드 데이터베이스 관리 시스템을 이용하여 정보를 효율적으로 관리하는 것이 가능한 대용량 스마트 카드를 제공하는 장점이 있다.
또한, 본 발명은 스마트 카드에 저장될 데이터의 특성에 따라 적합한 기록 매체를 선택하는 기능이 탑재된 스마트 카드를 제공하는 장점이 있다.
또한, 본 발명은 스마트 카드에 저장될 데이터가 조회나 변경이 잦은 특성이 있는 경우는 EEPROM에 저장하고, 비교적 조회나 변경이 적은 데이터는 대용량 메모리에 저장함으로써, 데이터 처리 속도를 향상시킬 수 있는 장점이 있다.
또한, 본 발명은 사용자가 EEPROM과 대용량 메모리를 하나의 저장 공간으로 인식하도록 제어하는 것이 가능한 스마트 카드 데이터베이스 관리 시스템을 제공하는 장점이 있다.
또한, 본 발명은 스마트 카드 데이터베이스 관리 시스템 및 개인 멀티미디어 정보 관리 서버를 스마트 카드상에 탑재함으로써, 스마트 카드상에서의 보다 효과적인 개인 멀티미디어 데이터 관리 방법 및 장치를 제공하는 장점이 있다.
또한, 본 발명은 사용자가 터미널에 탑재된 개인 멀티미디어 관리 응용 프로그램을 이용하여 스마트 카드상의 개인 멀티미디어 정보를 실시간으로 관리할 수 있는 대용량 스마트 카드를 이용한 멀티미디어 PIMS 서비스를 제공하는 장점이 있다.
본 발명은 SQL 번역 기능이 탑재된 스마트 카드를 제공함으로써, 보다 빠른 터미널 부팅 시간을 제공하는 장점이 있다.
또한, 본 발명은 ISO 7816에 정의된 구문 및 일반적인 SQL 구문을 모두 처리하는 것이 가능한 스마트 카드를 제공함으로써, 기존 터미널과의 호환성을 유지하는 스마트 카드를 제공하는 장점이 있다.
또한, 본 발명은 일반적인 SQL 구문과 ISO 7816에서 정의된 구분 사이의 매핑 관계를 정의한 질의 매핑 테이블을 스마트 카드 운용 체제에 구비함으로써, 보다 사용자 편의적인 스마트 카드 제어 방법을 제공하는 장점이 있다.
또한, 본 발명은 SQL 기반의 질의 응답이 가능한 고속 통신 인터페이스를 터미널과 스마트 카드 사이에 구비함으로써, 보다 고속의 데이터 통신이 가능한 스마 트 카드를 제공하는 장점이 있다.
또한, 본 발명은 SQL 기반의 질의어에 기반으로 대용량 스마트 카드상에 저장된 데이터를 쉽게 접근/갱신/삭제할 수 있는 기능을 제공함으로써, 개발자가 보다 다양한 스마트 카드 서비스를 보다 편리하게 개발할 수 있는 개발 환경을 제공하는 효과가 있다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2, 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. 본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니 다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함하는" 또는 "탑재된" "장착된" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.
이하에서, 본 발명에 따른 대용량 스마트 카드를 이용한 개인 멀티미디어 정보 관리 서비스 제공 방법 및 장치에 관한 바람직한 실시예를 도면을 참조하여 상세하게 설명하기로 한다.
도 1은 UMTS 시스템에서의 UE의 구조를 도시한 블록도이다.
3GPP 표준에서는 이동 단말기를 UE(User Equipment)라 칭하며, 일반적인 기지국을 NodeB로 정의하여 사용한다.
이하의 설명에서는 설명의 편의를 위해, 이동 단말기 및 기지국을 각각 UE 및 기지국이라 명하기로 한다.
도 1을 참조하면, UE(User Equipment, 100)는 기능에 따라, 크게 ME(Mobile Equipment, 110)와 USIM(UMTS Subscriber Identity Module, 120)으로 구분될 수 있다.
일반적으로 USIM(120)은 ME(110)과 물리적으로 분리될 수 있기 때문에 이 둘 사이에는 Cu라는 표준 인터페이스가 정의되어 있다.
여기서, ME(110)는 단말 장치(Terminal Equipment:TE, 130), 네트워크 종단(Network Termination:NT, 112) 및 무선 종단(Radio Termination:RT, 114)로 구성되며, NT(112)와 RT(114)는 Tu 인터페이스를 통해 정보를 송수신할 수 있다.
도 1에 도시된 바와 같이, NT(112)는 Cu 인터페이스 및 R 인터페이스를 통해 USIM(120) 및 TE(130)와 각각 통신할 수 있다.
UMTS에서 무선 구간의 인터페이스를 Uu 인터페이스라 하며, RT(114)는 Uu 인터페이스를 통해 NodeB(140)에 무선 신호를 송신하거나, NodeB(140)가 송신한 무선 신호를 수신할 수 있다.
USIM(120)은 사용자의 고유한 정보를 저장하는 구성 요소로서, 물리적으로 UE(100)의 일측에 착탈식으로 장착되는 IC(Integrated Card) 카드의 형태가 일반적 이다. USIM(120)은 다양한 응용-여기서, 다양한 응용은 뱅킹 기능, 폰북 기능, 교통 기능 등을 포함함- 및 다양한 무선 접속 기술에 대응하는 통신 기능 등을 제공할 수 있다. 이러한 이유로, USIM(120)은 종종 스마트 카드 기능이 탑재된 UICC(Universal Integrated Circuit)라 불린다.
일반적으로, USIM(120)에 포함되는 내용은 서비스 제공자로부터 공급받는다. 그리고, USIM(120)은 핵심망(Core Network)의 홈위치등록기(Home Location Register:HLR)에 저장되어 있는 가입자의 고유한 정보를 포함할 수 있다.
또한, USIM(120)에는 폰북(Phone Book), 통화이력, 단문 메시지 등의 다양한 개인 정보를 유지할 수 있다.
이하의 설명에서는 USIM(120)에 저장될 수 있는 기본적인 정보에 대해 상세히 설명하기로 한다.
우선, USIM(120)은 USIM 제조 회사와 서비스 제공자에 의해 설정된 기본적인 정보인 암호화 알고리즘, IMSI(International Mobile Subscriber Identity) 및접속 클래스 정보(Access Class Information) 등이 유지할 수 있다.
또한, USIM(120)은 단말의 이동성 제공을 위한 정보로서 위치 식별자-예를 들면, Location Area Identity, Routing Area Identity 등을 포함함-, 임시이동가입자식별자(Temporary Mobile Subscriber Identity:TMSI), 암호화 파라미터를 저장할 수 있으며, 해당 USIM을 통해 접속 가능한 서비스 종류에 관한 정보도 유지할 수 있다.
특히, USIM(120)은 다양한 응용을 실행시키기 위한 자체적인 실행 프로그램 을 유지할 수 있으며, 사용자가 개인적으로 사용하는 단문 메시지, 다이얼링 정보, 폰북 등의 사용자 데이터를 저장할 수 있다.
ME(110)는 무선접속망(Radio Access Network)과의 실질적인 통신을 담당하는 무선 단말을 지칭하고, MT(Mobile Terminal, 115)와 TE(130)로 세분된다.
MT(115)는 무선 구간을 통한 이동 통신 시스템과의 통신을 위한 무선 접속 프로토콜이 위치한다. UE(100)의 측면에서 본다면, MT(115)는 실제의 물리적인 단말 장치로 동일한 무선 접속 기술을 사용하는 UTRAN 영역에서만 통신이 가능하다.
TE(130)는 무선 접속 프로토콜의 동작에 필요한 제어 기능들을 제공한다. 예를 들면, TE(130)는 랩탑(Laptop) 컴퓨터와 연결된 무선 단말이 무선 모뎀처럼 동작할 수 있는 환경을 제공할 수 있다.또한, TE(130)는 ITU-T에 의해서 정의된 AT Command와 같은 Modem Control Command Set을 사용하여 단말의 종단-여기서, 단말의 종단은 NT(112) 및 RT(114)를 포함함-을 제어할 수 있다.
도 2는 일반적인 UICC에 구성되어야 하는 응용과 그에 따른 파일 구조이다.
도 2에 도시된 바와 같이, UICC의 논리적인 파일 구조는 크게 하나의 MF(Master File)과 UE(100)의 기본적인 동작을 위한 필수 요소 파일을 포함하여야 한다. 여기서, 필수 요소 파일은 EFPL(220), EFICCID(230) 및 EFDIR(Element File Directory, 250)을 포함한다.
여기서, EFPL(220)에 포함된 정보는 MMI(Man Machine Interface) 목적으로 ME(110)에 의해 사용될 수 있다. 또한, EFPL(220)에 포함된 정보는 선호하는 언어 로 셀 방송 메시지(Cell Broadcasting Message)를 탐색하기 위해 사용될 수 있다.
또한, 일반적인 UICC는 WCDMA 서비스를 제공하기 위한 USIM 응용뿐만 아니라 GSM 로밍을 위한 GSM 응용 및 CDMA 로밍을 위한 UIM 응용 등을 포함할 수 있다.
이와 같이, 하나의 UICC를 통해 제공될 수 있는 다양한 응용 전용 파일에 대한 목록은 EFDIR(250)을 통해 관리될 수 있다.
도 2를 참조하면, EFDIR(250)은 2개의 응용 전용 파일-ADF1(260) 및 ADF2(270)-에 대한 정보를 가지고 있다. 여기서, ADF1은 USIM과 관련된 응용 전용 파일이며, ADF2는 다른 무선 접속 방식-예를 들면, 와이브로(Wibro)-에 상응하는 응용 전용 파일일 수 있다.
이하의 설명에서는 UICC 파일 구조에 포함되는 마스터 파일(Master File), 응용전용파일(Application Dedicated File:ADF), 전용 파일(Dedicated File:DF) 및 요소 파일(Elementary File:EF)의 관계를 상세히 설명하기로 한다.
상기한 파일은 해당 파일을 식별하기 위한 소정의 파일 식별자(File Identifier, 이하, 'FID'이라 함)가 할당된다. 여기서, FID는 16진수로 표기되며, 2바이트(Bites)의 길이를 갖는다. 도 2를 참조하면, GSM 서비스를 위한 전용파일(240)의 FID는 '7F20'으로 정의된다.
우선, 마스터 파일(210)은 UICC 파일 구조의 루트 디렉토리(root directory)로서, 적어도 하나의 전용 파일-여기서, 전용 파일은 응용 전용 파일을 포함함- 및 요소 파일을 가질 수 있다.
요소 파일은 데이터를 저장하는 최소 단위의 파일 구조를 가지며, 데이터 저 장 방식에 따라, 투명 요소 파일(Transparent EF), 선형 고정 요소 파일(Linear Fixed EF) 및 순환 요소 파일(Cyclic EF)로 구분될 수 있다.
여기서, 투명 요소 파일은 1개의 레코드를 저장하는 구조이고, 선형 고정 요소 파일은 고정된 크기를 갖는 여러 개의 레코드를 순차적으로 저장하는 구조이다. 여기서, 선형 고정 요소 파일로는 단문 메시지 저장을 위한 파일인 EFSMS가 대표적이다.
반면, 순환 요소 파일은 데이터를 순차적으로 저장하다가 해당 파일에 할당된 영역의 마지막 레코드가 채워지면 맨 처음 레코드를 덮어쓰는 데이터 구조이다. 즉, 순환 요소 파일은 일반적인 순환 대기 행렬(Circular Queue)의 구조에 해당 될 수 있다.
예를 들면, 순환 요소 파일은 발신 및 착신 통화 이력을 기록하기 위한 파일인 발신 호 정보 요소 파일(Outgoing Call Information EF:EFOCI) 및 착신 호 정보 요소 파일(Incoming Call Information EF:EFICI)가 대표적이다.
전용 파일은 기능상의 그룹을 형성하며, 하위 수준의 전용 파일 및 요소 파일로 구성될 수 있다. 즉, 전용 파일-여기서, 전용 파일은 응용 전용 파일을 포함함-은 응용별 동일 그룹의 요소 파일 및 요소 파일의 그룹으로 형성될 수 있다.
예를 들면, 도면 번호 271을 참조하면, ADF2(270)는 하나의 전용 파일-즉, DF1-및 2개의 요소 파일로 구성됨을 알 수 있다.
일반적으로 UICC에 필수적으로 구성되어야 하는 파일에 대한 FID는 국제 표준에 의해 미리 정의된다. 이하의 설명에서는 국제 표준에 의해 미리 정의된 FID를 '예약 FID'이라 명하기로 한다.
하지만, EFDIR(250)에 포함되는 응용 전용 파일(ADF)은 사업자의 의해 정의된 파일 식별자가 할당될 수 있다. 이때, 응용 전용 파일을 위해 할당된 파일 식별자가 국제 표준에 정의된 파일 식별자 중 어느 하나와 일치하는 경우, 원하지 않는 응용이 수행되는 문제점이 발생할 수 있다.
상기한 파일 식별자의 충돌을 회피하기 위해 응용 전용 파일은 별도의 응용 식별자(Application Identifier:AID)가 할당될 수 있다.
도 3은 종래 기술에 따른 터미널과 스마트카드사이의 통신 메커니즘을 설명하기 위한 도면이다.
도 3에 도시된 바와 같이, 종래 기술에 따른 터미널과 스마트 카드 사이의 통신은 ISO 7816 표준에 정의된 구문을 이용한 요구/응답 형태의 반이중 모드(Half duplex mode) 통신 방식을 따른다. 일반적으로, ISO 7816 표준에 정의된 전송 방식은 시리얼(Serial) 양방향 전송 라인을 사용한 저속-예를 들면, 9.6kbps-의 데이터 통신을 지원한다.
ISO 7816 표준에서는 2가지 전송 프로토콜을 제공한다.
그 중 하나인 T=0 프로토콜은 ISO 7816에서 초기부터 사용된 전송 프로토콜로서 비동기 반이중 바이트 전송 방식을 따른다.
나머지 T=1 프로토콜은 블록 전송 프로토콜이라고 하며 바이트 전송 프로토콜에 비해 보안성이 다소 개선될 수 있는 여지가 있다. GSM의 11.11 SIM(Subscriber Identification Module)에서 T=0 프로토콜을 채택한 이래 차세대 신용카드 EMV에서는 T=0, T=1 양 프로토콜을 채택하고 있다.
도 3을 참조하면, 명령(Command)는 터미널에 의해 개시되며, 스마트 카드에 내장된 카드 운용 체제(Card OS)는 터미널로부터 수신된 명령을 해석하여, 스마트 카드에 저장된 데이터의 상태를 갱신하고, 수신된 명령에 대한 응답(Respond)를 터미널에 전송한다.
ISO 7816-7에서는 종래의 APDU(Application Protocol Data Unit)을 이용하여 터미널과 스마트 카드 사이에 송수신되는 명령 메시지(Command Message)와 응답 메시지를 제공한다.
하지만, 현재 APDU를 통해 제공되는 구문은 제한적이며, 특정 요소 파일에 저장된 정보를 획득하기 위해서는 복수의 요구/응답 절차를 수행해야 하는 단점이 있다.
따라서, 터미널에서 스마트 카드상의 특정 요소 파일에 저장된 정보를 획득하기 위해서는 터미널이 마스터 파일부터 해당 요소 파일까지의 단계적인 접속이 필요하다.
또한, 터미널이 특정 요소 파일에 접속할지라도 레코드 단위의 처리가 수행되므로 특정 요소 파일에 저장된 정보를 모두 획득하기 위해서는 많은 처리 시간이 소요될 수 있다.
도 4는 종래 기술에 따른 APDU 명령 메시지 구조이다.
도 4에 도시된 바와 같이, APUU 명령 메시지는 크게 헤더(Header, 410)과 몸체(Body, 420)로 구성된다.
헤더(410)는 클래스(Class, 411), 명령 코드(Instruction Code, 412), 파라메터(Parameter, 413)로 구성될 수 있다.
여기서, 파라메터(413)는 P1(414) 및 P2(415)로 구성되며, P1(414)와 P2(415)는 명령 코드(412)의 기준 주소 정보를 가리킨다.
클래스(411)는 ISO 명령어, 전용 명령어, 암호화 등의 명령어 집합을 식별하기 위한 클래스 바이트가 기록되는 영역이며, ISO 7816-4에 자세하게 서술되어있다.
명령 코드(412)는 클래스 필드(411)과 조합하여 명령 타입을 식별하기 위한 코드로서, 유효 명령 코드의 LSB는 항상 0이며, MSB는 6이나 9가 될 수 없다. 그 이유는 스마트카드 제조업체가 내부적으로 사용하는 값이므로 그에 따른 충돌을 피하기 위해서이다.
몸체(420)는 가변 길이를 가지며, 명령 메시지에 포함된 데이터의 길이를 가리키는 Lc(Length of Command data, 421), 스마트 카드의 해당 주소 영역에 기록될 데이터를 가리키는 DATA(422) 및 스마트 카드로부터 수신될 응답 메시지의 크기를 지시하는 Le(Length of Expected response data, 423)으로 구성된다.
이하에서는 APDU 명령 메시지의 다양한 구조를 간단히 설명하기로 한다.
제 1구조는 전송이나 수신 데이터를 요구하지 않는 명령 메시지로서, 클래스(411), 명령 코드(412), P1(414), P2(415)로 구성된다.
제 2구조는 터미널에서 스마트 카드로 전송할 데이터를 포함하는 명령 메시지로서 클래스(411), 명령 코드(412), P1(414), P2(415), Lc(421), DATA(422)로 구성된다.
제 3구조는 터미널이 데이터를 스마트 카드에 전송하지 않지만, 데이터 회신 응답을 스마트 카드에 요구하는 명령 메시지로서, 클래스(411), 명령 코드(412), P1(414), P2(415), Le(423)로 구성된다.
마지막, 제 4구조는 터미널이 데이터를 스마트 카드에 전송함과 동시에 데이터 회신 응답을 스마트 카드에 요구하는 명령 메시지로서, 클래스(411), 명령 코드(412), P1(414), P2(415), Lc(421), DATA(422), Le(423)로 구성된다.
도 5는 종래 기술에 따른 APDU 응답 메시지의 구조이다.
도 5에 도시된 바와 같이, APDU 응답 메시지는 터미널로 전송할 데이터가 존재하는 경우에 포함되는 몸체(Body, 510)와 상태 바이트를 포함하는 트레일러(Trailer, 520)로 구성된다.
APDU 응답 메시지의 크기는 APDU 명령 메시지에 포함된 Le(423) 값만큼의 크기를 가진다
여기서, 응답 메시지에 포함되는 상태 코드 정보(Status Word:SW)는 SW1과 SW2이며 터미널에 의해 요구된 명령이 정상 완료된 경우와 실패한 경우로 구분된다.
터미널이 명령 메시지를 스마트 카드에 전송한 후, 스마트 카드로부터 응답 을 기다리는데 이것을 절차바이트(Procedure Byte)라 하며, 절차바이트는 ACK 또는 SW1 둘 중에 하나이다.
만약, 스마트 카드가 SW1바이트를 전송하면, 새로운 SW2바이트가 전송될 것을 의미한다. SW1, SW2 바이트 조합은 스마트 카드 상태 및 응답이 완료되었음을 터미널에 통보하기 위한 용도로 사용될 수 있다.
도 6은 ISO 7816 표준에 정의된 스마트 카드와 터미널간의 통신을 하기 위한 기본 명령어를 설명하기 위한 도면이다.
스마트 카드는 수동적으로 동작-단말기 또는 시스템에서 주어진 명령에 대해서 응답하는 형태로 동작함-하고, 전원, 리셋, 클럭 및 명령어의 전달이 전부 외부에서 주어졌을 때에만 카드 내부에서 응답하는 형태로 동작하기 때문에 기본 명령어는 업체간에 호환성 및 연동을 위해 매우 중요한 요소이다.
하지만, 도 6에 도시된 명령어만으로 다양한 스마트 카드 부가 서비스를 제공하는 것은 매우 어려운 문제점이 있다.
상기한 도 6에 도시된 각각의 APDU 명령 메시지에 대한 세부 설명은 해당 도면상에 기재된 내용으로 대신하기로 한다.
도 7은 종래 기술에 따른 ISO 7816 표준에 따른 터미널과 USIM 사이의 데이터 전송 절차를 설명하기 위한 도면이다.
이하의 설명에서는 터미널이 스마트 카드에 저장된 폰북(Phonebook) 데이터 를 획득하는 절차를 상기한 도 7을 참조하여 상세히 설명하기로 한다.
도 7을 참조하면, 스마트 카드가 터미널에 삽입되고, 전원이 공급되면, 터미널은 스마트 카드에 리셋(Reset) 신호를 송신한다(S702),
스마트 카드는 내부적인 리셋 절차가 완료되면, 리셋에 대한 응답 신호(Answer To Reset:ATR)을 터미널에 송신한다(S704).
터미널은 수신된 ATR에 따라 전원 및 전압을 결정할 뿐만 아니라 프로토콜을 결정하고 Initial Character, Format Character, Interface Character, Historical Character, Check Character, 제조 업체 식별 등 기본적인 동작을 시작할 수 있다. 이 후, 터미널은 스마트 카드에 저장된 파일을 선택하는 절차를 수행한다.
터미널에서 스마트 카드에 저장된 데이터를 획득하는 절차는 크게 파일 선택 절차와 레코드 선택 절차가 순차적으로 수행된다.
도 7에 도시된 바와 같이, 터미널은 USIM 응용 전용 파일을 선택하기 위해 "Select ADF_USIM" 명령을 스마트 카드에 전송한다(S706),
스마트 카드는 ADF_USIM 디렉토리를 정상적으로 선택한 경우, ACK 상태 식별자-여기서, ACK 상태 식별자는 트레일러(520)에 0x9000이 설정되는 것을 의미함-를 포함하는 APDU 응답 메시지를 터미널에 전송한다(S708).
터미널은 폰북 디렉토리의 선택을 지시하는 APDU 명령 메시지-예를 들면, "Select DF_Phonebook"-를 스마트 카드에 전송한다(S710).
스마트 카드는 DF_Phonebook 디렉토리를 정상적으로 선택한 경우, ACK 상태 식별자를 포함하는 APDU 응답 메시지를 터미널에 전송한다(S712).
터미널은 폰북에 기록된 첫번째 레코드의 선택을 지시하는 APDU 명령 메시지-예를 들면, "Select EF_Phonebook record #1"-를 스마트 카드에 전송한다(S714).
터미널은 스마트 카드로부터 ACK 상태 식별자를 포함하는 APDU 응답 메시지를 수신하면(S716), 폰북에 기록된 첫번째 레코드의 독출을 지시하는 APDU 명령 메시지-예를 들면, "Read record EF_Phonebook record #1"-를 스마트 카드에 전송한다(S718).
스마트 카드는 폰북에 저장된 첫번째 레코드를 독출하고, 독출된 첫번째 레코드 및 ACK 상태 식별자를 포함하는 APDU 응답 메시지를 터미널에 전송한다(S720).
이후, 터미널은 폰북에 기록된 모든 레코드를 획득할 때까지 제2 내지 제N 폰북 레코드에 대한 독출을 지시하는 APDU 명령 메시지를 터미널에 전송할 수 있다(S722).
즉, 이동 단말기는 상기한 702 단계 내지 722 단계를 수행함으로써 USIM에 저장된 폰북을 이동 단말기로 동기화시킬 수 있다.
일반적으로, 이동 단말기는 USIM에 저장된 폰북 데이터를 초기화 단계에서 획득하고, 이를 소정의 기록 영역에 저장하여 사용한다.
하지만, 종래 기술에 따른 폰북 초기화 절차는 많은 처리 시간이 소요되므로, 전체적으로 이동 단말기의 초기 부팅 시간이 길어지는 문제점이 존재할 수 있다.
도 8은 본 발명의 일 실시예에 따른 스마트 카드의 내부 블록도이다.
도 8에 도시된 바와 같이, 본 발명에 따른 스마트 카드(810)는 스마트카드데이터베이스관리시스템(Smart Card Database Management System:SC-DBMS, 812), 카드운용체제(Card Operating System:COS, 814), 구문해독기(816), SQL구문매핑테이블(818), 데이터베이스(820), ROM(Read Only Memory, 822), RAM(Random Access Memory, 824), EEPROM(Electrically- Erasable Programmable Read-Only Memory, 826) 및 스마트카드인터페이스(SC I/F, 828)을 포함할 수 있다.
여기서, 스마트카드인터페이스(828)은 ISO 7816에 정의된 전기적, 물리적 특성을 지원하는 ISO 7816 인터페이스, NFC(Near Field Communicaiton) 모듈과의 통신 인터페이스를 제공하는 RF 인터페이스, USB 통신과 같은 고속의 통신 인터페이스를 제공하는 HS(High Speed) 인터페이스 중 적어도 하나를 지원할 수 있다.
터미널(850)은 터미널인터페이스(Terminal I/F, 852), HAL(Handset Abstraction Layer, 854), 터미널운용체제(856) 및 응용소프트웨어(856)을 포함할 수 있다.
여기서, HAL(854)는 터미널운용체제(856)와 터미널하드웨어 사이의 인터페이스 표준으로서, 터미널 하드웨어에 종속되지 않고, 터미널운용체제를 손쉽게 포팅(porting)할 수 있는 환경을 제공한다. 본 발명의 일 실시예 따른 터미널(850)은 ISO 7816에 정의된 명령 메시지 및 사용자 정의된 SQL 질의문(Query를 스마트 카드(810)에 송신할 수 있는 것이 바람직하다.
또한, 터미널(850)은 ISO 7816에 정의된 APDU 응답 메시지 및 SQL 응답 메시 지를 모두 처리하는 것이 바람직하다.
본 발명에 따른 스마트 카드(810)는 터미널(850)로부터 수신된 질의문이 일반적인 SQL 구문인지 ISO 7818에 정의된 APDU 메시지인지를 식별할 수 있다. 여기서, 질의문 타입의 식별은 카드운용체제(814)에 의해 수행되는 것이 바람직하다.
만약, 수신된 질의문이 SQL 구문인 경우, 스마트 카드(810)는 미리 저장된 SQL 구문 매핑 테이블(818)을 참조하여 자체적으로 일련의 APDU 명령 메시지를 생성하고, 해당 APDU 명령 메시지에 대한 처리 결과를 소정의 임시 기록 영역-예를 들면, RAM(824)-에 저장할 수 있다.
여기서, 구분해독기(816)가 카드운용체제(814)의 제어 신호에 따라 SQL 구문에 해독하여 일련의 APDU 명령 메시지를 생성하고, 처리 결과를 임시 기록 영역에 저장하는 기능을 수행하는 것이 바람직하다.
따라서, SQL구문매핑테이블(818)은 SQL 구문 별 순차적인 APDU 명령의 수행 절차-여기서, APDU 명령 메시지는 파일 선택 절차 및 레코드 추출 절차를 수행하기 위한 메시지로 구성됨-가 정의되어 있는 것이 바람직하다.
구분해독기(816)는 해독된 SQL 구분에 상응하는 모든 APDU 명령 메시지를 수행하면, 해당 처리 결과를 스마트카드인터페이스(828)를 통해 터미널(850)에 전송한다.
본 발명의 다른 일 실시예에 따르면, 구분해독기(816)는 구문 해독 요청된 SQL 구문에 상응하는 적어도 하나의 순차적인 ADPU 명령 메시지를 카드운용체제(814)에 제공하고, 카드운용체제(814)가 APDU 명령 메시지를 이용하여 파일 선택 절차 및 레코드 추출 절차를 수행할 수도 있음을 주의해야 한다.
이때, 카드운용체제(814)는 터미널(850)으로 전송할 처리 결과가 존재하는 경우, 해당 처리 결과를 스마트카드인터페이스(828)를 통해 터미널(850)에 전송한다.
SC-DBMS(812)는 데이터베이스(820)로의 접속 제어 및 관리 기능을 수행한다. 예를 들면, SC-DBMS(812)는 구문해독기(816) 또는 카드운용체제(814)로부터 수신된 파일 선택 명령 및 레코드 추출 명령을 처리하고, 처리 결과를 해당 명령 송신측에 제공할 수 있다.
ROM(822)은 프로그램을 저장하기 위한 읽기 전용 기억 장소로서, 카드운용체제(814)에 로딩될 프로그램 및 기본적인 API가 저장될 수 있다.
RAM(824)는 완성된 스마트 카드의 마이크로 프로세서에서 보조 기억 장치로 사용하는 휘발성 메모리로서, 프로그램 실행 중에 생성되는 변수 및 데이터를 임시 저장하기 위한 기록 장치이다.
EEPROM(826)은 스마트 카드 제조 후에도 카드내의 메모리 내용에 대한 읽기, 쓰기, 삭제 등이 가능하며, 일반적으로 응용 프로그램 소스 및 응용 프로그램 데이터를 저장하기 위한 용도로 사용될 수 있다.
일반적으로, EEPROM(826)은 상기한 도 2에 도시된 UICC 파일들을 저장하기 위한 용도로 사용된다. 하지만, UICC 파일들은 텍스트 기반의 데이터들로 구성될 뿐만 아니라 멀티미디어 데이터와 같은 대용량의 정보를 저장할 수 없는 단점이 있다.
따라서, 본 발명의 일 실시예에 따르면, 데이터 양이 적고, 잦은 조회나 변경이 필요한 데이터는 EEPROM(826)을 통해 관리하고, 데이터 양이 크고, 비교적 조회나 변경 횟수가 적은 데이터는 플래시 메모리 형태의 기록 매체에 파일 시스템이 구성된 데이터베이스(820)를 통해 관리되는 것이 바람직하다.
예를 들면, 본 발명에 따른 데이터베이스(820)는 폰북 정보, 이메일 정보, 단문 메시지 정보, 통화 이력, 멀티미디어 메시지 정보 등 비교적 데이터 양이 큰 정보가 저장될 수 있다.
상기한 도 8에서는 구문해독기(816)가 카드운용체제(814)와 내부 버스(Internal bus)를 통해 통신하는 것으로 도시되어 있으나, 본 발명의 다른 실시예에 따르면, 구문해독기(816)가 카드운용체제(814)의 하부 기능 모듈로 구성될 수도 있음을 주의해야 한다.
특히, 본 발명에 따른 SC-DBMS(812)는 터미널(850)로부터 기록 요청된 데이터의 크기 및 데이터의 타입에 따라 해당 데이터를 대용량 플래시 메모리-즉, 데이터베이스(820)-에 저장할 것인지, EEPROM(826)에 저장할 것인지를 판단할 수 있다.
예를 들면, 카드운용체제(814)가 터미널(850)으로부터 MP3 파일의 기록을 지시하는 소정의 명령 메시지를 수신하는 경우, 카드운용체제(814)는 수신된 명령 메시지를 해독하고, 해당 MP3 파일에 대한 저장을 SC-DBMS(812)에 요청할 수 있다. 여기서, 명령 메시지는 데이터 타입, 데이터의 길이 정보 등을 포함하는 것이 바람직하다.
SC-DBMS(812)는 기록 요청된 데이터의 타입이 멀티미디어 타입이므로, 해당 MP3 파일을 데이터베이스(820)에 저장할 수 있다.
만약, 카드운용체제(814)가 터미널(850)으로부터 단문 메시지의 기록을 지시하는 소정의 명령 메시지를 수신하는 경우, 카드운용체제(814)는 수신된 명령 메시지를 해독하고, 해당 단문 메시지에 대한 저장을 SC-DBMS(812)에 요청할 수 있다
SC-DBMS(812)는 기록 요청된 데이터의 타입이 텍스트 타입이고 미리 정의된 기준 크기보다 작은 경우, 해당 단문 메시지를 EEPROM(826)의 미리 정의된 EF-예를 들면, EFsms-에 저장할 수 있다.
만약, 카드운용체제(814)가 터미널(850)으로부터 Email 기록을 지시하는 소정의 명령 메시지를 수신하는 경우, 카드운용체제(814)는 수신된 명령 메시지를 해독하고, 해당 단문 메시지에 대한 저장을 SC-DBMS(812)에 요청할 수 있다.
SC-DBMS(812)는 기록 요청된 데이터의 타입이 텍스트 타입이고 미리 정의된 기준 크기보다 큰 경우, 해당 Email을 데이터베이스(820)에 저장할 수 있다.
일반적으로, EEPROM(826)에 유지된 파일은 상기한 도2에 도시된 바와 같이 계층적 구조를 가지고 있으며, 그에 따른 파일 선택 절차 및 레코드 획득 절차가 복잡한 특징이 있다.
또한, EEPROM(826)에 저장된 파일들은 응용 별 별도의 응용 전용 디렉토리(ADF)를 유지하므로, 스마트 카드에 탑재된 다양한 응용 프로그램간에 특정 파일을 공유하기 힘든 단점이 있다.
상기와 같은 문제점을 해결하기 위해, 본 발명의 일 실시예에 따른 SC-DBMS(812)는 응용 프로그램간의 공유가 필요한 데이터를 데이터베이스(820)상에서 관리되도록 제어하는 것이 바람직하다.
예를 들면, 하나의 스마트 카드에서 USIM 응용과 CDMA 응용을 모두 지원하는 경우, 각 응용 별 폰 북 파일이 별도로 EEPROM(826)에 기록될 수 있다. 하지만, 각 응용 별 폰 북에 저장된 정보는 동일한 정보로 구성될 수 있다.
이러한 경우, EEPROM(826)의 메모리 이용 효율이 떨어질 뿐만 아니라 폰 북을 변경할 때마다 응용 별 폰 북을 모두 갱신해야 하므로 많은 처리 시간이 소요될 수 있다. 즉, 상기한 예에서와 같은 문제점은 응용 별 공유되는 폰 북 파일을 데이터베이스(820)에 저장함으로써 간단히 해결될 수 있다.
본 발명의 다른 일 실시예에 따르면, 터미널(850)은 특정 데이터가 저장될 기록 매체-여기서, 기록 매체는 데이터베이스(820) 및 EEPROM(826)을 포함함-를 명령 메시지상에 명시적으로 포함시킬 수 있다. 이 경우, SC-DBMS(812)는 명령 메시지에 포함된 기록 매체 식별자에 상응하는 기록 매체에 기록 요청된 데이터를 저장할 수 있다.
도 9는 본 발명에 따른 SQL 구문을 이용한 터미널과 스마트 카드 사이의 데이터 전송 절차를 설명하기 위한 도면이다.
좀 더 상세하게, 도 9는 터미널이 SQL 구문을 이용하여 스마트 카드에 저장된 폰북(Phonebook) 데이터를 획득하는 절차를 설명하기 위한 도면이다.
도 9를 참조하면, 스마트 카드(810)가 터미널(850)에 장착되고, 전원이 공급되면, 터미널(850)은 스마트 카드(810)에 리셋(Reset) 신호를 송신한다(S902),
스마트 카드(810)는 내부적인 리셋 절차가 완료되면, 리셋에 대한 응답 신호(Answer To Reset:ATR)를 터미널에 송신한다(S904).
터미널(850)이 폰 북에 저장된 모든 데이터의 전송을 지시하는 SQL 구문-예를 들면, "Select * from Phonebook"-을 스마트 카드(810)에 송신하면(S906), 스마트 카드(810)는 수신된 SQL 구문을 카드운용체제(814)에 전달한다.
카드운용체제(814)는 수신된 SQL 구문을 포함하는 구문 해독 요구 신호를 구문해독기(816)에 전송한다(S908). 구문해독기(816)는 수신된 SQL 구문을 미리 저장된 SQL구문매핑테이블(818)을 참조하여 구문 해독을 수행한다(S910).
구문해독기(816)는 해당 SQL 구문에 대한 구문 해독 결과-여기서, 구문 해독 결과는 순차적으로 수행되어야 할 APDU 명령 리스트를 포함함-를 포함하는 구문 해독 결과 응답 신호를 카드운용체제(814)에 전송한다(S912).
카드운용체제(814)는 수신된 구문 해독 결과를 이용하여 폰 북 파일을 선택하고, 폰 북 파일에 저장된 제1 내지 제N 레코드를 데이터베이스(812)로부터 추출한다(S914).
카드운용체제(814)는 추출된 제1 내지 제N 레코드를 순차적으로 터미널(850)에 전송하고(S918), 터미널(850)은 수신된 제1 내지 제2 레코드를 이용하여 터미널 내부의 소정의 기록 영역에 폰 북을 구성한다.
도 10은 본 발명의 일 실시예에 따른 대용량 스마트 카드에서의 데이터 처리 방법을 설명하기 위한 도면이다.
좀 더 상세하게, 도 10은 터미널(850)로부터 특정 데이터의 삽입이 요청된 경우, 스마트카드(810)에서 삽입 요청된 데이터의 타입 및 크기에 따라 해당 데이터를 저장할 기록 매체를 선택하고, 선택된 기록 매체에 해당 데이터를 저장하는 절차를 도시한 흐름도이다.
도 10을 참조하면, 터미널(850)은 데이터 및 데이터 식별 정보-여기서, 데이터 식별 정보는 데이터 타입 및 데이터 사이즈를 포함함-를 포함하는 데이터 삽입 요청 메시지를 카드운용체제(814)에 송신한다(S1002).
카드운용체제(814)는 수신된 데이터를 소정의 기록 매체-예를 들면, RAM(824) 또는 내부 버퍼-에 임시 저장하고, 수신된 데이터 삽입 요청 메시지로부터 데이터 식별 정보를 추출한다(S1004).
카드운용체제(814)는 추출한 데이터 식별 정보를 포함하는 데이터 수신 통보 메시지를 SC-DBMS(812)에 송신한다(S1006).
SC-DBMS(812)는 수신된 데이터 식별 정보를 이용하여 해당 데이터를 저장할 기록 매체를 선택하고(S1008), 선택된 기록 매체 타입 식별자를 포함하는 데이터 수신 응답 메시지를 카드운용체제(814)에 송신한다(S1010).
카드운용체제(814)는 수신된 기록 매체 타입 식별자가 EEPROM에 상응하는 식별자인지 판단한다(S1012).
판단 결과, EEPROM에 상응하는 식별자가 아닌 경우, 카드운용체제(814)는 상기 1004 단계에서 임시 저장된 데이터의 주소 정보를 포함하는 저장 요청 메시지를 SC-DBMS(812)에 전송한다(S1014).
SC-DBMS(812)는 저장 요청된 데이터를 데이터베이스에 저장한 후(S1016), 정상 처리 되었음을 지시하는 저장 완료 메시지를 카드운용체제(814)에 송신한다(S1018).
카드운용체제(814)는 삽입 요청된 데이터가 정상적으로 처리되었음을 지시하는 데이터 삽입 완료 메시지를 터미널(850)에 송신한다.
여기서, 상기한 데이터 삽입 요청 메시지 및 데이터 삽입 완료 메시지는 SQL 구문으로 작성되는 것이 바람직하다.
상기한 1012 단계에서, 만약, 기록 매체 타입 식별자가 EEPROM에 상응하는 식별자인 경우, 수신된 SQL 구문-즉, 데이터 삽입 요청 메시지를 의미함-에 대한 해독을 요구하는 구문 해독 요구 메시지를 구문해독기(816)에 송신한다(S1022).
구문해독기(816)는 미리 저장된 SQL구문매핑테이블(818)을 참조하여 해당 SQL 구문에 대한 구문을 해독하고(S1024), 해당 구문 해독 결과-여기서, 구문 해독 결과는 순차적으로 수행되어야 할 APDU 명령 리스트를 포함함-를 포함하는 구문 해독 결과 응답 메시지를 카드운용체제(814)에 전송한다(S1026).
카드운용체제(814)는 수신된 구문 해독 결과를 이용하여 EEPROM상의 파일을 선택하고, 선택된 파일에 삽입 요청된 데이터를 저장한다(S1028).
카드운용체제(814)는 삽입 요청된 데이터가 정상적으로 처리되었음을 지시하는 데이터 삽입 완료 메시지를 터미널(850)에 송신한다(S1020).
도 11은 본 발명의 일 실시예에 따른 대용량 스마트 카드에서의 데이터 추출 방법을 설명하기 위한 도면이다.
좀 더 상세하게, 도 11은 터미널(850)로부터 특정 데이터의 추출이 요청된 경우, 스마트카드(810)에서 추출 요청된 데이터의 특성에 따라 해당 데이터가 저장된 기록 매체가 무엇인지 확인하고, 확인된 기록 매체로부터 해당 데이터를 추출하는 절차를 도시한 흐름도이다.
도 11을 참조하면, 터미널(850)은 소정의 데이터 특성 정보를 포함하는 데이터 추출 요청 메시지를 카드운용체제(814)에 송신한다(S1102).
여기서, 데이터 특성 정보는 어떤 스마트 카드 응용 어플리케이션에 의해 사용되는 데이터인지를 식별하기 위한 응용 타입 정보 및 데이터 타입 정보-여기서, 데이터 타입 정보는 멀티미디어 타입, 텍스트 타입을 포함함- 중 적어도 하나를 포함할 수 있다.
카드운용체제(814)는 수신된 데이터 추출 요청 메시지로부터 데이터 특성 정보를 추출하고(S1104), 추출한 데이터 특성 정보를 포함하는 데이터 추출 요청 신호를 SC-DBMS(812)에 송신한다(S1106).
SC-DBMS(812)는 수신된 데이터 특성 정보를 이용하여 추출 요청된 데이터가 저장된 기록 매체를 선택하고(S1108), 선택된 기록 매체 타입 식별자를 포함하는 데이터 추출 응답 신호를 카드운용체제(814)에 송신한다(S1110).
카드운용체제(814)는 수신된 기록 매체 타입 식별자가 EEPROM 타입에 상응하는 식별자인지 판단한다(S1112).
판단 결과, EEPROM에 상응하는 식별자가 아닌 경우, 카드운용체제(814)는 소 정의 추출 요청 신호를 SC-DBMS(812)에 전송한다(S1114).
SC-DBMS(812)는 추출 요청된 데이터를 대용량의 데이터베이스(820)로부터 추출하여 카드운용체제(814)에 전달한다(S1116). 이 후, 카드운용체제(814)는 전달 받은 데이터를 터미널(850)에 송신한다(1120).
여기서, 상기한 데이터 추출 요청 메시지는 SQL 구문으로 작성되는 것이 바람직하다.
상기한 1112 단계에서, 만약, 기록 매체 타입 식별자가 EEPROM에 상응하는 식별자인 경우, 수신된 SQL 구문-즉, 데이터 추출 요청 메시지를 의미함-에 대한 해독을 요구하는 구문 해독 요구 메시지를 구문해독기(816)에 송신한다(S1122).
구문해독기(816)는 미리 저장된 SQL구문매핑테이블(818)을 참조하여 해당 SQL 구문을 해독하고(S1124), 해당 구문 해독 결과-여기서, 구문 해독 결과는 순차적으로 수행되어야 할 APDU 명령 리스트일 수 있음-를 포함하는 구문 해독 결과 응답 메시지를 카드운용체제(814)에 전송한다(S1126).
카드운용체제(814)는 수신된 구문 해독 결과를 이용하여 추출 요청된 데이터에 상응하는 요소 파일을 EEPROM에서 선택하고, 선택된 요소 파일로부터 추출 요청된 데이터를 추출한다(S1128).
카드운용체제(814)는 추출된 데이터를 터미널(850)에 송신한다(S1120).
상기한 본 발명의 바람직한 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대해 통상의 지식을 가진 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.
도 1은 UMTS에서의 UE의 구조를 도시한 블록도.
도 2는 UICC 응용 파일 구조.
도 3은 종래 기술에 따른 터미널과 스마트카드사이의 통신 메커니즘을 설명하기 위한 도면.
도 4는 종래 기술에 따른 APDU 명령 메시지 구조.
도 5는 종래 기술에 따른 APDU 응답 메시지의 구조.
도 6은 ISO 7816 표준에 정의된 스마트 카드와 터미널간의 통신을 하기 위한 기본 명령어를 설명하기 위한 도면.
도 7은 종래 기술에 따른 ISO 7816 표준에 따른 터미널과 USIM 사이의 데이터 전송 절차를 설명하기 위한 도면이
도 8은 본 발명의 일 실시예에 따른 스마트 카드의 내부 블록도.
도 9는 본 발명에 따른 SQL 구문을 이용한 터미널과 스마트 카드 사이의 데이터 전송 절차를 설명하기 위한 도면.
도 10은 본 발명의 일 실시예에 따른 대용량 스마트 카드에서의 데이터 저장 방법을 설명하기 위한 도면.
도 11은 본 발명의 일 실시예에 따른 대용량 스마트 카드에서의 데이터 추출 방법을 설명하기 위한 도면.
*주요 도면 부호
810 : 스마트 카드
812 : 스마트 카드 데이터베이스 시스템(SC-DBMS)
814 : 카드운용체제(Card Operating System:COS)
816: 구문해독기
818 : SQL 구문 매핑 테이블
820 : 데이터베이스
822 : ROM(Read Only Memory)
824 : RAM(Random Access Memory)
826 : EEPROM
828 : 스마트 카드 인터페이스(SC I/F)
850 : 터미널(850)
Claims (18)
- 스마트 카드에서 데이터를 관리하는 방법에 있어서,터미널로부터 데이터 삽입 요청 신호를 수신하는 삽입 요청 수신 단계;상기 삽입 요청된 데이터의 특성에 상응하는 기록 매체를 선택하는 기록 매체 선택 단계; 및상기 선택된 기록 매체에 상기 삽입 요청된 데이터를 저장하는 데이터 저장 단계를 포함하되,상기 데이터의 특성은 데이터 타입 및 데이터 길이 중 하나 이상을 포함하며,상기 데이터 타입은 텍스트 타입, 멀티미디어 타입 및 공유 타입 중 어느 하나인 것을 특징으로 하는 스마트 카드에서의 데이터 관리 방법.
- 제1항에 있어서,상기 기록 매체는 EEPROM(EEPROM(Electrically- Erasable Programmable Read-Only Memory), 대용량 플래시 메모리를 포함하는 것을 특징으로 하는 스마트 카드에서의 데이터 관리 방법.
- 제2항에 있어서,상기 삽입 요청된 데이터가 상기 스마트 카드에 탑재되는 복수의 응용 프로그램 사이에 공유될 수 있는 데이터인 경우, 상기 대용량 플래시 메모리에 저장되 는 것을 특징으로 하는 스마트 카드에서의 데이터 관리 방법.
- 제2항에 있어서,상기 삽입 요청된 데이터가 텍스트 타입이고, 해당 데이터의 크기가 미리 정의된 기준 이하인 경우 상기 EEPROM의 해당 요소 파일에 저장되는 것을 특징으로 하는 스마트 카드에서의 데이터 관리 방법.
- 제2항에 있어서,상기 삽입 요청된 데이터가 텍스트 타입이고, 해당 데이터의 크기가 미리 정의된 기준 이상인 경우 상기 대용량 플래시 메모리에 저장되는 것을 특징으로 하는 스마트 카드에서의 데이터 관리 방법.
- 제2항에 있어서,상기 삽입 요청된 데이터가 멀티미디어 타입인 경우 해당 데이터는 상기 대용량 플래시 메모리에 저장되는 것을 특징으로 하는 스마트 카드에서의 데이터 관리 방법.
- 삭제
- 삭제
- 제2항에 있어서,상기 데이터 삽입 요청 신호는 SQL(Structured Query Language) 구문, APDU(Application Protocol Data Unit) 명령 메시지 중 어느 하나인 것을 특징으로 하는 스마트 카드에서의 데이터 관리 방법.
- 제9항에 있어서,상기 데이터 삽입 요청 신호가 상기 SQL 구문인 경우, 상기 기록 매체 선택 단계와 상기 데이터 저장 단계 사이에 해당 SQL 구문을 해독하는 단계를 더 포함하 는 것을 특징으로 하는 스마트 카드에서의 데이터 관리 방법.
- 스마트 카드에서 데이터를 관리하는 방법에 있어서,터미널로부터 데이터 특성 정보를 포함하는 데이터 추출 요청 신호를 수신하는 추출 요청 수신 단계;상기 데이터 추출 요청 신호에 포함된 상기 데이터 특성 정보에 상응하는 기록 매체를 선택하는 기록 매체 선택 단계; 및상기 선택된 기록 매체로부터 상기 추출 요청된 데이터를 추출하는 데이터 추출 단계를 포함하되,상기 데이터 특성 정보는 데이터를 사용하는 응용 어플리케이션의 종류를 식별하기 위한 응용 타입 및 추출할 데이터의 타입을 식별하기 위한 데이터 타입 중 적어도 하나를 포함하는 것을 특징으로 하는 스마트 카드에서의 데이터 관리 방법.
- 삭제
- 제11항에 있어서,상기 기록 매체는 EEPROM(EEPROM(Electrically- Erasable Programmable Read-Only Memory), 대용량 메모리를 포함하는 것을 특징으로 하는 스마트 카드에서의 데이터 관리 방법.
- 대용량 메모리가 구비된 스마트 카드에 있어서,터미널로부터 데이터 식별 정보를 포함하는 데이터 삽입 요청 신호를 수신하면, 상기 삽입 요청된 데이터가 저장될 기록 매체 타입 정보를 획득하고, 상기 획득된 기록 매체 타입에 따라 상기 삽입 요청된 데이터의 저장을 제어하는 카드운용체제; 및상기 카드운용체제로부터 상기 데이터 식별 정보를 수신하여 상기 삽입 요청된 데이터를 저장할 기록 매체를 선택하고, 상기 선택된 기록 매체에 상응하는 기록 매체 타입 정보를 상기 카드운용체제에 전송하여 상기 카드운용체제로부터 저장 요청 신호가 수신되면 상기 선택된 기록 매체에 상기 삽입 요청된 데이터를 저장하는 데이터베이스관리시스템을 포함하되,상기 데이터 식별 정보는 데이터 타입 및 데이터 크기 정보 중 하나 이상을 포함하고,상기 데이터 타입은 텍스트 타입, 멀티미디어 타입 및 공유 타입 중 어느 하나인 것을 특징으로 하는 스마트 카드.
- 삭제
- 제14항에 있어서,상기 기록 매체 타입은 EEPROM(EEPROM(Electrically- Erasable Programmable Read-Only Memory) 타입, 대용량 메모리 타입을 포함하는 것을 특징으로 하는 스마트 카드.
- 제16항에 있어서,상기 카드운용체제는 상기 획득된 기록 매체 타입이 상기 대용량 메모리 타입인 경우 상기 저장 요청 신호를 상기 데이터베이스관리시스템에 전송하는 것을 특징으로 하는 스마트 카드.
- 제16항에 있어서,상기 카드운용체제는 상기 획득된 기록 매체 타입이 상기 EEPROM 타입인 경우, 상기 삽입 요청된 데이터에 상응하는 요소 파일을 선택하고, 상기 선택된 요소 파일에 상기 삽입 요청된 데이터를 저장하는 것을 특징으로 하는 스마트 카드.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070116878A KR100951949B1 (ko) | 2007-11-15 | 2007-11-15 | 스마트 카드에서의 데이터베이스 관리 시스템을 이용한정보 관리 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070116878A KR100951949B1 (ko) | 2007-11-15 | 2007-11-15 | 스마트 카드에서의 데이터베이스 관리 시스템을 이용한정보 관리 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090050450A KR20090050450A (ko) | 2009-05-20 |
KR100951949B1 true KR100951949B1 (ko) | 2010-04-09 |
Family
ID=40858908
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070116878A KR100951949B1 (ko) | 2007-11-15 | 2007-11-15 | 스마트 카드에서의 데이터베이스 관리 시스템을 이용한정보 관리 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100951949B1 (ko) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000022696A (ko) * | 1998-09-02 | 2000-04-25 | 포만 제프리 엘 | 스마트 카드에 데이터 객체를 저장하는 방법 및 그 애플리케이션 인터페이스 |
JP2000172804A (ja) | 1998-12-01 | 2000-06-23 | Toshiba Corp | Icカードとicカードのデータ更新方法 |
JP2001236232A (ja) | 2000-02-25 | 2001-08-31 | Ntt Data Corp | Icカードシステム、icカード、icカード処理方法及び記録媒体 |
WO2007066326A2 (en) * | 2005-12-09 | 2007-06-14 | Sandisk Il Ltd. | Method for flash-memory management |
-
2007
- 2007-11-15 KR KR1020070116878A patent/KR100951949B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000022696A (ko) * | 1998-09-02 | 2000-04-25 | 포만 제프리 엘 | 스마트 카드에 데이터 객체를 저장하는 방법 및 그 애플리케이션 인터페이스 |
JP2000172804A (ja) | 1998-12-01 | 2000-06-23 | Toshiba Corp | Icカードとicカードのデータ更新方法 |
JP2001236232A (ja) | 2000-02-25 | 2001-08-31 | Ntt Data Corp | Icカードシステム、icカード、icカード処理方法及び記録媒体 |
WO2007066326A2 (en) * | 2005-12-09 | 2007-06-14 | Sandisk Il Ltd. | Method for flash-memory management |
Also Published As
Publication number | Publication date |
---|---|
KR20090050450A (ko) | 2009-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10187798B2 (en) | Terminal device having subscriber identity device and method for selecting profile thereof | |
KR100862749B1 (ko) | Uicc 응용 파일 제어 방법 및 그 장치 | |
US8453927B2 (en) | Communication method between a handset device and IC cards | |
JP5619297B2 (ja) | 同一の物理uicc内に備えられた第一及び第二の論理uicc間で切り替えを行う方法 | |
EP2735180B1 (en) | Application selection for multi-sim environment | |
US8863240B2 (en) | Method and system for smart card migration | |
US8060140B2 (en) | Method and apparatus for increasing data read speed from subscriber identity module | |
EP3023904B1 (en) | Implicit File creation in APDU scripts | |
Jansen et al. | Forensic Tools for Mobile Phone Subscriber Identity Modules | |
KR20090064291A (ko) | 사용자 식별 모듈 카드를 이용한 이동통신단말기의 어플리케이션 관리 방법 | |
KR100986835B1 (ko) | 대용량 스마트 카드를 이용한 개인 정보 관리 서비스 제공방법 및 장치 | |
EP0786915A2 (en) | Subscriber/mobile terminal identifying device | |
KR100901871B1 (ko) | 스마트 카드를 이용한 프로그램 로딩 방법 및 그 장치 | |
KR20090054824A (ko) | 대용량 메모리를 가지는 스마트카드를 이용한 신용카드결제 방법 및 그 장치 | |
KR100951949B1 (ko) | 스마트 카드에서의 데이터베이스 관리 시스템을 이용한정보 관리 방법 및 장치 | |
KR100957638B1 (ko) | 스마트 카드에서의 정보 관리 방법 및 장치 | |
US8438198B2 (en) | File sharing device in an integrated circuit | |
KR20090046089A (ko) | 스마트 카드 sql 번역기 | |
KR100754689B1 (ko) | 이동통신 단말기의 개인 정보를 서버에 저장 및다운로드하는 시스템 및 방법 | |
EP1521433A2 (en) | Mobile telephone card, method of contact register management in the card, and program product for carrying out the method | |
EP3180735A1 (en) | Method of managing several profiles in a secure element | |
US20020196786A1 (en) | Method and apparatus for data transmission | |
KR100868043B1 (ko) | QoS 정보를 관리하는 스마트 카드 및 그 방법 | |
CN115209382A (zh) | 用于多个eSIM配置文件的逻辑信道管理 | |
US20110306390A1 (en) | Apparatus and method for reading data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment | ||
FPAY | Annual fee payment |
Payment date: 20180403 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20190401 Year of fee payment: 10 |