[go: up one dir, main page]

KR20020079922A - 이동단말의 기억모듈에 프로그램을 배포하는 시스템 - Google Patents

이동단말의 기억모듈에 프로그램을 배포하는 시스템 Download PDF

Info

Publication number
KR20020079922A
KR20020079922A KR1020027011300A KR20027011300A KR20020079922A KR 20020079922 A KR20020079922 A KR 20020079922A KR 1020027011300 A KR1020027011300 A KR 1020027011300A KR 20027011300 A KR20027011300 A KR 20027011300A KR 20020079922 A KR20020079922 A KR 20020079922A
Authority
KR
South Korea
Prior art keywords
program
distribution
mobile terminal
management server
storage module
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
KR1020027011300A
Other languages
English (en)
Inventor
나츠노다케시
이타가키다카토시
모리구치아츠시
Original Assignee
엔티티 도꼬모 인코퍼레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엔티티 도꼬모 인코퍼레이티드 filed Critical 엔티티 도꼬모 인코퍼레이티드
Publication of KR20020079922A publication Critical patent/KR20020079922A/ko
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72406User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • H04W12/35Protecting application or service provisioning, e.g. securing SIM application provisioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • H04W8/24Transfer of terminal data
    • H04W8/245Transfer of terminal data from a network towards a terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Accounting & Taxation (AREA)
  • General Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Strategic Management (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

이동단말(11)에는 복수의 기억영역을 갖는 UIM(12)이 내장 또는 장착되어 있다. 컨텐츠 서버(19)는 이 이동단말(11)로부터의 배포요구를 받으면, 프로그램 및 이 프로그램의 실행 시에 사용되는 데이터 또는 프로그램 자체를 무선 네트웍을 포함하는 네트웍을 통해 배포한다. 이 프로그램 및 데이터 또는 프로그램 자체는 이동단말(11)의 제어부를 경유하지 않고 UIM(12)의 기억영역에 저장된다.

Description

이동단말의 기억모듈에 프로그램을 배포하는 시스템{SYSTEM FOR DELIVERING PROGRAM TO STORAGE MODULE OF MOBILE TERMINAL}
근년, 프로그램(어플리케이션 또는 애플릿)의 실행환경을 갖는 이동단말이 개발되어 왔다. 그리고, 이 종류의 이동단말의 일례로서 자바 가상 머신을 탑재한 것이 있다. 사용자는 이동단말에 프로그램을 인스톨함으로써, 원하는 기능을 이동단말에 추가할 수 있다.
그러나, 이동단말에 원하는 기능이 추가되었다고 해도, 같은 이동단말을 계속해서 사용하면 싫증이 나게 된다. 한편, 이동단말의 업계는 경쟁이 심하고, 사용자에게 있어 매력적인 신제품이 속속 출시되고 있다. 사용자는 자신의 마음에 드는 제품이 판매되고 있을 때에는 현재 가지고 있는 이동단말을 신제품으로 교환하고 싶어한다. 그런데, 이동단말을 교환하면, 지금까지 예전 이동단말에 추가한 기능을 더 이상 이용하는 것이 불가능하다. 이동단말의 교환 후에도 같은 기능을 이용하기 위해서는, 예전 이동단말에 인스톨한 프로그램을 신규 이동단말에 인스톨해야 한다. 이것은 번거로운 일이다.
본 발명은 이동단말에 내장 또는 장착된 기억모듈에 프로그램(어플리케이션 또는 애플릿)을 배포하는 기술에 관한 것이다.
도 1은 본 발명의 제1 실시형태에 의한 프로그램 배포 시스템의 구성을 나타내는 블록도이다.
도 2는 동 실시형태에 의한 이동단말의 외관을 나타낸다.
도 3은 동 이동단말의 구성을 나타내는 블록도이다.
도 4는 동 이동단말 및 이것에 내장 또는 접속된 UIM의 구성을 나타내는 도면이다.
도 5는 동 실시형태에 의한 프로그램 배포에서부터 활성화까지의 과정을 나타내는 시퀀스도이다.
도 6은 동 실시형태에 의한 프로그램 배포의 동작을 나타내는 시퀀스도이다.
도 7은 프로그램 배포시의 이동단말의 표시화면을 나타내는 도면이다.
도 8은 동 실시형태에 의한 프로그램 활성화의 동작을 나타내는 시퀀스도이다.
도 9는 동 실시형태에 있어서 컨텐츠 서버로부터의 요구에 따른 프로그램 불활성화의 과정을 나타내는 시퀀스도이다.
도 10은 동 실시형태에 있어서 컨텐츠 서버로부터의 요구에 따른 프로그램 삭제의 과정을 나타내는 시퀀스도이다.
도 11은 동 실시형태에 있어서 배포 관리 서버로부터의 요구에 따른 프로그램 불활성화 및 프로그램 삭제의 과정을 나타내는 시퀀스도이다.
도 12는 동 실시형태에 의한 UIM의 버전정보 교환을 나타내는 시퀀스도이다.
도 13은 메모리 부족에 의해 프로그램 배포가 실패로 끝나는 과정을 나타내는 시퀀스도이다.
도 14는 메모리 에러에 의해 프로그램 배포가 실패로 끝나는 과정을 나타내는 시퀀스도이다.
도 15는 프로그램 삭제 시에 사용자에게 제공되는 표시화면을 나타내는 도면이다.
도 16은 전자상거래의 결제 시에 사용자에게 제공되는 표시화면을 나타내는 도면이다.
도 17은 통신판매에서의 상품 구입 시에 사용자에게 제공되는 표시화면을 나타내는 도면이다.
도 18은 프로그램의 자동기동 설정시의 표시화면을 나타내는 도면이다.
도 19 및 도 20은 정기승차권 사용시의 표시화면을 나타내는 도면이다.
도 21은 본 발명의 제2 실시형태에 의한 프로그램 배포 시스템의 구성을 나타내는 블록도이다.
도 22는 동 실시형태에 의한 UIM 내의 메모리의 구성을 나타내는 도면이다.
도 23은 동 실시형태에 의한 배포 관리 서버(16A)의 구성을 나타내는 블록도이다.
도 24는 사용자 정보 저장부에의 등록처리를 나타내는 시퀀스도이다.
도 25 및 도 26은 사용자 정보 저장부에 등록된 프로그램을 UIM(12)의 임의의 기본 블록에 등록하는 동작을 나타내는 시퀀스도이다.
도 27 및 도 28은 사용자 정보 저장부에 등록된 프로그램을 UIM의 임의의 기본 블록에 등록하는 동작을 나타내는 시퀀스도이다.
도 29는 사용자 정보 저장부(51)에 등록된 프로그램을 삭제하는 동작을 나타내는 시퀀스도이다.
도 30은 UIM의 기본 블록에 등록되어 있는 프로그램을 삭제하는 동작을 나타내는 시퀀스도이다.
도 31은 사용자 정보 저장부에 대한 불활성화 처리를 나타내는 시퀀스도이다.
도 32는 기본 블록에 대한 불활성화 처리를 나타내는 시퀀스도이다.
본 발명은 상기와 같은 사정을 고려한 것으로, 그 목적은 이동단말의 교환 후에도, 그 교환 전에 이용 가능하던 프로그램을 교환 후에도 계속해서 사용할 수 있게 한 시스템을 제공하는 것이다.
이 목적을 달성하기 위해, 본원 발명자 등은 어떤 종류의 이동단말, 즉, 가입자번호나 메모리 다이얼 정보 등의 가입자정보를 기억하는 모듈(이하, 사용자 ID 모듈 또는 UIM이라 한다)의 장착 또는 내장이 가능한 이동단말에 주목하였다. 이 종류의 이동단말의 사용자는 이동단말을 새로운 것으로 교환하고 싶을 때에는, 자기 자신의 UIM을 새로운 이동단말에 장착 또는 내장하는 것만으로, 그 새로운 이동단말을 사용할 수 있다. 이것에 관련하여 본원 발명자 등은 다음과 같은 생각을 제안하였다. 즉, 이 UIM에 프로그램을 기억시키면, 교환 전의 이동단말에서 이용하고 있던 프로그램을 새로운 이동단말로 쉽게 옮길 수 있어, 사용자의 사용에 있어 편의를 향상시킨다는 것이다.
그러나, 이러한 신규 이동단말의 실현에는 보안성의 문제가 장애물이었다.
우선, UIM에의 프로그램 기입에 아무런 제한을 두지 않는다면, 고의 또는 과실에 의해 이동단말의 원래의 기능을 손상시킬 수 있으며, 이는 바람직하지 못하다.
또한, UIM에 기억되는 가입자정보에는 금전적인 가치를 갖는 데이터나 개인정보가 포함되어 있는 경우가 있다. 따라서, 보안성 확보의 관점에서도 UIM에의 프로그램 기입에 있어 이들 정보의 누설 등을 초래하지 않도록 주의가 필요하다.
이러한 보안상의 문제를 해결하여 사용자의 조작 편의를 향상시키기 위해, 본 발명은 프로그램의 배포요구를 송신하는 수단을 갖는 이동단말, 상기 이동단말에 내장 또는 접속된 기억모듈, 상기 배포요구를 수신하여, 배포대상인 프로그램을 송신하는 컨텐츠 서버, 및 상기 컨텐츠 서버로부터 상기 프로그램을 수신하여, 상기 컨텐츠 서버가 미리 허가된 컨텐츠 서버인 경우에만, 상기 컨텐츠 서버로부터 수신한 상기 프로그램을 상기 이동단말에 내장 또는 접속된 상기 기억모듈에 송신하는 배포 관리 서버를 구비하며, 상기 기억모듈은 기억부와, 상기 이동단말을 통해 상기 배포 관리 서버로부터 수신된 상기 프로그램을 상기 기억부에 기억하여, 요구에 따라, 상기 기억부에 기억된 상기 프로그램을 실행하는 제어부를 구비하는 것을 특징으로 하는 프로그램 배포 시스템을 제공한다.
또한, 본 발명은 프로그램의 배포요구를 송신하는 수단을 갖는 이동단말, 상기 이동단말에 내장 또는 접속된 기억모듈, 및 상기 배포요구를 수신하여, 배포대상인 프로그램이 미리 허가된 컨텐츠 서버에 의해 제공되는 경우에, 그 프로그램을 취득하여 상기 이동단말에 내장 또는 접속된 기억모듈에 송신하는 배포 관리 서버를 구비하며, 상기 기억모듈은 기억부와, 상기 이동단말을 통해 정보를 수신하여, 그 정보가 상기 배포 관리 서버로부터 수신된 프로그램인 경우에만 상기 기억부에 기억하고, 요구에 따라, 상기 기억부에 기억된 상기 프로그램을 실행하는 제어부를 구비하는 것을 특징으로 하는 프로그램 배포 시스템을 제공한다.
이들 시스템에 의하면, 배포 관리 서버를 경유하여, 미리 허가된 컨텐츠 서버로부터 공급되는 프로그램만이 기억모듈에 기입되기 때문에, 사용자는 보안이 보증된 상태로 신규 프로그램을 기억모듈에 기입할 수 있다.
다음에 본 발명의 바람직한 실시형태에 관해 도면을 참조하여 설명한다.
[1] 제1 실시형태
[1.1] 프로그램 배포 시스템의 개요구성
도 1은 본 발명의 제1 실시형태에 의한 프로그램 배포 시스템의 구성을 나타내는 블록도이다.
프로그램 배포 시스템(10)은 크게 이동단말(11), 무선기지국(13), 교환국(14), 네트웍 이동통신 서비스 제어장치(15), 배포 관리 서버(16), 배포용 서비스 제어장치(17), 인증 서버(18), 컨텐츠 서버(19) 및 공중회선 네트웍(20)을 구비하고 있다.
이동단말(11)은 예컨대 휴대전화, PHS(Personal Handyphone System(등록상표)) 등의 통신기능을 갖는 정보처리장치이다. 더욱이 이동단말(11)에는 각종 프로그램 또는 데이터를 기억할 수 있는 UIM(User Identification Module)(12)이 장착 또는 내장되어 있다.
무선기지국(13)은 무선 링크를 통해 이동단말(11)과 통신한다.
교환국(14)은 무선기지국(13)을 통해 상호 접속되는 이동단말(11)과 유선 네트웍인 공통 채널 구내 신호 방식 네트웍(20) 사이에서 교환동작을 제어한다.
네트웍 이동통신 서비스 제어장치(15)는 공중회선 네트웍(20)을 통해 이동단말(11)에 프로그램을 배포하는 경우에 통신을 제어한다.
컨텐츠 서버(19)는 각종 컨텐츠를 배포하는 동시에, 이동단말(11)로부터 요구된 프로그램을 배포한다.
배포 관리 서버(16)는 컨텐츠 서버(19)로부터 UIM(12)으로의 프로그램 배포를 중계 및 관리한다. UIM(12)으로의 프로그램 배포 및 UIM(12)에 저장된 프로그램에의 액세스는 항상 이 배포 관리 서버(16)를 경유하여 행해진다. 이것이 본 실시형태의 최대의 특징이다.
배포용 서비스 제어장치(17)는 공중회선 네트웍(20)을 통해 프로그램을 배포하는 경우에 배포 관리 서버(16)와 공중회선 네트웍(20)과의 인터페이스적인 동작을 한다.
인증 서버(18)는 컨텐츠 서버(19)에 프로그램 배포에 필요한 증명서를 발행하는 장치이다. 이 증명서에는 컨텐츠 서버(19)가 UIM(12)에 프로그램을 배포하는정당한 권한을 갖는다는 것을 UIM(12)을 위해 증명하는 기능을 가진 UIM 공개키와, 컨텐츠 서버(19)가 동일하게 정당한 권한을 갖는다는 것을 배포 관리 서버(16)를 위해 증명하는 기능을 가진 배포 관리 서버 공개키가 포함된다.
본 실시형태에 의한 컨텐츠 서버(19), 배포 관리 서버(16) 및 인증 서버(18)는 각각 다음과 같은 기능을 갖는다.
(a) 본 실시형태에 의하면, 컨텐츠 서버(19)는 UIM(12) 앞으로의 프로그램을 배포 관리 서버(16)에 보내어, 이 배포 관리 서버(16)가 차례로 UIM(12)으로의 프로그램 배포를 한다. 컨텐츠 서버(19)가 직접 UIM(12)에 프로그램을 배포하는 일은 없다.
(b) 컨텐츠 서버(19)는 배포 관리 서버(16)에 의해 중계되면서, 공개키 방식의 암호화 통신에 의해 UIM(12)에 프로그램을 배포한다. 개개의 사용자의 UIM(12)에는 PKI(Public Key Infrastructure)가 설치되어 있고, 각 UIM(12)은 해당 UIM(12)에 고유한 UIM 비밀키를 갖고 있다. 컨텐츠 서버(19)는 어떤 UIM(12) 앞으로의 프로그램 배포를 할 때, 그 UIM(12)의 UIM 비밀키에 대응하는 UIM 공개키를 취득함으로써 프로그램을 암호화한다.
(c) 본 실시형태에 의하면, 미리 허가된 컨텐츠 서버(19)만이 UIM(12) 앞으로의 프로그램을 배포할 수 있다. 허가된 컨텐츠 서버(19)에는 배포 관리 서버 공개키가 할당된다. 컨텐츠 서버(19)는 이동단말(11)로부터의 배포요구를 받았을 때, UIM 공개키에 의해 이미 암호화된 UIM(12) 앞으로의 프로그램을 배포 관리 서버 공개키에 의해 더 암호화하여, 배포 관리 서버(16)에 보낸다.
[1.2] 이동단말의 구성
도 2는 이동단말(11)의 외관을 나타낸다.
이동단말(11)은 표시부(21)와 조작부(22)를 구비하고 있다.
표시부(21)에는 도 2에 나타낸 것처럼, 각종 처리메뉴나 브라우징중인 화면, 전화번호 화면 등이 표시된다.
조작부(22)는 각종 데이터의 입력이나 메뉴화면의 표시를 위한 복수의 조작 버튼을 갖고 있다. 이 조작부(22)의 조작 버튼의 하나로서 UIM 버튼(23)이 있다. 이 UIM 버튼(23)은 사용자가 UIM(12)에 기억된 프로그램을 이용할 때 조작하는 버튼이다.
도 3은 이동단말의 구성을 나타내는 블록도이다.
이동단말(11)은 표시부(21), 조작부(22), 제어부(31), 기억부(32), 외부기기 인터페이스(I/F)부(33), 통신부(34), UIM 인터페이스(I/F)부(35) 및 음성 입출력부(36)를 구비하고 있다.
제어부(31)는 기억부(32)에 기억되어 있는 제어 프로그램과 제어 데이터에 따라 이동단말(11)의 각 부를 제어한다.
기억부(32)는 ROM, RAM 등으로 구성되고, 인터넷에 액세스하기 위한 브라우저 등의 각종 프로그램을 기억하는 프로그램 기억영역이나 각종 데이터를 기억하는 데이터 기억영역 등, 복수의 기억영역을 갖고 있다.
외부기기 I/F부(33)는 제어부(31)나 UIM(12)이 외부의 장치와 정보를 교환할 때 이용되는 인터페이스이다.
통신부(34)는 제어부(31)의 제어 하에, 안테나(34A)를 통해 음성, 문자 메시지 등 각종 데이터를 무선기지국(13)에 송신하는 한편, 안테나(34A)를 통해 이동단말(11)로 보내지는 각종 데이터를 수신한다.
UIM I/F부(35)는 제어부(31) 사이의 데이터 입출력을 한다. 또한, UIM I/F부(35)는 통신부(34) 또는 외부기기 I/F부(33)로부터의 출력 데이터를 제어부(31)를 통하지 않고 UIM(12)에 출력한다. 또한, UIM(12)의 출력 데이터를 제어부(31)를 통하지 않고 외부기기 I/F부(33) 또는 통신부(34)에 직접 출력한다. 이와 같이 제어부(31)를 통하지 않고 외부기기 I/F부(33) 또는 통신부(34) 사이에서 데이터의 입출력을 하는 이유는 제어부(31)의 제어 프로그램의 개조에 의해 UIM(12)상의 데이터로의 부정한 액세스를 방지하여, 보안성을 확보하기 위해서이다.
[1.3] UIM의 구성
도 4는 UIM(12)의 구성을 나타낸다. 또, 도 4에서는 이동단말(11)과의 관계를 밝히기 위해, UIM(12)의 구성요소와 함께 이동단말(11)의 구성요소의 일부를 나타내고 있다. 도 4에 나타낸 것처럼, UIM(12)은 메모리(12M)를 갖고 있고, 이 메모리(12M)는 크게 시스템 영역(12A)과 어플리케이션 영역(12B)을 구비하고 있다.
시스템 영역(12A)에는 가입자번호 데이터, 발신이력정보 데이터, 착신이력정보 데이터, 통화시간정보 데이터, UIM 비밀키 등의 각 사용자 고유의 개인정보 데이터가 저장되어 있다. 이동단말(11)은 이 시스템 영역(12A) 내의 가입자번호 데이터를 발신번호로 이용하여 다른 통신장치와 통신한다.
어플리케이션 영역(12B)은 배포된 프로그램 및 이 프로그램의 실행 시에 사용되는 데이터를 기억하는 영역이고, 복수의 기본 블록으로 나누어져 있다. 도 4에 나타낸 경우에, 어플리케이션 영역(12B)은 6개의 기본 블록(40-1∼40-6)으로 나누어져 있다.
각 기본 블록(40-1∼40-6)은 각각 프로그램 영역(41) 및 데이터 영역(42)을 포함하고 있다. 각 기본 블록(40-k)의 프로그램 영역(41)에는 프로그램(어플리케이션 또는 애플릿)이 저장되어 있다. 또한, 각 기본 블록(40-k)의 데이터 영역(42)에는 동일 기본 블록(40-k)의 프로그램 영역(41)내의 프로그램 실행 시에 사용되는 데이터가 저장되어 있다.
기본 블록(40-1∼40-6)은 서로 독립적이고, 원칙적으로는 어떤 기본 블록(40-j)의 프로그램 영역(41)에 저장된 어플리케이션 또는 애플릿이 다른 기본 블록(40-k)(≠j)의 데이터 영역(42)에 액세스할 수 없도록 관리되고 있다. 이러한 구성을 채용함으로써 각 프로그램의 보안성을 확보하고 있다. 따라서, 어떤 기본 블록(40-j)의 데이터 영역(42)에 금전적인 가치를 갖는 데이터(소위, "값")를 기록하더라도, 이 데이터가 다른 기본 블록(40-k)(≠j)에 저장된 프로그램에 의해 고의 또는 우연히 다시 쓰이는 일은 없다.
또한, 프로그램 영역(41)에 저장된 프로그램인 어플리케이션 또는 애플릿은 배포 관리 서버(16)를 경유하지 않고는 배포 또는 삭제될 수 없다. 그러나, 데이터 영역(42)은 ATM에서 전자화폐를 다운로드 하는 경우와 같이, 배포 관리 서버(16) 또는 로컬 단말을 통해 직접 조작될 수 있다.
더욱이, 어플리케이션 영역(12)은 각 기본 블록(40-1∼40-6)의 프로그램 영역(41)내의 프로그램이 실행 가능한지 여부를 나타내는 활성화 플래그의 기억영역을 갖고 있다.
제어부(30)는 이동단말(11)을 통해 주어지는 요구에 응하여, 어플리케이션 영역(12B)의 기본 블록에 대한 프로그램을 기입하거나, 각 기본 블록에 대응하는 활성화 플래그의 셋 또는 리셋을 하거나, 지정된 기본 블록 내의 프로그램을 실행하는 수단이다. 배포 관리 서버(16)로부터 UIM 공개키에 의해 암호화된 프로그램이 도착했을 때, 제어부(30)는 시스템 영역(12A) 내의 UIM 비밀키를 이용하여 프로그램을 복호화를 하고, 그것을 기본 블록에 기입한다. 또한, 제어부(30)는 기본 블록 내의 프로그램을 실행할 수 있다. 이 처리에서, 이동단말(11)에 의해 실행되는 브라우저를 통해, 실행중의 프로그램이 필요로 하는 정보를 네트웍내의 다른 통신상대로부터 취득하거나, 이동단말(11)의 사용자로부터 취득한다. 제어부(30)는 반대로 브라우저를 통해, 프로그램의 실행결과를 네트웍내의 다른 통신상대에게 보내거나, 이동단말(11)의 사용자에게 보낼 수도 있다. 또한, 제어부(30)는 기본 블록 내의 프로그램에 따라, 브라우저를 통하지 않고 이동단말(11)의 하드웨어 리소스를 통해 외부장치와 정보를 교환할 수 있다. 이러한 목적에 이용 가능한 프로그램의 예로서 이동단말(11)을 정기승차권으로서 기능하게 하는 어플리케이션 프로그램이 있다. 이러한 프로그램을 실행하는 경우, 제어부(30)는 이동단말(30)의 외부기기 I/F에 접속된 근거리 무선장치(도시 생략)를 이용하여, 역의 개찰구의 카드 리더/라이터와 승차권 정보를 교환할 수 있다. 제어부(30)가 어플리케이션 영역 내의 프로그램의 실행 및 제어를 포함하는 상기와 같은 각종 처리를 하기 위한 프로그램은 시스템 영역(12A)에 저장되어 있다.
[1.4] 제1 실시형태의 동작
다음에 정기승차권용 애플릿의 배포를 예로서 제1 실시형태의 동작을 설명한다.
도 5는 프로그램 배포, 기입 및 활성화의 과정을 나타내는 시퀀스도이다.
도 5에 나타낸 것처럼, 이들 일련의 처리는 크게 불활성 상태의 프로그램(애플릿)을 기억모듈로서 UIM(12)에 배포하여, UIM(12)에 기입하는 단계(단계 S1)와, 기입된 프로그램을 활성화하는 활성화 단계(단계 S2)로 구성된다.
[1.4.1] 배포 관리 서버에 대한 증명서 발행
도 6은 프로그램 배포 및 UIM(12)에의 기입 과정을 나타내는 시퀀스도이다. 도 6에 나타낸 것처럼, 인증 서버(18)는 UIM(12) 앞으로의 프로그램 배포를 허가한 컨텐츠 서버(19)에 대하여 증명서를 발행한다(단계 S11). 이 증명서는 컨텐츠 서버(19)와 배포 관리 서버(16)가 공개키 암호화 방식에 의한 암호화 통신을 하기 위해 발행되는 것이다. 즉, 공개키를 이용한 암호화 통신을 가능하게 하기 위해, 짝을 이루는 배포 관리 서버 비밀키와 배포 관리 서버 공개키가 생성된다. 배포 관리 서버 비밀키는 배포 관리 서버(16)에 기억되고, 배포 관리 서버 공개키는 프로그램 배포가 허가된 사람인 것을 증명하는 증명서로서 인증 서버(18)로부터 컨텐츠 서버(19)에 송신된다. 컨텐츠 서버(19)는 이 배포 관리 서버 공개키를 수신하면, 이것을 프로그램의 배포에 대비하여 저장한다.
[1.4.2] 프로그램 배포요구
사용자는 이동단말(11)의 조작부(22)를 조작함으로써, 제어부(31)에 브라우저를 실행시켜, 컨텐츠 제공자의 홈페이지에 액세스하는 것이 가능하다. 이 액세스에 의해, 이동단말(11)의 표시부(21)에는 도 7에 나타낸 것처럼, 컨텐츠 제공자의 컨텐츠 서버(19)에 의해 행해지는 프로그램 배포를 나타내는 배포메뉴화면(D1)이 표시된다. 사용자는 이 상태에서 이동단말(11)의 조작부(22)를 조작함으로써, 프로그램(애플릿) 배포요구를 이동단말(11)로부터 네트웍을 통해 컨텐츠 서버(19)에 송신한다(단계 S12).
[1.4.3] UIM에 대한 증명서 발행요구
컨텐츠 서버(19)는 이동단말(11)로부터 배포요구를 수신하면, 증명서 발행요구를 인증 서버(18)에 보낸다(단계 S12). 이 증명서 발행요구에는 이동단말(11)의 UIM(12)을 특정하는 정보가 포함되어 있다. 여기서, 증명서의 발행은 컨텐츠 서버(19)가 UIM(12)과 공개키 방식의 암호화 통신을 하기 위해 요구되는 것이다. 보다 구체적으로는, 공개키 방식의 암호화 통신을 가능하게 하기 위해, 짝을 이루는 UIM 비밀키와 UIM 공개키가 미리 생성되어, UIM 비밀키는 UIM(12)에 미리 저장되고, UIM 공개키는 인증 서버(18)에 미리 저장된다. 단계 S12에서는 이 인증 서버(18)에 저장된 UIM 공개키가 UIM(12) 앞으로의 프로그램 배포가 허가된 사람인 것을 증명하는 증명서로서 요구되는 것이다.
[1.4.4] 증명서의 발행 및 UIM에 대한 증명서 첨부 프로그램의 배포
인증 서버(18)는 컨텐츠 서버(19)로부터 증명서의 발행요구를 수신하면, 이 발행요구에 의해 특정된 UIM(12)에 대응하는 UIM 공개키를 증명서로서 컨텐츠 서버(19)에 대해 발행한다(단계 S14).
컨텐츠 서버(19)는 UIM(12)에 대응하는 UIM 공개키를 이용하여, 배포요구가 있는 프로그램을 암호화한다. 이 암호화에 의해 얻어진 프로그램은 UIM(12)에 대한 액세스 권한을 가진 정당한 사람인 것을 증명하는 증명서가 첨부된 프로그램이라고 할 수 있다.
다음에 컨텐츠 서버(19)는 UIM 공개키에 의해 암호화된 프로그램을 사전에 인증 서버(18)로부터 수신한 배포 관리 서버 공개키를 이용하여 더 암호화한다. 이 암호화에 의해 얻어진 프로그램은 UIM(12)에 대한 액세스 권한을 가진 정당한 자인 것을 증명하는 증명서와 배포 관리 서버(16)를 경유하여 프로그램 배포를 할 수 있는 정당한 자인 것을 증명하는 증명서가 모두 첨부된 프로그램이라고 할 수 있다.
[1.4.5] 프로그램 배포
컨텐츠 서버(19)는 상기 두 암호화 세션에 의해 얻어진 프로그램을 네트웍을 통해 배포 관리 서버(16)에 배포한다(단계 S15).
배포 관리 서버(16)는 배포 관리 서버 비밀키를 이용하여, 컨텐츠 서버(19)로부터 배포된 암호화 프로그램을 복호화 한다. 이 복호화가 성공하면, UIM 공개키에 의해서만 암호화된 프로그램이 얻어질 수 있다. 이 경우, 컨텐츠 서버(19)는 UIM(12) 앞으로의 프로그램 배포에 대한 권한을 갖는 정당한 사람이라고 할 수 있다. 그래서, 배포 관리 서버(16)는 도 7에 나타낸 화면(D2)의 데이터를 이동단말(11)에 송신하여 표시부(21)에 표시되게 한다. 이 화면(D2)은 프로그램의 배포 여부를 사용자에게 문의하는 화면이다.
[1.4.6] UIM 기입
사용자가 화면(D2)을 확인하여, 조작부(22)를 통해 프로그램의 배포를 허가하는 조작을 하면, 배포허가의 통지가 배포 관리 서버(16)에 보내진다. 배포 관리 서버(16)는 이 통지를 받으면, UIM(12)에 상기 복호화에 의해 취득된 프로그램, 즉, UIM 공개키에 의해 암호화된 프로그램을 배포한다(단계 S16).
이 암호화된 프로그램은 이동단말(11)을 통해 그대로 UIM(12)의 제어부(30)에 전달된다. 즉, 이동단말(11)은 UIM(12)에 대해 통신기능을 제공하는 것뿐이다. 이동단말(11)에 의한 이러한 동작은 UIM(12)으로의 보안 전송 및 보안 기입을 보증하고 있다.
그런데, 상기와 같이 하여 배포 관리 서버(16)가 UIM(12)에 프로그램을 보내기 위해서는 배포 관리 서버(16)가 UIM(12)과의 링크를 확립해야 한다. 이것을 위해서는 UIM(12)이 접속 또는 내장되어 있는 이동단말(11)의 전화번호를 취득해야 한다.
이것을 달성하기 위해 방법으로서, 이동단말(11)로부터 컨텐츠 서버(19)로의 배포요구를 발송할 때, 이동단말(11)의 전화번호를 컨텐츠 서버(19)에 전달시켜, 컨텐츠 서버(19)가 이 전화번호를 배포 관리 서버(16)에 보내는 방법을 생각할 수 있다. 이 경우, 배포 관리 서버(16)는 보내진 전화번호를 이용하여 이동단말(11)에 액세스함으로써, UIM(12) 앞으로의 프로그램을 배포할 수 있다.
또한, 별도의 방법으로서 다음과 같은 것도 있다. 즉, 이동단말(11)로부터 컨텐츠 서버(19)로의 배포요구를 발송하기에 앞서, 이동단말(11)과 배포 관리서버(16) 사이에서 이동단말(11)의 전화번호 대신 식별자를 정하여, 배포 관리 서버(16)는 전화번호와 식별자를 서로 대응시켜 기억한다. 그리고, 이동단말(11)은 컨텐츠 서버(19)에 식별자를 포함하는 배포요구를 보내고, 컨텐츠 서버(19)는 프로그램을 배포 관리 서버(16)에 보낼 때 프로그램에 식별자를 첨부한다. 배포 관리 서버(16)는 식별자로부터 이동단말(11)의 전화번호를 구하고, 이 전화번호에 의해 이동단말(11)을 호출하여 UIM(12) 앞으로의 프로그램을 배포한다. 이 방법은 컨텐츠 서버(19)에 이동단말(11)의 전화번호를 알릴 필요가 없다는 이점이 있다.
UIM(12)의 제어부(30)는 상기와 같이 하여 UIM 공개키에 의해 암호화된 프로그램을 받으면, UIM 공개키와 짝이 되는 UIM 비밀키를 이용하여 프로그램을 복호화 한다. 이 복호화가 성공하면, 암호화되어 있지 않은 원문 형태의 프로그램이 얻어진다. 이 경우, 송신원인 컨텐츠 서버(19)는 UIM(12)으로의 프로그램 배포에 대해 정당한 권한을 갖는 사람이라고 할 수 있다. 그래서, UIM(12)은 복호화에 의해 얻어진 프로그램을 메모리의 기본 블록(40-1∼40-6) 중 적당한 것에 기입한다.
이 기입 동작 중에 도 7에 나타낸 화면(D3)이 이동단말(11)에 의해 표시된다.
[1.4.7] 기입 완료 응답
UIM(12)의 제어부(30)는 프로그램의 기입이 종료하면, 기입 완료 통지를 해당 프로그램을 기입한 기본 블록을 특정하는 정보와 함께 배포 관리 서버(16)에 송신한다(단계 S17).
이 처리에서, 이동단말(11)의 표시부(21)에는 도 7에 나타낸 것처럼, 기입이종료한(등록이 완료) 것을 나타내는 화면(D4)이 표시된다. 그 후, 사용자의 조작에 의해 화면은 다시 화면(D1)이 된다.
[1.4.8] 배포 완료 통지
배포 관리 서버(16)는 UIM(12)으로부터 프로그램의 기입 완료의 통지를 받으면, 해당 프로그램이 기입된 UIM(12)의 기본 블록을 나타내는 정보에 대응하는 정보로서, 기입한 프로그램을 특정하는 정보를 데이터베이스에 등록한다.
배포 관리 서버(16)는 이 데이터베이스에 액세스함으로써 모든 UIM(12)의 기본 블록(40-1∼40-6) 각각에 저장되어 있는 프로그램을 용이하게 파악할 수 있다.
배포 관리 서버(16)는 UIM(12)에 대해 프로그램을 배포하였을 때, 프로그램의 배포원인 컨텐츠 서버(19)의 컨텐츠 제공자에 대한 과금처리를 시작한다. 또, 과금처리의 시작 타이밍은 이것에 한정되는 것이 아니라, 후술하는 활성화 타이밍과 일치할 수도 있다.
컨텐츠 제공자에 대한 과금대상으로서 다음 항목이 있다.
(a) UIM(12)내의 기본 블록의 대여요금
컨텐츠 서버(19)로부터의 프로그램이 UIM(12)에 배포되면, 이 프로그램은 UIM(12)내의 기본 블록(40-1∼40-6) 중 어느 하나에 보존된다. 이 경우의 기본 블록은 프로그램의 보존을 위해 컨텐츠 서버(19)를 소유하는 컨텐츠 제공자에게 대여되고 있다고 생각할 수 있다. 그래서, 이 대여기간, 즉, 프로그램이 기본 블록에 보존되어 있는 기간에 해당하는 요금을 대여요금으로서 컨텐츠 제공자로부터 징수하는 것이다.
(b) 트랜잭션 요금
컨텐츠 서버(19)로부터 송신된 프로그램은 배포 관리 서버(16)의 처리를 통해 UIM(12)에 배포된다. 이 배포 관리 서버(16)의 처리에 대한 대가를 트랜잭션 요금으로서 컨텐츠 제공자로부터 징수한다.
또, UIM(12)의 사용자는 컨텐츠 서버(19)로부터 프로그램의 배포라는 서비스를 받고 있기 때문에, 그 서비스에 관한 과금의 대상자가 된다. 그래서, 배포 관리 서버(16)가 사용자의 통신요금과 함께 컨텐츠 제공자를 대신하여 서비스 이용요금을 사용자로부터 회수하고, 회수된 서비스 이용요금을 컨텐츠 제공자에게 전달할 수도 있다. 소위 "대행회수"이다. 이 경우, 컨텐츠 제공자에게 과금되는 요금에 회수 대행 수수료를 포함시킬 수도 있다.
상기와 같이 하여 프로그램 배포가 완료하면, 배포 관리 서버(16)는 컨텐츠 서버(19)에 통지한다(단계 S18).
[1.4.9] 활성화
UIM(12)에 배포되어 기본 블록에 저장된 프로그램은 활성화되기 전까지는 사용자에 의해 실행될 수 없다.
이와 같이, 프로그램을 배포하는 것만으로 사용자에게 자유로운 실행을 허가하지 않은 것은 프로그램의 실행 시작시기를 컨텐츠 제공자 등이 제어할 수 있게 하기 위해서이다.
이 활성화가 유효 활용되는 경우로서, 예컨대, 신규 발매되는 게임용 프로그램과 같이, 사용 시작시기를 한정해야 하는 경우가 있다. 이 경우에 활성화를 활용하면, 발매일(프로그램 배포일)과 사용 개시일(활성화 일)을 별개로 설정할 수 있어, 컨텐츠 서버(19)의 부하를 경감하는 것이 가능해진다.
또한, 별도의 예로서, 이동단말(11)을 정기승차권으로서 기능시키는 프로그램을 UIM(12)에 배포하는 경우가 있다. 이 경우, 정기승차권의 유효기간의 첫날에 그 프로그램을 실행 가능한 상태로 하기 위해 활성화가 이용된다.
이하, 활성화 동작에 관해 도 8을 참조하여 설명한다.
[1.4.9.1] 배포 관리 서버로의 활성화 요구
컨텐츠 서버(19)는 어떤 프로그램의 활성화가 필요하게 되었을 때, 배포 관리 서버(16)에 활성화 요구를 보낸다(단계 S21). 이 활성화 요구는 활성화 대상이 되는 프로그램을 특정하는 정보를 포함하고 있다. 또한, 특정한 사용자의 UIM(12)에 저장된 프로그램만이 활성화되는 경우에는 활성화 요구에 그 사용자의 식별자(이동단말(11)의 전화번호 또는 이것을 대신하는 식별자)가 포함된다.
[1.4.9.2] UIM으로의 활성화 요구
배포 관리 서버(16)는 이 활성화 요구를 받으면, 이동단말(11)의 UIM(12)에 대해 활성화 요구를 한다(단계 S22). 이미 설명한 바와 같이, 배포 관리 서버(16)의 데이터베이스에는 프로그램이 기입된 UIM(12)의 기본 블록을 나타내는 정보에 대응하는 정보로서, 기입한 프로그램을 특정하는 정보가 등록되어 있다. 배포 관리 서버(16)는 활성화 요구를 받았을 때, 이 데이터베이스에 액세스하여, 활성화 대상인 프로그램이 배포된 UIM(12)과 프로그램이 기입된 기본 블록을 구한다. 또, 복수의 UIM(12)에 저장된 동일 프로그램이 활성화되는 경우에는 그 UIM(12)의 수만큼 활성화 처리가 행해지게 된다. 그리고, 해당하는 UIM(12)이 장착 또는 내장된 각 이동단말(11)에 액세스하여, UIM(12)에 활성화 요구를 보낸다. 각 이동단말(11)에 보내지는 활성화 요구는 활성화 대상이 되는 프로그램이 저장된 기본 블록을 특정하는 정보를 포함하고 있다.
이 활성화 요구는 이동단말(11)에 수신되면, 그대로 UIM(12)에 보내진다. UIM(12)의 제어부(30)는 활성화 요구에 따라 활성화를 실행한다. 즉, UIM(12)은 활성화 요구에 의해 특정된 기본 블록에 관해 그 활성화 플래그를 "0"에서 "1"로 변경한다. UIM(12)의 제어부(30)는 이렇게 하여 활성화 플래그가 "1"이 된 기본 블록 내의 프로그램의 실행요구가 있으면 그것에 따른다. 그러나, 활성화 플래그가 "0"인 기본 블록 내의 프로그램의 실행요구가 있는 경우에는 그 요구를 거부한다.
[1.4.9.3] 활성화 종료 응답
UIM(12)은 프로그램의 활성화가 종료하면, 활성화 종료 통지를 배포 관리 서버(16)에 송신한다(단계 S23). 이 통지는 활성화가 종료한 프로그램을 특정하는 정보, 보다 구체적으로는 그 프로그램이 저장되어 있는 기본 블록을 특정하는 정보를 포함한다.
[1.4.9.4] 활성화 완료 통지
배포 관리 서버(16)는 UIM(12)으로부터 활성화 완료 통지를 받으면, 활성화가 완료한 프로그램이 저장된 UIM(12)의 기본 블록을 구한다. 그리고, 그 기본 블록을 위해 준비된 데이터베이스 내의 기억영역에 활성화가 완료한 취지의 정보를등록한다.
이 등록 결과, 배포 관리 서버(16)는 데이터베이스에 액세스함으로써, 모든 UIM(12)에 관해 각 기본 블록(40-1∼40-6)내의 각 프로그램이 활성화되어 있는지 여부를 파악할 수 있다.
활성화 요구가 있는 프로그램이 배포되는 모든 UIM에 관해 활성화 완료의 등록을 끝내면, 배포 관리 서버(16)는 프로그램의 활성화가 완료되었다는 것을 컨텐츠 서버(19)에 통지한다(단계 S24). 이 통지는 활성화 대상이 된 프로그램을 특정하는 정보를 포함하고 있다.
[1.4.10] 불활성화
UIM(12)에 배포되어 활성화된 프로그램을 불활성화할 필요가 생기는 경우가 있다. 예컨대, 이동단말(11)을 신용카드로서 기능시키는 프로그램이 UIM(12)에 저장되어 있고, 그 UIM(12)을 사용자가 분실한 경우 등이다. 이 경우, 그 분실 사실을 안 사용자로부터의 요구에 의해 불활성화가 시작된다. 그 밖의 예로서, 어떤 서비스를 받고 있는 사용자가 그 서비스 이용료를 체납하고 있는 경우가 있다. 이 경우, 그와 같은 서비스를 제공하고 있는 컨텐츠 제공자로부터의 요구에 의해, 그 서비스를 받기 위한 프로그램에 대한 불활성화가 기동될 수 있다.
이하, 불활성화에 관해 도 9를 참조하여 설명한다.
[1.4.10.1] 배포 관리 서버로의 불활성화 요구
컨텐츠 서버(19)는 어떤 UIM(12)에 배포한 프로그램에 관해 불활성화를 할 필요가 생겼을 때, 그 UIM(12)과 불활성화 대상이 되는 프로그램을 특정하는 불활성화 요구를 배포 관리 서버(16)에 보낸다(단계 S31).
[1.4.10.2] UIM으로의 불활성화 요구
배포 관리 서버(16)는 이 불활성화 요구를 받으면, 데이터베이스에 액세스하여, 불활성화 요구에 의해 특정된 UIM(12)내의 기본 블록 중 불활성화 대상인 프로그램이 저장된 기본 블록을 구한다. 그리고, 그 UIM(12)이 장착 또는 내장된 이동단말(11)에 불활성화 요구를 보낸다(단계 S32). 이 불활성화 요구는 그 대상인 프로그램이 저장된 기본 블록을 특정하는 정보를 포함하고 있다.
불활성화 요구는 이동단말(11)을 통해 UIM(12)에 보내진다. UIM(12)은 불활성화 요구에 의해 특정된 기본 블록에 대해 준비된 활성화 플래그를 "1"에서 "0"으로 변경한다. 이후, 이 기본 블록 내의 프로그램의 실행은 금지된다.
[1.4.10.3] 불활성화 종료 응답
UIM(12)은 프로그램의 불활성화를 끝내면, 배포 관리 서버(16)에 통지한다(단계 S33). 이 통지는 불활성화가 종료한 프로그램을 특정하는 정보, 구체적으로는 그 프로그램을 저장한 기본 블록을 특정하는 정보를 포함하고 있다.
[1.4.10.4] 불활성화 완료 통지
배포 관리 서버(16)는 UIM(12)으로부터 프로그램의 불활성화 종료 통지를 받으면, 이 통지에 따라, 불활성화가 완료한 프로그램을 저장한 UIM(12)의 기본 블록을 구한다. 그리고, 그 기본 블록을 위해 준비된 데이터베이스의 기억영역에 불활성화가 완료한 취지의 정보를 등록한다.
불활성화 완료의 등록을 끝내면, 배포 관리 서버(16)는 불활성화의 완료를컨텐츠 서버(19)에 통지한다(단계 S34).
[1.4.11] 삭제(사용자 희망 시에만)
불활성화된 프로그램은 UIM(12)내의 메모리 영역을 쓸데없이 차지하고 있다. 이러한 불필요한 프로그램은 사용자에게 있어서도 컨텐츠 제공자에게 있어서도 삭제하는 것이 바람직하다. 그러나, 프로그램의 삭제를 사용자에게 맡기는 것은 불가능하다. 사용자가 임의로 UIM(12)내의 프로그램을 삭제한 경우, 그 사실이 즉시 배포 관리 서버(16)에 통지되지 않으면, 프로그램이 삭제되었는데도 불구하고 UIM의 대여요금에 관한 과금처리가 계속 진행하기 때문이다.
그래서, 본 실시형태에 의하면, 사용자가 프로그램의 삭제를 희망하는 경우, 배포 관리 서버(16)의 관리 하에 프로그램을 삭제하도록 하고 있다.
또, 컨텐츠 제공자 측의 이유에 의한 삭제는 과금처리가 복잡해지는 관계로 인해 원칙적으로는 인정하지 않고 있다.
이하, 사용자의 희망에 의해 프로그램이 삭제되는 동작에 관해 도 10 및 도 15를 참조하여 설명한다.
[1.4.11.1] 프로그램 삭제요구
사용자는 이동단말(11)의 조작부(22)를 조작함으로써, 컨텐츠 제공자의 소정의 홈페이지에 액세스한다. 그리고, 이동단말(11)의 표시부(21)의 표시화면상에 도 15에 나타낸 배포메뉴화면(D11)을 표시한다. 이 배포메뉴화면(D11)은 프로그램을 배포하는 컨텐츠 제공자의 컨텐츠 서버(19)에 의해 제공된다. 사용자가 프로그램 삭제를 의미하는 메뉴항목을 선택하면, 이동단말(11)의 표시부(21)에는 도 15에나타낸 것처럼 삭제 여부를 사용자에게 문의하는 화면(D12)이 표시된다.
사용자가 삭제를 허가하는 조작을 하면, 이동단말(11)은 프로그램(애플릿) 삭제요구를 네트웍을 통해 컨텐츠 서버(19)에 송신한다(단계 S41). 이 요구는 삭제 대상인 프로그램을 특정하는 정보를 포함하고 있다.
프로그램 삭제요구의 송신에 따라, 이동단말(11)의 표시부(21)에는 도 15에 나타낸 것처럼 삭제중인 있는 것을 나타내는 화면(D13)이 표시된다.
[1.4.11.2] 배포 관리 서버로의 불활성화 요구
컨텐츠 서버(19)는 프로그램 삭제요구를 받으면, 배포 관리 서버(16)에 대해 불활성화 요구를 보낸다(단계 S42). 이 불활성화 요구는 프로그램 삭제를 요구하고 있는 사용자의 이동단말(11)을 특정하는 정보와, 삭제대상인 프로그램을 특정하는 정보를 포함한다.
[1.4.11.3] UIM으로의 불활성화 요구
배포 관리 서버(16)는 불활성화 요구를 받으면, 데이터베이스에 액세스하여, 삭제대상인 프로그램이 저장된 기본 블록을 구한다. 그리고, 프로그램 삭제를 요구하고 있는 사용자의 이동단말(11)에 대하여, 그 기본 블록을 특정하는 정보를 포함하는 불활성화 요구를 보낸다(단계 S43).
이 불활성화 요구는 이동단말(11)을 통해 UIM(12)에 보내진다. UIM(12)은 불활성화 요구에 의해 특정된 기본 블록을 위해 준비된 활성화 플래그를 "1"에서 "0"으로 변경한다. 이후, 해당 기본 블록 내의 프로그램의 실행이 금지된다.
[1.4.11.4] 불활성화 종료 응답
UIM(12)은 프로그램의 불활성화를 끝내면, 불활성화 종료 통지를 배포 관리 서버(16)에 송신한다(단계 S44). 이 통지는 불활성화된 프로그램이 저장된 기본 블록을 특정하는 정보를 포함하고 있다.
[1.4.11.5] 불활성화 종료 통지
배포 관리 서버(16)는 UIM(12)으로부터 프로그램의 불활성화 종료통지를 받으면, 데이터베이스에서 불활성화 종료 통지에 의해 특정되는 UIM(12)의 기본 블록에 대응하는 영역에 불활성화가 완료한 취지의 정보를 등록한다.
그리고, 배포 관리 서버(16)는 프로그램의 불활성화 완료 통지를 컨텐츠 서버(19)에 보낸다(단계 S45).
[1.4.11.6] 배포 관리 서버로의 삭제요구
컨텐츠 서버(19)는 삭제 대상인 프로그램에 관한 불활성화 완료 통지를 배포 관리 서버(16)로부터 받으면, 그 프로그램의 삭제요구를 배포 관리 서버(16)에 보낸다(단계 S51).
[1.4.11.7] UIM으로의 삭제요구
배포 관리 서버(16)는 이 프로그램 삭제요구를 받으면, 프로그램 삭제를 요구한 사용자의 UIM(12)에 대하여 프로그램 삭제요구를 보낸다(단계 S52). 이 프로그램 삭제요구는 삭제 대상인 프로그램이 저장된 기본 블록을 특정하는 정보를 포함하고 있다.
프로그램 삭제요구는 이동단말(11)을 통해 UIM(12)에 보내진다. UIM(12)은 프로그램 삭제요구에 의해 특정된 기본 블록 내의 프로그램을 삭제한다.
[1.4.11.8] 삭제 종료 응답
UIM(12)은 프로그램의 삭제가 종료하면, 프로그램 삭제를 나타내는 삭제 종료 통지를 배포 관리 서버(16)에 송신한다(단계 S53). 이 삭제 종료 통지는 프로그램의 삭제를 한 기본 블록 및 삭제한 프로그램을 특정하는 정보를 포함하고 있다. 이와 동시에, 이동단말(11)의 표시부(21)에는 도 15에 나타낸 것처럼 삭제 종료를 나타내는 화면(D14)이 표시된다.
[1.4.11.9] 삭제 완료 통지
배포 관리 서버(16)는 UIM(12)으로부터 삭제 종료 통지를 받으면, 데이터베이스에서 삭제를 요구한 사용자 및 삭제된 프로그램의 조합에 대응하는 기억영역에 프로그램이 삭제된 취지의 정보를 등록한다.
그리고, 배포 관리 서버(16)는 프로그램의 삭제가 완료한 취지의 통지를 컨텐츠 서버(19)에 보낸다(단계 S54).
이것에 따라, 배포 관리 서버는 삭제된 프로그램에 관해 컨텐츠 제공자에 대한 과금처리를 한 경우에는 이후의 과금을 하지 않도록 한다.
[1.4.12] 삭제(배포 관리 서버 희망 시에만)
본 실시형태에 의하면, 사용자의 의사 이외의 다른 원인에 의해 프로그램이 삭제되는 경우가 있다. 그 예로서, 어떤 프로그램의 사용기한이 정해져, 그 사용기한이 만료한 경우가 있다.
이하, 이러한 경우에 배포 관리 서버의 주도 하에 프로그램이 삭제되는 동작에 관해 도 11을 참조하여 설명한다.
[1.4.12.1] UIM으로의 불활성화 요구
예컨대, 어떤 프로그램의 사용기한이 지나, 프로그램을 삭제할 필요가 생겼다면, 배포 관리 서버(16)는 데이터베이스에 액세스함으로써, 삭제 대상인 프로그램이 배포된 모든 UIM(12)과, 그 UIM(12) 각각에 있어서 삭제 대상인 프로그램이 저장되어 있는 기본 블록을 구하여, 각 UIM(12)에 불활성화 요구를 한다(단계 S61). 각 불활성화 요구는 삭제 대상인 프로그램이 저장되어 있는 기본 블록을 특정하는 정보를 포함하고 있다.
불활성화 요구는 이동단말(11)을 통해 각 UIM(12)에 보내진다. UIM(12)은 불활성화 요구에 의해 특정된 기본 블록에 대응하는 활성화 플래그를 "1"에서 "0"으로 변경한다. 이후, 해당 기본 블록 내의 프로그램의 실행이 금지된다.
[1.4.12.2] 불활성화 종료 응답
UIM(12)은 불활성화를 종료하면, 불활성화 종료 통지를 배포 관리 서버(16)에 송신한다(단계 S62).
[1.4.12.3] 불활성화 완료 통지
배포 관리 서버(16)는 삭제 대상인 프로그램이 배포된 상대로부터 불활성화 종료 통지를 받으면, 그 프로그램에 대해 형성된 데이터베이스의 기억영역에 불활성화의 완료를 나타내는 정보를 등록한다.
그리고, 배포 관리 서버(16)는 프로그램의 불활성화 완료 통지를 컨텐츠 서버(19)에 보낸다(단계 S63).
[1.4.12.4] 배포 관리 서버로의 불활성화 수리 통지
컨텐츠 서버(19)는 배포 관리 서버(16)로부터 불활성화 완료 통지를 받으면, 배포 관리 서버(16)에 불활성화 수리 통지를 보낸다(단계 S64).
[1.4.12.5] UIM으로의 삭제요구
배포 관리 서버(16)는 불활성화 수리 통지를 받으면, 그 불활성화 수리 통지에 대응하는 불활성화 완료 통지를 송신한 이동단말(11)에 대해 프로그램의 삭제요구를 보낸다(단계 S71). 이 이동단말(11)에 보내지는 삭제요구는 삭제 대상인 프로그램이 저장된 기본 블록을 특정하는 정보를 포함하고 있다.
UIM(12)은 이동단말(11)을 통해 삭제요구를 받으면, 이 요구에 의해 특정된 기본 블록 내의 프로그램을 삭제한다.
[1.4.12.6] 삭제 종료 응답
UIM(12)은 프로그램의 삭제를 끝내면, 삭제 종료 통지를 배포 관리 서버(16)에 송신한다(단계 S72). 이 통지는 프로그램을 삭제한 기본 블록을 특정하는 정보를 포함하고 있다.
[1.4.12.7] 삭제 완료 통지
배포 관리 서버(16)는 삭제 대상 프로그램이 배포되는 모든 상대로부터 삭제 종료 통지를 받으면, 데이터베이스에서 삭제 대상 프로그램을 위해 형성된 기억영역에 프로그램이 삭제된 취지의 정보를 등록한다.
그리고, 배포 관리 서버(16)는 삭제 완료 통지를 컨텐츠 서버(19)에 보낸다(단계 S73).
이와 동시에, 배포 관리 서버는 삭제된 프로그램에 관해 컨텐츠 제공자에 대해 과금처리를 하고 있는 경우에는 이후의 과금을 하지 않도록 한다.
[1.4.12.8] 배포 관리 서버로의 삭제결과 수리통지
컨텐츠 서버(19)는 배포 관리 서버(16)로부터 삭제 완료 통지를 받으면, 배포 관리 서버(16)에 삭제결과 수리통지를 보낸다(단계 S74).
[1.4.13] UIM의 버전 관리에 대한 프로그램 배포처리
사용자로부터의 희망에 관계없이 컨텐츠 서버(19)측이 자발적으로 프로그램을 배포할 필요가 생기는 경우가 있다. 예컨대, 배포된 프로그램의 업그레이드가 그러한 경우이다.
이러한 경우에, 과거에 그 프로그램이 배포된 모든 사용자의 UIM(12)에 새로운 버전의 프로그램을 배포하면 불편이 생긴다. 왜냐하면, 이동단말(11)에 여러 가지 기종이 존재하는 것과 같이 UIM의 사양에도 여러 가지 버전이 존재한다. 따라서, 새로운 버전의 프로그램을 각 UIM에 보내더라도, 어떤 시점 이후에 발행된 버전의 UIM에 의해서만 그 프로그램을 정상적으로 실행할 수 있는 경우가 생기기 때문이다.
그래서, 본 실시형태에 의하면, 프로그램의 업그레이드가 행해지는 각 시점에서, UIM에 대해 버전통지요구가 보내지고, 이 요구에 대한 응답에 따라 소정의 UIM으로의 프로그램 배포 여부의 판단이 행해진다. 도 12에 이 동작을 나타내고 있다. 또, UIM(12)에는 버전통지요구에 응하여 그 버전을 통지하는 기능을 지원하고 있는 것도 있고, 지원하지 않는 것도 있다. 도 12는 그와 같은 기능을 지원하고 있는 UIM에 버전통지요구가 보내진 경우의 동작과, 그와 같은 기능을 지원하지않는 UIM에 버전통지요구가 보내진 경우의 동작을 나타내고 있다.
[1.4.13.1] 버전통지기능을 지원하고 있는 UIM에 대한 동작
[1.4.13.1.1] 배포 관리 서버로의 프로그램 배포요구
컨텐츠 서버(19)는 업그레이드된 프로그램의 배포에 앞서, 그 프로그램을 특정하는 정보와 그 프로그램을 실행할 수 있는 UIM(12)의 버전을 나타내는 버전정보를 포함하는 프로그램 배포요구를 배포 관리 서버(16)에 보낸다(단계 S81).
[1.4.13.1.2] UIM으로의 버전통지요구
배포 관리 서버(16)는 프로그램 배포요구를 받으면, 데이터베이스에 액세스함으로써, 프로그램 배포요구에 의해 특정된 프로그램이 배포된 모든 이동단말(11)을 구하여, 구해진 이동단말(11)에 버전통지요구를 보낸다(단계 S82).
[1.4.13.1.3] 버전통지
버전통지요구는 이동단말(11)을 통해 각 UIM(12)에 보내진다. UIM(12)은 버전통지요구를 받으면, 자기의 버전을 배포 관리 서버(16)에 통지한다(단계 S83).
[1.4.13.1.4] 프로그램 배포 불가 통지
배포 관리 서버(16)는 각 UIM(12)으로부터 버전통지를 받는다. 그리고, 어떤 UIM(12)으로부터 받은 버전통지가 컨텐츠 서버(19)로부터의 버전정보가 가리키는 조건을 만족하지 않는 경우에는, 그 UIM(12)에 프로그램을 배포하는 것이 불가능하다는 것을 컨텐츠 서버(19)에 통지한다(단계 S84).
한편, 다른 어떤 UIM(12)으로부터 받은 버전통지가 컨텐츠 서버(19)로부터의 버전정보가 가리키는 조건을 만족하는 경우, 배포 관리 서버(16)는 그 UIM(12)에프로그램을 배포한다. 이 경우의 동작은 이미 도 6 및 도 8을 참조하여 설명한 것이다.
[1.4.13.2] 버전통지기능을 지원하지 않는 UIM에 관련된 동작
[1.4.13.2.1] 배포 관리 서버로의 프로그램 배포요구
컨텐츠 서버(19)는 상술한 바와 같이 배포 관리 서버(16)에 프로그램 배포요구를 보낸다(단계 S91).
[1.4.13.2.2] UIM으로의 버전통지요구
배포 관리 서버(16)는 이동단말(11)의 UIM(12)에 대하여 버전통지요구를 보낸다(단계 S92).
[1.4.13.2.3] 타이머 카운트
이 경우에 UIM(12)은 버전통지기능을 지원하지 않기 때문에, 응답하지 않는 것이다.
따라서, 배포 관리 서버(16)는 타이머를 감시하여, 소정의 타임아웃 기간이 만료한 경우에는(단계 S93), 이동단말(11)의 UIM(12)에 대해 다시 버전통지요구를 보낸다(단계 S94). 그리고, 재시도 카운터의 값을 1만 증가시킨다.
같은 방식으로, 배포 관리 서버(16)는 타이머를 감시하여, 소정의 타임아웃 기간이 만료한 경우에는(단계 S95), 다시 이동단말(11)의 UIM(12)에 대해 버전통지요구를 한다(단계 S96). 그리고, 재시도 카운터의 값을 1만 증가시킨다.
[1.4.13.2.4] 프로그램 배포 불가 통지
다시, 배포 관리 서버(16)는 타이머를 감시하여, 소정의 타임아웃 기간이 만료한 경우에는(단계 S97), 다시 이동단말(11)의 UIM(12)에 대해 버전통지요구를 한다(단계 S98). 그리고 재시도 카운터의 값을 1만 증가시킨다.
재시도 카운터의 값이 소정의 값(이 경우에는 3)이 되었을 때, 배포 관리 서버(16)는 UIM(12)의 버전이 컨텐츠 서버(19)로부터 통지된 버전의 조건을 만족하지 않는다고 판단하고 컨텐츠 서버(19)에 대해 프로그램 배포 불가 통지를 한다(단계 S84).
이것에 의해 컨텐츠 서버(19)는 배포를 희망하는 프로그램이 배포될 수 없다고 파악하게 된다.
[1.4.14] UIM의 메모리 용량 제한에 따르는 프로그램 배포처리
UIM(12)의 메모리 용량에는 한계가 있기 때문에, 컨텐츠 서버(19)측에서 프로그램의 배포를 희망한다고 해도 배포를 할 수 없는 경우가 일어날 수 있다. 도 13은 그와 같은 경우의 동작예를 게시하고 있다. 이하, 이 동작예에 관해 설명한다.
[1.4.14.1] 배포 관리 서버에 의한 거부
컨텐츠 서버(19)는 배포하는 프로그램을 첨부하여, UIM(12)으로의 프로그램 배포요구를 배포 관리 서버(16)에 보낸다(단계 S101).
배포 관리 서버(16)의 데이터베이스에는 UIM(12)마다 그 메모리의 상태를 나타내는 정보가 등록되어 있다. 배포 관리 서버(16)는 어떤 UIM(12)으로의 프로그램 배포요구를 받으면, 데이터베이스에 액세스하여, 그 UIM(12)의 기본 블록 중 사용 가능한 것이 있는지, 또는 비어 있는 기본 블록은 있지만 프로그램을 기억하기에는 용량이 작은지(UIM의 버전에 따라 용량이 달라질 수 있다) 등, 프로그램의 배포를 저해하는 이유가 있는지 여부를 판별한다.
그리고, 배포 관리 서버(16)는 프로그램의 배포가 불가능한 경우에는 메모리 용량부족에 의한 프로그램 배포 불가 통지를 컨텐츠 서버(19)에 보낸다(단계 S102).
이것에 의해 컨텐츠 서버(19)는 배포를 희망한 프로그램이 배포될 수 없다는 것을 파악한다.
[1.4.14.2] UIM에 의한 거부
배포 관리 서버(16)의 데이터베이스에는 UIM(12)마다 그 메모리의 용량과 현재 이용상태가 등록되어 있다. 그러나, 어떠한 이유에 의해 실제 UIM 메모리의 상태가 배포 관리 서버(16)의 데이터베이스에 등록된 메모리의 상태와 다른 경우가 있다. 이러한 경우에 행해지는 동작에 관해 설명한다.
우선, 컨텐츠 서버(19)는 프로그램을 첨부한 프로그램 배포요구를 배포 관리 서버(16)에 보낸다(단계 S111).
배포 관리 서버(16)는 데이터베이스에 액세스하여, 목적지 UIM(12)의 기본 블록에 이용 가능한 것이 있고, 또한 용량이 충분한지 여부를 판단한다.
이 판단결과가 YES인 경우, 배포 관리 서버(16)는 프로그램을 첨부한 기입요구를 UIM(12)에 보낸다(단계 S112).
기입요구를 받은 UIM(12)은 기입요구에 첨부된 프로그램을 어느 기본 블록에 저장할 수 있는지 여부를 판단한다. 그리고, 이 판단결과가 NO인 경우, UIM(12)은배포 관리 서버(16)에 대하여 메모리 용량부족에 의한 프로그램 배포 불가 통지를 보낸다(단계 S113).
배포 관리 서버(16)는 프로그램 배포 불가 통지를 받으면, 메모리 용량부족에 의한 프로그램 배포 불가 통지를 컨텐츠 서버(19)에 보낸다(단계 S114).
컨텐츠 서버(19)는 이 통지에 의해, 배포를 희망하는 UIM에 프로그램을 배포할 수 없는 것을 파악할 수 있다.
UIM(12)의 메모리의 기입 에러나 메모리 디바이스 그 자체의 고장에 의해 기본 블록에 프로그램을 저장할 수 없는 경우도 있다. 이 경우, 상기 설명한 것과 완전히 같은 동작이 행해진다. 도 14는 그 동작을 나타내고 있다. 도 14에서의 단계 S121∼S124는 도 13에서의 단계 S111∼S114에 대응하고, 그 동작내용은 완전히 동일하다.
[1.4.15] 구체적 동작예
이하, 본 실시형태에 의한 구체적 동작예에 관해 설명한다.
[1.4.15.1] UIM에 저장된 프로그램의 실행
이 동작예에서는 UIM(12)의 기본 블록(40-1)에 "OO 철도"라는 프로그램이 저장되어 있는 것으로 한다.
사용자는 이동단말(11)의 조작부(22)를 조작하여, "OO 철도" 프로그램을 배포한 컨텐츠 제공자의 홈페이지에 액세스한다. 표시부(21)의 표시화면에 도 16에 나타낸 것과 같은 배포메뉴화면(D21)이 표시된다. 이 배포메뉴화면(D21)은 컨텐츠 제공자의 컨텐츠 서버(19)에 의해 제공된다. 사용자는 이 배포메뉴화면(D21)에 표시된 메뉴에서 정기승차권의 구입에 관한 항목을 선택하는 조작을 하면, 정기승차권의 구입요구가 이동단말(11)로부터 네트웍을 통해 컨텐츠 서버(19)에 송신된다.
이 결과, 다운로드화면(D22)이 컨텐츠 서버(19)로부터 이동단말(11)에 보내지고, 표시부(21)에 표시된다. 이 다운로드화면(D22)은 정기승차권과 동일한 금전적 가치를 갖는 몇 개의 가치 데이터의 메뉴를 포함하고 있다.
사용자가 원하는 가치 데이터를 선택하면, 이 선택된 가치 데이터를 요구하는 정보가 이동단말(11)로부터 컨텐츠 서버(19)에 보내진다.
그 후, 컨텐츠 서버(19)는 결제방법을 선택하게 하기 위한 화면의 데이터를 이동단말(11)에 보낸다. 이 결과, 화면(D23)이 이동단말(11)에 의해 표시된다. 사용자는 화면(D23)내의 메뉴에서 "UIM 메뉴로부터 선택"을 선택함으로써, UIM(12)내의 프로그램을 이용하여 결제를 할 수 있다. 즉, 이 선택을 하면, 그 취지의 통지가 UIM(12)에 보내진다. 이 통지를 받은 UIM(12)의 제어부는 기본 블록(40-1∼40-6)에 저장되어 있는 프로그램의 리스트를 이동단말(11)에 돌려준다. 그리고, 이 리스트를 포함하는 화면(D24)이 이동단말(11)의 표시부(21)에 표시된다. 사용자가 이 리스트로부터 결제 프로그램을 선택한다. 그 선택된 프로그램이 UIM(12)에 의해 실행되어 결제처리가 행해진다.
이 결제처리가 예컨대 기본 블록(40-2)의 프로그램 영역(41)내의 프로그램을 실행함으로써 행해지는 것으로 한다. 이 결제처리에는 동일 기본 블록(40-2)의 데이터 영역(42)이 쓰인다.
컨텐츠 서버(19)는 이 결제처리가 끝난 것을 검지하면, 상술한 정기승차권구입요구에 포함된 정기승차권의 가치 데이터를 이동단말(11)에 보낸다. 이 가치 데이터는 승차구간, 유효기한, 사용자 성명, 사용자의 연령 등의 정보를 포함하고 있고, 이동단말(11)로부터 UIM(12)에 보내진다. UIM(12)에서는 "OO 철도" 프로그램에 사용되어야 하는 가치 데이터가 동일 데이터에 대응하는 기본 블록(40-1)의 데이터 영역(42)에 저장된다.
[1.4.15.2] 네트웍을 이용한 통신판매
이 동작예에서는 통신판매를 위한 프로그램이 UIM(12)의 기본 블록(40-2)에 저장되어 있는 것으로 한다.
사용자가 이동단말(11)의 조작부(22)를 조작함으로써 컨텐츠 제공자의 홈페이지에 액세스하여, 이동단말(11)의 표시부(21)에 도 17에 나타낸 배포메뉴화면(D31)이 표시된다. 이 배포메뉴화면(D31)은 네트웍을 이용한 통신판매(소위, "e-코머스")의 서비스를 제공하는 컨텐츠 제공자의 컨텐츠 서버(19)에 의해 제공된다. 사용자가 배포메뉴화면(D31)에 기재된 상품 중에서 원하는 상품(도 17에서는 스키야키용 마츠자카소 1킬로그램 5,000엔)을 선택하면, 구입요구가 이동단말(11)로부터 네트웍을 통해 컨텐츠 서버(19)에 송신된다.
구입요구를 받은 컨텐츠 서버(19)는 결제방법의 선택화면(D32)을 이동단말(11)에 돌려보낸다. 이 결과, 선택화면(D32)이 표시부(21)에 표시된다.
이 선택화면(D32)에 기재된 결제방법 중에서 사용자가 예컨대 "××은행"을 선택한 것으로 한다. UIM(12)의 기본 블록(40-3)에 저장되어 있는 ××은행의 결제 프로그램이 UIM(12)의 제어부(30)에 의해 기동되어, 결제화면(D34)이 표시된다.
그래서, 사용자가 결제정보로서 개인 식별(ID)번호를 입력하면, 이동단말(11)은 통신부(34) 및 네트웍을 통해 ××은행의 결제 서버에 접속하여, 액세스중 화면(D35)이 표시된다.
그리고, 인증을 완료하면, 지급액 확인화면(D36)이 표시된다.
사용자가 이 지급액을 확인하고, 확인을 입력한다. 이동단말(11)은 통신판매를 하고 있는 컨텐츠 제공자의 입금확인화면(D37)을 배송일 등과 함께 표시한다.
[1.4.15.3] 정기승차권 사용(개찰구 통과, 수동기동시)
본 실시형태에 의하면, UIM(12)에 적절한 프로그램을 저장함으로써 이동단말(11)을 정기승차권 대신 사용할 수 있다. 이하, 그 동작예를 설명한다.
우선, 사용자가 U 버튼(23)을 누르면, 도 18에 나타낸 UIM 메뉴화면(D41)이 표시부(21)에 표시된다. 다음에 사용자는 정기승차권을 이용하는 "OO 철도"를 선택한다. 이것에 의해, UIM(12)의 제어부(30)는 기본 블록(40-1)내의 OO 철도 프로그램을 실행하여, 표시부(21)에 메뉴화면(D42)이 표시된다.
화면(D42)이 표시되었을 때, 사용자가 "4. 어플리케이션 자동기동 설정"을 선택하면, 자동기동 설정 확인화면(D43)이 표시되어, 사용자에게 선택을 재촉한다.
여기서, 사용자가 "YES"를 선택하면, 자동기동이 설정된다. 한편, 사용자가 "NO"를 선택하면, 자동기동은 설정되지 않는다.
철도회사의 개찰구에는 개찰용 리더/라이터가 설치되어 있다. 사용자는 개찰구를 통과할 때, 사전에 다음과 같은 조작을 한다.
우선, 사용자는 U 버튼(23)을 누른다. 도 19에 나타낸 UIM 메뉴화면(D41)이표시부(21)에 표시된다. 다음에 사용자는 정기승차권을 이용하는 "OO 철도"를 선택한다. 이것에 의해, UIM(12)의 제어부(30)는 기본 블록(40-1)내의 OO 철로 프로그램을 실행하여, 표시부(21)에 메뉴화면(D42)을 표시한다. 그리고, 사용자는 "1. 정기승차권"을 선택한다. 그러면, OO 철도 프로그램의 일부인 정기승차권 프로그램이 제어부(30)에 의해 기동된다. 그리고, 제어부(30)는 이 정기승차권 프로그램에 따라 개찰처리를 위해 개찰용 리더/라이터와 통신한다. 이 통신이 예컨대 공통키 암호화 방식에 의해 실행되는 경우, 개찰처리는 다음 단계에 의해 행해진다.
(1) 서로 통신상대를 확인한다.
(2) 개찰용 리더/라이터가 이동단말(11)에 정기승차권에 관한 정보의 송신을 요구한다.
(3) 이동단말(11)이 정기승차권에 관한 정보를 공통키로 암호화하여 개찰용 리더/라이터에 송신한다. 이 때, 이동단말(11)의 표시부에 정기승차권 정보의 표시화면(D53)이 표시된다.
(4) 개찰용 리더/라이터는 수신한 정기승차권에 관한 정보를 복호화하고, 정규 사용자인 경우에는 통과를 허가하고 개찰구를 연다.
이와 동시에, 사용자에 대한 감사의 메시지 화면(D54) 등이 표시부(21)에 표시된다.
상기의 설명은 정기승차권을 다루고 있다. 그러나, 이동단말(11)이 개인카드로서 기능하도록 사용되는 경우에는 상기 (4)의 처리에서 사용금액 차감 후의 금액에 상당하는 가치 데이터로서 데이터 영역(42)이 갱신된다.
[1.4.15.4] 정기승차권 사용(개찰구 통과, 자동기동시)
도 18에 나타낸 화면(D43)이 표시되었을 때 사용자가 "YES"를 선택하여, 자동기동이 설정되었다고 한다. 이 경우의 동작은 다음과 같다. 즉, 자동기동이 설정된 이동단말(11)이 역의 개찰구에 접근하면, 개찰용 리더/라이터 장치로부터 송신되는 폴링신호가 이동단말(11)에 의해 수신된다. 이 결과, UIM(12)에서는 OO 철도 프로그램의 일부인 정기승차권 프로그램이 제어부(30)에 의해 자동 기동되어, 상기 수동기동의 경우와 같은 개찰처리가 실행된다.
[1.5] 제1 실시형태의 효과
이상 설명한 바와 같이, 본 실시형태에 의하면, 기억모듈의 기억영역을 분할하여 각 프로그램을 저장하는 경우에도, 이동단말은 통신기능을 UIM에 제공하는 것뿐이며, 이동단말에 쓸데없는 부담을 주지 않는다. 따라서, 이동단말 원래의 기능이 손상되지 않는다.
또한, 프로그램의 저장, 활성화, 불활성화 , 삭제 등은 이동단말에 의해 실행되는 것이 아니라, 배포 관리 서버의 제어 하에 실행된다. 따라서, 보안성을 확보하는 동시에, 사용자의 편의를 향상시킬 수 있다.
[2] 제2 실시형태
상기 제1 실시형태에 의하면, UIM(12)에 의해 실행되는 프로그램은 그 UIM 내의 기본 블록(40-1∼40-6)에 저장되었다. 그러나, 제2 실시형태에서는 실행되는 프로그램 전부를 반드시 기본 블록에 저장할 필요는 없다.
[2.1] 제2 실시형태의 구성
도 21은 본 발명의 제2 실시형태에 의한 프로그램 배포 시스템의 구성을 나타내는 블록도이다.
도 21에는 UIM(12), 컨텐츠 서버(19-1∼19-6, 19X) 및 배포 관리 서버(16A)를 나타내고 있다. 배포 관리 서버(16A)는 상기 제1 실시형태의 배포 관리 서버(16)에 대해 본 실시형태 특유의 기능이 추가되어 있다. 컨텐츠 서버(19-1∼19-6, 19X)는 상기 제1 실시형태의 컨텐츠 서버(19)와 같은 기능을 갖는다. 본 실시형태에 의한 시스템은 상기 제1 실시형태에서와 같이 인증 서버도 갖고 있지만, 도 21에서는 생략되어 있다.
본 실시형태 의한 UIM(12)은 제1 실시형태의 어플리케이션 영역(12B) 대신, 도 22에 나타낸 어플리케이션 영역(12C)을 구비하고 있다. 이 프로그램 기억영역(12C)은 7개의 기본 블록(40-1∼40-7) 및 1개의 프리 기본 블록(40-F1)으로 나누어져 있다.
각 기본 블록(40-1∼40-7) 및 프리 기본 블록(40-F1)은 각각 프로그램 영역(41) 및 데이터 영역(42)을 구비하고 있다. 프로그램 영역(41)에는 프로그램(어플리케이션 또는 애플릿)이 저장된다. 한편, 데이터 영역(42)은 동일한 기본 블록 또는 프리 기본 블록의 프로그램 영역(41)에 저장된 프로그램이 사용하는 데이터를 저장한다.
이 경우에, 기본 블록(40-1∼40-7) 및 프리 기본 블록(40-F1)은 서로 독립하고 있어, 원칙적으로는 어떤 블록의 프로그램 영역(41)에 저장된 프로그램이 다른 블록의 데이터 영역(42)에 액세스하는 것은 불가능하다. 이 점은 상기 제1 실시형태와 같다. 또한, 프로그램 영역(41)에 저장된 프로그램은 배포 관리 서버(16A)를 경유하지 않고 배포, 삭제 등이 불가능하다. 그러나, 데이터 영역(42)은 ATM에서 전자화폐를 다운로드 하는 경우와 같이, 배포 관리 서버(16A) 또는 로컬 단말을 통해 직접 조작하는 것이 가능하다. 이 점도 상기 제1 실시형태와 같다.
본 실시형태에 의하면, 기본 블록(40-1∼40-7)에 저장되는 프로그램의 배포는 배포 관리 서버(16A)에 의해 관리된다. 그러나, 프리 기본 블록(40-F1)에 저장되는 프로그램은 배포 관리 서버(16A)가 아니라, 사용자의 책임에 의해 관리된다.
상기 제1 실시형태에 의해서는, 배포 관리 서버(16)가 이동단말(11)로부터의 배포요구에 따라, 컨텐츠 서버(19)로부터 송신된 프로그램을 UIM(12)에 보내었다. 한편, 본 실시형태에 의한 배포 관리 서버(16A)는 이동단말(11)로부터 프로그램 배포요구를 접수하여, 필요에 따라 컨텐츠 서버에 액세스함으로써 그 프로그램을 취득하여, 이동단말(11)의 UIM(12)에 배포한다. 본 실시형태에 의한 배포 관리 서버(16A)는 컨텐츠 서버로부터 UIM(12)으로의 프로그램 배포를 중계 및 관리한다는 점에서 상기 제1 실시형태의 배포 관리 서버(16)와 공통된다. 그러나, 이 동작은 본 실시형태에 의한 배포 관리 서버(16A)의 기능만이 아니다. 즉, 배포 관리 서버(16A)는 UIM(12)의 사용자를 위해 프로그램 또는 그 소재를 나타내는 정보를 저장하는 수단을 갖고 있고, 이 수단에 저장되어 있는 범위내의 프로그램을 사용자는 배포 관리 서버(16A)를 통해 취득할 수 있다. 이런 의미로 배포 관리 서버(16A)는 UIM(12)을 위한 캐시 메모리와 같은 기능을 하는 것이다.
배포 관리 서버(16A)는 UIM(12)에 대한 프로그램 배포의 관리와 이러한 캐시메모리적인 기능을 다하기 위해, 배포상태 관리부(50)를 구비하고 있다. 이 배포상태 관리부(50)는 사용자 정보 저장부(51)와 프로그램 정보 저장부(52)를 구비하고 있다.
프로그램 정보 저장부(52)는 UIM(12)에 배포 가능한 프로그램 자체 또는 프로그램에 대응하는 URL을 저장하고 있다. 여기서, URL은 그 프로그램이 컨텐츠 서버(19-1∼19-6) 중 어떤 컨텐츠 서버의 어떤 어드레스에 있는지를 나타내는 정보이다. 어떤 프로그램에 관해 URL 정보 또는 프로그램 자체를 프로그램 정보 저장부(52)에 저장할지는 프로그램 정보 저장부(52)의 기억용량에 따라 정해지거나, 또는 기억용량이 충분한 경우에는 배포 서버를 운영하는 컨텐츠 제공자의 희망에 따라 선택되도록 구성하는 것이 가능하다.
프로그램 정보 저장부(52)에 신규 프로그램 또는 그 URL을 저장하는 기회로서, 예컨대, 어떤 사용자의 이동단말(11)로부터 프로그램의 배포요구가 보내지고, 이 배포요구에 따르는 프로그램 또는 그 URL이 프로그램 정보 저장부(52)에 저장되어 있지 않은 경우를 들 수 있다. 이러한 경우, 프로그램 정보 저장부(52)는 이동단말(11)로부터의 요구에 따라, 컨텐츠 서버에 액세스하여, 사용자가 바라는 프로그램을 취득하여 저장한다.
사용자 정보 저장부(51)는 본 발명에 의한 시스템이 적용될 수 있는 n명(n>1)의 사용자에게 대응된 n개의 사용자 개별정보 저장부(53-1∼53-n)를 구비하고 있다. 각 사용자 개별정보 저장부(53-k)는 실제 배포정보 저장부(54)와 가상 배포정보 저장부(55)를 구비하고 있다.
사용자 개별정보 저장부(53-k)의 실제 배포정보 저장부(54)는 사용자(k)의 UIM(12)에 실제로 배포된 프로그램에 대응하는 포인터 데이터를 저장한다. 이 포인터 데이터는 프로그램 그 자체 또는 그 프로그램의 URL이 저장되어 있는 프로그램 정보 저장부(52)내의 특정 영역을 나타내는 포인터이다. 이 실제 배포정보 저장부(54)를 갖고 있기 때문에, 배포 관리 서버(16A)는 UIM(12)의 기본 블록(40-1∼40-7)에 있는 프로그램이 만일 삭제된 경우에도 즉시 재배포할 수 있다.
한편, 사용자 개별정보 저장부(53-k)에서의 가상 배포정보 저장부(55)는 사용자(k)의 UIM(12)에 실제로 배포되지 않지만, 사용자(k)가 희망하는 경우에 UIM(12)에 즉시 배포 가능한 프로그램에 대응하는 포인터 데이터를 저장한다. UIM(12)의 사용자는 가상 배포정보 저장부(55)를 이용한 다음과 같은 서비스를 받을 수 있다.
(a) UIM(12)으로의 배포를 희망하는 프로그램의 포인터 데이터를 우선 가상 배포정보 저장부(55)에 저장한다. 사용자는 가상 배포정보 저장부(55)에 포인터 데이터가 저장된 프로그램의 배포가 필요하게 되었을 때, 이동단말(11)을 이용하여 배포 관리 서버(16A)에 그 요구를 보낸다. 배포 관리 서버(16A)는 요구된 프로그램의 포인터 데이터를 가상 배포정보 저장부(55)로부터 읽고, 그 포인터 데이터에 의해 특정된 프로그램을 취득하여 UIM(12)에 배포한다. 이 경우, UIM(12_에 배포된 프로그램의 포인터 데이터는 가상 배포정보 저장부(55)에서 실제 배포정보 저장부(54)로 이동된다.
(b) UIM(12)내의 기본 블록의 수에는 한계가 있다. 따라서, 기본 블록이 모두 사용중이라, 배포 대상인 프로그램을 저장할 수 있는 기본 블록이 없는 경우가 일어날 수 있다. 그와 같은 경우, 배포 관리 서버(16A)는 실제 배포정보 저장부(54)내의 기억영역 중 UIM(12)에 있는 어떤 기본 블록(40-X)에 대응하는 기억영역에서 포인터 데이터를 읽어, 이것을 가상 배포정보 저장부(55)로 옮긴다. 그리고, 배포 대상인 프로그램을 UIM(12)에 보내어, 기본 블록(40-X)에 기입하고, 그 프로그램의 포인터 데이터를 실제 배포정보 저장부(54)내의 기본 블록(40-X)에 대응하는 기억영역에 기입한다. 이러한 처리에 의해 사용자는 기본 블록이 모두 사용중인 경우에도 배포요구에 의해 프로그램을 취득하여 기본 블록에 저장할 수 있다. 그 때, 기본 블록에서 없앤 프로그램에 관해서는, 필요하다면 다시 배포 관리 서버(16A)에 요구하여, 상기 (a)에서 설명한 처리를 실행할 수 있다.
다음에, 프리 기본 블록(40-F1)에 대응하는 배포 관리 서버(16A)의 기능에 관해 설명한다. 이미 설명한 바와 같이, 프리 기본 블록(40-F1)에 관해서는 배포 관리 서버(16)가 프로그램의 배포를 관리하지 않는다. 사용자는 이동단말(11)을 조작함으로써, 자유롭게 프리 기본 블록(40-F1)에서의 프로그램 등록, 프로그램 삭제를 할 수 있다.
사용자 개별정보 저장부(53)의 실제 배포정보 저장부(54)에는 UIM(12)내의 기본 블록(40-F1)에 대응하는 기억영역이 있다. 그러나, 이 영역에는 어떠한 프로그램의 포인터 데이터가 기억되는 것은 아니고, 기본 블록(40-F1)에 대한 프로그램의 등록 또는 삭제 회수 등의 데이터 또는 그 프로그램의 URL 정보 등이 저장된다.또, 프리 기본 블록(40-F1)에 아무것도 저장되어 있지 않은 경우에는, 그 취지를 나타내는 데이터("Null" 데이터 등)를 이 영역에 저장하도록 구성할 수도 있다.
UIM(12)의 프리 기본 블록(40-F1)에 있는 프로그램은 그것이 삭제된 경우, 상기 기본 블록(40-1∼40-7)에 저장되어 있는 프로그램과는 달리, 사용자 자신이 재등록할 때까지 그대로의 상태가 된다.
한편, 프리 기본 블록(40-F1)에 있는 프로그램을 일시적으로 사용자가 다른 프로그램으로 변경하고 싶은 경우에는, 사용자 자신이 재기입함으로써 언제나 변경이 가능해진다.
이 경우에, 배포 관리 서버(16A)는 프리 기본 블록(40-F1)에 프로그램이 저장되었다고 해도, 과금처리를 실행할 수 없다.
프리 기본 블록(40-F1)은 사용자의 희망에 따라 기본 블록(40-1∼40-7)과 동일하게 취급될 수 있도록 변경하는 것이 가능하다. 즉, 변경 전에는 7개의 기본 블록(40-1∼40-7) 및 1개의 프리 기본 블록(40-F1)을 8개의 기본 블록(40-1∼40-8)으로 이용하는 것이 가능하다.
이 경우에 배포 관리 서버(16A)는 UIM(12)의 시스템 영역(12A)(도 4)에 프리 기본 블록(40-F1)을 기본 블록(40-8)으로 변경한 취지의 정보를 기입한다. 또한, 배포 관리 서버(16A)는 그때까지 프리 기본 블록(40-F1)에 대응하는 영역으로 취급되던 실제 배포정보 저장부(54)내의 영역을 이후에는 기본 블록(40-8)에 대응하는 영역으로 취급할 수 있고, 이 영역을 이용하여 기본 블록(40-1∼40-7)에서와 같은 관리를 시작한다.
또, 이와 같이 사용자가 일단 기본 블록(40-8)으로 변경한 기본 블록을 다시 프리 기본 블록(40-F1)으로 되돌리는 것도 가능하다. 기본 블록(40-1∼40-7)을 프리 기본 블록(40-F1)으로 변경하는 것은 불가능하다.
[2.2] 배포 관리 서버의 구성
도 23에 배포 관리 서버(16A)의 구성을 나타낸다.
배포 관리 서버(16A)는 크게 전송 제어부(61), 상술한 사용자 정보 저장부(51), 상술한 프로그램 정보 저장부(52) 및 보안통신 제어부(62)로 구성된다.
전송 제어부(61)는 외부의 컨텐츠 서버(19-1∼19-6) 또는 이동단말(11) 사이의 전송(컨텐츠 서버(19-1∼19-6)와 이동단말(11) 사이의 전송도 포함)을 제어한다. 또한, 전송 제어부(61)는 사용자 정보 저장부(51), 프로그램 정보 저장부(52) 및 보안통신 제어부(63) 상호간의 전송을 제어한다. 더욱이 전송 제어부(61)는 배포상태 관리부(50), 사용자 정보 저장부(51), 프로그램 정보 저장부(52) 및 보안통신 제어부(63)를 제어하는 한편, 배포상태 관리부(50), 사용자 정보 저장부(51), 프로그램 정보 저장부(52) 및 보안통신 제어부(63)에서의 각종 처리의 실행을 요구한다.
프로그램 정보 저장부(52)는 UIM(12)의 기본 블록(40-1∼40-7)에 배포를 허가한 프로그램에 대한 포탈사이트로서 실질적으로 기능한다.
보안통신 제어부(63)는 컨텐츠 서버(19-1∼19-6)로부터 송신된 정보(암호화된 프로그램 등)의 인증, 각 UIM이 보유하고 있는 비밀키와 짝이 되는 공개키의 보유, 및 컨텐츠 서버(19-1∼19-6)에 대한 공개키의 발행관리 등을 한다.
[2.3] 제2 실시형태의 동작
[2.3.1] 사용자 정보 저장부에의 등록
도 21에 나타낸 예에서, 컨텐츠 서버(19-1∼19-6)는 배포 관리 서버(16A)의 관리 하에 있다. 사용자는 이들 컨텐츠 서버에 저장된 프로그램(애플릿)을 이용하고 싶은 경우, 그 프로그램을 배포 관리 서버(16A)의 사용자 정보 저장부(51)에 등록해야 한다. 이하, 도 24를 참조하여 이 등록처리에 관해 설명한다.
우선, 사용자는 등록 가능한 프로그램의 메뉴 리스트의 요구를 이동단말(11)로부터 배포 관리 서버(16A)에 보낸다. 이 요구는 배포 관리 서버(16A)의 전송 제어부(61)를 통해 프로그램 정보 저장부(52)에 보내진다(단계 S131).
이 요구를 받은 프로그램 정보 저장부(52)는 등록 가능한 프로그램, 구체적으로는 프로그램 정보 저장부(52)에 프로그램 자체 또는 URL이 저장되어 있는 모든 프로그램의 메뉴 리스트를 작성하여, 전송 제어부(61)를 통해 이동단말(11)에 송신한다(단계 S132).
이 메뉴 리스트는 이동단말(11)에 의해 수신되어 표시부(21)에 표시된다. 이 상태에서, 사용자는 조작부(22)를 조작함으로써, 배포 관리 서버(16A)로부터 원하는 프로그램에 관한 코멘트를 취득하여 표시부(21)에 표시할 수 있다.
사용자가 조작부(22)를 조작함으로써, 배포를 요구한 프로그램이 확정되면, 이동단말(11)은 그 프로그램을 특정하는 정보를 포함하는 등록요구를 배포 관리 서버(16A)의 프로그램 정보 저장부(52)에 송신한다(단계 S133).
프로그램 정보 저장부(52)는 이 프로그램 등록요구에 근거하여, 사용자가 요구하고 있는 프로그램을 사용자 정보 저장부(51)에 등록한다(단계 S134).
이 단계 S134의 동작에 관해 자세히 설명하면 다음과 같다. 우선, 상기 등록요구가, 예컨대, 어떤 사용자(k)의 UIM(12)이 내장 또는 장착된 이동단말(11)로부터의 등록요구인 것으로 한다. 이 경우, 프로그램 정보 저장부(52)는 등록요구에 근거하여, 사용자가 요구하고 있는 프로그램을 판별하여, 프로그램 정보 저장부(52)내의 각 영역 중 그 프로그램의 소재를 나타내는 URL 정보 또는 그 프로그램 자체를 저장하고 있는 영역을 특정하는 포인터 데이터를 구한다. 이렇게 하여 사용자가 요구하고 있는 프로그램의 포인터 데이터가 얻어지면, 프로그램 정보 저장부(52)는 사용자(k)에 대응하는 사용자 개별정보 저장부(53-k)의 실제 배포정보 저장부(54)의 각 영역의 기억내용에 액세스함으로써, 사용자(k)의 UIM(12)의 각 기본 블록 중 이용 가능한 기본 블록(40-X)(1 ≤X ≤7)을 구한다. 그리고, 실제 배포정보 저장부(54)의 각 영역 중 기본 블록(40-X)에 대응하는 영역에 사용자가 요구하고 있는 프로그램의 포인터 데이터를 등록한다(단계 S134). 여기서, 사용자(k)의 UIM(12)에는 이용 가능한 기본 블록(40-X)(1 ≤X ≤7)이 존재하지 않는 경우도 있을 수 있다. 이러한 경우, 프로그램 정보 저장부(52)는 사용자가 지정한 또는 자동적으로 설정한 가상 배포정보 저장부(55)에 포인터 데이터를 등록한다.
그런데, 단계 S141에서 메뉴 리스트 중에 원하는 프로그램이 없는 경우가 있다. 이러한 경우, 사용자는 이동단말(11)을 조작하여 프로그램 정보 저장부(54)에원하는 컨텐츠 서버로의 액세스를 요구할 수 있다. 이 경우, 프로그램 정보 저장부(54)는 사용자의 요구에 따라, 사용자가 바라는 컨텐츠 서버로부터 프로그램 또는 그 URL을 취득하여, 프로그램 정보 저장부(54)내에 비어 있는 영역에 보유한다. 이 처리에서, 취득한 프로그램 또는 URL의 소재를 나타내는 포인터 데이터는 상기와 같은 순서로 실제 배포정보 저장부(54)에 등록된다.
이렇게 하여, 사용자가 요구하고 있는 프로그램의 등록이 종료하면, 배포 관리 서버(16A)는 해당 사용자 또는 해당 프로그램을 배포한 컨텐츠 제공자 등을 대상으로 한 과금처리를 시작한다.
계속해서, 사용자 정보 저장부(51)는 전송 제어부(61)를 통해 이동단말(11)에 등록통지를 보낸다(단계 S135).
이동단말(11)은 이 등록통지를 받으면, 등록응답을 배포 관리 서버(16A)에 보낸다(단계 S136).
사용자 정보 저장부(51)는 사용자(k)의 UIM(12)이 내장 또는 접속된 이동단말(11)로부터의 등록응답을 전송 제어부(61)를 통해 받으면, 그 사용자(k)에 대해 포인터 데이터가 등록된 프로그램을 저장하고 있는 컨텐츠 제공자(19)를 구하여, 그 컨텐츠 서버(19)에 활성화 허가요구를 보낸다(단계 S137).
이 활성화 허가요구를 받은 컨텐츠 서버(19)는 프로그램의 이용계약을 승인하기 위해, 활성화 허가를 사용자 정보 저장부(51)에 보낸다(단계 S138). 이것에 의해, 사용자 정보 저장부(51)는 사용자(k)에 대응하는 사용자 개별정보 저장부(53-k)의 실제 배포정보 저장부(54)의 각 영역 중 기본 블록(40-X)에 대응하는 영역에 기억된 포인터 데이터의 사용이 허가된 것으로 간주한다.
그리고, 사용자 정보 저장부(51)는 이동단말(11)에 대해 등록이 완료한 것을 나타내는 등록완료통지를 보낸다(단계 S139). 이 등록완료통지는 사용자 정보 저장부(51)에 포인터 데이터가 등록된 프로그램의 리스트를 제공하는 등록 리스트를 포함하고 있다.
사용자는 이동단말(11)의 표시부(21)에 의해 이 등록 리스트를 확인할 수 있다.
[2.3.1.1] UIM의 기본 블록에의 등록(컨텐츠 서버가 프로그램을 보유하고 있는 경우)
등록 리스트를 받은 사용자(k)는 자신이 등록을 요구한 프로그램의 배포 및 UIM(12)내에의 기입을 요구할 수 있다. 도 25를 참조하여 이 경우의 동작에 관해 설명한다.
사용자(k)는 등록 리스트 중에서 배포를 원하는 프로그램을 선택하는 조작을 한다. 그러면, 그 프로그램이 등록 리스트 중에 몇 번째에 위치하는지를 나타내는 등록 리스트내 포인터를 포함하는 배포요구가 이동단말(11)로부터 배포 관리 서버(16A)의 사용자 정보 저장부(51)에 보내진다(단계 S141).
사용자 정보 저장부(51)는 사용자(k)의 이동단말(11)로부터 배포요구를 받으면, 사용자 개별정보 저장부(53-k)의 실제 배포정보 저장부(54)의 각 영역 중 그 배포요구에 포함된 등록 리스트내 포인터에 대응하는 영역에서, 배포요구의 대상인 프로그램의 URL 또는 프로그램 자체의 저장위치를 특정하는 포인터 데이터를 독출한다. 그리고, 이 포인터 데이터를 포함하는 배포요구를 프로그램 정보 저장부(52)에 보낸다(단계 S142).
프로그램 정보 저장부(52)는 이 배포요구 중의 포인터 데이터에 의해 특정된 영역에 액세스한다. 그리고, 해당 영역에 프로그램의 URL이 저장되어 있는 경우에는, 그 URL을 이용하여 컨텐츠 서버(19)에 프로그램의 배포를 요구한다(단계 S143).
컨텐츠 서버(19)는 이 배포요구를 받으면, 인증 서버(18)에 대해 배포 관리 서버 공개키의 발행을 요구한다(단계 S144).
인증 서버(18)는 컨텐츠 서버(19)가 UIM(12)에의 기입이 허가된 사람인 경우에는 배포 관리 서버 공개키를 컨텐츠 서버(19)에 발행한다(단계 S145).
컨텐츠 서버(19)는 이 배포 관리 서버 공개키를 이용하여 프로그램을 암호화하고, 증명서 첨부 프로그램으로서 배포 관리 서버(16A)의 보안통신 제어부(62)에 배포한다(단계 S146).
보안통신 제어부(62)는 배포 관리 서버 공개키와 짝을 이루는 배포 관리 서버 비밀키를 기억하고 있고, 이 비밀키를 이용하여 증명서 첨부 프로그램을 복호화한다. 이 복호화가 성공하면, 평문으로 작성된 프로그램이 얻어진다.
보안통신 제어부(62)는 목적지 UIM(12)에 대응하는 UIM 공개키를 인증 서버(제1 실시형태 참조)로부터 취득하여, 이 UIM 공개키에 의해 프로그램을 암호화하여 UIM(12)에 보낸다. UIM(12)에서는 UIM 공개키와 짝을 이루는 UIM 비밀키를 이용하여 프로그램이 복호화된다. 이 복호화가 성공하면, 평문에 의한 프로그램이 얻어진다. UIM(12)은 이 프로그램을 기본 블록(40-X)에 기입한다(단계 S147). 또, UIM(12)은 배포 관리 서버(16A) 내의 프로그램 정보 저장부(52)에서 이용한 것과 같은 알고리듬에 의해 기본 블록(40-X)을 구한다. 따라서, 이 단계 S147에서는 도 24의 단계 S134에서 구해진 것과 같은 기본 블록(40-X)이 구해진다. 또, 도 24의 단계 S139에서 배포 관리 서버(16A)로부터 송신되는 등록완료통지에, 단계 S134에서 구해진 사용중이지 않은 기본 블록(40-X)을 특정하는 정보를 포함시키고, 도 25의 단계 S147에서는 이 정보에 의해 특정된 기본 블록(40-X)에 프로그램을 저장하도록 할 수도 있다.
UIM(12)은 프로그램의 기입이 종료하면, 그 기입종료통지를 배포 관리 서버(16)의 보안통신 제어부(62)에 송신한다(단계 S148). 이 기입종료통지는 프로그램이 기입된 기본 블록(40-X)을 특정하는 정보를 포함하고 있다.
배포 관리 서버(16)의 보안통신 제어부(62)가 이 기입종료통지를 받으면, 사용자 정보 저장부(51)는 UIM(12)에 기입된 프로그램의 실행허가를 요구하기 위해, 활성화 요구를 컨텐츠 서버(19)에 보낸다(단계 S149).
이 활성화 요구를 받은 컨텐츠 서버(19)는 활성화 허가를 사용자 정보 저장부(51)에 보낸다(단계 S150).
이 활성화 허가를 받은 사용자 정보 저장부(51)는 UIM(12)에 활성화 지시를 보낸다(단계 S151).
UIM(12)에서는 이 활성화 지시가 수신되면, 프로그램을 기입한 기본 블록(40-X)에 대응하는 활성화 플래그가 "0"에서 "1"로 변경되고, 이후, 해당 기본블록 내의 프로그램의 실행이 가능해진다.
UIM(12)은 프로그램의 활성화가 종료하면, 그 취지를 나타내는 활성화 응답통지를 프로그램을 특정하는 정보(예컨대, 기본 블록(40-X)을 특정하는 정보)와 함께 배포 관리 서버(16A)의 사용자 정보 저장부(51)에 송신한다(단계 S152).
사용자 정보 저장부(51)는 사용자(k)의 UIM(12)으로부터 활성화 응답통지를 받으면, 사용자 개별정보 저장부(53-k)의 실제 배포정보 저장부(54)의 각 영역 중 기본 블록(40-X)에 대응하는 영역을 구한다. 이 영역에는 사용자(k)의 UIM(12)에 기본 블록(40-X)에 기입된 프로그램에 대응하는 포인터 데이터가 이미 기입되어 있다. 그리고, 이 영역에, 소정의 포인터 데이터와 동시에 존재하는 형태로 활성화가 완료한 취지의 정보가 기입된다. 이러한 동작의 결과, 배포 관리 서버(16A)는 사용자 정보 저장부(51)의 각 영역에 액세스함으로써, 모든 UIM(12)의 기본 블록(40-1∼40-7)에 관해 활성화가 행해졌는지 여부를 파악할 수 있다.
사용자 정보 저장부(51)는 활성화가 완료한 취지의 정보의 기입을 끝내면, 이동단말(11)에 등록완료의 취지를 프로그램 리스트로서 통지하고, 이어서 사용자에게 프로그램의 실행이 가능하다고 통지하는 동시에, 처리를 종료한다(단계 S153).
배포 관리 서버(16A)는 프로그램의 활성화가 완료한 것을 컨텐츠 서버(19)에 통지한다(단계 S154).
[2.3.1.2] UIM의 기본 블록에의 등록(배포 관리 서버가 프로그램 자체를 보유하고 있는 경우)
도 25에 나타낸 동작예에서는, 사용자가 배포를 희망하는 프로그램 자체는 배포 관리 서버(16A)에 저장되지 않고, 컨텐츠 서버(19)에 저장되어 있었다. 이에 반해, 도 26에 나타낸 동작예에서는 사용자가 배포를 희망하는 프로그램 자체가 배포 관리 서버(16A)에 기억된다. 이하, 이 도 26에 나타낸 동작예에 관해 설명한다.
사용자가 배포 관리 서버(16A)에서 받은 등록 리스트에 액세스하여, 원하는 프로그램을 선택하는 조작을 한다. 그러면, 그 프로그램에 대응하는 등록 리스트내 포인터를 포함하는 배포요구가 이동단말(11)로부터 배포 관리 서버(16A)의 사용자 정보 저장부(51)에 보내진다(단계 S161).
사용자 정보 저장부(51)는 사용자(k)의 이동단말(11)로부터 배포요구를 받으면, 사용자 개별정보 저장부(53-k)의 실제 배포정보 저장부(54)의 각 영역 중 배포요구에 포함되는 등록 리스트내 포인터에 대응하는 영역으로부터, 배포요구의 대상인 프로그램의 URL 또는 프로그램 자체의 저장위치를 특정하는 포인터 데이터를 독출한다. 그리고, 이 포인터 데이터를 포함하는 배포요구를 프로그램 정보 저장부(52)에 보낸다(단계 S162).
프로그램 정보 저장부(52)는 이 배포요구 내의 포인터 데이터에 의해 특정된 영역에 액세스한다. 그리고, 그 영역에 프로그램 자체가 저장되어 있는 경우, 보안통신 제어부(62)는 인증 서버(18)에 대해 증명서 발행을 요구, 즉, 그 프로그램 자체를 암호화하여 사용자(k)의 UIM(12)에 보내는 데 필요한 UIM 공개키의 요구를 보낸다(단계 S163).
인증 서버(18)는 배포요구에 대응하는 프로그램이 UIM(12)에의 기입이 허가된 프로그램인 경우에는 UIM 공개키를 보안통신 제어부(62)에 보낸다(단계 S164).
보안통신 제어부(62)는 이 UIM 공개키를 수취하여, 이것이 정당하다고 판단하면, 배포대상인 프로그램을 UIM 공개키에 의해 암호화하여, 증명서 첨부 프로그램을 생성한다.
이동단말(11)에 사용자가 프로그램 배포를 허가하는 조작을 하면, 배포 관리 서버(16A)의 보안통신 제어부(62)는 이동단말(11)의 UIM(12)에 증명서 첨부 프로그램을 보낸다(단계 S165).
UIM(12)은 UIM 공개키와 짝을 이루는 UIM 비밀키를 기억하고 있고, 이 UIM 비밀키를 이용하여 프로그램을 복호한다. 그리고, 그 프로그램을 기본 블록(40-X)에 기입한다.
이후의 동작은 도 25에 나타낸 것과 같다. 도 26에서의 단계 S166∼S171은 도 25에서의 단계 S148∼S153에 해당한다.
[2.3.1.3] UIM의 기본 블록에의 등록(배포 관리 서버가 프로그램 자체를 보유하여, 보안통신 제어부가 UIM 공개키를 보유하고 있는 경우)
이동단말(11)이 배포 관리 서버(16A)에 배포요구를 보냈을 때, 배포 관리 서버(16A)의 보안통신 제어부(62)가 프로그램이 배포될 UIM(12)의 UIM 공개키를 보유하는 경우가 일어날 수 있다. 예컨대 단시간 내에 동일의 UIM(12)에 프로그램이 배포되는 경우에 이러한 것이 일어날 수 있다. 도 27은 그와 같은 경우에 있어서의 동작예를 게시하고 있다. 이 동작예에서는 배포요구에 대응하는 프로그램 자체가 발견되었을 때, 보안통신 제어부(62)에 보유된 UIM 공개키를 이용하여 프로그램이 암호화되어 UIM(12)에 기입된다. 도 27에 나타낸 동작은 인증 서버(18)로부터 UIM 공개키를 취득하는 단계 S163 및 S164에 상당하는 동작이 빠진 점을 제외하고, 도 26에 나타낸 동작과 같다. 도 27에서의 단계 S181, S182, S183∼S189는 각각 도 26에서의 단계 S161, S162, S165∼S171에 해당한다.
[2.3.1.4] UIM의 프리 기본 블록에의 등록
사용자는 이동단말(11)을 조작함으로써 UIM(12)의 프리 기본 블록(40-F1)에 프로그램을 등록할 수 있다. 도 28은 그 동작을 나타내는 것이다.
UIM(12)의 프리 기본 블록(40-F1)에 프로그램을 등록하는 경우, 사용자는 이동단말(11)을 조작함으로써 원하는 컨텐츠 서버(19X)에 액세스하여, 원하는 프로그램의 배포요구를 보낸다(단계 S191).
이 배포요구를 받은 컨텐츠 서버(19X)는 요구된 프로그램을 배포 관리 서버(16A)의 보안통신 제어부(62)에 배포한다(단계 S192).
사용자가 프리 기본 블록(40-F1)에 대한 배포를 허가하는 조작을 하여, 그 조작을 나타내는 정보가 이동단말(11)로부터 배포 관리 서버(16A)에 보내진다. 그러면, 보안통신 제어부(62)는 이동단말(11)의 UIM(12)에 프로그램을 배포한다(단계 S193). 이 프로그램은 암호화된 형태로 보내질 수도 있고, 암호화되지 않고 보내질 수도 있다. UIM(12)은 이 프로그램을 프리 기본 블록(40-F1)에 기입한다.
UIM(12)은 프로그램의 기입이 종료하면, 기입종료통지를 배포 관리 서버(16)에 송신한다(단계 S184).
배포 관리 서버(16)의 사용자 정보 저장부(51)는 사용자(k)의 UIM(12)으로부터 기입종료통지를 수취, 사용자 개별정보 저장부(53-k)에서 프리 기본 블록(40-F1)에 대응하는 영역에 기억된 배포회수 등의 정보를 갱신한다(단계 S195).
이 갱신이 끝나면, 사용자 정보 저장부(51)는 프리 기본 블록(40-F1)에 기입된 프로그램에 대한 활성화 지시를 UIM(12)에 보낸다(단계 S196).
UIM(12)은 이 지시에 따라 프로그램의 활성화를 끝내고, 프리 기본 블록(40-F1)내의 프로그램의 활성화가 종료한 것을 나타내는 활성화 응답통지를 배포 관리 서버(16)의 사용자 정보 저장부(51)에 송신한다(단계 S197).
사용자 정보 저장부(51)는 사용자(k)의 UIM(12)으로부터 활성화 응답통지를 받으면, 사용자 개별정보 저장부(53-k)에서 프리 기본 블록(40-F1)에 대응하는 영역에 활성화가 완료한 취지의 정보를 등록한다. 그리고, 사용자 정보 저장부(51)는 이동단말(11)에 대해 등록이 완료한 것을 프로그램 리스트 형태로 통지함으로써 처리를 종료한다(단계 S198).
[2.3.1.5] 프로그램의 사용자 정보 저장부에서의 삭제
다음에 사용자 정보 저장부(51)에 등록되어 있는 프로그램을 삭제하는 경우의 처리에 관해서 도 29를 참조하여 설명한다.
사용자는 소정의 조작을 함으로써, 배포 관리 서버(16A)에서 받은 등록 프로그램 리스트를 표시부(21)에 표시할 수 있다. 이 상태에서, 사용자가 원하는 프로그램을 특정하여, 배포 관리 서버(16A)에서의 그 프로그램의 삭제를 지시한다. 삭제 대상을 특정하는 정보를 포함하는 프로그램 등록 삭제요구가 배포 관리서버(16A)의 사용자 정보 저장부(51)에 보내진다(단계 S201).
사용자 정보 저장부(51)는 삭제 대상인 프로그램이 UIM(12)의 기본 블록(40-1∼40-7) 중 어느 것에서 이미 삭제된 경우에는, 그 프로그램을 배포한 컨텐츠 서버(19)에 사용자가 프로그램의 이용을 해약하길 희망하고 있는 것을 나타내는 해약요구를 보낸다(단계 S202). 한편, 삭제 대상인 프로그램이 삭제되지 않고 UIM(12)의 기본 블록(40-1∼40-7) 중 어느 것에 남아 있는 경우에는, 후술하는 기본 블록(40-1∼40-7)으로부터의 프로그램 삭제처리가 배포 관리 서버(16A)의 주도로 동시에 행해진다.
컨텐츠 서버(19)는 해약요구를 받으면, 해약허가통지를 배포 관리 서버(16A)의 사용자 정보 저장부(51)에 보낸다(단계 S203).
사용자 정보 저장부(51)는 해약허가통지를 받으면, 단계 S201에서 삭제요구를 받은 프로그램에 관한 정보를 삭제하고, 삭제 후의 등록 프로그램 리스트를 이동단말(11)에 보낸다(단계 S204).
[2.3.1.6] 프로그램의 UIM 기본 블록으로부터의 삭제
다음에 UIM(12)의 기본 블록(40-1∼40-7)으로부터 프로그램을 삭제하는 경우의 처리에 관해서 도 30을 참조하여 설명한다.
사용자는 소정의 조작을 함으로써, 이미 이동단말(11)에 송신된 등록 프로그램 리스트를 표시부(21)에 표시할 수 있다. 이 상태에서, 사용자가 원하는 프로그램을 특정하여 그 삭제를 지시를 한다. 그러면, UIM(12)의 기본 블록(40-1∼40-7) 중 삭제 대상인 프로그램이 저장되어 있는 기본 블록이 구해지고, 이 기본 블록을특정하는 정보를 포함하는 삭제요구가 이동단말(11)로부터 배포 관리 서버(16A)의 사용자 정보 저장부(51)에 송신된다(단계 S211).
사용자 정보 저장부(51)는 삭제요구를 받으면, UIM(12)에 삭제허가통지를 보낸다(단계 S212).
UIM(12)은 삭제허가통지를 받으면, 단계 S211에서 사용자에 의해 특정된 프로그램을 해당하는 기본 블록으로부터 삭제하고, 삭제종료통지를 사용자 정보 저장부(51)에 보낸다(단계 S213).
이것에 의해 사용자 정보 저장부(51)는 전송 제어부(61)의 제어 하에 해당하는 프로그램에 관한 정보를 삭제하고, 컨텐츠 서버(19)에 삭제통지를 한다(단계 S214).
또한, 사용자 정보 저장부(51)는 이동단말(11)에 대해 삭제완료 취지를 프로그램 리스트의 형태로 통지하고 처리를 종료한다.
[2.3.1.6.1] 기본 블록으로부터의 프로그램의 삭제가 배포 관리 서버의 주도로 동시에 실행되는 경우
전술한 바와 같이 기본 블록(40-1∼40-7)으로부터의 프로그램의 삭제처리를 배포 관리 서버(16A)의 주도로 프로그램의 사용자 정보 저장부(51)로부터의 삭제와 동시에 실행하는 경우, 배포 관리 서버의 사용자 정보 저장부(51)는 상술한 단계 S211 및 단계 S212의 처리 대신, 사용자 정보 저장부(51)가 삭제를 요구하는 프로그램을 특정하여 삭제지시를 UIM에 보낸다.
[2.3.1.7] 사용자 정보 저장부의 이용을 금지하는 경우
본 실시형태에 의하면, 사용자 정보 저장부(51)를 사용자측에서 이용할 수 없게 하는 사용자 정보 저장부 불활성화 처리를 실행하는 것이 가능하다. 이 사용자 정보 저장부 불활성화 처리는, 예컨대, 배포 관리 서버(16A) 측에서 서비스 제공을 일시적으로 중단하거나, 컨텐츠 서버(19)를 보유하고 있는 컨텐츠 제공자의 요청에 의해 사용자에 대한 배포 관리 서버(16A)의 서비스를 일시적으로 중단하는 경우 등에 실행된다. 이 사용자 정보 저장부 불활성화 처리가 실행되면, 사용자 정보 저장부(51)에 등록되어 있는 프로그램의 UIM(12)으로의 배포가 금지되거나, UIM(12)에 등록되어 있는 프로그램의 삭제가 금지된다.
이하, 도 31을 참조하여, 이 사용자 정보 저장부 불활성화 처리에 관해 설명한다. 또, 다음 설명은 컨텐츠 서버(19)가 사용자 정보 저장부 불활성화 처리를 요구하는 경우에 관한 것이다.
우선, 컨텐츠 서버(19)가 배포 관리 서버(16A)의 사용자 정보 저장부(51)에 사용자 정보 저장부 불활성화 요구를 보낸다(단계 S221).
사용자 정보 저장부(51)는 이 사용자 정보 저장부 불활성화 요구를 받으면, 이용이 금지(불활성화 상태)되고, 컨텐츠 서버(19)에 사용자 정보 저장부 불활성화 허가통지를 보낸다(단계 S222).
계속해서, 사용자 정보 저장부(51)는 사용자 정보 저장부(51)의 이용이 금지된 취지의 사용자 정보 저장부 불활성화 통지를 이동단말(11)에 보낸다(단계 S223).
이것에 의해, 이동단말(11)의 사용자는 사용자 정보 저장부(51)의 이용이 금지된 것을 확인할 수 있다.
[2.3.1.7.1] 배포 관리 서버에 의해 사용자 정보 저장부가 불활성화되는 경우
사용자 정보 저장부 불활성화를 배포 관리 서버(16A) 자신이 하는 경우, 사용자 정보 저장부(51)는 이용이 금지(불활성화 상태)되고, 사용자 정보 저장부(51)의 이용이 금지된 것을 나타내는 사용자 정보 저장부 불활성화 통지를 이동단말(11)에 보낸다(단계 S223).
[2.3.1.8] UIM 기본 블록에 저장되어 있는 프로그램의 이용을 금지하는 경우
다음에 UIM(12)의 기본 블록(40-1∼40-7) 또는 프리 기본 블록(40-F1)에 저장되어 있는 프로그램의 이용을 금지하는 기본 블록 불활성화 처리에 관해서 도 32를 참조하여 설명한다.
이 처리는 이동단말(11)이 도난 당한 경우나 컨텐츠 제공자가 사용자에 대해 이용을 금지하라는 요청이 있는 경우에 실행된다. 이 처리가 실행되면, 처리 대상이 된 기본 블록(프리 기본 블록도 포함)에 저장되어 있는 프로그램의 사용자에 의한 이용이 금지된다. 또, 다음은 이동단말(11)의 도난시의 대응 등의 사용자 서비스를 하는 사용자 서비스 서버(65)가 사용자로부터의 통보에 따라 기본 블록 불활성화 처리를 요구하는 경우에 관해 설명한다.
도 32는 기본 블록 불활성화 처리의 시퀀스를 나타낸다.
우선, 사용자 서비스 서버(65)가 배포 관리 서버(16A)의 사용자 정보 저장부(51)에 기본 블록 불활성화 요구를 보낸다(단계 S231).
사용자 정보 저장부(51)는 이 기본 블록 불활성화 요구를 받으면, UIM(12)에불활성화 지시를 보낸다(단계 S232).
이것에 의해 UIM(12)은 기본 블록 불활성화 요구에 맞는 기본 블록을 불활성화 상태로 하고, 기본 블록의 이용이 금지된 것을 나타내는 기본 블록 불활성화 응답을 보낸다(단계 S233).
계속해서, 사용자 정보 저장부(51)는 사용자 서비스 서버(65)에 대해 UIM(12)의 기본 블록의 이용이 금지된 것을 나타내는 기본 블록 불활성화 종료통지를 보낸다(단계 S234).
더욱이 사용자 정보 저장부(51)는 이동단말(11)에 대해 기본 블록(프리 기본 블록을 포함하는 경우도 있다)의 이용이 금지된 것을 나타내는 사용자 정보 저장부 리스트를 통지하고 처리를 종료한다(단계 S235).
[2.4] 제2 실시형태의 효과
이상 설명한 바와 같이, 제2 실시형태에 의하면, 기억모듈(UIM)의 기억영역의 수의 제한을 넘어 프로그램을 배포하는 것이 가능해져, 사용자의 조작 편의를 향상시킬 수 있다.
또한, 배포 관리 서버에서 배포된 프로그램의 활성화/불활성화 및 삭제, 배포 가능한 상태의 프로그램의 배포 및 활성화/불활성화 및 삭제를 용이하게 관리할 수 있다.
[3] 실시형태의 변형예
[3.1] 제1 변형예
상기 설명에서는 배포 관리 서버가 하나인 경우에 관해 설명하였지만, 배포관리 서버를 복수 마련하여 분산 처리를 하도록 구성하는 것이 가능하다.
이 경우에는 각 UIM에 저장되어 있는 프로그램이나, 각 프로그램의 저장영역에 관한 정보는 공용 데이터베이스에 저장될 수 있다.
[3.2] 제2 변형예
상기 설명에서는 배포 관리 서버가 직접 회선 교환망에 접속되어 있는 경우에 관해 설명하였지만, 패킷 교환망을 구성하는 인터넷 및 인터넷 게이트웨이를 통해 회선 교환망과 접속하도록 구성하는 것도 가능하다.
[3.3] 제3 변형예
상기 설명에서는 기억모듈로서 UIM의 경우에 관해서만 설명하였지만, 본 발명을 각종 IC 카드 메모리에 적용하는 것도 가능하다. 이 경우에, 기억모듈은 이동단말뿐 아니라, 고정단말에도 설치될 수 있다.
이상 설명한 바와 같이, 본 발명에 의하면, 기억모듈의 기억영역을 분할하여 각 프로그램을 저장하는 경우에도, 이동단말은 통신기능을 UIM에 제공하는 것뿐이며, 이동단말에 쓸데없는 부담을 주지 않는다. 따라서, 이동단말 원래의 기능이 손상되지 않는다.
또한, 프로그램의 저장, 활성화, 불활성화 , 삭제 등은 이동단말에 의해 실행되는 것이 아니라, 배포 관리 서버의 제어 하에 실행된다. 따라서, 보안성을 확보하는 동시에, 사용자의 편의를 향상시킬 수 있다.
또한, 본 발명에 의하면, 기억모듈(UIM)의 기억영역의 수의 제한을 넘어 프로그램을 배포하는 것이 가능해져, 사용자의 조작 편의를 향상시킬 수 있다.
또한, 배포 관리 서버에서 배포된 프로그램의 활성화/불활성화 및 삭제, 배포 가능한 상태의 프로그램의 배포 및 활성화/불활성화 및 삭제를 용이하게 관리할 수 있다.

Claims (39)

  1. 프로그램 배포 시스템에 있어서,
    프로그램의 배포요구를 송신하는 수단을 갖는 이동단말;
    상기 이동단말에 내장 또는 접속된 기억모듈;
    상기 배포요구를 수신하여, 배포대상인 프로그램을 송신하는 컨텐츠 서버; 및
    상기 컨텐츠 서버로부터 상기 프로그램을 수신하여, 상기 컨텐츠 서버가 미리 허가된 컨텐츠 서버인 경우에만, 상기 컨텐츠 서버로부터 수신한 상기 프로그램을 상기 이동단말에 내장 또는 접속된 상기 기억모듈에 송신하는 배포 관리 서버를 구비하며,
    상기 기억모듈은,
    기억부와,
    상기 이동단말을 통해 상기 배포 관리 서버로부터 수신된 상기 프로그램을 상기 기억부에 기억하여, 요구에 따라, 상기 기억부에 기억된 상기 프로그램을 실행하는 제어부를 구비하는 것을 특징으로 하는 프로그램 배포 시스템.
  2. 제1항에 있어서, 상기 기억모듈에 고유한 제1 암호키를 저장하는 인증 서버를 더 구비하며,
    상기 기억모듈의 상기 제어부는 상기 제1 암호키에 의해 암호화된 프로그램을 복호화하여, 이 복호화에 성공한 경우에만, 상기 복호화에 의해 얻어진 프로그램을 상기 기억부에 저장하고,
    상기 컨텐츠 서버는 상기 배포요구를 수신하였을 때, 상기 제1 암호키를 상기 인증 서버로부터 취득하여, 이 제1 암호키를 이용하여 배포대상인 프로그램을 암호화하고, 또한 미리 취득한 제2 암호키를 이용하여 상기 프로그램을 암호화하여 상기 배포 관리 서버에 송신하며,
    상기 배포 관리 서버는 상기 컨텐츠 서버로부터 수신한 상기 암호화된 프로그램을 상기 제2 암호키를 이용하여 복호화하여, 상기 제1 암호키에 의해서만 암호화된 프로그램을 생성하고, 상기 복호화에 성공한 경우에만, 상기 복호화에 의해 얻어진 프로그램을 상기 기억모듈에 송신하는 것을 특징으로 하는 프로그램 배포 시스템.
  3. 제1항에 있어서, 상기 기억모듈은 프로그램과 함께, 상기 프로그램에 의해 사용되는 데이터를 기억하는 것을 특징으로 하는 프로그램 배포 시스템.
  4. 제1항에 있어서, 상기 배포 관리 서버는 상기 기억모듈에 프로그램을 배포한 시점에서 과금처리를 시작하는 과금처리부를 구비한 것을 특징으로 하는 프로그램 배포 시스템.
  5. 제4항에 있어서, 상기 과금처리부는 상기 기억모듈의 대여료에 대한 과금을하는 것을 특징으로 하는 프로그램 배포 시스템.
  6. 제1항에 있어서, 상기 배포 관리 서버는 상기 기억모듈을 위한 프로그램을 보유한 시점에서 상기 과금처리를 시작하는 과금처리부를 구비하는 것을 특징으로 하는 프로그램 배포 시스템.
  7. 제6항에 있어서, 상기 과금처리부는 상기 기억모듈의 대여료에 대한 과금을 하는 것을 특징으로 하는 프로그램 배포 시스템.
  8. 제1항에 있어서, 상기 배포 관리 서버는 다른 장치로부터의 요구에 의해 활성화 지시를 상기 기억모듈에 송신하며,
    상기 기억모듈은 상기 활성화 지시를 수신하였을 때, 상기 기억모듈에 기억되며 상기 활성화 지시에 의해 지시된 프로그램을 실행 가능한 상태로 하는 것을 특징으로 하는 프로그램 배포 시스템.
  9. 제1항에 있어서, 상기 배포 관리 서버는 다른 장치로부터의 요구에 의해 불활성화 지시를 상기 기억모듈에 송신하며,
    상기 기억모듈은 상기 불활성화 지시를 수신하였을 때, 상기 기억모듈에 기억되며 상기 불활성화 지시에 의해 지시된 프로그램을 실행 불능인 상태로 하는 것을 특징으로 하는 프로그램 배포 시스템.
  10. 제1항에 있어서, 상기 배포 관리 서버는 다른 장치로부터의 요구에 의해 삭제지시를 상기 기억모듈에 송신하며,
    상기 기억모듈은 상기 삭제지시를 수신하였을 때, 상기 기억모듈에서 상기 삭제지시에 의해 지시된 프로그램을 삭제하는 것을 특징으로 하는 프로그램 배포 시스템.
  11. 제1항에 있어서, 상기 배포 관리 서버는 상기 기억모듈에 보낸 정보에 따라 상기 기억모듈 내에서의 상기 프로그램의 상태를 관리하는 수단을 구비하는 것을 특징으로 하는 프로그램 배포 시스템.
  12. 제1항에 있어서, 상기 배포 관리 서버는 상기 기억모듈에 관한 버전정보를 취득하여, 그 버전정보에 따라 상기 프로그램의 배포를 하는지 여부를 판단하는 것을 특징으로 하는 프로그램 배포 시스템.
  13. 제1항에 있어서, 상기 이동단말은 이동통신망을 이용한 통신을 하기 위한 제1 통신부와, 이 제1 통신부와는 다른 제2 통신부를 구비하며,
    상기 기억모듈의 상기 제어부는 상기 기억모듈에 기억된 상기 프로그램에 따라 상기 제2 통신부를 이용한 통신을 하는 수단을 구비하는 것을 특징으로 하는 프로그램 배포 시스템.
  14. 프로그램 배포 시스템에 있어서,
    프로그램의 배포요구를 송신하는 수단을 갖는 이동단말;
    상기 이동단말에 내장 또는 접속된 기억모듈; 및
    상기 배포요구를 수신하여, 배포대상인 프로그램이 미리 허가된 컨텐츠 서버에 의해 제공되는 경우에, 그 프로그램을 취득하여 상기 이동단말에 내장 또는 접속된 기억모듈에 송신하는 배포 관리 서버를 구비하며,
    상기 기억모듈은,
    기억부와,
    상기 이동단말을 통해 정보를 수신하여, 그 정보가 상기 배포 관리 서버로부터 수신된 프로그램인 경우에만 상기 기억부에 기억하고, 요구에 따라, 상기 기억부에 기억된 상기 프로그램을 실행하는 제어부를 구비하는 것을 특징으로 하는 프로그램 배포 시스템.
  15. 제14항에 있어서, 상기 배포 관리 서버는 상기 기억모듈에 보내진 프로그램을 특정하는 포인터 데이터를 기억하는 실제 배포정보 기억부를 구비하는 것을 특징으로 하는 프로그램 배포 시스템.
  16. 제15항에 있어서, 상기 기억모듈의 기억부는 프로그램을 저장하기 위한 복수의 기본 블록을 구비하며, 상기 배포 관리 서버의 상기 실제 배포정보 기억부는 상기 복수의 기본 블록에 대응하는 복수의 영역을 구비하는 것을 특징으로 하는 프로그램 배포 시스템.
  17. 제16항에 있어서, 상기 배포 관리 서버는 상기 기억모듈에 배포할 수 있지만 현재는 상기 기억모듈에 기억되어 있지 않은 프로그램을 특정하는 상기 포인터 데이터를 기억하는 가상 배포정보 기억부를 구비하여, 상기 가상 배포정보 기억부에 기억된 상기 포인터 데이터에 의해 특정된 프로그램의 상기 기억모듈에의 배포요구를 수신하였을 때, 상기 프로그램을 상기 기억모듈에 배포하는 동시에, 그 프로그램을 특정하는 상기 포인터 데이터를 상기 가상 배포정보 기억부에서 상기 실제 배포정보 기억부로 이동시키는 것을 특징으로 하는 프로그램 배포 시스템.
  18. 제16항에 있어서, 상기 배포 관리 서버는 상기 컨텐츠 서버로부터 취득 가능한 프로그램의 소재를 나타내는 어드레스 정보 또는 상기 컨텐츠 서버로부터 취득한 프로그램을 기억하는 프로그램 정보 기억부를 구비하여, 상기 실제 배포정보 기억부 또는 가상 배포정보 기억부에 기억된 상기 포인터 데이터에 의해 특정된 프로그램의 상기 기억모듈에의 배포요구를 수신하였을 때, 상기 프로그램을 상기 프로그램 정보 기억부를 이용하여 취득하여, 상기 기억모듈에 배포하는 것을 특징으로 하는 프로그램 배포 시스템.
  19. 제17항에 있어서, 상기 이동단말은 메뉴 리스트 요구를 송신하는 수단을 구비하며,
    상기 배포 관리 서버는 상기 메뉴 리스트 요구에 따라, 상기 이동단말에 내장 또는 접속된 기억모듈을 위해 상기 실제 배포정보 기억부 및 상기 가상 배포정보 기억부에 기억된 상기 포인터 데이터에 액세스하여, 그 포인터 데이터에 의해 특정되는 프로그램의 리스트를 생성하여 상기 이동단말에 송신하는 것을 특징으로 하는 프로그램 배포 시스템.
  20. 제14항에 있어서, 상기 이동단말은 이동통신망을 이용한 통신을 하기 위한 제1 통신부와, 이 제1 통신부와는 다른 제2 통신부를 구비하며,
    상기 기억모듈의 상기 제어부는 상기 기억모듈에 기억된 프로그램에 따라 상기 제2 통신부를 이용한 통신을 하는 수단을 구비하는 것을 특징으로 하는 프로그램 배포 시스템.
  21. 배포 관리 서버에 있어서,
    배포 목적지에 고유한 제1 암호키와, 프로그램 배포가 허가된 컨텐츠 서버에 고유한 제2 암호키에 의해 암호화된 프로그램을 상기 컨텐츠 서버로부터 수신하는 수단; 및
    상기 컨텐츠 서버로부터 수신된 상기 프로그램을 상기 제2 암호키에 의해 암호화되기 전의 상태로 복호화함으로써, 상기 제1 암호키에 의해서만 암호화된 프로그램을 생성하여, 이동단말에 내장 또는 접속된 상기 기억모듈에 배포하는 수단을구비하는 것을 특징으로 하는 배포 관리 서버.
  22. 배포 관리 서버에 있어서,
    허가된 컨텐츠 서버로부터 미리 취득된 프로그램 또는 그 어드레스 정보를 기억하는 프로그램 정보 저장부;
    이동단말에 내장 또는 접속된 기억모듈에 저장되어 있는 프로그램과 동일한 프로그램 또는 그 프로그램의 어드레스 정보가 상기 프로그램 정보 저장부에 저장되어 있는 경우에 그 프로그램 또는 그 어드레스 정보의 상기 프로그램 정보 저장부에서의 저장위치를 나타내는 포인터 데이터를 기억하는 실제 배포정보 기억부;
    상기 기억모듈에 배포 가능하지만 상기 기억모듈에 현재 저장되어 있지 않은 프로그램과 동일한 프로그램 또는 그 어드레스 정보가 상기 프로그램 정보 저장부에 저장되어 있는 경우에 그 프로그램의 상기 프로그램 정보 저장부에서의 저장위치를 나타내는 포인터 데이터를 기억하는 가상 배포정보 기억부; 및
    상기 이동단말로부터의 요구에 따라, 상기 가상 배포정보 기억부에 기억된 상기 포인터 데이터에 의해 특정되는 프로그램을 상기 프로그램 정보 저장부를 이용하여 취득하여 상기 기억모듈에 배포하고, 그 포인터 데이터를 상기 실제 배포정보 기억부로 이동시키는 수단을 구비하는 것을 특징으로 하는 배포 관리 서버.
  23. 컨텐츠 서버에 있어서,
    기억모듈이 내장 또는 접속된 이동단말로부터 프로그램의 배포요구를 받았을때, 상기 기억모듈에 고유한 암호키를 외부의 인증 서버로부터 취득하는 수단;
    상기 제1 암호키에 의해 배포대상인 프로그램을 암호화하는 제1 암호화 수단;
    상기 제1 암호화 수단에 의해 얻어진 프로그램에 대하여, 상기 기억모듈에 프로그램을 배포하는 배포 관리 서버에 의해 복호화 가능한 암호화를 하는 제2 암호화 수단과; 및
    상기 제1 및 제2 암호화 수단에 의해 암호화된 상기 프로그램을 상기 배포 관리 서버에 송신하는 수단을 구비하는 것을 특징으로 하는 컨텐츠 서버.
  24. 이동단말에 내장 또는 접속되는 기억모듈에 있어서,
    기억부; 및
    암호화된 프로그램을 상기 이동단말을 통해 특정 배포 관리 서버로부터 수신하여, 미리 기억된 비밀키에 의해 상기 프로그램을 복호화하여, 이 복호화가 성공한 경우에만 그 프로그램을 상기 기억부에 기억하고, 요구에 응하여, 상기 기억부에 기억된 상기 프로그램을 실행하는 제어부를 구비하는 것을 특징으로 하는 기억모듈.
  25. 제24항에 있어서, 상기 기억부는 프로그램을 실행하기 위한 복수의 기억 블록과, 각 기억 블록에 기억된 프로그램이 실행 가능한지 여부를 나타내는 활성화 플래그를 기억하는 기억영역을 구비하며,
    상기 제어부는 상기 이동단말을 통해 배포 관리 서버로부터 수신되는 지시에 따라 상기 활성화 플래그를 기입하여, 상기 이동단말을 통해 어느 한 기본 블록에 저장된 프로그램의 실행이 지시된 경우, 상기 기본 블록에 대응하는 활성화 플래그에 따라 상기 실행지시에 따를지 여부를 결정하는 것을 특징으로 하는 기억모듈.
  26. 프로그램 배포방법에 있어서,
    기억모듈이 내장 또는 접속된 이동단말이 프로그램의 배포요구를 컨텐츠 서버에 송신하는 단계;
    상기 컨텐츠 서버가 상기 배포요구를 수신하여, 배포대상인 프로그램을 배포 관리 서버에 송신하는 단계; 및
    상기 프로그램의 송신원인 상기 컨텐츠 서버가 미리 허가된 컨텐츠 서버인 경우에, 상기 배포요구를 송신한 상기 이동단말에 내장 또는 접속된 상기 기억모듈에 상기 프로그램을 송신하는 단계를 구비하는 것을 특징으로 하는 프로그램 배포방법.
  27. 프로그램 배포방법에 있어서,
    기억모듈이 내장 또는 접속된 이동단말이 프로그램의 배포요구를 컨텐츠 서버에 송신하는 단계;
    상기 컨텐츠 서버가 상기 배포요구를 수신하여, 상기 기억모듈에 고유한 제1 암호키를 인증 서버로부터 취득하는 단계;
    상기 컨텐츠 서버가 배포대상인 프로그램을 상기 제1 암호키에 의해 암호화하는 단계;
    상기 컨텐츠 서버가 상기 제1 암호키에 의해 암호화된 프로그램을 미리 취득한 제2 암호키에 의해 암호화하는 단계;
    상기 컨텐츠 서버가 상기 제1 암호키와 상기 제2 암호키에 의해 암호화된 프로그램을 배포 관리 서버에 송신하는 단계;
    상기 배포 관리 서버가 상기 컨텐츠 서버로부터 송신된 프로그램을 상기 제2 암호화 전의 상태로 복호화하여, 상기 제1 암호키에 의해서만 암호화된 프로그램을 생성하는 단계; 및
    상기 배포 관리 서버가 상기 배포요구를 송신한 이동단말에 내장 또는 접속된 상기 기억모듈에 상기 제1 암호키에 의해서만 암호화된 프로그램을 송신하는 단계를 구비하는 것을 특징으로 하는 프로그램 배포방법.
  28. 프로그램 배포방법에 있어서,
    기억모듈이 내장 또는 접속된 이동단말이 배포 관리 서버에 프로그램의 배포요구를 송신하는 단계;
    상기 배포 관리 서버가 상기 배포요구를 수신하여, 배포대상인 프로그램이 미리 허가된 컨텐츠 서버에 의해 제공된 프로그램인지 여부를 판단하는 단계; 및
    상기 배포대상인 프로그램이 미리 허가된 컨텐츠 서버에 의해 제공된 프로그램인 경우에, 그 프로그램을 취득하여 상기 이동단말에 내장 또는 접속된 기억모듈에 송신하는 단계를 구비하는 것을 특징으로 하는 프로그램 배포방법.
  29. 제28항에 있어서, 상기 배포 관리 서버가 상기 기억모듈 대신 프로그램 또는 그 어드레스 정보를 기억수단에 기억하는 단계; 및
    상기 배포 관리 서버가 상기 이동단말에서 프로그램의 배포요구를 받았을 때, 상기 기억수단을 이용하여, 요구된 프로그램을 취득하여 상기 기억모듈에 배포하는 단계를 구비하는 것을 특징으로 하는 프로그램 배포방법.
  30. 프로그램에 있어서,
    배포 목적지에 고유한 제1 암호키와, 프로그램 배포가 허가된 컨텐츠 서버에 고유한 제2 암호키에 의해 암호화된 프로그램을 상기 컨텐츠 서버로부터 수신하는 처리; 및
    상기 컨텐츠 서버로부터 수신된 프로그램을 상기 제2 암호키에 의한 암호화 전의 상태로 되돌리는 복호화를 함으로써, 상기 제1 암호키에 의해서만 암호화된 프로그램을 생성하여, 그 프로그램을 이동단말에 내장 또는 접속된 기억모듈에 배포하는 처리를 배포 관리 서버의 컴퓨터에 실행시키는 프로그램.
  31. 프로그램에 있어서,
    기억모듈이 내장 또는 접속된 이동단말로부터의 프로그램의 배포요구를 수신하는 단계;
    배포대상인 프로그램이 미리 허가된 컨텐츠 서버에 의해 제공된 프로그램인지 여부를 판단하는 단계; 및
    상기 배포대상인 프로그램이 미리 허가된 컨텐츠 서버에 의해 제공된 프로그램인 경우에, 그 프로그램을 취득하여 상기 이동단말에 내장 또는 접속된 기억모듈에 송신하는 단계를 배포 관리 서버의 컴퓨터에 실행시키는 프로그램.
  32. 제30항에 기재된 프로그램 배포방법에 있어서,
    상기 기억모듈 대신 프로그램 또는 그 어드레스 정보를 기억수단에 기억하는 단계; 및
    상기 이동단말로부터 프로그램의 배포요구를 받았을 때, 상기 기억수단을 이용하여, 요구된 프로그램을 취득하여 상기 기억모듈에 배포하는 단계를 구비하는 것을 특징으로 하는 프로그램 배포방법.
  33. 프로그램에 있어서,
    기억모듈이 내장 또는 접속된 이동단말로부터 프로그램의 배포요구를 받았을 때, 상기 기억모듈에 고유한 암호키를 외부의 인증 서버로부터 취득하는 처리;
    상기 제1 암호키에 의해 배포대상인 프로그램을 암호화하는 제1 암호화 처리;
    상기 제1 암호화 처리에 의해 얻어진 프로그램에 대하여, 상기 기억모듈에 프로그램을 배포하는 배포 관리 서버에 의해 복호화 가능한 암호화를 하는 제2 암호화 처리; 및
    상기 제1 및 제2 암호화 처리에 의해 암호화된 프로그램을 상기 배포 관리 서버에 송신하는 처리를 컨텐츠 서버의 컴퓨터에 실행시키는 프로그램.
  34. 프로그램에 있어서,
    암호화된 프로그램을 이동단말을 통해 특정 배포 관리 서버로부터 수신하는 처리;
    미리 기억된 비밀키에 의해, 수신된 프로그램을 복호화하여, 이 복호화가 성공한 경우에만 그 프로그램을 기억부에 저장하는 처리; 및
    요구에 따라, 상기 기억부에 기억된 프로그램을 실행하는 처리를 이동단말에 내장 또는 접속되는 기억모듈의 제어부에 실행시키는 프로그램.
  35. 프로그램에 있어서,
    배포 목적지에 고유한 제1 암호키와, 프로그램 배포가 허가된 컨텐츠 서버에 고유한 제2 암호키에 의해 암호화된 프로그램을 상기 컨텐츠 서버로부터 수신하는 처리; 및
    상기 컨텐츠 서버로부터 수신된 상기 프로그램을 상기 제2 암호키에 의한 암호화 전의 상태로 되돌리는 복호화를 함으로써, 상기 제1 암호키에 의해서만 암호화된 프로그램을 생성하여, 이동단말에 내장 또는 접속된 기억모듈에 배포하는 처리를 배포 관리 서버의 컴퓨터에 실행시키는 프로그램.
  36. 프로그램에 있어서,
    기억모듈이 내장 또는 접속된 이동단말로부터의 프로그램의 배포요구를 수신하는 단계;
    배포대상인 프로그램이 미리 허가된 컨텐츠 서버에 의해 제공된 프로그램인지 여부를 판단하는 단계; 및
    상기 배포대상인 프로그램이 미리 허가된 컨텐츠 서버에 의해 제공된 프로그램인 경우에, 그 프로그램을 취득하여 상기 이동단말에 내장 또는 접속된 기억모듈에 송신하는 단계를 배포 관리 서버의 컴퓨터에 실행시키는 프로그램.
  37. 제36항에 기재된 프로그램 배포방법에 있어서,
    상기 기억모듈 대신 프로그램 또는 그 어드레스 정보를 기억수단에 기억하는 단계; 및
    상기 이동단말로부터 프로그램의 배포요구를 받았을 때, 상기 기억수단을 이용하여, 요구된 프로그램을 취득하여 상기 기억모듈에 배포하는 단계를 구비하는 것을 특징으로 하는 프로그램 배포방법.
  38. 프로그램에 있어서,
    기억모듈이 내장 또는 접속된 이동단말로부터 프로그램의 배포요구를 받았을 때, 상기 기억모듈에 고유한 암호키를 외부의 인증 서버로부터 취득하는 처리;
    상기 제1 암호키에 의해 배포대상인 프로그램을 암호화하는 제1 암호화 처리;
    상기 제1 암호화 처리에 의해 얻어진 상기 프로그램에 대하여, 상기 기억모듈에 프로그램을 배포하는 배포 관리 서버에 의해 복호화 가능한 암호화를 하는 제2 암호화 처리; 및
    상기 제1 및 상기 제2 암호화 처리에 의해 암호화된 상기 프로그램을 상기 배포 관리 서버에 송신하는 처리를 컨텐츠 서버의 컴퓨터에 실행시키는 프로그램.
  39. 프로그램에 있어서,
    암호화된 프로그램을 이동단말을 통해 특정 배포 관리 서버로부터 수신하는 처리;
    미리 기억된 비밀키에 의해 상기 수신된 프로그램의 복호화를 하여, 이 복호화가 성공한 경우에만 그 프로그램을 기억부에 저장하는 처리; 및
    요구에 따라, 상기 기억부에 기억된 상기 프로그램을 실행하는 처리를 이동단말에 내장 또는 접속되는 기억모듈의 제어부에 실행시키는 프로그램.
KR1020027011300A 2001-01-31 2002-01-30 이동단말의 기억모듈에 프로그램을 배포하는 시스템 Ceased KR20020079922A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JPJP-P-2001-00024738 2001-01-31
JP2001024738 2001-01-31
JP2001083567 2001-03-22
JPJP-P-2001-00083567 2001-03-22
PCT/JP2002/000699 WO2002061572A1 (en) 2001-01-31 2002-01-30 System for delivering program to storage module of mobile terminal

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020047014238A Division KR100749690B1 (ko) 2001-01-31 2002-01-30 이동 단말의 기억 모듈에 프로그램을 배포하는 시스템

Publications (1)

Publication Number Publication Date
KR20020079922A true KR20020079922A (ko) 2002-10-19

Family

ID=26608713

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020047014238A Expired - Fee Related KR100749690B1 (ko) 2001-01-31 2002-01-30 이동 단말의 기억 모듈에 프로그램을 배포하는 시스템
KR1020027011300A Ceased KR20020079922A (ko) 2001-01-31 2002-01-30 이동단말의 기억모듈에 프로그램을 배포하는 시스템

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020047014238A Expired - Fee Related KR100749690B1 (ko) 2001-01-31 2002-01-30 이동 단말의 기억 모듈에 프로그램을 배포하는 시스템

Country Status (15)

Country Link
US (1) US7269445B2 (ko)
EP (1) EP1248188B1 (ko)
JP (1) JP3910915B2 (ko)
KR (2) KR100749690B1 (ko)
CN (2) CN1592187A (ko)
AU (1) AU2002228370B2 (ko)
BR (1) BR0202291A (ko)
CA (1) CA2397711C (ko)
HK (1) HK1047642A1 (ko)
NO (1) NO330991B1 (ko)
NZ (2) NZ536782A (ko)
PL (1) PL358713A1 (ko)
SG (1) SG145548A1 (ko)
TW (1) TWI221585B (ko)
WO (1) WO2002061572A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100447064B1 (ko) * 2001-11-14 2004-09-04 에스케이텔레텍주식회사 이동통신 단말기용 컨텐츠 프로그램의 응용 프로그래밍 인터페이스의 사용권한 제한방법
KR100663498B1 (ko) * 2005-10-11 2007-01-02 삼성전자주식회사 단말기의 사용자 식별 모듈을 이용한 웹 서비스 응답 향상방법 및 장치, 그리고 그 시스템
KR100791764B1 (ko) * 2006-07-20 2008-01-03 (주) 엘지텔레콤 전자 카드를 갖춘 이동 단말기에서의 교통정보 관리 시스템및 그 방법

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8077679B2 (en) 2001-03-28 2011-12-13 Qualcomm Incorporated Method and apparatus for providing protocol options in a wireless communication system
US8121296B2 (en) 2001-03-28 2012-02-21 Qualcomm Incorporated Method and apparatus for security in a data processing system
US9100457B2 (en) 2001-03-28 2015-08-04 Qualcomm Incorporated Method and apparatus for transmission framing in a wireless communication system
US7693508B2 (en) 2001-03-28 2010-04-06 Qualcomm Incorporated Method and apparatus for broadcast signaling in a wireless communication system
US7185362B2 (en) * 2001-08-20 2007-02-27 Qualcomm, Incorporated Method and apparatus for security in a data processing system
US7352868B2 (en) 2001-10-09 2008-04-01 Philip Hawkes Method and apparatus for security in a data processing system
US7649829B2 (en) 2001-10-12 2010-01-19 Qualcomm Incorporated Method and system for reduction of decoding complexity in a communication system
JP2003152698A (ja) * 2001-11-15 2003-05-23 Nippon Hoso Kyokai <Nhk> コンテンツ利用制御送信方法、コンテンツ利用制御受信方法およびコンテンツ利用制御送信装置、コンテンツ利用制御受信装置ならびにコンテンツ利用制御送信プログラム、コンテンツ利用制御受信プログラム
JP4045805B2 (ja) * 2002-01-11 2008-02-13 日本電気株式会社 テレビ受信機およびテレビアプリケーション制御方法
JP4051968B2 (ja) * 2002-03-07 2008-02-27 日本電気株式会社 デジタル放送受信機
JP3742029B2 (ja) * 2002-04-15 2006-02-01 埼玉日本電気株式会社 携帯電話機
US20050101309A1 (en) * 2002-05-29 2005-05-12 Martin Croome Method and apparatus for selective configuration based upon expansion card presence
US20040194027A1 (en) * 2002-12-27 2004-09-30 Akira Suzuki Computerized electronic document producing, editing and accessing system for maintaining high-security
US7599655B2 (en) 2003-01-02 2009-10-06 Qualcomm Incorporated Method and apparatus for broadcast services in a communication system
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
US7308573B2 (en) 2003-02-25 2007-12-11 Microsoft Corporation Enrolling / sub-enrolling a digital rights management (DRM) server into a DRM architecture
US8098818B2 (en) 2003-07-07 2012-01-17 Qualcomm Incorporated Secure registration for a multicast-broadcast-multimedia system (MBMS)
US8718279B2 (en) 2003-07-08 2014-05-06 Qualcomm Incorporated Apparatus and method for a secure broadcast system
US8006309B2 (en) * 2003-08-11 2011-08-23 Sony Corporation Information processing device and communication method
US8724803B2 (en) 2003-09-02 2014-05-13 Qualcomm Incorporated Method and apparatus for providing authenticated challenges for broadcast-multicast communications in a communication system
FI20035235A0 (fi) * 2003-12-12 2003-12-12 Nokia Corp Järjestely tiedostojen käsittelemiseksi päätelaitteen yhteydessä
US7257583B2 (en) * 2004-01-09 2007-08-14 Microsoft Corporation System and method for updating an on-device application catalog in a mobile device receiving a push message from a catalog server indicating availability of an application for download
GB2411331A (en) * 2004-02-19 2005-08-24 Trigenix Ltd Rendering user interface using actor attributes
JP4593156B2 (ja) * 2004-04-07 2010-12-08 株式会社エヌ・ティ・ティ・ドコモ 通信装置およびプログラムのダウンロード方法
JP4722408B2 (ja) * 2004-04-07 2011-07-13 株式会社エヌ・ティ・ティ・ドコモ 情報処理装置およびプログラムの削除方法
JP4763332B2 (ja) * 2004-09-03 2011-08-31 株式会社エヌ・ティ・ティ・ドコモ 移動体端末装置並びに非接触カード機能管理システム及び非接触カード機能取得システム
JP3703098B1 (ja) * 2004-11-11 2005-10-05 株式会社エヌ・ティ・ティ・ドコモ 移動体端末装置
JP2006178912A (ja) * 2004-12-24 2006-07-06 Fujitsu Ltd 情報処理方法及びプログラム
JP4704045B2 (ja) 2005-01-12 2011-06-15 株式会社エヌ・ティ・ティ・ドコモ 通信装置、デジタル署名検証方法およびデジタル署名生成方法
US9275052B2 (en) 2005-01-19 2016-03-01 Amazon Technologies, Inc. Providing annotations of a digital work
FR2882835B1 (fr) * 2005-03-01 2007-09-07 Softway Sa Procede de transfert securise par carte multimedia securisee
US8438645B2 (en) 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US7483416B2 (en) * 2005-04-01 2009-01-27 Cml Emergency Services Inc. Internet protocol radio dispatch system and method
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
WO2006114925A1 (ja) * 2005-04-21 2006-11-02 Mitsubishi Denki Kabushiki Kaisha プログラム提供装置、記憶媒体および車載情報システム
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
FR2892261A1 (fr) * 2005-10-17 2007-04-20 France Telecom Procede et systeme de gestion des applications d'un terminal mobile
JP2007243773A (ja) * 2006-03-10 2007-09-20 Fujitsu Ltd 4gアクセスポイント型通信方式
US8352449B1 (en) 2006-03-29 2013-01-08 Amazon Technologies, Inc. Reader device content indexing
US8260278B2 (en) * 2006-05-12 2012-09-04 The Mitre Corporation Framework for agile mobile applications
CN101460939B (zh) * 2006-07-05 2011-01-26 艾格瑞系统有限公司 移动数据存储和采集的系统和方法
US7676615B2 (en) * 2006-08-21 2010-03-09 Panasonic Corporation Contents data storage device and contents data update system
JP2008077440A (ja) * 2006-09-21 2008-04-03 Sony Corp 情報処理装置、情報処理方法及び情報処理プログラム
US8725565B1 (en) 2006-09-29 2014-05-13 Amazon Technologies, Inc. Expedited acquisition of a digital item following a sample presentation of the item
US9672533B1 (en) 2006-09-29 2017-06-06 Amazon Technologies, Inc. Acquisition of an item based on a catalog presentation of items
US7865817B2 (en) 2006-12-29 2011-01-04 Amazon Technologies, Inc. Invariant referencing in digital works
US8024400B2 (en) 2007-09-26 2011-09-20 Oomble, Inc. Method and system for transferring content from the web to mobile devices
US7751807B2 (en) 2007-02-12 2010-07-06 Oomble, Inc. Method and system for a hosted mobile management service architecture
US9665529B1 (en) 2007-03-29 2017-05-30 Amazon Technologies, Inc. Relative progress and event indicators
US7716224B2 (en) 2007-03-29 2010-05-11 Amazon Technologies, Inc. Search and indexing on a user device
JP2008269292A (ja) * 2007-04-20 2008-11-06 Sony Corp 情報処理方法および端末装置
US8341513B1 (en) 2007-05-21 2012-12-25 Amazon.Com Inc. Incremental updates of items
KR101398908B1 (ko) * 2007-05-22 2014-05-26 삼성전자주식회사 모바일 아이피를 사용하는 이동 통신 시스템에서 단말의이동성 관리 방법 및 시스템
JP2008294976A (ja) 2007-05-28 2008-12-04 Nec Corp 携帯端末、携帯端末管理システムおよびデータ保存方法
JP5005811B2 (ja) * 2007-07-24 2012-08-22 エヌエックスピー ビー ヴィ アプリケーションを携帯電話にセキュアに伝送するための方法、システム及びトラステッド・サービス・マネージャ
JP4403433B2 (ja) * 2007-08-23 2010-01-27 ソニー株式会社 電子財布装置、通信方法及びプログラム
JP5018339B2 (ja) * 2007-08-23 2012-09-05 ソニー株式会社 信号処理装置、信号処理方法、プログラム
JP2009053766A (ja) * 2007-08-23 2009-03-12 Sony Corp 電子財布装置、通信方法、およびプログラム
JP5286714B2 (ja) * 2007-08-23 2013-09-11 ソニー株式会社 電子財布装置、電子バリュー利用方法及びプログラム
CN101119387B (zh) * 2007-09-10 2012-11-14 北京网秦天下科技有限公司 一种便利于定制、配置与迁移手机软件业务的方法和系统
EP2043060A1 (en) * 2007-09-27 2009-04-01 Nxp B.V. Trusted service manager managing reports of lost or stolen mobile communication devices
CN101855887B (zh) * 2007-11-06 2014-07-23 金雅拓股份有限公司 在移动通信设备间共享或转售nfc应用
CN101159488B (zh) * 2007-11-12 2013-06-05 中兴通讯股份有限公司 一种时分双工系统物理广播信道的发送方法
KR100958108B1 (ko) * 2007-11-12 2010-05-17 한국전자통신연구원 이동통신 단말기의 프로그램 불법복제 방지 방법 및 장치
US8831220B2 (en) * 2007-11-30 2014-09-09 Battelle Energy Alliance, Llc Processing module operating methods, processing modules, and communications systems
WO2009113017A1 (en) 2008-03-10 2009-09-17 Nxp B.V. Method and devices for installing and retrieving linked mifare applications
KR101437446B1 (ko) * 2008-03-31 2014-09-05 삼성전자주식회사 디스플레이장치 및 그 제어 방법과 외부 디바이스의 제어방법
WO2009144612A1 (en) * 2008-05-29 2009-12-03 Nxp B.V. Method and trusted service manager for providing fast and secure access to applications on an ic card
US8423889B1 (en) 2008-06-05 2013-04-16 Amazon Technologies, Inc. Device specific presentation control for electronic book reader devices
US9087032B1 (en) 2009-01-26 2015-07-21 Amazon Technologies, Inc. Aggregation of highlights
US8378979B2 (en) 2009-01-27 2013-02-19 Amazon Technologies, Inc. Electronic device with haptic feedback
US9946848B2 (en) 2009-02-26 2018-04-17 International Business Machines Corporation Software protection using an installation product having an entitlement file
US8832584B1 (en) 2009-03-31 2014-09-09 Amazon Technologies, Inc. Questions on highlighted passages
JP5397473B2 (ja) * 2009-08-07 2014-01-22 富士通株式会社 基地局装置、データ処理装置及び通信データ処理方法
FR2950172B1 (fr) * 2009-09-14 2011-11-11 Oberthur Technologies Procede et dispositif d'installation d'une application mifare dans une memoire mifare
US8692763B1 (en) 2009-09-28 2014-04-08 John T. Kim Last screen rendering for electronic book reader
US8537004B2 (en) * 2009-09-30 2013-09-17 Carefusion 303, Inc. Verification of dispensed items
US10878404B2 (en) * 2010-06-29 2020-12-29 Feitian Technologies Co., Ltd. Method for operating an e-purse
US9495322B1 (en) 2010-09-21 2016-11-15 Amazon Technologies, Inc. Cover display
JP5522075B2 (ja) 2011-02-15 2014-06-18 コニカミノルタ株式会社 画像形成装置、画像形成システム、画像形成装置の制御方法、及び画像形成装置の制御プログラム
US9158741B1 (en) 2011-10-28 2015-10-13 Amazon Technologies, Inc. Indicators for navigating digital works
KR102081012B1 (ko) * 2012-10-08 2020-02-24 패트릭 순-시옹 분산 저장 시스템 및 방법
CN102984204B (zh) * 2012-10-31 2015-09-09 广东欧珀移动通信有限公司 一种获取应用程序的方法及移动智能终端
CN103279708A (zh) * 2012-12-28 2013-09-04 武汉安天信息技术有限责任公司 一种移动终端恶意代码行为监控和分析的方法及系统
JP5862586B2 (ja) * 2013-03-22 2016-02-16 カシオ計算機株式会社 コンテンツ配信システム及びコンテンツ配信方法
US11138585B2 (en) * 2015-03-11 2021-10-05 Paypal, Inc. NFC cookies for enhanced mobile transactions and payments
CN105204442A (zh) * 2015-09-02 2015-12-30 华中科技大学 一种数控系统内部指令标记、实时调制及发送方法
JP7331714B2 (ja) * 2020-01-27 2023-08-23 富士通株式会社 情報処理装置、情報処理方法及びプログラム

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0687220B2 (ja) 1988-10-31 1994-11-02 株式会社日立製作所 プログラム配布装置
JPH06195217A (ja) 1992-12-24 1994-07-15 Nippon Telegr & Teleph Corp <Ntt> ソフトウェア追加機能提供方法
JPH08249312A (ja) 1995-03-13 1996-09-27 Ekushingu:Kk 情報提供システム及び該システムに用いられる情報提供端末
JP3688356B2 (ja) 1995-08-31 2005-08-24 富士通株式会社 ライセンシー通知システム
US6067575A (en) 1995-12-08 2000-05-23 Sun Microsystems, Inc. System and method for generating trusted, architecture specific, compiled versions of architecture neutral programs
JPH09244900A (ja) 1996-03-11 1997-09-19 Taito Corp 通信カラオケ装置、通信カラオケ用ホストコンピュータ及び通信カラオケシステム
US5887254A (en) * 1996-04-26 1999-03-23 Nokia Mobile Phones Limited Methods and apparatus for updating the software of a mobile terminal using the air interface
US5825877A (en) 1996-06-11 1998-10-20 International Business Machines Corporation Support for portable trusted software
TW313642B (en) 1996-06-11 1997-08-21 Ibm A uniform mechanism for using signed content
JPH1078867A (ja) 1996-09-03 1998-03-24 Hitachi Ltd ソフトウェア流通システム
US6023620A (en) * 1997-02-26 2000-02-08 Telefonaktiebolaget Lm Ecrisson Method for downloading control software to a cellular telephone
JPH10301772A (ja) 1997-04-30 1998-11-13 Sony Corp 情報処理装置および情報処理方法、並びに記録媒体
JPH11170752A (ja) * 1997-12-15 1999-06-29 Nippon Shinpan Co Ltd 有効化手段または無効化手段を備えたカード
JP3994518B2 (ja) * 1998-05-11 2007-10-24 ソニー株式会社 データ配信装置およびデータ配信用の端末装置
JPH11338946A (ja) 1998-05-25 1999-12-10 Glory Ltd Icカードを使った電子財布システムにおける預金処理方法
JP3565715B2 (ja) 1998-07-02 2004-09-15 松下電器産業株式会社 放送システムと放送送受信装置
FI105966B (fi) * 1998-07-07 2000-10-31 Nokia Networks Oy Autentikointi tietoliikenneverkossa
JP2000184085A (ja) 1998-12-18 2000-06-30 Fujitsu Ltd 携帯機器、携帯端末用アタッチメント及び携帯機器を用いたシステム
IT1305084B1 (it) * 1998-12-28 2001-04-10 Tim Telecom Italia Mobile S P Terminale mobile per telecomunicazioni e relativo sistema.
JP3873624B2 (ja) 1999-01-13 2007-01-24 株式会社日立製作所 モバイルコードの実行方法およびそのシステム
JP2000293584A (ja) * 1999-04-09 2000-10-20 Nec Software Chugoku Ltd コンテンツ配信システム及び契約管理方法
GB2349548A (en) 1999-04-27 2000-11-01 Roke Manor Research Downloading software to mobile telecommunication users
JP4404415B2 (ja) * 1999-05-11 2010-01-27 三洋電機株式会社 情報配信システムおよび音楽配信システム
JP4149636B2 (ja) 1999-05-21 2008-09-10 株式会社ディジティ・ミニミ サービス提供システム、サービス提供方法および携帯端末
US6941270B1 (en) * 1999-06-21 2005-09-06 Nokia Corporation Apparatus, and associated method, for loading a mobile terminal with an application program installed at a peer device
JP2001117885A (ja) 1999-10-18 2001-04-27 Ntt Comware Corp クライアントサーバシステム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100447064B1 (ko) * 2001-11-14 2004-09-04 에스케이텔레텍주식회사 이동통신 단말기용 컨텐츠 프로그램의 응용 프로그래밍 인터페이스의 사용권한 제한방법
KR100663498B1 (ko) * 2005-10-11 2007-01-02 삼성전자주식회사 단말기의 사용자 식별 모듈을 이용한 웹 서비스 응답 향상방법 및 장치, 그리고 그 시스템
KR100791764B1 (ko) * 2006-07-20 2008-01-03 (주) 엘지텔레콤 전자 카드를 갖춘 이동 단말기에서의 교통정보 관리 시스템및 그 방법

Also Published As

Publication number Publication date
CN1592187A (zh) 2005-03-09
KR100749690B1 (ko) 2007-08-17
JPWO2002061572A1 (ja) 2004-06-03
AU2002228370B2 (en) 2004-06-24
US7269445B2 (en) 2007-09-11
CA2397711A1 (en) 2002-08-08
CA2397711C (en) 2008-12-23
US20020194474A1 (en) 2002-12-19
NO330991B1 (no) 2011-09-05
NO20024672L (no) 2002-11-29
EP1248188A1 (en) 2002-10-09
NO20024672D0 (no) 2002-09-30
TWI221585B (en) 2004-10-01
EP1248188A4 (en) 2009-12-23
BR0202291A (pt) 2003-06-10
EP1248188B1 (en) 2017-09-20
HK1047642A1 (en) 2003-02-28
SG145548A1 (en) 2008-09-29
JP3910915B2 (ja) 2007-04-25
KR20040091717A (ko) 2004-10-28
CN1455894A (zh) 2003-11-12
WO2002061572A1 (en) 2002-08-08
PL358713A1 (en) 2004-08-09
NZ519177A (en) 2005-04-29
NZ536782A (en) 2005-10-28

Similar Documents

Publication Publication Date Title
KR100749690B1 (ko) 이동 단말의 기억 모듈에 프로그램을 배포하는 시스템
US6990684B2 (en) Person authentication system, person authentication method and program providing medium
US7310732B2 (en) Content distribution system authenticating a user based on an identification certificate identified in a secure container
KR100614433B1 (ko) 애플리케이션 관리 서버, 이동 단말 및 애플리케이션 관리 방법
US7484246B2 (en) Content distribution system, content distribution method, information processing apparatus, and program providing medium
CN102346832B (zh) 电子通信的增强的安全性
US7287158B2 (en) Person authentication system, person authentication method, information processing apparatus, and program providing medium
CN100420183C (zh) 终端通信系统及方法
US20020056747A1 (en) Person authentication system, person authentication method, information processing apparatus, and program providing medium
EP1478201B1 (en) Communication device, system, and application for managing contents usage
WO2002059727A2 (en) Security system and method for providing a user with an authorisation code for accessing a service
US20020027494A1 (en) Person authentication system, person authentication method, and program providing medium
EP1276066A2 (en) Licensing method and license providing system
JP2002334278A (ja) 携帯端末を利用した販売方法、その装置、そのプログラム及びその記録媒体
CN101329635B (zh) 将程序发送到移动终端的存储模块的方法和装置
JP2004295365A (ja) プログラム配信システム及び方法、プログラム配信サーバ、ならびに、コンピュータプログラム
JP2001283016A (ja) コンテンツ配信システム
AU2004203674B2 (en) System for program delivery to a storage module of a mobile terminal
KR20130015497A (ko) 원타임 애플리케이션 서비스 장치 및 방법
KR100564688B1 (ko) 프로그램 관리 서버

Legal Events

Date Code Title Description
A201 Request for examination
PA0105 International application

Patent event date: 20020828

Patent event code: PA01051R01D

Comment text: International Patent Application

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20040817

Patent event code: PE09021S01D

A107 Divisional application of patent
PA0104 Divisional application for international application

Comment text: Divisional Application for International Patent

Patent event code: PA01041R01D

Patent event date: 20040910

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20050319

Patent event code: PE09021S01D

E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20051019

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20050319

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I

Patent event date: 20040817

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I