KR100641241B1 - 네트워크 인터페이스 수단을 포함하는 내장 시스템 및 이에 설치된 응용프로그램을 활성화하는 방법 - Google Patents

네트워크 인터페이스 수단을 포함하는 내장 시스템 및 이에 설치된 응용프로그램을 활성화하는 방법 Download PDF

Info

Publication number
KR100641241B1
KR100641241B1 KR1020007011619A KR20007011619A KR100641241B1 KR 100641241 B1 KR100641241 B1 KR 100641241B1 KR 1020007011619 A KR1020007011619 A KR 1020007011619A KR 20007011619 A KR20007011619 A KR 20007011619A KR 100641241 B1 KR100641241 B1 KR 100641241B1
Authority
KR
South Korea
Prior art keywords
application
chip card
software
terminal
network
Prior art date
Application number
KR1020007011619A
Other languages
English (en)
Other versions
KR20010052263A (ko
Inventor
보도알랭
시게린크리스토프
우리엥빠스칼
Original Assignee
쎄뻬8 테크날러지스 에스에이
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 쎄뻬8 테크날러지스 에스에이 filed Critical 쎄뻬8 테크날러지스 에스에이
Publication of KR20010052263A publication Critical patent/KR20010052263A/ko
Application granted granted Critical
Publication of KR100641241B1 publication Critical patent/KR100641241B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/077Constructional details, e.g. mounting of circuits in the carrier
    • 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
    • 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/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0246Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34444Web control system, with intelligent control components each with web server

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은, 내장 시스템, 특히 판독기를 구비한 터미널(1)에 접속된 칩 카드(2a)에 있는 애플리케이션(Ai-An)들중 하나(Ai)를, "웹" 브라우저를 통해, 구동시키기 위한 방법에 관한 것이다. 터미널(1) 및 칩 카드(2a) 각각은, ISO 7816 표준에 해당하는 종래의 프로토콜 레이어(101-102)외에 소정의 레이어(13,23a)를 포함한다. 후자는 양방향 데이터 교환 세션을 형성하기 위한 인텔리전트 에이전트(132,231a1)를 포함하여, 칩 카드(2a)가 "웹" 서버 기능을 제공할 수 있도록 한다. 또한, 칩 카드(2a)는 애플리케이션(Ai-An)과 상호작용하는 스크립트 번역기라 불리는 인텔리전트 에이전트(ATS1-ATSn)를 포함하고, ISO 7816 표준에 해당하는 종래의 명령어를 이용하여 선택된 애플리케이션(Ai)을 구동시킬 수 있다. 실시예를 변경하면, 특히 브라우저로부터, 칩 카드(2a)를 동적으로 업데이트할 수 있다. 또한, 본 발명은 해당 내장 시스템에 관한 것이다.

Description

네트워크 인터페이스 수단을 포함하는 내장 시스템 및 이에 설치된 응용프로그램을 활성화하는 방법{ON-BOARD SYSTEM COMPRISING NETWORK INTERFACE MEANS, AND METHOD FOR ACTIVATING APPLICATIONS LOCATED IN SAID ON-BOARD SYSTEM}
본 발명은 네트워크 인터페이스 수단을 포함하는 내장 시스템과, 이에 설치된 응용프로그램을 구동시키는 방법에 관한 것이다. 특히, 본 발명에 따른 방법은 칩 카드 판독기(chip card reader)를 구비하고 인터넷에 접속된 유저 스테이션(user station)에 관한 것이다.
본 발명의 범위 내에서, "유저 스테이션"이라는 용어는 일반적인 의미에서 이해되어야 한다. 특히, 상기 스테이션은 윈도우 또는 유닉스 등의 다양한 운영 체제에서 작동하는 개인용 컴퓨터로 구성될 수 있다. 또한, 워크스테이션, 휴대용 컴퓨터 또는 소위 전용 카드 단말기로 구성될 수도 있다.
마찬가지로, 본 발명의 범위 내에서, "네트워크"라는 용어는 상호 링크된 일련의 서버들로 구성된 어떤 네트워크도 포함하는 개념으로서, 특히, 정보가 전달되는 글로벌 네트워크를 포함한다. 구체적으로는, 인터넷, 인터넷 형 프로토콜에 따라 데이터가 교환되는 임의의 네트워크, 인트라넷(intranet)으로 알려진 사기업의 네트워크, 및 이들을 외부로 확장하는 엑스트라넷(extranet)으로 알려진 네트워크 를 포함한다.
이하, 그 범위에 제한 없이, 달리 언급하지 않으면, 본 발명의 바람직한 응용에 중점을 둔다. 따라서 칩 카드 판독기를 구비하고 인터넷 형 네트워크에 접속되어, 단순히 터미널이라 호칭될 유저 스테이션에 관해 고려한다.
칩 카드를 기초로 한 응용 시스템은 일반적으로 다음의 주요 구성요소:
- 칩 카드;
- 상기 터미널을 포함하는 호스트 시스템(host system);
- 통신망(communication network), 즉, 상기 바람직한 응용에서의 인터넷 네트워크; 및
- 네트워크에 접속된 애플리케이션 서버(application server)를 포함한다.
도1a는 상기 유형의 전형적인 구조를 도식적으로 나타낸다. 예컨대 개인용 컴퓨터인 터미널(1)은 칩 카드(2)와 판독기(3)를 포함한다. 상기 판독기(3)는 터미널(1)에 물리적으로 통합될 수도 있고, 그렇지 않을 수도 있다. 칩 카드(2)는 전원 공급과 터미널(1)과의 통신을 목적으로 그 입력-출력 연결이 기판상에 존재하는 집적회로(20)를 포함한다. 집적회로(20)는 자료 전송 네트워크(data transmission network)(RI)에 접근하기 위한 회로들을 포함한다. 이 회로들은 특히 네트워크(RI)와 터미널(1)의 속성에 의존한다. 예컨대, 이들은, 인터넷 서비스 제공자("ISP")를 통해, LAN(local area network)용 네트워크 카드나, 인터넷에 접속하기 위해, 전화선 또는 ISDN(Integrated Services Digital Network)에 접속하기 위한 모뎀으로 구성된다.
도면을 간단히 하기 위해서 도시되지 않았지만, 터미널(1)은 적절한 작동을 위해 필요한 모든 회로와 구성요소들: 중앙 처리 장치, 램(RAM)과 롬(ROM), 자기 디스크 대용량 기억장치, 디스켓 드라이브 및/또는 CD-ROM 등을 당연히 포함한다.
또한, 통상적으로, 터미널(1)은, 집적여부에 관계없이, 표시 화면(5) 및 키보드(6) 등의 표준적인 주변장치에 접속된다.
터미널(1)은 네트워크(RI)에 접속된 서버들과 통신을 유지할 수 있고, 상기 서버(4)들 중 하나가 도1에 도시되어 있다. "서버"라는 용어는 기록파일 또는 하드웨어로의 접근중 어느 하나를 제공하는 통신 프로토콜(communication protocol)을 다룰 수 있는 임의의 정보 서버를 의미한다. 본 발명의 바람직한 응용의 경우에, 액세스 회로(11)는, 네비게이터(navigator)라고 불리는 특정 소프트웨어(10)를 이용하여 터미널(1)과 서버(4)와의 통신을 유지한다. "네비게이터"라는 용어는 다음과 같은 기능:
- 페이지, 특히 SGML(Standard Generalized Markup Language)로 된 페이지의 표시; 및
- 상기 페이지에 제공된 자료들의 다운로딩(downloading)을 제공하는 수단을 의미한다.
상기 네비게이터 기능은 브라우저(browser)라는 용어가 의미하는 것과 대응한다. SGML 페이지는 프리젠테이션 속성, 및 다른 SGML 문서로의 링크, 또는 외부 세계, 즉, URI(Universal Resource Identifiers)와의 하이퍼링크(hyperlink)를 포함한다.
SGML 언어는 HTML, XML, 및 WML을 포함하는 몇몇의 언어들을 포함하는 것으로 알려져 있다.
브라우저는, 일반적으로 클라이언트-서버 모드(client-server mode)에서, 네트워크(RI)를 통해 배포된 다수의 응용프로그램들로의 액세스를 가능하게 해 준다.
통상적으로, 네트워크상의 통신은, 수 개의 중첩된 소프트웨어 레이어(layer)를 포함하는 표준과 일치하는 프로토콜에 따라 발생한다. 인터넷 형의 네트워크(RI)의 경우, 이하 상세히 기술된 바와 같이, 통신은 이런 유형의 통신에 특정된 프로토콜에 따라 발생하고, 이 또한 수 개의 소프트웨어 레이어를 포함한다. 상기 통신 프로토콜은 소정의 구현된 어플리케이션: 웹 페이지에 대한 질의, 파일 전송, 전자 메일(즉 "e-mail"), 포럼 또는 뉴스 등을 근거로 선택된다.
터미널, 칩 카드 판독기, 및 칩 카드를 포함하는 상기 시스템의 논리적인 구조는 도1b에 도식적으로 도시되어 있다. 이는 다음의 세부항목:
- 카드의 크기 및 마킹(marking)과 관련된 ISO 7816-1 및 7816-2;
- 터미널과 칩 카드사이의 자료 전송과 관련된 ISO 7816-3; 및
- 명령어 집합의 구조 및 그 포맷과 관련된 ISO 7816-4
를 포함하는 ISO 7816 표준에 의해 기술된다.
도1b에서, 터미널(1)의 끝에는, ISO 7816-3 표준에 해당하는 레이어(101) 및 "APDU" 명령어 처리기(201)(ISO 7816-4 표준)만이 도시되어 있다. 칩 카드(2)의 끝에는, ISO 7816-3 표준에 해당하는 레이어가 200으로 참조되고, "APDU" 명령어 처리기는 201로 참조된다. 애플리케이션들은 A1,... Ai,... An으로 참조되고, n은 칩 카드(2)에 존재하는 애플리케이션의 최대 개수이다.
칩 카드(2)(도1a)에 있는 상표명 카드렛("cardletTM") 어플리케이션(Ai)은 일련의 명령어를 이용하여 터미널(1)과 대화한다. 이 명령어들은 전형적으로 쓰기 명령어와 읽기 명령어를 포함한다. 명령어들의 포맷은 약어 "APDU"("Application Protocol Data Unit")로 알려져 있다. 이것은 전술한 ISO 7816-4 기준에 의해 정의된다. 명령어 "APDU"는 "APDU.command"로 쓰여지고, 응답 "APDU"는 "APDU.response"로 쓰여진다. "APDU"는 카드 판독기와 전술한 ISO 7816-3 기준(예컨대, 문자 모드에서는: T=0; 또는 블록 모드에서는: T=1)에 의해 특정된 프로토콜을 사용한 칩 카드 사이에서 교환된다.
도1b에 도시된 바와 같이, 칩 카드(2)가 몇 개의 서로 다른 애플리케이션들을 포함할 때, 이를 다중 응용 카드(multi-applicative card)라고 한다. 그러나, 터미널(1)은 한번에 하나의 애플리케이션과만 대화한다. 예컨대, 애플리케이션(Ai)은 자바(Java) 언어로 된 애플릿(applet)으로 불리는 소프트웨어의 형태로 존재하며, 이하 "상표명 카드렛"이라 호칭된다. 특정 상표명 카드렛(Ai)의 선택은 "APDU" 선택형에 의해 얻어진다. 일단 상기 선택이 이루어지면, 이후의 "APDU"들은 상기 상표명 카드렛으로 보내진다. 새로운 "APDU 선택"은 진행중인 애플리케이션을 멈추고 또 다른 애플리케이션을 선택하는 효과가 있다. APDU(201)를 다루는 소프트웨어 하위 시스템은 칩 카드(2)에서 특정 애플리케이션(Ai)을 선택하고, 선택된 애플리케 이션을 저장하고, 상기 애플리케이션 사이에서 "APDU"를 전송 및/또는 수신하는 것을 가능하게 한다.
전술한 것을 요약하면, 애플리케이션(Ai)의 선택 및 이와의 대화는 "APDU" 명령어의 교환에 의해 이루어진다. 애플리케이션(Ai)은 종래의 애플리케이션으로 가정되고, 이하에서는 GCA(Generic Card Application)로 호칭된다.
도1b의 구조에 의해 예시된 칩 카드를 기초로 한 응용 시스템에서 다양한 기능들이 칩 카드로 옮겨진다.
그러나, 브라우저의 코드가 수정되지 않으면, 카드(3)는 시장에서 브라우저와 직접 통신할 수 없다. 역시 상기 기준에 부합하는 현재의 칩 카드들도, 인터넷 네트워크와 직접 통신할 수 없는 하드웨어와 소프트웨어 구성을 가지고 있다. 특히, 이들은 이런 유형의 네트워크에 사용되는 어떤 프로토콜을 사용하더라도 데이터 패킷을 전송하거나 수신할 수 없다. 따라서, 터미널(1)에 탑재되어, 일반적으로 플러그 인(plug-in)이라고 불려지는 형태의 부가적인 소프트웨어가 필요하다. 도1a에서 참조부호 12로 표시되는 상기 소프트웨어는, 브라우저(10)와 카드(2), 더 정밀하게 표현하면 상기 카드의 전자회로(20) 사이의 인터페이스를 제공한다.
현행 기술에 의하면, 카드 판독기(3), 즉, 터미널(1)과 결합된 호스트 시스템은 특정 애플리케이션과도 결합되어 있다. 다시 말하면, 각 특정 애플리케이션을 위한 이른바 전용 터미널을 제공하는 것이 필요하다.
본 발명의 주제는 이른바 웹 브라우저에 의해 칩 카드에 탑재된 애플리케이션의 작동방법으로서, 이로 인해 앞에서도 그 일부가 언급된 종래 기술의 단점을 제거하는 것이 가능하다.
본 발명의 한 특징에 따르면, 칩 카드는 예컨대 HTML(HyperText Markup Language)로 된 페이지의 형태로, 또는 더 일반적으로 하이퍼텍스트 언어로 된, 또는 심지어 자바 언어의 애플릿의 형태로 된 호스트 시스템, 즉 가상 터미널 모델을 갖춘 터미널을 제공하는데, 이는 사용자로 하여금 칩 카드가 제공하는 이용 가능한 애플리케이션으로부터 특정 애플리케이션을 선택할 수 있도록 해 준다. 결과적으로 터미널은 일반화되어 복수의 응용을 지원한다. 호스트 시스템은 칩 카드의 주변장치로 간주되고, 이것은 표시 화면, 키보드 등의 하드웨어 자원들을 이용 가능하도록 해준다.
이를 위해서, 특정 소프트웨어 통신 레이어가 칩 카드와 터미널에서의 그 대응부내에 제공된다. "특정"이라는 용어는 본 방법발명에 특정적인 의미로 이해되어야 한다. 본질적으로, 당해 애플리케이션이 무엇이든지 간에 소위 특정 통신 레이어(specific communication layer)들은 일반화된다. 이들은 칩 카드와 터미널 사이 및 칩 카드와 네트워크 사이의 양방향 자료 교환 프로세스(two-way data exchange process)에만 관련되어 있다.
상기 특정 소트프웨어 통신 레이어는 특히 프로토콜 전환을 허용하는 인텔리전트 에이전트(intelligent agent)로 알려진 소프트웨어 구성요소로 이루어진다. 터미널 및 칩 카드와 결합된 각 특정 통신 레이어에는 매칭 에이전트(matching agent)가 있다. 본 방법 발명에 의하면, 매칭 에이전트 사이에 세션(session)이 설정된다.
또 다른 특징에 의하면, 본 방법발명은 어떠한 수정을 할 필요 없이, 칩 카드에 위치한 CGA 타입의 종래 애플리케이션을 작동시키는 것을 가능하게 한다.
이를 위해서, 스크립트 번역기(script translator)라고 알려진 하나 또는 그 이상의 인텔리전트 에이전트가 제공되어야 하며, 이는 브라우저로부터 요구를 받아들여 이것들을 CGA 타입의 애플리케이션에 적용가능한 APDU 명령어로 변환시킨다.
또 다른 특징에 따르면, 본 방법 발명은 시스템의 구조를 수정할 필요 없이 비전형적 타입의 애플리케이션을 다루는 것을 가능하게 한다.
또 다른 특징에 따르면, 본 방법 발명은 하나 또는 그 이상의 애플리케이션의 업데이트(update) 또는 삭제뿐만 아니라, 칩 카드 안으로 전통적이든 그렇지 않든 새로운 애플리케이션의 다운로딩을 허용한다.
본 발명의 또 다른 주제는, 자료정보 처리수단 및 정보 저장수단으로 구성되는 칩을 구비하고, 터미널을 통해 네트워크와 상호 작용하도록 설계된 내장 시스템(embedded system)으로서,
- 내장 시스템이 네트워크에서 정보 서버를 구성하는 방식으로, 터미널에 위치한 매칭 네트워크 인터페이스 수단과 상호 작용하도록 설계된 네트워크 인터페이스 수단; 및
- 네트워크를 통해 이동하고 내장 시스템에 저장된 적어도 하나의 애플리케 이션에 할당된 인스트럭션들(이 인스트럭션들은 브라우저로부터 나오거나 브라우저로 송출됨)과 상기 네트워크 인터페이스 수단과 상기 애플리케이션간에 정보 교환을 위한 인스트럭션들 사이에 통신수단을 형성하도록 설계된 애플리케이션 인터페이스 수단을, 포함하는 것을 특징으로 한다.
본 발명은 정보처리수단과 정보기억수단으로 구성되는 칩을 구비하고, 터미널을 통해 네트워크와 상호 작용하도록 설계된 내장 시스템에 저장된 적어도 하나의 애플리케이션을 작동시키기 위한 방법에 관한 것으로서, 네트워크에서 정보 서버를 구성하도록 하는 방식으로, 터미널에 위치한 매칭 네트워크 인터페이스 수단과 상호 작동하도록 설계된 네트워크 인터페이스 수단, 네트워크를 통해 이동하고 내장 시스템에 저장된 적어도 하나의 애플리케이션에 할당된 애플리케이션 인터페이스 수단, 및 상기 네트워크 인터페이스 수단과 상기 애플리케이션 사이의 정보 교환을 위한 인스트럭션들을 포함하는 내장 시스템을 사용하는 것을 특징으로 하며,
- 상기 매칭 네트워크 인터페이스 수단을 통해 적어도 하나의 애플리케이션을 작동시키기 위한 리퀘스트를 내장 시스템으로 보내기 위해서 터미널과 내장 시스템 사이에 정보 교환 세션을 형성하는 단계;
삭제
- 상기 애플리케이션 인터페이스 수단에 의해, 상기 네트워크 인터페이스 수단과 상기 애플리케이션 사이의 정보 교환을 위해 상기 리퀘스트와 인스트럭션들 사이에 통신수단을 형성하는 단계; 및
- 상기 애플리케이션 인터페이스 수단에 의해, 애플리케이션에 의해 보내진 상기 리퀘스트에 대한 응답과 네트워크를 통해 보내진 인스트럭션들에 대한 응답 사이에 통신수단을 형성하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 또 다른 주제는, 브라우저에 의해 상기 칩 카드의 판독기를 갖춘 소위 로컬 터미널에 연결된 칩 카드에 위치하는 적어도 하나의 애플리케이션을 작동시키기 위한 방법으로서, 적어도 다음 단계들:
a/ 제1 소정의 소프트웨어를 상기 칩 카드에 설치하여 칩 카드에 저장된 상기 애플리케이션과 인터페이스를 형성하는 제1 예비 단계; 및
b/ 적어도 상기 브라우저와 인터페이스를 형성하는 제2 소정의 소프트웨어를 터미널에 설치하는 제2 예비단계를 포함하는 것을 특징으로 하며;
- 상기 제1 및 제2 소정의 소프트웨어는 또한 적어도 한 쌍의 제1 매칭 소프트웨어 엔티티(entity)를 포함하고, 상기 칩 카드가 정보 서버로서의 기능을 제공하도록 상기 터미널과 상기 칩 카드 사이의 양방향 자료 교환 세션을 형성하기 위해 상기 각 엔티티가 상호작용하는 것을 특징으로 하며;
- 인스트럭션 시퀀스를 해석하여 일련의 명령으로 전환시킬 수 있고, 상기 애플리케이션과 상기 제2 소정의 소프트웨어와 상호작용하는 제2 소프트웨어 엔티티를 상기 칩 카드에 설치하는 제3 예비 단계가 있는 것을 특징으로 하고;
상기 방법은,
1/ 상기 애플리케이션중 하나에 액세스하기 위한 요청을 전송하기 위해, 상기 제1 매칭 소프트웨어 엔티티를 통해, 상기 터미널과 상기 칩 카드 사이에서 자료 교환 세션을 형성하는 단계;
2/ 상기 제2 소프트웨어 엔티티중 하나를 통해 상기 리퀘스트를 수신하고, 액세스될 상기 애플리케이션과 관련된 상기 인스트럭션 시퀀스를 번역하고, 애플리케이션을 작동시키기 위해 상기 번역된 명령어들을 상기 애플리케이션에 전송하는 단계; 및
3/ 상기 제2 소프트웨어 엔티티 및 상기 제1 및 제2 소정의 소프트웨어를 통해 상기 요청에 대한 응답을 상기 브라우저에 생성 및 전송하는 단계를 더 포함하는 것을 특징으로 한다.
첨부된 도면에 관한 다음의 설명에 의해 본 발명은 더 잘 이해될 것이고, 다른 특징 및 장점들도 더 분명해질 것이다.
도1a 및 도1b는 종래 기술에 의한 예시적인 칩 카드 응용 시스템의 하드웨어 및 소프트웨어 구조를 각각 개략적으로 도시한다.
도2는 웹 서버로 작동하는, 본 발명에 의한 칩 카드 응용 시스템을 개략적으로 도시한다
도3은 HTML언어로 된 메뉴 페이지의 형태로 터미널과 칩 카드 사이의 교환을 나타낸다
도4는 칩 카드가 인텔리전트 에이전트를 포함하는 시스템의 논리 구조를 단순화하여 도시한다.
도5a 내지 도5d는 칩 카드가 스크립트를 번역하는 인텔리전트 에이전트를 구성하는 본 발명의 다양한 실시예에 따른 시스템의 구조를 나타낸다.
도6은 터미널에 의해 칩 카드로 전송되는 예시적인 형태를 나타낸다.
도7은 본 발명에 따라 브라우저와 칩 카드 사이의 교환의 주요 단계를 개략적으로 도시한다.
본 발명에 따라 칩 카드내에 위치한 애플리케이션을 작동시키는 방법을 기술하고 그 실행을 위한 구조를 상세히 설명하기 전에, 네트워크의 통신 프로토콜의 주요 특징에 대해서 간략히 요약하는 것이 적합하다.
통신 네트워크의 구조는 다양한 레이어(layer)로 기술된다. 예컨대, ISO에 의해 정의된 OSI(Open Systems Interconnection) 표준은 7개 레이어로 구성되는데, 이는 소위 최하위 레이어(예컨대, 물리적 전송을 지원하는 소위 물리적 레이어(physical layer))로부터 소위 전송 레이어를 포함하는 중간 레이어를 지나 최상위 레이어(예컨대, 이른바 응용 레이어(application layer))까지를 포함한다. 데이터 레이어는 적절한 인터페이스를 통해 바로 상위 레이어에 서비스를 제공하고, 바로 밑의 레이어로부터 다른 서비스를 요구한다. 레이어들은 프리머티브(primitive)를 통해 통신한다. 이들은 동일 레벨의 레이어와 통신할 수도 있다. 일부 구조에서는 상기 레이어중 일부가 존재하지 않을 수도 있다.
인터넷형의 환경에서, 5개의 레이어가 있고, 더 정밀하게는, 상위 레이어로부터 하위 레이어로 다음과 같은 구조: 응용 레이어(application layer) (http,ftp,e-mail 등), 전송 레이어(TCP), 네트워크 주소 레이어(network address layer)(IP), 자료 링크 레이어(PPP,SLIP 등), 및 물리적 레이어로 되어 있다
다음, 칩 카드가 웹 서버로 작동하도록 하는 칩 카드 응용 시스템의 구조를 설명한다. 상기 구조의 예는 개략적으로 도2에 도시되어 있다. 도1과 공통되는 요소는 동일 참조부호를 가지고 있고, 필요한 경우에만 설명될 것이다. 도면을 단순화하기 위해, 터미널에 연결된 다양한 주변장치(예컨대, 도1의 화면(5) 및 키보드(6))들은 도시되지 않았다.
참조부호가 13 및 23a면서, 터미널(1) 및 칩 카드(2a)에 각각 설치된 특정 소프트웨어 통신 프로토콜 레이어를 제외하고, 다른 하드웨어 및 소프트웨어 요소는 종래 기술과 공통적이다.
터미널(1)은 예컨대, 인터넷용 모뎀이나 근거리 통신망용 네트워크 카드로 구성되는 네트워크(RI)에 액세스하기 위한 회로들(11)을 구성한다. 상기 회로들은 물리적 및 자료 링크 레이어에 해당하는 하위 레이어들(C1,C2)을 포함하고 있다.
네트워크 주소(인터넷의 경우에 IP)와 전송(TCP) 레이어에 해당하는 상위 레이어(C3,C4)도 도시되어 있지만, 최상위 어플리케이션 레이어(http,ftp,e-mail 등)는 도시되지 않았다.
하위 레이어들(C1,C2)과 상위 레이어들(C3,C4) 사이의 인터페이스는 일반적으로 하위 레벨 드라이버(lower level driver)로 불리는 소프트웨어 레이어로 구성된다. 상위 레이어(C3,C4)는 상기 인터페이스에 의존하고 특정 라이브러리 함수 또는 네트워크 라이브러리(14)에 의해 실행된다. 인터넷의 경우에는 TCP/IP가 소켓(socket)이라고 알려진 라이브러리 수단에 의해 실행된다.
상기 구조는 종래의 방식대로 웹 페이지(HTTP protocol)를 참조하거나, 파일(FTP protocol)을 전송하거나, 전자 메일(e-mail protocol)을 보내기 위해서 브라우저(도1의 10)로 하여금 리퀘스트를 서버(도1의 4)로 보내는 것을 가능하게 한다.
터미널(1)은 카드 판독기(3)를 구성하는데, 이것은 집적될 수도 있고, 그렇지 않을 수도 있다. 칩 카드(2a)와 통신하기 위해서, 카드 판독기는 두 개의 하위 레이어(물리적 레이어(CC1),자료 링크 레이어(CC2))를 포함하는데, 이것들은 레이어들(C1,C2)과 비슷한 역할을 수행한다. 레이어(CC1,CC2)와의 소프트웨어 인터페이스는 예컨대, PC/SC 명세서에 의해 설명된다(제6장, 서비스 제공업자). 레이어들(CC1,CC2) 자체는 전술한 바와 같이, ISO 표준 7816-1 내지 7816-4에 의해 설명된다.
부가적인 소프트웨어 레이어(16)는 응용 레이어(도시 안됨)와 하위 레이어(CC1,CC2) 사이의 인터페이스를 제공한다. 상기 레이어에 위임된 주된 기능은 멀티플렉스/디멀티플렉스(multiplexing/demultiplexing) 기능이다.
칩 카드(2a)와의 통신은 UNIX 타입의 운영 시스템에서 파일을 다루는데 사용되는 것과 유사한 패러다임(paradigm): OPEN, READ, WRITE, CLOSE 등에 따라 발생한다
칩 카드의 끝(2a)에는, 레이어(16)와 완전히 유사한 인터페이스 레이어(26a)뿐만 아니라, CCa1(물리적 레이어) 및 CCa2(자료 링크 레이어)로 참조부호가 붙은 두 개의 하위 레이어가 존재한다.
제1 특징에 따르면, 터미널(1)과 칩 카드(2a)의 양 끝에, 네트워크 인터페이스 수단에 대응하는 두 개의 특정 프로토콜 레이어(13,23a)가 각각 제공된다.
터미널(1)에는, 특정 레이어(13)가 "하위 레벨 드라이버(lower level driver)"(15), 네트워크 레이어(C3,C4)의 라이브러리(14), 및 카드 판독기(3)의 프로토콜 레이어, 즉 하위 레이어(CC1,CC2)와 멀티플렉스 레이어(16)를 통해 인터페이스를 이룬다. 특정 레이어(13)는 칩 카드(2a)로부터 뿐만 아니라 칩 카드(2a)로의 네트워크 패킷의 전송을 허용한다. 또한, 이것은 인터넷 브라우저(도2), 전자메일 소프트웨어 등의 현존하는 애플리케이션을 칩 카드(2a)와 관련된 활용에 적합하도록 한다.
칩 카드의 끝(2a)에는, 부가적인 특정 레이어(23a)와 대응 레이어(13)로 구성되는 구조와 완전히 유사한 구조가 존재한다.
즉, 특정 레이어(13,23a)는 3개의 주요 소프트웨어 요소:
- 종래의 레이어들(CC1,CC2,CCa,CCa2)을 통해 레이어들(13,23a) 사이에서 정보 블록을 전송하는 모듈(130 또는 230a);
- 예컨대, 프로토콜 변환 기능을 수행하는 인텔리전트 에이전트(132,232a)라고 불리는 하나 또는 그 이상의 소프트웨어; 및
- 특정 구성(131,231a)을 조작하는 모듈로서, 특정 인텔리전트 에이전트로 동화될 수 있는 모듈로 세분된다.
따라서, 터미널(1)과 칩 카드(2a)에는 두 개의 엔티티 사이에 통신 프로토콜 스택(stack)이 있다.
2단계 레이어(데이터 링크 레이어)(CC2,CCa2)는 칩 카드(2a)와 터미널(1) 사이의 교환을 다룬다. 상기 레이어들은 전송 오류의 감지와 교정에 책임이 있다. 다양한 프로토콜이 사용가능하고,
- 레코멘데이션(recommendation) ETSI GSM 11.11;
- 문자 모드(T=0)에서, ISO 7816-3 표준에 의해 정의되는 프로토콜;
- 블록 모드(T=1)에서, ISO 7816-3 표준에 의해 정의되는 프로토콜; 및
- HLDC(High-Level Data Link Control) 프레임 모드에서, ISO 3309 표준에 의해 정의되는 프로토콜이 그 전형적인 예이다.
본 발명의 목적을 위해서, 블록 모드에서, ISO 7816-3 프로토콜을 사용하는 것이 바람직하다.
본질적으로 잘 알려진 방식으로, 각 프로토콜 레이어는, 같은 레벨의 레이어 사이 및 하나의 레이어로부터 다른 레이어로의 자료 교환을 허용하는 일정 수의 프리머티브와 연결된다. 예컨대, 2단계 레이어와 연결된 프리머티브에는 "데이터 리퀘스트"("Data.request") 및 카드에 의한 "데이터 응답"("Data.response") 타입, 및 "데이터 확인"("Data.confirm") 타입 등이 있다.
더 구체적으로는, 레이어(13,23a)는 칩 카드(2a)와 호스트, 즉 터미널(1)과의 대화를 담당하고 있다. 상기 레이어들은 예컨대, HTML 포맷에서의 하이터텍스트 형태로 된 드롭다운(dropdown) 메뉴를 통해, 터미널(1)의 유저(도시 안됨)와 칩 카 드(2a) 사이의 정보 교환을 담당하는데, 이는 도3과 관련하여 도시될 것이다. 이들에 의해 또한 자료 패킷의 전송 및/또는 수신에 적합한 구성을 형성할 수 있다.
상기와 같이, 레이어들은 세 개로 구분가능한 엔티티로 구성된다.
제1 레이어(130,230a)는 본질적으로 소프트웨어 멀티플렉서로 구성된다. 이것은 프로토콜 데이터 유닛의 형태로, 칩 카드(2a)와 호스트 터미널(1) 사이의 정보 교환을 허용한다. 이것은 데이터 패킷 교환기(data packet switcher)와 유사한 기능을 수행한다. 상기 유닛은 2단계 레이어(데이터 링크 레이어)를 통해 전송되거나 수신된다. 상기 특정 통신 프로토콜은 서로간에 연락을 취하면서 적어도 한 쌍의 인텔리전트 에이전트를 발생시킨다. 각 쌍의 제1 에이전트(132)는 터미널(1) 끝의 레이어(13)에 위치하고 있고, 제2 에이전트(232a)는 칩 카드(2a) 끝의 레이어(23i)에 위치하고 있다. 두 개의 인텔리전트 에이전트 사이의 링크는 세션과 결합되어 있다. 세션은 상기 두 개의 에이전트 사이의 양방향 데이터 교환이다.
인텔리전트 에이전트는 터미널(1)에 의해 사용되는 구성에 따라, 3단계 및 4단계 레이어의 모든 또는 일부의 기능을 수행할 수 있다.
특정 인텔리전트 에이전트는, 예컨대, 16비트(0과 6536 사이의 수)로 된 자연수(whole number)로 구분하는 것이 유리하다. 상기 구분자(identifier)는 예컨대, 목적 레퍼런스(destination reference)와 소스 레퍼런스(source reference)로 구성되는 프로토콜 데이터 유닛에서 사용된다.
인텔리전트 에이전트에는 두 개의 주요 카테고리: 고정된 레퍼런스에 의해 확인되는 "서버"형의 에이전트, 구성 관리 모듈(configuration management module)(130 또는 230a)에 의해 운반되는 변수 레퍼런스(variable reference)에 의해 확인되는 "클라이언트"형의 에이전트가 있다.
세션을 여는 과정은 통상 다음과 같다: 클라이언트형의 인텔리전트 에이전트가 서버형의 인텔리전트 에이전트와 더불어 세션을 연다. 레이어들(130,230a)은 호스트 터미널(1) 끝과 칩 카드(2a) 끝에 존재하는 인텔리전트 에이전트의 목록을 포함하는 테이블(도시 안됨)을 조작한다.
인텔리전트 에이전트는 특정 성질 또는 속성과 결합되어 있다. 개념을 실례로써 명확히 하기 위해, 또 제한되지 않는 실례를 보여주기 위해, 다음 6개의 속성:
- "호스트": 터미널에 위치한 에이전트;
- "카드": 칩 카드에 위치한 에이전트;
- "로컬": 네트워크와 통신하지 않는 에이전트;
- "네트워크": 네트워크와 통신하는 에이전트;
- "클라이언트": 세션을 시작하는 에이전트; 및
- "서버": 세션 요청을 수신하는 에이전트
등이 인텔리전트 에이전트와 관련된다.
상기 인텔리전트 에이전트는 데이터(예컨대, 하이퍼텍스트)의 교환을 가능하게 하고, 또한 네트워크 트랜잭션(network transaction)을 개시한다.
구성 관리 모듈(131,231a)은 지적된 바와 같이, 각각 특정 인텔리전트 에이전트와 유사하게 될 수 있다. 예컨대, 호스트 터미널(1) 끝의 모듈(131)은 상기 터 미널(작동 모드)의 구성에 관한 정보, 현재의 다른 에이전트 목록 등을 특별히 관리한다. 칩 카드(2a) 끝의 모듈(231a)은 유사한 기능을 가지고 있다. 상기 두 개의 에이전트는 세션을 형성하기 위해 서로간에 통신을 유지한다.
일 특징에 따르면, 칩 카드(2a)는 호스트 시스템, 즉 가상 터미널 모델인 터미널(1)을 제공한다. 이를 위해서, 칩 카드(2a)는 웹 서버처럼 작동한다.
칩 카드(2i)는 브라우저(10)에 의해 주소가 지정된다. 다음, 이것은 애플릿 또는 다른 형태의 소프트웨어인 HTML 언어로 된 웹 형식의 페이지를 브라우저로 보낸다. 예컨대, 웹 페이지는 가능한 애플리케이션 및/또는 외부 서버로의 하이퍼링크에 대한 선택을 제공하는 웰컴 페이지(welcome page)의 형태로 제공될 수 있다 .
실용적인 방법으로, 칩 카드(2a)는 유리하게 터미널(1) 자체로의 루프백을 정의하고 외부서버로 지정하지 않는 URL(Universal Resource Locator) 주소를 사용하여 주소가 지정된다. 예컨대, 상기 URL 구조는 통상 다음과 같다.
http://127.0.0.1:8080 (1)
여기서, 127.0.0.1은 IP 루프백 주소이고, 8080은 포트 번호이다.
도3은 상기 과정을 개략적으로 도시한다. 상기 도면에서, 브라우저(10)로부터의 요청에 대한 응답으로, 칩 카드(2a)는, 예컨대, 터미널(1)의 표시 장치(5)에 표시되는 HTML 언어로 된 페이지(P)를 제공하는 것으로 가정한다. 웰컴 페이지로 성질이 부여될 페이지(P)는 통상의 방법으로 다양한 그래픽 또는 텍스트 요소를 표시할 수 있지만, 적어도 일정 수의 외부 서버(Hl1,Hl2, ... Hli, 내지 Hl n, n은 임의의 수)로의 하이퍼링크를 포함한다. n은 가능한 선택의 최대수를 나타낸다. 당연 히, 상기 n은 판독기로 삽입된 칩 카드(2a)와 이들 카드에 존재하는 애플리케이션(Ai)(도1b)의 최대 개수(n)에 의존한다. 제시된 선택은 칩 카드(2a)의 보유자에게 부여된 권리: 서비스 가입, 취급 허가 레벨(level of clearance) 등에 의존할 수도 있다. 전술한 과정은 특정 레이어(13,23a)뿐만 아니라, 기준 통신 레이어(도시 안됨)의 모두 또는 일부를 사용한다.
각 하이퍼링크, 예컨대, 하이퍼링크(Hli)는 외부 소스 URL을 가리킨다. 예컨대, URL의 구조는 다음과 같을 수 있다.
http://127.0.0.1:8081/www.NAME.com/index.html (2),
여기서 127.0.0.1은 IP 주소이고, 8081은 포트 번호이며, "NAME.com"은 일반적으로 사용되는 명명법에 따라, 회사나 다른 엔티티의 인터넷 사이트명이고, "index.html"은 상기 웹 사이트의 웰컴 페이지이다. 이론상 상업적인 조직에 사용되는 접미사 ".com" 외에도, 인터넷 사이트의 위치나 조직의 성질과 관련하여 ".fr", ".gov" 등의 접미사도 존재한다.
도4는, 단순화한 방법으로, 칩 카드(2a)가 인텔리전트 에이전트로 구성되는 시스템의 논리적 구조를 도시하는데, 다음과 같은 2개의 인텔리전트 에이전트가 도시되어 있다: 엄격히 정의되지 않은 유형의 인텔리전트 에이전트(232a1)와 소위 웹 유형의 인텔리전트 에이전트(232a1). 논리적 스택은 ISO 7816-3 표준(도2의 CCa1,CCa2)에 따른 하위 프로토콜 레이어(200a), APDU 명령어 처리기(201a1), 및 패킷 멀티플렉서(230a)로 구성되는데, 여기서 패킷 멀티플렉서(230a)는 인텔리전트 에이전트, 특히 웹 인텔리전트 에이전트(232a1)와 인터페이스를 이룬다.
터미널 끝에는 두 개의 스택이 있는데, 그 중 하나는 네트워크와 통신하고, 다른 하나는 칩 카드(2a)와 통신한다. 제1 스택은 네트워크(OSI 표준 1 및 2)에 액세스하기 위한 구성요소(11)(도2의 C1,C2)와 TCP/IP 프로토콜 레이어(100)(도2의 C1,C2)로 구성된다. 상기 마지막 두 레이어는 웹 브라우저(10)와 접속되어 있다. 제2 스택은 ISO 7816-3 표준(도2의 1C1,C2)에 부합하는 하위 프로토콜 레이어(101), APDU 명령어 처리기(101), 및 패킷 멀티플렉서(102)를 포함하고, 패킷 멀티플렉서는 인텔리전트 에이전트들과 인터페이스를 이루는데, 그 중 하나(132)만을 도시한다. 네트워크 형으로 가정되는 제2 스택은 TCP/IP 레이어들(100)을 통해 브라우저(10)와 통신할 수 있고, 상기와 같은 TCP/IP 레이어들(100) 및 네트워크(RI)에 액세스하기 위한 구성요소(11)를 통해 인터넷 네트워크(RI)와 통신할 수 있다.
또한, ADPU 명령어 처리기(201a1)는 애플리케이션 레벨에서 하나 또는 그 이상의 레이어들과 인터페이스를 이루는데, 이는 단순히 애플리케이션으로 호칭된다. 상기 애플리케이션들은 이미 지적된 바와 같이, 상표명 카드렛으로 호칭되는 종래의 애플리케이션이다.
요약하면, 칩 카드(2a)에 의해 제공된 웹 서버 기능은, 칩 카드의 웹 인텔리전트 에이전트(232a1)와 터미널(1)의 네트워크 에이전트(132)와의 결합을 통해 이룩 될 수 있다.
칩 카드(2a)는 실질적으로 웹 서버 기능을 가지고 있다. 또한, 본 방법 발명의 한 특징에 의하면, 전술한 CGA형의 종래 애플리케이션(A1 내지 An)은, 터미널(1)에 존재하는 웹 브라우저(10)에 의하거나, 인터넷 네트워크(RI)상의 임의 지점에 위치한 리모트 브라우저에 의해서, 상기 웹 서버를 통해 작동될 수 있다. 본 방법 발명에 따라, 애플리케이션(A1 내지 An)은 재작성될 필요가 없고, 그 자체로 사용된다.
본 발명의 다른 특징에 따르면, 상기 애플리케이션은 종래 유형, 즉, 종래 기술에 따른 터미널에 접근할 수 있다.
즉, 칩 카드에 있는 애플리케이션의 호환 모드에 있어서, 기존의 구성요소간에는 호환성이 있다. 그러나, 이러한 경우, (종래의) 터미널은 범용성이 없어 애플리케이션에 맞게 재설정되어야 한다는 것을 주지해야 한다.
상기 요구조건을 충족시키기 위해, 상기 칩 카드에 의해 제공된 "웹" 서버 기능은, 종래의 "웹" 서버에 설치된 소위 "CGI"("Common Gateway Interface") 기능과 유사한 메카니즘에 대응하는 애플리케이션 인터페이스 수단을 포함한다.
상기 칩 카드에서 이러한 유형의 기능을 제공할 수 있는 본 발명에 따른 전형적인 아키텍처(architecture)를 기술하기 전에, "CGI" 동작 모드의 주요 특성을 검토하는 것이 적절하다.
"CGI"는 "웹" 서버로부터, "UNIX"(등록상표), "DOS", 또는 "WINDOWS" (등록 상표)의 오퍼레이팅 시스템을 위해 개발된 애플리케이션을 구현하기 위한 하나의 스펙(specification)이다. 예컨대, "UNIX" 오퍼레이팅 시스템에 대한 상기 스펙은 "CGI 1.1"이고, "WINDOWS 95" 오퍼레이팅 시스템에 대한 상기 스펙은 "CGI 1.3"이다.
또한, 예컨대,
http://www.host.com/cgi-bin/xxx.cgi (3)
타입의 "URL" 주소에 대한 "HTTP" 리퀘스트는, "xxx"로 호칭되고 호스트 시스템의 "cgi-bin" 디렉토리에 있는 "CGI" 타입의 명령어 스크립트를 실행할 때 "웹"서버에 의해 해석되며, 여기서, "host"는 (일반적으로는 리모트인)호스트 시스템을 말한다. 상기 디렉토리명이 이론상으로는 임의의 이름이 될 수도 있지만, 이는 "CGI" 유형의 스크립트를 저장하는 디렉토리에 부여된 이름이 되는 것이 관례다. 하나의 스크립트는 상기 리퀘스트에 보내진 "웹" 브라우저로 최종 결과가 전송되는 호스트 시스템의 오퍼레이팅 시스템의 인스트럭션 시퀀스이다. 이러한 스크립트를 작성하는 데는, 예컨대 "PERL"(등록상표) 언어와 같은 다양한 언어가 사용될 수 있다.
실질적으로, 통상 상기 리퀘스트는 "HTML" 페이지에 포함된 폼(form)의 형태로 컴퓨터 스크린에 표시된다. 상기 "HTML"언어는 하나의 폼을 "URL" 주소로 번역할 수 있다. 상기 폼은, 통상의 입력 수단: 텍스트에 대한 키보드, 첵크 박스 또는 소위 "레디오(radio)" 버튼을 위한 마우스 등을 사용하여 사용자에 의해 채워지며, 요구될 수도 있고 안될 수도 있는, 하나 또는 그 이상의 필드를 포함한다. 폼의 내용(소위 "히든" 정보 및 명령어와 병존 할 수 있는)은 상기 "웹" 서버로 보내진다. 페이지의 "HTML" 코드는 입력될 데이터를 위한 필드의 구조(이름, 길이, 데이터형 등) 뿐만 아니라 폼의 물리적인 구조(프레임, 그래픽, 색상, 및 임의의 다른 속성)를 기술한다.
상기 전송은 2가지 주요 유형의 포맷(format)에 따라 실행될 수 있다. 제1 포맷은 소위 "POST" 방법을 사용하고, 제2 포멧은 소위 "GET" 방법을 사용한다. 포맷 유형의 정보는 폼 페이지의 코드에 있다.
그러나, 상기 메카니즘은, 칩 카드가 본 발명의 일 특징에 따른 "웹" 서버 기능을 제공할 때에도, 칩 카드에 직접적으로 적용될 수 없다.
이하, 도5a를 참조하여, 상기 칩 카드에 있는 "웹" 서버를 통해 종래 유형의 애플리케이션을 구동할 수 있는 전형적인 아키텍처를 기술한다.
제1 단계에서, 사용자(도시 안됨)는 그의 "웹" 브라우저(도4: 10)를 통해 다음:
http://@card:8080/pme.html (4)
과 같이 표현될 수 있는, 하나의 "URL" 주소를 제시한다. 여기서, "@card"는 칩 카드의 IP 어드레스(예컨대 도3과 관련하여 기술된 루프백 주소(127.0.01": 공식(1) 참조)이다. 예를 들어 상기 개념을 설명하면, "pme.html"은, 이하 "일렉트로닉 퍼스(electronic purse)" 또는 "e-퍼스"라 호칭되는, 칩 카드에 의해 제공되는 특정 애플리케이션에 관련된 "HTML" 언어로 된 페이지이다. 상기와 같은 방법으로, 제2 단계에서, 칩 카드는, 도6에 의해 예시된 폼으로 나타날 수 있는 "HTML" 페이지를 돌려준다.
다양한 그래픽 속성(프레임, 그래픽 등) 및 정보(타이틀, 디스크립션(description) 등) 외에, 상기 예의 폼은, "서브밋(Submit)" 및 "클리어(Clear)"라 각각 호칭되는 "레디오" 버튼인, b1 및 b2 뿐만 아니라, "서티퍼킷(Certificate)" 및 "레이트(Rate)"라 호칭되는 2 개의 숫자 필드인, Ch1 및 Ch2를 포함한다. 이는 또한 도의 우측에, 통상 "스크롤" 기능이라 불리는 것도 포함한다. 이 폼은 터미널(1)의 표시화면(도1(5))에 표시된다.
제3 단계에서, 사용자는 상기 2개의 숫자 필드(Ch1,Ch2)를 입력한다. 본 예에서, 상기 2개의 필드는 반드시 입력되어야 한다. b1을 클릭함으로써, 사용자는 폼의 내용을 전송한다. b2를 클릭함으로써, 보정하거나, 새로운 일련의 데이터를 입력하기 위해 모든 표시 데이터를 지운다.
사용자가 b1을 클릭하면, 상기 데이터는 네트워크 에이전트(132)에 의해 보내지고 수신된다. "웹" 브라우저는 로컬 터미널(1)에 반드시 있어야 하는 것은 아니라는 것을 상기하라. "웹" 브라우저는 로컬 터미널(1)에 있을 수도 있고, 인터넷 네트워크(RI)(예컨대, 도4 참조)에 접속된 임의의 시스템에 위치할 수도 있다. 다음, 상기 데이터는 칩 카드(2a)로 전송되기 위해, 패킷 멀티플렉서(130)(터미널(1)에서, 특정 레이어(layer)(13)의 구성요소 중 하나를 구성함), "APDU" 명령어 처리기(102), 및 프로토콜 레이어(101)를 통과한다. 다음, 상기 데이터는 "웹" 에이전트(232a1)에 의해 수신되기 위해, 프로토콜 레이어(200a), "APDU" 명령어 처리기(201a), 및 패킷 멀티플렉서(230a)를 통과한다. 다음, 상기와 같이, 하나의 로컬 세션(session)이 상기 2개의 인텔리전트 에이전트(intelligent agent) 사이에 서 형성된다.
"웹" 에이전트(232a1)의 주소를 가진 데이터가, 특정 "패킷 멀티플렉서" 애플리케이션의 주소를 가진 "APDU" 형태로서, 반드시 종래의 방식으로 전송됨을 주의한다. "APDU" 명령어 처리기(201a)는, A1 내지 An으로 참조되고, 칩 카드(2a)에 있는 "CGA" 타입의 다른 애플리케이션과 전적으로 유사한 방식으로 상기 애플리케이션을 선택한다. 즉, 패킷 멀티플렉서(230a)는 "APDU" 명령어 처리기(201a)에 의해 통상의 "CGA" 애플리케이션과 유사하게 보인다.
다음, "HTTP" 리퀘스트는, 이하, 관례에 따라 "cgi-스마트"라 호칭되는 특정 디렉토리, 및 예컨대 상기 예의 경우 "pme"인 특정 애플리케이션에 대한 레퍼런스를 찾는 "웹" 에이전트(232a1)에 의해 분석된다.
본 방법 발명의 일 특징에 따르면, 상기 엔티티(entity)는 특정 애플리케이션(이 경우 상기 "e-퍼스")과 동등하게 관련된 특정 스크립트를 가리킨다.
다음, 제4 단계에서, 스크립트는, 이하 "ATS" 라 불리는 "스크립트 번역 에이전트"라 불리는 인텔리전트 에이전트에 의해 번역된다. 상기 번역은 다양한 방법으로 행해질 수 있다. 즉,
a/ 2배의 용량을 가진 "웹" 에이전트(232a1) 자신에 의해 행해지거나;
b/ 칩 카드(2a)에 있는 모든 스크립트를 번역할 수 있는 유일한 스크립트 에이전트에 의해 행해지거나;
c/ 이하 "ATSD"(스크립트 당 하나)라 불리는 전용 스크립트 에이전트에 의해 행해지거나; 또는
d/ 2배의 용량을 가진, "APDU" 명령어 처리기(201a)의 "APDU" 에이전트(2010a)에 의해 행해질 수 있다.
상기 "APDU" 에이전트(2010a)는 "APDU" 명령어 처리기 레이어(201a)의 한 구성요소이다. 나타난 바와 같이, 후자는 시스템에 의해 송신 및/또는 수신되는 모든 "APDU" 명령어를 집중시킬 수 있고, A1 내지 An 중에서 애플리케이션을 선택할 수 있고, 또한 인텔리전트 에이전트 타입의 인터페이스를 제공할 수 있는 레이어이다. 따라서, 본 방법 발명의 일 특징에 따라, 에이전트가 터미널(1)에 있건, 또는 칩 카드(2a)에 있건 간에, (세션을 통해) 시스템의 모든 인텔리전트 에이전트와 통신할 수 있다.
상기 c/의 경우, 하나의 세션은 "ATSD" 에이전트들 중 하나와 "웹" 에이전트(232a1) 사이에서 개방된다.
도5a는 번역 에이전트가 "ATSD" 형인 전형적인 아키텍처를 나타낸다. 이들은 ATS1 내지 ATSn으로서 참조되고, 애플리케이션 A1 내지 An과 관련된다. 선택된 애플리케이션은 애플리케이션 Ai이고, 세션은 "웹" 에이전트(232a1)와 에이전트(ATS i)사이에서 형성된다.
하나의 스크립트 번역 에이전트는 일련의 "APDU" 명령어를 생성한다. 하나의 세션은, 번역 에이전트, 예컨대 에이전트(ATSi)와 "APDU" 에이전트(2010a) 사이에서 개방된다. 다음, 상기 명령어들은 "APDU" 에이전트(2010a)로 보내진다. 상기 "APDU" 명령어 처리기(201a)는 "CGA" 애플리케이션 Ai(예컨대 "e-퍼스" 애플리케이션)를 선택하고 이것에, 번역이 되고 따라서 종래의 이해할 수 있는 명령어인, "APDU" 명령어를 전송한다. 따라서, 상기 애플리케이션은 올바르게 구동되므로, 수정되거나 재작성될 필요가 없다.
상기 "CGA" 애플리케이션(Ai)으로부터의 응답은 "APDU" 명령어 처리기(201a), "APDU" 에이전트(2010a)로 전송된 후, 다시 에이전트 ATSi(및 보다 일반적으로는 스크립트 번역 에이전트로)로 전송된다.
상기 스크립트 실행의 성공 또는 실패에 따라, 스크립트 번역 에이전트, 예컨대 도5a의 예에 있는 에이전트(ATSi)는 , "HTML" 언어로 된 페이지를 생성하고, 이를 초기 리퀘스트에 의해 사용된 다양한 레이어들을 통해 전송하지만, 반대 방향에서, 상기 페이지는 표시화면(5)에 나타난다(도1).
많은 경로가 도5a에서 기능적인 블록 또는 이들 블록 내부에 있는 점선들을 연결하는 실선에 의해 기호로서 나타난다.
본 방법 발명의 다른 특징에 따르면, 칩 카드(2a)는 종래의 터미널과 접속하여 계속 사용될 수 있어야만 한다. 이러한 경우, 칩 카드는 더 이상 "웹" 서버의 역할을 하지 못하며, 상기 "인텔리전트 에이전트" 기능은 사용되지 않는다. 특정의 레이어(23a)(도2)에 있어서도 마찬가지다. 많은 이들 구성요소는 터미널과 칩 카드간의 교환에 있어서 "투명성"이 보장된다. 상기 교환은, 도1a 및 1b와 관련하여 설명된 바와 같이, 터미널에 있는 애플리케이션과 칩 카드에 있는 애플리케이션간의 "APDU" 명령어의 교환을 통해 순수한 종래 방식으로 발생한다.
도7은 이상 기술된 과정의 주요 단계를 도식적으로 요약한다.
a/ 인터넷 네트워크(RI)를 통해(또는 로컬 터미널로부터: 양자 모두의 겨우 종래의 브라우저(10)를 이용), RQ로서 참조되는, "HTTP" 리퀘스트의 전송;
b/ 폼의 형태로, FQ로 참조되는, 칩 카드(2a)의 "웹" 서버로부터의 응답;
c/ 새로운 리퀘스트(RQ)의 형태로, 채워진 폼의 전송; 및
d/ PR로서 참조되는, "HTML" 페이지 폼의 응답.
또한, 상기 응답은 파일, 또는 하나의 소프트웨어 즉 "애플릿(Applet)"의 전송으로 될 수 있다.
본 발명에 따른 방법의 다른 특징에 따르면, 또한 실시예의 추가적인 변경에 있어서, 시스템은 새로운 애플리케이션을 수용할 수 있다. 이는, "APDU" 명령어를 교환할 필요가 없는 애플리케이션을 의미하는 것으로 이해된다. 상기 ISO 표준에 따르지 않는, 이러한 애플리케이션 유형은, 종래의 터미널로는 접근할 수 없고, 아키텍처의 추가적인 변경이 필요 없이 소정의 레이어(13)를 포함하는 본 발명에 따른 터미널에 의해 접근할 수 있다.
도5b는 상기 추가적인 변경에 따른 전형적인 아키텍처를 도식적으로 예시한다. 상기 애플리케이션은 A1' 내지 An'으로 참조된다.
이러한 추가적인 변경에 따른 방법의 제1 단계는, 도5a와 관련된 상기 위상과 동일하지는 않더라도 유사하다. 그러나, 스크립트의 번역은, "전용 및 자발적인 스크립트 번역 에이전트" 또는 "ATSDA"라 불리는 소정의 인텔리전트 에이전트에 의 해 행해진다. 이전과 같이, 이러한 에이전트는 2배 용량의 "웹" 에이전트(232a1)이거나, 전 시스템에 유일한 "ATSDA" 에이전트, 또는 2배 용량을 가진 "APDU" 에이전트(2010a), 또는 심지어 도5b에 나타난 바와 같이, ATS1' 내지 ATSn'으로 참조되는, 복수의 에이전트인 "ATSDA"가 될 수 있다. 후자의 경우, 각각의 에이전트 "ATSDA"는 단지 하나의 애플리케이션과 관련된다.
도5b에서 쉽게 볼 수 있는 바와 같이, 터미널(1)과 칩 카드(2a) 사이의 데이터 교환은 소정의 레이어(13,23a) 사이에서 직접 발생한다. 따라서, 애플리케이션과 "APDU" 명령어 처리기 사이의 다른 결합은 없다. 그러나, 추가적인 변경에 있어서, 후자는 종래의 프로토콜 레이어와 함께 여전히 존재할 수 있다. 터미널(1)에 대해서도 마찬가지다. 이들 구성요소는 점선으로 표시된다. 상기 구성은 몇 가지 장점이 있다. 우선, 터미널(1)은 어떠한 구조적인 변경도 수반하지 않고, 새로운 애플리케이션을 포함하는 칩 카드, 또는 전적으로 종래의 기술인 칩 카드와 통신할 수 있다. 둘째로, 칩 카드(2a) 자체가 종래의 프로토콜 레이어를 포함한다면, 이는, 도5a와 관련하여 설명된 방법에 따라 또는 종래의 터미널을 통해 접근할 수 있는 "CGA" 타입의 종래의 애플리케이션, 및 방금 설명된 방법의 변경만에 의해 접근할 수 있는 새로운 애플리케이션을 모두 저장할 수 있다.
본 방법 발명의 다른 특징에 따라, 또한 도5c에 의해 도식적으로 예시된 실시예의 추가적인 변경에 있어서, 새로운 애플리케이션을 칩 카드(2a)에 동적으로 다운로드(download)할 수 있다. 또한, 동적으로 기존 애플리케이션을 업데이트 또는 삭제할 수 있는데, 이는 종래 기술의 칩 카드로는 불가능하다. 이때, 칩 카드에 서 이루어진 정정과 일치시키기 위해 터미널을 정정할 필요가 있다.
도5c에서, 칩 카드(2a)의 구성요소만을 나타내고 있지만, 터미널은 상기 장점들을 활용하기 위해 본 발명(예컨대, 도2 참조)에 따른 구성을 갖출 필요가 있다. 본질적으로, 본 방법 발명의 일 특징에 따르면, 칩 카드(2a)에 의해 제공된 "웹" 서버 기능을 사용할 필요가 있다. 이러한 이유로, 터미널은 소정의 레이어(13)를 포함해야 한다(도2).
칩 카드(2a)의 일반적인 구조는 도5a를 참조하여 기술된 바와 유사하므로, 공통 구성요소는 필요한 경우에만 다시 기술한다.
문제는 칩 카드(2a)에서 하나 또는 그 이상의 추가적인 애플리케이션을 다운로드받아 저장할 수 있는 가이다. 상기 개념을 설명하기 위해, 애플리케이션 Aj를 추가하고자 한다면, 칩 카드(2a)에 있는 애플리케이션의 총 수는 반드시 n+1 이어야 한다. 새로운 애플리케이션뿐만 아니라 현행의 애플리케이션도 종래의("CGA") 타입이라고 가정하지만, 새로운 애플리케이션도 또한 동일 방법으로 칩 카드(2a)로 다운로드될 수 있다.
종래의 기술에서, 이하 "다운로더"라 호칭되는, "로더"로 알려진 하나의 소프트웨어(6)를 제공하는 것이 관례다. 칩 카드(2a)는, 새로운 애플리케이션을 다운로드하여 저장할 수 있고, EXT로 참조되는 적당한 외부 기계장치에 위치한다.
본 방법 발명에 따르면, 다른 소프트웨어(7)가 제공되고, 그 기능은 다운로드를 감독하는 것이다. "다운로드"(6) 및 "다운로드 감독"(7)은 소프트웨어(6)를 수정함으로써 결합될 수 있다.
추가적인 소프트웨어(7)는, 이 경우 애플리케이션(Aj)인 새로운 애플리케이션의 다운로드를 탐지할 때, "APDU" 명령어 처리기에게 "통지"한다. 다음, 후자는 상기 수정사항을 기록한다. 그때부터, "APDU" 명령어 처리기는 애플리케이션(Aj)의 주소를 가리킬 수 있다. 마찬가지로, 소정의 레이어, 특히, 칩 카드(2a)의 구성 처리기인 컴포넌트(231a)가 업데이트된다. 또한, 그것이 유일한 에이전트라면 적절한 번역 에이전트인 "ATS", "ATSD" 또는 "ATSDA"를 업데이트하거나, 또는 새로운 애플리케이션(Aj)과 관련하여 새로운 에이전트(ATSj)를 생성할 필요가 있다. 상기 업데이트에 필요한 정보는 새로운 애플리케이션(Aj)과 동시에 다운로드된다.
상기 애플리케이션들은 동일 메카니즘을 이용하여 업데이트되거나 삭제될 수 있다.
칩 카드(2a)가 본 발명에 따라 터미널에 다시 접속될 때, 후자는, 도5a를 참조하여 기술된 것과 유사한 방법으로 "HTML" 페이지를 보내는 것에 의해, 칩 카드의 새로운 능력 또는 임의의 수정사항을 통지받을 수 있다.
도5d에 의해 도식적으로 예시된 다른 추가적인 변경에 있어서, 전용 스크립트 번역기(ATS0)와 관련하여, 통상 A0로 참조되는 소정의 애플리케이션이, 칩 카드(2)에서 제공된다. 그러나, 상기 번역기는 또한 상기("웹" 에이전트 등)와 같이, 중앙집중적인 방식으로 행해질 수 있다. 상기 애플리케이션(A0)에는, 다운로드, 수정 또는 삭제된 애플리케이션을 다운로드 및 감독하는 역할이 부여된다. 칩 카드(2a)가 본 발명에 따라 터미널(1)에 접속될 때, 애플리케이션(A0)과 상호작용하는 번역 에이전트(ATS0)는 업데이트 페이지라 호칭될 PMAJ 페이지를 생성한다. 후자는, 버전 및/또는 다운로드 또는 수정한 날짜에 대해 있을 수 있는 정보에 대해, 칩 카드(2a)에 있는 애플리케이션을 가리키는 메뉴의 형태로 제공되며, 상기 메뉴는 터미널(1)의 브라우저(10)의 리퀘스트시 자동으로 전송된다.
바람직한 변경에 있어서, 애플리케이션의 다운로드, 업데이트 또는 삭제는, 칩 카드(2a)의 "웹" 서버 기능을 이용하여, 브라우저(10)로부터 직접 행해진다. 필요한 데이터는 통상의 절차에 따라 터미널(1)과 칩 카드(2a)간의 교환에 의해 전송된다. 다음, 상기 애플리케이션(A0)은, 특히 "APDU" 명령어 처리기(도5d에서 도시 안됨)와의 상호작용에 의해, 칩 카드(2a)의 구성 정보에 대한 업데이트를 담당하고, 또한 새로운 애플리케이션 또는 수정된 애플리케이션과 관련된 스크립트 번역기를 업데이트하거나 생성하는 것을 담당할 수도 있다. 다음, 상기 "APDU" 명령어 처리기는 새로운 다운로드 애플리케이션의 주소를 지정할 수 있다.
따라서, 애플리케이션(A0) 및 그 스크립트 번역기는, 중앙집중식이거나 또는 그렇지 않거나(ATS0), 애플리케이션을 업데이트하기 위한 완전한 서비스, 및 칩 카드(2a)에 의해 제공되는 부가 서비스를 구성한다. 상기 업데이트 서비스가 기존의 구성요소와 호환가능하다는 것은 명백하다. 우선, 칩 카드(2a)는 외부 장치(EXT)로부터 계속하여 로드될 수 있고, 2차적으로, 브라우저(10)에 의해 다운로드 또는 업데이트된 애플리케이션은 종래의 "CGA" 타입 또는 새로운 타입이 될 수 있다. 제1 의 경우에, 상기 칩 카드(2a)는 종래 기술의 터미널과 호환가능하다.
상기를 숙독함으로써, 본 발명이 그 목적을 명백히 달성할 수 있다는 것은 쉽게 알 수 있다.
특히, 본 발명은, 애플리케이션 및 현행 표준과의 호환성을 유지하면서, 많은 부가적인 기능을 제공한다. 또한, 본 발명(소정 레이어)과 일치시키기 위해 요구되는 수정을 제외하고는, 칩 카드와 교신하는 터미널의 구조를 변화시킬 필요 없이, 본 발명은, 소위 "네이티브(native)"라 할 수 있는, 새로운 타입의 애플리케이션을 수용할 수 있다.
그러나, 본 발명이, 특히 도2 내지 7과 관련하여 명시적으로 기술된 전형적인 실시예에 한정되지 않음은 명백하다.
특히 본 발명은, 전자 퍼스(purse) 서비스에 적용되지만, 결코 이에 한정되는 것은 아니다.
본 발명은 네트워크 인터페이스 수단을 포함하는 내장 시스템과, 이에 설치된 응용프로그램을 구동시키는 방법에 관한 것이다.

Claims (18)

  1. "웹" 브라우저(10)에 의해, 칩 카드에 대한 판독기(3)를 갖는 로컬 터미널(1)에 접속된 칩 카드(2a)에 위치한 하나 이상의 애플리케이션(A1-An)을 활성화하는 방법으로서,
    상기 방법은,
    a/ 제1 예비단계에서 소정의 제1 피스의 소프트웨어(23a)를 칩 카드(2a)에 설치하고, 칩 카드(2a)에 저장된 상기 애플리케이션(A1-An)과 인터페이스를 형성하는 단계; 및
    b/ 제2 예비단계에서 소정의 제2 피스의 소프트웨어(13)를 터미널(1)에 설치하고 상기 "웹" 브라우저(10)와 인터페이스를 형성하는 단계를 포함하고,
    - 소정의 상기 제1 및 제2 피스의 소프트웨어(13,23a)는, 한 쌍의 제1 매칭 소프트웨어 엔티티(132,132a)를 포함하고, 상기 각각의 엔티티(132,132a)는, 상기 터미널(1)과 상기 칩 카드(2a) 간에 양방향 데이터 교환 세션을 형성하도록 상호작용하여, 상기 칩 카드(2a)가 정보 서버의 기능을 제공하도록 하고,
    - 제3 예비단계에서 상기 칩 카드(2a)에 제2 소프트웨어 엔티티(ATS1-ATSn)를 설치하는 단계로서, 상기 제2 소프트웨어 엔티티는, 상기 애플리케이션(A1-An) 및 상기 제2 소정의 소프트웨어(23a)와 상호작용하고 또한 인스트럭션 시퀀스를 해석하고 상기 시퀀스를 일련의 명령어로 번역할 수 있도록 하며,
    상기 방법은,
    1/ 상기 애플리케이션 중 하나(Ai)에 접근할 리퀘스트를 전송하기 위해, 상기 제1 매칭 소프트웨어 엔티티(132,132a1) 쌍들중 하나를 통해, 상기 터미널(1)과 상기 칩 카드(2a) 사이의 데이터 교환 세션을 형성하는 단계;
    2/ 상기 제2 소프트웨어 엔티티(ATSi)들중 하나에 의해 상기 리퀘스트를 수신하고, 상기 인스트럭션 시퀀스들중 하나를 번역하는 단계로서, 상기 하나의 번역된 인스트럭션 시퀀스는 액세스되는 상기 애플리케이션(Ai)과 연관되고, 상기 번역된 명령어를 상기 애플리케이션에 전송하여 액세스된 애플리케이션을 활성화시키기 위한, 단계; 및
    3/ 상기 리퀘스트에 대한 응답을, 상기 제2 소프트웨어 엔티티(ATSi) 및 소정의 상기 제1 피스의 소프트웨어(13) 및 제2 피스의 소프트웨어(23a)를 통해, 상기 "웹" 브라우저(10)에 생성 및 전송하는 단계를 더 포함하는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  2. 제1항에 있어서, 상기 칩 카드 판독기(3) 및 칩 카드(2a)는 상기 데이터 전송을 위한 제1 및 제2 프로토콜 스택을 포함하며, 그 각각은, 상기 칩 카드(2a) 및 상기 터미널(1) 간에 상기 데이터 교환을 허용하기 위해, 하위의 소프트웨어 통신 레이어(101,200a)를 포함하고, 이들 하위의 통신 레이어는 상기 제1 피스의 소정 소프트웨어(13) 및 제2 피스의 소정 소프트웨어(23a)와 하나의 인터페이스를 형성하며, 이들 소정의 소프트웨어(13,23a) 각각은 상기 제1 및 제2 프로토콜 스택의 상기 하위 소프트웨어 통신 레이어(101,200a)와 하나의 인터페이스를 형성하는 데이터 전송 모듈(130,230a) 및 매니지먼트 모듈(131,231a)에 의해 구성되는 2개의 부가적 엔티티를 포함하고, 상기 각 쌍의 제1 엔티티들은 상기 세션들을 형성하는 인텔리전트 에이전트 소프트웨어 모듈(132,232a1)에 의해 구성되는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  3. 제2항에 있어서, 해석될 상기 인스트럭션 시퀀스는 하나의 스크립트로 구성되고, 상기 각각의 제2 소프트웨어 엔티티는, 하나의 스크립트 번역 인텔리전트 에이전트(ATS1-ATSn) 소프트웨어 모듈로 구성되는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  4. 제3항에 있어서, 상기 모든 애플리케이션에 공통되는, 단 하나의 스크립트 번역 에이전트가 제공되는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  5. 제4항에 있어서, 상기 스크립트 번역 에이전트는 상기 세션들을 형성하는 상기 인텔리전트(232a1)와 합체되는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  6. 제3항에 있어서, 복수의 소위 전용 스크립트 번역 에이전트(ATS1-ATSn)가 제공되고, 각각의 전용 스크립트 번역 에이전트는 상기 애플리케이션(A1-An)중 하나와만 연관되는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  7. 제3항에 있어서, 상기 애플리케이션이, ISO 7816 표준에 의해 정의되는 일련의 "APDU" 명령어에 의해 활성화되고, 상기 터미널(1) 및 상기 칩 카드(2a)는 부가적인 "APDU" 명령어 처리기 소프트웨어 엔티티(102,201a)를 포함하고, 상기 하위 통신 레이어(101,200a)의 제1 레이어(101)와 제2 레이어(200a) 프로토콜 스택 사이, 및 상기 소정 소프트웨어의 제1 피스(13)와 제2 피스(23a) 사이의 상기 인터페이스는 상기 명령어 처리기(102,201a)에 의해 형성되는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  8. 제7항에 있어서, 칩 카드(2a)에 있는 상기 명령어 처리기(201a)는 상기 애플리케이션(Ai-An)의 구성을 기술하는 데이터를 명확히 저장하고, 상기 방법은, 상기 구성 데이터를 사용하여, 칩 카드(2a)의 상기 애플리케이션들 중 하나(Ai)를 액세스하도록 하는 상기 리퀘스트의 수신에 따라, 액세스될 상기 애플리케이션 및 이 애플리케이션과 연관된 스크립트 번역 인텔리전트 에이전트(ATSi)의 하나를 상기 명령어 처리기(201a)에 의해 선택하고, 상기 명령어 처리기(201a)에 의해 번역된 상기 명령어를 수신하고 상기 선택된 애플리케이션(Ai)에 이들 명령어를 보내는 단계를 포함하는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  9. 제8항에 있어서, 칩 카드(2a)의 상기 명령어 처리기(201a)는 또한, 다른 인텔리전트 에이전트와 양방향 데이터 교환 세션을 형성할 수 있도록 하는 명령어 처리 인텔리전트 에이전트(2010a) 소프트웨어 엔티티를 포함하며, 상기 칩 카드(2a)는 상기 명령어 처리 인텔리전트 에이전트(2010a)에 합체되는 오로지 하나의 스크립트 번역 인텔리전트 에이전트를 포함하는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  10. 제8항에 있어서, 상기 칩 카드(2a)는 또한, 외부 구성요소(EXT)로부터 하나 이상의 부가적인 애플리케이션(Aj)를 다운로드 및 저장할 수 있도록 하는 제1의 다른 소프트웨어 엔티티(6)를 포함하며, 상기 다운로드를 검지 및 감시하기 위한 소프트웨어 엔티티(7)가 제공되고, 부가적인 애플리케이션(Aj)의 다운로드가 검지될 때, 상기 구성 데이터를 업데이트하고 상기 부가적인 애플리케이션(Aj)과 연관된 스크립트 번역 인텔리전트 에이전트(ATSj)를 생성 또는 업데이트하기 위한 단계를 실행하고, 상기 칩 카드(2a)가 터미널(1)에 다시 접속도리 때, 상기 칩 카드(2a)의 정보 서버 기능을 이용하여, 칩 카드의 업데이트를 반영하는 데이터를 상기 터미널(1)에 전송하는 단계를 실행하는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  11. 제8항에 있어서, 상기 칩 카드(2a)에서, 소정의 애플리케이션(A0) 및 이와 관련하여 상기 정보 서버 기능을 통해 칩 카드(2a)에 대한 업데이트 서비스를 제공하도록 설계된 스크립트 번역 인텔리전트 에이전트(ATS0)를 설치하는 것으로 구성된 부가적인 예비 단계를 포함하며,
    상기 방법은,
    1/ 상기 "웹" 브라우저(10)의 제어하에, 상기 소정의 애플리케이션(A0)에 대한 액세스 리퀘스트를 전송하기 위해, 제1 매칭 소프트웨어 엔티티를 형성하는 상기 인텔리전트 에이전트(132,231a) 쌍들중 하나를 통해, 상기 터미널(1)과 상기 칩 카드(2a)간에 데이터 교환 세션을 형성하며, 부가적인 애플리케이션의 로딩을 구성하는 소정의 작용을 일으키는 데이터를 전송하고, 상기 애플리케이션중 하나를 업데이트 하거나 삭제하는 단계;
    2/ 상기 번역 인텔리전트 에이전트(ATS0)에 의해 상기 리퀘스트를 수신하며, 상기 소정의 애플리케이션(A0)과 관련된 인스트럭션 시퀀스를 번역하고, 상기 애플리케이션(A0)을 구동시키기 위해 이에 상기 번역된 명령어들을 전송하여 상기 소정의 동작을 행하고 상기 구성 데이터를 업데이트하는 단계; 및
    3/ 상기 스크립트 번역 인텔리전트 에이전트(ATS0)를 통해, 또한 소정의 상기 제1 피스의 소프트웨어(13) 및 제2 피스의 소프트웨어(23a)를 통해, 상기 칩 카드(2a)의 새로운 구성을 반영하는 데이터를 포함하는 상기 리퀘스트에 대한 응답을 상기 "웹" 브라우저에 생성 및 전송하는 단계를 포함하는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  12. 제1항에 있어서, 상기 애플리케이션중 하나를 액세스하는 상기 리퀘스트는 하나의 폼(form)을 구비하는 "HTML" 언어로 된 페이지로 구성되고, 상기 폼은 사용자가 소정의 유효한 동작을 행할 때, 상기 연관 데이터가 상기 칩 카드(2a)에 전송되도록 하기 위해, 상기 "웹" 브라우저(10)를 통해 상기 사용자에 의해 입력될 하나 이상의 데이터 필드(Ch1,Ch2) 및/또는 체크될 하나의 박스를 포함하는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  13. 제1항에 있어서, 상기 응답은 "HTML" 언어로 된 페이지를 상기 "웹" 브라우저(10)로 전송하는 것을 포함하는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  14. 제1항에 있어서, 상기 "웹" 브라우저(10)는 상기 로컬 터미널(1)에 위치된 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  15. 제1항에 있어서, 상기 데이터 전송 네트워크는 인터넷 형 네트워크(RI)이며, 이 네트워크(RI)는 소정 개수의 소프트웨어 통신 레이어(C1-C4)를 포함하는 제3 프로토콜 스택에 의해 기술되고, 상기 제1 소정의 소프트웨어(13)는 제1 프로토콜 스택의 상기 하위 레이어(CC2-CC1) 및 상기 제3 프로토콜 스택(C2,C3)의 소정 레이어들과 인터페이스를 형성하는 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  16. 제15항에 있어서, 상기 "웹" 브라우저(10)는 상기 인터넷 형 네트워크(RI)에 접속된 원격 터미널(4)에 위치한 것을 특징으로 하는, 애플리케이션을 활성화하는 방법.
  17. 정보처리수단 및 정보저장수단을 구비하고, 터미널(1)을 통해 인터넷 형태의 네트워크(RI)와 상호작용하도록 설계되며, 상기 정보저장수단은 하나 이상의 애플리케이션(A1-An)을 저장하기 위한 수단을 포함하는 내장 시스템(on-board system))(2a)으로서,
    - 상기 내장 시스템(2a)이 네트워크(RI)에서 정보 서버를 구성하도록, 터미널(1)에 있는 매칭 네트워크 인터페이스 수단과 상호작용하도록 설계되고, 애플리케이션을 활성화하도록 "웹" 브라우저로부터 리퀘스트를 수신할 수 있는, 네트워크 인터페이스 수단(23a); 및
    - 상기 내장 시스템에 저장된 상기 애플리케이션(A1-An)의 네트워크(RI) 상의 어드레스와, 상기 네트워크 인터페이스 수단과 상기 애플리케이션(A1-An) 간의 정보 교환을 위한 인스트럭션 사이에 대응관계(correspondence)를 확립하기 위한 애플리케이션 인터페이스 수단(ATS1-ATSn)을 포함하고, 상기 애플리케이션 인터페이스 수단은, 상기 애플리케이션(A1-An)에 의해 전송된 애플리이션을 활성화하기 위한 리퀘스트와 상기 네트워크(RI)를 통해 전송된 응답 사이의 대응관계를 확립할 수 있고, 상기 응답 인스트력션은, 상기 응답의 수령인의 네트웍크(RI) 상의 어드레스를 포함하는 것을 특징으로 하는, 내장 시스템.
  18. 정보처리수단 및 정보저장수단을 구비하고, 터미널(1)을 통해 인터넷 형태의 네트워크(RI)와 상호작용하도록 설계되며, 내장 시스템(2a)에 저장된 하나 이상의 애플리케이션(A1-An)을 활성화하기 위한 방법으로서, 상기 방법은 내장 시스템(2a)을 사용하고 상기 내장 시스템은,
    - 상기 내장 시스템(2a)이 네트워크(RI)에 정보 서버를 구성하도록, 터미널(1)에 있는 매칭 네트워크 인터페이스 수단과 상호작용하도록 설계된 네트워크 인터페이스 수단, 및
    - 상기 내장 시스템(2a)에 저장된 애플리케이션(A1-An)의 네트워크(RI)상의 어드레스와, 상기 네트워크 인터페이스 수단과 상기 애플리케이션(A1-An) 간의 정보 교환을 위한 인스트럭션 사이에 대응관계를 확립하도록 설계된 애플리케이션 인터페이스 수단을 포함하고,
    상기 방법은,
    - 상기 애플리케이션을 활성화하기 위한 리퀘스트를 상기 내장 시스템(2a)에 전송하기 위해 상기 터미널과 내장 시스템 사이에 정보교환 세션을 형성하기 위해 상기 매칭 네트워크 인터페이스 수단을 사용하는 단계;
    - 상기 네트워크 인터페이스 수단과 상기 애플리케이션(A1-An) 사이에 정보교환을 위한 인스트럭션과 상기 어드레스 사이에 대응관계를 확립하기 위해 상기 애플리케이션 인터페이스 수단을 사용하는 단계; 및
    - 상기 애플리케이션(A1-An)에 의해 송출된 상기 리퀘스트에 대한 응답과 네트워크(RI)를 통해 송출된 응답 인스트럭션 사이에 대응관계를 확립하기 위해 상기 애플리케이션 인터페이스 수단을 사용하는 단계를 포함하고, 상기 인스트럭션은 상기 응답의 수령인의 네트웍크(RI) 상의 어드레스를 포함하는 것을 특징으로 하는, 내장 시스템에 저장된 하나 이상의 애플리케이션을 활성화하는 방법.
KR1020007011619A 1999-02-19 2000-02-17 네트워크 인터페이스 수단을 포함하는 내장 시스템 및 이에 설치된 응용프로그램을 활성화하는 방법 KR100641241B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9902056A FR2790629A1 (fr) 1999-02-19 1999-02-19 Procede d'activation d'applications localisees dans une carte a puce par un navigateur du type dit "web"
FR99/02056 1999-02-19

Publications (2)

Publication Number Publication Date
KR20010052263A KR20010052263A (ko) 2001-06-25
KR100641241B1 true KR100641241B1 (ko) 2006-10-31

Family

ID=9542260

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020007011619A KR100641241B1 (ko) 1999-02-19 2000-02-17 네트워크 인터페이스 수단을 포함하는 내장 시스템 및 이에 설치된 응용프로그램을 활성화하는 방법

Country Status (10)

Country Link
US (1) US6839756B1 (ko)
EP (1) EP1074007A1 (ko)
JP (1) JP3913984B2 (ko)
KR (1) KR100641241B1 (ko)
CN (1) CN1179307C (ko)
AU (1) AU775230B2 (ko)
CA (1) CA2329044C (ko)
FR (1) FR2790629A1 (ko)
TW (1) TW462029B (ko)
WO (1) WO2000049584A1 (ko)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2791159B1 (fr) * 1999-03-15 2001-05-04 Bull Cp8 Procede d'acces a un objet a l'aide d'un navigateur de type "web" cooperant avec une carte a puce et architecture pour la mise en oeuvre du procede
FR2793576B1 (fr) * 1999-05-11 2001-11-16 Gemplus Card Int Terminal radiotelephonique avec une carte a puce dotee d'un navigateur
ATE290744T1 (de) * 1999-11-19 2005-03-15 Swisscom Mobile Ag Anpassbare chipkarte
FR2805107B1 (fr) * 2000-02-10 2002-04-05 Bull Cp8 Procede de gestion de transmissions de donnees multimedias via un reseau de type internet, notamment de donnees telephoniques, et carte a puce pour la mise en oeuvre du procede
FR2805059A1 (fr) * 2000-02-10 2001-08-17 Bull Cp8 Procede de chargement d'une piece de logiciel dans une carte a puce, notamment du type dit "applet"
WO2002065287A1 (en) 2001-02-16 2002-08-22 Sony Corporation Data processing method and its apparatus
JP4765174B2 (ja) * 2001-02-16 2011-09-07 ソニー株式会社 アプリケーション実行装置、通信システム、およびアプリケーション実行方法
FR2828358B1 (fr) * 2001-08-02 2004-01-16 Gemplus Card Int Procede et dispositif de mise en compatibilite de communication sur reseau de terminaux, par exemple pour permettre un dialogue avec une application sur une carte a puce
ES2262828T3 (es) * 2001-08-24 2006-12-01 Windmill Microsystems Holding B.V. Sistema para la adquisicion remota de datos basado en la comunicacion de mensajes por correo electronico a traves de redes publicas y privadas.
US7346783B1 (en) * 2001-10-19 2008-03-18 At&T Corp. Network security device and method
JP3758554B2 (ja) * 2001-10-31 2006-03-22 ソニー株式会社 情報提供システム及び情報提供方法、記憶媒体、並びにコンピュータ・プログラム
US7783901B2 (en) * 2001-12-05 2010-08-24 At&T Intellectual Property Ii, L.P. Network security device and method
US20030217125A1 (en) * 2002-05-15 2003-11-20 Lucent Technologies, Inc. Intelligent end user gateway device
US20030217129A1 (en) * 2002-05-15 2003-11-20 Lucent Technologies Inc. Self-organizing intelligent network architecture and methodology
TWI226588B (en) * 2003-04-23 2005-01-11 Winbond Electronics Corp Contactless radio frequency magnetic field data transmission card and associated application system
US8719840B2 (en) * 2005-02-17 2014-05-06 Koninklijke Philips N.V. Device for secure interprocess communication
DE102007041270A1 (de) * 2007-08-31 2009-03-05 Printed Systems Gmbh Multimediasystem
CN101184057B (zh) * 2007-10-24 2011-08-24 中兴通讯股份有限公司 在ims系统中传递事件信息的系统及方法
JP2009163384A (ja) * 2007-12-28 2009-07-23 Kyodo Printing Co Ltd データ入力システム及びデータ入力方法
US8838989B2 (en) * 2008-01-24 2014-09-16 Blackberry Limited Optimized biometric authentication method and system
US9378346B2 (en) * 2008-01-24 2016-06-28 Blackberry Limited Optimized biometric authentication method and system
EP2297707B1 (en) 2008-06-24 2013-10-02 Nxp B.V. Method of accessing applications in a secure mobile environment
EP2273748A1 (en) * 2009-07-09 2011-01-12 Gemalto SA Method of managing an application embedded in a secured electronic token
EP2395427A1 (en) * 2010-06-08 2011-12-14 Gemalto SA Method for connecting to a remote server from a browser enabled with a browser's extension on a host device

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2657445B1 (fr) * 1990-01-25 1992-04-10 Gemplus Card Int Procede de chargement de programmes d'application dans un lecteur de carte a memoire a microprocesseur et systeme destine a sa mise en óoeuvre.
FR2704704B1 (fr) * 1993-04-28 1995-09-01 Gemplus Card Int Systeme de communication.
AUPN447595A0 (en) * 1995-07-31 1995-08-24 Achelles, Peter Remote smart card terminal link
US6078308A (en) * 1995-12-13 2000-06-20 Immersion Corporation Graphical click surfaces for force feedback applications to provide user selection using cursor interaction with a trigger position within a boundary of a graphical object
US5943423A (en) * 1995-12-15 1999-08-24 Entegrity Solutions Corporation Smart token system for secure electronic transactions and identification
SE509033C2 (sv) * 1996-06-26 1998-11-30 Telia Ab Metod för säker överföring av datainformation mellan Internet www-servar och dataterminaler
CN1183449C (zh) * 1996-10-25 2005-01-05 施卢默格系统公司 用微控制器使用高级程序设计语言
US6293865B1 (en) * 1996-11-14 2001-09-25 Arcade Planet, Inc. System, method and article of manufacture for tournament play in a network gaming system
US6645068B1 (en) * 1996-11-14 2003-11-11 Arcade Planet, Inc. Profile-driven network gaming and prize redemption system
US6454648B1 (en) * 1996-11-14 2002-09-24 Rlt Acquisition, Inc. System, method and article of manufacture for providing a progressive-type prize awarding scheme in an intermittently accessed network game environment
EP0943136A1 (en) * 1996-12-03 1999-09-22 Strategic Analysis, Inc. Method and apparatus for formatting smart cards and card readers
ATE281680T1 (de) * 1997-03-24 2004-11-15 Visa Int Service Ass System und verfahren für eine mehrzweckchipkarte die eine nachträgliche speicherung einer anwendung auf dieser karte ermöglicht
GB2326010A (en) * 1997-06-07 1998-12-09 Ibm Data processing system using active tokens

Also Published As

Publication number Publication date
AU2809900A (en) 2000-09-04
AU775230B2 (en) 2004-07-22
JP2002537617A (ja) 2002-11-05
CA2329044A1 (en) 2000-08-24
WO2000049584A1 (fr) 2000-08-24
EP1074007A1 (fr) 2001-02-07
JP3913984B2 (ja) 2007-05-09
CA2329044C (en) 2011-07-12
TW462029B (en) 2001-11-01
KR20010052263A (ko) 2001-06-25
FR2790629A1 (fr) 2000-09-08
US6839756B1 (en) 2005-01-04
CN1179307C (zh) 2004-12-08
CN1352782A (zh) 2002-06-05

Similar Documents

Publication Publication Date Title
KR100641241B1 (ko) 네트워크 인터페이스 수단을 포함하는 내장 시스템 및 이에 설치된 응용프로그램을 활성화하는 방법
CA2332283C (en) Method for accessing an object using a "web" browser cooperating with a smart card, and architecture for implementing the method
KR100723006B1 (ko) 인터넷형 네트워크 서버 디렉토리상에 유저를 등록하고상기 네트워크 상에 유저를 위치 설정하기 위한 방법 및이를 위한 스마트 카드
US6336137B1 (en) Web client-server system and method for incompatible page markup and presentation languages
KR100791946B1 (ko) 인터넷형 네트워크를 통해 서버와 통신하도록 설계된스마트카드 리더를 구비한 보안 단말기
KR100886137B1 (ko) 스마트카드에 소프트웨어 콤포넌트, 특히 애플릿을로딩하는 방법
US7340506B2 (en) Value-added network switching and object routing
EP1107131A2 (en) Virtual machine web browser
AU776550B2 (en) Method and architecture for remote monitoring of a user station via an internet-type network and application thereof to a smart card demonstrator
Grimaud et al. Introducing research issues for next generation Java-based smart card platforms

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
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

Payment date: 20121015

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131007

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee