Software installation and operation with random selection
First Claim
1. A software package for installation on a computer, the software package tangibly embodied on a computer readable medium, wherein the software package comprises a plurality of software components, one or more of said software components being provided as a plurality of different implementations, the software package including installation engine for installing a software system on said computer, the installation engine being arranged to install on said computer only a selected one implementation of the or each of the software components having a plurality of implementations, wherein said installation engine is arranged to install on said computer a randomly selected one implementation of the or each of said software components having a plurality fun implementations.
5 Assignments
0 Petitions
Accused Products
Abstract
A software system for installation on computing apparatus (and a method of installing such a software system on computing apparatus), wherein the software system is provided in the form of a software package including a plurality of software components, one or more of the software components being provided as a plurality of different implementations, the apparatus including an installation engine for installing the software system only a selected one implementation of the or each of the software components having multiple implementations, and a random selector module for selecting one of the plurality of implementations of a software component for installation. Thus, software package would still be distributed to its consumers as a single version but each installation of the package on a user'"'"'s computing apparatus is potentially different, which reduce the risk of faults in and attacks against software components having one or more “bugs” therein because not all consumers will have the same implementation of any one software component.
19 Citations
30 Claims
- 1. A software package for installation on a computer, the software package tangibly embodied on a computer readable medium, wherein the software package comprises a plurality of software components, one or more of said software components being provided as a plurality of different implementations, the software package including installation engine for installing a software system on said computer, the installation engine being arranged to install on said computer only a selected one implementation of the or each of the software components having a plurality of implementations, wherein said installation engine is arranged to install on said computer a randomly selected one implementation of the or each of said software components having a plurality fun implementations.
- 15. A method of installing a computer program on a computer, said computer program consisting of a plurality of software components, the method comprising the steps of providing a software package including said plurality of software components, one or more of said software components being provided as a plurality of different implementations, the method further comprising the steps of installing on said computer any software component provided as a single implementation, installing on said computer only a selected one implementation of the software components having a plurality of implementations, and installing on said computing apparatus a randomly selected one implementation of the or each of said software components having a plurality of implementations.
- 27. A computer program for installation on a computer, said computer program tangibly embodied on a computer readable medium, said comprising a plurality of software components and being provided as a software package on a data carrier, said software package including said plurality of software components in respect of at least one of which is provided within said software package a plurality of different implementations, and an installation engine arranged to install on said computer a randomly select one implementation of the or each of said software components having a plurality of implementations.
- 29. A computer program for installation on a computer, said computer program tangibly embodied on a computer readable medium, said computer program comprising a plurality of software components and being provided as a software package on a data carrier, said software package including said plurality of software components, in respect of at least one of which is provided within said software package a plurality of different implementations, and an installation engine arranged to determine which implementation(s) of the or each of said software components having a plurality of implementations have been previously installed on another computer, and to install a randomly selected one of the remaining implementations of said software components on said computer.
Specification