WO2002025428A3 - Method for remote incremental program verification and installation on resource-constrained devices - Google Patents

Method for remote incremental program verification and installation on resource-constrained devices Download PDF

Info

Publication number
WO2002025428A3
WO2002025428A3 PCT/US2001/028688 US0128688W WO0225428A3 WO 2002025428 A3 WO2002025428 A3 WO 2002025428A3 US 0128688 W US0128688 W US 0128688W WO 0225428 A3 WO0225428 A3 WO 0225428A3
Authority
WO
WIPO (PCT)
Prior art keywords
program unit
content
resource
api
constrained device
Prior art date
Application number
PCT/US2001/028688
Other languages
French (fr)
Other versions
WO2002025428A2 (en
Inventor
Judith E Schwabe
Original Assignee
Sun Microsystems Inc
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
Priority claimed from US09/661,684 external-priority patent/US6986132B1/en
Priority claimed from US09/661,582 external-priority patent/US6981245B1/en
Priority claimed from US09/661,581 external-priority patent/US6883163B1/en
Application filed by Sun Microsystems Inc filed Critical Sun Microsystems Inc
Priority to EP01968867A priority Critical patent/EP1417571A2/en
Priority to CA002422634A priority patent/CA2422634A1/en
Priority to AU8907801A priority patent/AU8907801A/en
Publication of WO2002025428A2 publication Critical patent/WO2002025428A2/en
Publication of WO2002025428A3 publication Critical patent/WO2002025428A3/en

Links

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/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44589Program code verification, e.g. Java bytecode verification, proof-carrying code

Abstract

A method for remote incremental program verification includes receiving content verified by at least one content provider, installing the content on a resource-constrained device and issuing the resource-constrained device to an end user. The content includes at least one program unit and each program unit includes an Application Programming Interface (API) definition file and an implementation. Each API definition file defines items in its associated program unit that are made accessible to one or more other program units, each implementation includes executable code corresponding to the API definition file and the executable code includes type specific instructions and data. The verification includes determining binary compatibility of earlier program unit implementations with later program unit implementations using their associated API definition files. According to one aspect, subsequent installation of content on the resource-constrained device is disabled. A resource-constrained device includes a memory for providing content verified by at least one content provider and a virtual machine that is capable of executing instructions included within the content. The content includes at least one program unit and each program unit includes an Application Programming Interface (API) definition file and an implementation. The verification includes determining binary compatibility of earlier program unit implementations with later program unit implementations using their associated API definition files.
PCT/US2001/028688 2000-09-14 2001-09-14 Method for remote incremental program verification and installation on resource-constrained devices WO2002025428A2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP01968867A EP1417571A2 (en) 2000-09-14 2001-09-14 Method for remote incremental program verification and installation on resource-constrained devices
CA002422634A CA2422634A1 (en) 2000-09-14 2001-09-14 Populating binary compatible resource-constrained devices with content verified using api definitions
AU8907801A AU8907801A (en) 2000-09-14 2001-09-14 Populating binary compatible resource-constrained devices with content verified using api definitions

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US09/661,684 US6986132B1 (en) 2000-04-28 2000-09-14 Remote incremental program binary compatibility verification using API definitions
US09/661,582 2000-09-14
US09/661,582 US6981245B1 (en) 2000-09-14 2000-09-14 Populating binary compatible resource-constrained devices with content verified using API definitions
US09/661,581 US6883163B1 (en) 2000-04-28 2000-09-14 Populating resource-constrained devices with content verified using API definitions

Publications (2)

Publication Number Publication Date
WO2002025428A2 WO2002025428A2 (en) 2002-03-28
WO2002025428A3 true WO2002025428A3 (en) 2004-02-26

Family

ID=29554277

Family Applications (3)

Application Number Title Priority Date Filing Date
PCT/US2001/028579 WO2002023331A2 (en) 2000-09-14 2001-09-12 Remote incremental program binary compatibility verification using api definitions
PCT/US2001/028687 WO2002025427A2 (en) 2000-09-14 2001-09-14 Method for remote incremental program verification and installation on resource-constrained devices
PCT/US2001/028688 WO2002025428A2 (en) 2000-09-14 2001-09-14 Method for remote incremental program verification and installation on resource-constrained devices

Family Applications Before (2)

Application Number Title Priority Date Filing Date
PCT/US2001/028579 WO2002023331A2 (en) 2000-09-14 2001-09-12 Remote incremental program binary compatibility verification using api definitions
PCT/US2001/028687 WO2002025427A2 (en) 2000-09-14 2001-09-14 Method for remote incremental program verification and installation on resource-constrained devices

Country Status (3)

Country Link
AU (3) AU9084201A (en)
CA (1) CA2422634A1 (en)
WO (3) WO2002023331A2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7636172B2 (en) * 2002-07-31 2009-12-22 Ricoh Company, Ltd. Image forming apparatus, information processing apparatus and version check method using an API from an application
ATE366912T1 (en) * 2003-05-07 2007-08-15 Harman Becker Automotive Sys METHOD AND DEVICE FOR VOICE OUTPUT, DATA CARRIER WITH VOICE DATA
DE102004013904B4 (en) * 2004-03-22 2005-12-22 Giesecke & Devrient Gmbh Verified program code downloading system for JAVA smart card, has processing unit, and verifier to verify codes and provide codes to carrier, where unit and verifier are designed so that codes are loaded to carrier only after verification
DE102004048262A1 (en) * 2004-10-04 2006-04-06 Giesecke & Devrient Gmbh Method for loading an application into a data carrier
US8099718B2 (en) * 2007-11-13 2012-01-17 Intel Corporation Method and system for whitelisting software components
US9058330B2 (en) 2012-10-17 2015-06-16 Wal-Mart Stores, Inc. Verification of complex multi-application and multi-node deployments
US9201642B2 (en) 2013-03-15 2015-12-01 International Business Machines Corporation Extending platform trust during program updates

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0498130A2 (en) * 1991-02-08 1992-08-12 International Business Machines Corporation Apparatus and method for verifying compatibility of system components
US5613101A (en) * 1993-05-05 1997-03-18 Apple Computer, Inc. Method and apparatus for determining at execution compatibility among client and provider components where provider version linked with client may differ from provider version available at execution
EP0778520A2 (en) * 1995-12-08 1997-06-11 Sun Microsystems, Inc. System and method for executing verifiable programs with facility for using non-verifiable programs from trusted sources
WO2000025278A1 (en) * 1998-10-27 2000-05-04 Visa International Service Association Delegated management of smart card applications
WO2000046666A2 (en) * 1999-02-02 2000-08-10 Sun Microsystems, Inc. Object-oriented instruction set for resource-constrained devices

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2204973A (en) * 1987-05-19 1988-11-23 Gen Electric Co Plc Data processing system
US6328217B1 (en) * 1997-05-15 2001-12-11 Mondex International Limited Integrated circuit card with application history list

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0498130A2 (en) * 1991-02-08 1992-08-12 International Business Machines Corporation Apparatus and method for verifying compatibility of system components
US5613101A (en) * 1993-05-05 1997-03-18 Apple Computer, Inc. Method and apparatus for determining at execution compatibility among client and provider components where provider version linked with client may differ from provider version available at execution
EP0778520A2 (en) * 1995-12-08 1997-06-11 Sun Microsystems, Inc. System and method for executing verifiable programs with facility for using non-verifiable programs from trusted sources
WO2000025278A1 (en) * 1998-10-27 2000-05-04 Visa International Service Association Delegated management of smart card applications
WO2000046666A2 (en) * 1999-02-02 2000-08-10 Sun Microsystems, Inc. Object-oriented instruction set for resource-constrained devices

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SURESH SUBRAMANIAN ED - INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS: "CRUISE: USING INTERFACE HIERARCHIES TO SUPPORT SOFTWARE EVOLUTION", PROCEEDINGS OF THE CONFERENCE ON SOFTWARE MAINTENANCE. PHOENIX, OCT. 24 - 27, 1988, PROCEEDINGS OF THE CONFERENCE ON SOFTWARE MAINTENANCE. FROM 1994 INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, WASHINGTON, IEEE COMP. SOC. PRESS, US, 24 October 1988 (1988-10-24), pages 132 - 142, XP000010770 *

Also Published As

Publication number Publication date
WO2002025427A3 (en) 2004-02-26
AU9084201A (en) 2002-03-26
WO2002023331A3 (en) 2004-02-26
WO2002025427A2 (en) 2002-03-28
WO2002025428A2 (en) 2002-03-28
CA2422634A1 (en) 2002-03-28
WO2002023331A2 (en) 2002-03-21
AU8907801A (en) 2002-04-02
AU9089201A (en) 2002-04-02

Similar Documents

Publication Publication Date Title
TW358187B (en) System for transmission of embedded applications over a network
EP1766425A4 (en) A meter device
WO2000046666A3 (en) Object-oriented instruction set for resource-constrained devices
ATE217427T1 (en) COMPUTER FILE INTEGRITY CHECK
PL356340A1 (en) Controlling access to a resource by a program using a digital signature
CN102830992A (en) Plug-in loading method and system
WO2005081741A3 (en) Techniques for modifying the behavior of documents delivered over a computer network
WO2001084799A3 (en) Use-sensitive distribution of data files between users
WO2004051395A3 (en) Networked computing using objects by permitting interactivity between at least two objects over a network
WO2003069470A1 (en) Application creation system, creation apparatus, creation method, application providing system, providing apparatus, providing method, application operation system, operation apparatus, and operation method
WO2005008469A3 (en) System and method for generating a graphical user interface (gui) element
NO20032811L (en) Object-oriented simulation of hydrocarbon reservoir system
WO2002041139A3 (en) Resource files for electronic devices
US9405939B2 (en) Data processing on a non-volatile mass storage device
WO2006135603A3 (en) System, method and computer program product for developing, configuring, installing and testing software
CN104731869B (en) The page shows method and device
IL176378A0 (en) Method for activation of an access to a computer system or to a programme
WO2002025428A3 (en) Method for remote incremental program verification and installation on resource-constrained devices
WO2001095107A3 (en) Distributed computer system using a graphical user interface toolkit
CN104580378A (en) Installation package processing method and device
SE0200417D0 (en) A method and apparatus for reconfiguring a server system
WO2004003733A3 (en) Software download into a receiver
CN101751258B (en) Intelligent card and developing method, system and deployment method for intelligent card application
WO2000072112A3 (en) Obfuscation of executable code
CN101179378B (en) Method and system for executing plug-in unit

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2422634

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 2001968867

Country of ref document: EP

Ref document number: 2001289078

Country of ref document: AU

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWP Wipo information: published in national office

Ref document number: 2001968867

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: JP