KR20080098431A - 사용자 인터페이스 컴포넌트들을 무선 디바이스들에 다운로드하기 위한 시스템 및 방법 - Google Patents

사용자 인터페이스 컴포넌트들을 무선 디바이스들에 다운로드하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20080098431A
KR20080098431A KR1020087023282A KR20087023282A KR20080098431A KR 20080098431 A KR20080098431 A KR 20080098431A KR 1020087023282 A KR1020087023282 A KR 1020087023282A KR 20087023282 A KR20087023282 A KR 20087023282A KR 20080098431 A KR20080098431 A KR 20080098431A
Authority
KR
South Korea
Prior art keywords
user interface
bundle
component
wireless device
risk level
Prior art date
Application number
KR1020087023282A
Other languages
English (en)
Other versions
KR100972270B1 (ko
Inventor
자슨 비. 케네쥐
마르크 에드워드 니즈담
크리스토프 베르나르드
Original Assignee
콸콤 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 콸콤 인코포레이티드 filed Critical 콸콤 인코포레이티드
Publication of KR20080098431A publication Critical patent/KR20080098431A/ko
Application granted granted Critical
Publication of KR100972270B1 publication Critical patent/KR100972270B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • 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
    • 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/03Credit; Loans; Processing thereof
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • H04W12/121Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2113Multi-level security, e.g. mandatory access control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

사용자 인터페이스 컴포넌트들을 처리하는 방법이 제공되고, 상기 방법은 무선 디바이스로 전송될 수 있는 하나 이상의 사용자 인터페이스 컴포넌트들을 수신하는 단계를 포함한다. 상기 하나 이상의 사용자 인터페이스 컴포넌트들 각각에 대한 컴포넌트 리스크 레벨이 결정되고 상기 하나 이상의 사용자 인터페이스 컴포넌트들 각각으로 할당된다. 상기 하나 이상의 사용자 인터페이스 컴포넌트들 각각은 상기 할당된 리스크 레벨을 표시하는 포함된 리스크 로드를 사용하여 디지털 서명될 수 있다. 추가적으로, 상기 컴포넌트 리스크 레벨은 복수의 컴포넌트 리스크 레벨들로부터 선택될 수 있다. 특정 실시예에서, 상기 컴포넌트 리스크 레벨은 상기 사용자 인터페이스 컴포넌트의 타입에 기반하여 결정될 수 있다. 추가적으로, 상기 컴포넌트 리스크 레벨은 상기 사용자 인터페이스 컴포넌트의 개발자에 기반하여 결정될 수 있다.

Description

사용자 인터페이스 컴포넌트들을 무선 디바이스들에 다운로드하기 위한 시스템 및 방법{SYSTEM AND METHOD FOR DOWNLOADING USER INTERFACE COMPONENTS TO WIRELESS DEVICES}
본 발명은 일반적으로는 무선 디바이스들을 위한 사용자 인터페이스들에 관한 것이다. 보다 구체적으로, 본 발명은 무선 디바이스들로 사용자 인터페이스 컴포넌트들을 다운로드 하는 것에 관한 것이다.
기술 발전은 더 소형이고 더 강력한 무선 디바이스들을 초래하였다. 예를 들어, 현재 이동 전화들, 개인용 휴대 정보 단말기(PDA)들, 랩톱들, 및 페이징 디바이스들을 포함하는 다양한 무선 디바이스들이 현재 존재하는데, 이들 디바이스들은 소형이고, 경량이면서, 사용자들에 의해 용이하게 운반된다. 이들 디바이스들은 무선 네트워크들을 통해 음성 및/또는 데이터을 전송하는 성능을 포함할 수 있다. 추가적으로, 많은 이러한 무선 디바이스들은 상당한 계산 성능들을 제공하고, 그 자체가 소형 무선 컴퓨터들 및 핸드-헬드 PDA들에 탑재되고 있다.
통상적으로, 이들 더 소형이고 더 강력한 무선 디바이스들은 종종 자원 제한적이다. 예를 들어, 스크린 크기, 사용가능한 메모리 및 파일 시스템 공간의 양, 및 입출력 성능의 양이 상기 디바이스의 상기 작은 사이즈에 의해 제한될 수 있다. 이러한 엄격한 자원 제약들 때문에, 소프트웨어 어플리케이션들 및 이러한 무선 디바이스에 상주하는 다른 정보의 제한된 사이즈를 유지하는 것이 바람직할 수 있다.
이들 무선 디바이스들 중 몇몇은, 때때로 런타임 환경들 및 소프트웨어 플랫폼들로서 지칭되는 어플리케이션 프로그래밍 인터페이스들(API)을 사용한다. 상기 API들은 무선 디바이스에 설치되어 디바이스 자원들에 대한 일반화된 호출들을 제공함으로써 이러한 무선 디바이스들의 프로그래밍 및 동작을 간소화한다. 추가적으로, 몇몇 API들은 이러한 디바이스들에서 실행가능한 소프트웨어 어플리케이션들을 생성하는 능력을 소프트웨어 개발자들에게 제공할 수 있다. 추가적으로, API들은 무선 디바이스 시스템 하드웨어와 상기 소프트웨어 어플리케이션들 사이에 인터페이스를 제공할 수 있다. 그 자체로, 상기 무선 디바이스 기능은 상기 소프트웨어로 하여금 동작을 위한 일반적인(generic) 호출을 하도록 하여, 따라서 상기 소프트웨어가 실행되는 개별 하드웨어 혹은 디바이스에 대해 상기 개발자에게 자원을 맞추도록 요구하지 않음으로써 상기 소프트웨어 어플리케이션들에 대해 사용가능하게 할 수 있다. 추가적으로, 몇몇 API들은, 보안 암호화 키 정보를 사용하여, 예를 들어 클라이언트 디바이스들 및 서버 시스템들과 같은, 무선 디바이스들 사이에서 보안 통신들을 위한 메커니즘들을 제공한다.
이러한 API들의 예들은, 이들 중 일부는 아래ㅇ에서 더 상세히 논의되고, 캘리포니아, 샌디에고의 Qualcomm,Inc.에 의해 개발된, 무선용 바이너리 런타임 환경®(BREW®) 플랫폼의 현재 공개적으로 사용가능한 버전들을 포함한다. 상기 BREW ® 플랫폼은 무선 디바이스들에서 발견되는 특정 하드웨어 및 소트프웨어 특징들에 하나 이상의 인터페이스들을 제공할 수 있다.
추가적으로, 상기 BREW® 플랫폼은 다양한 이점들을 무선 서비스 오퍼레이터들, 소프트웨어 개발자들 및 무선 디바이스 제조자들 및 소비자들에게 제공하기 위해 엔드-대-엔드 소프트웨어 분산 시스템에서 사용될 수 있다. QUALCOMM 사에 의해 개발된 상기 BREW® 솔루션이라 호칭되는, 한 가지 이러한 현재 사용가능한 엔드-대-엔드 소프트웨어 분산 시스템은 서버-클라이언트 아키텍쳐를 통해 분산된 로직을 포함하고, 여기서 상기 서버는 과금, 보안 및 어플리케이션 분산 기능을 수행하고, 상기 클라이언트는 어플리케이션 실행, 보안 및 사용자 인터페이스 기능을 수행할 수 있다.
상기 BREW® 플랫폼에서 동작하도록 개발되었고 무선 디바이스들로 다운로드될 수 있는 상기 소프트웨어 어플리케이션들 중 일부는 사용자 인터페이스 컴포넌트들을 포함할 수 있다. 무선 디바이스로 다운로드된 후에, 사용자 인터페이스 컴포넌트는 예를 들어 배경 혹은 스킨과 같은 이전의 기존 사용자 인터페이스 컴포넌트들을 업데이트하거나 대체하도록 실행될 수 있다. 때때로, 상기 사용자 인터페이스 컴포넌트는 하나 이상의 프로그램 버그들을 포함할 수 있으며, 상기 사용자 인터페이스 컴포넌트를 상기 무선 디바이스에서 실행하는 것은 상기 무선 디바이스가 동작되지 못하도록 할 수 있다.
따라서, 무선 디바이스들로 사용자 인터페이스 컴포넌트들을 다운로드 하는 방법 및 개선된 시스템을 제공하는 것이 유리하다.
사용자 인터페이스 컴포넌트를 프로세싱하는 방법이 제공되고 무선 디바이스로 전송될 수 있는 하나 이상의 사용자 인터페이스 컴포넌트들을 수신하는 단계를 포함한다. 상기 하나 이상의 사용자 인터페이스 컴포넌트들 각각에 대한 컴포넌트 리스크 레벨이 결정되어 상기 하나 이상의 사용자 인터페이스 컴포넌트들 각각으로 할당된다.
특정 실시예에서, 상기 하나 이상의 사용자 인터페이스 컴포넌트들은 상기 할당된 리스크 레벨을 표시하는 임베디드 리스크 코드를 사용하여 디지털 서명된다. 추가적으로 상기 컴포넌트 리스크 레벨은 복수의 컴포넌트 리스크 레벨들로부터 선택될 수 있다. 특정 실시예에서, 상기 컴포넌트 리스크 레벨은 상기 사용자 인터페이스 컴포넌트의 타입에 기반하여 결정될 수 있다. 추가로, 상기 컴포넌트 리스크 레벨은 상기 사용자 인터페이스 컴포넌트의 개발자에 기반하여 결정될 수 있다. 예를 들어, 낮은 리스크 레벨은 승인된 개발자에 의해 개발된 각 사용자 인터페이스 컴포넌트에 할당될 수 있다. 반면, 높은 리스크 레벨은 미승인된 개발자에 의해 개발된 각 사용자 인터페이스 컴포넌트로 할당될 수 있다.
특정 실시예에서, 상기 방법은 추가적으로 상기 하나 이상의 사용자 인터페이스 컴포넌트들을 무선 디바이스로 다운로드하는 단계를 포함한다. 더욱이, 상기 복수의 사용자 인터페이스 컴포넌트들은 사용자 인터페이스 번들을 생성하기 위해 함께 번들화될 수 있고, 상기 사용자 인터페이스 번들에 대한 번들 리스크 레벨이 결정될 수 있다. 구체적으로, 상기 번들 리스크 레벨은 상기 사용자 인터페이스 번들 내에 있는 상기 사용자 리스크 컴포넌트들의 각 컴포넌트 리스크 레벨에 기반하여 결정될 수 있다. 또한, 상기 사용자 인터페이스 번들은 디지털로 서명될 수 있다. 상기 사용자 인터페이스 번들은 또한 상기 무선 디바이스로 다운로드 될 수 있다. 특정 실시예에 있어서, 상기 방법은 상기 무선 디바이스로 상기 사용자 인터페이스 번들을 다운로드 하기 위해 요금을 과금하는 단계를 포함한다. 추가적으로, 상기 사용자 인터페이스 번들은 무선 인터페이스를 통해 상기 무선 디바이스로 다운로드될 수 있지만, 유선(cabled) 다운로드 역시 가능하다.
또다른 실시예에 있어서, 무선 네트워크 디바이스에서 사용자 인터페이스 컴포넌트들을 획득하는 방법이 제공된다. 상기 방법은 다운로드 서버에 액세스하는 단계 및 상기 다운로드 서버로부터 사용자 인터페이스 번들을 수신하는 단계를 포함한다. 특히, 상기 사용자 인터페이스 번들은 상기 무선 디바이스로 상기 사용자 인터페이스 번들을 로딩하는 것과 연관된 번들 리스크 레벨을 포함한다.
또다른 실시예에서, 무선 디바이스가 제공되며, 프로세서 및 상기 프로세서에 의해 액세스 가능한 메모리를 포함한다. 사용자 인터페이스는 상기 메모리 내에 저장되고 또한 상기 프로세서에 의해 실행 가능하다. 상기 메모리는 추가적으로 상기 메모리에 포함된 사용자 인터페이스 번들을 포함한다. 추가적으로, 상기 사용자 인터페이스는 번들 리스크 레벨을 포함한다.
또다른 실시예에서, 사용자 인터페이스 컴포넌트들을 다운로드 하기 위한 시스템이 제공되고, 상기 시스템은 보안 서버 및 어플리케이션 다운로드 서버와 상기 보안 서버로 액세스 가능한 저장된 어플리케이션 데이터베이스를 포함한다. 사용자 인터페이스 번들은 상기 저장된 어플리케이션 데이터베이스 내에 저장될 수 있다. 또한, 상기 사용자 인터페이스 번들은 복수의 사용자 인터페이스 컴포넌트들 및 무선 디바이스로 상기 사용자 인터페이스 번들을 다운로드 하는 것과 추가적으로 연관된 할당된 리스크와 연관된 번들 리스크 레벨을 포함한다.
또다른 실시예에서, 컴퓨터 프로그램이 제공되고, 상기 컴퓨터 프로그램은 컴퓨터 판독가능한 매체 내에 포함된다. 상기 컴퓨터 프로그램은 하나 이상의 사용자 인터페이스 컴포넌트들을 수신하기 위한 명령들을 포함한다. 더욱이, 상기 컴퓨터 프로그램은 상기 하나 이상의 수신된 사용자 인터페이스 컴포넌트들 각각에 대한 컴포넌트 리스크 레벨을 결정하는 명령들을 포함한다. 상기 컴포넌트 리스크 레벨은 무선 디바이스에서 사용자 인터페이스를 실행하는 것과 연관된 리스크를 표시한다. 상기 컴퓨터 프로그램은 또한 결정된 컴포넌트 리스크 레벨로 상기 하나 이상의 사용자 인터페이스 컴포넌트들 각각을 할당하기 위한 명령들을 포함한다.
또다른 실시에에서, 컴퓨터 프로그램이 제공되며, 상기 컴퓨터 프로그램은 컴퓨터 판독가능한 매체 내에 포함된다. 특히, 상기 컴퓨터 프로그램은 사용자 인터페이스 번들을 수신하기 위한 명령들을 포함한다. 상기 사용자 인터페이스 번들은 무선 디바이스에서 상기 사용자 인터페이스 번들을 번들해제(unbundling)하는데 대한 보안 리스크를 표시하는 데이터 항목을 포함한다.
또다른 실시예에서, 무선 디바이스를 위한 사용자 인터페이스가 제공되며, 상기 사용자 인터페이스는 리스크 레벨 임계치들의 메뉴를 포함한다. 제 1 리스크 레벨 임계치는 상기 메뉴로부터 선택될 수 있고, 상기 제 1 리스크 레벨 임계치 미만인 리스크 레벨을 가지는 파일 번들들이 상기 무선 디바이스에서 수신될 수 있다.
또다른 실시예에서, 컴퓨터를 위한 사용자 인터페이스가 제공되고, 상기 사용자 인터페이스는 리스크 레벨 임계치들의 메뉴를 포함한다. 제 1 리스크 레벨 임계치는 상기 메뉴로부터 선택될 수 있다. 상기 제 1 리스크 레벨은 파일이 무선 디바이스로 다운로드되고 상기 무선 디바이스에서 실행되기 전에 상기 파일에 할당될 수 있다.
본 발명의 다른 양상들, 이점들 및 특징들은 후속하는 섹션들, 즉, 도면의 간단한 설명, 실시예 및 청구항들을 포함하여, 전체 출원의 리뷰 후 명백해질 것이다.
본 명세서에서 설명된 실시예들의 양상들 및 수반되는 이점들은 첨부 도면들과 연계하여 취해질 때 후속하는 상세한 설명을 참조함으로써 보다 용이하게 명백해질 것이다.
도 1은 무선 디바이스 및 서버 사이에서 통신을 제공하는 시스템의 특정 실시예의 일반적인 다이어그램.
도 2는 도 1의 시스템의 특정 실시예의 보다 상세한 내용을 예시하는 일반적인 다이어그램.
도 3은 무선 디바이스로 사용자 인터페이스 컴포넌트들을 제공하는 방법을 예시하는 흐름도.
도 4는 무선 디바이스에서 사용자 인터페이스 컴포넌트들을 수신하는 방법을 예시하는 흐름도.
도 5는 제 1 사용자 인터페이스를 도시하는 무선 디바이스의 다이어그램.
도 6은 제 2 사용자 인터페이스를 도시하는 무선 디바이스의 다이어그램.
도 7은 제 3 사용자 인터페이스를 도시하는 무선 디바이스의 다이어그램.
도 8은 제 1 사용자 인터페이스를 도시하는 컴퓨터의 다이어그램.
도 9는 제 2 사용자 인터페이스를 도시하는 상기 컴퓨터의 다이어그램.
도 10은 제 3 사용자 인터페이스를 도시하는 상기 컴퓨터의 다이어그램.
상기 단어 "예시적인"은 "예, 경우, 예시로서 제공하는"것을 의미하는 것으로 본 명세서에서는 사용된다. 본 명세서에서 설명된 실시예는 다른 실시예들보다 더 바람직하거나 유리한 것으로서 반드시 해석되지는 않는다. 추가적으로, 많은 실시예들이 예를 들어, 무선 디바이스의 엘리먼트들에 의해 수행되는 동작들의 시퀀스들의 견지에서 설명된다. 본 명세서에서 설명된 다양한 동작들은 특정 회로들, 예를 들어 주문형 반도체(ASIC)들에 의해, 하나 이상의 프로세서들에 의해 실행되는 프로그램 명령들에 의해, 혹은 이들 둘 다의 결합에 의해 수행될 수 있다는 점이 인지될 것이다.
추가적으로, 본 명세서에서 설명된 실시예들은 본 명세서에서 연관된 프로세서로 하여금 설명된 기능을 수행하도록 실행되는 경우, 대응하는 컴퓨터 명령들의 세트가 저장된 임의의 형태의 컴퓨터 판독가능한 저장 매체 내에서 완전하게 포함되는 것으로 추가적으로 간주될 수 있다. 따라서, 본 발명의 다양한 양상들은 다 수의 상이한 형태들로 포함될 수 있으며, 이들 모두는 청구되는 발명 대상의 범위내에 있는 것으로 참작된다. 또한, 본 명세서에서 설명된 실시예들 각각에 대해, 임의의 이러한 실시예들의 대응하는 형태는 본 명세서에서, 예를 들어, 특정 동작을 수행하도록 "구성된 로직" 혹은 상기 설명된 동작을 수행하도록 "동작하는 코드"로서 설명될 수 있다. 후속하는 상세한 설명은 한 개의 혹은 무선 디바이스들과 연관하여 사용되는 방법들, 시스템들 소프트웨어 및 장치를 설명한다.
하나 이상의 실시예들에 있어서, 무선 디바이스는 캘리포니아, 샌디에고의 QUALCOMM, Inc.,에 의해 개발된 무선용 바이너리 런타임 환경®(BREW®) 플랫폼의 버전과 같은 런타임 환경을 사용할 수 있다. 후속하는 설명에 있는 적어도 하나의 실시예에 있어서, 무선 디바이스들과 서버들 간에 통신들을 제공하도록 사용되는 시스템은 예를 들어 상기 BREW® 플랫폼의 현재 버전과 같은 런타임 환경을 실행하는 디바이스에서 구현될 수 있다. 그러나, 무선 디바이스들 및 서버들 간에 통신들을 제공하는데 사용되는 상기 시스템의 하나 이상의 실시예들은 예를 들어 무선 디바이스들에서 어플리케이션들의 실행을 제어하도록 동작하는 다른 타입들의 런타임 환경들과 사용하는데 적합하다.
도 1은 예컨대 무선 전화(102)와 같은 무선 디바이스에서 소프트웨어 어플리케이션 컴포넌트들의 로딩, 리로딩, 및 삭제를 수행할 수 있는 시스템(100)의 예시적이고 비-제한적인 실시예의 블록도를 예시한다. 상기 무선 전화(102)는 적어도 하나의 어플리케이션 다운로드 서버(106)과 무선 네트워크(104)를 통해 통신한다. 추가적으로, 상기 어플리케이션 다운로드 서버(106)는 상기 무선 네트워크(104)로 의 데이터 액세스를 가지는 무선 통신 포털 혹은 다른 노드를 통해 하나 이상의 무선 디바이스들로 하나 이상의 소프트웨어 어플리케이션들 및 컴포넌트들을 선택적으로 제공한다.
도 1에서 도시된 바와 같이, 상기 무선 디바이스는 무선 전화(102), 개인용 휴대 정보 단말기(PDA)(108), 페이저(110), 혹은 무선 통신 포털을 가지는 개별 컴퓨터 플랫폼(112)일 수 있다. 특정 실시예에 있어서, 상기 페이저(110)는 양방향 페이저일 수 있다. 추가적으로, 대안적인 실시예에 있어서, 상기 무선 디바이스는 네트워크 혹은 인터넷으로 유선 연결을 가질 수 있다. 상기 예시적이며 비제한적인 시스템은 무선 모뎀들, PCMCIA 카드들, 개인용 컴퓨터들, 액세스 터미널들, 디스플레이 혹은 키패드를 구비한 혹은 구비하지 않은 전화들, 혹은 이들의 임의의 결합 혹은 서브 결합을 포함하지만 이에 제한되지는 않는 무선 통신 포털을 포함하는 임의의 형태의 원격 모듈을 포함할 수 있다.
도 1에 도시된 바와 같이, 상기 어플리케이션 다운로드 서버(106)는 상기 무선 네트워크(104)와 통신하는 다른 컴퓨터 엘리먼트들과 함께 네트워크(116)에 결합된다. 상기 시스템(100)은 보안 서버(120) 및 독립형 서버(122)를 포함하며, 각 서버는 무선 네트워크(104)를 통해 상기 무선 디바이스들(102)로 개별 서비스들 및 프로세스들을 제공할 수 있다. 추가적으로, 도 1에 표시된 바와 같이, 상기 시스템(100)은 또한 상기 무선 디바이스들(102,108,110,112)로 다운로드될 수 있는 소프트웨어 어플리케이션들을 저장하는 상기 하나 이상의 저장된 어플리케이션 데이터베이스(118)를 포함한다. 상이한 실시예들은 상기 어플리케이션 다운로드 서 버(106), 상기 보안 서버(120) 및 상기 독립형 서버(122) 중 임의의 하나 이상에서 보안 통신들을 수행하기 위한 로직을 위치시키는 것으로 참작된다.
특정 실시예에서, 하나 이상의 사용자 인터페이스 컴포넌트들(124)은 컴퓨터, 예를 들어 상기 컴퓨터(112)에서 전개될 수 있고, 상기 무선 네트워크(104) 혹은 유선 연결(114)을 통해 상기 네트워크(116)에 업로드될 수 있다. 추가적으로, 상기 사용자 인터페이스 컴포넌트(124)는 보안 리스크 레벨이 할당될 수 있고 상기 사용자 인터페이스 컴포넌트(124)에 대한 상기 리스크 레벨을 표시하는 임베디드 코드(embeded code)를 포함하는 디지털 서명을 사용하여 서명될 수 있다. 특정 실시예에서, 상기 리스크 레벨은 상기 사용자 인터페이스 컴포넌트(124)가 다운로드되는 무선 디바이스에서 상기 사용자 인터페이스 컴포넌트(124)를 실행하는 것과 연관된 운영 체제 손상(damage)의 리스크를 나타낸다. 이후, 복수의 디지털 서명된 사용자 인터페이스 컴포넌트들(124)은 상기 저장된 어플리케이션 데이터베이스(118) 내에 저장될 수 있는 사용자 인터페이스 번들(126)을 생성하도록 함께 번들화될 수 있다. 상기 사용자 인터페이스 번들(126)은 또한 보안 리스크 레벨이 할당되고, 상기 사용자 인터페이스 번들(126)에 대한 리스크 레벨을 포함하는 디지털 서명을 사용하여 서명될 수 있다. 특히, 상기 사용자 인터페이스 번들(126)에 대한 리스크 레벨은 상기 사용자 인터페이스 번들(126)이 다운로드되는 무선 디바이스에서 상기 사용자 인터페이스 번들(126)을 번들해제하는 것과 연관된 시스템 손상의 리스크를 나타낸다.
예시적인 실시예에서, 상기 사용자 인터페이스 컴포넌트(124)는, 예를 들어, 그래픽 아이콘, 가상 버튼, 스킨, 배경, 폰트 패키지와 같은 그래픽 사용자 인터페이스(GUI) 컴포넌트이거나, 혹은 키패드 버튼, 키보드 버튼과 같은 물리적 사용자 인터페이스 컴포넌트에 링크된 그래픽 메뉴일 수 있다. 상기 사용자 인터페이스 컴포넌트(124)는 또한 그래픽 사용자 인터페이스의 컬렉션(collection), 예를 들어 전체 그래픽 사용자 인터페이스일 수 있다. 상기 사용자 인터페이스 컴포넌트(124)는 또한 손가락 혹은 스타일러스를 사용하여 상기 무선 디바이스의 디스플레이 스크린을 터치함으로써 선택될 수 있는 터치 스크린 컴포넌트와 같은 그래픽 사용자 인터페이스 컴포넌트일 수 있다. 또한, 상기 사용자 인터페이스 컴포넌트(124)는 전체 터치 스크린 사용자 인터페이스일 수 있다. 추가적으로, 또다른 예시적인 실시예에 있어서, 상기 사용자 인터페이스 컴포넌트(124)는 전화번호 다이얼링과 같은 특정 기능에 링크된 음성 명령과 같은 음성 사용자 인터페이스 컴포넌트일 수 있다. 더욱이, 상기 사용자 인터페이스 컴포넌트(124)는 복수의 음성 명령들 및 대응하는 동작들을 가지는 전체 음성 사용자 인터페이스일 수 있다. 특정 실시예에서, 상기 사용자 인터페이스 컴포넌트(124)는 무선 디바이스에서 기존의 사용자 인터페이스 컴포넌트(124)를 업그레이드하고, 이전에 로딩된 사용자 인터페이스 컴포넌트(124)를 대체할 수 있거나, 혹은 상기 사용자 인터페이스 컴포넌트(124)는 상기 무선 디바이스에 대한 사용자 인터페이스 컴포넌트(124)의 새로운 설치물일 수 있다.
특정 실시예에서, 상기 사용자 인터페이스 컴포넌트들(124)에 대한 리스크 레벨들은 사용자 인터페이스 컴포넌트(124)의 타입, 상기 사용자 인터페이스 컴포 넌트(124)가 다운로드될 무선 디바이스의 타입, 및 상기 무선 디바이스에서 상기 사용자 인터페이스 컴포넌트(124)를 실행함으로써 야기되는 상기 사용자 인터페이스에 대한 변화들의 범위에 기반하여 결정될 수 있다. 예를 들어, 간단한 폰트 패키지들에는 낮은(low) 리스크가 할당될 수 있는 반면, 배경 혹은 스킨과 같은 사용자 인터페이스 컴포넌트(124)에는 중간(medium) 리스크가 할당될 수 있다. 추가적으로, 상기 무선 디바이스의 외관(appearance) 및 상기 무선 디바이스의 기능을 변경시키는 완전히 새로운 사용자 인터페이스와 같은, 보다 파급적인(pervasive) 사용자 인터페이스 컴포넌트(124)에는 높은(high) 리스크가 할당될 수 있다.
추가적으로, 상기 사용자 인터페이스 컴포넌트들(124)에 대한 리스크 레벨들은, 개발자가 인증받은 혹은 트러스트된(trusted) 개발자, 즉, 의도된 바와 같이 동작하는 사용자 인터페이스 컴포넌트들(124)을 생성하는 증명된 트랙 레코드를 가지는 개발자인지의 여부에 기반하여 결정될 수 있다. 추가적으로, 트러스트된 개발자는 무선 디바이스들로 다운로드 될 수 있는 사용자 인터페이스 컴포넌트들을 개발하는 특권이 부여된 것으로 간주된다. 특정 실시예에 있어서, 개발자는 요금을 지불함으로써 인증을 획득할 수 있다. 또한, 특정 실시예에서, 리스크 레벨들은 특정 무선 디바이스 제조자, 산업 그룹 혹은 몇몇 다른 그룹에 의해 할당될 수 있다.
특정 실시예에서, 상기 리스크는 상기 사용자의 입력 혹은 합의 없이 개발자에게 자동으로 할당될 수 있다. 또한, 상기 리스크는 특정 개발자가 특정 프로젝트에 얼마나 오래 연관되느냐에 기반하여 할당될 수 있다. 예를 들어, 상기 개발 경로에 있어서 더 일찍 개발에 참여한 개발자들은 새로운 혹은 다가올(upcoming) 개발자들보다 더 적을 리스크가 할당될 수 있다. 추가적으로, 상기 리스크는 컴포넌트가 개발되는 경우 혹은 컴포넌트가 전달되는 경우에 기반하여 할당될 수 있다. 부가적으로, 특정 사용자 인터페이스 컴포너트 혹은 번들이 개발됨에 따라, 상기 리스크 레벨은 특정 사용자 인터페이스 컴포넌트 혹은 번들을 "처리하는" 다양한 개발자들에 따라 변할 수 있다. 후속하는 처리자들에 대한 리스크 레벨들은 자동으로 결정될 수 있다.
따라서, 특정 사용자 인터페이스 컴포넌트(124)는 다음의 예시적이고 비제한적인 리스크 레벨들 중 하나를 가질 수 있다 : 저(low) 및 트러스트됨, 저 및 미승인됨, 중(medium) 및 트러스트됨, 중 및 미승인됨, 고(high) 및 승인됨, 고 및 미승인됨. 특정 실시예에서, 사용자 인터페이스 번들(126)에 대한 리스크 레벨은 번들에서 개별 사용자 인터페이스 컴포넌트들의 상기 리스크 레벨들의 조합에 기반하여 결정될 수 있다. 상기 디지털 서명은 상기 리스크 레벨들이 제어되고 강제될 수 있다는 점을 보장한다. 추가적으로, 상기 디지털 서명들은 사용자 인터페이스 컴포넌트들이 리스크 레벨들이 할당되고 디지털 서명되는 경우 상기 사용자 인터페이스 컴포넌트들의 변경(tampering)을 방지한다.
도 2에서, 무선 네트워크(104)의 컴포넌트들 및 시스템(100)의 엘리먼트들의 상호관계를 포함하는, 상기 시스템(100)을 더 완전하게 예시하는 블록 다이어그램이 도시된다. 상기 시스템(100)은 단지 예시적이며, 임의의 시스템을 포함할 수 있는데, 이에 의해 상기 원격 디바이스들(102,108,110,112)과 같은 원격 모듈들은 서로간에 혹은 무선 네트워크 캐리어들 및/또는 서버들을 포함하지만 이에 제한되지 않는 무선 네트워크(104)를 통해 연결된 컴포넌트들과의 사이에 무선으로 통신한다. 어플리케이션 다운로드 서버(106) 및 서버(120)와 같은 임의의 다른 서버들과 함께, 상기 저장된 어플리케이션 데이터베이스(118)는 무선 통신 서비스들과 호환가능하며, 또한 인터넷, 보안 LAN, WAN, 혹은 다른 네트워크와 같은 데이터 링크를 통해 캐리어(200)와 통신할 수 있다. 예시적인 실시예에 있어서, 상기 서버(120)는 상기 캐리어 네트워크(200)을 통해 보안 통신을 제공하도록 구성된 로직을 추가적으로 포함하는 서버 보안 모듈(128)을 포함한다. 특정한 실시예에서, 상기 서버 보안 모듈(128)은 보안 통신을 제공하기 위해 무선 디바이스(102,108,110,112)와 같은 무선 디바이스에 위치한 클라이언트 보안 모듈과 연관하여 동작할 수 있다. 추가적으로, 상기 서버 보안 모듈(128)은 보안 서버(120)로 전송된 사용자 인터페이스 컴포넌트들(124)에 리스크 레벨들을 할당할 수 있다. 또한 상기 서버 보안 모듈(128)은 상기 사용자 인터페이스 번들들(126)로 리스크 레벨들을 할당할 수 있다.
상기 캐리어 네트워크(200)는 이동 전화 교환국("MSC")(202)으로 전송된 (데이터 패킷들로서 전송된) 메시지들을 제어한다. 상기 캐리어 네트워크(200)는 예를 들어, 인터넷 및/또는 POTS("plan ordinary telephone system")과 같은 네트워크에 의해 MSC(202)와 통신한다. 통상적으로, 상기 캐리어 네트워크(200) 및 상기 MSC(202)간의 네트워크 통신은 데이터를 전송하고, POTS는 음성 정보를 전송한다. 상기 MSC(202)는 복수의 기본 트랜시버 스테이션들("BTS")(204)에 연결된다. 상기 MSC(202)는 데이터 전송용 데이터 네트워크 및/또는 인터넷 및 음성 정보용 POTS 모두에 의해 상기 BTS(204)로 연결될 수 있다. 상기 BTS(204)는 궁극적으로 단문 메시지 서비스("SMS"), 혹은 당해 분야에 알려진 다른 무선 방법들에 의해, 예를 들어 무선 전화(102)와 같은 무선 디바이스들로 무선으로 메시지들을 브로드캐스트한다.
상기 무선 디바이스(102)는 어플리케이션 다운로드 서버(106)으로부터 전송된 소프트웨어 어플리케이션들을 수신하고 실행할 수 있는 컴퓨터 플랫폼을 구비한다. 예시적인 실시예에 있어서, 상기 컴퓨터 플랫폼(206)은 주문형 반도체(ASIC(208)), 프로세서, 마이크로프로세서, 논리 회로, 혹은 다른 데이터 처리 디바이스로서 구현될 수 있다. 상기 ASIC(208)는 상기 디바이스의 제조시에 설치될 수 있다. 추가적으로, 상기 ASIC(208) 혹은 다른 프로세서는 상기 무선 디바이스의 메모리(212)에서 상주 프로그램과 인터페이스 하는 어플리케이션 프로그래밍 인터페이스(API)(210)를 수행할 수 있다. 특정 실시예에 있어서, 상기 API(210) 계층은 무선용 바이너리 런타임 환경®(BREW®) 플랫폼에 의해 제공된 API들의 세트를 포함한다. 상기 메모리(212)는 판독 전용 혹은 랜덤 액세스 메모리(ROM 혹은 RAM), EEPROM, 플래시 메모리 혹은 컴퓨터 플랫폼들에 적합한 다른 메모리로 구성될 수 있다.
상기 API(210)는 또한 상기 캐리어 네트워크(200)를 통해 보안 통신을 제공하도록 구성된 로직을 포함하는 클라이언트 보안 모듈(214)을 포함한다. 특정 실시예에 있어서, 상기 클라이언트 보안 모듈(214)은 보안 통신들을 제공하기 위해 상기 서버 보안 모듈(128)과 연관하여 동작할 수 있다. 부가적으로, 상기 클라이언트 보안 모듈(214)은 상기 무선 디바이스로 다운로드되는 사용자 인터페이스 번들들(126) 및 사용자 인터페이스 컴포넌트들의 디지털 서명들을 검출하여 디코딩할 수 있으며, 또한 사용자 인터페이스 번들들(126) 및 상기 사용자 인터페이스 컴포넌트들(124)의 할당된 리스크 레벨들을 결정할 수 있다.
또한, 상기 클라이언트 보안 모듈(214)은, 상기 리스크 레벨이 미리 설정된 임계치 미만인지의 여부를 결정하기 위해, 예를 들어 특정 사용자 인터페이스 컴포넌트들(124)에 대한 임계 레벨 혹은 사용자 인터페이스 번들(126)에 대한 글로벌(global) 임계 레벨과 같은 미리 결정된 임계 레벨과 각 사용자 인터페이스 번들(126) 및 각 사용자 인터페이스 컴포넌트(124)에 대한 리스크 레벨을 비교할 수 있다. 만약 상기 사용자 인터페이스 번들(126)에 대한 리스크 레벨이 상기 번들 임계 레벨 미만인 경우, 상기 사용자 인터페이스 번들(126)은 복수의 사용자 인터페이스 컴포넌트들(124)을 생성하도록 번들해제된다. 더욱이, 만약 사용자 인터페이스 컴포넌트(124)에 대한 상기 리스크 레벨이 상기 컴포넌트 임계 레벨 미만이라면, 각각의 사용자 인터페이스 컴포넌트(124)는 상기 무선 디바이스에서 실행될 수 있다. 반면, 사용자 인터페이스 컴포넌트(124)에 대한 상기 리스크 레벨이 상기 컴포넌트 임계 레벨을 초과한다면, 상기 사용자 인터페이스 컴포넌트(124)는 상기 무선 디바이스로부터 삭제되거나, 또는 제거될 수 있다.
도 2에서 예시된 바와 같이, 상기 컴퓨터 플랫폼(206)은 추가적으로, 메모리(212)에서 액티브하게 하용되지 않는 어플리케이션들을 유지할 수 있는 로컬 데 이터베이스를 포함할 수 있다. 예시적인 실시예에서, 상기 로컬 데이터베이스(216)는 플래시 메모리 셀 내에 저장되지만, 당해 분야에 알려진 바와 같은 임의의 제 2 저장 디바이스, 예를 들어, 자기 매체, EEPROM, 광학 매체, 테이프, 또는 플로피 혹은 하드 디스크 내에 저장될 수 있다. 무선 디바이스, 예를 들어, 상기 무선 전화(102)는 상기 어플리케이션 다운로드 서버(106)로부터, 게임, 뉴스, 주식 모니터링 등과 같은 하나 이상의 소프트웨어 어플리케이션들을 다운로드할 수 있다. 추가적으로, 상기 무선 디바이스는, 사용되지 않는 경우, 로컬 데이터베이스(216)로부터 저장된 상주 어플리케이션들을 로딩할 수 있고, 또한 사용자에 의해 요구되는 경우, 상기 API(210)들에 의한 실행을 위해 상기 로컬 데이터베이스(216)로부터 메모리(212)로 저장된 상주 어플리케이션들을 로딩할 수 있다. 추가적으로, 상기 무선 네트워크(104)를 통한 통신은, 상기 클라이언트 모듈(214) 및 상기 서버 보안 모듈(128)의 동작 및 상호작용으로 인해, 적어도 부분적으로, 보안 방식으로 수행될 수 있다.
도 3을 참조하면, 사용자 인터페이스 컴포넌트들을 무선 디바이스로 제공하는 방법이 개시되며, 블록(300)에서 시작하는데, 여기서 보안 서버는 사용자 인터페이스 컴포넌트를, 예를 들어 소프트웨어 개발자로부터 수신한다. 블록 302에서, 보안 서버 내에 있는 서버 보안 모듈은 상기 사용자 인터페이스 컴포넌트에 대한 컴포넌트 리스크 레벨을 결정한다. 이후, 블록 304에서, 상기 서버 보안 모듈은 상기 결정된 컴포넌트 리스크 레벨을 상기 사용자 인터페이스 컴포넌트로 할당한다. 블록 306으로 이동하면, 상기 서버 보안 모듈은 상기 사용자 인터페이스 컴포 넌트를 디지털 서명한다. 특정 실시예에 있어서, 상기 디지털 서명은 상기 리스크 레벨 및 상기 사용자 인터페이스 컴포넌트의 변경(tampering)을 방지할 수 있다.
블록 308로 계속하면, 상기 서버 보안 모듈은 사용자 인터페이스 번들을 생성하기 위해 복수의 사용자 인터페이스 컴포넌트들을 함께 결합시킨다. 블록 310에서, 상기 서버 보안 모듈은 상기 사용자 인터페이스 번들에 대한 번들 리스크 레벨을 결정한다. 이후, 블록 312에서, 상기 서버 보안 모듈은 상기 결정된 번들 리스크 레벨을 상기 사용자 인터페이스 번들로 할당한다. 블록 314에서, 상기 서버 보안 모듈은, 예시적인 실시예에 있어서, 무선 디바이스로 배치될 상기 사용자 인터페이스 번들과 연관된 데이터 패킷과 함께 생성되고 저장된 상기 할당된 리스크 레벨을 표시하는 임베디드 리스크 코드를 사용하여, 상기 사용자 인터페이스 번들을 디지털 서명한다.
블록 316으로 진행하면, 상기 보안 서버는 상기 저장된 어플리케이션 데이터베이스에서 디지털 서명된 사용자 인터페이스 번들을 저장한다. 다음으로, 블록 318에서, 상기 어플리케이션 다운로드 서버는 상기 무선 디바이스를 통해 사용자에게 사용자 인터페이스 정보를 제공한다. 특정 실시예에 있어서, 상기 어플리케이션 다운로드 서버는 디지털 서명된 사용자 인터페이스 번들 및 각각의 디지털 서명된 사용자 인터페이스 번들에 연관된 정보의 메뉴를 제공한다. 특정 실시예에 있어서, 상기 정보는 사용자 인터페이스 번들에 대한 번들 리스크 레벨, 상기 사용자 인터페이스 번들에 포함된 각 사용자 인터페이스 컴포넌트들에 대한 상기 컴포넌트 리스크 레벨, 및 상기 사용자 인터페이스 번들에 포함된 각 사용자 인터페이스 컴 포넌트의 타입을 포함한다.
도 3을 참조하면, 블록 320에서, 어플리케이션 다운로드 서버는 무선 디바이스로부터 사용자 인터페이스 번들에 대한 요청을 수신한다. 특정 실시예에서, 상기 무선 디바이스로부터의 요청은 무선 인터페이스를 통해 상기 어플리케이션 다운로드 서버에서 수신된다. 블록 322에서, 상기 어플리케이션 다운로드 서버는 상기 무선 디바이스에 대한 상기 사용자 인터페이스 번들의 비용을 표시한다. 블록 324에서, 상기 어플리케이션 다운로드 서버는 상기 무선 디바이스로부터의 구매 요청을 수신한다. 결정 단계(326)로 옮겨가면, 상기 어플리케이션 다운로드 서버(106)는 지불 정보가 상기 무선 디바이스로부터 수신되었는지의 여부를 결정한다. 만약 그렇지 않다면, 상기 방법은 상태(328)에서 종료된다. 반면, 만약 지불 정보가 상기 무선 디바이스로부터 수신된다면, 상기 방법은 결정 단계(330)로 진행되고, 상기 어플리케이션 다운로드 서버는 상기 무선 디바이스로부터의 지불이 승인되었는지의 여부를 결정한다. 만약 상기 지불이 승인되지 않는다면, 상기 방법은 블록 332로 계속되며, 상기 어플리케이션 다운로드 서버는 상기 정보가 승인되지 않았음을 상기 무선 디바이스에 표시한다. 상기 방법은 단계(326)로 되돌아가고, 본 명세서에서 설명된 바와 같이 계속된다.
결정 단계 330에서, 만약 상기 어플리케이션 다운로드 서버가 상기 사용자 지불을 승인하는 경우, 상기 로직은 블록 334로 진행하고, 상기 어플리케이션 다운로드 서버는 상기 무선 디바이스로부터의 지불이 승인되었음을 상기 무선 디바이스에 표시한다. 다음으로, 블록 336에서, 상기 어플리케이션 다운로드 서버는 상기 사용자 인터페이스 번들을 상기 무선 디바이스로 다운로드 한다. 특정 실시예에 있어서, 상기 사용자 인터페이스 번들은 무선 인터페이스를 통해 상기 무선 디바이스로 다운로드된다. 어플리케이션 다운로드 서버로부터 할당된 리스크 레벨을 구비한 사용자 인터페이스 번들을 다운로드하는 방법은 상태 328에서 종료된다.
이제 도 4를 참조하면, 무선 디바이스에서 리스크 레벨들을 할당한 사용자 인터페이스 컴포넌트들을 수신하는 방법이 도시되며, 상기 방법은 블록 400에서 시작한다. 블록 400에서, 무선 디바이스는 상기 어플리케이션 다운로드 서버를 액세스한다. 특정 실시예에서, 상기 무선 디바이스는 무선 인터페이스를 통해 상기 어플리케이션 다운로드 서버와 통신할 수 있다. 다음으로, 블록 402에서, 상기 무선 디바이스의 사용자는 상기 어플피케이션 다운로드 서버에서 사용가능한 사용자 인터페이스 번들들의 메뉴를 볼 수 있다. 블록 404에서, 상기 무선 디바이스를 사용하여, 상기 사용자는 상기 어플리케이션 다운로드 서버에 의해 다운로드될 사용자 인터페이스 번들을 선택할 수 있다. 블록 406에서, 상기 무선 디바이스는 상기 사용자 인터페이스 번들과 연관된 가격 정보를 수신한다.
블록 408로 이동하면, 상기 무선 디바이스는 상기 어플리케이션 다운로드 서버로 지불 정보를 전송할 수 있다. 이후, 결정 단계 410에서, 상기 어플리케이션 다운로드 서버는 상기 지불이 수용되었는지의 여부를 상기 무선 디바이스로 표시한다. 만약 상기 지불이 수용되지 않았다면, 상기 방법은 결정 단계 412로 계속되며, 상기 사용자가 지불을 재시도하려고 하는지의 여부를 상기 무선 디바이스를 통해 상기 사용자에게 질의한다. 만약 그러하다면, 상기 방법은 블록 408로 되돌아 가고 새로운 지불 정보가 상기 어플리케이션 다운로드 서버로 전송된다. 이후, 상기 방법은 본 명세서에서 설명된 바와 같이 계속된다.
결정 단계 412에서 만약 사용자가 지불을 재시도하기 원하지 않는다면, 상기 방법은 상태 414에서 종료된다. 결정단계 410으로 되돌아가서, 만약 상기 지불 정보가 승인된다면, 상기 무선 디바이스는 상기 사용자 인터페이스 번들을 블록 416에서 수신한다. 블록 418로 이동하면, 상기 사용자 인터페이스 번들과 연관된 디지털 서명이 검출되고 디코딩된다. 블록 420에서, 번들 리스크 레벨은, 예컨대 상기 보안 서버에 의해 할당된 임베디드 리스크 레벨 코드를 판독함으로써 결정된다. 결정 단계 422로 계속하면, 상기 무선 디바이스는, 상기 번들 리스크 레벨이 수용가능한지, 다시말해 상기 번들 임계치보다 적은지의 여부를 결정하기 위해 상기 번들 리스크 레벨을 번들 리스크 레벨 임계치와 비교한다. 상기 번들 리스크 레벨이 상기 임계치보다 적지 않다면, 상기 리스크 레벨이 너무 높아서 상기 번들은 거부되고 상기 방법은 상태(414)에서 종료된다.
반대로, 만약 번들 리스크 레벨이 상기 번들 임계치 미만이라면, 상기 방법은 블록 424로 이동하고, 복수의 사용자 인터페이스 컴포넌트들을 생성하기 위해 상기 사용자 인터페이스 번들이 수용되고 번들해제된다. 블록 426에서, 상기 무선 디바이스는 상기 무선 디바이스로 적용될 하나 이상의 사용자 인터페이스 컴포넌트들의 선택을 검출한다. 또다른 실시예에 있어서, 상기 무선 디바이스는 어느 사용자 인터페이스 컴포넌트들이 무선 디바이스로 적용될지를 자동으로 결정할 수 있다. 다음으로, 블록 428에서, 상기 사용자 인터페이스 컴포넌트들과 연관된 디지 털 서명이 검출되고 디코딩된다. 블록 430에서, 컴포넌트 리스크 레벨이 상기 사용자 인터페이스 컴포넌트들에 대해 결정된다. 결정 단계 432로 진행하면, 상기 무선 디바이스는, 상기 컴포넌트 리스크 레벨이 수용가능한지, 다시말해 상기 컴포넌트 임계치 미만인지를 결정하기 위해, 상기 컴포넌트 리스크 레벨을 컴포넌트 리스크 레벨 임계치와 비교한다. 특정 실시예에서, 상기 리스크 레벨 임계치는 상기 무선 디바이스 제조자에 의해 설정될 수 있다. 또한, 상기 리스크 레벨 임계치들은 상기 무선 디바이스의 사용자에 의해 설정될 수 있다.
만약 상기 컴포넌트 리스크 레벨이 상기 컴포넌트 리스크 레벨 임계치 미만이라면, 상기 컴포넌트는 수용되고, 상기 방법은 상기 사용자 인터페이스 컴포넌트가 상기 무선 디바이스로 적용되는 블록 434로 이동한다. 특정 실시예에서, 상기 사용자 인터페이스 컴포넌트는 기존의 사용자 인터페이스에 대한 업그레이드일 수 있다. 또다른 실시예에서, 상기 사용자 인터페이스 컴포넌트는 상기 무선 디바이스로 적용될 새로운 컴포넌트이다. 이후 상기 로직은 결정 단계 436로 이동한다.
결정 단계 432로 되돌아가서, 만약 상기 컴포넌트 리스크 레벨이 상기 컴포넌트 임계치보다 적지 않다면, 상기 방법은 결정 단계 436로 이동한다. 단계 436에서, 상기 무선 디바이스는 상기 무선 디바이스로의 적용을 위해 선택된 또다른 사용자 인터페이스 컴포넌트가 존재하는지의 여부를 결정한다. 만약 그러하다면, 상기 방법은 블록 428로 되돌아가고, 위에서 설명된 바와 같이 계속된다. 만약 어떠한 다른 사용자 인터페이스 컴포넌트들도 사용가능하지 않다면, 상기 방법은 상태 414에서 종료된다. 특정 실시예에 있어서, 사용자 인터페이스를 번들해제하려 는 결정 및 사용자 인터페이스 컴포넌트를 상기 무선 디바이스에 적용하려는 결정은 상기 사용자의 입력 또는 지식 없이 상기 무선 디바이스 내에 있는 로직에 의해 이루어질 수 있다. 그렇지 않다면, 상기 사용자는 각 결정에 대한 임계치에 대한 설정을 선택할 수 있다. 또한, 상기 번들 해제 결정 및 상기 적용 결정은 상기 다운로드의 요인에 근거할 수 있는데, 예를 들면, 상기 요인은 사용자에 의해 요청되거나 자동인 다운로드일 수 있다.
도 5는 일반적으로 500으로 지정된 무선 디바이스를 도시한다. 도 5에서 도시된 바와 같이, 상기 무선 디바이스는 디스플레이(502) 및 키패드(504)를 포함한다. 도 5는 다운로드/실행 임계 메뉴(506)가 디스플레이(502)를 통해 사용자에게 제공될 수 있음을 표시한다. 사용자는 키패드(504)를 사용하여 상기 다운로드/실행 임계 메뉴(506)를 통해 스크롤하고, 이후 키패드(504) 혹은 소프트 버튼(508)을 사용하여 특정 임계치를 선택할 수 있다. 특정 실시예에서, 상기 임계치는 상기 무선 디바이스(500)로 사용자 인터페이스 번들들을 다운로드 하고 상기 무선 디바이스(500)에서 사용자 인터페이스 컴포넌트들을 실행하도록 적용될 수 있다. 대안적으로, 사용자는 사용자 인터페이스 번들들을 상기 무선 디바이스(500)로 다운로드 하기 위한 제 1 임계치 및 상기 무선 디바이스(500)에서 사용자 인터페이스 컴포넌트들을 실행하기 위한 제 2 임계치를 선택할 수 있다.
도 6은 사용자 인터페이스 번들들의 메뉴(600)를 상기 무선 디바이스(500)에서 디스플레이될 수 있다. 사용자는 키패드(504)를 사용하여 사용자 인터페이스 번들들의 메뉴(600)를 통해 스크롤할 수 있고, 이후 상기 키패드(504) 혹은 제 1 소프트 버튼(602)을 사용하여, 상기 사용자는 상기 무선 디바이스(500)에서 번들해제할 특정 사용자 인터페이스 번들을 선택할 수 있다. 또한 상기 사용자는 상기 메뉴(600)로부터 특정 사용자 인터페이스 번들을 선택하고 상기 특정 사용자 인터페이스 번들로 하여금 상기 무선 디바이스로 다운로드되도록 하기 위해 제 2 소프트 버튼(604)을 토글한다. 또한, 도 7에서 표시된 바와 같이, 사용자 인터페이스 컴포넌트들의 메뉴(700)는 상기 무선 디바이스(500)에서 디스플레이될 수 있다. 사용자는 상기 키패드(504)를 사용하여 사용자 인터페이스 컴포넌트들(700)의 메뉴를 통해 스크롤할 수 있고, 이후 상기 키패드(504) 혹은 제 1 소프트 버튼(702)을 사용하여, 상기 무선 디바이스(500)에서 실행할 특정 사용자 인터페이스 컴포넌트를 선택할 수 있다. 상기 사용자는 또한 제 2 소프트 버튼(704)을 토글링함으로써, 상기 메뉴(700)를 통해 나타난 특정 사용자 인터페이스 컴포넌트를 다운로드할 수 있다.
도 8은 일반적으로 800으로 지정된 컴퓨터를 도시한다. 도 8에서 도시된 바와 같이, 상기 컴퓨터는 디스플레이(802), 키보드(804), 및 마우스(806)를 포함한다. 도 8은 사용자 인터페이스 컴포넌트 메뉴(808)가 상기 디스플레이(802)를 통해 사용자에게 제공될 수 있음을 나타낸다. 사용자는 상기 마우스(806)를 사용하여 제 1 소프트 버튼(810)에서 클릭함으로써 상기 메뉴(808)로부터 하나 이상의 사용자 인터페이스 컴포넌트들을 선택할 수 있다. 추가적으로, 상기 사용자는 리스크 레벨 메뉴를 유지하기 위해 제 2 소프트 버튼(812)를 클릭함으로써 선택된 사용자 인터페이스 컴포넌트로 리스크 레벨을 할당할 수 있다. 상기 사용자는 또한 제 3 소프트 버튼(814)에서 토글링함으로써, 어플리케이션 다운로드 서버로 선택된 사용자 인터페이스 컴포넌트를 업로드할 수 있다. 부가적으로, 상기 사용자는 제 4 소프트 버튼(816)에서 클릭함으로써 복수의 선택된 사용자 인터페이스 컴포넌트들을 번들화 할 수 있다.
도 9는 컴퓨터에서 표시될 수 있는 리스크 레벨 메뉴(900)를 도시한다. 사용자는 상기 마우스를 사용하여 선택 버튼(902)을 클릭함으로써 리스크 레벨을 선택할 수 있다. 도 10을 참조하면, 사용자 인터페이스 번들 메뉴(1000)는 상기 디스플레이(802)를 통해 사용자에게 표시될 수 있다. 사용자는 상기 메뉴(1000)로부터 상기 특정 사용자 인터페이스 번들을 선택함에 의해, 그리고 이후 마우스(804)를 사용하여 제 1 소프트 버튼(1002)을 클릭함으로써, 특정 사용자 인터페이스로 리스크 레벨을 할당할 수 있다. 상기 제 1 소프트 버튼(1002)이 토글링될 때, 상기 리스크 레벨 메뉴(900)는 다시 상기 컴퓨터(800)에서 상기 사용자에게 제공될 수 있다. 상기 사용자는 또한, 상기 컴퓨터(800)에서 상기 사용자에게 표시되는 제 2 소프트 버튼(1004)을 클릭하거나 그렇지 않은 경우 토글함으로써 어플리케이션 다운로드 서버로 선택된 사용자 인터페이스 번들을 업로드할 수 있다.
상기 설명된 구조의 구성과 함께, 사용자 인터페이스 컴포넌트들을 무선 디바이스들로 다운로드하는 시스템 및 방법은 실행 이전에 하나 이상의 사용자 인터페이스 컴포넌트들을 실행하는 것과 연관된 리스크 레벨을 결정하기 위한 무선 디바이스를 위한 방법을 제공한다. 따라서, 더 많은 보안 리스크를 제공하도록 나타나는 사용자 인터페이스 컴포넌트들은 상기 무선 디바이스에 의해 거부될 수 있다.
본 발명이 속한 기술 분야에서 통상의 지식을 가진 자는 추가적으로, 다양한 예시적인 논리 블록들, 구성들, 회로들 및 본 명세서에 개시된 실시예와 연관하여 설명된 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 혹은 이들 모두의 조합으로서 구현될 수 있다는 점을 이해할 것이다. 이러한 하드웨어와 소프트웨어의 상호교환가능성을 명확하게 예시하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 구성들, 모듈들, 회로들, 및 단계들이 이들의 기능성의 견지에서 일반적으로 위에서 설명되었다. 이러한 기능성들이 하드웨어로 구현될지 혹은 소프트웨어로 구현될지의 여부는 전체 시스템에 부과된 특정 어플리케이션 및 설계 제약들에 의존한다. 본 발명이 속한 기술 분야에서 통상의 지식을 가진 자들은 각 특정 어플리케이션에 대한 각기 다른 방법들로 상기 설명된 기능성을 구현할 수 있지만, 이러한 구현 결정들은 본 발명의 범위로부터 벗어나게 하는 것으로서 해석되지 않아야 한다.
본 명세서에서 개시된 상기 실시예들과 연관하여 설명된 방법 혹은 알고리즘의 단계들은 하드웨어로 , 혹은 프로세서에 의해 실행되는 소프트웨어 모듈로, 혹은 이들 둘의 조합으로 직접 구현될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, PROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드 디스크, 이동식 디스크, CD-ROM, 혹은 당해 분야에 알려진 임의의 다른 형태의 저장 매체에 상주할 수 있다. 예시적인 저장 매체는 프로세서가 상기 저장 매체로부터 정보를 판독하고 이 저장 매체로 정보를 기록할 수 있도록 상기 프로세서에 연결된다. 대안적으로, 상기 저장 매체는 상기 프로세서에 일체화될 수 있 다. 상기 프로세서 및 상기 저장 매체는 ASIC에 상주할 수 있다. 상기 ASIC은 무선 디바이스 혹은 사용자 터미널에 상주할 수 있다. 대안적으로, 상기 프로세서 및 상기 저장 매체는 무선 디바이스 혹은 사용자 터미널에서 이산 컴포넌트들로서 상주할 수 있다.
상기 개시된 실시예들의 이전 설명은 본 발명이 속한 기술분야에서 통상의 지식을 가진 자가 본 발명을 제조하거나 사용하도록 제공될 수 있다. 이들 실시예들에 대한 다양한 수정이 본 발명이 속한 기술분야에서 통상의 지식을 가진 자들에게는 즉시 명백할 것이며, 본 명세서에서 한정된 일반 원리들은 본 발명의 범위 혹은 사상에서 벗어남이 없이 다른 실시예들에 적용될 수 있다. 따라서, 본 발명은 본 명세서에서 보여진 상기 실시예들에 제한되지 않는 것으로 의도되지만, 후속하는 청구항들에 의해 한정되는 바와 같은 원리들 및 신규한 특징들과 일치하는 가장 넓은 범위에 따른다.

Claims (38)

  1. 사용자 인터페이스 컴포넌트를 프로세싱하는 방법으로서,
    무선 디바이스로 전송될 하나 이상의 사용자 인터페이스 컴포넌트들을 수신하는 단계;
    상기 하나 이상의 사용자 인터페이스 컴포넌트들 각각에 대한 컴포넌트 리스크 레벨을 결정하는 단계; 및
    상기 하나 이상의 사용자 인터페이스 컴포넌트들 각각으로 결정된 컴포넌트 리스크 레벨을 할당하는 단계를 포함하는
    방법.
  2. 제1항에 있어서,
    상기 할당된 리스크 레벨을 표시하는 내장된 리스크 코드를 사용하여 상기 하나 이상의 사용자 인터페이스 컴포넌트들 각각을 디지털 서명하는 단계를 추가적으로 포함하는
    방법.
  3. 제1항에 있어서,
    상기 컴포넌트 리스크 레벨은 복수의 컴포넌트 리스크 레벨들로부터 선택되는
    방법.
  4. 제1항에 있어서,
    상기 컴포넌트 리스크 레벨은 상기 사용자 인터페이스 컴포넌트들의 상기 타입에 기반하여 적어도 부분적으로 결정되는
    방법.
  5. 제1항에 있어서,
    상기 컴포넌트 리스크 레벨은 상기 사용자 인터페이스 컴포넌트의 개발자에 적어도 부분적으로 기반하여 결정되는
    방법.
  6. 제5항에 있어서,
    더 낮은 리스크 레벨은 승인된 개발자에 의해 개발된 각 사용자 인터페이스 컴포넌트로 할당되는
    방법.
  7. 제5항에 있어서,
    더 높은 리스크 레벨은 미승인된 개발자에 의해 개발된 각 사용자 인터페이스 컴포넌트로 할당되는
    방법.
  8. 제1항에 있어서,
    무선 디바이스로 상기 하나 이상의 사용자 인터페이스 컴포넌트들을 다운로드하는 단계를 추가적으로 포함하는
    방법.
  9. 제1항에 있어서,
    사용자 인터페이스 번들을 생성하기 위해 복수의 사용자 인터페이스 컴포넌트들을 번들링하는 단계를 추가적으로 포함하는
    방법.
  10. 제9항에 있어서,
    상기 사용자 인터페이스 번들에 대한 번들 리스크 레벨을 결정하는 단계를 추가적으로 포함하는
    방법.
  11. 제10항에 있어서,
    상기 번들 리스크 레벨은 상기 사용자 인터페이스 번들 내에 있는 사용자 인터페이스 컴포넌트들의 각각의 컴포넌트 리스크 레벨에 적어도 부분적으로 기반하 여 결정되는
    방법.
  12. 제11항에 있어서,
    상기 사용자 인터페이스 번들을 디지털 서명하는 단계를 추가적으로 포함하는
    방법.
  13. 제12항에 있어서,
    상기 무선 디바이스로 상기 사용자 인터페이스 번들을 다운로드하는 단계를 추가적으로 포함하는
    방법.
  14. 제13항에 있어서,
    상기 무선 디바이스로 상기 사용자 인터페이스 번들을 다운로드하기 위한 요금을 과금하는 단계를 추가적으로 포함하는
    방법.
  15. 제14항에 있어서,
    상기 사용자 인터페이스 번들은 무선 인터페이스를 통해 상기 무선 디바이스 로 다운로드되는
    방법.
  16. 무선 디바이스에서 사용자 인터페이스 컴포넌트들을 획득하는 방법으로서,
    다운로드 서버를 액세스하는 단계; 및
    상기 다운로드 서버로부터 사용자 인터페이스 번들을 수신하는 단계 - 상기 사용자 인터페이스 번들은 상기 무선 디바이스로 상기 사용자 인터페이스 번들을 로딩하는 것과 연관된 번들 리스크 레벨을 포함함 - 를 포함하는
    방법.
  17. 제16항에 있어서,
    상기 사용자 인터페이스 번들을 수신하는 단계 이전에 사용가능한 사용자 인터페이스 번들들의 메뉴로부터 상기 사용자 인터페이스 번들을 선택하는 단계를 추가적으로 포함하는
    방법.
  18. 제17항에 있어서,
    상기 다운로드 서버로부터 수신된 상기 사용자 인터페이스 번들의 번들 디지털 서명을 검출하고 디코딩하는 단계를 추가적으로 포함하는
    방법.
  19. 제18항에 있어서,
    상기 사용자 인터페이스 번들의 번들 디지털 서명을 디코딩한 이후 상기 번들 리스크 레벨을 결정하는 단계를 추가적으로 포함하는
    방법.
  20. 제19항에 있어서,
    번들 임계치와 상기 번들 리스크 레벨을 비교하는 단계를 추가적으로 포함하는
    방법.
  21. 제20항에 있어서,
    상기 번들 임계치와 상기 번들 리스크 레벨을 비교하는 단계 이후에 복수의 사용자 인터페이스 컴포넌트들을 생성하기 위해 상기 사용자 인터페이스 번들을 번들해제하는 단계를 추가적으로 포함하는
    방법.
  22. 제21항에 있어서,
    상기 복수의 사용자 인터페이스 컴포넌트들 각각은 그래픽 사용자 인터페이스 컴포넌트, 음성 사용자 인터페이스 컴포넌트, 및 터치 스크린 사용자 인터페이 스 컴포넌트를 포함하는 상기 그룹으로부터 선택되는
    방법.
  23. 제21항에 있어서
    상기 복수의 사용자 인터페이스 컴포넌트들 각각은 컴포넌트 디지털 서명 및 상기 사용자 인터페이스 컴포넌트를 상기 무선 디바이스로 로딩(loading)하는 것과 연관된 컴포넌트 리스크 레벨을 가지는
    방법.
  24. 제23항에 있어서,
    상기 사용자 인터페이스 컴포넌트 중 적어도 하나의 상기 컴포넌트 디지털 서명을 검출하는 단계를 추가적으로 포함하는
    방법.
  25. 제24항에 있어서,
    컴포넌트 리스크 레벨 임계치에 상기 컴포넌트 리스크 레벨을 비교하는 단계를 추가적으로 포함하는
    방법.
  26. 제25항에 있어서,
    상기 컴포넌트 임계치에 상기 컴포넌트 리스크 레벨을 비교한 결과에 적어도 부분적으로 기반하여 상기 무선 디바이스로 상기 복수의 사용자 인터페이스 컴포넌트들 중 하나 이상을 선택적으로 적용하는 단계를 추가적으로 포함하는
    방법.
  27. 무선 디바이스로서,
    프로세서;
    상기 프로세서에 의해 액세스가능한 메모리;
    상기 프로세스에 의해 실행 가능하고 상기 메모리 내에 저장된 사용자 인터페이스; 및
    상기 메모리 내에 포함된 사용자 인터페이스 번들을 포함하고, 상기 사용자 인터페이스 번들은 번들 리스크 레벨을 가지는
    무선 디바이스.
  28. 제27항에 있어서,
    상기 프로세서에 결합된 디스플레이를 추가적으로 포함하고, 여기서 사용자 인터페이스 컴포넌트 번들들의 메뉴는 선택된 사용자 인터페이스 번들이 상기 무선 디바이스로 다운로드되고 상기 메모리 내에 저장되기 전에 디스플레이를 통해 사용자에게 표시되는
    무선 디바이스.
  29. 제28항에 있어서,
    상기 사용자 인터페이스 번들은 복수의 사용자 인터페이스 컴포넌트들을 포함하는
    무선 디바이스.
  30. 제29항에 있어서,
    각 사용자 인터페이스 컴포넌트는 상기 프로세서에 의한 상기 사용자 인터페이스의 실행과 연관된 컴포넌트 리스크 레벨을 포함하는
    무선 디바이스.
  31. 사용자 인터페이스 컴포넌트들을 다운로드하기 위한 시스템으로서,
    보안 서버;
    어플리케이션 다운로드 서버에 액세스가능한 저장된 어플리케이션 데이터베이스; 및
    상기 저장된 어플리케이션 데이터베이스 내에 저장된 적어도 하나의 사용자 인터페이스 번들을 포함하고, 상기 사용자 인터페이스 번들은 사용자 디바이스로 상기 사용자 인터페이스 번들을 다운로드하는 것과 연관된 할당된 리스크와 연관된 번들 리스크 레벨 및 복수의 사용자 인터페이스 컴포넌트들을 포함하는
    시스템.
  32. 제31항에 있어서,
    상기 복수의 사용자 인터페이스 컴포넌트들 각각은 상기 무선 디바이스에서 상기 사용자 인터페이스 컴포넌트를 실행하는 것과 연관된 할당된 컴포넌트 리스크 레벨을 포함하는
    시스템.
  33. 제32항에 있어서,
    상기 저장된 어플리케이션 데이터베이스에 결합된 보안 서버 및 상기 보안 서버에 포함된 서버 보안 모듈 - 상기 서버 모듈은 제 1 컴퓨터 프로그램을 포함하고, 상기 제 1 컴퓨터 프로그램은 상기 복수의 사용자 인터페이스 컴포넌트들 중 적어도 하나를 수신하기 위한 명령들을 포함함 - 을 추가적으로 포함하는
    시스템.
  34. 제33항에 있어서,
    어플리케이션 다운로드 서버 및 상기 어플리케이션 다운로드 서버 내에 있는 제 2 컴퓨터 프로그램 - 상기 컴퓨터 프로그램은 무선 디바이스로 하나 이상의 디지털 서명된 사용자 인터페이스 컴포넌트들을 전송하기 위한 명령들을 포함함 - 을 추가적으로 포함하는
    시스템.
  35. 컴퓨터 판독 가능한 매체 내에 포함된 컴퓨터 프로그램으로서,
    하나 이상의 사용자 인터페이스 컴포넌트들을 수신하는 명령들;
    상기 하나 이상의 수신된 사용자 인터페이스 컴포넌트들 각각에 대한 컴포넌트 리스크 레벨을 결정하는 명령들 - 상기 컴포넌트 리스크 레벨은 무선 디바이스에서 사용자 인터페이스 컴포넌트를 실행하는 것과 연관된 리스크를 표시함 - ; 및
    결정된 컴포넌트 리스크 레벨을 상기 하나 이상의 사용자 인터페이스 컴포넌트들 각각으로 할당하기 위한 명령들을 포함하는
    컴퓨터 프로그램.
  36. 컴퓨터 판독 가능한 매체 내에 포함된 컴퓨터 프로그램으로서,
    사용자 인터페이스 번들을 수신하기 위한 명령들 - 상기 사용자 인터페이스 번들은 무선 디바이스에서 상기 사용자 인터페이스 번들의 번들해제에 대한 보안 리스크를 표시하는 데이터 항목을 포함함 - 을 포함하는
    컴퓨터 프로그램.
  37. 사용자 인터페이스 컴포넌트를 프로세싱하는 전자 디바이스로서,
    무선 디바이스로 전송될 하나 이상의 사용자 인터페이스 컴포넌트들을 수신하기 위한 수단;
    상기 하나 이상의 사용자 인터페이스 컴포넌트들 각각에 대한 컴포넌트 리스 크 레벨을 결정하기 위한 수단; 및
    상기 하나 이상의 사용자 인터페이스 컴포넌트들 각각으로 결정된 컴포넌트 리스크 레벨을 할당하기 위한 수단을 포함하는
    전자 디바이스.
  38. 무선 디바이스로서,
    다운로드 서버를 액세스하기 위한 수단; 및
    상기 다운로드 서버로부터 사용자 인터페이스 번들을 수신하기 위한 수단 - 상기 사용자 인터페이스 번들은 상기 무선 디바이스로 상기 사용자 인터페이스 번들을 로딩하는 것과 연관된 번들 리스크 레벨을 포함함 - 을 포함하는
    무선 디바이스.
KR1020087023282A 2006-02-24 2007-02-26 사용자 인터페이스 컴포넌트들을 무선 디바이스들에 다운로드하기 위한 시스템 및 방법 KR100972270B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/361,274 2006-02-24
US11/361,274 US8270941B2 (en) 2006-02-24 2006-02-24 System and method for downloading user interface components to wireless devices

Publications (2)

Publication Number Publication Date
KR20080098431A true KR20080098431A (ko) 2008-11-07
KR100972270B1 KR100972270B1 (ko) 2010-07-23

Family

ID=38119626

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087023282A KR100972270B1 (ko) 2006-02-24 2007-02-26 사용자 인터페이스 컴포넌트들을 무선 디바이스들에 다운로드하기 위한 시스템 및 방법

Country Status (6)

Country Link
US (2) US8270941B2 (ko)
EP (1) EP1989901A1 (ko)
JP (1) JP4897837B2 (ko)
KR (1) KR100972270B1 (ko)
CN (1) CN101390421B (ko)
WO (1) WO2007098509A1 (ko)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8270941B2 (en) 2006-02-24 2012-09-18 Qualcomm Incorporated System and method for downloading user interface components to wireless devices
US9106740B2 (en) * 2006-06-23 2015-08-11 The Invention Science Fund I, Llc Transferable device with alterable usage functionality
US8290509B2 (en) 2006-06-23 2012-10-16 The Invention Science Fund I, Llc Deactivation system and method for a transferable device
US20100070405A1 (en) * 2008-09-17 2010-03-18 Bank Of America Wireless number risk scores for use with mobile payments
US8359284B2 (en) 2010-05-13 2013-01-22 Bank Of America Corporation Organization-segment-based risk analysis model
US8230268B2 (en) * 2010-05-13 2012-07-24 Bank Of America Corporation Technology infrastructure failure predictor
US8533537B2 (en) 2010-05-13 2013-09-10 Bank Of America Corporation Technology infrastructure failure probability predictor
US8583091B1 (en) 2010-09-06 2013-11-12 Sprint Communications Company L.P. Dynamic loading, unloading, and caching of alternate complete interfaces
US8838087B1 (en) * 2010-09-06 2014-09-16 Sprint Communications Company L.P. Provisioning system and methods for interfaceless phone
US8559933B1 (en) 2011-02-08 2013-10-15 Sprint Communications Company L.P. System and method for ID platform
US9123062B1 (en) 2011-02-18 2015-09-01 Sprint Communications Company L.P. Ad sponsored interface pack
US9043446B1 (en) 2011-03-10 2015-05-26 Sprint Communications Company L.P. Mirroring device interface components for content sharing
US8972592B1 (en) 2011-05-27 2015-03-03 Sprint Communications Company L.P. Extending an interface pack to a computer system
US9619810B1 (en) 2011-10-11 2017-04-11 Sprint Communications Company L.P. Zone architecture for dynamic targeted content creation
US10365911B2 (en) * 2011-12-18 2019-07-30 International Business Machines Corporation Determining optimal update frequency for software application updates
US9201911B2 (en) * 2012-03-29 2015-12-01 International Business Machines Corporation Managing test data in large scale performance environment
US8843122B1 (en) 2012-06-29 2014-09-23 Sprint Communications Company L.P. Mobile phone controls preprocessor
US10043167B2 (en) * 2012-07-13 2018-08-07 Ncr Corporation Mobile point-of-sale (POS) techniques
US9413839B2 (en) 2012-07-31 2016-08-09 Sprint Communications Company L.P. Traffic management of third party applications
US9183412B2 (en) 2012-08-10 2015-11-10 Sprint Communications Company L.P. Systems and methods for provisioning and using multiple trusted security zones on an electronic device
US9442709B1 (en) 2012-10-24 2016-09-13 Sprint Communications Company L.P. Transition experience during loading and updating an interface and applications pack
US10200865B2 (en) * 2013-08-29 2019-02-05 Nokia Technologies Oy Adaptive security indicator for wireless devices
US9513888B1 (en) 2014-01-30 2016-12-06 Sprint Communications Company L.P. Virtual preloads
EP2933987B1 (en) 2014-04-17 2019-11-20 Gurulogic Microsystems OY Additional information on a caller
US20160259491A1 (en) * 2015-03-03 2016-09-08 Olio Devices, Inc. System and method for automatic third party user interface adjustment
US9483253B1 (en) 2015-04-30 2016-11-01 Sprint Communications Company L.P. Methods for customization of default applications on a mobile communication device
US10185480B1 (en) * 2015-06-15 2019-01-22 Symantec Corporation Systems and methods for automatically making selections in user interfaces
US10019486B2 (en) * 2016-02-24 2018-07-10 Bank Of America Corporation Computerized system for analyzing operational event data
US10223425B2 (en) * 2016-02-24 2019-03-05 Bank Of America Corporation Operational data processor
US10275183B2 (en) * 2016-02-24 2019-04-30 Bank Of America Corporation System for categorical data dynamic decoding
US10366338B2 (en) 2016-02-24 2019-07-30 Bank Of America Corporation Computerized system for evaluating the impact of technology change incidents
US10430743B2 (en) 2016-02-24 2019-10-01 Bank Of America Corporation Computerized system for simulating the likelihood of technology change incidents
US10366337B2 (en) 2016-02-24 2019-07-30 Bank Of America Corporation Computerized system for evaluating the likelihood of technology change incidents
US10366367B2 (en) 2016-02-24 2019-07-30 Bank Of America Corporation Computerized system for evaluating and modifying technology change events
US10275182B2 (en) * 2016-02-24 2019-04-30 Bank Of America Corporation System for categorical data encoding
US10216798B2 (en) * 2016-02-24 2019-02-26 Bank Of America Corporation Technical language processor
US10387230B2 (en) * 2016-02-24 2019-08-20 Bank Of America Corporation Technical language processor administration
US10067984B2 (en) * 2016-02-24 2018-09-04 Bank Of America Corporation Computerized system for evaluating technology stability
US10713272B1 (en) 2016-06-30 2020-07-14 Amazon Technologies, Inc. Dynamic generation of data catalogs for accessing data
US10963479B1 (en) 2016-11-27 2021-03-30 Amazon Technologies, Inc. Hosting version controlled extract, transform, load (ETL) code
US11481408B2 (en) 2016-11-27 2022-10-25 Amazon Technologies, Inc. Event driven extract, transform, load (ETL) processing
US10621210B2 (en) 2016-11-27 2020-04-14 Amazon Technologies, Inc. Recognizing unknown data objects
US11277494B1 (en) 2016-11-27 2022-03-15 Amazon Technologies, Inc. Dynamically routing code for executing
US11138220B2 (en) 2016-11-27 2021-10-05 Amazon Technologies, Inc. Generating data transformation workflows
US11036560B1 (en) * 2016-12-20 2021-06-15 Amazon Technologies, Inc. Determining isolation types for executing code portions
US10545979B2 (en) 2016-12-20 2020-01-28 Amazon Technologies, Inc. Maintaining data lineage to detect data events
WO2019041051A1 (en) 2017-09-01 2019-03-07 Automobility Distribution Inc. DEVICE CONTROL APPLICATION COMPRISING ADVERTISING

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE20104839U1 (de) * 2001-03-20 2002-08-22 Agere Syst Guardian Corp Mobiltelefon mit einer Vorrichtung zum Speichern von heruntergeladenen Daten
NZ531132A (en) * 2001-08-15 2006-10-27 Qualcomm Inc Test enabled application for executing an application on a wireless device
US7093198B1 (en) * 2001-08-16 2006-08-15 Nokia Corporation Skins for mobile communication devices
US7158248B2 (en) * 2002-02-07 2007-01-02 Hewlett-Packard Development Company, L.P. Control of software via bundling
US7463256B2 (en) * 2002-04-18 2008-12-09 Gateway Inc. Automatic phase adjustment for display
KR100453504B1 (ko) 2002-04-30 2004-10-20 주식회사 케이티프리텔 소프트웨어 인증 방법 및 시스템
US7707409B2 (en) * 2002-04-30 2010-04-27 Kt Corporation Method and system for authenticating software
CN1669318A (zh) * 2002-05-20 2005-09-14 索尼株式会社 图像信号处理装置及方法
US7146640B2 (en) * 2002-09-05 2006-12-05 Exobox Technologies Corp. Personal computer internet security system
WO2004028121A2 (en) * 2002-09-23 2004-04-01 Wimetrics Corporation System and method for wireless local area network monitoring and intrusion detection
WO2004107647A1 (en) 2003-05-17 2004-12-09 Microsoft Corporation Mechanism for evaluating security risks
US20050021935A1 (en) 2003-06-18 2005-01-27 Openwave Systems Inc. Method and system for downloading configurable user interface elements over a data network
US7950000B2 (en) * 2004-03-17 2011-05-24 Microsoft Corporation Architecture that restricts permissions granted to a build process
US7840573B2 (en) * 2005-02-22 2010-11-23 Trusted Computer Solutions Trusted file relabeler
US8270941B2 (en) 2006-02-24 2012-09-18 Qualcomm Incorporated System and method for downloading user interface components to wireless devices

Also Published As

Publication number Publication date
US20070203719A1 (en) 2007-08-30
JP2009529720A (ja) 2009-08-20
US8666363B2 (en) 2014-03-04
CN101390421A (zh) 2009-03-18
US20120304293A1 (en) 2012-11-29
EP1989901A1 (en) 2008-11-12
US8270941B2 (en) 2012-09-18
JP4897837B2 (ja) 2012-03-14
WO2007098509A1 (en) 2007-08-30
CN101390421B (zh) 2012-05-23
KR100972270B1 (ko) 2010-07-23

Similar Documents

Publication Publication Date Title
KR100972270B1 (ko) 사용자 인터페이스 컴포넌트들을 무선 디바이스들에 다운로드하기 위한 시스템 및 방법
RU2339076C2 (ru) Выполнение неверифицированных программ в операционной среде устройства радиосвязи
KR100944065B1 (ko) 다중 크리덴셜 인증 프로토콜을 제공하는 시스템 및 방법
RU2439856C2 (ru) Серверная обработка интерактивных экранов для беспроводного устройства
CN107992308B (zh) 一种安卓终端应用程序的插件化管理方法
US7644444B2 (en) Communication device, program and recording media
CN102246144A (zh) 用于在计算机平台上安装程序的方法和装置
KR100929282B1 (ko) 무선 장치의 콘텐츠 전송 제어
EP1872230B1 (en) Centralized memory management in wireless terminal devices
RU2354054C2 (ru) Способ и устройство для определения целостности устройства
KR20110128632A (ko) 스마트폰 응용프로그램의 악성행위 탐지 방법 및 장치
US20070204224A1 (en) System and method for storing and accessing data files at wireless devices
CN106681749A (zh) 基于安卓平台的局部代码补丁更新方法及装置
CN111596971A (zh) 应用清理方法、装置、存储介质及电子设备
CN112346758B (zh) 一种数字基建业务更新平台、更新方法及电子设备
EP1892620A1 (en) Auditing application activities
CN105122850A (zh) 用于处理消息的终端装置、用于处理消息的方法和记录介质
CN117992107A (zh) 一种应用程序获取系统以及方法

Legal Events

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

Payment date: 20130628

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140627

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170629

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 10