CA2448979C

Safe application distribution and execution in a wireless environment

Abstract

The present invention provides safe and secure application distribution and execution by providing systems and methods that test an application to ensure that it satisfies predetermined criteria associated with the environment in which it will execute. Furthermore, by using rules and permission lists, application removal, and a modification detection technique, such as digital signatures, the present invention provides mechanisms to safely distribute and execute tested, or untested, applications by determining whether the application has been modified, determining if it has permission to execute in a given wireless device environment, and removing the application.

CA2448979C, drawing sheet 1
Sheet 1 of 8

Term

Term ended

Expired 23 May 2022, 4.3 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

72 claims: 26 independent, 46 dependent

  1. 1
    CA 02448979 2007-05-23 74769-776 CLAIMS:1. A method for a server processing and distributing an application for use on a wireless device communicating over a wireless network comprising: receiving the application and a first identification information associated with the application, said first identification information usable to confirm an identity of a source of the application;certifying the application satisfies each criterion in a set of predetermined criterions, wherein each criterion is respectively associated with a wireless environment ;after said certifying, assigning a set of permissions to the application, said set of permissions having a plurality of permissions each associated with a respective criterion in said set of predetermined criterions;and transmitting the application, the set of permissions, and a second identification information usable to confirm an identity of said server, to the wireless device ;wherein said application is independent of any act for performing wireless communication between the wireless device and the wireless network.
  2. 5
    A system for processing and distributing an application for use on a wireless device communicating over a wireless network, comprising:a carrier network;an infrastructure for supporting the wireless network, coupled to said carrier network;and a server, coupled to said carrier network, and configured to: receive the application and a first identification information associated with the application, said first identification information usable to confirm an identity of a source of the application;certify that the application satisfies each criterion in a set of predetermined criterions, wherein each criterion is respectively associated with a wireless environment ;after said certify, assign a set of permissions to the application, said set of permissions having a plurality of permissions each associated with a respective criterion in said set of predetermined criterions, and transmit the application, the set of permissions, and a second identification information usable to confirm an CA 02448979 2007-05-23 74769-776 identity of said server, to the wireless device over said carrier network and said infrastructure;wherein said application is independent of any act for performing wireless communication between the wireless device and the wireless network.
  3. 8
    A system for processing and distributing an application for use on a wireless device communicating over a wireless network, comprising:a carrier network means;an infrastructure means for supporting the wireless network, coupled to said carrier network;and CA 02448979 2007-05-23 74769-776 a server means, coupled to said carrier network, the server comprising: a means for receiving the application and a first identification information associated with the application, said first identification information usable to confirm an identity of a source of the application;a means for certifying the application satisfies each criterion in a set of predetermined criterions, wherein each criterion is respectively associated with a wireless environment ;a means for assigning a set of permissions to the application after the application has been certified by the means for certifying, said set of permissions having a plurality of permissions each associated with a respective criterion in said set of predetermined criterions;and a means for transmitting the application, the set of permissions, and a second identification information usable to confirm an identity of said server, to the wireless device;wherein said application is independent of any act for performing wireless communication between the wireless device and the wireless network.
  4. 9
    A method of processing an application for execution on a wireless device communicating over a wireless network, comprising:receiving, from a server over the wireless network, a transmission comprising the application, a set of permissions, and an identification information;CA 02448979 2007-05-23 74769-776 determining, based upon evaluating a rule previously stored in the wireless device on said set of permissions, whether to enable the application for execution;executing the application if the application has been enabled for execution;and removing the application from the wireless device if the application has not been enabled for execution.
  5. 11
    A wireless device which communicates over a wireless network and is capable of executing an application, comprising :a wireless interface for receiving the application, a set of permissions, and an identification information;a computer platform, coupled to said wireless interface, said computer platform comprising a first storage for storing a previously defined rule, and a second storage for storing the application, the set of permissions, and the identification information;wherein the computer platform is configured to determine, based upon evaluating the rule on the set of permissions : CA 02448979 2007-05-23 74769-776 whether to enable the application for execution;execute the application if the application has been enabled for execution;and remove the application if the application has not been enabled for execution;and wherein the application is independent of any act for performing wireless communication between the wireless device and the wireless network.
  6. 12
    A wireless device which communicates over a wireless network and is capable of executing an application, comprising :a wireless interface means for receiving the application, a set of permissions, and an identification information;a computer platform means, coupled to said wireless interface, said computer platform means comprising: a first storage means for storing a previously defined rule;a second storage means for storing the application, the set of permissions, and the identification information;and a means for determining, based upon evaluating the rule on the set of permissions whether to enable the application for execution, execute the application if the application has been enabled for execution, and remove the application if the application has not been enabled for execution;CA 02448979 2007-05-23 74769-776 wherein the application is independent of any act for performing wireless communication between the wireless device and the wireless network. SMART & BIGGAR OTTAWA, CANADA PATENT AGENTS CA 02448979 2010-10-29 74769-776
  7. 13
    A method for a server processing and distributing an application for use on a wireless device communicating over a wireless network, comprising:receiving the application and a first identification information associated with the application, said application being independent of any act for performing wireless communication between the wireless device and the wireless network, said first identification information being usable to confirm an identity of a source of the application;determining that the application satisfies each criterion in a set of predetermined criteria, wherein at least one criterion in the set of predetermined criteria is established by a managing authority for a managed environment ;after said determining, assigning a set of permissions to the application, each permission in the set of permissions being associated with a respective criterion in said set of predetermined criteria;and transmitting the application and the set of permissions to the wireless device.
  8. 19
    A system for processing and distributing an application for use on a wireless device communicating over a wireless network, comprising:a carrier network;an infrastructure for supporting the wireless network, coupled to said carrier network;and a server, coupled to said carrier network, and configured to: receive the application and a first identification information associated with the application, said application being independent of any act for performing wireless communication between the wireless device and the wireless network, said first identification information being usable to confirm an identity of a source of the application;CA 02448979 2010-10-29 74769-776 determine that the application satisfies each criterion in a set of predetermined criteria, wherein at least one criterion in the set of predetermined criteria is established by a managing authority for a managed environment ;after said determination, assign a set of permissions to the application, each permission in the set of permissions being associated with a respective criterion in said set of predetermined criteria;and transmit the application and the set of permissions to the wireless device.
  9. 22
    A system for processing and distributing an application for use on a wireless device communicating over a wireless network, comprising:a carrier network means;an infrastructure means for supporting the wireless network, coupled to said carrier network;and a server means, coupled to said carrier network means, the server means comprising: a means for receiving the application and a first identification information associated with the application, said application being independent of any act for performing wireless communication between the wireless device and the wireless network, said first identification information being usable to confirm an identity of a source of the application;a means for determining that the application satisfies each criterion in a set of predetermined criteria, wherein at least one criterion in the set of predetermined criteria is established by a managing authority for a managed environment;a means for assigning a set of permissions to the application, each permission in the set of permissions being associated with a respective criterion in said set of predetermined criteria;and a means for transmitting the application and the set of permissions to the wireless device. CA 02448979 2010-10-29 74769-776
  10. 23
    A method of processing an application for execution on a wireless device communicating over a wireless network, comprising:receiving, from a server over the wireless network, a transmission comprising the application and a set of permissions;determining, based upon evaluating a rule previously stored in the wireless device on said set of permissions, whether to enable the application for execution on the wireless device;executing the application if the application has been enabled for execution;and disabling the application if the application has not been enabled for execution on the wireless device.
  11. 29
    A wireless device which communicates over a wireless network and is capable of executing an application, comprising :a wireless interface for receiving the application and a set of permissions, the application being independent of any act for performing wireless communication between the wireless device and the wireless network;and a computer platform coupled to said wireless interface, said computer platform comprising a first storage for storing a previously defined rule, and a second storage for storing the application, the set of permissions, and the identification information, wherein the computer platform is configured to determine, based upon evaluating one or more rules against the set of permissions: whether to enable the application for execution on the wireless device;and whether to enable the application for execution in the wireless network;the computer platform being further configured to: CA 02448979 2010-10-29 74769-776 execute the application if the application has been enabled for execution;and remove the application if the application has not been enabled for execution.
  12. 32
    A wireless device which communicates over a wireless network and is capable of executing an application, comprising :a wireless interface means for receiving the application, a set of permissions, and an identification information, the application being independent of any act for performing wireless communication between the wireless device and the wireless network;and a computer platform means, coupled to said wireless interface, said computer platform means comprising: a first storage means for storing one or more previously defined rules;a second storage means for storing the application, the set of permissions, and the identification information;a means for determining, based upon evaluating at least one rule against the set of permissions whether to CA 02448979 2010-10-29 74769-776 enable the application for execution on the wireless device and whether to enable the application for execution in the wireless network;a means for executing the application if the application has been enabled for execution on the wireless device and in the wireless network;and a means for disabling the application if the application has not been enabled for execution either on the wireless device or in the wireless network.
  13. 33
    A computer-readable medium containing computerexecutable instructions for distributing an application for use on a wireless device communicating over a wireless network, comprising the steps of:receiving the application and a first identification information associated with the application, the application being independent of any act for performing wireless communication between the wireless device and the wireless network, the first identification information being used to confirm an identity of a source of the application;determining that the application satisfies each criterion in a set of criteria, wherein at least one criterion in the set of criteria is established by a managing authority for a managed environment;after the determining, assigning a set of permissions to the application, each permission in the set of permissions being associated with a respective criterion in the set of criteria;and transmitting the application and the set of permissions to the wireless device. CA 02448979 2010-10-29 74769-776
  14. 39
    A system for processing and distributing an application for use on a wireless device communicating over a wireless network, comprising:a server configured to: receive the application and a first identification information associated with the application, the application being independent of any act for performing wireless communication between the wireless device and the wireless network, the first identification information being used to confirm an identity of a source of the application;CA 02448979 2010-10-29 74769-776 determine that the application satisfies each criterion in a set of criteria, wherein at least one criterion in the set of criteria is established by a managing authority for a managed environment;after the determination, assign a set of permissions to the application, each permission in the set of permissions being associated with a respective criterion in the set of criteria;and transmit the application and the set of permissions to the wireless device.
  15. 42
    A system for processing and distributing an application for use on a wireless device communicating over a wireless network, comprising:a server means, comprising: means for receiving the application and a first identification information associated with the application, the application being independent of any act for performing wireless communication between the wireless device and the wireless network, the first identification information being used to confirm an identity of a source of the application;means for determining that the application satisfies each criterion in a set of criteria, wherein at least one criterion in the set of criteria is established by a managing authority for a managed environment;means for assigning a set of permissions to the application, each permission in the set of permissions being associated with a respective criterion in the set of criteria;and means for transmitting the application and the set of permissions to the wireless device.
  16. 43
    A computer-readable medium containing computerexecutable instructions for processing an application for execution on a wireless device communicating over a wireless network comprising the steps of :receiving, from a server over the wireless network, a transmission comprising the application and a set of permissions;determining, based upon evaluating a rule previously stored in the wireless device on the set of CA 02448979 2010-10-29 74769-776 permissions, whether to enable the application for execution on the wireless device;executing the application if the application has been enabled for execution;and disabling the application if the application has not been enabled for execution on the wireless device.
  17. 48
    49. A wireless device which communicates over a wireless network and is capable of executing an application, comprising :a wireless interface for receiving the application, a set of permissions, and an identification information, the application being independent of any act for performing wireless communication between the wireless device and the wireless network;and a computer platform coupled to the wireless interface, the computer platform comprising a storage for storing a previously defined rule, the application, the set of permissions, and the identification information, wherein the computer platform is configured to determine, based upon evaluating one or more rules against the set of permissions: whether to enable the application for execution on the wireless device;and whether to enable the application for execution in the wireless network;and further wherein the computer platform is configured to: execute the application if the application has been enabled for execution;and CA 02448979 2010-10-29 74769-776 remove the application if the application has not been enabled for execution.
  18. 51
    52. A wireless device which communicates over a wireless network and is capable of executing an application, comprising :a wireless interface means for receiving the application, a set of permissions, and an identification information, the application being independent of any act for performing wireless communication between the wireless device and the wireless network;and a computer platform means, coupled to the wireless interface means, the computer platform means comprising: a storage means for storing one or more previously defined rules, the application, the set of permissions, and the identification information;means for determining, based upon evaluating at least one rule against the set of permissions, whether to enable the application for execution on the wireless device and whether to enable the application for execution in the wireless network;and CA 02448979 2010-10-29 74769-776 means for executing the application if the application has been enabled for execution on the wireless device and in the wireless network.
  19. 53
    54. A computer-readable medium containing computerexecutable instructions for processing and distributing an application for use on a wireless device communicating over a wireless network, comprising the steps of:receiving the application and a first identification information associated with the application, the application being independent of any act for performing wireless communication between the wireless device and the wireless network, the first identification information being used to confirm an identity of a source of the application;certifying the application satisfies each criterion in a set of criteria, wherein each criterion is respectively associated with a wireless environment;after the certifying, assigning a set of permissions to the application, the set of permissions having a plurality of permissions each associated with a respective criterion in the set of criteria;and transmitting the application, the set of permissions, and a second identification information usable to confirm an identity of a server, to the wireless device. CA 02448979 2010-10-29 74769-776
  20. 57
    58. A method for a server processing and distributing an application for use on a wireless device communicating over a wireless network, comprising:receiving the application and a first identification information associated with the application, the application being independent of any act for performing wireless communication between the wireless device and the wireless network, the first identification information being used to confirm an identity of a source of the application;certifying the application satisfies each criterion in a set of criteria, wherein each criterion is respectively associated with a wireless environment;after the certifying, assigning a set of permissions to the application, the set of permissions having a plurality of permissions each associated with a respective criterion in the set of criteria;and CA 02448979 2010-10-29 74769-776 transmitting the application, the set of permissions, and a second identification information usable to confirm an identity of the server, to the wireless device .
  21. 61
    62. A system for processing and distributing an application for use on a wireless device communicating over a wireless network, comprising:a server configured to: receive the application and a first identification information associated with the application, the application being independent of any act for performing wireless communication between the wireless device and the wireless network, the first identification information being used to confirm an identity of a source of the application;certify that the application satisfies each criterion in a set of criteria, wherein each criterion is respectively associated with a wireless environment;after the certify, CA 02448979 2010-10-29 74769-776 assign a set of permissions to the application, the set of permissions having a plurality of permissions each associated with a respective criterion in the set of criteria, and transmit the application, the set of permissions, and a second identification information usable to confirm an identity of the server, to the wireless device over the carrier network and the infrastructure.
  22. 64
    65. A system for processing and distributing an application for use on a wireless device communicating over a wireless network, comprising:a server means, comprising: CA 02448979 2010-10-29 74769-776 means for receiving the application and a first identification information associated with the application, the application being independent of any act for performing wireless communication between the wireless device and the wireless network, the first identification information being used to confirm an identity of a source of the application;means for certifying the application satisfies each criterion in a set of criteria, wherein each criterion is respectively associated with a wireless environment;means for assigning a set of permissions to the application after the application has been certified by the means for certifying, the set of permissions having a plurality of permissions each associated with a respective criterion in the set of criteria;and means for transmitting the application, the set of permissions, and a second identification information usable to confirm an identity of the server, to the wireless device .
  23. 65
    66. A computer-readable medium containing computerexecutable instructions for processing an application for execution on a wireless device communicating over a wireless network, comprising the steps of:receiving a transmission comprising the application, a set of permissions, and an identification information;determining, based upon evaluating a rule previously stored in the wireless device on the set of permissions, whether to enable the application for execution;and CA 02448979 2010-10-29 74769-776 executing the application if the application has been enabled for execution.
  24. 68
    69. A method of processing an application for execution on a wireless device communicating over a wireless network, comprising:receiving a transmission comprising the application, a set of permissions, and an identification information;determining, based upon evaluating a rule previously stored in the wireless device on the set of permissions, whether to enable the application for execution;and executing the application if the application has been enabled for execution. CA 02448979 2010-10-29 74769-776
  25. 71
    72. A wireless device which communicates over a wireless network and is capable of executing an application, comprising :a wireless interface for receiving the application, a set of permissions, and an identification information, the application being independent of any act for performing wireless communication between the wireless device and the wireless network;and a computer platform, coupled to the wireless interface, the computer platform comprising a storage for storing a previously defined rule, the application, the set of permissions, and the identification information, wherein the computer platform is configured to determine, based upon evaluating the rule on the set of permissions : whether to enable the application for execution;execute the application if the application has been enabled for execution;and CA 02448979 2010-10-29 74769-776 remove the application if the application has not been enabled for execution.
  26. 72
    73. A wireless device which communicates over a wireless network and is capable of executing an application, comprising :a wireless interface means for receiving the application, a set of permissions, and an identification information, the application being independent of any act for performing wireless communication between the wireless device and the wireless network;and a computer platform means, coupled to the wireless interface, the computer platform means comprising: a storage means for storing a previously defined rule, the application, the set of permissions, and the identification information;and means for determining, based upon evaluating the rule on the set of permissions whether to enable the application for execution, execute the application if the application has been enabled for execution, and remove the application if the application has not been enabled for execution.
Independent claims26