KR100883699B1 - 무선 장치 동작 환경에서 비검증된 프로그램들의 실행 - Google Patents

무선 장치 동작 환경에서 비검증된 프로그램들의 실행 Download PDF

Info

Publication number
KR100883699B1
KR100883699B1 KR1020067020485A KR20067020485A KR100883699B1 KR 100883699 B1 KR100883699 B1 KR 100883699B1 KR 1020067020485 A KR1020067020485 A KR 1020067020485A KR 20067020485 A KR20067020485 A KR 20067020485A KR 100883699 B1 KR100883699 B1 KR 100883699B1
Authority
KR
South Korea
Prior art keywords
application
security protocol
downloading
predefined security
conform
Prior art date
Application number
KR1020067020485A
Other languages
English (en)
Other versions
KR20070008619A (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 KR20070008619A publication Critical patent/KR20070008619A/ko
Application granted granted Critical
Publication of KR100883699B1 publication Critical patent/KR100883699B1/ko

Links

Images

Classifications

    • 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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Abstract

인증의 존재를 검증하는 것과 같이 플랫폼에서 애플리케이션을 다운로딩하고 실행하기 위해 미리 정의된 보안 프로토콜로 무선 네트워크를 통해 플랫폼으로 애플리케이션을 선택적으로 다운로딩 하는 상주 애플리케이션 환경을 갖는 컴퓨터 플랫폼 및 무선 통신 능력을 갖는 컴퓨터 장치를 제공한다. 다운로드 관리자는 컴퓨터 플랫폼에 상주하고, 상주 애플리케이션 환경의 보안 프로토콜과 부합하지 않는 애플리케이션의 다운로딩, 저장 및 실행을 가능하게 한다.

Description

무선 장치 동작 환경에서 비검증된 프로그램들의 실행{EXECUTION OF UNVERIFIED PROGRAMS IN A WIRELESS DEVICE OPERATING ENVIRONMENT}
본 발명은 통상적으로 무선 컴퓨터 네트워크를 통한 컴퓨터 장치들 사이의 통신에 관한 것이다. 특히, 본 발명은 무선 장치의 컴퓨터 플랫폼의 환경 및 동작 시스템에 관련되며, 검증되지 않은(또는 인증되지 않은) 프로그램을 다운로딩 및 실행하여 무선 장치 환경에서 적절하게 동작시키는 능력에 관한 것이다.
직접 접속을 통해 또는 무선 네트워크에서 다른 컴퓨터 장치와 네트워킹하는 컴퓨터 장치는 다른 컴퓨터 장치로부터 프로그램을 다운로딩하고 다운로딩된 프로그램을 저장 및 실행하는 능력을 갖는다. 특히, 셀룰러 폰, PDA, 소형 랩탑, 및 개량형 페이저와 같은 무선 통신 장치는 애플리케이션의 다운로딩 및 실행을 가능하게 하는 컴퓨터 플랫폼을 포함할 수 있다. 그러나 이러한 장치는 통상적으로 제한된 저장 용량을 가지며, 이들의 동작 환경은 데스크탑 개인용 컴퓨터(PC) 및 서버에 공통적인 전체 운영 시스템으로부터 상당히 축소된다.
매우 최적화된 자바 런타임 환경의 일례는 자바2 플랫폼, 마이크로 에디션(J2ME)인데, 이는 무선 통신 장치와 같은 제한된 연산 용량을 갖는 장치에 대해 동작하는 것으로 의도된다. J2ME에서, "접속 한정된 장치 구성(CLDC)"으로 결합된 "모바일 정보 장치 프로파일(MIDP)"은 사용자 인터페이스(UI), 네트워크 접속, 로컬 데이터 저장, 및 애플리케이션 라이프사이클 관리와 같은 무선 컴퓨터 장치에서 요구되는 코어 애플리케이션 기능을 제공하는 자바 런타임 환경이다. J2ME에, 몇몇 표준 애플리케이션 프로그래밍 인터페이스(API) 및 "자바 가상 머신"(JVM)과 같은 다른 툴이 존재한다.
JVM은 장치가 자바 명령을 실행할 수 있도록 하드웨어 플랫폼에 대한 컴파일링된 자바 이진 코드(종종 "바이트코드"로 불림)를 해석한다. 자바를 이용하는 일 장점은 프로그래머에 의해 재기록 또는 재컴파일링되지 않고 소정의 컴퓨터 플랫폼에서 실행할 수 있는 애플리케이션 프로그램들이 구성되게 하는 것이다. JVM은 이를 가능하게 하는데, 그 이유는 JVM이 특정 명령 길이 및 컴퓨터 플랫폼의 다른 속성을 추적하고, 본질적으로 추상 머신 또는 프로세서, 추상 명령 세트, 레지스터 세트, 스택, 힙, 및 방법 영역을 한정하기 때문이다. 따라서, 일단 JVM이 소정의 컴퓨터 플랫폼에 대해 구현되면, 소정의 자바 프로그램이 플랫폼에 대해 실행될 수 있다. JVM은 바이트코드를 한 번에 하나의 명령으로 번역(따라서 명령을 현재 프로세서 명령으로 맵핑함)하거나, 바이트코드는 소위 "저스트-인-타임 컴파일러"를 사용하여 실제 프로세서에 대해 추가로 컴파일링할 수 있다.
자바 기반 또는 컴파일링 가능한 컴퓨터 장치에 의해 다운로딩된 프로그램의 공통 타입은 "애플릿"이다. 애플릿은 웹 페이지와 함께 사용자에게 통상적으로 보내지는 작은 프로그램이며, 서버로 사용자 요구를 전송하지 않고 대화식 애니메이션, 즉각적인 계산, 또는 다른 간단한 업무를 실행할 수 있다. "미들릿(MIDlet)"으로 불리는 다른 애플릿은 무선 자바 가능 장치상에서 실행하도록 구성된 애플리케이션이며, 무선 컴퓨터 장치에 대한 다운로딩을 위해 무선 네트워크에 대해 제공된다.
그러나 다운로딩된 프로그램들은 프로그램을 실행하기 위해 의도된 장치의 소프트웨어 환경에 적합해야 하며 그렇지 않으면 에러가 발생할 수 있다. 다운로딩된 애플리케이션이 상주 환경에서 실행가능한 것을 보장하기 위해, 다운로딩된 소프트웨어 애플리케이션에서 디지털 인증의 존재를 검증하는 것과 같은 보안 프로토콜이 종종 사용된다. 예를 들어, 조직이 존재하고, 이름을 가지며, 상기 이름을 사용하도록 권리가 주어진다는 인증 이후, Verisign®이 조직에 대한 프로그램 내의 결론에 대해 "클래스 3 인증"을 발행할 것이다. 상주 애플리케이션 환경이 특정 인증으로 서명되거나, 또는 소정의 방식으로 배포된 애플리케이션으로만 동작하도록 설계된다면, 컴퓨터 장치는 미리 정의된 보안 프로토콜을 충족시키지 않는 애플리케이션을 획득하지 못할 것이다. 대부분, 상주 애플리케이션 환경은 애플리케이션을 다운로딩하는 것을 거절할 것이며, 더군다나 검증되지 않은 애플리케이션을 실행하려고 하지 않을 것이다. 그러나 많은 검증되지 않은 애플리케이션은 상주 애플리케이션 환경에 어떠한 위험도 제기하기 않으며, 컴퓨터 장치의 사용자는 안전한 프로토콜로 인해 검증되었더라면 안전했을 검증되지 않은 애플리케이션을 획득할 능력이 없다.
결론적으로, 무선 장치에 상주하는 운영 시스템 또는 애플리케이션 환경에서 실행하기 위해 검증되지 않은 프로그램을 다운로딩하고, 저장하고 실행하기 위한 시스템을 셀룰러 폰, PDA, 또는 다른 장치와 같은 무선 통신 장치에 제공하는 것은 장점일 것이다. 이러한 시스템은 상주 애플리케이션 환경 또는 장치 운영 시스템에 악영향을 미치는 최소한의 위험으로 검증되지 않은 프로그램의 사용을 가능하게 해야 한다. 따라서, 무선 장치가 본 발명이 원칙적으로 지향하는 검증되지 않은 비보안 프로토콜 적용 애플리케이션을 다운로딩 및 실행하게 하는 시스템 및 방법을 제공해야 한다.
본 발명은 무선 장치 애플리케이션 환경에서 적절하게 동작하도록 인증 검증과 같은 적절한 보안 프로토콜을 충족시키지 않는 프로그램을 다운로딩 및 실행하는 무선 통신 능력을 가진 컴퓨터 장치의 시스템 및 방법을 제공한다. 무선 컴퓨터 장치는 무선 네트워크를 통해 데이터를 선택적으로 송신 및 수신하기 위한 무선 통신 포털, 상주 애플리케이션 환경을 포함하고 포털을 통해 애플리케이션을 선택적으로 다운로딩하는 컴퓨터 플랫폼, 및 컴퓨터 플랫폼과 통신하고 있으며 컴퓨터 플랫폼과 데이터를 선택적으로 송수신하는 데이터 저장소를 포함한다. 상주 애플리케이션 환경은 애플리케이션을 적어도 다운로딩하고 실행하기 위해 미리 정의된 보안 프로토콜을 이용하고, 미리 정의된 보안 프로토콜과 부합하지 않는 애플리케이션을 적어도 선택적으로 다운로딩하는 다운로드 관리자는 컴퓨터 플랫폼에 상주한다. 다운로드 관리자는 또한 검증되지 않은 애플리케이션을 실행 및 저장할 수 있으며, 사용자 인터페이스 또는 저장소 디렉터리와 같은 검증되지 않은 애플리케이션을 조절하기 위해 상주 애플리케이션의 현재 인터페이스 및 방법을 이용하거나, 자신 고유의 인터페이스 및 방법을 이용하거나, 이 둘 모두를 이용할 수 있다.
컴퓨터 장치에서 사용하기 위해 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션을 무선 접속을 통해 컴퓨터 장치로 선택적으로 다운로딩하는 방법은 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션을 컴퓨터 플랫폼에 다운로딩하고 다운로드 관리자로 컴퓨터 장치에서 애플리케이션을 실행하는 단계를 포함한다. 상기 방법은 또한 이후의 실행을 위해 다운로딩된 비검증 애플리케이션을 저장하는 단계를 포함한다. 또한, 다운로드 관리자로 다운로딩된 애플리케이션을 실행하는 단계는 내부, 외부 또는 부분적으로 상주 애플리케이션 환경의 부분적인 내부에서 발생할 수 있다.
따라서 무선 장치에 상주하는 연산 시스템 또는 애플리케이션 환경에서 실행하기 위해 검증되지 않았거나 보안 프로토콜을 충족시키지 않는 프로그램을 다운로딩하여 저장하고 실행할 수 있는 셀룰러 폰 또는 PDA와 같은 무선 컴퓨터 장치 및 방법을 제공하는 것이 본 발명의 목적이다. 상주 애플리케이션 환경으로부터 분리되거나 일부로서 존재할 수 있는 다운로드 관리자가 상주 애플리케이션 환경에 악영향을 줄 위험을 최소화하는 비검증 프로그램의 사용을 관리한다. 다운로드 관리자는 현재의 상주 애플리케이션 환경의 툴을 이용하여 용이하게 구현되고, 환경의 다른 툴을 선택적으로 사용하며, 자신 고유의 인터페이스를 제공하고 검증되지 않은 애플리케이션의 개별 파일 관리를 실행할 수 있다.
본 발명의 다른 목적, 장점 및 특징이 본 발명의 도면, 상세한 설명 및 청구항으로부터 명백할 것이다.
도1은 상주 애플리케이션 환경/OS의 보안 프로토콜에 부합하지 않는 애플리케이션을 관리하기 위한 상주 애플리케이션 관리자를 플랫폼상에 포함하는 무선 장치에 대한 컴퓨터 구조의 블록도이다.
도2는 무선 네트워크를 통해 서로 통신하는 몇몇 컴퓨터 장치를 갖는 통상의 셀룰러 원거리 통신 구성에서 무선 네트워크의 일 실시예를 나타낸 도면이다.
도3은 무선 장치의 컴퓨터 플랫폼과 애플리케이션 다운로드 서버 사이의 상호 작용을 나타낸 블록도이다.
도4는 무선 장치에 대해 애플리케이션을 공급하는 비검증/비보안 프로토콜을 다운로딩하고 상주 애플리케이션 환경에 독립적으로 프로그램을 실행하는 프로세스의 일 실시예를 나타낸 흐름도이다.
동일한 도면 번호는 동일한 구성 요소를 나타내는 도면을 참조하면, 도1은 상주 애플리케이션 환경의 보안 프로토콜에 부합하지 않는 애플리케이션을 관리하기 위한 상주 다운로드 관리자를 포함하는 무선 장치상의 컴퓨터 구조의 블록도를 도시한다. 셀룰러 폰(10)과 같은 무선 장치는 애플리케이션 다운로드 서버(26)로부터 송신된 소프트웨어 애플리케이션을 수신 및 실행(도2)한다. 컴퓨터 플랫폼(12)은 다른 구성 요소들 중에서도, 주문형 집적회로("ASIC")(14), 또는 다른 프로세서, 마이크로프로세서, 논리 회로, 프로그램가능한 게이트 어레이, 또는 다른 데이터 프로세싱 장치를 포함한다. ASIC(14)는 무선 장치의 제조시 장착되며 통상적으로 업그레이드될 수 없다. ASIC(14) 또는 다른 프로세서는 상주 애플리케이션 환경을 포함하는 애플리케이션 프로그래밍 인터페이스("API")를 실행시키며, ASIC(14)상에 로딩된 연산 시스템을 포함할 수 있다. 상주 애플리케이션 환경은 무선 장치의 메모리(20)에서 소정의 상주 프로그램과 인터페이스한다. 상주 애플리케이션 환경의 예는 무선 장치 플랫폼에 대해 Qualcomm®에 의해 개발된 "무선 이진 런타임 환경(binary runtime environment for wireless)"(브루(BREW)) 소프트웨어이다. 또한, 이하에서 설명되듯이, 비검증 프로그램의 다운로딩 및/또는 실행을 조정하기 위한 다운로드 관리자(18)가 있다.
여기에 도시된 바와 같이, 무선 장치는 그래픽 디스플레이를 갖는 셀룰러 전화(10)일 수 있지만, 개인용 디지털 보조기(PDA), 그래픽 디스플레이를 갖는 페이저, 또는 심지어 무선 통신 포털을 갖거나, 그렇지 않으면 네트워크 또는 인터넷에 유선 접속을 가질 수도 있는 개별 컴퓨터 플랫폼처럼 기술분야에서 공지된 컴퓨터 플랫폼을 갖는 소정의 무선장치 일 수 있다. 더욱이, 메모리(20)는 판독 전용 또는 랜덤 액세스 메모리(RAM 및 ROM), EPROM, EEPROM, 플래시 카드, 또는 컴퓨터 플랫폼에 통상적인 소정의 메모리를 포함할 수도 있다. 컴퓨터 플랫폼(12)은 또한 제3자 애플리케이션 다운로드 서버(26)(도2)로부터 다운로딩된 소프트웨어 애플리케이션과 같이, 메모리(20)에 능동적으로 사용되지 않은 소프트웨어 애플리케이션의 저장을 위해 로컬 데이터베이스(22)를 포함할 수 있다. 로컬 데이터베이스(12)는 통상적으로 하나 이상의 플래시 메모리 셀로 구성되지만, 자기 매체, EPROM, EEPROM, 광 매체, 테이프 또는 소프트 또는 하드디스크와 같은 기술 분야에 공지된 제2 또는 제3의 저장 장치일 수도 있다.
셀룰러 전화(10)와 같은 무선 장치는 무선 네트워크(25)를 통해 선택적으로 데이터를 송신 및 수신하는 무선 통신 포털 또는 통신 인터페이스(24)를 통한 무선 통신 능력을 갖는다. 컴퓨터 플랫폼(12) 상주 애플리케이션 환경은 선택적으로 포털(인터페이스(24))을 통해 플랫폼(12)으로 애플리케이션을 다운로딩하며, 디지털 인증, 공증 키 인증, 또는 다른 보안 프로토콜의 존재와 같이, 적어도 애플리케이션을 다운로딩하기 위해 미리 정의된 보안 프로토콜을 이용한다. 로컬 데이터베이스(12) 또는 일례의 메모리(20)와 같은 데이터 저장소는 컴퓨터 플랫폼(12)과 데이터 통신하고 있다. 다운로드 관리자(18)는 컴퓨터 플랫폼(12)에 상주하며, 미리 정의된 보안 프로토콜과 부합하지 않는 애플리케이션을 컴퓨터 플랫폼(12)에 적어도 선택적으로 다운로딩하고, 바람직하게는 다운로딩, 저장 및 실행을 거쳐 비검증 애플리케이션의 취급을 관리하며, 이는 후술한다.
셀룰러 전화 및 셀룰러 전화와 같은 원거리 통신 장치는 증가한 계산 성능에 따라 제조되며 개인용 컴퓨터 및 휴대용 개인 디지털 보조기(PDA)와 동등하게 되고 있다. 이러한 "스마트" 셀룰러 전화는 소프트웨어 개발자가 셀룰러 장치(10)의 ASIC(14)와 같은 프로세서상에 다운로딩 가능하고 실행 가능한 소프트웨어 애플리케이션을 생성하게 한다. 셀룰러 전화(10)와 같은 무선 장치는 웹 페이지, 애플릿, 미들릿, 게임 및 주식 모니터와 같은 다양한 타임의 애플리케이션, 또는 간단히 뉴스 및 스포츠 관련 데이터와 같은 데이터를 다운로딩할 수 있다. 다운로딩된 데이터 및 실행 가능한 애플리케이션은 장치(10)의 디스플레이 상에 즉시 디스플레이될 수도 있고, 사용하지 않을 때는 로컬 데이터베이스(22)에 저장될 수도 있다. 소프트웨어 애플리케이션은 무선 장치(10)상에 상주하는 정규 소프트웨어 애플리케이션으로 다뤄지며, 사용자는 API(16)상에서, 즉 상주 애플리케이션 환경 내에서 실행을 위해 선택적으로 저장된 상주 애플리케이션을 로컬 데이터베이스(22)로부터 메모리(20)로 업데이트할 수 있다. 그러나 탐색되어 다운로딩된 애플리케이션이 다운로드의 저작자를 보호하기 위해 다운로드에 존재하는 인증의 검증과 같은 미리 정의된 보안 프로토콜에 부합하지 않으면, 상주 애플리케이션 환경은 비검증 애플리케이션의 다운로딩을 거절할 것이다. 무선 장치(10)의 최종 사용자는 애플리케이션에 부합하는 비보안 프로토콜을 다운로딩하고자 선택적으로 시도할 수 있다. 그 결과, 셀룰러 전화(12)의 최종 사용자는 게임, 인쇄 매체, 주식 업데이트, 뉴스, 또는 무선 네트워크(14)를 통해 애플리케이션 다운로드 서버로부터의 다운로딩을 위해 이용 가능한 소정의 다른 타입의 정보 또는 프로그램으로 자신의 전화를 개별화할 수 있다.
도2는 무선 장치(12)가 동작하는 무선 네트워크(25)의 성분을 더욱 상세히 도시한 블록도이다. 무선 네트워크(25)는 단순히 예이며, 원격 모듈이 무선 네트워크 캐리어 및/또는 서버를 포함하는 무선 네트워크(14)의 컴포넌트들 사이에서, 및/또는 서로들 사이에서 무선으로 통신하는 소정의 시스템을 포함할 수 있는데, 이에 한정되지 않는다. 서버 측 컴포넌트는 제3자 애플리케이션 다운로드 서버(26)이며, 다운로딩 가능한 애플리케이션 데이터베이스(28)이다. 다른 서버 측 컴포넌트는 셀룰러 원거리 통신 서비스를 제공하기 위해 요구되는 소정의 다른 컴포넌트를 갖는 셀룰러 데이터 네트워크에 존재할 것이다. 용이하게 스케일링 가능한 제3자 하드웨어의 사용으로, 무선 장치에 대해 액세스 가능하게 만들어질 수 있는 컴퓨터 장치의 수가 이론적으로는 제한되지 않는다.
서버 측 컴포넌트는 인터넷, 안전한 LAN, WAN, 또는 다른 네트워크와 같은 데이터 링크를 통해 캐리어 네트워크(30)와 통신한다. 캐리어 네트워크(30)는 메시지 서비스 제어("MSC")(32)에 전송된 (통상적으로 데이터 패킷의 형태인) 메시지를 제어한다. 캐리어 네트워크(30)는 네트워크, 인터넷 및/또는 POTS("통상의 전화 시스템(plain ordinary telephone system)")에 의해 MSC(32)와 통신한다. 통상적으로, 캐리어 네트워크(30)와 MSC(32) 사이의 네트워크 또는 인터넷 접속은 데이터를 송신하고, POTS는 음성 정보를 송신한다. MSC(32)는 다수의 기지국과 접속된다. 캐리어 네트워크에 유사한 방식으로, MSC(32)는 데이터 송신을 위해 네트워크 및/또는 인터넷, 그리고 음성 정보를 위해 POTS에 의해 BTS(34)에 통상적으로 접속된다. BTS(34)는 근본적으로 단문 서비스("SMS") 또는 종래 기술에 알려진 다른 무선 방식에 의해 셀룰러 전화(10)와 같은 무선 장치로 메시지를 무선으로 방송한다.
종종 "3G" 네트워크로 불리는 무선 네트워크(14) 개발시, 무선 장치(10)의 최종 사용자가 소프트웨어 애플리케이션을 다운로딩하여 사용하기를 원하면, 최종 사용자는 무선 네트워크(25)로의 통신 접속을 브리징하여, 통상적으로 캐리어 서버 또는 제3자 애플리케이션 다운로드 서버(26)인, 애플리케이션 다운로드 서버(26)에 접속을 시도할 것이며, 원하는 소프트웨어 애플리케이션을 액세스 및 다운로딩하도록 시도할 것이다. 일단 무선 장치가 애플리케이션 다운로드 서버(26)와 접속하면, 초기 접속이 이뤄지며 애플리케이션 다운로드 서버(26)는 어떤 애플리케이션 및 데이터가 무선 장치(10)에 이용 가능한 지를 결정할 수 있고 무선 장치(10)에서 최종 사용자가 이용 가능한 애플리케이션 및 서비스를 알 수 있도록 적절한 정보를 전송한다.
독립적인 소프트웨어 제공자 또는 개발자와 같은 제3자는 제3자 자신의 컴퓨터 장치 또는 네트워크 캐리어(30)를 통해, 장치의 플랫폼(12) 상에서 동작하는 필수적인 보안 프로토콜을 갖거나 갖지 않을 수도 있는 무선 장치(10)에 다운로딩 가능한 소프트웨어 애플리케이션을 제공한다. 예를 들어, 상주 애플리케이션 환경은 애플리케이션을 다운로딩하기 위해 다운로딩에 Virsign® 디지털 인증의 포함을 요구할 수도 있다. 비검증/비적합 애플리케이션의 다운로딩 및/또는 실행을 위해, 본원의 무선 장치 플랫폼(12)은 상주 애플리케이션 환경과 부분적으로 또는 전체적으로 독립적인 비검증 애플리케이션을 취급할 수 있는 다운로드 관리자(18)를 포함한다.
특히 BREW 환경에서 다운로드 관리자(18)를 생성하는 방법은 표준 "자바 가상 머신"(JVM) 확장을 이용하여 "자바 관리 콘솔(JMC)"을 생성하는 것이다. JMC는 기존 API(16)를 통해 캐리어 네트워크 또는 제3자 애플리케이션 다운로드 서버(26)로부터 애플릿 및 미들릿과 같은 비검증 애플리케이션을 다운로딩하기 위한 관리 기능을 제공한다. JMC는 상주 BREW에 검증되지 않은 애플리케이션을 저장하고 비검증 애플리케이션의 히스토리를 선택, 론칭, 삭제 및 저장하기 위한 최종 사용자 인터페이스를 제공한다. JMC는 애플리케이션 특정 자동 장착을 지원하고, 비검증 애플리케이션에 대한 선택적인 보안 프로토콜을 지원하기 위해 확장될 수 있다. 따라서, 이러한 실시예에서, 다운로드 관리자는 모든 관리 및 고객 인터페이스 기능을 실행하기 위해 BREW JVM 확장과 검증되지 않은 실행가능한 콘텐츠 사이의 표준 BREW 애플리케이션이다. 다른 장치 연산 시스템 및 상주 애플리케이션 환경에서 다운로드 관리자(18)의 다른 실시예가 발생할 수 있다.
다운로드 관리자(18)는 상주 애플리케이션 환경 내에 전적으로 존재할 수 있으며, 기존 애플리케이션 다운로드 인터페이스를 이용하거나 비검증 애플리케이션을 조절하기 위해 자신 고유의 인터페이스를 이용할 수 있다. 다운로드 관리자(18)는 제조시 컴퓨터 플랫폼(12)에 상주할 수 있으며, 무선 장치의 동작시 플랫폼에 다운로딩될 수 있다. 일 실시예에서, 다운로드 관리자(18)는 제3자 애플리케이션 다운로드 서버(26)에 상주할 수 있으며, 비검증 애플리케이션의 요청이 행해질 때 컴퓨터 플랫폼(12)으로 송신될 수 있다.
다운로드 관리자(18)는 실행, 저장, 설치/제거를 관리하거나, 아니면 미리 정의된 보안 프로토콜에 부합하지 않는 다운로딩된 애플리케이션을 완벽하게 처리할 수 있다. 미리 정의된 보안 프로토콜은 애플리케이션의 출처(origination), 다운로딩된 애플리케이션 내의 인증의 존재, 또는 네트워크 보안 분야에 공지된 소정의 다른 보안 프로토콜을 검증할 수 있다. 게다가, 다운로드 관리자는 장치 OS의 안정성에 대한 위험, 다운로딩 비용, 최종 사용자 특성, 또는 다른 미리 정의된 기준과 같은 기준에 따라 상이한 방식으로 다운로딩된 비검증 애플리케이션을 분리 또는 처리할 수 있다.
도3은 무선 애플리케이션 프로토콜(WAP) 게이트웨이(40)를 통한 무선 장치(10)의 컴퓨터 플랫폼과 애플리케이션 다운로드 서버(26) 사이의 상호작용을 설명하는 블록도이다. 도시된 바와 같이, 상호 작용의 몇몇 스레드는 장치(10)와 서버(26) 사이에서 동시에 발생할 수 있다. 칩 소프트웨어 층(42)에 대해, 사용자가 애플리케이션 다운로드 서버(26)에 위치하는 자바 미들릿과 같은 특정 애플리케이션을 위치시킬 수 있는 WAP 브라우저(46)가 존재한다. WAP(46) 브라우저(46)는 애플리케이션 관리 소프트웨어(AMS)(52) 및 폰 인터페이스(50)(도1의 통신 인터페이스(24))가 상주하는 자바 애플리케이션 관리자(44)에 대해 요청된 애플리케이션을 수신 및 송신할 수 있으며, 미들릿 관리 및 가입자와의 상호 작용을 조절하기 위해 장치 특정 사용자 인터페이스와 공동으로 AMS를 포함한다. 이어 미들릿은 블록(48)에 도시된 바와 같이 자바 가상 머신(JVM)에 대해 론칭된다.
따라서, 사용자는 WAP 게이트웨이(40) 및 WAP 브라우저(46)를 통해 애플리케이션 다운로드 서버(26)로부터 애플리케이션을 브라우징 및 구매한다. 이어 애플리케이션/미들릿은 애플리케이션 다운로드 서버(26)로부터 직접 WAP 브라우저(46)로 또는 이어 자바 애플리케이션 관리자(44)로 보내진다. AMS(52)에서, 적어도 다운로딩된 애플리케이션/미들릿은 언팩킹되고 장착되며, 택일적으로 특히 자바 애플리케이션 기술자(JAD) 파일, JAD의 프로세싱, 자바 보관 파일(JAR) 로케이터, 및/또는 JAR 파일 요구와 같은 자바 미들릿에 대한 자바 활성 프레임워크에 관해 AMS(52) 내에 구현될 수 있다. 일단 애플리케이션/미들릿이 사용을 위해 준비되면, 블록(48)에 도시된 바와 같이, 실행을 위해 JVM의 적절한 툴로 전송된다.
도4는 무선 장치(10)에 대해 애플리케이션을 적응시키는 비검증/비보안 프로토콜을 다운로딩하고 상주 애플리케이션 환경(API/OS 층(16))에 독립적으로 프로그램을 실행하는 프로세스의 실시예의 흐름도이다. 단계(60)에 도시된 바와 같이, 애플리케이션을 다운로딩하고 다운로딩 후 실행하기 위한 요청이 수신되고, 단계(62)에 도시된 바와 같이, 이어 디지털 인증이 검증되거나, 상주 애플리케이션 환경의 다른 보안 프로토콜이 발생한다. 이어서, 결정(64)에 나타낸 바와 같이, 애플리케이션이 검증 가능한지 또는 상주 애플리케이션 환경에 의해 다운로딩 및 취급되기에 충분하게 보안 프로토콜에 부합하는지에 대한 결정이 이루어진다.
결정(64)에서 탐색되어 다운로딩된 애플리케이션이 보안 프로토콜을 충족시킨다면(검증 가능하면), 결정(72)에 도시된 바와 같이, 애플리케이션의 실행에 대한 결정을 실행하기 위한 프로세스가 요청된다. 그렇지 않고, 결정(64)에서 탐색되어 다운로딩된 애플리케이션이 검증되지 않았거나 상주 애플리케이션 환경에 의해 다운로딩 및/또는 조절을 위한 보안 프로토콜을 충족하지 않으면, 단계(68)에 도시된 것처럼 다운로드 관리자(18)가 호출된다. 이러한 실시예에서, 검증되지 않은 애플리케이션은 단계(70)에 도시된 바와 같이, 다운로드 관리자(18)에 의해 제어되는 대로 다운로딩 및 저장된다. 그리고 결정(64)에서 검증된 보안 애플리케이션의 다운로딩 후, 결정(72)에 도시된 것처럼, 다운로딩된 애플리케이션의 실행 여부에 대한 결정이 이루어진다. 결정(72)에서 실행이 요청되지 않으면, 프로세스는 종료한다.
그렇지 않고, 결정(72)에서 다운로딩된 애플리케이션의 실행이 요청되면, 결정(74)에 도시된 것처럼, 결정은 탐색되어 실행된 애플리케이션이 검증된 애플리케이션인지 또는 보안 프로토콜에 부합하지 않는지에 대한 결정이 이루어진다. 결정(74)에서 애플리케이션이 검증되지 않은 애플리케이션이 아니면, 단계(76)에 도시된 바와 같이, 애플리케이션은 장치 플랫폼의 표준 OS에 대해서와 같은 상주 애플리케이션 환경에서 실행된다. 탐색되고 실행된 애플리케이션이 결정(74)에서 검증되지 않은 애플리케이션이라면, 단계(78)에서와 같이 다운로드 관리자가 호출되며, 단계(80)에 도시된 바와 같이 검증되지 않은 애플리케이션을 실행한다. 실행 후, 다운로딩/실행 프로세스가 종료한다. 도4에 도시된 바와 같이, 검증되지 않은 애플리케이션은 다운로드 관리자(18)가 있거나 없이 다운로딩될 수 있으며, 다운로드 관리자(18)는 실행시 호출된다. 다운로딩된 애플리케이션은 즉시 실행되거나, 다운로드 관리자(18)에 저장되어 이후에 실행될 수 있다.
이와 같이, 무선 장치(10)는 무선 접속을 통해 무선 장치(10)와 같은 컴퓨터 장치에 상기 컴퓨터 장치(10)에서의 사용을 위해 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션을 선택적으로 다운로딩하는 방법을 제공하는 것을 알 수 있는데, 상기 방법은 컴퓨터 장치(10)에서 사용을 위해 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션을 컴퓨터 장치(10)의 컴퓨터 플랫폼(12)으로 다운로딩하는 단계를 포함하며, 컴퓨터 플랫폼(12)은 미리 정의된 보안 프로토콜을 이용하여 애플리케이션을 다운로딩 및 실행하는 상주 애플리케이션 환경을 포함하며, 다운로딩은 컴퓨터 플랫폼(12)에 상주하는 다운로드 관리자(18)의 사용을 통해 발생하며, 다운로드 관리자(18)로 컴퓨터 장치(10)에서 애플리케이션을 실행한다. 다운로드 관리자(18)가 상주 애플리케이션 환경에 존재한다면, 다운로딩 단계는 기존 애플리케이션 다운로드 인터페이스를 이용할 수 있다.
상기 방법은 다운로드 관리자(19)를 이용하여 비검증되고 다운로딩된 애플리케이션을 저장하고 이어 다운로드 관리자(18)로 저장된 애플리케이션을 실행하는 단계를 더 포함한다. 미리 정의된 보안 프로토콜은 다운로딩된 애플리케이션 내의 인증의 존재의 위치를 통하는 것과 같이, 다운로딩된 애플리케이션의 특성의 검증일 수 있다. 더욱이, 상기 방법은 검증되지 않은 애플리케이션을 다운로딩하기 위한 요청이 행해진 후, 그리고 요청된 애플리케이션을 다운로딩하기 전에 컴퓨터 장치(10)의 컴퓨터 플랫폼(12)으로 다운로드 관리자(18)를 다운로딩하는 단계를 포함할 수 있다.
상기 방법은 결론적으로 컴퓨터 플랫폼(12)의 메모리(20)와 같은 프로그램 유지 컴퓨터 판독가능 매체의 실행에 의해 구현될 수 있다. 명령은 다양한 타입의 신호 베어링 또는 기본 데이터 저장소, 제2 또는 제3 매체에 상주할 수 있다. 매체는 무선 장치에 의해 액세스 가능하거나 무선 장치 내에 상주하는 예를 들어, RAM(미도시)을 포함할 수 있다. RAM, 디스켓, 또는 다른 2차 저장 매체에 포함되어 있지만, 명령은 DASD 저장소(예를 들어, 통상의 "하드 드라이브" 또는 RAID 어레이), 자기 테이프, 전자적 판독 전용 메모리(예를 들어, ROM, EPROM, 또는 EEPROM), 플래시 메모리 카드, 광 저장 장치(예를 들어, CD-ROM, WORM, DVD, 디지털 광 테이프), 페이퍼 "펀치" 카드, 또는 디지털 및 아날로그 송신 매체를 포함하는 다른 적절한 데이터 저장 매체와 같은 다양한 기계 판독 가능한 데이터 저장 매체에 저장될 수 있다.
전술한 설명이 본 발명의 실시예를 나타내지만, 다양한 변화가 당업자게 의해 본 발명의 사상을 벗어나지 않고 행해질 수 있다. 더욱이, 본 발명의 구성 요소가 단수로 설명되거나 청구되었지만, 단수의 정확한 설명에 제한 없이 다수가 고려될 수도 있다.

Claims (21)

  1. 무선 통신 능력을 갖는 컴퓨터 장치로서,
    무선 네트워크를 통해 데이터를 선택적으로 송신 및 수신하는 무선 통신 포털;
    적어도 애플리케이션을 다운로딩하기 위해 미리 정의된 보안 프로토콜을 이용하는 상주 애플리케이션 환경을 포함하고, 상기 포털을 통해 애플리케이션들을 선택적으로 다운로딩하는 컴퓨터 플랫폼;
    상기 컴퓨터 플랫폼과 통신하고 선택적으로 상기 컴퓨터 플랫폼으로 데이터를 전송하고 상기 컴퓨터 플랫폼으로부터 데이터를 수신하는 데이터 저장소; 및
    상기 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션들을 적어도 선택적으로 다운로딩하는, 상기 컴퓨터 플랫폼에 상주하는 다운로드 관리자를 포함하며,
    상기 다운로드 관리자는 상기 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션의 다운로딩에 대한 요청이 이루어진 후 상기 요청된 애플리케이션의 다운로딩 전에 상기 컴퓨터 플랫폼에 로딩되는, 컴퓨터 장치.
  2. 제1항에 있어서,
    상기 다운로드 관리자는 상주 애플리케이션 환경 내에 존재하고, 기존 애플리케이션 다운로드 인터페이스를 이용하는 것을 특징으로 하는 컴퓨터 장치.
  3. 제1항에 있어서,
    상기 상주 애플리케이션 환경에 의해 다운로딩된 애플리케이션은 즉시 실행되는 것을 특징으로 하는 컴퓨터 장치.
  4. 제1항에 있어서,
    상기 미리 정의된 보안 프로토콜에 부합하지 않는 다운로딩된 애플리케이션이 저장되고, 상기 저장된 애플리케이션은 상기 다운로드 관리자를 통해 실행되는 것을 특징으로 하는 컴퓨터 장치.
  5. 제1항에 있어서,
    상기 다운로드 관리자는 상기 미리 정의된 보안 프로토콜에 부합하지 않는 상기 다운로딩된 애플리케이션의 실행을 추가로 관리하는 것을 특징으로 하는 컴퓨터 장치.
  6. 제4항에 있어서,
    상기 다운로드 관리자는 상기 데이터 저장소에서 상기 미리 정의된 보안 프로토콜과 부합하지 않는 상기 다운로딩된 애플리케이션의 저장을 추가로 관리하는 것을 특징으로 하는 컴퓨터 장치.
  7. 제1항에 있어서,
    상기 미리 정의된 보안 프로토콜은 상기 애플리케이션이 상기 미리 정의된 보안 프로토콜에 부합하는지 여부를 결정하기 위해 상기 애플리케이션의 출처(origination)를 검증하는 것을 특징으로 하는 컴퓨터 장치.
  8. 제1항에 있어서,
    상기 미리 정의된 보안 프로토콜은 상기 다운로딩된 애플리케이션 내의 인증의 존재를 검증하는 것을 특징으로 하는 컴퓨터 장치.
  9. 제5항에 있어서,
    상기 다운로드 관리자는 상기 상주 애플리케이션 환경 외부에서 상기 미리 정의된 보안 프로토콜에 부합하지 않는 상기 다운로딩된 애플리케이션을 실행하는 것을 특징으로 하는 컴퓨터 장치.
  10. 무선 통신 능력을 갖는 컴퓨터 장치로서,
    무선 네트워크를 통해 데이터를 선택적으로 송신 및 수신하는 무선 통신 수단;
    상기 무선 통신 수단을 통해 애플리케이션들을 선택적으로 다운로딩하며, 적어도 애플리케이션을 다운로딩하기 위해 미리 정의된 보안 프로토콜을 이용하는 컴퓨터 수단; 및
    상기 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션들을 선택적으로 다운로딩하는 수단을 포함하며,
    상기 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션들을 선택적으로 다운로딩하는 수단은 상기 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션의 다운로딩에 대한 요청이 이루어진 후 상기 요청된 애플리케이션의 다운로딩 전에 상기 컴퓨터 수단에 로딩되는, 컴퓨터 장치.
  11. 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션을 컴퓨터 장치에서 사용하기 위해 무선 접속을 통해 상기 컴퓨터 장치로 선택적으로 다운로딩하는 방법으로서,
    상기 컴퓨터 장치에서 사용하기 위해 상기 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션의 다운로딩을 요청하는 단계;
    다운로드 관리자를 상기 컴퓨터 장치의 컴퓨터 플랫폼에 로딩하는 단계;
    상기 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션을 상기 컴퓨터 장치의 상기 컴퓨터 플랫폼으로 다운로딩하는 단계 - 상기 컴퓨터 플랫폼은 적어도 애플리케이션을 다운로딩하기 위해 미리 정의된 보안 프로토콜을 이용하여 애플리케이션들을 다운로딩하고 실행하는 상주 애플리케이션 환경을 포함하며, 상기 부합하지 않는 애플리케이션의 다운로딩은 상기 컴퓨터 플랫폼에 상주하는 다운로드 관리자의 사용을 통해 일어남 -; 및
    상기 컴퓨터 장치에서 상기 다운로드 관리자에 의해 상기 부합하지 않는 애플리케이션을 실행하는 단계를 포함하는, 다운로딩 방법.
  12. 제11항에 있어서,
    상기 다운로드 관리자는 상주 애플리케이션 환경 내에 존재하며, 상기 다운로딩 단계는 기존 애플리케이션 다운로드 인터페이스를 이용하는 것을 특징으로 하는 다운로딩 방법.
  13. 제11항에 있어서,
    상기 미리 정의된 보안 프로토콜에 부합하지 않는 상기 다운로딩된 애플리케이션을 상기 다운로드 관리자에 의해 저장하는 단계; 및
    상기 다운로드 관리자를 통해 상기 저장된 애플리케이션을 실행하는 단계를 더 포함하는 것을 특징으로 하는 다운로딩 방법.
  14. 제11항에 있어서,
    상기 다운로딩된 애플리케이션이 상기 미리 정의된 보안 프로토콜에 부합하는지 여부를 결정하기 위해 상기 미리 정의된 보안 프로토콜로서 상기 다운로딩된 애플리케이션의 특성을 검증하는 단계를 더 포함하는 것을 특징으로 하는 다운로딩 방법.
  15. 제14항에 있어서,
    상기 다운로딩된 애플리케이션의 특성을 검증하는 단계는 상기 다운로딩된 애플리케이션 내에 인증의 존재를 검증하는 것을 특징으로 하는 다운로딩 방법.
  16. 제11항에 있어서,
    상기 다운로드 관리자에 의해 상기 다운로딩된 애플리케이션을 실행하는 단계는 상기 상주 애플리케이션 환경 외부에서 일어나는 것을 특징으로 하는 다운로딩 방법.
  17. 삭제
  18. 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션을 컴퓨터 장치에서 사용하기 위해 무선 접속을 통해 상기 컴퓨터 장치로 선택적으로 다운로딩하는 방법으로서,
    상기 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션의 다운로딩을 요청하는 단계;
    다운로드 관리자를 상기 컴퓨터 장치의 컴퓨터 플랫폼에 로딩하는 단계;
    상기 컴퓨터 장치에서 상주 애플리케이션 환경 내에서 사용하기 위해 상기 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션을 상기 컴퓨터 장치의 상기 컴퓨터 플랫폼으로 다운로딩하는 단계; 및
    상기 상주 애플리케이션 환경 외부의 상기 컴퓨터 장치에서 상기 다운로딩된 애플리케이션을 실행하는 단계를 포함하는, 다운로딩 방법.
  19. 컴퓨터로 읽을 수 있는 매체로서,
    무선 컴퓨터 장치에 의해 프로그램이 실행될 때,
    미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션을 상기 컴퓨터 장치에서 사용하기 위해 무선 접속을 통해 상기 컴퓨터 장치의 컴퓨터 플랫폼으로 다운로딩하는 단계 - 상기 컴퓨터 플랫폼은 적어도 애플리케이션을 다운로딩하기 위해 미리 정의된 보안 프로토콜을 이용하여 애플리케이션들을 다운로딩하고 실행하는 상주 애플리케이션 환경을 포함하며, 상기 다운로딩 단계는 상기 컴퓨터 플랫폼상에서 다운로드 관리자의 사용을 통해 일어남 -; 및
    상기 컴퓨터 장치에서 상기 다운로드 관리자에 의해 상기 부합하지 않는 애플리케이션을 실행하는 단계를 상기 컴퓨터 장치가 수행하게 하는 프로그램을 기록하며,
    상기 다운로드 관리자는 상기 미리 정의된 보안 프로토콜에 부합하지 않는 애플리케이션의 다운로딩에 대한 요청이 이루어진 후 상기 요청된 애플리케이션의 다운로딩 전에 상기 컴퓨터 플랫폼에 로딩되는, 컴퓨터로 읽을 수 있는 매체.
  20. 제19항에 있어서,
    상기 다운로드 관리자는 상기 컴퓨터 플랫폼에 상주하는 것을 특징으로 하는 컴퓨터로 읽을 수 있는 매체.
  21. 삭제
KR1020067020485A 2004-03-01 2005-02-25 무선 장치 동작 환경에서 비검증된 프로그램들의 실행 KR100883699B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/791,160 2004-03-01
US10/791,160 US8549166B2 (en) 2004-03-01 2004-03-01 Execution of unverified programs in a wireless, device operating environment
PCT/US2005/005908 WO2005084202A2 (en) 2004-03-01 2005-02-25 Execution of unverified programs in a wireless device operating environment

Publications (2)

Publication Number Publication Date
KR20070008619A KR20070008619A (ko) 2007-01-17
KR100883699B1 true KR100883699B1 (ko) 2009-02-12

Family

ID=34887572

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067020485A KR100883699B1 (ko) 2004-03-01 2005-02-25 무선 장치 동작 환경에서 비검증된 프로그램들의 실행

Country Status (15)

Country Link
US (1) US8549166B2 (ko)
EP (1) EP1756723A4 (ko)
JP (1) JP2007528064A (ko)
KR (1) KR100883699B1 (ko)
CN (1) CN101422070A (ko)
AR (1) AR047827A1 (ko)
AU (1) AU2005218288A1 (ko)
BR (1) BRPI0508317A (ko)
CA (1) CA2557811A1 (ko)
IL (1) IL177813A0 (ko)
MX (1) MXPA06010079A (ko)
PE (1) PE20060092A1 (ko)
RU (1) RU2339076C2 (ko)
TW (1) TW200541286A (ko)
WO (1) WO2005084202A2 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007052696A1 (ja) * 2005-11-02 2007-05-10 Nec Corporation 端末機能補完方法およびシステム、該システムを構成する通信端末、周辺端末および通信端末管理サーバ
US20080276299A1 (en) * 2007-04-02 2008-11-06 Samsung Electronics Co., Ltd. Wireless terminal apparatus and method of protecting system resources
CN100478897C (zh) * 2007-12-04 2009-04-15 腾讯科技(深圳)有限公司 实现在游戏运行过程中自动验证支付的方法、装置和系统
JP5332838B2 (ja) * 2009-04-07 2013-11-06 ソニー株式会社 情報処理装置、および実行制御方法
KR100989613B1 (ko) * 2009-12-08 2010-10-26 (주)제이모바일 비안드로이드 플랫폼에서 안드로이드 어플리케이션을 실행하는 단말장치
US8601284B2 (en) 2010-01-27 2013-12-03 International Business Machines Corporation Secure connected digital media platform
CN101770371A (zh) * 2010-03-17 2010-07-07 华为终端有限公司 应用主题内容预览方法及装置
US8479176B2 (en) * 2010-06-14 2013-07-02 Intel Corporation Register mapping techniques for efficient dynamic binary translation
KR101308226B1 (ko) * 2011-10-28 2013-09-13 에스케이씨앤씨 주식회사 모바일 기기에 장착된 se를 위한 통신 인터페이스 방법 및 이를 적용한 se
WO2014042632A1 (en) * 2012-09-12 2014-03-20 Empire Technology Development, Llc Compound certifications for assurance without revealing infrastructure
US20140129686A1 (en) * 2012-11-08 2014-05-08 Nvidia Corporation Mobile computing device configured to filter and detect application profiles, a method of manufacturing the same and an external source for delivering hierarchical filtered application profiles to mobile computing devices
US9491223B2 (en) * 2013-02-17 2016-11-08 Onavo Mobile Ltd. Techniques for determining a mobile application download attribution
CN103209407B (zh) * 2013-04-15 2018-11-20 百度在线网络技术(北京)有限公司 移动终端中应用程序的下载管理方法、系统和移动终端

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030060629A (ko) * 2002-01-10 2003-07-16 한국과학기술원 모바일 에이전트를 이용한 안티 바이러스 시스템
KR20040000323A (ko) * 2002-06-24 2004-01-03 마이크로소프트 코포레이션 보안 미디어 경로 방법, 시스템 및 아키텍처

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5573506A (en) 1994-11-25 1996-11-12 Block Medical, Inc. Remotely programmable infusion system
US6317742B1 (en) * 1997-01-09 2001-11-13 Sun Microsystems, Inc. Method and apparatus for controlling software access to system resources
SE512110C2 (sv) 1997-06-17 2000-01-24 Ericsson Telefon Ab L M System och förfarande för att kundanpassa trådlösa kommunikationsenheter
US6035303A (en) 1998-02-02 2000-03-07 International Business Machines Corporation Object management system for digital libraries
US7542944B1 (en) 1999-02-17 2009-06-02 Diebold, Incorporated Method and system for connecting services to an automated transaction machine
JP3161599B2 (ja) 1998-07-10 2001-04-25 日本電気株式会社 移動電話システム
US6691230B1 (en) * 1998-10-15 2004-02-10 International Business Machines Corporation Method and system for extending Java applets sand box with public client storage
US6226675B1 (en) 1998-10-16 2001-05-01 Commerce One, Inc. Participant server which process documents for commerce in trading partner networks
SE516779C2 (sv) * 1999-10-01 2002-02-26 Ericsson Telefon Ab L M Bärbar kommunikationsapparat med ett användargränssnitt samt en arbetsmetod för densamma
JP2001117769A (ja) 1999-10-20 2001-04-27 Matsushita Electric Ind Co Ltd プログラム実行装置
US6601169B2 (en) * 1999-12-30 2003-07-29 Clyde Riley Wallace, Jr. Key-based secure network user states
US7099916B1 (en) * 2000-01-06 2006-08-29 International Business Machines Corporation System and method for downloading a virus-free file certificate from a file server
US20010051928A1 (en) * 2000-04-21 2001-12-13 Moshe Brody Protection of software by personalization, and an arrangement, method, and system therefor
KR100359928B1 (ko) 2000-07-03 2002-11-07 주식회사 모빌탑 휴대통신단말기용 콘텐츠 프로그램 전송방법 및 그 실행방법
US20020026474A1 (en) 2000-08-28 2002-02-28 Wang Lawrence C. Thin client for wireless device using java interface
WO2002044892A2 (en) 2000-11-28 2002-06-06 4Thpass Inc. Method and system for maintaining and distributing wireless applications
AU2002254289B2 (en) 2001-03-19 2006-12-07 Qualcomm Incorporated Dynamically downloading and executing system services on a wireless device
US7099663B2 (en) 2001-05-31 2006-08-29 Qualcomm Inc. Safe application distribution and execution in a wireless environment
US20030145316A1 (en) * 2002-01-25 2003-07-31 Mckinlay Eric System, method and computer program product for initiating a software download
US20040093595A1 (en) * 2002-08-08 2004-05-13 Eric Bilange Software application framework for network-connected devices
WO2004015553A1 (en) 2002-08-13 2004-02-19 Nokia Corporation Computer architecture for executing a program in a secure of insecure mode
US7930537B2 (en) * 2002-08-13 2011-04-19 Nokia Corporation Architecture for encrypted application installation
US20040043753A1 (en) * 2002-08-30 2004-03-04 Wake Susan L. System and method for third party application sales and services to wireless devices
US20040081110A1 (en) * 2002-10-29 2004-04-29 Nokia Corporation System and method for downloading data to a limited device
US20040220998A1 (en) * 2002-12-26 2004-11-04 Michael Shenfield System and method of building wireless component applications
US20040172447A1 (en) * 2003-01-14 2004-09-02 Miller Dale Christopher Systems and methods for managing data
US7467417B2 (en) * 2003-06-18 2008-12-16 Architecture Technology Corporation Active verification of boot firmware
US8060860B2 (en) * 2005-04-22 2011-11-15 Apple Inc. Security methods and systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030060629A (ko) * 2002-01-10 2003-07-16 한국과학기술원 모바일 에이전트를 이용한 안티 바이러스 시스템
KR20040000323A (ko) * 2002-06-24 2004-01-03 마이크로소프트 코포레이션 보안 미디어 경로 방법, 시스템 및 아키텍처

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
A. Partida, D. Andina, "Applied Cryptography in Java," Security Technology, 1999, Proceedings, IEEE 3rd Annual 1999 International Carnahan Conference, pp.345-348 (1999.10.5 *
A. Partida, D. Andina, "Applied Cryptography in Java," Security Technology, 1999, Proceedings, IEEE 3rd Annual 1999 International Carnahan Conference, pp.345-348 (1999.10.5.) *
A. Partida, D. Andina, "Applied Cryptography in Java," Security Technology, 1999, Proceedings, IEEE 3rd Annual 1999 International Carnahan Conference, pp.345-348 (1999.10.5.)*

Also Published As

Publication number Publication date
EP1756723A2 (en) 2007-02-28
US8549166B2 (en) 2013-10-01
AR047827A1 (es) 2006-02-22
JP2007528064A (ja) 2007-10-04
PE20060092A1 (es) 2006-03-01
KR20070008619A (ko) 2007-01-17
CA2557811A1 (en) 2005-09-15
CN101422070A (zh) 2009-04-29
IL177813A0 (en) 2006-12-31
RU2006134628A (ru) 2008-04-10
US20050193101A1 (en) 2005-09-01
EP1756723A4 (en) 2010-01-20
AU2005218288A1 (en) 2005-09-15
MXPA06010079A (es) 2006-12-15
WO2005084202A2 (en) 2005-09-15
RU2339076C2 (ru) 2008-11-20
TW200541286A (en) 2005-12-16
WO2005084202A3 (en) 2009-04-09
BRPI0508317A (pt) 2007-07-24

Similar Documents

Publication Publication Date Title
KR100883699B1 (ko) 무선 장치 동작 환경에서 비검증된 프로그램들의 실행
JP4897837B2 (ja) ユーザインターフェースコンポーネントをワイヤレスデバイスにダウンロードするシステムおよび方法
US8122100B2 (en) Multiple object download
JP5027807B2 (ja) 信頼される環境をサポートするコンピュータ可読コンポーネントの自動更新
KR100815099B1 (ko) 무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트삭제 및 리로딩을 위한 시스템 및 장치
US9690761B1 (en) Systems and methods for providing mobile browser access to mobile device functionalities
JP4629304B2 (ja) 通信装置、プログラムおよび記録媒体
CN102246144A (zh) 用于在计算机平台上安装程序的方法和装置
JP2004502233A (ja) 共有名を用いてコンポーネントにセキュリティを提供するシステムおよび方法
KR20110124342A (ko) 모델을 사용하여 실행가능 프로그램을 조사하는 방법 및 장치
JP5248657B2 (ja) デバイス上におけるレジストリベースの自動インストール及びコンポーネントハンドリングのためのシステム
KR101453742B1 (ko) 웹 어플리케이션 실행을 위한 보안 제공 장치 및 방법
EP1393178A1 (en) Wireless device mobile application security system
US20030066059A1 (en) Method for executing java application midlet using communication among java applications
KR101083229B1 (ko) 이동 단말의 필요 어플리케이션 다운로드 방법, 장치, 시스템, 및 기록 매체
CN113110849A (zh) 按需加载资源
KR100865640B1 (ko) 무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트삭제 및 리로딩을 위한 시스템 및 장치
CN114398068A (zh) 渠道接入的方法、系统、电子装置及存储介质
JP4680485B2 (ja) 端末装置、プログラムおよび記録媒体
KR100864387B1 (ko) 무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트삭제 및 리로딩을 위한 시스템 및 장치
JP2008521111A (ja) 電子デバイス内の安全なプログラム解釈方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee