KR100760841B1 - 데이터 기억 장치 및 데이터 기억 방법 - Google Patents

데이터 기억 장치 및 데이터 기억 방법 Download PDF

Info

Publication number
KR100760841B1
KR100760841B1 KR1020060058532A KR20060058532A KR100760841B1 KR 100760841 B1 KR100760841 B1 KR 100760841B1 KR 1020060058532 A KR1020060058532 A KR 1020060058532A KR 20060058532 A KR20060058532 A KR 20060058532A KR 100760841 B1 KR100760841 B1 KR 100760841B1
Authority
KR
South Korea
Prior art keywords
area
service
key
defining
definition
Prior art date
Application number
KR1020060058532A
Other languages
English (en)
Other versions
KR20060093308A (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=16442060&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR100760841(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 소니 가부시끼 가이샤 filed Critical 소니 가부시끼 가이샤
Publication of KR20060093308A publication Critical patent/KR20060093308A/ko
Application granted granted Critical
Publication of KR100760841B1 publication Critical patent/KR100760841B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • 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
    • G06K19/073Special arrangements for circuits, e.g. for protecting identification code in memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/357Cards having a plurality of specified features
    • G06Q20/3576Multiple memory zones on card
    • G06Q20/35765Access rights to memory zones
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99939Privileged access

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Accounting & Taxation (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

IC 카드의 리소스 관리를 행한다.
디렉토리에 상당하는 에어리어 정의 영역은 사용 가능한 식별 코드(화일명 또는 디렉토리명에 상당함)의 범위인 코드범위를 기억하고, 그 코드 범위에 기초하여, 자신을 모(母)계층으로 하고, 다른 에어리어의 정의 영역을 자(子)계층으로 한 계층구조를 구성하고 있다. 또한, 에어리어 정의 영역은 사용 가능한 기억 영역의 용량(비어있는 용량)도 기억하고, 그 비어있는 용량, 코드범위에 의해 어떤 에어리어 정의 영역의 계층 중에서 사용 가능한 용량, 식별 코드가 제한된다.
리더/라이터, IC 카드, 논리 포맷, 디렉토리 구조

Description

데이터 기억 장치 및 데이터 기억 방법{A DATA STORAGE APPARATUS AND METHOD}
도 1 은 본 발명을 적용한 카드 시스템의 일실시예의 구성예를 나타내는 블록도.
도 2 는 도 1 의 리더/라이터(1)의 구성예를 나타내는 블록도.
도 3 은 도 1 의 IC 카드(2)의 구성예를 나타내는 블록도.
도 4 는 도 3 의 EEPROM(66)의 논리 포맷을 나타내는 도면.
도 5 는 도 3 의 EEPROM(66)의 디렉토리 구조를 나타내는 도면.
도 6 은 도 5 의 계층 구조가 구성되어 가는 정도를 설명하기 위한 도면.
도 7 은 에어리어 작성 처리를 설명하기 위한 흐름도.
도 8 은 서비스 작성 처리를 설명하기 위한 흐름도.
도 9 는 관리자 사이에서 키의 주고받기를 설명하기 위한 도면.
도 10 은 관리자 A가 서비스를 제공할 때에 필요한 정보를 설명하기 위한 도면.
도 11 은 관리자 A가 서비스를 제공할 때의 IC 카드(2)의 처리를 설명하기 위한 도면.
도 12 는 서비스 제공 장치(111)에 의한 IC 카드(2)의 인증 방법을 설명하기 위한 도면.
도 13 은 IC 카드(2)에 의한 서비스 제공 장치(111)의 인증 방법을 설명하기 위한 도면.
도 14 는 관리자 B2가 서비스를 제공할 때에 필요한 정보를 설명하기 위한 도면.
도 15 는 관리자 B2가 서비스를 제공할 때의 IC 카드(2)의 처리를 설명하기 위한 도면.
도 16 은 관리자 C가 서비스를 제공할 때에 필요한 정보를 설명하기 위한 도면.
도 17 은 관리자 C가 서비스를 제공할 때의 IC 카드(2)의 처리를 설명하기 위한 도면.
도 18 은 관리자 C가 서비스를 제공할 때에 필요한 정보를 설명하기 위한 도면.
도 19 는 관리자 B2가 서비스를 제공할 때의 IC 카드(2)의 처리를 설명하기 위한 도면.
도 20 은 상호 인증에 사용하는 제 1 액세스 및 제 2 액세스 키의 생성 방법을 설명하기 위한 도면.
도 21 은 EEPROM(66)에서의 계층 구조를 나타내는 도면.
도 22 는 관리자 사이에서 키의 주고받기를 설명하기 위한 도면.
도 23 은 관리자 사이에서 서비스(데이터)의 공유를 설명하기 위한 도면.
도 24 는 EEPROM(66)에서의 계층 구조를 나타내는 도면.
도 25 는 관리자 사이에서 키의 주고받기를 설명하기 위한 도면.
<도면의 주요 부분에 대한 부호의 설명>
1 리더/라이터
2 IC 카드
3 제어기
21 IC
23 변조 회로
25 복조 회로
27 안테나
52 콘덴서
52 안테나
61 RF 인터페이스부
62 BPSK 복조 회로
63 PLL부
64 연산부
65 ROM
66 EEPROM
67 RAM
68 BPSK 변조 회로
81 ASK 복조부
82 전압 레귤레이터
83 발진 회로
84 ASK 변조부
91 시퀀서
92 암호/복호부
93 패리티 연산부
101 발권기
111 서비스 제공 장치
기술 분야
본 발명은 데이터 기억 장치 및 데이터 기억 방법에 관한 것으로, 예를 들면 하나의 IC (Integrated Circuit)카드를 이용하여, 복수의 관리자가 서비스를 제공하는 경우 등에 있어서, IC 카드의 리소스 관리 또는 IC 카드에 대해 플렉시블하고 시큐리티(security)가 높은 액세스 제어를 행할 수 있도록 하는 데이터 기억 장치 및 데이터 기억 방법에 관한 것이다.
종래 기술
예를 들면, 전자 화폐 시스템 또는 시큐리티 시스템 등에서의 이용이 기대되 고 있는 IC 카드(스마트 카드)가 개발되어 있다.
IC 카드는 각종 처리를 하는 CPU (Central Processing Unit) 또는 처리에 필요한 데이터 등을 기억하는 메모리를 내장하고 있고, 소정의 리더/라이터(R/W)에 전기적으로 접촉시킨 상태에서 또는 전자파를 이용하여 비접촉으로 데이터의 송수신이 이루어진다. 또한, R/W 사이에서 전자파를 이용하여 비접촉으로 데이터의 송수신을 행하는 IC 카드에는 일반적으로 그 전자파에 의해 필요한 전력이 공급된다.
예를 들면, ISO (International Organization for Standardization) 7816에서는 접촉식의 IC 카드의 표준이 규정되어 있으며, 이에 따르면, 예를 들면, 데이터를 격납하는 EF (Elementary File)(이른바 파일에 상당)과 EF 및 DF (Dedicated File)(이른바 디렉토리 (폴더) 상당)을 격납하는 DF에 의한 데이터의 관리가 가능해졌다. 따라서, 어떤 DF를 모계층으로서, 그 자계층인 DF를 설치함으로써 계층 구조에 의한 데이터의 관리가 가능해진다.
그런데, IC 카드를 복수의 관리자에 의한 서비스의 제공에 사용하는 경우는 그 복수의 관리자 각각에 계층으로서의 DF를 할당하여 그 DF에 각 관리자에 의한 서비스의 제공에 사용하는 데이터로서의 EF를 격납하도록 하는 방법을 생각할 수 있다.
그러나, ISO 7916 등에서는, DF 마다, 사용 가능한 용량 또는 DF 및 EF를 식별하기 위한 식별 코드(화일명 또는 디렉토리명에 상당) 등의 IC 카드이 리소스를 한정하기가 곤란하였다.
이 때문에, 식별 코드가 다른 관리자 사이에서 중복되는 것을 방지하거나, 관리자가 미리 계약 등으로 정해진 용량을 초과하여 IC 카드가 내장되는 메모리를 사용하는 것을 제한하는 것 등이 곤란하였다.
또한, IC 카드를 전자 화폐 시스템 또는 시큐리티 시스템 등에서 이용하는 경우에는 데이터의 은폐성 또는 IC 카드의 위조를 방지하는 것 등의 시큐리티가 중요하며, 예를 들면 ISO 7816 에서는, DF에 키를 하는 것으로 그 DF의 계층에 속하는 DF 및 EF에 대한 액세스가 제한된다. 즉, ISO 7816 에서는 어느 DF에 액세스하기 위해서는 그 DF에 이르기까지의 버스 상의 위치 계층(모계층)의 DF의 모든 키를 알고 있을 필요가 있다.
이 때문에, 예를 들면 어느 관리자가 모의 관리자로서 자신에게 할당된 소스의 일부를 그 자의 관리자가 되는, 다른 관리자에게 할당하여 모의 관리자가 관리하는 DF 중에 자의 관리자가 관리하는 DF를 만들면 자의 관리자가 자신의 DF에 액세스하기 위해서는 그 모계층의 DF, 즉, 모의 관리자의 DF에 액세스하기 위한 키를 알 필요가 있어 시큐리티 상의 문제가 발생하게 된다.
본 발명은 이와 같은 상황에 비추어 이루어진 것으로, 데이터의 기억을 위한 리소스의 관리 또는 데이터에 대한 플렉시블하고 시큐리티가 높은 액세스 제어를 할 수가 있도록 하는 것이다.
데이터 기억 장치는 관리 대상의 기억 영역에 할당 가능한 기억 영역을 식별하기 위한 기억 영역 식별 코드의 범위, 및 관리 대상의 기억 영역의 비어있는 용 량을 기억하는 에어리어 정의 영역을 갖는 기억 수단과, 에어리어 정의 영역의 기억 내용에 기초하여 기억 수단을 관리하는 관리 수단을 구비한 것을 특징으로 한다.
청구항 6에 기재된 데이터 기억 방법은 관리 대상의 기억 영역에 할당 가능한 기억 영역을 식별하기 위한 기억 영역 식별 코드의 범위, 및 관리 대상의 기억 영역의 비어있는 용량을 기억하는 에어리어 정의 영역을 갖는 기억 수단의 에어리어 정의 영역의 기억 내용에 기초하여 기억 수단을 관리하는 관리 단계를 구비한 것을 특징으로 한다.
청구항 7에 기재된 데이터 기억 장치는 데이터 기억 수단의 기억 영역을 계층 구조로 하여 관리하는 관리 수단과, 데이터 기억 수단의 기억 영역의 각 계층에 대한 계층 키를 기억하는 계층 키 기억 수단과, 데이터가 기억된 기억 영역에 대한 데이터 기억 영역 키를 기억하는 데이터 기억 영역 키 기억 수단과, 기억 영역에 액세스하기 위한 인증에 사용하는 하나 이상의 인증 키를 2 이상의 계층 키 또는 데이터 기억 키를 사용하여 생성하는 생성 수단과, 인증 키에 기초하여 인증을 하는 인증 수단을 구비하는 것을 특징으로 한다.
청구항 16에 기재된 데이터 기억 방법은 기억 영역에 액세스하기 위한 인증에 사용하는 1 이상의 인증 키를 2 이상의 계층 키 또는 데이터 기억 영역 키를 사용하여 생성되는 생성 단계와, 인증 키에 기초하여 인증을 하는 인증 단계를 구비하는 것을 특징으로 한다.
데이터 기억 장치에서는 기억 수단은 관리 대상의 기억 영역에 할당 가능한 기억 영역을 식별하기 위한 기억 영역 식별 코드 범위, 및 관리 대상의 기억 영역의 비어있는 용량을 기억하는 에어리어 정의 영역을 가지고 있고, 관리 수단은 에어리어 정의 영역의 기억 내용에 기초하여 기억 수단을 관리하도록 되어 있다.
청구항 6에 기재된 데이터 기억 방법에서는 관리 대상의 기억 영역에 할당 가능한 기억 영역을 식별하기 위한 기억 영역 식별 코드의 범위, 및 관리 대상의 기억 영역의 비어있는 용량을 기억하는 에어리어 정의 영역을 갖는 기억 수단의 에어리어 정의 영역의 기억 내용에 기초하여 기억 수단을 관리하도록 되어 있다.
청구항 7에 기재된 데이터 기억 장치에서는, 관리 수단은 데이터 기억 수단의 기억 영역을 계층 구조로 하여 관리하고, 계층 키 기억 수단은 데이터 기억 수단의 기억 영역의 각 계층에 대한 계층 키를 기억하도록 되어 있다. 데이터 기억 영역 키 기억 수단은 데이터가 기억된 기억 영역에 대한 데이터 기억 영역 키를 기억하고, 생성 수단은 기억 영역에 액세스하기 위한 인증에 사용하는 1 이상의 인증 키를, 2 이상의 계층 키 또는 데이터 기억 키를 사용하여 생성하도록 되어 있다. 인증 수단은 인증 키에 기초하여 인증을 하도록 되어 있다.
청구항 16에 기재된 데이터 기억 방법에서는 기억 영역에 액세스하기 위한 인증에 사용하는 1 이상의 인증 키를 2 이상의 계층 키 또는 데이터 기억 영역 키를 사용하여 생성되고, 인증 키에 기초하여 인증을 하도록 되어 있다.
(실시예)
도 1 은 본 발명에 따른 비접촉 카드 시스템(시스템이란, 복수의 장치가 논리적으로 집합된 것을 말하며, 각 구성의 장치가 동일 광체 중에 있는지 여부는 상 관없음)의 일실시예의 구성예를 나타내고 있다.
이 비접촉 카드 시스템은 R/W(1), IC 카드(2), 및 제어기(3)로 구성되며, R/W(1)와 IC 카드(2) 사이에는 전자파를 이용하여 비접촉으로 데이터의 송수신이 이루어지도록 되어 있다.
즉, R/W(1)가 소정의 코멘드를 IC 카드(2)에 송신하고, IC 카드(2)는 그 코멘드를 수신하여 그 코멘드에 대응하는 처리를 한다. 그리고, IC 카드(2)는 그 처리 결과에 대응하는 처리를 한다. 그리고, IC 카드(2)는 그 처리 결과에 대응하는 응답 데이터를 R/W(1)에 송신한다.
R/W(1)는 고정의 인터페이스(예를 들면 RS-485A의 규격 등에 근거한 것)를 통하여 제어기(3)에 접속되어 있고, 제어기(3)는 R/W(1)에 대하여 소정의 제어신호를 공급함으로써 소정의 처리를 행하게 한다.
도 2 는 도 1 의 R/W(1)의 구성예를 나타내고 있다.
IC 카드(21)에서는 데이터 처리를 하는 DPU (31 : Data Processing Unit), IC 카드(2)에 송신하는 데이터 및 IC 카드(2) 에서 수신한 데이터를 처리하는 SPU(32 : Signal Processing Unit), 제어기(3)와의 통신을 하는 SCC(33; Serial Communication Controller), 및 데이터 처리에 필요한 정보를 미리 기억하고 있는 ROM부(41)와 처리 도중의 데이터를 일시적으로 기억하는 RAM부(42)로 구성되는 메모리부(34)가 버스를 통하여 접속되어 있다.
또한, 이 버스에는 소정의 데이터를 기억하는 플래시 메모리(22)도 접속되어 있다.
DPU(31)는 IC 카드(2)에 송신하는 코멘드를 SPU(32)에 출력함과 동시에 IC 카드(2)에서 수신한 응답 데이터를 SPU(32)에서 수취하도록 되어 있다.
SPU(32)는 IC 카드(2)에 송신하는 코멘드에 대하여 소정의 처리(예를 들면 BPSK(BiPhase Shift Keying)변조(윈체스터 코드에 대한 코딩) 등을 행한 후, 변조 회로(23)에 출력함과 동시에, IC 카드(2)에 의해 송신되어 온 응답 데이터를 복조 회로(5)에서 수취하고, 그 데이터에 대하여 소정의 처리를 하도록 되어 있다.
변조 회로(23)는 발진기(26; OSC)에서 공급되는 소정의 변조수(예를 들면 13.56 MHz)의 반송파를 SPU(32)에서 공급되는 데이터로, ASK(Amplitude Shift Keying) 변조하여 생성된 변조기를 안테나(27)를 통하여 전자파로서 IC 카드(2)에 출력하도록 되어 있다. 또한 이 때, 변조 회로(23)는 변조도를 1 미만으로 하여 ASK 변조를 행하도록 되어 있고, 이에 따라 데이터가 하위 레벨일 때에도 변조파의 최대 진폭이 제로가 되지 않도록 되어 있다.
복조 회로(25)는 안테나(27)를 통하여 수신한 변조기(ASK 변조파)를 복조하고, 복조된 데이터를 SPU(32)에 출력하도록 되어 있다.
도 3 은 도 1의 IC 카드(2)의 구성예를 나타내고 있다.
이 IC 카드(2)에 있어서는, IC(51)가 안테나(53)를 통하여 R/W(1)에 의해 송신된 변조파를 수신하도록 되어 있다. 또한, 콘덴서(52)는 안테나(53)와 함께 LC 회로를 구성하고, 소정의 주파수(캐리어 주파수)의 전자파에 동조(공진)하도록 되어 있다.
IC(51)에서, RF 인터페이스부(61)(통신 수단)는 ASK 복조부(81)에서 안테 나(53)를 통하여 수신한 변조파(ASK 변조기)를 검파하여 복조하고, 복조 후의 데이터를 BPSK 복조 회로(62) 및 PLL(Phase Locked loop)부(63)로 출력함과 동시에 전압 레귤레이터(82)에서 ASK 복조부(81)가 검파한 신호를 안정화하여 각 회로에 직류 전원으로서 공급하도록 되어 있다.
또한, RF 인터페이스부(61)는 발진 회로(83)에서 데이터의 클럭 주파수와 동일한 주파수의 신호를 발진하고, 그 신호를 PLL부(63)로 출력하도록 되어 있다.
또한, RF 인터페이스부(61)에서는, ASK변조부(81)에 있어서 연산부(64)에서 BPSK 변조 회로(63)를 통하여 공급되는 데이터에 대응하여 IC 카드(2)의 전원으로서의 안테나(53)의 부하를 변동(예를 들면 데이터에 대응하여 소정의 스위칭 소자를 온/오프시키고, 스위칭 소자가 온 상태일 때만 소정의 부하를 안테나(53)에 병렬로 접속시킴)시킴으로써, 안테나(53)를 통하여 수신하고 있는 변조파를 ASK 변조하고(IC 카드(2)에서 데이터를 송신할 때는(IC 카드(2)에 데이터를 송신할 때는), R/W(1)는 그 출력하는 변조파의 최대 진폭을 일정하게 하고, 그 변조파가 안테나(53)의 변동에 의해 ASK 변조된다), 그 변조 성분을 안테나(53)를 통하여 R/W(1)에 송신(R/W(1)의 안테나(27)의 단자 전압을 변동시킨다)하도록 되어 있다.
PLL부(63)는 ASK 복조부(81)에서 공급되는 데이터에서 그 데이터에 동기한 클럭 신호를 생성하고, 그 클럭 신호를 BPSK 복조 회로(62) 및 BPSK 복조 회로(68)로 출력하도록 되어 있다.
BPSK 복조 회로(62)는 ASK 복조부(81)에서 복조된 데이터가 BPSK 복조되어 있는 경우, PLL부(63)에서 공급된 클럭 신호에 따라 그 데이터의 변조(윈체스터 코 드의 디코더)를 행하고, 변조된 데이터를 연산부(64)로 출력하도록 되어 있다.
연산부(64)는 BPSK 복조 회로(62)에서 공급된 데이터가 암호화되어 있는 경우, 그 데이터를 암호/복호부(92)에서 복호화한 후, 그 데이터를 시퀀서(91)에서 처리하도록 되어 있다. 또한, 데이터가 암호화되어 있지 않은 경우, BPSK 복조 회로(62)에서 공급된 데이터는 암호/복호부(92)를 통하지 않고 시퀀서(91)에 직접 공급된다.
시퀀서(91)(관리 수단)(생선 수단)(인증 수단)는, 그것에 공급되는 코멘드로서의 데이터에 대응하는 처리를 하도록 되어 있다. 즉, 예를 들면 시퀀서(91)는 EEPROM(66)에 대한 데이터의 입력 또는 판독, 기타 데이터에 대한 필요한 연산 처리 등을 한다. 또한, 시퀀서(91)는 인증을 함에 의한 EEPROM(66)으로의 액세스 제어 또는 EEPROM(66)의 관리까지도 하도록 되어 있다.
연산부(64)의 패리티 연산부(93)는 EEPROM(66)에 기억되는 데이터 또는 EEPROM(66)에에 기억되어 있는 데이터에서 패리티로서 예를 들면 리드솔로몬 부호를 산출하도록 되어 있다.
또한, 연산부(64)는 시퀀서(91)에서 소정의 처리를 한 후, 그 처리에 대응하는 응답 데이터(R/W(1)에 송신하는 데이터)를 BPSK 변조 회로(68)로 출력하도록 되어 있다.
BPSK 변조 회로(68)는 연산부(64)에서 공급된 데이터를 BPSK 변조하고, 변조 후의 데이터를 RF 인터페이스부(51)의 ASK 변조부(84)로 출력하도록 되어 있다.
ROM(65; Read Only Memory)은 시퀀서(91)가 처리를 하기 위한 프로그램 기타 필요한 데이터를 기억하고 있다. RAM(67)은 시퀀서(91)가 처리를 할 때, 그 처리 도중의 데이터 등을 일시적으로 기억하도록 되어 있다.
EEPROM(66 ; Electrically Erasable and Programmable ROM)(기억 수단)(데이터 기억 수단)은 불휘발성의 메모리이며, IC 카드(2)가 R/W(1)와의 통신을 종료하고, 전력 공급이 정지한 후에도 데이터를 계속 기억할 수 있도록 되어 있다.
다음으로, R/W(1)와 IC 카드(2) 사이의 데이터 송수신 처리에 대하여 설명한다.
R/W(1)(도 2)는 안테나(27)에서 소정의 전자파를 방사하여 안테나(27)의 부하 상태를 검시하고, IC 카드(2)가 접근함에 의한 부하 상태의 변화가 검출될 때까지 대기한다. 또한, R/W(1)에는 소정의 짧은 패턴의 데이터로 ASK 변조한 전자파를 방사하여 IC 카드(2)로의 호출을 IC 카드(2)에서의 응답이 일정 시간 내에 얻어질 때까지 반복하는 처리(보링)를 행하도록 하여도 좋다.
R/W(1)에서 IC 카드(2)의 접근이 검출되면, R/W(1)의 SPU(32)는 소정의 주파수(예를 들면 데이터의 클럭 주파수의 2배의 주파수)의 구형파를 전송파로 하여 IC 카드(2)에 송신하는 데이터( IC 카드(2)에 실행시키는 처리에 대응하는 코멘드 또는 IC 카드(2)에 입력하는 데이터 등)에서 BPSK 변조를 행하여, 생성된 변조파(BPSK 변조 신호)(윈체스터 코드)를 변조 회로(23)로 출력한다.
또한, BPSK 변조시에는 차동 변환을 이용하여 주파수 위상의 변화에 데이터를 대응시킬 수가 있으며, 이와 같이 했을 경우, BPSK 변조 신호가 반전하여도 원래의 데이터로 복조되므로 복조될 때의 변조파의 극성을 배려할 필요가 없어진다.
변조 회로(23)는 입력된 BPSK 변조 신호에서 소정의 전송파를 1 미만(예를 들면 0.1)의 변조도(=데이터 신호의 최대 진폭/반송파의 최대 진폭)에서 ASK 변조하여 생성된 변조파(ASK 변조파)를 안테나(27)를 통하여 IC 카드(2)에 송신한다.
또한, 송신을 하지 않을 때, 변조 회로(23)는 디지털 신호의 2가지 레벨(하이 레벨과 로우 레벨) 중의 예를 들면 하이 레벨에서 변조파를 생성하도록 되어 있다.
IC 카드(2)(도 3)에서는 안테나(53) 및 콘덴서(52)로 구성되는 LC 회로에서 R/W(1)의 안테나(27)가 방사한 전자파의 일부가 전기 신호로 변환되고, 그 전기 신호(변조파)가 IC(51)의 RF 인터페이스(61)로 출력된다. 그리고, RF 인터페이스(61)의 ASK 복조부(81)는 그 변조파를 정류 평활화하므로 포락선 검파를 행하고, 이것에 의해 생성되는 신호를 전압 레귤레이터(82)에 공급함과 동시에 그 신호의 직류 성분을 제어하여 데이터 신호를 추출하고, 그 데이터 신호를 BPSK 변조 회로(68) 및 PLL부(63)로 출력한다.
또한, 이 때, 안테나(53)의 전자 전압 V0은 예를 들면 다음과 같이 된다.
V0=V10(1+k×Vs(t))cos(ωt)
단, V10cos(ωt)는 전송파, k는 변조도, Vs(t)는 SPU(32)가 출력하는 데이터를 각각 나타낸다.
또한, ASK 복조부(81)에 의한 정류 후의 전압 V1에서의 로우 레벨의 값 VLR은 예를 들면 다음과 같이 된다.
VLR=V10(1+k×(-1))-Vf
여기에서, Vf 는 ASK 복조부(81)에서 정류 평활화를 하기 위한 정류 회로를 구성하는 다이오드(도시안함)에서의 전압 강하를 나타내고 있고, 일반적으로 0.7 볼트 정도이다.
전압 레귤레이터(82)는 ASK 복조부(81)에 의해 전류 평활화된 신호를 수신하면, 그 신호를 안정화하고, 직류 전원으로서 연산부(64)를 시작하고자 하는 각 회로에 공급한다. 또한, 여기에서는 상술한 바와 같이, 변조파의 변조도(k)는 1 미만이므로, 정류 후의 전압 변동(하이 레벨과 로우 레벨의 차이)이 작다. 따라서, 전압 레귤레이터(82)에서 직류 전원을 용이하게 생성할 수가 있다.
여기에서, 예를 들면 변조도 k가 5 %인 변조도를, V10이 3 볼트 이상이 되도록 수신했을 경우, 정류 후의 로우 레벨 전압 VLR 은 2.15(=3×(1-0.05)-0.7)볼트 이상이 되고, 전압 레귤레이터(82)는 전원으로서 충분한 전압을 각 회로에 공급할 수가 있다. 또한, 이 경우 정류 후의 전압 V1의 교류성분(데이터 성분)의 진폭 2×k×V10(Peak 대 Peak 값)은 0.3(=2×0.05×3)볼트 이상이 되고, ASK 복조부(81)는 충분히 높은 S/N 비로 데이터의 복조를 행할 수가 있다.
이와 같이, 변조도 k 가 1 미만인 ASK 변조파를 이용함으로써 에러율이 낮은(S/N 비가 높은 상태에서) 통신을 함과 동시에, 전원으로서 충분한 직류 전압이 IC 카드(2)에 공급된다.
BPSK 복조 회로(62)는 ASK 복조부(81)에서 데이터 신호(BPSK 변조 신호)를 수신하면 그 데이터 신호를 PLL부(63)에서 공급되는 클럭 신호에 따라 복조하고, 복조된 데이터를 연산부(64)로 출력한다.
연산부(64)는 BPSK 복조 회로(62)에서 공급된 데이터가 암호화되어 있는 경우, 암호/복호부(92)에서 복호화한 후, 그 데이터(코멘드)를 시퀀서(91)에 공급하여 처리한다. 또한, 이 기간 즉, IC 카드(2)에 데이터를 송신한 후, 그것에 대한 회신을 수신할 때까지의 동안, R/W(1)는 값이 1 인 데이터를 송신한 채 대기하고 있다. 따라서, 이 기간에는 IC 카드(2)는 최대 진폭이 일정한 변조파를 수신하고 있다.
시퀀서(91)는 처리가 종료되면, 그 처리 결과 등에 대한 데이터(R/W(1)에 송신하는 데이터)를 BPSK 변조 회로(68)로 출력한다. BPSK 변조 회로(68)는 R/W(1)의 SPU(32)와 마찬가지로, 그 데이터를 BPSK 변조(윈체스터 코드에 코딩)한 후, RF 인터페이스(61)의 ASK 변조부(84)로 출력한다.
그리고, ASK 변조부(84)는 안테나(53)의 양단에 접속되는 부하를 스위칭 소자 등을 이용하여 BPSK 변조 회로(68)에서의 데이터에 따라 변동시킴으로써 수신하고 있는 변조파(IC 카드(2)에 의한 데이터 송신시에는 상술한 바와 같이 R/W(1)가 출력하는 변조파의 최대 진폭은 일정해져 있다)를 수신하는 데이터에 따라 ASK 변조하고, 이에 따라 R/W(1)의 안테나(27)의 단자 전압을 변동시켜 그 데이터를 R/W(1)로 송신한다.
한편, R/W(1)의 변조 회로(23)는 IC 카드(2)로부터의 데이터의 수신시에는 값이 1(하이 레벨)의 데이터의 송신을 접속하고 있다. 그리고, 복조 회로(25)에서 IC 카드(2)의 안테나(53)와 전자기적으로 결합하고 있는 안테나(27)의 단자 전압의 미소한 변동(예를 들면 십수 마이크로볼트)에서, IC 카드(2)에 의해 송신되어진 데이터가 검출된다.
또한, 복조 회로(25)는 검출한 신호(ASK 변조파)가 고이득의 진폭기(도시안함)에서 진폭되어 복조되고, 그 결과 얻어지는 디지털 데이터가 SPU(32)로 출력된다. SPU(32)는 그 데이터 (BPSK 변조신호)를 복조하여 DPU(31)로 출력한다. DPU(31)은 SPU(32)에서의 데이터를 처리하고, 그 처리 결과에 따라 통신을 종료할지 여부를 판단한다. 그리고, 다시 통신을 한다고 판단했을 경우, 상술한 경우와 마찬가지로 하여 R/W(1)와 IC 카드(2)와의 사이에서 통신이 이루어진다. 한편, 통신을 종료한다고 판단했을 경우, R/W(1)는 IC 카드(2)와의 통신 처리를 종료한다.
이상과 같이, R/W(1)는 변조도 k가 1 미만인 ASK 변조를 이용하여 IC 카드(2)에 데이터를 송신하고, IC 카드(2)는 그 데이터를 수취하여 그 데이터에 대응하는 처리를 하여 그 처리 결과에 대응하는 데이터를 R/W(1)로 반송한다.
다음으로, 도 4 는 도 3 의 EEROM(66)의 논리 포맷을 나타내고 있다.
EEROM(66)은 블록을 단위로 하여 구성되며, 도 4 의 실시 형태에서는 1블록은 예를 들어 16바이트로 구성되어 있다.
또한, 도 4 의 실시예에서는 가장 위의 블록의 논리 어드레스를 #0000h(h는 16진수를 나타낸다)로서 승순에 논리 어드레스가 부쳐져 있다. 또한 도 4 에서는 논리 어드레스로서 #0000h 내지 #FFFFh 가 부쳐져 있으며, 따라서 65536(=216)개의 블록이 구성되어 있다.
블록은 사용자 블록 또는 시스템 블록으로서 사용되는 바와 같이 되어 있다. EEPROM(66)의 블록은 논리 어드레스의 승순에 사용자 블록에 할당되며, 또한 논리 어드레스의 승순으로, 시스템 블록에 할당되어 가도록 되어 있다. 즉, 도 4 에서, 사용자 블록은 아래 방향으로, 시스템 블록은 위방향으로 각각 증가되어 비어있는 블록이 없어진 시점에서 사용자 블록 및 시스템 블록을 만들 수 없게 된다. 따라서, 사용자 블록 및 시스템 블록의 경계는 고정이 아니며, 사용자 블록의 수 또는 시스템 블록의 수 각각에는 특별히 제한이 없다(단, 도 4 의 실시예에서는 사용자 블록과 시스템 블록의 합계가 65536개 이하로 제한된다.)
시스템 블록에는 제조 ID (Identification)블록, 발행 ID 블록, 시스템 정의 블록, 에어리어 정의 블록, 서비스 정의 블록의 5종류가 있다. 또한 도 4 의 실시예에서는 에어리어 정의 블록 또는 서비스 정의 블록으로 되어 있는 블록을 에어리어/서비스 정의 블록으로 나타냈다.
시스템 블록 중, 제조 ID 블록, 발생 ID 블록, 시스템 정의 블록의 세가지는 기본적으로 IC 카드(2)의 발행시에는 이미 배치되어 있는 것으로, 논리 어드레스 #FFFFh, #FFFEh, #EEEDh로 각각 배치된다. 그리고, 에어리어/서비스 정의 블록은 논리 어드레스 #FFFCh 보다 위에 작성 순서로 배치되어 간다.
제조 ID 블록에는 IC 카드(2)의 제조에 관한 정보가 배치된다. 즉, 제조 IC 블록에는 예를 들면 고유한 제조 ID나, 제조년월일, 제조자의 코드 등이 배치된다.
발행 ID 블록에는 IC 카드(2)의 발행에 관한 정보가 배치된다. 즉, 발행 IC 블록에는 예를 들면 IC 카드(2)가 발행된 일자 또는 IC 카드를 발생한 순서를 나타내는 코드 등이 배치된다.
시스템 정의 블록에는 예를 들면 EEPROM(66)이 갖는 시스템 블록 또는 사용자 블록의 수 또는 시스템 키 등이 배치된다. 또한, 시스템 키는 IC 카드(2)와 R/W(1) 및 제어기(3) 사이에서 상호 인증을 항 할 때에 사용된다.
에어리어 정의 블록은 예를 들면 EEPROM(66)의 기억 영역(에어리어)이 관리자에게 할당됨으로써 작성되며, 그곳에는 관리자가 자신에게 할당된 기억 영역을 관리하기 위한 정보 등이 배치된다. 즉, 에어리어 정의 블록에는 예를 들면 후술하는 코드 범위, 비어있는 용량, 및 에어리어 키 등이 배치된다.
서비스 정의 블록에는 후술하는 서비스 영역을 관리하기 위한 정보(서비스 영역의 용량 또는 서비스 키 등) 등이 배치된다.
다음에, 시퀀서(91)에서는 EEPROM(66)의 기억 영역이 계층화되어 관리되도록 되어 있다.
즉, 도 5 는 RF 인터페이스(61)의 디렉토리 구조를 나타내고 있다.
EEPROM(66)의 기억 영역은 에어리어 정의 영역을 계층으로 하는 계층 구조를 이루고 있고, 에어리어 정의 영역은 에어리어 정의 영역 및 서비스 정의 영역을 가질 수가 있도록 되어 있다.
에어리어 정의 영역(계층 키 기억 수단)은 관리자에게 할당되고, 그곳에는 관리자가 에어리어 정의 영역 또는 서비스 정의 영역을 식별하기 위한 이름으로서 사용 가능한 식별 코드의 범위를 나타내는 코드 범위, 사용 가능한 비어있는 블록 수를 나타내는 비어있는 용량, 인증에 사용하는 후술하는 액세스 키를 생성하기 위한 에어리어 키 등이 배치된다. 여기에서 1 의 에어리어 정의 영역은 도 4 에서 설명한 1 의 에어리어 정의 블록에 대응된다.
도 5 의 실시 형태에서는 관리자 A에게 할당된 에어리어 정의 영역이 최상 위 계층을 형성하고 있고, 이것을 계층으로 하여 관리자 B1 및 B2 의 에어리어 정의 영역이 작성되어 있다. 또한, 관리자 B1 및 B2 의 에어리어 정의 영역을 모계층으로서 관리자 C 의 에어리어 정의 영역이 작성되어 있다.
서비스 정의 영역(데이터 기억 영역 키 기억 수단)은 관리자가 제공하는 서비스에 할당되며, 거기에는 그 서비스의 제공에 필요한 데이터를 기억하는 서비스 영역의 용량 또는 액세스 키를 생성하기 위한 서비스 키 등이 배치된다. 여기에서 1의 서비스 정의 영역은 도 4 에서 설명한 1 의 서비스 정의 블록에 대응한다.
서비스 영역은 서비스의 제공에 필요한 데이터가 기억되는 기억 영역으로, 도 4 의 사용자 블록에 대응한다. 즉, 서비스 영역은 0 이상의 사용자 블록으로 구성되며, 서비스 영역을 구성하는 사용자 블록 수가 그 서비스 영역을 관리하는 서비스 정의 영역의 용량으로서 배치된다.
또한, 에어리어 정의 영역 및 서비스 정의 영역에는 그것들을 식별하기 위한 식별 코드도 배치된다. 여기에서 에어리어 정의 영역 또는 서비스 정의 영역을 식별하기 위한 식별 코드 각각을 이하, 적절히 에어리어 코드 또는 서비스 코드라 한 다. 또한 서비스 코드는 어느 서비스 영역을 관리하는 서비스 정의 영역을 식별하는 것이므로, 그 서비스 영역을 식별하는 개별 코드(서비스 영역 식별 코드)라 할 수도 있다.
도 5 의 실시예에서는 관리자 A에게 최상위 계층의 에어리어 정의 영역이 할당되어 있다. 그리고, 사용 가능한 식별 코드의 범위(코드 범위)로서 0000h 내지 FFFFh가, 에어리어 키로서 0123456789abcdef 가 각각 정의되어 있다. 여기에서 에어리어 정의 영역에서의 코드 범위내의 식별 코드이면 어떤 식별 코드도 그 에어리어 정의 영역의 에어리어 코드로서 사용 가능한데, 본 실시 형태에서는 예를 들면 에어리어 정의 영역의 코드 범위의 최소값이 그 에어리어 코드로서 사용되도록 되어 있다. 따라서, 코드 범위가 0000h 내지 FFFFh로 되어 있는 에어리어 정의 영역, 즉 관리자 A 에게 할당되어 있는 에어리어 정의 영역의 에어리어 코드는 0000h로 되어 있다. 여기에서 에어리어 코드 #xxxxh의 에어리어 정의 영역을 이하, 적절히 에어리어 정의 영역 #xxxxh 라 기재한다.
관리자 A의 에어리어 정의 영역 #0000h인 계층에는 관리자 A가 서비스를 제공하기 위한 서비스 정의 영역이 마련되어 있다. 이 서비스 정의 영역에는 에어리어 정의 영역 #0000h의 코드 범위인 0000h 내지 #FFFFh 중, 0008h가 서비스 코드로서 할당되어 있다. 여기에서 서비스 코드 #xxxxh의 서비스 정의 영역을, 이하 적절히 서비스 정의 영역 #xxxxh라 기재한다.
서비스 정의 영역 #0008h의 용량은 8로 되어 있으며, 따라서, 8의 사용자 블록에서 구성되는 서비스 영역의 사용이 가능해져 있다. 또한, 서비스 정의 영역 #0008h의 서비스 키는 0101010101010101로 되어 있다.
또한, 관리자 A의 에어리어 정의 영역 #0000h인 계층에는 관리자 B1의 에어리어 정의 영역 #0100h 및 관리자 B2의 에어리어 정의 영역 #1000h가, 그 자계층으로서 마련되어 있다. 또한, 에어리어 정의 영역 #0000h의 계층에는 도시하지 않은 기타의 에어리어 정의 영역도 마련되어 있고, 이에 따라 에어리어 정의 영역 #0000h가 사용 가능한 블록수(비어있는 용량)는 예를 들면 37 블록으로 되어 있다.
관리자 B1의 에어리어 정의 영역 #0100h의 코드 범위로서는 그 모계층인 에어리어 정의 영역 #0000h의 코드 범위인 0000h 내지 FFFFh 중, 0100h 내지 03FFh가 할당되어 있다. 여기에서, 관리자 B1의 에어리어 정의 영역의 코드 범위가 0100h 내지 03FFh이므로, 그 최소값인 0100h가 관리자 B1의 에어리어 정의 영역의 에어리어 코드로 되어 있다.
또한, 에어리어 정의 영역 #0100h의 비어있는 용량 또는 에어리어 키를 각각 14 또는 a0a0a0a0a0a0a0a0로 되어 있다.
또한, 관리자 B1의 에어리어 정의 영역 #0100h의 계층에는 관리자 C의 에어리어 정의 영역 #0300h가 그 자계층으로서 마련되어 있다. 그리고, 관리자 C의 에어리어 정의 영역 #0300h의 코드범위로서는 그 모계층인 에어리어 정의 영역 #0100h의 코드 범위인 0100h 내지 03FFh 중 0300h 내지 03FFh가 할당되어 있다. 여기에서, 관리자 C의 에어리어 정의 영역의 코드 범위가 0300h 내지 03FFh이므로, 그 최소값인 0300h가 관리자 C의 에어리어 정의 영역의 에어리어 코드로 되어 있 다.
또한, 에어리어 정의 영역 #0300h의 비어있는 용량 또는 에어리어 키는 각각 0 또는 b0b0b0b0b0b0b0b0로 되어 있다.
관리자 C 의 에어리어 정의 영역 #0300h의 계층에는 관리자 C 가 서비스를 제공하기 위한 서비스 정의 영역이 마련되어 있다. 이 서비스 정의 영역에는 에어리어 정의 영역 #0300h의 코드 범위인 0300h 내지 03FFh 중의 030Ch가 서비스 코드로서 할당되어 있다.
이 서비스 코드 030Ch가 할당되어 있는 서비스 정의 영역, 즉 서비스 정의 영역 #030Ch의 용량은 16으로 되어 있고, 따라서, 16의 사용자 블록으로 구성되는 서비스 영역의 사용이 가능해졌다. 또한, 서비스 정의 영역 #030Ch의 서비스 키는 0202020202020202로 되어 있다.
여기에서, 서비스 정의 영역 #030Ch가 관리하는 서비스 영역의 용량이 16이고, 그 서비스 정의 영역 #030Ch 자체가 1인 블록을 서비스 정의 블록으로서 사용되므로 서비스 정의 영역 #030Ch가 존재함으로써 사용되는 블록수는 17(=16+1)블록이 된다. 또, 서비스 정의 영역 #030Ch이 속하는 계층의 에어리어 정의 영역 #0300h가 사용 가능한 블록수는 그 비어있는 용량이 0이므로 0블록이다. 또한, 에어리어 정의 영역 #0300h 자체가 1인 블록을 에어리어 정의 블록으로서 사용한다. 따라서, 에어리어 정의 영역 #0300h의 계층에서는 사용되고 있는 블록이 18(=17+1) 블록이고, 사용 가능한 블록이 0이므로, 그 모계층(상위 계층)인 에어리어 정의 영역 #0100h에서 할당된 블록수가 18(=18+0)블록이라는 것을 알 수 있다.
또한, 에어리어 정의 영역 #0100h의 계층에 대해서는 그 자계층(하위 계층)인 에어리어 정의 영역 #0300h로, 상술한 바와 같이 18블록이 사용되고 있다. 또한 에어리어 정의 영역 #0100h 자체가 1인 블록을 에어리어 정의 블록으로서 사용하고 있다. 그리고, 에어리어 정의 영역 #0100h 의 비어있는 용량은 상술한 바와 같이 14로 되어 있다. 따라서, 에어리어 정의 영역 #0100h 의 계층에서는 사용되고 있는 블록이 19(=18+1)블록이고, 사용 가능한 블록이 14이므로 그 모계층인 에어리어 정의 영역 #0000h에서 할당된 블록은 33(=19+14)블록이라는 것을 알 수 있다.
한편, 관리자 B의 에어리어 정의 영역 #0100h 의 코드 범위로서는 그 모계층인 에어리어 정의 영역 #0100h 의 코드 범위인 0000h 내지 FFFFh 중의 1000h 내지 1FFFh가 할당되어 있다. 여기에서 관리자 B의 에어리어 정의 영역의 코드 범위가 1000h 내지 1FFFh이므로, 그 최소치인 1000h가 관리자 B2의 에어리어 정의 영역의 에어리어 코드로 되어 있다.
또한, 에어리어 정의 영역 #1000h의 비어있는 용량 또는 에어리어 키는 각각, 43 또는 c0c0c0c0c0c0c0c0으로 되어 있다.
관리자 B2의 에어리어 정의 영역 #1000h 의 계층에는 관리자 B2가 서비스를 제공하기 위한 서비스 정의 영역이 마련되어 있다. 이 서비스 정의 영역에는 에어리어 정의 영역 #1000h의 코드 범위인 1000h 내지 1FFFh중의 1022h가 서비스 코드로서 할당되어 있다.
이 서비스 코드 1022h가 할당되어 있는 서비스 정의 영역, 즉 서비스 정의 영역 #1022h의 용량은 4로 되어 있으며, 따라서 4의 사용자 블록으로 구성되는 서비스 영역의 사용이 가능해져 있다. 또한 서비스 정의 영역 #1022h의 서비스 키는 0303030303030303으로 되어 있다.
여기에서 서비스 정의 영역 #1022h가 관리하는 서비스 영역의 용량이 4이고, 그 서비스 정의 영역 #1022h 자체가 1인 블록을 서비스 정의 블록으로서 사용하므로 서비스 정의 영역 #1022h가 존재함으로써 사용되는 블록수는 5(=4+1) 블록이 된다. 또 서비스 정의 영역 #1022h가 속하는 계층의 에어리어 정의 영역 #1000h가 사용 가능한 블록수는 그 비어있는 용량이 43이므로 43블록이다. 또한 에어리어 정의 영역 #1000h 자체가 1인 블록을 에어리어 정의 블록으로서 사용하고 있다. 따라서, 에어리어 정의 영역 #1000h의 계층에서는 사용되고 있는 블록이 6(=5+1) 블록이고, 사용 가능한 블록이 43블록이므로 에어리어 정의 영역 #1000h에 할당된 블록은 49(=6+43)블록이라는 것을 알 수 있다.
이상과 같이, 관리 대상 에어리어 정의 영역에 할당 가능한 식별 코드의 범위인 코드 범위를 에어리어 정의 영역에 기억시키도록 했으므로 그 코드 범위에 기초하여 관리 대상의 에어리어 정의 영역을 자계층으로 하고, 그 에어리어 정의 영역을 관리하는 에어리어 정의 영역을 모계층으로 하는 도 5에 나타내는 바와 같은 계층 구조를 규정할 수가 있다.
다음에, 도 6 을 참조하여 최상위 계층인 에어리어 정의 영역 #1000h가 할당된 관리자 A가, 예를 들면 IC 카드(2)의 발행자이라고 하여 도 5에 나타낸 계층 구조가 구성되어 가는 과정에 대하여 설명한다.
관리자 A는 예를 들면 사용자의 요구에 따라 IC 카드(2)를 발행한다(1). 이 IC 카드(2)에는 도 5의 계층 구조 중, 예를 들면 에어리어 정의 영역 #1000h만이 작성되어 있다.
그리고, 관리자 A는 서비스 정의 영역 #0008h에 의해 요구되는 서비스 정의 영역을 이용하여 소정의 서비스 제공을 개시하는 경우, 그 서비스 정의 영역 #0008h의 작성을 행하기에 필요한 정보를 발권기(101)에 등록한다(2).
여기에서, 발권기(101)는 예를 들면 도 1 의 R/W(1)와 제어기(3)로 구성된다. 또 발권기(101)는 예를 들면 역 또는 소매점, 그 밖의 설비 등에 설치할 수가 있다.
그 후, 사용자가 IC 카드(2)를 발권기(101)에 장착하면 (IC 카드(2)를 발권기(101)가 내장하는 R/W(1)와의 사이에서 통신을 행하는 것이 가능한 상태로 하면), 발권기(101)는 등록된 정보에 기초하여 IC 카드(2)에 코멘드 및 필요한 데이터를 송신하여 서비스 정의 영역 #0008h를 작성시킨다. 이에 따라 사용자는 서비스 정의 영역 #0008h에 의해 관리되는 서비스 영역을 이용한 관리자 A에 의한 서비스의 제공을 받는 것이 가능해진다.
한편, 관리자 B1, B2 각각은 IC 카드(2)를 이용한 서비스의 제공을 하고자 했을 경우, 관리자 A와의 사이에서 계약을 맺고, 관리자 A에게 에어리어 정의 영역 #0100h 및 #1000h의 작성을 하는데 필요한 정보를 발권기(101)에 등록 받는다(3), *4). 그리고 사용자가 IC 카드(2)를 발권기(101)에 장착하면 발권기(101)는 등록된 정보에 기초하여 IC 카드(2)에 코멘드 및 필요한 데이터를 송신하고, 에어 리어 정의 영역 #0100h 및 #1000h를 작성시킨다. 이에 따라 관리자 B1 또는 B2는 에어리어 정의 영역 #0100h 및 #1000h에서 정의되고 있는 범위 내에서 IC 카드(2)의 리소스를 사용하는 것이 가능해진다.
그 후, 관리자 B2가 서비스 정의 영역 #1011h에 의해 관리되는 서비스 영역을 이용하여 소정의 서비스 제공을 개시하는 경우, 그 서비스 정의 영역 #1022h의 작성을 하는데 필요한 정보를 발권기(101)에 등록한다(5). 그리고 사용자가 IC 카드(2)를 발권기(101)에 장착하면 발권기(101)는 등록된 정보에 기초하여 IC 카드(2)에 코멘드 및 필요한 데이터를 송신하여 서비스 정의 영역 #1022h를 작성시킨다. 이에 따라 사용자는 서비스 정의 영역 #1022h에 의해 관리되는 서비스 영역을 이용한 관리자 B2에 의한 서비스의 제공을 받는 것이 가능해진다.
또, 관리자 C는 관리자 B1의 관리하에 IC 카드(2)를 이용한 서비스의 제공을 하고자 하는 경우, 관리자 B1과의 사이에서 계약을 맞고, 관리자 B1에게 에어리어 정의 영역 #0300h의 작성을 하는데 필요한 정보를 발권기(101)에 등록 받는다(6). 그리고 사용자가 IC 카드(2)를 발권기(101)에 장착하면 발권기(101)는 등록된 정보에 기초하여 IC 카드(2)에 코멘드 및 필요한 데이터를 송신하여 에어리어 정의 영역 #0300h를 작성시킨다. 이에 따라 관리자 C는 에어리어 정의 영역 #0300h에서 정의되고 있는 범위 내에서 IC 카드(2)의 리소스를 사용하는 것이 가능해진다.
그 후, 관리자 C가 서비스 정의 영역 #030Ch에 의해 관리되는 서비스 영역을 이용하여 소정의 서비스 제공을 개시하는 경우, 그 서비스 정의 영역 #030Ch의 작성을 하는데 필요한 정보를 발권기(101)에 등록한다(7). 그리고 사용자가 IC 카 드(2)를 발권기(101)에 장착하면 발권기(101)는 등록된 정보에 기초하여 IC 카드(2)에 코멘드 및 필요한 데이터를 송신하여 서비스 정의 영역 #030Ch를 작성시킨다. 이에 따라 사용자는 서비스 정의 영역 #030Ch에 의해 관리되는 서비스 영역을 이용한 관리자 C에 의한 서비스 제공을 받는 것이 가능해진다.
IC 카드(2)에서는 이상과 같이 발권기(101)로부터의 코멘드에 따라 에어리어 정의 영역 또는 서비스 정의 영역이 작성된다. 이 에어리어 정의 영역을 작성하는 에어리어 작성 처리 및 서비스 정의 영역을 작성하는 서비스 작성 처리는, 예를 들면 시퀀서(91)에 의해 이루어지는데, 이 에어리어 작성 처리 및 서비스 작성 처리에 대하여 도 7 및 도 8 을 참조하여 설명한다.
우선 첫 번째로 도 7 의 플로우 챠트를 참조하여 에어리어 작성 처리에 대하여 설명한다.
IC 카드(2)가 발권기(101)에 장착되면, 발권기(101)는 IC 카드(2)에 대하여 에어리어 정의 영역을 작성할 것을 명령하는 코멘드(이하, 정의, 에어리어 작성 코멘드라고함.)와 그 에어리어 정의 영역을 작성하기 위하여 필요한 정보, 즉 예를 들면 작성하는 에어리어 정의 영역의 코드 범위, 그 에어리어 정의 영역에 할당된 블록 수(이하, 적절히 할당 블록수라 함), 에어리어 키, 및 모계층으로 하는 에어리어 정의 영역의 에어리어 코드(이하, 적절히 모 에어리어 코드라 함) 등을 송신한다.
여기에서, 에어리어 정의 영역을 작성하기 위하여 필요한 정보는 시큐리티의 관점에서 암호화한 상태에서 IC 카드(2)에 송신하는 것이 바람직하다. 또한 암호 화는 예를 들면 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억된 에어리어 키 등과 동일한 키를 사용하여 행할 수가 있다. 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억된 에어리어 키는 EEPROM(66)에 기억되어 있으므로 IC 카드(2)에서는 그 암호화된 정보를 디코드하는 것이 가능하다.
IC 카드(2)(시퀀서(91))는 에어리어 작성 코멘드를 수신하면 이와 함께 송신되어 오는 암호화된 정보를 복호하고, 이에 의해 모 에어리어 코드, 및 작성 대상의 에어리어 정의 영역의 코드 범위, 할당 블록 수, 및 에어리어 키 등을 인식한다. 또한 IC 카드(2)에서는 작성 대상인 에어리어 정의 영역의 에어리어 코드를 인식한다. 즉, 여기에서는 작성 대상의 에어리어 정의 영역의 코드 범위의 최소값이 그 에어리어 코드로서 인식된다.
그리고, IC 카드(2)에서는 단계(S1)에서 작성 대상의 에어리어 정의 영역이 EEPROM(66) 중에 이미 작성되어 있는지 여부가 판정된다. 즉 단계(S1)에서는 작성 대상인 에어리어 정의 영역의 에어리어 코드와 동일한 에어리어 코드를 갖는 에어리어 정의 영역이 이미 작성되어 있는지 여부가 판정된다.
단계(S1)에서 작성 대상의 에어리어 정의 영역이 이미 작성되어 있다고 판단된 경우, 에어리어 작성 처리를 종료한다. 즉, 작성 대상인 에어리어 정의 영역이 이미 작성되어 있는 경우는 동일한 에어리어 정의 영역을 중복하여 작성할 필요는 없으므로 이후의 처리는 하지 않는다.
또, 단계(S1)에서 작성 대상인 에어리어 정의 영역이 작성되어 있지 않다고 판정된 경우, 단계(S2)로 진행하여, 작성 대상인 에어리어 정의 영역의 코드 범위 및 할당 블록 수(용량)가 적정한지 여부가 판정된다. 즉, 단계(S2)에서는 작성 대상인 에어리어 정의 영역의 코드 범위가 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억되어 있는 코드 범위에 포함되어 있으며, 작성 대상인 에어리어 정의 영역의 할당 블록수가 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억되어 있는 비어있는 용량 이하인지 여부가 판정된다.
단계(S2)에서, 작성 대상인 에어리어 정의 영역의 코드 범위 및 할당 블록수가 적정하지 않다고 판정된 경우, 즉 작성 대상의 에어리어 정의 영역의 코드 범위가 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억되어 있는 코드 범위에 포함되어 있지 않는지 또는 작성 대상인 에어리어 정의 영역의 할당 블록수가 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억되어 있는 비어있는 용량을 초과하는 경우, 단계(S3)로 진행하여 에러 처리가 이루어져 에어리어 작성 처리를 종료한다. 즉, 단계(S3)에서는 예를 들면 모 에어리어 코드를 갖는 에어리어 정의 영역을 모계층으로 하고, 그 자계층이 되는 에어리어 정의 영역을 작성할 수 없다는 뜻의 메시지가 발권기(101)에 송신된다. 따라서, 이 경우 에어리어 정의 영역은 작성되지 않는다.
한편, 단계(S2)에서, 작성 대상인 에어리어 정의 영역의 코드 범위 및 할당 블록수가 적정하다고 판정된 경우, 즉, 작성 대상인 에어리어 정의 영역의 코드 범위가 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억되어 잇는 코드 범위에 포함되어 있으며, 작성 대상인 에어리어 정의 영역의 할당 블록수가 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억되어 있는 비어있는 용량 이하인 경우, 단 계(S4)로 진행하고, 작성 대상인 에어리어 정의 영역이 모 에어리어 코드를 갖는 에어리어 정의 영역의 계층(모계층)의 자계층으로서 작성된다.
즉, 단계(S4)에서는 EEPROM(66)(도 4) 중의 비어있는 블록 중, 가장 아래의 블록(논리 어드레스의 가장 큰 비어있는 블록)이 작성 대상인 에어리어 정의 영역에 대응하는 에어리어 정의 블록으로서 확보된다. 또한 그 에어리어 정의 블록에 코드 범위, 비어있는 용량, 에어리어 키 등이 입력된다. 여기에서, 단계(S4)에서는 코드 범위 및 에어리어 키로서는 발권기(101)에서 송신되어 온 것이 그대로 입력된다. 또 비어있는 용량으로서는 발권기(101)에서 송신되어 온 할당 블록수에서 1을 감산한 값을 입력한다. 또한, 빈 용량으로서, 할당되어 블록수에서 1을 감산한 값을 기입하는 것은 작성 대상인 에어리어 정의 영역이 1의 블록을 사용하기 때문이다.
그 후, 스텝(5)으로 진행하여 모 에어리어 코드를 갖는 에어리어 정의 영역의 비어있는 용량이 기입되어 에어리어 작성 처리를 종료한다. 즉 단계(S5)에서는 모 에어리어 코드를 갖는 에어리어 정의 영역의 비어있는 용량에서, 할당 블록수를 감산한 값이 그 에어리어 정의 영역의 비어있는 용량으로서 새로이 입력된다.
도 5 에 나타낸 관리자 B1, B2, C의 에어리어 정의 영역 #0100h, #1000h, #0300h는 이상의 에어리어 작성 처리가 이루어짐으로써 작성된다.
즉, IC 카드(2)의 발행시에 있어서, 그 발행자이기도 한 관리자 A가 IC 카드(2)의 리소스 모두를 가지고 있고, IC 카드(2)의 사용 가능한 식별 코드 또는 용량이 예를 들면 0000h 내지 FFFFh 또는 65533 블록이라 하면, IC 카드(2)의 발행시 에는 에어리어 정의 영역으로서는 코드 범위가 0000h 내지 FFFFh이고, 비어있는 용량이 65532로 되어 있다. 최상위 계층의 에어리어 정의 영역 #0000h만이 존재하고 있다.
또한 본 실시 형태에서는 도 4 에 나타내는 바와 같이, EEPROM(66)은 65536의 블록을 가지고 있는데, 발행 직후의 IC 카드(2)에서, 사용 가능한 용량이 그보다 1블록 적은 65533블록인 것은 도 4 에 나타낸 바와 같이, 제조 ID 블록, 발행 ID 블록, 시스템 정의 블록이 존재하기 때문이다.
또, 최상위 계층의 에어리어 정의 영역 #0000h의 비어있는 용량이 사용 가능한 용량인 65533 블록보다 1블록 적은 65532블록이 되는 것은 에어리어 정의 영역 #0000h 자체가 1블록을 사용하기 때문이다.
관리자 A가 자신의 리소스 중, 예를 들면 0100h 내지 03FFh의 범위의 식별 코드와 33블록을 관리자 B1에게 나누어 부여하는 경우에는, 에어리어 작성 처리가 이루어짐으로써 에어리어 정의 영역 #0100h가 작성된다. 즉, 이 경우0100 내지 03FFh가 코드 범위로서 또 32블록이 비어있는 용량으로서 에어리어 정의 영역 #0100h에 입력된다. 또한 비어있는 용량이 관리자 A로부터 나누어 부여되는 33 블록보다 1블록 적은 것은 에어리어 정의 영역 #0100h 자체가 1블록을 사용하기 때문이다.
에어리어 정의 영역 #0100h가 작성되면 관리자 A의 에어리어 정의 영역 #0100h의 비어있는 용량은 관리자 B1에 나누어 부여된 33블록만 감소된다.
또 관리자 A가 지신의 리소스 중, 예를 들면 1000h 내지 1FFFh의 범위의 식 별 코드와 49블록을 관리자 B2에 나누어 부여하는 경우에는 에어리어 작성 처리가 이루어짐으로써 에어리어 정의 영역 #1000h가 작성된다. 즉 이 경우 1000h 내지 1FFFh가 코드 범위로 하고 또한, 48블록이 비어있는 용량으로 하여 에어리어 정의 영역 #1000h에 입력된다. 또한 비어있는 용량이 관리자 A로부터 나누어 부여되는 49 블록보다 1블록 적은 것은 에어리어 정의 영역 #1000h 자체가 1블록을 사용하기 때문이다.
에어리어 정의 영역 #1000h가 작성되면 관리자 A의 에어리어 정의 영역 #0000h의 비어있는 용량은 관리자 B2에게 나누어 부여된 33블록만 감소된다.
관리자 B1 또는 B2 각각은 이상과 같이 하여 에어리어 정의 영역 #0100h 또는 #1000h가 작성되면 그 에어리어 정의 영역 #0100h 또는 #1000h의 계층에 그 자계층으로서의 에어리어 정의 영역 또는 서비스 정의 영역을 작성하는 것이 가능해진다.
예를 들면, 지금 관리자 B1이 자신의 리소스 중, 예를 들면 0300h 내지 03FFh의 범위의 식별 코드와 18 블록을 관리자 C에게 나누어 부여하는 경우에는 에어리어 작성 처리가 이루어짐으로서 에어리어 정의 영역 #0300h가 작성된다. 즉, 이 경우, 030h 내지 03FFh가 코드 범위로서 또, 17 블록이 비어있는 용량으로서, 에어리어 정의 영역 #0300h에 입력된다. 또한 비어있는 용량이 관리자 B1로부터 나누어 부여되는 18블록보다 1블록 적은 것은 에어리어 정의 영역 #0300h 자체가 1블록을 사용하기 때문이다.
에어리어 정의 영역 #0300h가 작성되면, 관리자 B1 에어리어 정의 영역 # 0100h의 비어있는 용량은 관리자 C에게 나누어 부여된 18블록만 감소된다. 즉, 상술한 바와 같이 에어리어 정의 영역 #0100h가 작성된 시점에서는 그 비어있는 영역은 32블록이었으나, 18 블록만큼 감소되어 도 5에 나타내는 바와 같이 14블록이 된다.
다음에, 도 8 의 플로우 챠트를 참조하여 서비스 작성 처리에 대하여 설명한다.
IC 카드(2)가 발권기(101)에 장착되면, 발권기(101)는 IC 카드(2)에 대하여 서비스 정의 영역을 작성할 것을 지령하는 코멘드(이하, 서비스 작성 코멘드 라고함)와 그 서비스 정의 영역을 작성하기 위하여 필요한 정보, 즉 예를 들면 작성하는 서비스 정의 영역의 서비스 코드, 그 서비스 정의 영역에 할당된 블록 수(이하, 할당 블록수 라고함), 서비스 키, 및 서비스 정의 영역을 작성하는 계층의 에어리어 정의 영역의 에어리어 코드(이하, 모 에어리어 코드라 함) 등을 송신한다.
여기에서, 서비스 정의 영역을 작성하기 위하여 필요한 정보도 에어리어 작성 처리에서의 경우와 마찬가지로 시큐리티의 관점에서 예를 들면 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억된 에어리어 키와 동일한 키를 사용하여 암호화한 상태에서 IC 카드(2)에 송신하는 것이 바람직하다.
IC 카드(2)(시퀀서(91))는 서비스 작성 코멘드를 수신하면 그것과 함께 송신되어 오는 암호화된 정보를 복호하고, 이에 의해 모 에어리어 코드, 및 작성 대상의 서비스 정의 영역의 서비스 코드, 할당 블록수, 및 서비스 키 등을 인식한다.
그리고, IC 카드(2)에서는 단계(S11)에서 작성 대상의 서비스 정의 영역이 EEPROM(66) 중에 이미 작성되어 있는지 여부가 판정된다. 즉 단계(S11)에서는 작성 대상인 서비스 정의 영역의 에어리어 코드와 동일한 서비스 코드를 갖는 서비스 정의 영역이 이미 작성되어 있는지 여부가 판정된다.
단계(S11)에서 작성 대상의 서비스 정의 영역이 이미 작성되어 있다고 판단된 경우, 서비스 작성 처리를 종료한다. 즉, 작성 대상인 서비스 정의 영역이 이미 작성되어 있는 경우는 동일한 서비스 정의 영역을 중복하여 작성할 필요는 없으므로 이후의 처리는 하지 않는다.
또, 단계(S11)에서 작성 대상인 서비스 정의 영역이 작성되어 있지 않다고 판정된 경우, 단계(S12)로 진행하여, 작성 대상인 서비스 정의 영역의 서비스 코드 및 할당 블록 수(용량)가 적정한지 여부가 판정된다. 즉, 단계(S12)에서는 작성 대상인 서비스 정의 영역의 서비스 코드가 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억되어 있는 코드 범위에 포함되어 있으며, 작성 대상인 서비스 정의 영역인 할당 블록수가 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억되어 있는 비어있는 용량 이하인지 여부가 판정된다.
단계(S12)에서, 작성 대상인 서비스 정의 영역의 서비스 코드 및 할당 블록수가 적정하지 않다고 판정된 경우, 즉 작성 대상의 서비스 정의 영역의 서비스 코드가 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억되어 있는 코드 범위에 포함되어 있지 않는지 또는 작성 대상인 서비스 정의 영역의 할당 블록수가 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억되어 있는 비어있는 용량을 초과하는 경우, 단계(S13)로 진행하여 에러 처리가 이루어지고 에어리어 작성 처리를 종 료한다. 즉, 단계(S3)에서는 예를 들면 모 에어리어 코드를 갖는 에어리어 정의 영역 계층에, 서비스 정의 영역을 작성할 수 없다는 메시지가 발권기(101)에 송신된다. 따라서, 이 경우 서비스 정의 영역은 작성되지 않는다.
한편, 단계(S12)에서, 작성 대상인 서비스 정의 영역의 서비스 코드 및 할당 블록수가 적정하다고 판정된 경우, 즉, 작성 대상인 서비스 정의 영역의 서비스 코드가 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억되어 있는 코드 범위에 포함되어 있으며, 작성 대상인 서비스 정의 영역의 할당 블록수가 모 에어리어 코드를 갖는 에어리어 정의 영역에 기억되어 있는 비어있는 용량 이하인 경우, 단계(S14)로 진행하고, 작성 대상인 서비스 정의 영역이 모 에어리어 코드를 갖는 에어리어 정의 영역의 계층에 작성된다.
즉, 단계(S14)에서는 EEPROM(66)(도 4) 중의 비어있는 블록 중, 가장 아래의 블록(논리 어드레스의 가장 큰 비어있는 블록)이 작성 대상인 서비스 정의 영역에 대응하는 서비스 정의 블록으로서 확보된다. 또한 그 서비스 정의 블록에 서비스 코드, 용량, 에어리어 키 등이 입력된다. 여기에서, 단계(S14)에서는 코드 범위 및 에어리어 키로서는 발권기(101)에서 송신되어 온 것이 그대로 입력된다. 또 비어있는 용량으로서는 발권기(101)에서 송신되어 온 할당 블록수에서 1을 감산한 값이 입력된다. 또 용량으로서는 발권기(101)에서 송신되어 온 할당 블록수에서 1을 감산한 값이 입력된다. 또한 용량으로서, 할당 블록수에서 1을 감산한 값을 입력하는 것은 작성된 서비스 정의 영역이 1의 블록을 사용하기 때문이다.
또한, 스텝(14)에서는 작성된 서비스 정의 영역에 입력된 용량에 대응하는 수의 비어있는 블록이 논리 어드레스가 작은 순서로 선택되고, 그 서비스 정의 영역이 관리하는 서비스 영역을 구성하는 사용자 블록으로서 확보되어 단계(S15)로 진행한다.
단계(S15)에서는 모 에어리어 코드를 갖는 에어리어 정의 영역의 비어있는 용량이 개서되어 서비스 작성 처리를 종료한다. 즉, 단계(S15)에서는 모 에어리어 코드를 갖는 에어리어 정의 영역의 비어있는 용량에서, 할당 블록수를 감산한 값이 그 에어리어 정의 영역의 비어있는 용량으로서 새로이 입력된다.
도 5 에 나타낸 관리자 A, B2, C의 서비스 정의 영역 #0008h, #1022h, #030Ch는 이상의 서비스 작성 처리가 이루어짐으로써 작성된다.
즉, 관리자 A가 자신의 리소스 중, 예를 들면 0008h의 식별 코드와 9블록의 용량을 사용하여 서비스 제공을 하는 경우에는 서비스 작성 처리가 이루어짐으로써 서비스 정의 영역 #0008h가 작성되고, 거기에 용량으로서 8블록이 입력된다. 또한 8개의 비어있는 블록이 사용자 블록으로서 확보되고, 에어리어 정의 영역 #0008h에 의해 관리되는 서비스 영역이 된다. 또한 서비스 정의 영역 #0008h에 입력되는 용량이 9 블록보다 1블록 적은 것은 서비스 정의 영역 #0008h 자체가 1블록을 사용하기 때문이다.
서비스 정의 영역 #0008h가 작성되면 관리자 A의 에어리어 정의 영역 #0000h의 비어있는 용량은 서비스 정의 영역 #0008h에 나누어 부여된 8 불록만큼 감소된다.
이상에 의해, 관리자 A는 서비스 정의 영역 #0008h에서 관리되는 8 블록의 서비스 정의 영역을 사용하여 서비스를 제공하는 것이 가능해진다.
또한, 관리자 B2가 지신의 리소스 중, 예를 들면 1022h의 식별 코드와 5 블록의 용량을 사용하여 서비스 제공을 하는 경우에는 서비스 작성 처리가 이루어짐으로써 서비스 정의 영역 #1022h가 작성되고, 거기에 용량으로서 4블록이 입력된다. 또한, 4 개의 사용자 블록으로서 확보되어 에어리어 정의 영역 #1022h에 의해 관리되는 서비스 영역이 된다. 또한 서비스 정의 영역 #1022h에 입력되는 용량이 5 블록 적은 것은 서비스 정의 영역 #1022h 자체가 1블록을 사용하기 때문이다.
서비스 정의 영역 #1022h가 작성되면 관리자 B2의 에어리어 정의 영역 #1000h의 비어있는 용량은 서비스 정의 영역 #1022h에게 나누어 부여된 5블록만큼 감소된다. 즉, 상술한 바와 같이 에어리어 정의 영역 #0000h가 작성된 시점에서는 그 비어있는 용량은 48블록이었으나, 5블록만큼 감소되어 도 5 에 나타내는 바와 같이 43블록이 된다.
이상에 의해, 관리자 B2는 서비스 정의 영역 #1022h에서 관리되는 4블록의 서비스 영역을 사용하여 서비스를 제공하는 것이 가능해진다.
또한, 관리자 C가 지신의 리소스 중, 예를 들면 030Ch의 식별 코드와 17블록의 용량을 사용하여 서비스 제공을 하는 경우에는 서비스 작성 처리가 이루어짐으로써 서비스 정의 영역 #030Ch가 작성되고, 거기에 용량으로서 16블록이 입력된다. 또한, 16개의 비어있는 블록이 사용자 블록으로서 확보되어 에어리어 정의 영역 #030Ch에 의해 관리되는 서비스 영역이 된다. 또한 서비스 정의 영역 #030Ch 에 입력되는 용량이 17블록보다 1 블록 적은 것은 서비스 정의 영역 #0301Ch 자체가 1블록을 사용하기 때문이다.
서비스 정의 영역 #0301Ch가 작성되면 관리자 C의 에어리어 정의 영역 #0300Ch의 비어있는 용량은 서비스 정의 영역 #030Ch에게 나누어 부여된 17블록만큼 감소된다. 즉 상술한 바와 같이 에어리어 정의 영역 #0300h가 작성된 시점에서는 그 비어있는 용량은 17블록이었으나, 17블록만큼 감소되어 도 5 에 나타내는 바와 같이 0블록이 된다.
이상에 의해, 관리자 C는 서비스 정의 영역 #030Ch에서 관리되는 16블록의 서비스 영역을 사용하여 서비스를 제공하는 것이 가능해진다.
이상과 같이, 코드 범위 및 비어있는 용량을 기억하고 잇는 에어리어 정의 영역에 기초하여 EEPROM(66)을 관리하도록 했으므로, IC 카드(2)의 리소스 관리를 하는 것이 가능해진다. 즉, 어느 에어리어 정의 영역의 계층 중에서 사용 가능한 용량 및 식별 코드를 제한 할 수가 있다. 그 결과 예를 들면 어느 관리자가 자신에게 할당된 리소스(여기에서는 사용 가능한 용량 및 식별 코드)의 일부를 다른 관리자에게 나누어 부여하여 IC 카드(2)를 공유했다 하여도 식별 코드가 다른 관리자 사이에서 중복되거나, 미리 계약 등의 정한 용량을 초과하여 EEPROM(66)을 사용하는 것 등을 방지할 수가 있다.
다음으로, IC 카드(2)에서는 도 5 에서 설명한 바와 같이, EEPROM(66)의 기억 영역이 에어리어 정의 영역을 계층으로 하는 계층 구조를 갖고 있으며, 각 에어리어 정의 영역 및 서비스 정의 영역에 인증을 위한 키(본 실시 형태에서는 에어리 어 정의 영역 또는 서비스 정의 영역의 키를 각각 에어리어 키 또는 서비스 키라 부름)가 기억되어 있는 결과, IC 카드(2)에 대한 플렉시블하고, 시큐리티가 높은 액세스 제어를 행하는 것이 가능해졌다.
즉, 관리자끼리의 사이에서 예를 들면 도 9에 나타내는 바와 같은 구조의 교환을 행함으로써 IC 카드(2)에 대한 플렉시블하고, 시큐리티가 높은 액세스 제어를 실현할 수가 있다.
구체적으로는, IC 카드(2)의 발행자인 관리자(A)는 EEPROM(66)(도 4)의 시스템 정의 블록에 기억시키는 시스템 키와 자신의 에어리어 정의 영역 #0000h의 에어리어 키를 결정하고, 시스템 키를 시스템 정의블록에 에어리어 키 #0000h에 에어리어 정의 영역 #0000h 에 각각 기억시켜 둔다. 여기에서 에어리어 정의 영역 #xxxxh의 에어리어 키를 이하, 적절히 에어리어 키 #xxxxh라 기재한다.
또한, 관리자 A는 시스템 키를 에어리어 키 #0000h로 암호화하고, 에어리어 중간 키 KA를 생성해 둔다. 또한 암호화의 방법으로서는 예를 들면 DES(Data Encryption Standard) 또는 FEAL(Fast Data Encipherment Algorithm) 등을 채용할 수가 있다.
그리고, 관리자 A는 자신의 리소스를 관리자 B1에게 나누어 부여할 때 에어리어 중간 키 KA를, 관리자 B1에게 부여한다. 또한 관리자 A는 관리자 B1의 에어리어 키 #0100h를 결정하고, 자신의 에어리어 코드 #0000h와 함께 관리자(B1)에게 부여한다(배포한다).
따라서, 관리자 B1은 에어리어 중간 키 KA 및 자신의 에어리어 코드 #0000h을 인식할 수 있는데, 시스템 키, 및 이른바 모인 관리자 A의 에어리어 키 #0000h는 인식할 수 없다. 단, 관리자 B1의 에어리어 키 #0000h는 모체인 관리자 A가 이른바 자인 관리자 B1에게 부여한 것이므로 모체인 관리자 A는 자인 관리자 B1의 에어리어 키 #0100h를 인식하고 있다.
또한, 관리자 A가 관리자 B1에게 부여한 에어리어 키 #0100h는 관리자 B1의 에어리어 정의 영역 #0100h의 에어리어 작성 영역(도 7)에서, 그 에어리어 정의 영역 #0100h에 입력된다.
관리자 B1은 그 모체인 관리자 A로부터 얻은 에어리어 중간 키 KA를 역시 관리자 A로부터 얻은 에어리어 키 #0100h로 암호화하여 에어리어 중간 키 KB1 을 생성해 둔다.
또, 관리자 A는 자신의 리소스를 관리자 B2에게 나누어 부여할 때도 에어리어 중간 키 KA를 관리자 B2에게 부여한다. 또한 관리자 A는 관리자 B2의 에어리어 키 #0000h를 결정하고, 자신의 에어리어 코드 #0000h와 함께 관리자 B2에게 부여한다.
따라서, 관리자 B2는 에어리어 중간 키 KA 및 자신의 에어리어 키 #1000h를 인식할 수 있는데, 시스템 키 및 모체인 관리자 A의 에어리어 키 #0000h는 인식할 수가 없다. 단, 관리자 B2의 에어리어 키 #1000h는 모체인 관리자 A가 자인 관리 자 B2에게 부여한 것이므로, 모체인 관리자 A는 자인 관리자 B2의 에어리어 키 #1000h를 인식하고 있다.
또한, 관리자 A가 관리자 B2에게 부여한 에어리어 키 #1000h는 관리자 B2의 에어리어 정의 영역 #1000h의 에어리어 작성 처리에서 그 에어리어 정의 영역 #1000h에 입력된다.
관리자 B2는 그 자인 관리자 A로부터 얻은 에어리어 중간 키 KA를 역시 관리자 A로부터 얻은 에어리어 키 #1000h로 암호화하고, 에어리어 중간 키 KB2를 생성해 둔다.
한편, 관리자 B1은 자신의 리소스를 관리자 C에게 나누어 부여할 때 에어리어 중간 키 KB2를 관리자 C에게 부여한다. 또한, 관리자 B1은 관리자 C의 에어리어 키 #0300h를 결정하고, 자신의 에어리어 코드 #0100h 및 모체인 관리자 A의 에어리어 코드 #0000h와 함께 관리자 C에게 부여한다.
따라서, 관리자 C는 에어리어 중간 키 KB1 및 자신의 에어리어 키 #0300h를 인식할 수 있는데, 모체인 관리자 B1의 에어리어 키 #0100h는 인식할 수가 없다. 단, 에어리어 키 #0100h는 모체인 관리자 B1이 자인 관리자 C에게 부여한 것이므로 모체인 관리자 B1은 자인 관리자 C의 에어리어 키 #0300h를 인식하고 있다.
또한, 관리자 B1이 관리자 C에게 부여한 에어리어 키 #0300h는 관리자 C의 에어리어 정의 영역 #0300h의 에어리어 작성 처리에 있어서 그 에어리어 정의 영역 #0300h에 입력된다.
관리자 C는 그 모체인 관리자 B1로부터 얻은 에어리어 중간 키 KB1을, 역시 관리자 B1로부터 얻은 에어리어 키 #0300h로 암호화하여 에어리어 중간 키 KC를 생성해 둔다.
그리고, 관리자 A는 자신의 에어리어 정의 영역 #0000h의 계층에 작성된 서비스 정의 영역 #0008h에서 관리되는 서비스 영역을 이용하여 서비스를 제공할 때, 도 10 에 나타내는 바와 같이 서비스 정의 영역 #0008h에 기억시킨 서비스 키(서비스 정의 영역 #xxxxh에 기억된 서비스 키를, 이하 적절히 서비스 키 #xxxxh라 기재한다)를 에어리어 중간 키 KA로 암호화하고, 서비스 중간 키 K#0008h를 생성하여 에어리어 중간 키 KA와 함께 서비스 제공 장치(111)에 등록한다. 다시 관리자 A는 자신의 에어리어 정의 영역 #0000h의 에어리어 코드 #0000h와 그 에어리어 정의 영역 #0000h의 계층에 작성된 서비스 정의 영역 #000h의 서비스 코드 #0008h도 서비스 제공 장치(111)에 등록한다.
여기에서, 서비스 제공 장치(111)는 예를 들면 도 1 의 R/W(1)와 제어기(30로 구성되며, 소정의 서비스 영역에 대하여 데이터를 입출력함으로써 소정의 서비스를 제공하도록 되어 있다.
이 경우, 서비스 제공장치(111)에 IC 카드(2)가 장착되면 서비스 제공 장치(111)와 IC 카드(2) 사이에서 다음과 같이 하여 상호 인증이 이루어진다.
즉, 서비스 제공 장치(111)는 도 11 에 나타내는 바와 같이 등록되어 있는 에어리어 코드 #0000h와 서비스 코드 #0008h를 IC 카드(2)에 송신한다. IC 카 드(2)(시퀀서(91))에서는 서비스 제공 장치(111)에서의 에어리어 코드 #0000h 및 서비스 코드 #0008h가 수신된다.
그리고, IC 카드(2)에서는 시스템 정의 블록(도 4)애 기억되어 있는 시스템 키가 판독됨과 동시에 서비스 제공 장치(111)에서 수신한 에어리어 코드 #0000h를 갖는 에어리어 정의 영역에서 에어리어 코드 #0000h가 판독된다. 또한 시스템 키가 에어리어 코드 #0000h에서 암호화되고, 그 결과 도 10 의 서비스 제공 장치(111)에 등록되어 있는 에어리어 중간 키 KA와 동일한 키가 생성된다. 이 에어리어 중간 키 KA와 동일한 키는 인증에 사용하는 제 1 액세스 키(인증 키) Kbc가 된다.
또한, IC 카드(2)에서는 서비스 제공 장치(111)에서 수신한 서비스 코드 #0008h를 갖는 서비스 정의 영역에서 서비스 키 #0008h가 판독된다. 그리고 그 서비스 키 #0008h로 에어리어 중간 키 KA가 암호화되고, 그 결과 도 10의 서비스 제공 장치(111)에 등록되어 있는 서비스 중간 키 K#0008h와 동일한 키가 생성된다. 이 서비스 중간 키 K#0008h와 동일한 키는 인증에 사용하는 제2 액세스 키 Kac가 된다.
따라서, 지금의 경우, 서비스 제공 장치(111)에는 제 1 액세스 키 Kbc 또는 제 2 액세스 키 Kac인 에어리어 중간 키 KA 또는 서비스 중간 키 K#0008h가 등록되어 있으며, IC 카드(2)에서는 제 1 액세스 키 Kbc 또는 제 2 액세스 키 Kac인 에어리어 중간 키 KA 또는 서비스 중간 키 K#0008h가 생성된다.
그리고, 서비스 제공 장치(111)는 예를 들면 도 12 에 나타내는 바와 같이 IC 카드(2)의 인증을 한다.
즉, 서비스 제공 장치(111)에서는 난수가 발생되고, 그 난수가 알고리즘(E1)에 따라 변환된다. 즉, 난수가 제 2 액세스 키 Kac로 암호화(예를 들면 DES 암호화)되고, 그 암호화 결과가 제 1 액세스 키 Kbc로 복호된다. 또한, 그 복호 결과가 제 2 액세스 키 Kac로 복호화된다. 알고리즘(E1)에 의한 난수의 변환 결과는 IC 카드(2)로 송신된다.
IC 카드(2)에서는 서비스 제공 장치(111)에서의 알고리즘(E1)에 의한 난수의 변환 결과가 알고리즘(D1)에 따라 변환된다. 즉, 알고리즘(E1)에 의한 변환 결과가 제 2 액세스 키 Kac로 복호되고, 그 복호 결과가 제 1 액세스 키 Kbc로 암호화된다. 또한 그 암호화 결과가 제 2 액세스 키 Kac로 복호된다.
그리고 IC 카드(2)에서는 알고리즘(D1)에 의한 변조 결과가 다시 알고리즘(E2)에 따라 변환된다. 즉, 알고리즘(D1)에 의한 변환 결과가 제 1 액세스 키 Kbc로 암호화되는 한편, 제 1 액세스 키 Kbc 가 제 2 액세스 키 Kac로 암호화된다. 그리고 알고리즘(D1)에 의한 변환 결과인 제 1 액세스 키 Kbc에서의 암호화 결과가, 제 1 액세스 키 Kbc의 제 2 액세스 키 Kac에서의 암호화 결과로 복호된다. 또한 그 복호 결과가 제 1 액세스 키 Kbc에서 암호화되어 서비스 제공 장치(111)로 송신된다.
서비스 제공 장치(111)에서는 IC 카드(2)에서의 알고리즘(E2)에 의한 변환 결과가 알고리즘(D2)에 따라 변환된다. 즉 알고리즘(E2)에 의한 변환 결과가 제 1 액세스 키 Kbc에서 복호되는 한편, 제 1 액세스 키 Kbc가 제 2 액세스 키 Kac에서 암호화된다. 그리고, 알고리즘(E2)에 의한 변환 결과인, 제 1 액세스 키 Kbc에서의 복호 결과가 제 1 액세스 키 Kbc의, 제 2 액세스 키 Kac에서의 암호화 결과로 암호화된다. 또한 그 암호화 결과가 제 1 액세스 키 Kbc로 복호된다.
그리고, 서비스 제공 장치(111)에서는 원래의 산란과 알고리즘(D2)에 의한 변환 결과를 비교함으로써 IC 카드(2)의 인증을 한다. 즉, 원래의 산란과 알고리즘(D2)에 의한 변환 결과가 일치하고 있는 경우는, IC 카드(2)가 적정한 것으로서 인식되고, 일치하지 않는 경우는 IC 카드(2)가 부적절한 것(예를 들면, 위조된 것)으로서 인식된다.
IC 카드(2)가 적정한 것으로서 인식되면 IC 카드(2)에서 예를 들면 도 13 에 나타내는 바와 같이 하여 서비스 제공 장치(111)의 인증이 이루어진다.
즉, IC 카드(2)에서는 산란이 발생되고, 그 산란이 알고리즘(E2)에 따라 변환되어 서비스 제공 장치(111)에 송신된다.
서비스 제공 장치(111)에서는 IC 카드(2)로부터의 알고리즘(E2)에 의한 난수 의 변환 결과가 알고리즘(D2)에 따라 변환된다. 또한 그 알고리즘(D2)에 의한 변환 결과가 알고리즘(E1)에 따라 변환되어 IC 카드(2)에 송신된다.
IC 카드(2)에서는 서비스 제공 장치(111)로부터 알고리즘(E1)에 의한 변조 결과가 알고리즘(D1)에 따라 변환되고, 그 결과와 원래의 산란을 비교함으로써 서비스 제공 장치(111)의 인증이 이루어진다. 즉 난수와 알고리즘(D2)에 의한 변환 결과가 일치하는 경우는 서비스 제공 장치(111)가 적정한 것으로서 인식되고, 일치하지 않는 경우는 서비스 제공 장치(111)가 부적정한 것(예를 들면 개조된 것)으로서 인식된다.
IC 카드(2) 및 서비스 제공 장치(111) 모두 적정한 것으로서 인정된 경우, IC 카드(2)에서는 서비스 제공 장치(111)에서 송신되어 온 서비스 코드를 갖는 서비스 정의 영역에 의해 관리되고 있는 서비스 영역만으로의 액세스가 허가된다. 따라서, 도 10 및 도 11 에서 설명한 경우에 있어서는 서비스 정의 영역 #0008h에서 관리되고 있는 서비스 영역만으로 액세스가 가능해진다.
즉, 에어리어 중간 키 KA, 에어리어 코드 #0000h, 서비스 키 #0008h 및 서비스 코드 #0008h를 알고 있는 관리자 A는 서비스 정의 영역 #0008h로 관리되고 있는 서비스 영역에 액세스 할 수가 있다. 단, 관리자 A는 서비스 키 #1022h 또는 #030Ch를 모르므로, 기본적으로 서비스 정의 영역 #1022h 또는 #030Ch로 관리되고 있는 서비스 영역에 액세스할 수 는 없다.
이어서, 관리자 B2가 자신의 에어리어 정의 영역 #1000h의 계층에 작성된 서비스 정의 영역 #1022h에서 관리되는 서비스 영역을 이용하여 서비스를 제공할 때는 도 14 에 나타내는 바와 같이 서비스 정의 영역 #1022h에 기억시킨 서비스 키 #1022h를 에어리어 중간 키 KB2로 암호화하고, 서비스 중간 키 K#1022h를 생성하여 에어리어 중간 키 KB2와 함께 서비스 제공 장치(111)에 등록한다. 그리고 관리자(B2)는 자신의 에어리어 정의 영역 #1000h의 계층보다 상위 계층의 에어리어 정의 영역의 에어리어 코드 즉, 지금의 경우 관리자(A)의 에어리어 정의 영역 #1000h의 에어리어 코드 #1000h, 및 자신의 에어리어 정의 영역 #1000h의 에어리어 코드 #1000h와 그 에어리어 정의 영역 #1000h의 계층에 작성된 서비스 정의 영역 #1022h의 서비스 코드 #1022h도 서비스 제공 장치(111)에 등록한다.
이 경우, 서비스 제공 장치(111)에 IC 카드(2)가 장착되면, 서비스 제공 장치(111)와 IC 카드(2) 사이에 다음과 같이 하여 상호 인증이 이루어진다.
즉, 서비스 제공 장치(111)는 도 15 에 나타내는 바와 같이 등록되어 있는 에어리어 코드 #0000h 및 #1000h와 서비스 코드 #1022h를 IC 카드(2)에 송신한다. 3원색 신호 R, G, B(시퀀서(91))에서는 서비스 제공 장치(111)에서의 에어리어 코드 #0000h 및 #0000h 및 #1000h 및 서비스 코드 #1022h가 수신된다.
그리고, IC 카드(2)에서는 시스템 정의 블록(도 4)에 기억되어 있는 시스템이 판독됨과 동시에 서비스 제공 장치(111)에서 수신된 에어리어 코드 #0000h 또는 #1000h를 갖는 에어리어 정의 영역 각각에서 에어리어 키 #0000h 또는 #1000h가 판독된다. 또한 시스템 키가 에어리어 키 #0000h로 암호화되고, 그 결와 에어리어 중간 키 K4와 동일한 키가 생성된다. 그리고, 그 에어리어 중간 키 K4와 동일한 키가 에어리어 키 #0000h에서 암호화되고, 그 결과, 도 14 의 서비스 제공 장치(111)에 등록되어 있는 에어리어 중간 키 KB2와 동일한 키가 생성된다. 이 에어리어 중간 키 KB2와 동일한 키는 인증에 사용하는 제 1 액세스 키 Kbc가 된다.
또한, IC 카드(2)에서는 서비스 제공 장치(111)에서 수신한 서비스 코드 #1022h를 갖는 서비스 정의 영역에서 서비스 키 #1022h가 판독된다. 그리고 서비스 키 #1022h에서 에어리어 중간 키 KB2와 동일한 키가 암호화되고, 그 결과 도 14 의 서비스 제공 장치(111)에 등록되어 있는 서비스 중간키 K#1022h가 생성된다. 이 서비스 중간키 K#1022h와 동일한 키는 인증에 사용하는 제 2 액세스 키 Kac가 된다.
따라서, 지금의 경우, 서비스 제공 장치(111)에는 제 1 액세스 키 Kbc 또는 제 2 액세스 키 Kac인 에어리어 중간 키 KB2 또는 서비스 중간키 K#1022h가 등록되어 있고, IC 카드(2)에서는 제 1 액세스 키 Kbc 또는 제 2 액세스 키 Kac인 에어리어 중간 키 KB2 또는 서비스 중간키 K#1022h가 생성된다.
그리고, IC 카드(2) 및 서비스 제공 장치(111) 사이에서 도 12 및 도 13 에서 설명한 경우와 마찬가지로 하여 상호 인증이 이루어진다.
그 상호 인증의 결과, IC 카드(2) 및 서비스 제공 장치(111) 모두 적정한 것으로 인정된 경우, IC 카드(2)에서는 서비스 제공 장치(111)에서 송신되어 온 서비 스 코드를 갖는 서비스 정의 영역에 의해 관리되고 있는 서비스 영역만으로의 액세스가 허가된다. 따라서, 도 14 및 도 15 에서 설명한 경우에서는 서비스 정의 영역 #1022h에서 관리하고 있는 서비스 영역만으로의 액세스가 가능해진다.
즉, 에어리어 중간 키 KB2, 에어리어 코드 #0000h, #1000h, 서비스 키 #1022h, 및 서비스 코드 #1022h를 알고 있는 관리자 B2는 서비스 정의 영역 #1022h레서 관리되고 있는 서비스 영역에 액세스할 수가 있다. 단, 관리자 B2는 서비스 키 #0008h 또는 #030Ch를 모르므로, 기본적으로 서비스 정의 영역 #0008h 또는 #030Ch로 관리되고 있는 서비스 영역에 액세스할 수가 없다.
다음에, 관리자 C가 자신의 에어리어 정의 영역 #0300h의 계층에 작성된 서비스 정의 영역 #030Ch에서 관리되는 서비스 영역을 이용하여 서비스를 제공할 때는 도 16 에 나타낸 바와 같이, 서비스 정의 영역 #030Ch에 기억시킨 서비스 키 #030Ch를 에어리어 중간 키 KC로 암호화하고, 서비스 중간키 K#030Ch를 생성하여 에어리어 중간키 KC와 함께 서비스 제공 장치(111)에 등록한다. 그리고 관리자 C는 자신의 에어리어 정의 영역 #0300h의 계층보다 상위의 에어리어 정의 영역의 에어리어 코드, 즉 지금의 경우, 관리자 A의 에어리어 정의 영역 #0000h의 에어리어 코드 #0000h 및 관리자 B1의 에어리어 정의 영역 #0100h의 에어리어 코드 0100h, 및 자신의 에어리어 정의 영역 #0300h의 에어리어 코드 #0300h와 그 에어리어 정의 영역 #0300h의 계층에 작성된 서비스 정의 영역 #030Ch의 서비스 코드 #030Ch도 서비스 제공 장치(111)에 등록한다.
이 경우, 서비스 제공 장치(111)에 IC 카드(2)가 장착되면 서비스 제공 장치(111)와 IC 카드(2) 사이에서 다음과 같이 하여 상호 인증이 이루어진다.
즉, 서비스 제공 장치(111)는 도 17 에 나타내는 바와 같이, 등록되어 있는 에어리어 코드 #0000h, #0100h, 및 #0300h와 서비스 코드 #0300Ch를 IC 카드(2)에 송신한다. IC 카드(2)(시퀀서(91))에서는 서비스 제공 장치(111)에서의 에어리어 코드 #0000h, #0100h, 및 #0300h, 그리고 서비스 코드 #0300Ch가 수신된다.
그리고, IC 카드(2)에서는 시스템 정의 블록(도 4)에 기억되어 있는 시스템 키가 판독됨과 동시에 서비스 제공 장치(111)에서 수신한 에어리어 코드 #0000h, #0100h, 또는 #0300h를 갖는 에어리어 정의 영역 각각에서 에어리어 키 #0000h, #0100h, 또는 #0300h가 판독된다. 또한 시스템 키가 에어리어 키 #0000h로 암호화되고, 그 결과 에어리어 중간 키 KA와 동일한 키가 생성된다. 또한, 그 에어리어 중간 키 KA와 동일한 키가 에어리어 키 #0100h로 암호화되고, 그 결과 에어리어 중간 키 KB1과 동일한 키가 생성된다. 그런 식으로 그 에어리어 주안 키 KB1과 동일한 키가 에어리어 키 #0300h로 암호화되고 그 결과 도 16의 서비스 제공 장치(111)에 등록되어 있는 에어리어 중간키 KC와 동일한 키가 생성된다. 이 에어리어 중간키 KC와 동일한 키는 인증에 사용하는 제 1 액세스 키 Kbc가 된다.
또, IC 카드(2)에서는 서비스 제공 장치(111)에서 수신한 서비스 코드 # 030Ch를 갖는 서비스 정의 영역에서 서비스 키 #030Ch가 판독된다. 그리고, 그 서비스 키 #030Ch에서 에어리어 중간키 KC가 암호화되고, 그 결과, 도 16 의 서비스 제공 장치(111)에 등록되어 있는 서비스 중간키 K#030Ch와 동일한 키가 생성된다. 이 서비스 중간키 K#030Ch와 동일한 키는 인증에 사용하는 제 2 액세스의 Kac가 된다.
따라서, 지금의 경우, 서비스 제공 장치(111)에는 제 1 액세스 키 Kbc 또는 제 2 액세스 키 Kac인 에어리어 중간 키 KC 또는 서비스 중간키 K#030Ch가 각각 등록되어 있고, IC 카드(2)에서는 제 1 액세스 키 Kbc 또는 제 2 액세스 키 Kac인 에어리어 중간 키 KC 또는 서비스 중간키 K#030Ch가 각각 생성된다.
그리고, IC 카드(2) 및 서비스 제공 장치(111) 사이에서 도 12 및 도 13에서 설명한 경우와 마찬가지로 하여 상호 인증이 이루어진다.
그 상호 인증의 결과, IC 카드(2) 및 서비스 제공 장치(111) 모두 적정한 것으로 인정된 경우, IC 카드(2)에서는 서비스 제공 장치(111)에서 송신되어 온 서비스 코드를 갖는 서비스 정의 영역에 의해 관리되고 있는 서비스 영역만으로의 액세스가 허가된다. 따라서, 도 16 및 도 17 에서 설명한 경우에서는 서비스 정의 영역 #030Ch에서 관리하고 있는 서비스 영역만으로의 액세스가 가능해진다.
즉, 에어리어 중간 키 KC, 에어리어 코드 #0000h, #0100h, #0300h, 서비스 키 #030Ch 및 서비스 코드 #030Ch를 알고 있는 관리자 C는 서비스 정의 영역 #030Ch에서 관리되고 있는 서비스 영역에 액세스할 수가 있다. 단, 관리자 C는 서비스 키 #0008h 또는 #1022Ch를 모르므로, 기본적으로 서비스 정의 영역 #0008h 또는 #1022Ch로 관리되고 있는 서비스 영역에 액세스할 수는 없다.
이상과 같이 상위의 계층의 에어리어 키를 몰라도 관리자는 자신의 서비스 영역에 액세스할 수가 있다.
그런데, 상술한 바와 같이 각 관리자는 서비스 키를 모르는 서비스 정의 영역에 의해 관리되는 서비스 영역에는 액세스할 수가 없지만, 예를 들면 관리자 C가 자신의 서비스 정의 영역 #030Ch에 의해 관리되는 서비스 영역을 이용한 서비스 외에 관리자 B2의 서비스 정의 영역 #1022h에 의해 관리되는 서비스 영역을 이용한 서비스도 행하고자 하는 경우가 있다.
이 경우, 관리자 C가 서비스 정의 영역 #1022h에 의해 관리되는 서비스 영역에 액세스하기 위해서는 도 14 및 도 15 에서 설명한 바와 같이, 에어리어 중간 키 KB2, 에어리어 코드 #0000h, #1000h, 서비스 키 #1022h 및 서비스 코드 #1022h를 알 필요가 있고, 따라서, 단순하게는 이러한 정보를 관리자 B2에게서 배울 필요가 있다.
그러나, 관리자 B2가 알고 있는 서비스 키 #1022h는 그 모체안 관리자 A도 알고 있을 수 있는 것이고, 이와 같은 관리자 B2밖에 알 수 없는 서비스 키 #1022h를 관리자 C에게 가르쳐 버리는 것은 시큐리티의 관점에서 바람직하지 않다.
또한, 이 경우, 시큐리티 문제를 무시하고도 관리자 C가 서비스 정의 영역 #030Ch 또는 #1022h에 의해 각각 관리되는 두 개의 서비스 영역의 양쪽에 액세스 하기 위해서는 IC 카드(2)에서 도 15 에서 설명한 처리를 행함으로써 제 1 액세스 키 Kbc 및 제2 액세스 키 Kac를 생성하고, 서비스 정의 영역 #030Ch에 의해 관리되는 서비스 영역으로의 액세스를 위한 상호 인증을 행함과 동시에 도 17 에서 설명한 처리를 행함으로써 제 1 액세스 키 Kbc 및 제2 액세스 키 Kac를 생성하고, 서비스 정의 영역 #1022h에 의해 관리되는 서비스 영역으로의 액세스를 위한 상호 인증을 행할 필요가 있다.
따라서, 서비스 영역별로 그 서비스 영역으로의 액세스를 위한 상호 인증을 하는 경우에는 각 서비스 영역에 신속하게 액세스하기가 곤란해지고, 그 결과, 예를 들면 도 1 의 카드 시스템을 역의 개찰구에 적용한 경우에도 통근자가 개찰구에 마련되어 있는 게이트를 통과하는, 비교적 짧은 시간에 IC 카드(2)의 소정의 서비스 영역에 액세스하여 데이터를 입력하거나 또는 판독하는 것이 곤란해진다.
그래서, 예를 들면 관리자가 자신의 서비스 정의 영역 #030Ch에 의해 관리되는 서비스 영역을 이용한 서비스 외에 관리자 B2의 서비스 정의 영역 #1022h에 의해 관리되는 서비스 영역을 이용한 서비스를 행하는 경우에는 시큐리티의 문제를 해결하며, 서비스 구성으로의 신속한 액세스를 확보하기 위하여 관리자 C 및 B2 상에서 예를 들면 도 18 에 나타내는 바와 같은 정보 또는 교환을 하여 서비스 제공 장치(111)에 등록한다.
즉, 관리자 C는 도 16 에서의 경우와 마찬가지로 서비스 정의 영역 #030Ch에 기억시킨 서비스 키 #030Ch를 에어리어 중간 키 KC에서 암호화하여 서비스 중간 키 K#030Ch를 생성한다. 다시 관리자 C 는 이 서비스 중간 키 K#030Ch를 관리자 B2에게 보내고, 서비스 키 #1022h로 암호화하도록 한다. 그리고, 관리자 C는 서비스 중간 키 K#030Ch의 서비스 키 #1022Ch에서의 암호화 효과인 서비스 중간 키 K#1022h를 서비스 코드 #1022h와 함께 수취한다.
따라서, 관리자 C와 B2 사이에서 주고받는 키는 서비스 중간 키 K#030Ch 및 K#1022h 뿐이며, 관리자 C밖에 알 수 없는 서비스 키 #030Ch가 관리자 B2에게 알려지거나, 관리자 B2밖에 알 수 없는 서비스 키 #1022h가 관리자 C에게 알려지는 일은 없다. 즉 시큐리티상의 문제는 없다.
관리자 B2로부터 서비스 중간 키 K#1022h 및 서비스 키 #1022h를 받은 관리자 C는 그것들과 함께 지신의 에어리어 정의 영역 #0300h의 계층보다 상위 계층의 에어리어 정의 영역의 에어리어 코드, 즉 지금의 경우, 관리자 A의 에어리어 정의 영역 #0000h의 에어리어 코드 #0000h 및 관리자 B1의 에어리어 정의 영역 #0100h의 에어리어 코드 0100h, 및 자신의 에어리어 정의 영역 #0300h의 에어리어 코드 #0300h를 서비스 제공 장치(111)에 등록한다. 관리자 C는 에어리어 중간키 KC, 및 에어리어 정의 영역 #0300h의 계층에 작성된 서비스 정의 영역 #030Ch의 서비스 코드 #030Ch도 서비스 제공 장치(111)에 등록한다.
이 경우, 서비스 제공 장치(111)에 IC 카드(2)가 장착되면, 서비스 제공 장치(111)와 IC 카드(2) 사이에서 다음과 같이 하여 상호 인증이 이루어진다.
즉, 서비스 제공 장치(111)는 도 19 에 나타내는 바와 같이 등록되어 있는 에어리어 코드 #0000h, #0100h, 및 #0300h와 서비스 코드 #0300Ch 및 #1022h를 IC 카드(2)에 송신한다. IC 카드(2)(시퀀서(91))에서는 서비스 제공 장치(111)에서의 에어리어 코드 #0000h, #0100h, 및 #0300h, 그리고 서비스 코드 #0300Ch 및 #1022h가 수신된다.
그리고, IC 카드(2)에서는 시스템 정의 블록(도 4)에 기억되어 있는 시스템 키가 판독됨과 동시에 서비스 제공 장치(111)에서 수신한 에어리어 코드 #0000h, #0100h, 또는 #0300h를 갖는 에어리어 정의 영역 각각에서 에어리어 키 #0000h, #0100h, 또는 #0300h가 판독되고, 도 17 에서 설명한 경우와 마찬가지로 하여 도 18 의 서비스 제공 장치(111)에 등록되어 있는 에어리어 중간 키 KC와 동일한 키가 생성된다. 또, 그 에어리어 중간 키 KC와 동일한 키는 인증에 사용하는 제 1 액세스 키 Kbc가 된다.
또한, IC 카드(2)에서는 서비스 제공 장치(111)에서 수신한 서비스 코드 #030Ch 또는 #1022h를 갖는 서비스 정의 영역 각각에서 서비스 키 #030Ch 또는 #1022h가 판독된다. 그리고, 우선 서비스 키 #030Ch에서 에어리어 중간키 KC가 암호화되고, 그 결과, 서비스 중간키 K#030Ch와 동일한 키가 생성된다. 또한 그 서비스 중간키 K#030Ch와 동일한 키가 서비스 키 #1022h에서 암호화되어 도 18 의 서비스 제공 장치(111)에 등록되어 있는 서비스 중간키 K#1022h와 동일한 키가 생성된다. 이 서비스 중간 키 K#1022h와 동일한 키는 인증에 사용하는 제 2 액세스 키 Kac가 된다.
따라서, 지금의 경우, 서비스 제공 장치(111)에는 제 1 액세스 키 Kbc 또는 제 2 액세스 키 Kac인 에어리어 중간 키 KC 또는 서비스 중간키 K#1022h가 각각 등록되어 있고, IC 카드(2)에서는 제 1 액세스 키 Kbc 또는 제 2 액세스 키 Kac인 에어리어 중간 키 KC 또는 서비스 중간키 K#1022h가 각각 생성된다.
그리고, IC 카드(2) 및 서비스 제공 장치(111) 사이에서 도 12 및 도 13 에서 설명한 경우와 마찬가지로 하여 상호 인증이 이루어진다.
그 상호 인증의 결과, IC 카드(2) 및 서비스 제공 장치(111) 모두 적정한 것으로 인정된 경우, IC 카드(2)에서는 서비스 제공 장치(111)에서 송신되어 온 서비스 코드를 갖는 서비스 정의 영역에 의해 관리되고 있는 서비스 영역만으로의 액세스가 허가된다. 따라서, 도 18 및 도 19 에서 설명한 경우에서는 서비스 정의 영역 #030Ch에서 관리하고 있는 서비스 영역 및 서비스 정의 영역 #111Ch로 관리되고 있는 서비스 지역으로의 액세스가 가능해진다.
이상과 같이, 시스템 키를 2 이상의 에어리어 키 또는 서비스 키로 암호화함으로써 그 2 이상의 에어리어 키 또는 서비스 키를 2 개의 제 1 액세스 키 Kbc 및 제 2 액세스 키 Kac에 축퇴(합성)하고, 그 제 1 액세스 키 Kbc 및 제 2 액세스 키 Kac를 이용하여 서비스 제공 장치(111)에서 송신되어 온 서비스 코드를 갖는 서비스 정의 영역에 의해 관리되고 있는 서비스 영역으로의 액세스를 허가하기 위한 상호 인증을 하도록 한 것으로, 복수의 서비스 정의 영역으로의 액세스를 대상으로 하는 경우에도 단시간에 상호 인증을 종료할 수가 있으며, 이에 의해 서비스 영역으로의 신속한 액세스를 확보할 수가 있다.
또한 도 12 및 도 13 에서 설명한 경우에도 상호 인증 처리를 제 1 액세스 키 Kbc 및 제 2 액세스 키 Kac의 두 가지 키를 사용하여 행하도록 하였으나, 예를 들면 제 2 액세스 키 Kac만을 이용하여 행하도록 하는 것도 가능하다. 이 경우, IC 카드(2)에서는 시스템 키를 2 이상의 에어리어 키 또는 서비스 키로 암호화함으로써 그 2 이상의 에어리어 키 또는 서비스 키가 하나의 제 2 액세스 키 Kac에 축퇴되게 된다.
또, 상호 인증에는 도 20 에 나타내는 바와 같이, 제 1 액세스 키 Kbc 및 제 2 액세스 키 Kac를 IC 카드(2)에 고유의 값인, 예를 들면 제조 ID 블록에 기억된 제조 ID 등으로 암호화한 암호화 결과를 사용하는 것도 가능하다. 여기에서 도 20 에서는 제 1 액세스 키 Kbc에 대해서는 제조 ID와의 EXOR을 취할 수 있는 것으로, 암호화가 이루어지고 있고, 제 2 액세스 키 Kac에 대해서는 DES 방식에 의한 암호화가 이루어지고 있다. 또한 제 2 액세스 키 Kac에 대해서는 제 1 액세스 키 Kbc와 제조 ID와의 EXOR 결과를 키로 하여 DES 방식에 의한 암호화를 행하는 것도 가능하다.
이와 같이 제 1 액세스 키 Kbc 및 제 2 액세스 키 Kac를 암호화한 암호화 결과를 상호 인증에 사용하는 경우에는 시큐리티를 보다 향상시키는 것이 가능해진다. 또한 이 경우, 서비스 제공 장치(111)에서 제조 ID가 필요해지는데, 이것은 IC 카드(2)에서 송신하도록 하면 좋다.
이어서, EEPROM(66)의 기억 영역이 에어리어 정의 영역을 계층으로 하는 계층 구조를 이루고 있으며, 또한 각 에어리어 정의 영역 및 서비스 정의 영역이 인증을 위한 에어리어 키 및 서비스 키를 기억하도록 되어 있는 결과, 예를 들면 다음과 같은 플랙시빌리티가 있는 액세스 제어를 행할 수가 있다.
즉, 예를 들면 어느 관리자를 모체의 관리자로 하고, 그 리소스를 나누어 부여한 자의 관리자가 부정한 서비스 등을 하고 있고, 그 서비스의 제공을 정지시키고자 할 경우에는 모체의 관리자가 그 에어리어 정의 영역에 기억된 에어리어 키를 변경함으로써 자의 관리자가 된다. IC 카드(2)로의 액세스를 금지할 수가 있다.
구체적으로는, 예를 들면 도 5 에서 관리자 B1이 관리자 C에 의한 서비스의 제공을 정지시켰을 경우, IC 카드(2)의 에어리어 정의 영역 #0100h에 기억된 에어리어 키 #0100h를 변경한다. 이 경우 도 17 에서 IC 카드(2)에서 생성되는 에어리어 중간 키 KB1, 나아가 에어리어 중간 키 KC밖에 모르는 관리자 C는 서비스 정의 영역 #030Ch에 액세스할 수는 없게 된다.
또한, 관리자 C의 모체의 관리자인 관리자 B1, 또한 모체의 관리자인 관리자 A가 그 에어리어 정의 영역 #0000h에 기억된 에어리어 키 #0000h를 변경함으로써 도 서비스 정의 영역 #030Ch로의 액세스를 금지하는 것이 가능하다. 단, 이 경우는 관리자 A의 자 관리자 B2가 자신의 서비스 정의 영역 #1022h에 의해 관리되는 서비스 영역에 액세스할 수도 없게 된다. 즉 어느 관리자가 그 에어리어 키를 변경했을 경우에는 그 에어리어 정의 영역의 계층 중에 있는 계층(자계층, 손의 계층…)의 에어리어 정의 영역이 관리하고 잇는 서비스 정의 영역으로의 액세스는 할 수 없게 된다.
또, 도 18 및 도 19 에는 관리자 C가 관리자 B2의 서비스 정의 영역 #1022h(에 의해 관리되는 서비스 영역)를 관리자 B2와 공유하는 경우에 대하여 설명했는데, 키의 관리에 따라서는 관리자끼리의 사이에서 보다 복잡한 관계의 서비스 정의 영역의 공유가 가능해진다.
구체적으로는 지금 EEPROM(66)에서 도 21 에 나타내는 바와 같은 계층 구조가 구성되어 있다고 하자. 즉, 도 21 에서는 IC 카드(2)의 발행자이기도 한 관리자 A의 에어리어 정의 영역 #0000h의 계층의 자계층으로서 관리자 E의 에어리어 정의 영역 #5000h, 및 관리자 G의 에어리어 정의 영역 #7000h가 작성되어 있다. 또한, 관리자 E의 에어리어 정의 영역 #5000h의 계층에는 서비스 정의 영역 #5008h, #5048h, #5088h, 및 #50C8h가 작성되어 있음과 동시에 관리자 F의 에어리어 정의 영역 #6000h가 작성되어 있다.
또한, 관리자 F의 에어리어 정의 영역 #6000h의 계층에는 서비스 정의 영역 #6008h 및 #6048h가 작성되어 있으며, 관리자 G의 에어리어 정의 영역 #7000h의 계층에는 서비스 정의 영역 #7008h 및 #70C8h가 작성되어 있다.
이상과 같은 계층 구조에서, 관리자 A는 도 22(A)에 나타내는 바와 같이 시스템 키를 에어리어 키 #0000h로 암호화하고, 그 암호화 결과를 자의 관리자인 관리자 E 및 G에게 보낸다.
관리자 E는 도 22(B)에 나타내는 바와 같이, 관리자 A로부터의 시스템 키의 에어리어 키 #0000h에서의 암호화 결과를 에어리어 키 #5000h로 암호화하고, 그 암호화 결과를 제 1 액세스 키 KE1으로서 이용하기로 한다. 또한, 관리자 E는 제 1 액세스 키 KE1(에어리어 키 #5000h에 의한 암호화 결과)을 서비스 키 #5008h, #5048h, #5088h, #50C8h로 순차 암호화하고, 그 최종적인 암호화 결과를 제 2 액세스 키 KE2로서 이용하기로 한다.
또한, 관리자 F는 도 22(C)에 나타내는 바와 같이, 관리자 E에서 제 1 액세스 키 KE1(에어리어 키 #5000h에 의한 암호화 결과)을 받고, 그것을 에어리어 키 #6000에서 암호화하고, 그 암호화 결과를 제 1 액세스 키 KF1(에어리어 키 #6000h에 의한 암호화 결과)을 서비스 키 #6008h, #6048h로 순차 암호화한다. 그리고, 그 암호화 결과를 관리자 E에게 보내고, 서비스 키 #5048h, #5088h로 순차 암호화한다. 그 후 관리자 F는 그 암호화 결과를 관리자 E에게서 받아 관리자 G에게 보내고, 서비스 키 #70C8h에서 암호화한다. 그리고 관리자 F 는 그 암호화 결과를 관리자 G에게서 받아 제 2 액세스 키 KF2로서 이용하기로 한다.
한편, 관리자 G 는 도 22(D)에 나타내는 바와 같이, 관리자 A에게서 시스템 키의 에어리어 키 #0000h에서의 암호화 결과를 에어리어 키 #7000h로 암호화하고, 그 암호화 결과를 제 1 액세스 키 KG1으로서 사용하기로 한다. 또한, 관리자 G는 제1 액세스 키 KG1(에어리어 키 #7000h에 의한 암호화 결과)을 서비스 키 #7008h, #70C8h로 수차 암호화하고, 그 최종적인 암호화 결과를 관리자 F에게 보내 서비스 키 #6048h에서 암호화하도록 한다. 그 결과, 관리자 G는 관리자 F에 의한 서비스 키 #6048을 사용한 암호화 결과를 관리자 E에게 보내고, 서비스 키 #5088h, #50C8h로 순차 암호화하도록 한다. 그리고 관리자 G는 그 암호화 결과를 관리자 E에게서 받아 제 2 액세스 키 KG2로 이용하기로 한다.
이 경우, IC 카드(2)에서, 도 22 에서 설명한 경우와 같은 순서로 EEPROM(66)에 기억되어 있는 에어리어 키, 서비스 키를 사용하여 시스템 키를 암호화하고, 제 1 액세스 키 및 제 2 액세스 키를 생성함으로써 관리자, E, F, G 상호의 사이에서는 도 23 에 나타내는 바와 같은 서비스 정의 영역의 공유가 가능해진다.
즉, 관리자 E는 자신의 서비스 정의 영역 #5008, #5048h, #5088h, #50C8h에만 액세스할 수가 있다. 관리자 F는 자신의 서비스 정의 영역 #6008, #6048h, 에 액세스할 수 있는 외에, 관리자 E의 서비스 정의 영역 #5048, #5048h, 및 관리자 G의 서비스 정의 영역 #70C8h에 액세스하는 것이 가능해진다. 관리자 G는, 자신의 서비스 정의 영역 #7008h, #70C8h에 액세스하는 것 이외에 관리자 E의 서비스 정의 영역 #5088, #50C8h, 및 관리자 F의 서비스 정의 영역 #6048h에 액세스하는 것이 가능해진다.
또한, 도 22 에 나타낸 바와 같은 키의 주고받음에 있어서, 어떤 관리자의 서비스 키 자체가 다른 관리자에게 알려지는 일은 없다. 즉, 관리자 E의 서비스 키 #5008h, #5048h, #5088h, #50C8h는 모체의 관리자 A는 물론 관리자 F 및 관리자 G에게도 알려지는 일은 없다. 마찬가지로, 관리자 F의 서비스 정의 영역 #6008h, #6048h는 관리자 E 및 G에 알려지는 일은 없으며, 관리자 G의 서비스 키 #7008h, #70C8h는 관리자 E 및 F에게 알려지는 일은 없다.
이상 상술한 바와 같이, 어느 관리자가 그 에어리어 키를 변경한 경우에도 그 에어리어 정의 영역의 층간의 가운데 있는 계층의 에어리어 정의 영역이 관리하고 있는 서비스 정의 영역 모두의 액세스는 없어지게 되지만, 즉, 모체의 관리자가 에어리어 키를 변경했을 경우에는 그 자의 관리자는 IC 카드(2)에 대한 액세스를 할 수 없게 되는데, 키 관리의 방법에 따라서는 특정한 자의 관리자만의 액세스를 금지하는 것이 가능해진다.
구체적으로는, 지금 EEPROM(66)에서 도 24 에 나타내는 바와 같은 계층 구조가 구성되어 있다고 하자. 즉, 도 24 에서는 IC 카드(2)의 발행자이기도 한 관리자 A의 에어리어 정의 영역 #0000h의 계층의 자계층으로서 관리자 H의 에어리어 정의 영역 #8000h, 관리자 I 의 에어리어 정의 영역 #9000h, 및 관리자 J의 에어리어 정의 영역 #A000h가 작성되어 있다. 또한, 관리자 H의 에어리어 정의 영역 #8000h의 계층에는 서비스 정의 영역 #8008h, #8104h, 및 #8105h가 작성되어 있다.
이상과 같은 계층 구조에서, 관리자 A는 도 25(A) 에 나타내는 바와 같이 시스템 키를 에어리어 키 #0000h로 암호화하고, 그 암호화 결과를 자의 관리자인 관리자 I 및 J에게 보낸다.
관리자 I 는 도 25(C) 에 나타내는 바와 같이, 관리자 A로부터의 시스템 키의 에어리어 키 #0000h에서의 암호화 결과를 에어리어 키 #900h로 암호화하고, 그 암호화 결과를 제 1 액세스 키 KI1로서 이용하기로 한다. 또한, 관리자 I 는 제 1 액세스 키 KI1(에어리어 키 #9000h에 의한 암호화 결과)을 관리자 H에게 건네고, 도 25(B) 에 나타내는 바와 같이, 서비스 키 #8008h, #8104h로 순차 암호화한다. 그리고 관리자 I 는 그 암호화 결과를 도 25(C)에 나타내는 바와 같이 제 2 액세스 키 KI2로서 사용하기로 한다.
또한, 관리자 J는 도 25(D)에 나타내는 바와 같이, 관리자 A에게서 시스템 키의 에어리어 #0000h에서의 암호화 결과를 에어리어 키 #A000h로 암호화하고, 그 암호화 결과를 제 1 액세스 키 KJ1로서 사용하기로 한다. 또한, 관리자 J는 제 1 액세스 키 KJ1(에어리어 키 #A000h에 의한 암호화 결과)을 관리자 H에게 보내고, 도 25(B)에 나타내는 바와 같이 서비스 키 #8008h, #8105h로 순차 암호화하도록 한다. 그리고 관리자 J는 그 암호화 결과를 도 25(D)에 나타내는 바와 같이 제 2 액세스 키 KJ2로서 이용하기로 한다.
이 경우, IC 카드(2)에서, 도 25 에서 설명한 경우와 같은 순서로 EEPROM(66)에 기억되어 있는 에어리어 키, 서비스 키를 사용하여 시스템 키를 암호화하고, 제 1 액세스 키 및 제 2 액세스 키를 생성함으로써 관리자 I는 관리자 H의 서비스 정의 영역 #8008h 및 #8104h에 액세스하는 것이 관리자 J는 관리자 H의 서비스 정의 영역 #8007h 및 #8105에 액세스하는 것이 각각 가능해진다.
한편, 관리자 H는 서비스 정의 영역 #8008을, 관리자 I 및 J 사이에서 데이터를 공유하는 것으로서 작성해 두고, 서비스 정의 영역 #8104h 또는 #8105h를 관리자 I 또는 J 각각에 의한 서비스 정의 영역 #8008h로의 액세스를 제한하기 위한 이른바 더미 서비스 정의 영역으로서 작성해 둔다. 따라서, 서비스 정의 영역 #8104h 및 #8105h에서 관리되는 서비스 영역은 필요 없으며, 그 용량은 0블록이어도 좋다.
이 경우에 있어서, 관리자 H가 예를 들면 서비스 키 #8104h를 변경하면 IC 카드(2)에서 그 서비스 키 #8104h를 사용하여 제 2 액세스 키 KI2가 생성되어 인증이 이루어지는 관리자 I는 서비스 정의 영역 #8008h에 액세스할 수 없게 된다. 즉 관리자 I에 의한 서비스 정의 영역 #8008h로의 액세스만이 금지된다. 한편, 관리자 H가 예를 들면 서비스 키 #8105h를 변경하면, IC 카드(2)에서 그 서비스 키 #8105h를 사용하여 제1 액세스 키 KJ2가 생성되어 인증이 이루어지는 관리자 J는 서비스 정의 영역 #8008h에 액세스할 수 없게 된다. 즉, 관리자 J에 의한 서비스 정의 영역 #8008h로의 액세스만이 금지된다.
이상과 같이, 더미 서비스 정의 영역을 이용함으로써 특정한 자의 관리자만 의 액세스를 금지할 수가 있다.
이상, 본 발명을 비접촉으로 통신이 이루어지는 비접촉 카드 시스템에 적용한 경우에 대하여 설명했지만, 본 발명은 접촉한 상태로 통신이 이루어지는 카드 시스템에도 적용 가능하다. 또한, 본 발명의 적용 범위는 카드 시스템으로 한정되는 것은 아니다.
또한, 본 실시 형태에서는 인증을 이른바 비밀 키 방식으로 행하도록 하였으나, 인증은 이른바 공개 키 방식으로 행하도록 하는 것도 가능하다.
또한, 본 실시 형태에서는 어느 에어리어 정의 영역의 계층의 서비스 정의 영역에 액세스할 때에 그 에어리어 정의 영역의 계층에도 최상위까지의 버스 상에 있는 에어리어 정의 영역의 에어리어 키를 순차 이용하고, 제 1 액세스 키를 생성하도록 하였으나, 제 1 액세스 키의 생성 방법은 이에 한정되는 것은 아니다. 또한, 본 실시 형태에서는 액세스 대상의 서비스 정의 영역의 서비스 키를 순차 이용하고, 제 2 액세스 키를 생성하도록 하였으나, 제 2 액세스 키의 생성 방법도 이에 한정되는 것은 아니다. 즉, 제 1 액세스 키 및 제 2 액세스 키는 임의의 2 이상의 에어리어 키 또는 서비스 키를 순차 사용하여 생성하는 것이 가능하다.
또한 본 실시 형태에서는 사용자 블록 및 시스템 블록 중의 어느 것도 1의 메모리인 EEPROM(66)에 기억시키도록 하였으나, 사용자 블록과 시스템 블록은 물리적으로 따로따로 기억시키도록 하는 것이 가능하다.
또한, 본 실시 형태에서는 데이터를 EEPROM(66)에 기억시키도록 하였으나, 본 발명은 EEPROM 이외의 반도체 메모리 또는 자기 디스크 등을 대상으로 하는 것 도 가능하다.
청구항 1에 기재한 데이터 기록 장치 및 청구항 18에 기재한 데이터 기록 방법에 의하면 관리 대상의 기억 영역에 할당 가능한 기억 영역을 식별하기 위한 기억 영역 식별 코드의 범위 및 관리 대상의 기억 영역의 비어있는 용량을 기억하는 에어리어 정의 영역을 가진 기억 수단의 에어리어 정의 영역의 기억 내용에 기초하여 기억 수단이 관리된다. 따라서, 기억 수단의 리소스 관리를 행하는 것이 가능해진다.
청구항 19에 기재한 데이터 기억장치 및 청구항 29에 기재한 데이터 기억 방법에 의하면, 데이터 기억 수단의 기억 영역이 각층 구조로 되어 관리되어 있으며, 데이터 기억 수단의 기억 영역의 각 계층에 대한 계층 키, 또는 데이터가 기억된 기억 영역에 대한 데이터 기억 영역 키를 2 이상 사용하고, 인증에 사용하는 1 이상의 인증 키가 생성되고, 그 인증 키에 기초하여 인증이 이루어진다. 따라서, 데이터 기억 수단에 대한 플랙시블하고 시큐리티가 높은 액세스 제어를 하는 것이 가능해진다.

Claims (18)

  1. 소정의 서비스를 제공하기 위한 데이터를 기억하는 데이터 기억 장치에 있어서,
    복수의 시스템 블록들 및 복수의 사용자 블록들로 구성된 데이터 기억 수단으로서, 상기 복수의 시스템과 사용자 블록들 간의 경계는 가변하며, 하나 이상의 상기 시스템 블록들은, 상기 서비스를 제공하기 위한 데이터를 저장하기 위해 하나 이상의 사용자 블록들로 구성된 에어리어 정의 영역 또는 연관된 서비스 정의 영역, 서비스 영역의 데이터를 기억하고,
    상기 에어리어 정의 영역 각각은,
    a) 관리 대상의 기억 영역에 할당되고 상기 기억 영역을 식별하기 위해 사용될 수 있는 기억 영역 정의 코드들(storage area defining codes)의 범위,
    b) 상기 관리 대상의 기억 영역의 비어있는 용량(empty capacity), 및
    c) 상기 에어리어 정의 영역의 인증을 위해 사용되는 에어리어 키를 기억하고,
    상기 서비스 정의 영역 각각은, 관리 대상의 대응하는 서비스 영역의 비어있는 용량 및 상기 서비스 정의 영역의 인증을 위한 에어리어 키를 저장하는,
    상기 데이터 기억 수단; 및
    상기 에어리어 정의 영역과 상기 서비스 정의 영역의 내용에 기초하여 상기 데이터 기억 수단의 기억 영역을 관리하는 관리 수단을 포함하고,
    상기 기억 영역은 에어리어 정의 영역 및 그와 연관된 서비스 정의 영역이 계층으로 설정되는 계층 구조이며,
    상기 서비스 영역 각각은 그에 대응하는 서비스 정의 영역에 의해 관리되고, 상기 에어리어 정의 영역을 계층 구조로 설정하면서, 상기 서비스 정의 영역 및 상기 에어리어 정의 영역에 기억된 그와 연관된 에어리어 정의 식별 코드에 대응하는 적어도 두 개의 에어리어 키들에 의존하여 상기 서비스 영역에 대한 액세스 키에 따라 관리가 수행되는, 데이터 기억 장치.
  2. 제 1 항에 있어서, 상기 관리 수단은 소정의 에어리어/서비스 정의 영역을 모계층으로 하고, 상기 모계층의 자(子)계층의 에어리어/서비스 정의 영역을 작성 하여, 상기 에어리어/서비스 정의 영역을 계층 구조로 하여 관리하는 것을 특징으로 하는, 데이터 기억 장치.
  3. 제 2 항에 있어서, 상기 관리 수단은, 상기 자계층의 에어리어/서비스 정의 영역에서의 상기 기억 영역 식별 코드의 범위가 상기 모계층의 에어리어/서비스 정의 영역의 상기 기억 영역 식별 코드의 범위 내에 있을 때 상기 자계층의 에어리어/서비스 정의 영역을 작성하는 것을 특징으로 하는, 데이터 기억 장치.
  4. 제 1 항에 있어서, 상기 관리 수단은, 상기 자계층 에어리어/서비스 정의 영역에 할당된 상기 기억 영역의 용량이 상기 모계층의 에어리어/서비스 정의 영역에서의 상기 비어있는 용량의 범위 내에 있을 때 상기 자계층의 에어리어/서비스 정의 영역을 작성하는 것을 특징으로 하는, 데이터 기억 장치.
  5. 제 1 항에 있어서, 상기 기억 수단은, 상기 서비스 영역을 식별하기 위한 서비스 영역 식별 코드를 기억하고 상기 서비스 영역을 관리하는 서비스 정의 영역을 더 포함하는 것을 특징으로 하는, 데이터 기억 장치.
  6. 제 5 항에 있어서, 상기 관리 수단은 소정의 에어리어 정의 영역을 하나의 계층으로서, 그 계층에 속하는 상기 서비스 정의 영역을 작성하는 것을 특징으로 하는, 데이터 기억 장치.
  7. 제 6 항에 있어서, 상기 관리 수단은, 상기 서비스 정의 영역에서의 상기 서비스 영역 식별 코드가 상기 에어리어/서비스 정의 영역의 상기 기억 영역 식별 코드의 범위 내에 있을 때 상기 서비스 정의 영역을 작성하는 것을 특징으로 하는, 데이터 기억 장치.
  8. 제 5 항에 있어서, 상기 서비스 정의 영역은 상기 서비스 영역의 용량도 기억하는 것을 특징으로 하는, 데이터 기억 장치.
  9. 제 8 항에 있어서, 상기 관리 수단은, 상기 서비스 정의 영역에 할당된 상기 기억 영역의 용량이 상기 에어리어/서비스 정의 영역에서의 상기 비어있는 용량의 범위 내에 있을 때 상기 서비스 영역을 작성하는 것을 특징으로 하는, 데이터 기억 장치.
  10. 제 1 항에 있어서, 상기 기억 수단은 상기 소정의 서비스에 대응하는 데이터를 기억하는 서비스 영역과, 상기 서비스 영역을 식별하기 위한 서비스 영역 식별 코드를 기억하는 서비스 정의 영역을 더 포함하며,
    상기 서비스 정의 영역은 어떤 계층(some layer)의 에어리어/서비스 정의 영역에 속하는 것을 특징으로 하는, 데이터 기억 장치.
  11. 제 5 항에 있어서, 상기 서비스 정의 영역은 소정 키도 기억하고 있고,
    상기 관리 수단은 상기 키를 사용하는 인증도 행하는 것을 특징으로 하는, 데이터 기억 장치.
  12. 제 11 항에 있어서, 상기 관리 수단은 2 이상의 상기 에어리어/서비스 정의 영역 또는 서비스 정의 영역에 기억된 키들을 1 이상의 키들에 축퇴(縮退)하여 축퇴 키를 생성하고, 상기 하나 이상의 축퇴 키들을 사용하여 인증을 수행하는 것을 특징으로 하는, 데이터 기억 장치.
  13. 제 1 항에 있어서, 상기 관리 수단은, 상기 에어리어/서비스 정의 영역에 기억된 기억 영역 식별 코드의 범위에 기초하여 상기 에어리어/서비스 정의 영역을 계층 구조로 하여 관리하는 것을 특징으로 하는, 데이터 기억 장치.
  14. 제 1 항에 있어서, 상기 기억 수단은 불휘발성인 것을 특징으로 하는, 데이터 기억 장치.
  15. 제 1 항에 있어서, 외부 기기와의 사이에서 통신을 하는 통신 수단을 더 구비하고, 상기 관리 수단은 상기 외부 기기로부터의 지령에 대응하여 상기 기억 수단을 관리하는 것을 특징으로 하는, 데이터 기억 장치.
  16. 제 15 항에 있어서, 상기 통신 수단은 상기 외부 기기와 접촉하거나 또는 비접촉으로 통신을 하는 것을 특징으로 하는, 데이터 기억 장치.
  17. 데이터 기억 장치를 이용하여 소정의 서비스를 제공하기 위한 데이터를 기억하는 데이터 기억 방법에 있어서, 상기 데이터 기억 장치는,
    복수의 시스템 블록들 및 복수의 사용자 블록들로 구성된 데이터 기억 수단으로서, 상기 복수의 시스템과 사용자 블록들 간의 경계는 가변하며, 하나 이상의 상기 시스템 블록들은, 상기 서비스를 제공하기 위한 데이터를 저장하기 위해 하나 이상의 사용자 블록들로 구성된 에어리어 정의 영역 또는 연관된 서비스 정의 영역, 서비스 영역의 데이터를 기억하는, 상기 데이터 기억 수단을 포함하고,
    상기 에어리어 정의 영역 각각은,
    a) 관리 대상의 기억 영역에 할당되고 상기 기억 영역을 식별하기 위해 사용될 수 있는 기억 영역 정의 코드들의 범위,
    b) 상기 관리 대상의 기억 영역의 비어있는 용량, 및
    c) 상기 에어리어 정의 영역의 인증을 위해 사용되는 에어리어 키를 기억하고,
    상기 서비스 정의 영역 각각은, 관리 대상의 대응하는 서비스 영역의 비어있는 용량 및 상기 서비스 정의 영역의 인증을 위한 에어리어 키를 기억하고,
    상기 방법은,
    상기 에어리어 정의 영역 및 상기 서비스 정의 영역의 내용에 기초하여 상기 데이터 기억 수단의 기억 영역을 관리하고, 에어리어 정의 영역 및 그와 연관된 서비스 정의 영역이 계층으로 설정되는 계층 구조로 상기 데이터 기억 영역을 설계하는 단계를 포함하고,
    상기 서비스 영역은 그에 대응하는 서비스 정의 영역에 의해 관리되고, 상기 서비스 정의 영역 및 그와 연관된 에어리어 정의 영역에 대응하는 적어도 두 개의 에어리어 키들에 의존하여 상기 서비스 영역에 대한 액세스 키에 따라 관리가 수행되는, 데이터 기억 방법.
  18. 제 17 항에 있어서, 상기 관리 단계는 소정의 에어리어/서비스 정의 영역을 모계층으로 하고; 상기 모계층의 자계층의 에어리어/서비스 정의 영역을 작성하여, 상기 에어리어/서비스 정의 영역을 계층 구조로 하여 관리하는 것을 특징으로 하는, 데이터 기억 방법.
KR1020060058532A 1998-07-16 2006-06-28 데이터 기억 장치 및 데이터 기억 방법 KR100760841B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP20149898A JP4051510B2 (ja) 1998-07-16 1998-07-16 データ記憶装置およびデータ記憶方法
JPJP-P-1998-00201498 1998-07-16
KR1019990028962A KR100668996B1 (ko) 1998-07-16 1999-07-16 데이터 기억 장치 및 데이터 기억 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1019990028962A Division KR100668996B1 (ko) 1998-07-16 1999-07-16 데이터 기억 장치 및 데이터 기억 방법

Publications (2)

Publication Number Publication Date
KR20060093308A KR20060093308A (ko) 2006-08-24
KR100760841B1 true KR100760841B1 (ko) 2007-09-27

Family

ID=16442060

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1019990028962A KR100668996B1 (ko) 1998-07-16 1999-07-16 데이터 기억 장치 및 데이터 기억 방법
KR1020060058532A KR100760841B1 (ko) 1998-07-16 2006-06-28 데이터 기억 장치 및 데이터 기억 방법

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1019990028962A KR100668996B1 (ko) 1998-07-16 1999-07-16 데이터 기억 장치 및 데이터 기억 방법

Country Status (9)

Country Link
US (2) US6792541B1 (ko)
EP (2) EP1341134B1 (ko)
JP (1) JP4051510B2 (ko)
KR (2) KR100668996B1 (ko)
CN (2) CN1134733C (ko)
DE (2) DE69920342T2 (ko)
HK (1) HK1027638A1 (ko)
SG (1) SG95599A1 (ko)
TW (1) TW463103B (ko)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4565703B2 (ja) * 2000-05-16 2010-10-20 グローリー株式会社 データ記憶装置およびデータ記憶方法
JP4592922B2 (ja) * 2000-11-06 2010-12-08 ジェイアール東日本メカトロニクス株式会社 共通icカードアクセス方法
JP4663875B2 (ja) * 2000-12-25 2011-04-06 ソニー株式会社 情報処理装置及びデータ通信方法
JP4765174B2 (ja) * 2001-02-16 2011-09-07 ソニー株式会社 アプリケーション実行装置、通信システム、およびアプリケーション実行方法
JP2002298105A (ja) 2001-03-30 2002-10-11 Sony Corp データ記憶装置および方法、情報処理装置および方法、記録媒体、並びにプログラム
WO2003003194A1 (fr) 2001-06-27 2003-01-09 Sony Corporation Dispositif a circuit integre, dispositif de traitement de l'information, procede de gestion de memoire de support d'information, terminal mobile, dispositif a circuit integre a semi-conducteur, et procede de communication par terminal mobile
US7024532B2 (en) * 2001-08-09 2006-04-04 Matsushita Electric Industrial Co., Ltd. File management method, and memory card and terminal apparatus that make use of the method
US7065651B2 (en) * 2002-01-16 2006-06-20 Microsoft Corporation Secure video card methods and systems
FR2835628A1 (fr) * 2002-02-01 2003-08-08 Schlumberger Systems & Service Gestion de la mise a jour d'informations encodees en memoire
US20060195401A1 (en) * 2002-02-15 2006-08-31 United Parcel Service Of America, Inc. Systems for selectively enabling and disabling access to software applications over a network and methods for using same
CN1296790C (zh) * 2002-06-05 2007-01-24 富士通株式会社 存储器管理单元、代码验证装置以及代码译码装置
US7805613B2 (en) * 2002-06-14 2010-09-28 Time Warner Cable, Inc. Technique for recording entertainment programming content with limited memory capacity
US7111322B2 (en) * 2002-12-05 2006-09-19 Canon Kabushiki Kaisha Automatic generation of a new encryption key
DE10258323A1 (de) * 2002-12-13 2004-06-24 Giesecke & Devrient Gmbh Verschlüsselungsverfahren
CN100390817C (zh) * 2003-06-10 2008-05-28 大唐微电子技术有限公司 动态逻辑分区并控制访问权限的ic智能卡及其实现方法
JP2005056305A (ja) * 2003-08-07 2005-03-03 Matsushita Electric Ind Co Ltd メモリ領域に分割領域を持つ情報記憶装置
CN1856957B (zh) * 2003-08-25 2010-05-05 捷讯研究有限公司 用于保证无线数据安全的系统和方法
JP2005134953A (ja) * 2003-10-28 2005-05-26 Dainippon Printing Co Ltd 未設定icカード、icカード発行システム及びicカードアプリケーションの発行方法
JP2005196412A (ja) * 2004-01-06 2005-07-21 Sony Corp データ通信装置及びデータ通信装置のメモリ管理方法
CN1820260B (zh) * 2004-06-14 2010-09-29 索尼株式会社 信息管理设备和信息管理方法
BRPI0419000A (pt) * 2004-08-13 2007-12-11 Telecom Italia Spa método e sistema para administração segura de registros de dados armazenados em uma etiqueta eletrÈnica, e, etiqueta eletrÈnica
US7350040B2 (en) * 2005-03-03 2008-03-25 Microsoft Corporation Method and system for securing metadata to detect unauthorized access
JP2006318291A (ja) * 2005-05-13 2006-11-24 Fujitsu Ltd 無線タグ管理プログラム
JP4790308B2 (ja) * 2005-05-17 2011-10-12 フェリカネットワークス株式会社 情報処理システム,情報処理装置,情報処理方法およびコンピュータプログラム
US8881233B2 (en) * 2005-05-23 2014-11-04 Microsoft Corporation Resource management via periodic distributed time
JP4804042B2 (ja) * 2005-06-03 2011-10-26 フェリカネットワークス株式会社 データ送受信システム、非接触icチップ、非接触通信装置、携帯端末、情報処理方法、並びにプログラム
JP4804041B2 (ja) * 2005-06-03 2011-10-26 フェリカネットワークス株式会社 データ送受信システム、非接触icチップ、携帯端末、情報処理方法、並びにプログラム
DE102005027709A1 (de) * 2005-06-15 2006-12-21 Giesecke & Devrient Gmbh Verfahren zum Betreiben eines tragbaren Datenträgers
JP4670585B2 (ja) 2005-10-26 2011-04-13 ソニー株式会社 設定装置および方法、並びにプログラム
JP2007243272A (ja) * 2006-03-06 2007-09-20 Sony Corp 情報処理システム,管理プロバイダ装置,サービスプロバイダ装置,およびコンピュータプログラム
KR100710271B1 (ko) * 2006-05-10 2007-04-20 엘지전자 주식회사 외부기기와 티브이의 데이터 재생 방법 및 장치
JP2007323140A (ja) * 2006-05-30 2007-12-13 Felica Networks Inc 情報処理装置、情報処理方法及びプログラム
US8112065B2 (en) * 2007-07-26 2012-02-07 Sungkyunkwan University Foundation For Corporate Collaboration Mobile authentication through strengthened mutual authentication and handover security
DE102008000897B4 (de) * 2008-03-31 2018-05-03 Compugroup Medical Se Kommunikationsverfahren einer elektronischen Gesundheitskarte mit einem Lesegerät
BRPI0822642A2 (pt) 2008-05-26 2015-06-23 Nxp Bv Transponder, leitor, meio legível em computador, bem como elemento de programa para ocultação de e método de ocultação de aplicativos
JP4631935B2 (ja) 2008-06-06 2011-02-16 ソニー株式会社 情報処理装置、情報処理方法、プログラム及び通信システム
JP5272637B2 (ja) 2008-10-14 2013-08-28 ソニー株式会社 情報処理装置、暗号切替方法、及びプログラム
EP2270758B1 (en) * 2009-06-30 2013-11-27 Kabushiki Kaisha Toshiba Portable electronic apparatus, processing apparatus for portable electronic apparatus, and data processing method in portable electronic apparatus
CN102467645B (zh) * 2010-11-04 2014-07-09 深圳Tcl新技术有限公司 一种提高产品识别码可靠性的系统及方法
US20120159042A1 (en) * 2010-12-21 2012-06-21 Western Digital Technologies, Inc. Data storage device executing a unitary command comprising two cipher keys to access a sector spanning two encryption zones
JPWO2019026372A1 (ja) * 2017-08-04 2020-06-18 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
US11522693B2 (en) 2018-02-06 2022-12-06 Sony Corporation Information processing device and information processing method
US11921868B2 (en) 2021-10-04 2024-03-05 Bank Of America Corporation Data access control for user devices using a blockchain

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0472487A2 (en) * 1990-08-21 1992-02-26 International Business Machines Corporation Apparatus and method for controlling access to data using domains
JPH0583006A (ja) * 1991-09-24 1993-04-02 Fujitsu General Ltd 左旋及び右旋円偏波共用一次放射器
US5410598A (en) * 1986-10-14 1995-04-25 Electronic Publishing Resources, Inc. Database usage metering and protection system and method
WO1997029416A2 (en) * 1996-02-09 1997-08-14 Integrated Technologies Of America, Inc. Access control/crypto system

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0652545B2 (ja) 1985-12-26 1994-07-06 トツパン・ム−ア株式会社 デ−タ管理手段を有するicカ−ド
EP0257585B1 (en) * 1986-08-22 1992-11-25 Nec Corporation Key distribution method
US5010571A (en) * 1986-09-10 1991-04-23 Titan Linkabit Corporation Metering retrieval of encrypted data stored in customer data retrieval terminal
JPS6482292A (en) 1987-09-25 1989-03-28 Toshiba Corp Memory area definition system for portable electronic device
JPH01194093A (ja) 1988-01-29 1989-08-04 Toshiba Corp 携帯可能電子装置
JP2623332B2 (ja) * 1988-02-03 1997-06-25 日立マクセル株式会社 Icカード及びその動作プログラム書込み方法
DE68915186T2 (de) 1988-03-09 1994-08-25 Toshiba Kawasaki Kk Tragbarer elektronischer Apparat.
JP2831660B2 (ja) 1988-08-26 1998-12-02 株式会社東芝 携帯可能電子装置
US5081675A (en) * 1989-11-13 1992-01-14 Kitti Kittirutsunetorn System for protection of software in memory against unauthorized use
US5487646A (en) * 1989-11-30 1996-01-30 Ebara Corporation Vacuum pump control apparatus for an evacuating type waste water collecting system
JP2941361B2 (ja) * 1990-06-07 1999-08-25 株式会社東芝 携帯可能電子装置
US5410588A (en) * 1991-04-03 1995-04-25 Kabushiki Kaisha Toshiba Mobile radio communications system having a supervising radio transmitting station for transmitting a reference synchronizing signal to a first and second base stations via a radio link
DE4126213C2 (de) * 1991-08-08 2000-06-15 Deutsche Telekom Ag Chipkarte für mehrere Diensteanbieter
JP3013214B2 (ja) 1992-08-04 2000-02-28 富士通株式会社 薄膜磁気ヘッドの製造方法
EP0583006B2 (en) * 1992-08-13 2006-11-29 Matsushita Electric Industrial Co., Ltd. IC card with hierarchical file structure
US5341425A (en) * 1992-12-02 1994-08-23 Scientific Atlanta, Inc. Methods and apparatus for uniquely encrypting data at a plurality of data transmission sites for transmission to a reception site
JP3177047B2 (ja) 1993-01-27 2001-06-18 大日本印刷株式会社 メモリ領域の管理方法
JPH06274397A (ja) * 1993-03-24 1994-09-30 Toshiba Corp ファイル管理方式
JP3445304B2 (ja) * 1993-03-29 2003-09-08 株式会社東芝 ファイル管理装置
JPH06324932A (ja) 1993-05-10 1994-11-25 Tokyo Electric Co Ltd 情報処理装置
JP3176209B2 (ja) * 1994-02-25 2001-06-11 富士通株式会社 カード型記憶媒体およびカード型記憶媒体発行装置
US5748735A (en) * 1994-07-18 1998-05-05 Bell Atlantic Network Services, Inc. Securing E-mail communications and encrypted file storage using yaksha split private key asymmetric cryptography
KR0149985B1 (ko) * 1994-12-31 1999-05-15 김광호 휴대용 카드 및 그 이용방법
CN1316490C (zh) * 1995-10-09 2007-05-16 松下电器产业株式会社 内容重放装置及方法
US6075858A (en) * 1995-10-27 2000-06-13 Scm Microsystems (U.S.) Inc. Encryption key system and method
JPH09179951A (ja) 1995-12-22 1997-07-11 Dainippon Printing Co Ltd 携帯可能情報記憶媒体及びそのシステム
US5777177A (en) 1996-02-07 1998-07-07 Arco Chemical Technology, L.P. Preparation of double metal cyanide-catalyzed polyols by continuous addition of starter
JP3720113B2 (ja) 1996-03-19 2005-11-24 大日本印刷株式会社 携帯可能情報記憶媒体、携帯可能情報記憶媒体システム、及び携帯可能情報記憶媒体のデータアクセス方法
JPH09265254A (ja) 1996-03-28 1997-10-07 Dainippon Printing Co Ltd 情報記憶媒体の相互認証システム
EP0798674B1 (en) * 1996-03-29 2002-03-06 Kabushiki Kaisha Toshiba File managing method requiring a change in key data and ic card device using the method
JPH09293023A (ja) * 1996-04-26 1997-11-11 Toshiba Corp メモリのアクセス管理方法
KR100213188B1 (ko) * 1996-10-05 1999-08-02 윤종용 사용자 인증 장치 및 방법
FR2759795B1 (fr) * 1997-02-14 1999-05-07 Francois Charles Oberthur Fidu Procede de stockage de donnees dans une memoire reinscriptible de carte a puce
US6385723B1 (en) * 1997-05-15 2002-05-07 Mondex International Limited Key transformation unit for an IC card
GB2329499B (en) * 1997-09-19 2001-05-30 Ibm Method for controlling access to electronically provided services and system for implementing such method
JP3748155B2 (ja) * 1997-11-14 2006-02-22 富士通株式会社 改ざん防止/検出機能を有するファイル管理システム
US5982892A (en) * 1997-12-22 1999-11-09 Hicks; Christian Bielefeldt System and method for remote authorization for unlocking electronic data
US6336121B1 (en) * 1998-03-24 2002-01-01 Entrust Technologies, Ltd. Method and apparatus for securing and accessing data elements within a database
US6263435B1 (en) * 1999-07-06 2001-07-17 Matsushita Electric Industrial Co., Ltd. Dual encryption protocol for scalable secure group communication
US6289455B1 (en) * 1999-09-02 2001-09-11 Crypotography Research, Inc. Method and apparatus for preventing piracy of digital content
JP4206586B2 (ja) * 1999-11-12 2009-01-14 株式会社日立製作所 データベース管理方法および装置並びにデータベース管理プログラムを記録した記憶媒体
US6487646B1 (en) * 2000-02-29 2002-11-26 Maxtor Corporation Apparatus and method capable of restricting access to a data storage device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5410598A (en) * 1986-10-14 1995-04-25 Electronic Publishing Resources, Inc. Database usage metering and protection system and method
EP0472487A2 (en) * 1990-08-21 1992-02-26 International Business Machines Corporation Apparatus and method for controlling access to data using domains
JPH0583006A (ja) * 1991-09-24 1993-04-02 Fujitsu General Ltd 左旋及び右旋円偏波共用一次放射器
WO1997029416A2 (en) * 1996-02-09 1997-08-14 Integrated Technologies Of America, Inc. Access control/crypto system

Also Published As

Publication number Publication date
DE69920342T2 (de) 2005-10-06
KR20000011788A (ko) 2000-02-25
CN1134733C (zh) 2004-01-14
US6792541B1 (en) 2004-09-14
EP1341134A3 (en) 2005-05-04
EP1341134A2 (en) 2003-09-03
JP2000036021A (ja) 2000-02-02
TW463103B (en) 2001-11-11
CN1506856A (zh) 2004-06-23
DE69937010D1 (de) 2007-10-11
KR100668996B1 (ko) 2007-01-16
HK1027638A1 (en) 2001-01-19
EP0973136A3 (en) 2002-01-23
DE69920342D1 (de) 2004-10-28
CN100343830C (zh) 2007-10-17
EP0973136A2 (en) 2000-01-19
EP1341134B1 (en) 2007-08-29
JP4051510B2 (ja) 2008-02-27
US7613301B2 (en) 2009-11-03
CN1245925A (zh) 2000-03-01
SG95599A1 (en) 2003-04-23
DE69937010T2 (de) 2008-05-29
KR20060093308A (ko) 2006-08-24
US20040258245A1 (en) 2004-12-23
EP0973136B1 (en) 2004-09-22

Similar Documents

Publication Publication Date Title
KR100760841B1 (ko) 데이터 기억 장치 및 데이터 기억 방법
KR100627989B1 (ko) 정보 처리 시스템 및 데이터 기억 장치 및 정보 처리 장치
US7886970B2 (en) Data communicating apparatus and method for managing memory of data communicating apparatus
TWI395448B (zh) 資訊處理裝置,資訊處理方法,程式及通訊系統
US6296191B1 (en) Storing data objects in a smart card memory
US7516479B2 (en) Data communicating apparatus and method for managing memory of data communicating apparatus
JP2004310557A (ja) 情報記憶媒体及び情報記憶媒体のメモリ管理方法
US7437526B2 (en) Information processing method and apparatus having data locations accessible by different devices in accordance with different permissions
US7376973B2 (en) Data storage apparatus
JP4618259B2 (ja) データ記憶装置およびデータ記憶方法

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120910

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130906

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150904

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160909

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170908

Year of fee payment: 11

EXPY Expiration of term