KR20010043648A - 스마트 카드와 함께 작동하는 “웹” 브라우저를 이용하여오브젝트에 접근하기 위한 시스템 - Google Patents

스마트 카드와 함께 작동하는 “웹” 브라우저를 이용하여오브젝트에 접근하기 위한 시스템 Download PDF

Info

Publication number
KR20010043648A
KR20010043648A KR1020007012833A KR20007012833A KR20010043648A KR 20010043648 A KR20010043648 A KR 20010043648A KR 1020007012833 A KR1020007012833 A KR 1020007012833A KR 20007012833 A KR20007012833 A KR 20007012833A KR 20010043648 A KR20010043648 A KR 20010043648A
Authority
KR
South Korea
Prior art keywords
network
object file
terminal
embedded system
information
Prior art date
Application number
KR1020007012833A
Other languages
English (en)
Other versions
KR100693196B1 (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 미쉘 꼴롱브
Publication of KR20010043648A publication Critical patent/KR20010043648A/ko
Application granted granted Critical
Publication of KR100693196B1 publication Critical patent/KR100693196B1/ko

Links

Classifications

    • 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/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/105Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems involving programming of a portable memory device, e.g. IC cards, "electronic purses"
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/59Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/289Intermediate processing functionally located close to the data consumer application, e.g. in same machine, in same home or in same sub-network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은, 인터넷(RI)에 접속된 시스템에 분포된 가상 오브젝트(Obvi)에 확실히 접근하고, 이로부터 하나의 인스턴스(instance)를 얻기 위한 아키텍처에 관한 것이다. 상기 접근은, 스마트 카드(2a)와 "웹(WEB)" 브라우저(10)를 통해 행해진다. 단말기(1)와 스마트 카드(2a)는 각각의 특정 프로토콜 레이어(13,23a)를 구성한다. 상기 스마트 카드(2a)는 2-웨이 데이터 교환 세션을 형성하기 위한 인텔리전트 에이전트(132,232a1)를 포함하고, 이로써 "웹" 서버 기능을 갖는다. 또한, 상기 스마트 카드(2a)는 스크립트 번역기라 호칭되는 인텔리전트 에이전트, 및 특화된 스크립트 번역기 인텔리전트 에이전트(7)와 함께 동작하는 가상 파일 관리 시스템(8)을 포함한다. 각각의 가상 오브젝트(Obvi)는 가상 파일 관리 시스템의 가상 파일과 관련된다. 상기 특화된 인텔리전트 에이전트(7)는 접근가능한 가상 오브젝트(Obvi) 리스트를 브라우저(10)에 제공하고, 상기 오브젝트에 접근하는 방법을 생성한다.

Description

스마트 카드와 함께 작동하는 “웹” 브라우저를 이용하여 오브젝트에 접근하기 위한 시스템{SYSTEM FOR ACCESSING AN OBJECT USING A “WEB” BROWSER CO-OPERATING WITH A SMART CARD}
본 발명의 범위 내에서, "오브젝트(object)"라는 용어는 가장 일반적인 의미로 고려되어야 한다. 오브젝트는 텍스트 파일, 이미지 파일, 또는 멀티미디어 파일(비디오, 사운드, 등) 등과 같은 여러 유형의 컴퓨터 리소스(resource)를 포함한다. 또한, 오브젝트는 소정의 프로토콜을 기초로 한 컴퓨터 시스템에 대한 트랜잭션(transaction) 내지는 접속을 포함한다.
우선, 본 명세서에서 상기 오브젝트들은, 그들의 인스턴스(instance)가 시간에 의존하지 않는다는 측면에서, 정적인(static) 것으로 고려된다. 둘째, 상기 오브젝트들은, 그들의 인스턴스가 시간에 따라 변한다는 측면에서, 동적인(dynamic) 것으로 언급된다. 인터넷 네트워크 체제 안에서, 무제한적인 예는 "텔넷(Telnet)" 접속을 포함한다.
또한, 본 발명의 범위 안에서, "사용자 스테이션(user station)"이라는 용어는 일반적인 의미로 이해되어야 한다. 특히, 상기 사용자 스테이션은 윈도우즈(WINDOWS) 또는 유닉스(UNIX)(양자 모두 등록상표임)와 같은, 다양한 오퍼레이팅 시스템에서 구동되는 개인용 컴퓨터로 구성될 수 있다. 또한, 상기 사용자 스테이션은 워크스테이션(workstation), 휴대용 컴퓨터, 또는 소위 "전용(dedicated)" 카드 단말기로 구성될 수 있다.
마찬가지로, 본 발명의 범위 안에서, "네트워크"라는 용어는, 서로 접속된 일련의 서버를 포함하는 임의의 네트워크, 특히 정보가 서로 교환되는 글로벌 네트워크(global network)를 포함한다. 즉, 상기 네트워크는, 인터넷을 포함하여, 인터넷 프로토콜, "인트라넷(intranet)"으로 알려진 개인 기업 또는 유사 네트워크를 이용하여 데이터가 교환되는 임의의 네트워크, 및 이들을 외부로 확장한, "엑스트라넷(extranet)"으로 알려진 네트워크들을 포함한다. 또한, 상기 네트워크는 GSM(Global System Mobile), ATM, UMTS, 또는 GPRS(Global Packet Radio System) 네트워크가 될 수 있고, 예컨대, 13E802.11인 소위 "무선 네트워크(Wireless Network)"가 될 수도 있다.
이하, 그 범위에 제한을 두지 않고, 다른 언급이 없으면, 본 발명의 바람직한 실시예에 중점을 둔다. 따라서, 스마트 카드 리더(smart card reader)를 갖추고 인터넷 네트워크에 접속된, 단순히 "단말기(terminal)"로 호칭되는, 사용자 스테이션을 고려한다.
일반적으로, 칩카드(chip-card)를 기초로 한 애플리케이션 시스템은, 다음의 주요 구성요소들:
- 스마트 카드;
- 상기 단말기를 구성하는 호스트 시스템;
- 커뮤니케이션 네트워크, 즉, 바람직한 실시예의 인터넷 네트워크; 및
- 상기 네트워크에 접속된 애플리케이션 서버
를 포함한다.
도1a는 본 유형의 전형적인 아키텍처를 개략적으로 도시한다. 예컨대, 개인용 컴퓨터인 단말기(1)는 스마트 카드(2) 리더(3)를 포함한다. 상기 리더(3)는 단말기(1)과 물리적으로 통합되거나 그렇지 않을 수도 있다. 상기 스마트 카드(2)는, 전원 공급 및 상기 단말기(1)와의 통신을 위해 기판 표면에서 입출력 접속이 이루어지는 집적회로(20)를 포함할 수 있다. 집적회로(20)는 데이터 전송 네트워크(RI)에 접근하기 위한 회로를 포함한다. 이들 회로는, 특히 네트워크(RI) 및 단말기(1)의 특성에 의존한다. 예컨대, 상기 회로들은, LAN(local area network)용 네트워크 카드를 포함하거나, 예컨대 ISP(Internet Service Provider)를 통해 인터넷에 접속하기 위해 스위칭 전화선 또는 ISDN(Integrated Services Digital Network)에 접속하기 위한 모뎀을 포함할 수 있다.
당연히, 단말기(1)는, 도면을 단순화하기 위해 도시되지는 않았지만, 적절한 동작에 요구되는 모든 회로 및 부품들, 즉, 중앙처리장치, RAM, ROM, 대용량 자기 디스크 기억장치, 디스켓 드라이브 및/또는 CD-ROM 등을 포함한다.
또한, 통상적으로, 단말기(1)는, 표시화면(5) 및 키보드(6)와 같은, 집적되거나 집적되지 않은, 표준 주변장치에 접속된다.
단말기(1)는, 네트워크(RI)에 접속된 서버 또는 임의의 컴퓨터 시스템과 통신할 수 있고, 그들 중 하나(4)가 도1a에 도시된다. "서버"는, 도큐먼트(document)들에 대한 접근, 또는 기계장치들에 대한 접근을 제공하기 위한 통신 프로토콜을 처리할 수 있는 임의의 정보 서버를 의미하는 것으로 이해된다. 본 발명의 바람직한 실시예에서, 액세스 회로(11)는, "웹 브라우저(web browser)"라 불리는 특정 소프트웨어(10)를 이용하여 서버(4)와 단말기(1)간의 통신을 유지한다. 상기 웹 브라우저는, 일반적으로는 "클라이언트-서버" 모드에서, 네트워크(RI)를 통해 분포된 다양한 애플리케이션들에 접근할 수 있게 해준다. "브라우저"는 다음 기능들:
- 특히 "SGML"(Standard Generalized Markup Language) 페이지인, 페이지의 표시; 및
- 상기 페이지에 제공된 리소스들의 다운로드(download);
기능들을 제공하는 임의의 수단을 가리키는 것으로 이해된다.
상기 기능은 "브라우저"라는 용어가 의미하는 것에 대응한다. 하나의 SGML 페이지는 프리젠테이션(presentation) 속성을 포함하며, 다른 SGML 도큐멘트에 대한 링크(link), 또는 외부, 즉 URI(Universal Resource Identifiers)에 대한 "하이퍼링크(hyperlink)"를 포함한다.
상기 SGML 언어는, HTML, XML 및 WML을 포함하여, 몇 개의 언어를 포함하는 것으로 알려진다.
통상적으로, 네트워크상의 통신은 몇 개의 중첩된 소프트웨어 계층(layer)을 포함하는 표준에 따르는 프로토콜을 기초로 이루어진다. 인터넷 네트워크(RI)의 경우, 통신은, 이하 상세히 기술될 상기 유형의 통신에 특정된 프로토콜을 기초로 이루어지고, 이것 역시 몇 개의 소프트웨어 레이어(layer)를 포함한다. 통신 프로토콜은 감안된 소정의 애플리케이션: "웹" 페이지 질의(interrogation), 파일 전송, 전자 우편(즉 "e-mail"), 포럼(forum) 또는 "뉴스" 등을 근거로 선택된다.
단말기, 스마트 카드 리더 및 스마트 카드를 포함하는, 시스템의 논리 아키텍처는 도1b에 의해 개략적으로 나타난다. 이것은 ISO 7816 표준에 의해 기술되며, 상기 표준은 몇 개의 하부 섹션:
- 카드의 크기 및 마킹(marking)과 관련된 ISO 7816-1 및 7816-2;
- 단말기와 스마트 카드간의 데이터 전송과 관련된 ISO 7816-3; 및
- 명령어 집합의 구조 및 명령어 포맷(format)과 관련된 ISO 7816-4
을 포함한다.
도1b에서, 단말기(1)의 단부에는, 참조부호 101로 표기되는, ISO 7816-3 에 대응하는 레이어, 및 참조부부 201로 표기되는 "APDU" 명령어 처리기(ISO 7816-4 표준)들 만이 나타난다. 스마트 카드(2)의 단부에는 ISO 7816-3에 대응하는 레이어가 참조부호 200으로 표기되고, "APDU" 명령어 처리기(ISO 7816-4 표준)가 참조부호 201로 표기된다. 애플리케이션들은 A1,...,Ai,...,An으로 표기되고, n은 스카트 카드(2)에 존재하는 애플리케이션의 최대수이다.
스마트 카드(2)(도1a)에 있는 "카드렛"(등록상표) 애플리케이션(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) 카드라 한다. 그러나, 단말기(1)은 한 번에 하나의 애플리케이션하고만 대화한다. 예컨대, 애플리케이션(Ai)은, "자바(Java)"(등록상표) 언어에서 "애플릿(applet)"이라 불리는 하나의 소프트웨어 형태로 존재하고, 이하 "카드렛"이라 호칭된다. 특정 "카드렛"(Ai)의 선택은 셀렉션 타입("SELECT")의 "APDU"에 의해 얻어진다. 일단 상기 선택이 이루어지면, 다음의 "APDU"들은 상기 "카드렛"으로 보내진다. 새로운 "SELECT APDU"는 진행중인 애플리케이션을 버리고 다른 것을 선택하는 효과가 있다. 상기 "APDU"(201)들을 처리하는 소프트웨어 하부시스템은 스마트 카드(2)에서 특정 애플리케이션(Ai)을 선택할 수 있도록 하여, 선택된 애플리케이션을 저장하고, 상기 애플리케이션으로 및 상기 애플리케이션으로부터 "APDU"를 전송 및/또는 수신한다.
요약하면, 애플리케이션(Ai)의 선택 및 이와의 대화는 "APDU" 명령어의 교환을 통해 이루어진다. 애플리케이션(Ai)은 종래의 애플리케이션이라 가정하고, 이하 "GCA"("Generic Card Application")라 호칭된다.
도1b의 아키텍처에 의해 나타난 바와 같이, 칩-카드 기반의 애플리케이션 시스템에서, 다양한 기능들, 특히 보안 기능은 스마트 카드에 맡겨진다. 실제로, 보안(패스워드, 접근 권한 등)과 관련된 데이터는 사용자에 의해 보유될 수 있는 스마트 카드에 저장하는 것이 유리하다. 또한, 암호화 된 형태로 읽기 전용 기억장치에 저장되는 데이터는, 쉽게 수정될 수 없으며, 심지어 외부에서는 직접 읽을 수도 없다.
그러나, 상기 스마트 카드는, 브라우저의 코드가 수정되지 않으면, 시중의 브라우저와 직접적으로 통신할 수 없음을 유의해야 한다. 또한, 상기 표준에 따르는 현행 스마트 카드는, 인터넷 네트워크와 직접적으로 통신할 수 없는 하드웨어 및 소프트웨어 구성을 가지고 있다. 특히, 이들은 상기 유형의 네트워크에 사용되는 어떠한 프로토콜을 사용하여도 데이터 패킷을 수신하거나 전송할 수 없다. 따라서, 일반적으로 "플러그인(plug-in)"이라 불리는 형태로, 단말기(1)에 설치되는 부가적인 소프트웨어를 제공할 필요가 있다. 도1a에서 참조부호 12를 가진 상기 소프트웨어는, 브라우저(10)와 카드(2), 보다 정확하게는 카드(2)의 전자회로(20) 사이의 인터페이스를 제공한다.
또한, 종래 기술에서, 카드 리더(3)와 관련된 호스트 시스템, 즉 단말기(1)은 특정 애플리케이션과 관련된다. 즉, 각각의 특정 애플리케이션에 대해, 특정의, 소위 "전용" 단말기를 제공할 필요가 있다.
또한, 과거의 빠른 기술 발전 및 예측 가능한 미래의 발전을 감안하더라도, 스마트 카드의 임의 접근 방식 또는 읽기 전용 기억장치 회로에 정보를 저장하는 용량은, 본 스마트 카드를 "호스팅(hosting)"하는 단말기에 의해 제공되는 것, 및 보다 큰 시스템, "미니컴퓨터" 또는 대형, 소위 "메인프레임" 시스템에 의해 제공되는 것과 비교할 때 매우 제한적이며, 또한 앞으로도 제한적일 것이다. 또한, 하나의 스마트 카드에 많은 수의 애플리케이션 데이터, 특히 매우 큰 멀티미디어 파일을 저장하는 것은 불가능하다.
본 발명은 네트워크상의 오브젝트를 활성화할 수 있는 정보를 포함하는 내장 시스템, 및 상기 오브젝트를 활성화하는 방법에 관한 것이다.
즉, 본 발명은 상기 오브젝트에 접근하기 위한 방법에 관한 것이다.
도1a 및 도1b는 종래 기술에 따른 전형적인 칩-카드 기반의 애플리케이션 시스템의 하드웨어 및 소프트웨어 아키텍처를 개략적으로 각각 도시한다.
도2는, "웹" 서버로서 작용하는, 본 발명에 따른 전형적인 칩-카드 기반의 애플리케이션 시스템을 나타낸다.
도3은, 상기 스마트 카드가 인텔리전트 에이전트를 포함하는 시스템의 논리 아키텍처를 개략적으로 나타낸다.
도4는, 상기 스마트 카드가 스크립트 번역 인텔리전트 에이전트를 포함하는, 본 발명에 따른 시스템 아키텍처를 나타낸다.
도5는, 도4의 아키텍처를 포함하는 스마트 카드와 브라우저 사이에 교환되는 주 위상을 개략적으로 나타낸다.
도6은, 스마트 카드 및 "웹" 브라우저를 통해 인터넷 네트워크에 분포된 가상 오브젝트에 접근할 수 있는 본 발명에 따른 방법의 요부를 개략적으로 나타낸다.
도7은, 본 방법 발명의 일 태양을 실현하는 소위 가상 파일 관리 시스템의 구조를 개략적으로 나타낸다.
도8은, 도7에 따른 가상 파일 관리 시스템을 포함하는 전형적인 아키텍처이다.
도9 내지 15는 본 발명에 따른 방법의 몇 가지 실시예를 개략적으로 나타낸다.
본 발명의 목적은, 그중 몇 개가 요약된 종래 기술에 의한 장치의 단점을 제거하는 것이며, 동시에 이하 계속될 요구사항을 충족시키는 것이다. 특히, 많은 애플리케이션들, 심지어, 인터넷에 분포된, 다양한 속성을 지닌 대량의 데이터를 가진 애플리케이션들에 액세스할 수 있어야 한다. 또한, 바람직한 실시예에서, 상기 액세스는 최대한의 보안을 유지해야 하고, 따라서, 실제로는, 데이터 교환을 보호하는데 요구되는 모든 데이터를 포함하는 스마트 카드를 통해, 또한 그 제어 하에 이루어져야 한다. 끝으로, 상기 액세스는, 시중의 브라우저를 통해 이루어질 수 있어야 하고, 애플리케이션이 어디에 저장되어 있는지를 불문하고, 상기 스마트 카드를 유일한 소스로 보아야 하는 사용자에게 투명성이 보장될 수 있어야 한다.
본 방법 발명의 제1 특징에 따르면, 상기 스마트 카드는, 예컨대 "HTML"(HyperText Markup Language)의 페이지 형태로, 또는 보다 일반적으로 하이퍼텍스트 언어로, 또는 "자바"(등록상표) 언어의 "애플릿" 형태로, 호스트 시스템, 즉 단말기에 가장 단말기 모듈을 제공하고, 이로써, 사용자는 상기 스마트 카드에 의해 제공되고 사용할 수 있는 것들 중에서 특정 애플리케이션을 선택할 수 있게 된다. 그 결과, 상기 단말기는 일반화되어, 복수의 애플리케이션을 지원한다. 상기 호스트 시스템은 스마트 카드의 주변장치로 여겨지고, 상기 카드에 적용 가능한, 표시화면, 키보드 등과 같은, 하드웨어 리소스가 된다.
상기의 목적을 달성하기 위해, 소정의 소프트웨어 통신 레이어가 스마트 카드에 제공되고, 그 대응부가 단말기에 제공된다. 상기 "소정"이라는 용어는 본 발명의 방법에 한정된다는 의미로 해석되어야 한다. 본질적으로, 상기 소위 소정의 통신 레이어들은 애플리케이션이 무엇이든지 간에 일반화된다. 이들은 스마트 카드와 단말기 간, 및 스마트 카드와 네트워크간에 2방향 데이터 교환 프로세스를 통해서만 기능을 발휘한다.
상기 소정의 통신 레이어들은, 구체적으로는 프로토콜 변환이 가능한, 특히, "인텔리전트 에이전트(intelligent agent)"라 불리는 소프트웨어 콤포넌트를 포함한다. 상기 단말기 및 스마트 카드와 관련된 각각의 소정 통신 레이어들에는 짝을 이루는 에이전트들이 있다. 본 방법 발명에 따르면, 짝을 이루는 에이전트들간에는 세션들이 형성된다.
본 발명의 제2 특징에 따르면, 방법 발명은 종래의 애플리케이션, 즉, 스마트 카드에 있는, 전술한 "CGA" 타입의 애플리케이션들을, 전혀 수정할 필요 없이 활성화시킬 수 있다.
상기의 목적을 달성하기 위해, 스크립트 번역기라 불리는 하나 또는 그 이상의 인텔리전트 에이전트가 제공되고, 브라우저로부터 리퀘스트들을 수신하여, 이들을 상기 "CGA" 애플리케이션에 적용할 수 있는 "APDU" 명령어들로 번역한다. 상기의 기술적인 특징에 의해, 아키텍처가 본 방법 발명과 일치하는 스마트 카드에서, 종래의 "웹" 서버에 설치된 소위 "CGI"(Common Gateway Interface) 기능과 유사한 메카니즘을 설치할 수 있다.
끝으로, 본 방법 발명의 다른 특징에 따르면, 상기의 기능 및 메카니즘을 구현함으로써, 단말기가 접속된 데이터 전송 네트워크, 특히 인터넷 또는 동 유형의 네트워크(인트라넷, 엑스트라넷)에 분포된 컴퓨터 리소스들을, 사용자가 그 위치를 알 필요 없이, 액세스할 수 있다. 나타낸 바와 같이, 이하 이들 리소스들은 정적(static) 또는 동적(dynamic) "가상 오브젝트"라 불리게 된다.
상기의 목적을 달성하기 위해, 본 작업에 전용적인 스크립트 번역 인텔리전트 에이전트가 실현되고, 이는 또한 단말기 및/또는 스마트 카드에 있는 다른 인텔리전트 에이전트와 함께 작동한다. 상기 에이전트는, 스마트, 따라서 사용자(즉 스마트 카드의 보유자)가 액세스할 수 있는 가상 오브젝트를 정의할 수 있게 해주고, 또한 질의하는 브라우저에게, 상기 스마트 카드를 통해, 이들 가상 오브젝트에 접근할 수 있는 방법을 제공한다.
따라서, 본 발명은 정보처리 수단과 정보저장 수단을 포함하는 칩을 갖추고 단말기를 통해 네트워크와 함께 작동하도록 설계된 내장 시스템에 관한 것으로,
- 상기 네트워크에 있는 오브젝트와 관련된 정보를 포함하는 적어도 하나의 오브젝트 파일을 저장하고 상기 오브젝트의 인스턴스를 생성할 수 있고,
- 내장 시스템이 상기 네트워크상에 정보 서버를 구성하도록, 상기 단말기내에 위치된 짝을 이루는 네트워크 인터페이스 수단과 함께 작동하도록 설계된 네트워크 인터페이스 수단을 포함하며,
- 상기 네트워크 인터페이스 수단을 통과하고 적어도 상기 오브젝트 파일에 할당된 정보와 상기 오브젝트 파일과 교환된 정보간의 통신을 형성하도록 설계된 오브젝트 파일 인터페이스 수단을 포함하는 것을 특징으로 한다.
상기 오브젝트 파일은 브라우저 소프트웨어에서 실행가능한 하나의 독립 소프트웨어를 포함하는 것이 바람직하다. 상기 독립 소프트웨어는 상기 내장 시스템의 오브젝트 파일 관리 시스템을 구현할 수 있는 것이 바람직하다.
상기 오브젝트 파일은 하나의 오브젝트를 인스턴스화 하기 위해 행해지는 동작의 기술을 포함하는 것이 바람직하다. 상기 동작은 내장 시스템 내부에서 행해지고 상기 내장 시스템의 에이전트들간에 세션을 형성하는 동작을 포함하는 것이 바람직하다.
상기 동작은 내장 시스템의 외부에서 행해지고, 네트워크의 정보 서버로부터 정보를 얻기 위해 단말기의 에이전트들과 세션을 형성하는 동작을 포함하는 것이 바람직하다.
상기 네트워크 인터페이스 수단은, 상기 내장 시스템이 네트워크의 적어도 한 서버와 접속할 수 있는 클라이언트처럼 작용하도록, 단말기에 있는 짝을 이루는 네트워크 인터페이스 수단과 함께 작동하도록 설계되는 것이 바람직하다.
또한, 본 발명은, 상기 내장 시스템을 이용하여, 네트워크에 있는 오브젝트를 인스턴스화 하기 위한 방법에 관한 것으로, 적어도 다음 단계들:
- 구현된 에이전트들의 리스트를 형성하는 단계; 및
- 각 에이전트에 대해, 에이전트에 필요한 호출 아규먼트(call argument)를 정의하는 단계;
에 의해, 오브젝트 파일을 통한 에이전트들간의 일련의 세션을 기술할 수 있도록 되어 있는 것을 특징으로 한다.
한 호출 아규먼트는 다른 에이전트와의 한 세션의 오픈을 기술하는 것이 바람직하다.
한 에이전트는 다른 에이전트에 의해 사용되는 아규먼트 리스트를 수정하는 것이 바람직하다.
일 변경에 있어서, 상기 방법은, 적어도 다음 단계들:
- 한 오브젝트 파일의 식별; 및
- 상기 오브젝트 파일의 실행;
에 의해 내장 시스템의 정보 서버로부터 실행된 오브젝트 파일에 의해 기술되는 에이전트들간의 세션을 구현하는 것을 특징으로 한다.
상기 오브젝트 파일은 소정의 디렉토리명에 의해 식별되는 것이 바람직하다.
상기 오브젝트 파일은 소정의 작명법에 의해 식별되는 것이 바람직하다.
상기 오브젝트 파일은 상기 오브젝트 파일과 관련된 제1 에이전트를 인스턴스화함으로써 실행되는 것이 바람직하다.
상기 오브젝트 파일은 상기 오브젝트 파일에 의해 참조되는 하나 또는 그 이상의 에이전트를 인스턴스화함으로써 실행되는 것이 바람직하다.
일 변경에 있어서, 상기 방법은, 다음 단계들:
- 구현 가능한 소정 파일 및 오브젝트 파일의 브라우저 소프트웨어에 의한 로딩; 및
- 상기 브라우저 소프트웨어에 의한 소정 소프트웨어의 실행;
에 의한 브라우저 소프트웨어로부터 실행된 오브젝트 파일에 의해 기술된 에이전트들간에 세션을 구현하는 것을 특징으로 한다.
상기 소정의 소프트웨어는 브라우저 소프트웨어에 의해 실현가능한 임의의 번역된 언어로 구현되는 것이 바람직하다.
상기 오브젝트 파일 번역기는 브라우저 소프트웨어에 내장되는 것이 바람직하다.
일 변경에 있어서, 상기 방법은, 상기 내장 시스템이 브라우저 소프트웨어로부터 실행된 오브젝트 파일에 의해 기술된 에이전트들간의 세션을 구현할 수 있도록 하고, 상기 브라우저 소프트웨어를 구현하기 위한 소정의 소프트웨어인 범용 리소스 식별자(universal resource identifier)에 의한 식별 기능을 구성하는 단계를 포함하는 것을 특징으로 한다.
상기 범용 리소스 식별자는 하나의 하이퍼텍스트 도큐먼트로 통합되는 것이 바람직하다.
상기 하이퍼텍스트 도큐먼트는 상기 내장 시스템에 포함되는 것이 바람직하다.
상기 하이퍼텍스트 도큐먼트는, 상기 내장 시스템으로부터 원거리에 있는, 네트워크의 정보 서버에 포함되는 것이 바람직하다.
상기 소정의 소프트웨어는 상기 브라우저 소프트웨어에 사용가능한 방법에 의해 로드되고, 상기 범용 리소스 식별자로부터 유도되는 것이 바람직하다.
또한, 본 발명은, 정보처리 수단과 정보저장 수단을 포함하는 칩을 갖추고 단말기를 통해 네트워크와 함께 작동하도록 설계된 내장 시스템에 관한 것으로, 상기 내장 시스템이 상기 네트워크에 있는 정보 서버를 구성하고 또는 상기 네트워크의 적어도 한 서버에 접속할 수 있는 클라이언트 역할을 하도록, 단말기에 위치된 짝을 이루는 네트워크 인터페이스 수단과 함께 작동하도록 설계된 네트워크 인터페이스 수단을 포함하는 것을 특징으로 한다. 또한, 본 발명은 네트워크와 함께 작동하도록 설계되고, 정보처리 수단, 정보저장 수단, 및 정보처리 수단과 정보저장 수단을 포함하는 칩을 갖춘 내장 시스템과 함께 작동하는 수단을 포함하는 단말기에 관한 것으로, 상기 내장 시스템이 상기 네트워크에 있는 정보 서버를 구성하고 또는 상기 네트워크의 적어도 한 서버에 접속할 수 있는 클라이언트 역할을 하도록, 상기 내장 시스템에 있는 짝을 이루는 네트워크 인터페이스 수단과 함께 작동하도록 설계된 네트워크 인터페이스 수단을 포함하는 것을 특징으로 한다. 상기 단말기는 소프트웨어 로드 메카니즘을 통해 네트워크로부터 상기 네트워크 인터페이스 수단을 동적으로 획득하는 것이 바람직하다. 이는 특히 "플러그-인(plug-in)" 메카니즘이 될 수 있다. 상기 단말기가 상기 소프트웨어를 포함하는 파일의 확장자를 모르면, 통상적으로 "도우미(helper)"라 호칭되는 상기 확장자와 관련된 소프트웨어를 서버에서 찾는다.
단말기 및 내장 시스템에 있는 상기 짝을 이루는 네트워크 인터페이스 수단은, 상기 내장 시스템이 상기 단말기의 통신 레이어의 전부 또는 일부를 공유하도록 하나 또는 그 이상의 통신 레이어를 포함하도록 하나의 스택을 형성하는 것이 바람직하다. 또한, 상기 단말기는 그 통신 레이어에 액세스 포인트를 보유하고, 하나 또는 그 이상의 상기 레이어들로 또는 이들로부터 일련의 정보를 라우트(route)시킨다. 상기 액세스 포인트들은 ISO 표준에 의해 정의되는 "SAP" (Service Access Point)로 알려진 포인트들에 해당한다.
또한, 본 발명은, 정보처리 수단과 정보저장 수단을 포함하는 칩을 갖추고 단말기를 통해 네트워크와 함께 작동하도록 설계된 내장 시스템에 관한 것으로, 단말기의 애플리케이션과 네트워크 사이에 교환되는 일련의 정보중 적어도 일부가 상기 단말기로서 알 수 있는 기준에 따라 상기 내장 시스템의 네트워크 인터페이스 수단을 통과하도록, 단말기에 있는 짝을 이루는 네트워크 인터페이스 수단과 함께 작동하도록 설계된 네트워크 인터페이스 수단을 포함하는 것을 특징으로 한다. 또한, 본 발명은 정보처리 수단 및 정보저장 수단을 포함하는 칩을 갖춘 내장 시스템과 함께 작동하는 수단, 정보처리 수단, 및 정보저장 수단을 포함하고 네트워크와 함께 작동하도록 설계된 단말기에 관한 것으로, 단말기의 애플리케이션과 네트워크 사이에 교환되는 일련의 정보중 적어도 일부가 상기 단말기로서 알 수 있는 기준에 따라 상기 내장 시스템의 네트워크 인터페이스 수단을 통과하도록, 상기 내장 시스템에 있는 짝을 이루는 네트워크 인터페이스 수단과 함께 작동하도록 설계된 네트워크 인터페이스 수단을 포함하는 것을 특징으로 한다. 정보 흐름 중 일부의 상기 내장 시스템으로의 라우팅(routing)은, 정적으로 또는 내장 시스템과의 대화를 통해 형성되는 방식중 어느 하나로, 미리 형성된 기준에 따라 단말기의 정보처리 수단에 의해 행해지는 것이 바람직하다. 예컨대, 상기 후자 방식의 경우, 예컨대 단말기는, 알려진 프로토콜을 이용하여, 내장 시스템에 "IP" 어드레스(인터넷의 경우)를 요청할 수 있다. 상기의 기준은 다음:
- 내장 시스템의 "IP" 어드레스, 또는 AMT 네트워크의 경우 "ATM" 어드레스;
- 소정의 "TCP" 또는 "UDP" 포트 및 단말기의 IP 어드레스; 및
- 상기 내장 시스템을 참조하는 임의의 SAP 액세스 포인트
중 어느 하나를 포함하는 것이 바람직하다.
이하, 본 발명은 첨부 도면을 참조하여 보다 상세히 설명된다.
본 발명에 따른 스마트 카드에 있는 애플리케이션을 활성화하는 방법을 기술하고 이를 실현하는 아키텍처를 상술하기 전에, 네트워크 통신 프로토콜의 주요 특성을 먼저 간단히 요약하는 것이 적절하다.
통신 네트워크의 아키텍처는 여러 레이어(layer)로 기술된다. 예컨대, "ISO"에 의해 정의되는 "OSI"("Open Systems Interconnection") 표준은 7개의 레이어를 포함하며, 소위 하부 레이어(예컨대, 물리적인 전송을 지원하는 소위 "물리적인" 레이어)로부터 소위 상위 레이어(예컨대 소위 "애플리케이션" 레이어)까지 있으며, 소위 "전송" 레이어를 포함하는 중간 레이어가 있다. 데이터 레이어는, 적정 인터페이스를 통해, 그 바로 상위에 있는 레이어에 서비스를 제공하고, 그 바로 하위에 있는 레이어로부터 다른 서비스를 요구한다. 상기 레이어들은 프리미티브(primitive)를 이용하여 통신한다. 또한 이들은 동일 레벨의 레이어들과 통신한다. 일부 아키텍처에서, 이들 레이어 중 일부는 존재하지 않을 수 있다.
인터넷형 환경에는, 5개의 레이어, 즉, 최상 레이어로부터 최하 레이어: 애플리케이션 레이어("http", "ftp", "e-mail" 등), 전송 레이어("TCP"), 네트워크 주소 레이어("IP"), 데이터 링크 레이어("PPP", "SLIP" 등) 및 물리 레이어가 있다.
요약되었으므로, 이제, 스마트 카드를 "웹" 서버로서 작용케 할 수 있는 스마트 카드 기반의 애플리케이션 시스템의 아키텍처를 기술한다. 상기 아키텍처의 예가 도2에 개략적으로 제시된다. 도1a 및 도1b에 공통된 요소는 동일 참조부호를 가지며, 필요한 경우에만 다시 기술된다. 도면을 간단히 하기 위해, 단말기(예컨대, 도1a: 스크린(5) 및 키보드(6))에 접속된 다양한 주변장치는 나타나지 않는다.
단말기(1) 및 스마트 카드(2a)에 각각 설치되어, 참조부호 13 및 23a로 표기되는 소정의소프트웨어 통신 프로토콜 레이어들을 제외하고는, 다른 하드웨어 및 소프트웨어 구성요소는 종래 기술과 공통된다.
단말기(1)은, 예컨대 인터넷용 모뎀 또는 LAN(local area network)용 네트워크 카드로 구성된, 네트워크(RI)에 액세스하기 위한 회로(11)를 포함한다. 이들 회로는 "물리" 및 "데이터 링크" 레이어에 대응하는 하위 소프트웨어 레이어(C1,C2)를 포함한다.
또한, "네트워크 주소"(인터넷의 경우 "IP") 및 "전송"("TCP") 레이어에 대응하는 상위 레이어(C3,C4)가 제시된다. 최상위 애플리케이션 레이어("http", "ftp","e-mail" 등)는 나타나지 않는다.
하위 레이어(C1,C2)와 상위 레이어(C3,C4) 사이의 인터페이스는 일반적으로 "하위 레벨 드라이버"라 불리는 소프트웨어 레이어로 구성된다. 상위 레이어(C3,C4)는 상기 인터페이스에 의존하고, 이들에 대응하는 소정의 함수 라이브러리 또는 네트워크 라이브러리(14)에 의해 구현된다. 인터넷의 경우, "TCP/IP"는 "소켓(socket)"으로 알려진 라이브러리에 의해 구현된다.
상기 구조는 브라우저(10)(도1a)로 하여금 "웹" 페이지("HTTP" 프로토콜)를 조사하기 위해 서버(4)(도1a)에 리퀘스트를 제출할 수 있도록 하고, 파일("FTP" 프로토콜) 또는 전자우편("e-mail" 프로코콜)을, 완전히 종래의 방식으로 전송한다.
또한, 단말기(1)는 카드 리더(3)를 포함하며, 이는 집적될 수도 있고 안될 수도 있다. 스마트 카드(2a)와 통신하기 위해, 카드 리더는 또한, 레이어(C1,C2)와 유사한 역할을 하는 2개의 레이어(CC1(물리 레이어),CC2(데이터 링크 레이어))를 포함한다. 레이어(CC1,CC2)와의 소프트웨어 인터페이스는, 예컨대 "PC/SC" 스페시피케이션(specification)("제6부, 서비스 제공자")에 의해 기술된다. 레이어(CC1,CC2)들 자체는, 언급된 바와 같이, ISO 7816-1 내지 7816-4 표준에 의해 기술된다.
부가적인 소프트웨어 레이어(16)는 애플리케이션 레이어(도시 안됨)와 하위 레이어(CC1,CC2)간의 인터페이스를 형성한다. 상기 레이어에 부여된 주 기능은 멀티플렉스/디멀티플렉스 기능이다.
스마트 카드(2a)와의 통신은 "UNIX(유닉스)"(등록상표)형 오퍼레이팅 시스템에서 파일을 다루는데 사용되는 것과 유사한 패러다임: "OPEN", "READ", "WRITE", "CLOSE" 등에 따라 발생한다.
스마트 카드 단부(2a)에는, 하나의 유사한 구조, 즉, 레이어(16)와 전적으로 유사한 인터페이스 레이어(26a) 뿐만 아니라, CCa1(물리 레이어) 및 CCa2(데이터 링크 레이어)로 참조되는 2개의 하부 레이어가 있다.
본 발명의 제1 특징에 따르면, 양 단부에는, 즉 단말기(1)와 스마트 카드(2a)에는, 2개의 소정 프로토콜 레이어(13,23a)가 각각 제공된다.
단말기(1)에는, 소정 레이어(13)가 "하위 레벨 드라이버"(15), 네트워크 레이어(C3,C4)의 라이브러리, 및 카드 리더(3)의 프로토콜 레이어, 즉, 멀티플렉스 레이어(16)를 통한 하위 레이어(CC1,CC2)와의 인터페이스를 이룬다. 소정의 레이어(13)는 스마트 카드(2a)로의 또한 이로부터의 네트워크 패킷의 전송을 허용한다. 또한, 상기 레이어(13)는, 스마트 카드(2a)를 이용하기 위해, 인터넷 브라우저(10)(도2), 전자우편 소프트웨어 등과 같은 기존의 애플리케이션을 채택한다.
스마트 카드 단부(2a)에는, 레이어(13)의 대응부인 소정 레이어(23a)의 부가적인 인스턴스(instance)에 의해 형성되는 전적으로 유사한 구조가 있다.
즉, 소정 레이어(13,23a)는 3개의 주요 소프트웨어 구성요소:
- 종래의 레이어(CC1,CC2,CCa1,CCa2)를 통해, 레이어(13,23a) 사이에 정보 블록을 전송하기 위한 모듈(130 또는 230a);
- 예컨대, 프로토콜 변환 기능을 행하는 "인텔리전트 에이전트"라 불리는 하나 또는 그 이상의 소프트웨어(132 또는 232a);
- 소정의 인텔리전트 에이전트로 통합될 수 있는, 소정의 구성(131, 231a)을 관리하기 위한 모듈로 세분된다.
따라서, 단말기(1) 및 스마트 카드(2a)에는 2개의 엔티티(entity)간에 하나의 통신 프로토콜 스택이 있다.
레벨-2 레이어(데이터 링크 레이어)(CC2,CCa2)들은 상기 스마트 카드(2a)와 단말기(1) 사이의 교환을 다룬다. 이들 레이어는 전송 오류의 감지 및 가능한 보정을 담당한다. 다양한 프로토콜이 사용될 수 있으며, 다음 예의 리스트:
- ETSI GSM 11.11 레코멘데이션(recommendation);
- 캐릭터 모드(T=0)에서, ISO 7816-3 표준에 의해 정의되는 프로토콜;
- 블록 모드(T=1)에서, ISO 7816-3 표준에 의해 정의되는 프로토콜; 또는
- "HDLC"("High-Level Data Link Control") 프레임 모드에서 ISO 3309 표준에 의해 정의되는 프로토콜 등은 그 일부이다.
본 발명의 목적을 위해, 블록 모드에서, ISO 7816-3 프로토콜을 사용하는 것이 바람직하다.
본질적으로는 알려진 방법으로, 각각의 프로토콜 레이어는, 동일 레벨간 및 서로 다른 레벨간의 데이터 교환을 허용하는 일정 수의 프리미티브와 관련된다. 예컨대, 레벨-2 레이어와 관련된 프리미티브는 "데이터 리퀘스트"("Data.request"), 상기 카드에 의한 "데이터 응답"("Data.response"), 및 "데이터 컨펌" ("Data.confirm") 타입 등이다.
즉, 레이어(13,23a)들은 스마트 카드(2a)와 호스트, 즉 단말기(1)간의 대화를 담당한다. 이들 레이어는, 예컨대, "HTML" 포멧의 하이퍼 텍스트 형태로 드롭-다운 메뉴를 통해, 단말기(1)의 사용자(도시 안됨)와 스마트 카드(2a) 사이의 정보 교환을 가능케 한다. 또한, 이들은 데이터 패킷의 송신 및/또는 수신을 위해 채택되는 구성의 실현을 가능케 한다.
상기와 같이, 레이어들은 3개의 구분 가능한 엔티티(entity)를 포함한다.
제1 레이어(130 또는 230a)는, 본질적으로 소프트웨어 멀티플렉서에 의해 구성된다. 그것은 프로토콜 데이터 유닛의 형태로 스마트 카드(2a)와 호스트 단말기(1)간의 정보 교환을 가능케 한다. 그것은 데이터 패킷 스위처(switcher)와 유사한 역할을 한다. 이들 유닛은 레벨-2 레이어(데이터 링크 레이어)를 통해 송신되거나 수신된다. 상기 소정의 통신 프로토콜은 적어도 한 쌍의 "인텔리전트 에이전트"가 서로 통신할 수 있도록 한다. 각 쌍의 제1 에이전트(132)는 단말기(1) 단부의 레이어(13)에 있고, 제2 에이전트(232a)는 스마트 카드(2a) 단부의 레이어(23i)에 있다. 2개의 "인텔리전트 에이전트" 간의 링크는 하나의 세션(session)과 관련된다. 하나의 세션은 상기 2개의 에이전트간의 양방향 데이터 교환이다.
하나의 인텔리전트 에이전트는, 단말기(1)에 의해 사용되는 구성에 따라, 레벨-3 및 4 레이어의 기능중 전부 또는 일부를 행한다.
소정의 인텔리전트 에이전트는, 예컨대 16 비트로 된 모든 수(0과 65535 사이의 수)로 식별되는 것이 유리하다. 상기 식별자(identifier)는, 예컨대, 목적 레퍼런스(destination reference) 및 소스 레퍼런스(source reference)를 구성하는 프로토콜 데이터 유닛에 사용된다.
인텔리전트 에이전트에는 2개의 주요 카테고리: 고정된 레퍼런스에 의해 식별되는 "서버"형 에이전트와, 구성 관리 모듈(131 또는 231a)에 의해 부여되는 변경가능한 레퍼런스에 의해 식별되는 "클라이언트"형 에이전트가 있다.
하나의 세션을 개방하는 과정은 통상적으로 다음과 같다. "클라이언트"형 인텔리전트 에이전트가 "서버"형 인텔리전트 에이전트와 세션을 개방한다. 레이어(130,230a)들은, 호스트 단말기(1) 단부 및 스마트 카드(2a) 단부에 있는 인텔리전트 에이전트 리스트를 포함하는 테이블(도시 안됨)을 관리한다.
인텔리전트 에이전트는 소정의 특성 또는 속성과 관련된다. 상기 개념을, 일례를 어어 설명하면, 다음 여섯 가지 속성들:
- "호스트(host)" : 단말기에 있는 에이전트;
- "카드(card)" : 스마트 카드에 있는 에이전트;
- "로컬(local)" : 네트워크와 통신하지 않는 에이전트;
- "네트워크(network)" : 네트워크와 통신하는 에이전트;
- "클라이언트(client)" : 세션을 활성화하는 에이전트;
- "서버" : 세션 리퀘스트를 수신하는 에이전트
등이 인텔리전트 에이전트와 관련된다.
인텔리전트 에이전트는 데이터(예컨대, 하이퍼텍스트)를 교환할 수 있게 해주고, 또한 네트워크 트랜잭션을 활성화시킨다.
나타낸 바와 같이, 상기 구성 관리 모듈(131,231a)은 소정의 인텔리전트 에이전트로 각각 통합될 수 있다. 예컨대, 호스트 단말기(1) 단부의 모듈(131)은, 본 단말기의 구성(동작 모드), 현행의 다른 에이전트 리스트 등과 관련된 정보를 특정적으로 관리한다. 스마트 카드(2a) 단부의 모듈(231a)은 유사 기능을 가진다. 이들 2개의 인텔리전트 에이전트는 하나의 세션을 형성하기 위해 서로 통신할 수 있다.
본 발명의 일 특징에 따르면, 스마트 카드(2a)는 호스트 시스템, 즉, 단말기(1), 가상 단말기 모델을 제공한다. 이를 위해, 스마트 카드(2a)는 "웹" 서버로 작용한다.
스마트 카드(2a)는 브라우저(10)에 의해 "어드레스(address)"된다. 다음, 상기 브라우저에는, "HTML" 언어로 된 "웹" 페이지, "애플릿", 또는 다른 임의의 소프트웨어가 전송된다. 예컨대, 상기 "웹" 페이지는 외부 서버에 가능한 애플리케이션 및/또는 하이퍼링크에 대한 선택권을 부여하는 웰컴 페이지(welcome page)의 형태로 제공될 수 있다.
실질적으로, 상기 스마트 카드(2a)는, 단말기(1) 자체에 대한 루프백(loopback)을 정의하고 외부 서버는 가리키지 않는 "URL"("Universal Resource Locator") 어드레스를 이용하여 "어드레스"되는 것이 유리하다. 예컨대, 상기 "URL"의 구조는 통상적으로 다음:
http://127.0.0.1:8080 (1)
과 같고, 여기서 127.0.0.1은 "IP" 루프백 어드레스이고, 8080은 포트 번호이다.
도3은 시스템의 논리 구조를 개략적으로 나타내며, 스마트 카드(2a)는 인텔리전트 에이전트를 포함하고, 그중 2개: 정확히 정의되지 않은 인텔리전트 에이전트(232a2)와 "웹"형 인텔리전트 에이전트(232a1)를 나타낸다. 논리 스택은 ISO 7816-3 표준(도2:CCa1및 CCa2)을 따르는 하부 프로토콜 레이어(200a), "APDU" 명령어 처리기(201a1), 및 패킷 멀티플렉서(230a)를 포함하고, 후자는 인텔리전트 에이전트, 특히 "웹" 인텔리전트 에이전트(232a1)와 인터페이스를 이룬다.
단말기의 단부에는, 2개의 스택이 있으며, 하나는 인터넷 네트워크(RI)와 통신하고 다른 하나는 스마트 카드(2a)와 통신한다. 제1 스택은 네트워크(OSI 1 및 2 표준)에 액세스하기 위한 구성요소(11)(도2: C1,C2), 및 부호 100으로 참조되는 "TCP/IP" 프로토콜 레이어(도2:C3,C4)를 포함한다. 후자의 레이어는 "웹" 브라우저(10)와 인터페이스를 이룬다. 다른 스택은 ISO 7816-3 표준(도2:C1,C2)을 따르는 하위 프로토콜 레이어(101), "APDU" 명령어 관리기(102) 및 패킷 멀티플렉서(130)를 포함하고, 후자는 인텔리전트 에이전트들과 인터페이스를 이루고, 그중 하나(132)만을 나타낸다. 또한, "네트워크"형이라 가정하는 패킷 멀티플렉서(130)는, "TCP/IP" 레이어(100)를 통해 브라우저(10)와 통신할 수 있고, 네트워크(RI)와 액세스하기 위해 구성요소(11) 및 상기 "TCP/IP" 레이어(100)를 통해 인터넷 네트워크(RI)와 통신할 수 있다.
또한, 상기 "APDU" 명령어 처리기(201a)는, 단순히 애플리케이션이라 호칭될 애플리케이션 레벨상의 하나 또는 그 이상의 레이어와 인터페이스를 이룬다. 나타낸 바와 같이, 이들 애플리케이션은 종래의 소위 "카드렛"형 애플리케이션이다.
요약하면, 스마트 카드(2a)에 의해 제공되는 "웹 서버" 기능은 스마트 카드에 있는 "웹" 인텔리전트 에이전트(232a1)를 단말기에 있는 네트워크 에이전트(132)와 관련시킴으로써 형성된다.
다음, 스마트 카드(2a)는 실제로 "웹" 서버 기능을 갖는다. 또한, 본 방법 발명의 일 특징에 따르면, 전술한 "CGA" 형의 종래 애플리케이션(A1-An)은, "웹" 서버를 통해, 단말기(1)에 있는 "웹" 브라우저(10) 또는 인터넷 네트워크(RI)의 어느 한 점에 있는 원격 브라우저 중 어느 하나를 통해, 활성화될 수 있다. 본 방법 발명에 따르면, 애플리케이션(A1-An)들은 재작성될 필요가 없으며, 있는 그대로 사용된다.
본 발명의 다른 특징에 따르면, 이들 애플리케이션들은 종래 유형의 단말기에, 즉 종래 기술에 따라 액세스할 수 있다.
이들 요구사항을 충족시키기 위해, 스마트 카드(2a)에 의해 제공된 "웹" 서버 기능은, 종래의 "웹" 서버에 설치된 소위 "CGI"("Common Gateway Interface") 기능과 유사한 메카니즘을 포함한다.
스마트 카드 자체에서 상기 유형의 기능을 제공할 수 있는 본 발명에 따른 전형적인 아키텍처를 기술하기 전에, "CGI" 동작 모드의 주요 특징을 재검토하는 것이 적절하다.
"CGI"는, "웹" 서버로부터, "유닉스(UNIX)"(등록상표), "도스(DOS)" 또는 "윈도우즈"(등록상표) 오퍼레이팅 시스템을 위해 작성된 애플리케이션들을 구현하기 위한 스펙(specification)이다. 예컨대, "유닉스" 오퍼레이팅 시스템에 대한 상기 스펙은 "CGI 1.1"이고, "윈도우즈 95" 오퍼레이팅 시스템에 대한 상기 스펙은 "CGI 1.3"이다.
또한, 예컨대, "URL" 어드레스에 대한 다음:
http://www.host.com/cgi-bin/xxx.cgi (2)
(여기서, "host"는 호스트 시스템(일반적으로 원격임)을 지칭함)
과 같은 "HTTP" 리퀘스트는, "웹" 서버에 의해, 상기 호스트 시스템의 "cgi-bin" 디렉토리에 있고 "xxx"라 호칭되는 "CGI"형 명령어 스크립트의 실행으로 번역된다. 상기 디렉토리명이 이론적으로는 임의의 이름이 될 수 있지만, 이것은 통상적으로 "CGI"형 스크립트를 저장하는 디렉토리에 부여되는 이름이다. 스크립트는, 그 최종 결과가 상기 리퀘스트를 보낸 "웹" 브라우저에 전송되는 호스트 시스템의 오퍼레이팅 시스템의 인스트럭션 시퀀스이다. 예컨대, "PERL"(등록상표) 언어와 같은, 다양한 언어들이 상기 스크립트를 작성하는데 사용될 수 있다.
실제로, 통상 상기 리퀘스트는 "HTML" 페이지에 포함된 폼(form)의 형태로 컴퓨터 스크린에 표시된다. 상기 "HTML" 언어는 하나의 폼을 "URL" 어드레스로 번역할 수 있다. 상기 폼은, 요구될 수도 있고 안될 수도 있는, 하나 또는 그 이상의 필드를 포함하고, 상기 필드는 통상의 입력 수단: 텍스트용 키보드, 체크 박스 또는 소위 "레디오(radio)" 버튼용 마우스 등을 이용하여 사용자에 의해 입력된다. 상기 폼의 내용(소위 "숨겨진" 정보 및 인스트럭션과 병행할 수 있는)은 "웹" 서버의 어드레스로 보내진다. 페이지의 "HTML" 코드는, 입력될 데이터 필드의 구조(이름, 길이, 데이터 형 등) 뿐만 아니라 폼의 물리적인 구조(프레임, 그래픽, 색상 및 임의의 다른 속성)를 기술한다.
상기 전송은 2가지 주요 유형의 포맷을 기초로 발생할 수 있다. 제1 포맷은 소위 "POST" 방법을 이용하고, 제2 포맷은 소위 "GET" 방법을 이용한다. 포맷 유형에 관한 정보는 포맷 페이지의 코드에 있다.
그러나, 상기 메카니즘은, 스마트 카드가 본 발명의 일 특징에 따라 "웹" 서버 기능을 제공할 때에도, 상기 스마트 카드에 직접 적용될 수 없다.
이제, 도4를 참조하여, 스마트 카드(2a)에 있는 "웹" 서버를 통해 임의의 종래 유형의 애플리케이션을 활성화할 수 있는 전형적인 아키텍처를 기술한다.
제1 단계에서, 사용자(도시 안됨)는, "웹" 브라우저(도3: 10)로부터, 다음 방식:
http://@card:8080/xxx.html (3)
으로 표현되는 "URL"을 호출하며, 여기서, "@card"는 스마트 카드(예컨대, 상기의 루프백 어드레스 "127.0.0.1": 공식(1) 참조)의 IP 어드레스이고, "xxx.html"은 상기 스마트 카드에 의해 제공된 소정의 애플리케이션 "xxx"와 관련된 "HTML" 언어로 된 페이지이다.
제2 단계에서, 상기와 같은 방법으로, 스마트 카드는, 예컨대 폼 형의 "HTML" 페이지를 반환한다.
제3 단계에서, 사용자는 상기 폼의 필드를 채우고, 통상적으로 "푸쉬 버튼(push button)"형의 소정 필드를 클릭함으로써, 그 내용을 스마트 카드로 전송한다.
다음, 상기 데이터는 네트워크 에이전트(132)에 의해 송신되고 수신된다. 다음, 데이터는, 스마트 카드(2a)에 전송되기 위해, 패킷 멀티플렉서(130)(단말기(1) 단부의 소정 레이어(13)의 부품중 하나를 구성함), "APDU" 명령어 처리기(102), 프로토콜 레이어(101)를 통과한다. 다음, 상기 데이터는, "웹" 에이전트(232a1)에 의해 수신되기 위해, 프로토콜 레이어(200a), "APDU" 명령어 처리기(201a), 패킷 멀티플렉서(230a)를 통과한다. 따라서, 상기와 같이, 상기 2개의 인텔리전트 에이전트간에는 논리 세션이 형성된다.
"웹" 에이전트(232a1)에 의해 지정된 데이터는, 본질적으로는 종래의 방식으로, 소정의 "패킷 멀티플렉서" 애플리케이션에 지정된 "APDU" 명령어 형태로 전송된다. 상기 "APDU" 명령어 처리기(201a)는, 부호 A1내지 An으로 참조되는, 스마트 카드(2a)에 있는 "CGA" 형의 다른 애플리케이션과 전적으로 유사한 방식으로 상기 애플리케이션을 선택한다. 즉, 패킷 멀티플렉서(230a)는 "APDU" 명령어 처리기(201a)에 의해 통상의 "CGA" 애플리케이션으로 인식된다.
다음, 상기 "HTTP" 리퀘스트는, 이하 관례에 따라 "cgi-smart"라 호칭될 소정의 디렉토리, 및 예컨대 상기 예의 경우 "xxx"인 소정의 애플리케이션에 대한 레퍼런스를 탐지하는 "웹" 에이전트(232a1)에 의해 분석된다. 따라서, 상기의 경우, 완전한 경로는 "cgi-smart/xxx"가 된다.
본 방법 발명의 일 특징에 따르면, 상기 엔티티(entity)는 소정 애플리케이션 "xxx"와 동등하게 관련된 소정의 스크립트를 가리킨다.
다음, 제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/의 경우, "웹" 에이전트(232a1)와 "ATSD" 에이전트들중 하나 사이에 하나의 세션이 개방(open)된다.
도4는 번역 에이전트가 "ATSD" 형인 전형적인 아키텍처이다. 이들은 ATS1내지 ATSn으로 참조되고 애플리케이션(A1-An)들과 관련된다. 선택된 애플리케이션이 애플리케이션(Ai)이라 가정하면, 세션은 "웹" 에이전트(232a1)와 에이전트(ATSi) 사이에 형성된다.
스크립트 번역 에이전트는 일련의 "APDU" 명령어들을 생성한다. 하나의 세션이 번역 에이전트, 예컨대 에이전트(ATSi)와 "APDU" 에이전트(2010a) 사이에 개방된다. 다음, 명령어들은 "APDU" 에이전트(2010a)로 송신된다. 상기 "APDU" 명령어 처리기(201a)는 "CGA" 애플리케이션(Ai)(예컨대 "전자지갑(e-purse)" 애플리케이션)을 선택하고, 번역되고 따라서 이해할 수 있는 명령어인 "APDU" 명령어를 상기 애플리케이션에 송출한다. 따라서 상기 애플리케이션은 수정되거나 재작성될 필요 없이 올바르게 활성화된다.
"CGA" 애플리케이션(Ai)로부터의 응답은 "APDU" 명령어 처리기(201a), "APDU" 에이전트(2010a)로 송출된 후, 다시 에이전트(ATSi)(보다 일반적으로는 스크립트 번역 에이전트)로 송출된다.
상기 스크립트 실행의 성공 또는 실패에 따라, 스크립트 번역 에이전트, 예컨대 도4 예의 에이전트(ATSi)는 "HTML" 언어로 된 페이지를 생성하고, 이것을 최초의 리퀘스트에 의해 사용된 다양한 레이어를 통해 송출하고, 반대 방향으로는 표시화면(5)(도1a)에 제공된다.
도4에는 기능적인 블록을 연결하는 실선 또는 이들 블록 내부의 점선에 의해 다양한 경로가 도식적으로 나타난다.
도5는 상기 과정의 주 스텝:
a/ "HTTP" 리퀘스트(RQ)의 인터넷 네트워크(RI)를 통한(또는 로컬 단말기로부터, 어느 경우든 종래의 브라우저(10)에 의함) 송출;
b/ 스마트 카드(2a)의 "웹" 서버로부터 폼(FQ) 형태의 응답;
c/ 새로운 리퀘스트(RQ) 형태의 입력된 폼의 송출; 및
d/ "HTML" 페이지(PR) 형태의 응답;
등을 개략적으로 요약한다.
또한, 상기 응답은 파일, 또는 하나의 소프트웨어 즉 "애플릿(Applet)"의 송출을 포함한다.
본 발명의 본질적 특징에 따라, 전술한 메카니즘 및 함수, 특히 "웹" 서버 기능 및 인텔리전트 스크립트 번역 에이전트의 사용을 구현함으로써, 본 발명에 따른 방법은, 스마트 카드에 의해 보호받는 것이 바람직한 가상 환경을 정의할 수 있다. 바람직한 실시예에서, 상기 환경은 소위 멀티미디어형의 애플리케이션과 호환가능하다.
마지막 특징은 아주 평범한 최근의 "웹" 브라우저들이 바로 그 특성에 의해 멀티미디어 환경(생동감 있는 이미지, 사운드 등)을 구축할 수 있게 하기 때문에 특히 유용하다. 사실, 웹 브라우저들은 집적될 수도 있고 집적되지 않을 수도 있는, 멀티미디어 파일을 조작할 수 있게 하는 소프트웨어 툴들과 관련되어 있다. 어떤 경우에도, 상기 브라우저들은 보통 대용량의 멀티미디어 데이터 파일들을 다운로드하고, 하드디스크에, 예컨대 단말기에 그것들을 저장하거나 유사한 용량의 기억 장치에 저장할 수 있다. 특히, 인터넷상의 "웹" 사이트로부터 실시간 또는 근 실시간의 영상 시퀀스를 표시하거나 사운드를 재생하는 기술이 제안되어 오고 있다.
그러나, 상기한 바와 같이, 스마트 카드는 기억용량이 작다. 또한, 데이터 교환의 효율이 아주 낮다. 따라서, 다수의 데이터 파일을 스마트 카드에 저장하는 것은 불가능하다. 또한, 아주 짧은 시퀀스나 "MIDI" 인코딩과 같은 특정 포맷으로 인코드된 사운드 시퀀스를 제외하고는, 실제로 멀티미디어 파일들을 저장하는 것도 불가능하다.
기술적 특징의 이러한 제약을 넘어서, 스마트 카드를 사용함으로써만 제공할 수 있는 높은 수준의 안정성을 추구하는 동시에, 리모트(remote) 애플리케이션에 액세스할 수 있는 것이 바람직하다.
본 발명에 따른 방법은 상기 동작의 모드를 가능하게 한다. 바람직한 실시예에 따르면, 칩-카드로부터 보호받는 가상 멀티미디어 환경은:
-스마트 카드가 액세스할 수 있는 가상 오브젝트들의 정의; 및
-상기 오브젝트들에 액세스하는 방법의 제공;
을 가능하게 한다.
도6은 본 발명에 따른 방법의 주요 양태를 도식적으로 설명한다.
사용자(Ui)는 단말기(1)에 포함되어 있는 "웹" 브라우저(10)를 사용하여 스마트 카드(2a)에 요구를 한다. 후술될 메카니즘을 이용하여, 특히, 상기 "웹 서버"의 기능에 의해, 스마트 카드(2a)는 소위 가상 오브젝트들(Obvi)(i는 임의의 첨자)의 리스트를, 액세스하려는, 즉 실제로 스마트 카드(2a) 또는 사용자(Ui)가 액세스 권리를 갖는 브라우저에 돌려보낸다. 실제로, 상기 액세스 권리들은 상기 스마트 카드(2a)에 엄격하게 링크되므로 변할 수 없다. 상기 액세스들은 또한 사용자 프로필에 링크될 수 있고, 상기 사용자(Ui)는, 예컨대 ID 데이터 및 패스워드를 공급한다. 스마트 카드(2a)는 ROM에 저장된 보안 데이터베이스에 있는 데이터와의 비교를 통한 검증을 행하고, 비교의 결과가 긍정이면, "ID 데이터/패스워스"쌍과 관련된 가상 오브젝트들(Obvi)의 리스트를 공급한다. 공지된 방법에서, 상기 제1 단계는 단말기와 스마트 카드(2a)간에 교환되는 데이터를 암호화하는 방법들을 구현하거나 안전한 전송 프로토콜 "HTTPS"을 구현할 수 있다. 또한, 상기 스마트 카드(2a)는 가상 오브젝트들(Obvi)을 액세스하는 방법들의 리스트를 제공할 수 있다.
상기한 바와 같이, 정적이거나 동적인 가상 오브젝트들(Obvi)을, 스마트 카드(2a) 또는 단말기(1)에, 또는 보다 일반적으로 인터넷 네트워크(RI)에 접속된 임의의 시스템에 위치시킬 수 있다. 본 발명의 일 특징에 의하면, 이 위치는 브라우저(10)에게 따라서 사용자(Ui)에게 "명백하다".
본 발명에 따른 방법은 특히 이하 가상 파일 관리 시스템, 즉 "SGFV"라고 칭해지는 것, 및 상기 작업 전용의 "ATSDA/SGFV"라고 칭하게 될 특정 스크립트를 번역하는 인텔리전트 에이전트를 사용한다. 상기 인텔리전트 에이전트는 스마트 카드(2a)가 액세스할 수 있는 가상 오브젝트들(Obvi)의 리스트를 공급한다. 특정 "URL" 어드레스는 각각의 가상 오브젝트(Obvi)와 연관되어 있다. 상기 "웹" 브라우저(10)로부터의 "URL"의 소환(call-up)은 주어진 호출 방법(call method)을 사용하여 가상 오브젝트(Obvi)를 인스턴스화하는 것이 가능하며, 상기 방법은 상기 오브젝트에 한정된 것일 수도 있고 그렇지 않을 수도 있다.
우선, 이하 "SGF"라 칭하는 종래의 파일 관리 시스템의 주요 특징들에 대해 간략하게 설명한다. 이와 같은 시스템은 파일의 형태로 저장되어 있다. 파일은, 순수 데이터이건 프로그램 인스트럭션이건 간에, 통상적으로 일련의 고정된 크기의 블록들로 구성된다. 공지된 메카니즘은 메모리상의 어드레스들과 파일로 구성된 스토리지(storage) 블록의 리스트를 얻는 것을 가능하게 한다.
디렉토리는 그 내용이 파일 디스크립터의 리스트인 특정 파일이다. 이와 같은 디스크립터는 예컨대 다음 요소들:
-파일명;
-파일의 길이;
-생성일;
-파일의 블록들의 리스트를 읽을 수 있게 하는 레퍼런스(제1 블록의 번호, 블록 번호들의 테이블 등); 및
-파일의 특성을 구체화하는 속성(디렉토리, 읽기, 쓰기 및 실행 등)
을 포함한다.
제1 디렉토리는 보통 루트 디렉토리라고 한다. 루트가 아닌 디렉토리는 서브 디렉토리라고 한다. 주어진 파일의 디스크립터를 포함하는 디렉토리는 그 상위(father) 디렉토리이다. 따라서, "SGF"에 있는 파일의 어드레스는, 루트 디렉토리로부터 파일의 상위 디렉토리까지, 경로를 정의하는, 디렉토리 이름들의 시퀀스이다. 예컨대, 이와 같은 경로는 다음:
"/root/directory1/directory2/file_name" (4),
과 같이 나타나고, 여기서, 번호 1, 2는 임의의 수이고, "root"는 루트 디렉토리명이며, "file_name"은 임의의 파일명이다.
스마트 카드에 있어서, ISO 7816-4 표준은 "MF"("Master File")라고 하는 루트 디렉토리, "DF"("Dedicated Files")라고 하는 서브디렉토리 및 "EF" ("Elementary Files")라고 하는 기본 파일들을 정의한다.
본 발명의 범위 내에서, "가상"으로서 참조될 파일 관리 시스템("SGFV")은 스마트 카드(2a)가 액세스할 수 있는 가상 오브젝트(Obvi)를 정의할 수 있게 만든다. 본 발명의 방법에 따르면, 가상 오브젝트(Obvi)는 가상 기본 파일과 관련되어 있다. 가상 기본 파일의 내용은 연관된 가상 오브젝트(Obvi)에 접근하고 단말기(1)와 동일한 인스턴스를 얻을 수 있게 하는 정보의 집합으로 구성된다.
실제로, 도7에 도식적으로 설명한 바와 같이, 시스템("SGFV")은 표준 "SGF" 시스템의 서브셋(subset)을 구성할 수 있고, 보다 정확하게, "SGFV"가 상기 ISO 7816-4 표준에 의해 정의된 바와 같이, 기본 파일에 포함된다.
파일 디스크립터는 일반적으로 다음 요소들:
-파일의 이름;
-파일의 길이;
-생성일;
-파일의 블록들의 리스트(제1 블록의 번호, 블록 번호들의 테이블 등)를 독출할 수 있게 하는 레퍼런스(전체 번호가 바람직함): 가상 파일은 그 이름이나 유일한 레퍼런스에 의해 식별됨; 및
-파일의 특정 레퍼런스를 한정하는 파일의 속성: 디렉토리 또는 기본파일, 가상 또는 비가상, 다이렉트(direct) 또는 인다이렉트(indirect);
등을 포함한다.
"다이렉트 가상 오브젝트"는 스마트 카드(2a)로부터 인스턴스화된 오브젝트이다. 그것은 브라우저에 의해 처리될 수 있는, 예컨대 표시될 수 있는 정적 가상 오브젝트(Obvi)이다. 전형적으로 "애플릿"에 의해 브라우저(10)로터 인스턴스화된 가상 오브젝트는 "인다이렉트 가상 오브젝트"이다.
도8은 브라우저(10)와 스마트 카드(2a)를 통해 인터넷 네트워크(RI)의 어디에나 위치하는 가상 오브젝트(Obvi)를 인스턴스화할 수 있게 하는 칩-카드 시스템의 아키텍처를 나타낸다. 이전 도와 공통인 요소들은 동일한 참조부호를 갖고, 필요한 경우에만 다시 설명한다.
도8에 나타낸 아키텍처는 도4와 매우 유사하다. 근본적인 차이는, 스마트 카드(2a)에 저장된 "SGFV", 및 7로 참조된 특정 스크립트를 번역하는 인텔리전트 에이전트 "ATSDA/SGFV"를 제공한다는 사실이다. 특정 애플리케이션(Ai)에 액세스하자 하는 경우, 동작모드는 도4에 도시된 것과 유사하다. 따라서, 이를 상세하게 다시 서술할 필요는 없다. 현재의 경우에는, 특정 애플리케이션이 가상 파일 관리 시스템 "SGFV"(8)로 대체된다. 우선, 네트워크 인텔리전트 에이전트(132)와 "웹" 인텔리전트 에이전트(232ai) 사이에 세션(session)이 형성된다. 상기 메카니즘에 따르면, 그 후 "웹" 에이전트(232ai)와 인텔리전트 에이전트 "ATSDA/SGFV"(7) 사이에 세션이 형성된다.
실제로, 인텔리전트 에이전트 "ATSDA/SGFV"(7)가 전형적으로 다음 타입의 "URL":
"http://www.host.com/cgi-smart/sgfv?" (5)
을 사용하여 액세스할 수 있다. 여기서, "sgfv"는 인텔리전트 에이전트 "ATSDA/SGFV"(7)과 관련된 "CGI" 타입의 애플리케이션이다. 상기 리퀘스트는 "HTML" 페이지에 의해, 디렉토리들의 트리(tree)를 스캔하여 브라우저(10)에 그 내용을 "보여줄" 수 있게 한다. 트리의 "입(leaf)"은 하이퍼링크와 관련된 가상 또는 비가상의 기본 파일들이다. "스마트 카드(2a)-단말기(1)" 방향으로의 전송은 도4에 설명된 바와 같이 행해진다.
즉, 인텔리전트 에이전트 "ATSDA/SGFV"(7)은 "URL" 어드레스를 "SGFV"(8)의 요소와 결합시키고, 이것이 디렉토리 또는 기본 파일이 된다. 디렉토리의 "URL" 어드레스는 그 요소들의 리스트를 담고 있는 "HTML" 페이지를 지정한다. 기본 파일의 "URL" 어드레스는 상기 가상 파일과 관련된 가상 오브젝트(Obvi)의 인스턴스를 생성할 수 있게 한다.
개념을 설명하기 위해, 상기 "URL" 어드레스(5)를 사용하면, 브라우저(10)에 루트 디렉토리의 내용을 나타내는 "HTML" 페이지를 얻을 수 있다. 이 루트 디렉토리는 도9에 도식적으로 나타낸 바와 같이, 한 세트의 서브 디렉토리와 파일들에 의해 구성된다. 상기 도에서, 최상위 레벨에는 루트 디렉토리(rep#0), 중하위 레벨에는 리얼 기본 파일(fe#7), 및 리얼 서브 디렉토리(srep#1), 및 최하위 레벨에는 상기 리얼 서브 디렉토리(srep#1)에 종속하는 가상 서브 디렉토리(rep#2) 및 가상 기본 파일(fe#5)을 나타내며, 참조 부호는 단지 임의적이다.
제1 단계동안, 인텔리전트 에이전트 "ATSDA/SGFV"(7)는 수신된 리퀘스트에 대한 응답으로, 임의의 형태로 "SGFV"(8)의 계층 구조를 나타내는 "HTML" 페이지(도시 안함)를 브라우저(10)에 전송한다. 상기 페이지는 통상 표시 화면(도1a:5)상에 예컨대 메뉴의 형태로 표시된다. 메뉴의 각 라인은 서브 디렉토리 또는 기본 파일을 설명하는 하이퍼링크에 의해 구성된다. 표시는 그래픽 형태인 것이 바람직하고, 디스크립션 텍스트와 연관될 수도 있고 그렇지 않을 수도 있으며, 도9의 트리의 이미지는 상기 화면상에 표시된다. 또한, 아이콘이나 복합(예컨대 3차원)형태를 표시할 수 있고, 각각은 인스턴스화될 가상 오브젝트들중 하나와 관련되어 있고, 그 성질(예컨대, 비디오 파일을 나타내는 카메라)을 나타내는 것이 가능하고 이는 디스크립션 텍스트와 연관될 수도 있고 그렇지 않을 수도 있다.
사용자(Ui)는 하이퍼 링크(그래프의 이미지일 경우에는 노드나 브랜치)를 신속하게 클릭한다. 이렇게 함으로써, 바람직한 가상 오브젝트(Obvi)의 인스턴스를 얻을 수 있을 것이다.
"SGFV"(8)는 도10에 나타낸 바와 같이, 스마트 카드(2a), 예컨대 "EEPROM"(electrically erasable memory)에 포함된 리프로그래머블(re-programmable) 메모리에 저장되는 것이 바람직하다. "SGFV"(8)는 도9의 트리의 구조를 재생한다.
또한, 상기 예에서, 전형적으로 다음:
"http://www.host.com/cgi-smart/sgfv?/file#5 (6)
과 같은 "URL"을 클릭함으로써 초기의 단계동안 얻어지는 메뉴 페이지를 얻으면, 사용자(Ui)는 도10의 기본 파일(fe#5)과 관련된 가상 오브젝트(Obv5)의 인스턴스를 얻는다. 이와 유사하게, 서브디렉토리의 내용을 얻을 수도 있고, (6)에서 파라미터 "file#5"를 file#x"로 대체할 수 있으며, #x는 서브디렉토리와 관련된 숫자이다.
비가상 파일들은 스마트 카드(2a)에 저장되고 "SGF"를 제어하는 일반적인 예에 따른다. 비가상 파일들은 인텔리전트 에이전트 "ATSDA/SGFV"(7)에 필요한 데이터, 예컨대 키(key)들을 포함한다.
가상 오브젝트(Obvi)의 인스턴스화에 필요한 정보를 정의하는 가능한 다양한 규정들, 예컨대:
- 널 길이(null length)의 가상 파일은 그 상위 디렉토리로부터 액세스 방법들을 상속받는다; 및
- 가상 디렉토리는 그 이름이 키(key)(예컨대, "virtual")가 되고, 상기 디렉토리의 액세스 방법들을 포함하는 가상 기본 파일과 관련된다;
들이 있다.
본질적으로, 액세스 가능한 가상 오브젝트(Obvi)의 리스트에 부가하여, 인텔리전트 에이전트 "ATSDA/SGFV"(7)은 가상 기본 파일에 포함된 모든 정보 또는 일부의 정보로부터, 주어진 가상 오브젝트에 접근하는 방법을 제공해야 한다.
본 발명의 방법에 따르면, 가상 기본 파일의 속성들에 따라, 각각 다이렉트(direct) 및 인다이렉트(indirect)라 호칭되는 두 액세스 방법이 제공된다.
다이렉트 방법은 가상 오브젝트(Obvi)를 액세스하고 단말기에서 동일한 인스턴스(instance)를 얻는 프로세스에 사용되는 인텔리전트 에이전트 체인(chain)의 디스크립션(description)을 포함한다. 한 세션이 오픈되면, 주어진 인텔리전트 에이전트는, 상기 세션을 초기화시킨 에이전트로부터, 이하 "호출 방법" 또는 "메소드 PDU"("Method Protocol Data Unit")라고 칭해지는 호출 구조들의 리스트를 수신한다.
호출 구조는:
-세션이 오픈되는 인텔리전트 에이전트의 식별자; 및
-데이터, 또는 그 이용에 필요한 아규먼트(arguments);
를 포함한다.
상기 리스트에 의해 지정(address)된 제1 인텔리전트 에이전트는 제1 인텔리전트 에이전트에 지정된 제1 호출 구조를 "사용한다(consume)". 제1 인텔리전트 에이전트는 마지막 리스트가 도달할 때까지, 나머지 구조 리스트를, 한 세션을 형성하는 다음 인텔리전트 에이전트에 전송한다.
개념을 설명하기 위해, 인텔리전트 에이전트 "ATSDA/SGFV"(7)와 2개의 캐스케이드된 인텔리전트 에이전트(232am,232an) 사이에서 교환되는 각종 단(stage)들의 예를 도 12에 도식적으로 나타낸다. 인텔리전트 에이전트"ATSDA/SGFV"(7)에 의해 전송된 호출 구조 리스트는 실제로 2개의 다른 서브-리스트들을 포함하며, 각각 그 헤더(header)에 #1, #2로 참조되어 있다. 제1 서브-리스트는 제1 인텔리전트 에이전트(232am)에 의해 사용되고, 제2 서브-리스트는 제2 인텔리전트 에이전트(232an)에 의해 사용된다. 인텔리전트 에이전트, 예컨대 인텔리전트 에이전트(232am)는 레퍼런스, 즉 에이전트 식별자("Agent Identifier #1" 또는 "Agent Identifier #2")에 의해 식별된다. 세션이 형성되는, 지정된 인텔리전트 에이전트는 헤더("Call Structure #1" 또는 "Call Structure #2")에 의해 지정된 서브-리스트를 보유한다. 인텔리서브 에이전트가 보유하고 있는 서브 리스트의 아규먼트("Argument#I" 또는 "Argument#2")는 상기 에이전트의 적절한 기능에 필요한 일련의 데이터로 구성된다. 예컨대, 일부의 데이터는 (비가상 또는 가상 디렉트)파일의 이름일 수 있다.
소정의 인텔리전트 에이전트, 예컨대 인텔리전트 에이전트(232am)는 다음 인텔리전트 에이전트(232an)에 호출 구조 리스트를 전송하기 전에 나머지 호출 구조 리스트를 수정할 수 있다. 이를 행하기 위해, 인텔리전트 에이전트(232am)는 인텔리전트 에이전트(232an)를 지정하고, 이와 함께 하나의 세션을 형성한다.
상기 호출 방법은 ASN.1 언어(ISO의 "Abstract Syntax Notation 1")를 사용하여 설명하는 것이 바람직할 수 있다.
다이렉트 액세스 방법은 스마트 카드(3a)로부터 직접 나온 가상 오브젝트(Obvi)를 명확하게 인스턴스화시킨다. 당연한 결과로, 그것은 정적(static) 오브젝트이다. 상기 인스턴스화된 오브젝트는 브라우저(10)에 전송된 "HTML" 페이지 또는 "애플릿(applet)"의 형태로 통상 제공된다.
제2 액세스 방법, 즉 인디렉트 액세스 방법도 실제로 다이렉트 액세스 방법이지만, 스마트 카드(2a)로부터가 아니라 단말기(1)로부터 실행된다. 상기 방법은 본질적으로 동적인 형태의 가상 오브젝트(Obvi)를 인스턴스화하는 데 사용된다.
본 방법 발명의 변경에 의하면, 가상 기본 파일(fe#x)을 지정하는 "URL"에 대한 응답으로, 인텔리전트 에이전트 "ATSDA/SGFV"(7)는 가상 오브젝트(Obvi)와 관련된 다이렉트 액세스 방법을 나타내는 하이퍼 링크를 포함한 "HTML" 페이지를 브라우저(10)에 전송한다.
구현될 수 있는 2가지 변경이 있다.
제1 변경은 "애플릿"의 이용을 포함한다. 이 경우의 액세스 방법에 대한 링크는 어드레스 "@card"에 위치한 "애플릿"이고, 그 자체는:
-스마트 카드(2a)에 저장된 비가상 파일의 이름(즉, "URL"); 및
-가상 다이렉트 파일을 지정하는 "URL";
에 의해 지정될 수 있다.
상기 "애플릿"의 호출 파라미터는, 상기한 바와 같이, 예컨대 ASN.1로 코드화된 호출 구조 리스트이다. "HTML" 페이지에 저장된 "애플릿"은 스마트 카드(2a) 또는 인터넷 네트워크(RI)로부터 브라우저(10)로 다운로드된다. 상기 "애플릿"은 제1 인텔리전트 에이전트와 한 세션을 형성하며, 임의로 232ap로 참조된다. 상기 인텔리전트 에이전트(232ap)로의 접속은, 예컨대, "TCP/IP" 클라이언트/서버형(즉 "소켓 JAVA"로 알려진 클래스(class))의 데이터 교환 모델을 사용한다. 상기 "애플릿"은 "TCP/IP" 클라이언트와 같이 작용하고 카드와 포트: "@card:port"의 어드레스에 의해 확인된 "TCP/IP" 서버(후자도 인텔리전트 에이전트이다)에 접속한다.
도13은 인다이렉트 방법을 이용하는 가상 오브젝트를 인스턴스화하는 데이터 교환의 각종 단계들을 도식적으로 나타낸다. 도13은 상기 예의 파라미터들, 즉 상기 구성 (6)에 의해 "URL" 어드레스로 번역되는 가상 기본 파일(fe#5)을 포함한다. 사용될 스마트 카드의 어드레스는 "@card" 및 포트8080이라고 가정한다. 상기 프로세스에 따라, 인텔리전트 에이전트 "ATSDA/SGFV"(7)에 리퀘스트가 전송된다. 상기 인텔리전트 에이전트 "ATSDA/SGFV"(7)는 브라우저(10)에 "애플릿"으로 구성된 "HTML" 페이지(P)를 되돌린다. 도면을 간략하게 하기 위해, 상기 "애플릿"의 각종 인스트럭션들을 마커 <applet...>와 </applet> 사이에 놓여있는 "Applet code" 표기로 도13에 정리하였다. 기본적으로 공지된 방법에서, "애플릿"은 "가상 단말기(virtual terminal)"에 대해 임의로 "vt.class"라고 칭해지는 "Java" 클래스와 관련되어 있다. 또한, 코드는 232ap로 참조된 리스트 구조의 제1 인텔리전트 에이전트의 어드레스, 및 사용할 포트의 주소, 이 경우 "@card" 및 포트8081의 주소를 가리키는 인스트럭션들을 포함한다. 상기 인텔리전트 에이전트(232ap)는 스마트 카드(2a) 또는 단말기(1)에 위치할 수도 있다는 것을 주목해야 한다.
다음 단계는, 브라우저가 애플릿의 호출 파라미터들을 정의하는 호출 구조 리스트를 사용하여 카드(2a)로부터 애플릿을 요청하는 것을 포함한다. 응답으로, 상기 카드는 브라우저에 애플릿을 전송한다. 곧이어 실행될 상기 애플릿은 가상 "Java" 머신(machine)으로 상기 브라우저에 로드된다. 브라우저에서, 다음 단계는 "Java" 언어의 "소켓" 클래스를 사용하는 인텔리전트 에이전트(232ap)를 호출하는 것을 포함한다.
각 인텔리전트 에이전트, 예컨대 232ap는 정밀한 작업: 암호화된 메시지의 해독, 패스워드 및/또는 보안 데이터의 검증, 제1 포맷에서 다른 포맷으로의 파일의 변환 등을 실행한다. 단지 하나의 인텔리전트 에이전트(232ap)가 제시되면, 도13에 점선으로 나타낸 이전 경우(도12)에서와 같이, 필요하다면, 수개의 캐스케이드된 인텔리전트 에이전트를 제공할 수 있다. 또한, 각 인텔리전트 에이전트(232ap)는 전송된 리스트 구조의 일부를 사용하고, 그 나머지를 바꾸지 않거나 변경시켜 다음 인텔리전트 에이전트(도시 안됨)에 전송한다.
제1 변경을 더 설명하고, 그 개념을 설명하기 위해, 사용자(Ui)가 예컨대 "MP3" 포맷으로 코드화된 오디오 파일을 다운로드하고 실행하고자 한다고 가정한다. 상기 파일은 FS로 참조된 가상 오브젝트들중 하나를 구성하고, 초기 단계동안 인텔리전트 에이전트 "ATSDA/SGFV"(7)에 의해 전송된 "HTML" 메뉴 페이지에 의해 제공된다. 도14는 FS로 참조된 이와 같은 가상 오브젝트를 인스턴스화하는 단계들의 시퀀스를 도식적으로 나타낸다. 브라우저(10)는 이와 같은 포맷에 대한 적절한 리더를 갖고 있지 않다고 가정한다. LS로 참조된 상기 리더는 인터넷 사이트상에서 검색(search)될 수 있으며, 사운드 파일(FS)이 위치한 사이트와 상이할 수도 있고 그렇지 않을 수도 있다.
상기 예에서, 단계들의 시퀀스는 다음:
a/ 사용자(Ui)는 하이퍼링크(텍스트, 아이콘, 또는 검색될 오브젝트, 즉 파일(FS)의 다른 그래픽 표시)를 클릭한다: 리퀘스트(I1)가 스마트 카드(2a)로 전송된다;
b/ 응답(R1)으로, "HTML" 페이지가 스마트 카드(2a)에 의해 단말기(1) 및 브라우저(10)에 전송된다;
c/ 수신된 "HTML" 페이지는 브라우저(10)로 하여금 "애플릿": 질의(interrogation)(I2)(현재의 경우, 이는 적절한 사운드 리더(reader)(LS)를 검색(search)하는 것을 의미한다)를 요청하게 한다;
d/ 응답(R2)으로, 검색된 리더(LS)는 다운로드되어 단말기(1)에 설치된다;
e/ 오디오 파일(FS)의 인스턴스를 얻기 위해, 브라우저(10)는 스마트 카드(2a), 리퀘스트(I3)를 다시 지정한다; 및
f/ 응답으로, 브라우저(10)는 독출, 즉 적절한 사운드 리더(LS)를 갖는 단말기(1)에 의해 플레이(play)될 수 있는 상기 오디오 파일(FS)을 수신한다;
등과 같다.
모든 동작들은 사용자(Ui), 보다 정확하게는 스마트 카드(2a)만을 "인지하는" 브라우저(10)에게 명백하다. 리더(LS)(또는 보다 일반적으로 다른 "애플릿") 및/또는 검색된 가상 오브젝트, 즉 예에서 파일(FS)은, 그 사이즈를 스마트 카드(2a)의 저장 용량에 맞도록 설정하기 때문에, 스마트 카드(도14의 점선으로 나타낸 루프백(loopback))에 저장될 수 있다. 브라우저(10)는 가상 오브젝트(Obvi)의 정확한 위치를 알지 못한다. 단지 스마트 카드(2a), 보다 구체적으로 인텔리전트 에이전트 "ATSDA/SGFV"(7)만이 "SGFV"(8)의 리스트의 가상 오브젝트들의 위치 및 그들을 액세스하는 방법을 알고 있다.
또한, 상기 방법의 바람직한 변경에서, 인텔리전트 에이전트 "ATSDA/SGFV"(7)은 소정의 사용자(Ui)(인증)에게 액세스할 수 있는 가상 오브젝트만의 리스트를 알고 있다. 따라서, 인텔리전트 에이전트"ATSDA/SGFV"(7)은 안전한 시스템이다. "안전한(secure)"이란 용어는 가장 넓은 의미로 해석되어야 한다. 예컨대, 인텔리전트 에이전트"ATSDA/SGFV"(7)는, 소정의 서명(subscription)에 근거한 특정 리소스들에 액세스하는 지불 카드, 또는 예컨대 클리어런스(clearance)의 레벨에 근거한 기밀의 리소스에 실제로 안전한 액세스를 제공하는 카드들에 관한 것이다. 지시한 바와 같이, 리소스들 또는 가상 오브젝트(Obvi)들은 트랜잭션(transaction)에 의해 구성될 수 있다.
이는 본 발명에 따른 방법의 특징을 구성한다.
제2 변경에 의하면, 도15에 도식적으로 나타낸 바와 같이, 액세스 방법과 관련된 제1 인텔리전트 에이전트의 "TCP/IP"를 정의하는 하이퍼링크를 사용할 수 있다. 어드레스는 "@Agent:AgentPort"형이고, "@Agent"는 요구중인 인텔리전트 에이전트의 실제 어드레스이고 "AgentPort"는 후자의 포트이다. 이 경우의 리스트 "MethodPDU"는 "URL"의 파라미터이다. 하이퍼링크는 예컨대, 이미지 또는 "HTML" 페이지(P') 형태와 관련된다.
따라서, 예컨대, "다음 구조:
http://@Agent:AgentPort/MethodPDU?Value-xx... (7)
를 갖는 "URL"은 "TCP/IP 웹" 서버로서 작용하는 인텔리전트 에이전트(232aq)에 도달하는 것을 가능하게 한다. 상기 인텔리전트 에이전트(232aq)는 어드레스 Agent:AgentPort에 위치하고, 파라미터 "Value-xx..."를 갖는 호출 구조 리스트 "MethodPDU"를 수신한다.
개념을 설명하기 위해, 가상 오브젝트(Obvi)가 브라우저(10)를 사용하여 특정 포맷으로 화면(도1a:5)상에 표시될 이미지이고, 일반적으로 뷰어라고 불리우는 브라우저는 상기 표시를 위한 적절한 프로그램을 갖지 않는다고 가정한다. 이는, 예컨대 단말기(1)에서 사용되는 오퍼레이팅 시스템에 의해 실행될 수 있는 "XXX.exe" 타입의 프로그램일 수 있고, 여기서, "XXX"는 프로그램의 이름이다. 상기 하이퍼링크(7)를 클릭하면 단말기(1)이나 원격 시스템에 위치될 수 있는 상기 실행가능한 프로그램을 검색할 수 있다.
2가지 변경된 실시예들간의 차이점은, 첫 번째 경우, 브라우저가 "애플릿"의 로딩을 요청하도록 "강요된다"는 것이다. 상기 모든 스텝들은 자동적으로 행해진다. 두 번째의 경우, 사용자(Ui)가 신속하게 하이퍼링크를 클릭하고 유사한 동작을 실행한다.
상기한 바로부터, 본 발명이 명료하게 목적을 실현하는 것을 쉽게 알 수 있다.
그러나, 본 발명은 상기 실시예, 특히 도 2 내지 15와 관련된 실시예에 한정되지 않는다.
특히, 다른 스크립트 번역 인텔리전트 에이전트들과 마찬가지로, 가상 파일 관리 시스템과 관련된 상기 인텔리전트 에이전트의 기능은 비전용 에이전트: "웹" 에이전트 또는 "APDU" 에이전트에 의해 실행될 수 있다.
본 발명은 네트워크상의 오브젝트를 활성화할 수 있는 정보를 포함하는 내장시스템, 및 상기 오브젝트를 활성화하는 방법에 관한 것이다.

Claims (15)

  1. 정보처리수단과 정보저장 수단을 포함하는 칩을 갖추고 단말기를 통해 네트워크와 함께 작동하도록 설계된 내장 시스템에 있어서,
    상기 네트워크에 위치된 오브젝트와 관련된 정보를 포함하는 적어도 하나의 오브젝트 파일을 저장하고 상기 오브젝트의 인스턴스를 생성할 수 있고,
    내장 시스템이 상기 네트워크내에 정보 서버를 구성하도록, 상기 단말기내에 위치된 짝을 이루는 네트워크 인터페이스 수단과 함께 작동하도록 설계된 네트워크 인터페이스 수단을 포함하며,
    상기 네트워크 인터페이스 수단을 통과하고 적어도 상기 오브젝트 파일에 할당된 정보와 상기 오브젝트 파일과 교환된 정보간의 통신을 형성하도록 설계된 오브젝트 파일 인터페이스 수단을 포함하는 것을 특징으로 하는, 내장 시스템.
  2. 제1항에 있어서, 상기 오브젝트 파일은 브라우저 소프트웨어에서 실행가능한 하나의 독립 소프트웨어를 포함하는 것을 특징으로 하는, 내장 시스템.
  3. 제1항에 있어서, 상기 네트워크 인터페이스 수단은 단말기내에 위치된 짝을 이루는 네트워크 인터페이스 수단과 함께 작동하도록 설계되어, 내장 시스템이 상기 네트워크의 적어도 하나의 서버에 접속가능한 클라이언트와 같이 작용하는 것을 특징으로 하는, 내장 시스템.
  4. 정보처리수단과 정보저장 수단을 포함하는 칩을 갖추고 단말기를 통해 네트워크와 함께 작동하도록 설계된 내장 시스템을 사용하고, 상기 내장 시스템은 상기 네트워크에 위치된 오브젝트와 관련된 정보를 포함하는 적어도 하나의 오브젝트 파일을 저장하고 상기 오브젝트의 인스턴스를 생성할 수 있으며, 내장 시스템이 상기 네트워크내에 정보 서버를 구성하도록, 상기 단말기내에 위치된 짝을 이루는 네트워크 인터페이스 수단과 함께 작동하도록 설계된 네트워크 인터페이스 수단, 및 상기 네트워크 인터페이스 수단을 통과하고 적어도 상기 오브젝트 파일에 할당된 정보와 상기 오브젝트 파일과 교환된 정보간의 통신을 형성하도록 설계된 오브젝트 파일 인터페이스 수단을 구비하는 것을 특징으로 하는, 네트워크에 위치된 오브젝트를 인스턴스화 하기 위한 방법으로서,
    상기 방법은 또한, 적어도 다음 스텝,
    - 구현된 에이전트들의 리스트를 설정하는 스텝; 및
    - 각 에이전트에 대해, 에이전트에 필요한 호출 아규먼트(call argument)를 정의하는 스텝;
    에 의해, 오브젝트 파일을 사용하는 에이전트들간의 일련의 세션을 기술할 수 있도록 되어 있는 것을 특징으로 하는, 네트워크에 위치된 오브젝트를 인스턴스화 하기 위한 방법.
  5. 제4항에 있어서, 호출 아규먼트는 다른 에이전트와의 한 세션의 오픈을 기술하는 방법.
  6. 제4항에 있어서, 에이전트는 다른 에이전트에 의해 사용된 아규먼트의 리스트를 수정하는 방법.
  7. 정보처리수단과 정보저장 수단을 포함하는 칩을 갖추고 단말기를 통해 네트워크와 함께 작동하도록 설계된 내장 시스템을 사용하고, 상기 내장 시스템은 상기 네트워크에 위치된 오브젝트와 관련된 정보를 포함하는 적어도 하나의 오브젝트 파일을 저장하고 상기 오브젝트의 인스턴스를 생성할 수 있으며, 내장 시스템이 상기 네트워크내에 정보 서버를 구성하도록, 상기 단말기내에 위치된 짝을 이루는 네트워크 인터페이스 수단과 함께 작동하도록 설계된 네트워크 인터페이스 수단, 및 상기 네트워크 인터페이스 수단을 통과하고 적어도 상기 오브젝트 파일에 할당된 정보와 상기 오브젝트 파일과 교환된 정보간의 통신을 형성하도록 설계된 오브젝트 파일 인터페이스 수단을 구비하는 것을 특징으로 하는, 네트워크에 위치된 오브젝트를 인스턴스화 하기 위한 방법으로서,
    상기 방법은 또한, 적어도 다음 스텝,
    - 오브젝트 파일의 식별; 및
    - 상기 오브젝트 파일의 실행;
    에 의해, 상기 내장 시스템의 정보 서버로부터 실행되는 오브젝트 파일에 의해 기술되는 에이전트들간의 세션을 구현하는 것을 특징으로 하는, 네트워크에 위치된 오브젝트를 인스턴스화 하기 위한 방법.
  8. 제7항에 있어서, 상기 오브젝트 파일은 오브젝트 파일과 관련된 제1 에이전트를 인스턴스화함으로써 실행되는 방법.
  9. 제7항에 있어서, 상기 오브젝트 파일은 오브젝트 파일에 의해 참조되는 하나 이상의 에이전트를 인스턴스화함으로써 실행되는 방법.
  10. 정보처리수단과 정보저장수단을 포함하는 칩을 갖추고 단말기를 통해 네트워크와 함께 작동하도록 설계된 내장 시스템을 사용하고, 상기 내장 시스템은 상기 네트워크에 위치된 오브젝트와 관련된 정보를 포함하는 적어도 하나의 오브젝트 파일을 저장하고 상기 오브젝트의 인스턴스를 생성할 수 있으며, 내장 시스템이 상기 네트워크내에 정보 서버를 구성하도록, 상기 단말기내에 위치된 짝을 이루는 네트워크 인터페이스 수단과 함께 작동하도록 설계된 네트워크 인터페이스 수단, 및 상기 네트워크 인터페이스 수단을 통과하고 적어도 상기 오브젝트 파일에 할당된 정보와 상기 오브젝트 파일과 교환된 정보간의 통신을 형성하도록 설계된 오브젝트 파일 인터페이스 수단을 포함하는 것을 특징으로 하는, 네트워크에 위치된 오브젝트를 인스턴스화 하기 위한 방법으로서,
    상기 방법은 또한, 적어도 다음 스텝,
    - 실시가능한 소정의 소프트웨어 및 오브젝트 파일의 브라우저 소프트웨어에 의한 로딩; 및
    - 상기 브라우저 소프트웨어에 의한 소정 소프트웨어의 실행;
    에 의해, 브라우저 소프트웨어로부터 실행되는 오브젝트 파일에 의해 기술되는 에이전트들간의 세션을 구현하는 것을 특징으로 하는, 네트워크에 위치된 오브젝트를 인스턴스화 하기 위한 방법.
  11. 제10항에 있어서, 상기 소정의 소프트웨어는 상기 브라우저 소프트웨어에 의해 실행가능한 임의의 번역된 언어로 구현되는 방법.
  12. 제10항에 있어서, 오브젝트 파일 번역기 브라우저 소프트웨어로 구현되는 방법.
  13. 정보처리수단과 정보저장수단을 포함하는 칩을 갖추고 단말기를 통해 네트워크와 함께 작동하도록 설계된 내장 시스템을 사용하고, 상기 내장 시스템은 상기 네트워크에 위치된 오브젝트와 관련된 정보를 포함하는 적어도 하나의 오브젝트 파일을 저장하고 상기 오브젝트의 인스턴스를 생성할 수 있으며, 내장 시스템이 상기 네트워크내에 정보 서버를 구성하도록, 상기 단말기내에 위치된 짝을 이루는 네트워크 인터페이스 수단과 함께 작동하도록 설계된 네트워크 인터페이스 수단, 및 상기 네트워크 인터페이스 수단을 통과하고 적어도 상기 오브젝트 파일에 할당된 정보와 상기 오브젝트 파일과 교환된 정보간의 통신을 형성하도록 설계된 오브젝트 파일 인터페이스 수단을 포함하는 것을 특징으로 하는, 네트워크에 위치된 오브젝트를 인스턴스화 하기 위한 방법으로서,
    상기 방법은 또한, 상기 내장 시스템이, 브라우저 소프트웨어로부터 실행되는 오브젝트 파일에 의해 기술되는 에이전트들간의 세션을 구현할 수 있고, 범용 리소스 식별자에 의해, 상기 브라우저 소프트웨어를 구현하는 소정의 소프트웨어를 식별하는 스텝을 포함하는 것을 특징으로 하는, 네트워크에 위치된 오브젝트를 인스턴스화 하기 위한 방법.
  14. 제13항에 있어서, 상기 범용 리소스 식별자는 하이퍼텍스트 다큐먼트로 통합되는 방법.
  15. 제13항에 있어서, 상기 소정의 소프트웨어는 상기 브라우저 소프트웨어에 유용한 방법에 의해 로드되고 상기 범용 리소스 식별자로부터 유도되는 방법.
KR1020007012833A 1999-03-15 2000-03-15 스마트 카드와 함께 작동하는 “웹” 브라우저를 이용하여 오브젝트에 접근하기 위한 시스템 KR100693196B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR99/03172 1999-03-15
FR9903172A FR2791159B1 (fr) 1999-03-15 1999-03-15 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

Publications (2)

Publication Number Publication Date
KR20010043648A true KR20010043648A (ko) 2001-05-25
KR100693196B1 KR100693196B1 (ko) 2007-03-13

Family

ID=9543203

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020007012833A KR100693196B1 (ko) 1999-03-15 2000-03-15 스마트 카드와 함께 작동하는 “웹” 브라우저를 이용하여 오브젝트에 접근하기 위한 시스템

Country Status (10)

Country Link
US (1) US6944650B1 (ko)
EP (1) EP1076972A1 (ko)
JP (2) JP3794926B2 (ko)
KR (1) KR100693196B1 (ko)
CN (1) CN100385889C (ko)
AU (1) AU776016C (ko)
CA (1) CA2332283C (ko)
FR (1) FR2791159B1 (ko)
HK (1) HK1036539A1 (ko)
WO (1) WO2000056030A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100873211B1 (ko) * 2007-10-26 2008-12-10 주식회사 케이티프리텔 브라우저 초기화면 정보가 저장된 스마트 카드, 스마트카드가 탑재된 이동통신 단말기 및 스마트 카드를 이용한브라우저 초기화면 설정 방법
KR100886137B1 (ko) * 2000-02-10 2009-02-27 쎄뻬8 테크날러지스 에스에이 스마트카드에 소프트웨어 콤포넌트, 특히 애플릿을로딩하는 방법
US7636749B2 (en) 1999-05-19 2009-12-22 Ricoh Company, Ltd. System for distributing, installing and running web applications (agents)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2793576B1 (fr) * 1999-05-11 2001-11-16 Gemplus Card Int Terminal radiotelephonique avec une carte a puce dotee d'un navigateur
US7933968B1 (en) * 2000-06-20 2011-04-26 Koninklijke Philips Electronics N.V. Token-based personalization of smart appliances
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
FR2805108B1 (fr) * 2000-02-10 2002-04-05 Bull Cp8 Procede d'enregistrement d'un usager sur un serveur d'annuaire d'un reseau de type internet et/ou de localisation d'un usager sur ce reseau, et carte a puce pour la mise en oeuvre du procede
US7421480B2 (en) * 2000-02-28 2008-09-02 O2 Micro International Limited Personal computing environment using mozilla
FR2815801B1 (fr) * 2000-10-20 2004-10-29 Trusted Logic Protocole de transmission d'une pluralite de flux logiques d'echange multiple de couples de commande/reponse sur un canal physique unique d'echange entre maitre et esclave et systeme de suivi et de controle d'execution d'appliquettes
US6824064B2 (en) 2000-12-06 2004-11-30 Mobile-Mind, Inc. Concurrent communication with multiple applications on a smart card
FR2820848B1 (fr) * 2001-02-13 2003-04-11 Gemplus Card Int Gestion dynamique de listes de droits d'acces dans un objet electronique portable
SG143065A1 (en) 2001-02-16 2008-06-27 Sony Corp Data processing method and its apparatus
JP4765174B2 (ja) * 2001-02-16 2011-09-07 ソニー株式会社 アプリケーション実行装置、通信システム、およびアプリケーション実行方法
EP1233333A1 (en) * 2001-02-19 2002-08-21 Hewlett-Packard Company Process for executing a downloadable service receiving restrictive access rights to al least one profile file
US7861091B2 (en) * 2001-02-28 2010-12-28 O2Micro International Limited Smart card enabled secure computing environment system
US20020143700A1 (en) * 2001-03-29 2002-10-03 Wu Guangdian Guordon Method and apparatus for individual-centric use of the internet
US7363486B2 (en) * 2001-04-30 2008-04-22 Activcard Method and system for authentication through a communications pipe
DE60221113T3 (de) * 2001-04-30 2012-08-16 Activcard Ireland Ltd. Verfahren und system für die fernaktivierung und -verwaltung von personal security devices
US7316030B2 (en) * 2001-04-30 2008-01-01 Activcard Ireland, Limited Method and system for authenticating a personal security device vis-à-vis at least one remote computer system
US8543823B2 (en) 2001-04-30 2013-09-24 Digimarc Corporation Digital watermarking for identification documents
US20020162021A1 (en) * 2001-04-30 2002-10-31 Audebert Yves Louis Gabriel Method and system for establishing a remote connection to a personal security device
US7225465B2 (en) * 2001-04-30 2007-05-29 Matsushita Electric Industrial Co., Ltd. Method and system for remote management of personal security devices
US20020174206A1 (en) * 2001-05-21 2002-11-21 Moyer Alan L. Web-based file manipulating system
US20020194499A1 (en) * 2001-06-15 2002-12-19 Audebert Yves Louis Gabriel Method, system and apparatus for a portable transaction device
FR2826826B1 (fr) * 2001-06-28 2003-09-26 Cit Alcatel Module d'identification d'abonne et terminal associe
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
AU2002325941B2 (en) * 2001-08-24 2007-10-04 Windmill Microsystems Holding Bv System for remote data acquisition based on e-mail message communication through public and private networks
FR2830151A3 (fr) * 2001-09-25 2003-03-28 Bahia 21 Corp Appareil de communication portatif, et systeme associe
US6868480B2 (en) 2001-09-28 2005-03-15 Ui Evolution, Inc. Removable active application specific medium
US7346783B1 (en) * 2001-10-19 2008-03-18 At&T Corp. Network security device and method
US7162631B2 (en) * 2001-11-02 2007-01-09 Activcard Method and system for scripting commands and data for use by a personal security device
US7783901B2 (en) * 2001-12-05 2010-08-24 At&T Intellectual Property Ii, L.P. Network security device and method
CN101159621B (zh) * 2001-12-05 2010-12-22 微软公司 移动式和嵌入式设备的配置和管理系统
WO2003052680A1 (en) 2001-12-18 2003-06-26 Digimarc Id System, Llc Multiple image security features for identification documents and methods of making same
US7728048B2 (en) 2002-12-20 2010-06-01 L-1 Secure Credentialing, Inc. Increasing thermal conductivity of host polymer used with laser engraving methods and compositions
US20030135618A1 (en) * 2002-01-17 2003-07-17 Ravikumar Pisupati Computer network for providing services and a method of providing services with a computer network
FR2834850B1 (fr) * 2002-01-17 2004-03-19 Gemplus Card Int Procede de chargement de donnees ou d'applications dans un equipement de poste mobile mettant en oeuvre une carte sim pro-active
US20100174717A1 (en) * 2002-02-28 2010-07-08 Olivier Fambon Interative serialisation procedure for structured software objects
US20030167399A1 (en) * 2002-03-01 2003-09-04 Yves Audebert Method and system for performing post issuance configuration and data changes to a personal security device using a communications pipe
KR100858703B1 (ko) * 2002-04-13 2008-09-17 주식회사 케이티프리텔 스마트 카드 기반의 자동 입력 서비스 방법
US7824029B2 (en) 2002-05-10 2010-11-02 L-1 Secure Credentialing, Inc. Identification card printer-assembler for over the counter card issuing
DE602004030434D1 (de) 2003-04-16 2011-01-20 L 1 Secure Credentialing Inc Dreidimensionale datenspeicherung
US7546357B2 (en) 2004-01-07 2009-06-09 Microsoft Corporation Configuring network settings using portable storage media
US8127137B2 (en) 2004-03-18 2012-02-28 Digimarc Corporation Watermark payload encryption for media including multiple watermarks
SE528373C2 (sv) * 2004-08-25 2006-10-31 Smarttrust Ab Förfarande och system för apparathantering
GB2430582B (en) * 2005-09-26 2008-04-09 Nec Technologies Method of managing connectivity status for a mobile radio communications device, and such a device
EP1791055A1 (en) * 2005-11-23 2007-05-30 Incard SA IC card file system
DE102007026870A1 (de) * 2007-06-11 2008-12-18 Giesecke & Devrient Gmbh Ressourcenzugriff unter Vermittlung durch ein Sicherheitsmodul
CN101413803B (zh) * 2007-10-19 2011-07-27 神达电脑股份有限公司 提供终端使用者内容的导航系统及架构
CN101415015B (zh) * 2007-10-19 2014-06-04 神达电脑股份有限公司 提供终端使用者内容的导航系统及架构
US8316150B2 (en) 2007-10-31 2012-11-20 Time Warner Cable Inc. System and method for remotely accessing cablecard
WO2009066920A2 (en) * 2007-11-23 2009-05-28 Lg Electronics Inc. Mobile terminal and associated storage devices having web servers, and method for controlling the same
US8140855B2 (en) * 2008-04-11 2012-03-20 Microsoft Corp. Security-enhanced log in
CN101576989A (zh) 2009-06-09 2009-11-11 阿里巴巴集团控股有限公司 移动终端中实现支付的方法及移动设备
KR101088168B1 (ko) 2009-06-12 2011-12-02 (주) 케이비씨테크 Scws를 이용하여 웹기반 os를 구비한 스마트카드 및 이를 이용한 이동통신 단말기
CN102073634B (zh) * 2009-11-20 2013-10-23 中国银联股份有限公司 一种智能卡文件系统及其文件选择方法
JP2011150560A (ja) * 2010-01-22 2011-08-04 Kddi Corp ソフトウェア保護システム、ソフトウェア保護方法、ソフトウェア変換方法およびプログラム
KR101089023B1 (ko) * 2010-08-06 2011-12-01 삼성에스디에스 주식회사 스마트 카드, 및 이를 이용한 안티-바이러스 시스템 및 스캐닝 방법
FR2975551B1 (fr) * 2011-05-16 2013-09-27 Ethertrust Procede de securisation d'une architecture d'authentification, dispositifs materiels et logiciels correspondants
JP2013037554A (ja) * 2011-08-09 2013-02-21 Mega Chips Corp メモリシステム、セキュリティメモリおよび情報保護方法
ITMI20120561A1 (it) * 2012-04-05 2013-10-06 St Microelectronics Srl Metodo per proteggere un programma applicativo
CN106412126A (zh) * 2016-12-05 2017-02-15 深圳中兴网信科技有限公司 Docker镜像描述信息的展示方法及展示装置
US11531971B2 (en) * 2020-09-02 2022-12-20 Capital One Services, Llc Computer-based systems and device configured for electronic authentication and verification of documents and methods thereof

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5465401A (en) * 1992-12-15 1995-11-07 Texas Instruments Incorporated Communication system and methods for enhanced information transfer
US5694471A (en) * 1994-08-03 1997-12-02 V-One Corporation Counterfeit-proof identification card
US5590197A (en) * 1995-04-04 1996-12-31 V-One Corporation Electronic payment system and method
US5742845A (en) * 1995-06-22 1998-04-21 Datascape, Inc. System for extending present open network communication protocols to communicate with non-standard I/O devices directly coupled to an open network
US5812765A (en) * 1996-03-22 1998-09-22 Axxs Technologies Corporation Multi-media remote data access terminals and system
US6282522B1 (en) * 1997-04-30 2001-08-28 Visa International Service Association Internet payment system using smart card
ZA985151B (en) 1997-06-13 1999-04-13 Gemplus Card Int Smartcard wireless telephone system and method for accessing and communication with the internet
US5983273A (en) 1997-09-16 1999-11-09 Webtv Networks, Inc. Method and apparatus for providing physical security for a user account and providing access to the user's environment and preferences
US6226744B1 (en) * 1997-10-09 2001-05-01 At&T Corp Method and apparatus for authenticating users on a network using a smart card
US6247644B1 (en) * 1998-04-28 2001-06-19 Axis Ab Self actuating network smart card device
FR2781067B1 (fr) * 1998-07-10 2000-09-22 Gemplus Card Int Systemes d'organisation de carte a puce en vue de son utilisation en tant que serveur dans un reseau du type internet
FR2782435B1 (fr) * 1998-08-13 2000-09-15 Bull Cp8 Procede de communication entre une station d'utilisateur et un reseau, notamment de type internet, et architecture de mise en oeuvre
FI109756B (fi) * 1998-09-21 2002-09-30 Nokia Corp Menetelmä tiedonsiirtojärjestelmässä paikallisten resurssien hyödyntämiseksi, tiedonsiirtojärjestelmä ja langaton viestin
FR2790629A1 (fr) * 1999-02-19 2000-09-08 Bull Cp8 Procede d'activation d'applications localisees dans une carte a puce par un navigateur du type dit "web"
FR2805108B1 (fr) * 2000-02-10 2002-04-05 Bull Cp8 Procede d'enregistrement d'un usager sur un serveur d'annuaire d'un reseau de type internet et/ou de localisation d'un usager sur ce reseau, et carte a puce pour la mise en oeuvre du procede
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
FR2805062B1 (fr) * 2000-02-10 2005-04-08 Bull Cp8 Procede de transmission de flux de donnees a haut debit sur un reseau de type internet entre un serveur et un terminal a carte a puce, notamment d'un flux de donnees multimedia
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"

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7636749B2 (en) 1999-05-19 2009-12-22 Ricoh Company, Ltd. System for distributing, installing and running web applications (agents)
KR100886137B1 (ko) * 2000-02-10 2009-02-27 쎄뻬8 테크날러지스 에스에이 스마트카드에 소프트웨어 콤포넌트, 특히 애플릿을로딩하는 방법
KR100873211B1 (ko) * 2007-10-26 2008-12-10 주식회사 케이티프리텔 브라우저 초기화면 정보가 저장된 스마트 카드, 스마트카드가 탑재된 이동통신 단말기 및 스마트 카드를 이용한브라우저 초기화면 설정 방법

Also Published As

Publication number Publication date
US6944650B1 (en) 2005-09-13
AU776016C (en) 2005-03-24
CA2332283C (en) 2011-03-08
JP2006134335A (ja) 2006-05-25
AU3298200A (en) 2000-10-04
JP3794926B2 (ja) 2006-07-12
JP2002539546A (ja) 2002-11-19
CN1300494A (zh) 2001-06-20
KR100693196B1 (ko) 2007-03-13
CA2332283A1 (en) 2000-09-21
FR2791159A1 (fr) 2000-09-22
FR2791159B1 (fr) 2001-05-04
CN100385889C (zh) 2008-04-30
EP1076972A1 (fr) 2001-02-21
AU776016B2 (en) 2004-08-26
WO2000056030A1 (fr) 2000-09-21
HK1036539A1 (en) 2002-01-04

Similar Documents

Publication Publication Date Title
KR100693196B1 (ko) 스마트 카드와 함께 작동하는 “웹” 브라우저를 이용하여 오브젝트에 접근하기 위한 시스템
KR100886137B1 (ko) 스마트카드에 소프트웨어 콤포넌트, 특히 애플릿을로딩하는 방법
KR100723006B1 (ko) 인터넷형 네트워크 서버 디렉토리상에 유저를 등록하고상기 네트워크 상에 유저를 위치 설정하기 위한 방법 및이를 위한 스마트 카드
KR100641241B1 (ko) 네트워크 인터페이스 수단을 포함하는 내장 시스템 및 이에 설치된 응용프로그램을 활성화하는 방법
US6336137B1 (en) Web client-server system and method for incompatible page markup and presentation languages
US6751671B1 (en) Method of communication between a user station and a network, in particular such as internet, and implementing architecture
KR100791946B1 (ko) 인터넷형 네트워크를 통해 서버와 통신하도록 설계된스마트카드 리더를 구비한 보안 단말기
Urien Programming internet smartcard with XML scripts
Vogt et al. Middleware for smart cards

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

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130304

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140903

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee