Protection of software on portable medium
First Claim
1. A machine-implemented method for preventing unauthorized use of executable software stored on a rewritable removable medium, the machine-implemented method comprising:
- executing, by a host processing device to which the rewritable removable medium is removably attached, a first portion of the executable software directly from the rewritable removable medium without installing the first portion of the executable software on the host processing device in order to obtain information from the rewritable removable medium, wherein the obtained information includes at least one of a type of the rewritable removable medium, a brand of the rewritable removable medium, a manufacturer of the rewritable removable medium, or an identifier of the rewritable removable medium;
determining, by the host processing device, whether execution of a second portion of the executable software directly from the rewritable removable medium is permitted based on the information obtained from the rewritable removable medium, the determining whether execution of the second portion of the executable software directly from the rewritable removable medium is permitted further comprises;
submitting, by the host processing device to an embedded processing device of the rewritable removable medium, an unsigned data object for the embedded processing device to sign with a private key, wherein the private key is inaccessible to the host processing device;
receiving, by the host processing device, the signed copy of the data object from the embedded processing;
processing the received signed copy of the data object with a public key that is accessible to the host processing device;
comparing the unsigned copy of the data object to the processed signed copy of the data object; and
determining, by the host processing device, whether the execution of the second portion of the executable software directly from the rewritable removable medium is permitted based on the at least one determined type of the rewritable removable medium, the brand of the rewritable removable medium, the manufacturer of the rewritable removable medium, or the identifier of the rewritable removable medium; and
selectively executing, by the host processing device, the second portion of the executable software with unaltered behavior directly from the rewritable removable medium based on the comparison of the unsigned copy of the data object to the processed signed copy of the data object.
2 Assignments
0 Petitions
Accused Products
Abstract
A portable rewritable medium and a method are provided for preventing unauthorized use of executable software stored on the portable rewritable medium. A portion of the software stored on the portable rewritable medium may include instructions for a processing device to determine whether execution of the executable software is permitted. If execution of the executable software is permitted, the processing device may execute the executable software directly from the portable rewritable medium. Characteristics of the portable rewritable medium may be checked to determine whether functionality of the executable software is to be limited.
24 Citations
20 Claims
-
1. A machine-implemented method for preventing unauthorized use of executable software stored on a rewritable removable medium, the machine-implemented method comprising:
-
executing, by a host processing device to which the rewritable removable medium is removably attached, a first portion of the executable software directly from the rewritable removable medium without installing the first portion of the executable software on the host processing device in order to obtain information from the rewritable removable medium, wherein the obtained information includes at least one of a type of the rewritable removable medium, a brand of the rewritable removable medium, a manufacturer of the rewritable removable medium, or an identifier of the rewritable removable medium; determining, by the host processing device, whether execution of a second portion of the executable software directly from the rewritable removable medium is permitted based on the information obtained from the rewritable removable medium, the determining whether execution of the second portion of the executable software directly from the rewritable removable medium is permitted further comprises; submitting, by the host processing device to an embedded processing device of the rewritable removable medium, an unsigned data object for the embedded processing device to sign with a private key, wherein the private key is inaccessible to the host processing device; receiving, by the host processing device, the signed copy of the data object from the embedded processing; processing the received signed copy of the data object with a public key that is accessible to the host processing device; comparing the unsigned copy of the data object to the processed signed copy of the data object; and determining, by the host processing device, whether the execution of the second portion of the executable software directly from the rewritable removable medium is permitted based on the at least one determined type of the rewritable removable medium, the brand of the rewritable removable medium, the manufacturer of the rewritable removable medium, or the identifier of the rewritable removable medium; and selectively executing, by the host processing device, the second portion of the executable software with unaltered behavior directly from the rewritable removable medium based on the comparison of the unsigned copy of the data object to the processed signed copy of the data object. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A portable machine-readable storage medium having executable software recorded thereon, a first portion of the executable software comprising:
-
instructions for a processing device to obtain information from the portable machine-readable medium while the portable machine-readable storage medium is removably attached to the processing device, wherein the obtained information includes at least one of a type of the portable machine-readable medium, a brand of the portable machine-readable medium, a manufacturer of the portable machine-readable medium, or an identifier of the portable machine-readable medium; instructions for the processing device to determine whether a second portion of the executable software stored on the portable machine-readable storage medium is permitted to be executed by the processing device based on the obtained information from the portable machine-readable storage medium, the instructions for the processing device to determine whether the second portion of the executable software stored on the portable machine-readable storage medium is permitted to be executed by the processing device further comprises; instructions for the processing device to submit an unsigned data object to an embedded processing device of the portable machine-readable storage medium for the embedded processing device to sign with a private key that is inaccessible to the processing device; instructions for the processing device to receive the signed copy of the data object from the embedded processing device; instructions for the processing device to process the received signed copy of the data object with a public key that is accessible to the processing device; instructions for the processing device to compare the unsigned copy of the data object to the processed signed copy of the data object; and instructions for the processing device to determine whether the execution of the second portion of the executable software directly from the portable machine-readable medium is permitted based on the at least one determined type of the portable machine-readable medium, the brand of the portable machine-readable medium, the manufacturer of the portable machine-readable medium, or the identifier of the portable machine-readable medium; and instructions for the processing device to permit selective execution of the second portion of the executable software, with unaltered behavior, if the execution of the second portion of the executable software stored on the portable machine-readable storage medium is determined, by the processing device, to be permitted based on the comparison of the unsigned copy of the data object to the processed signed copy of the data object, the second portion of the executable software stored on the portable machine-readable storage medium being arranged to be executed, by the processing device, directly from the portable machine-readable storage medium. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A portable machine-readable and machine-writable storage medium having executable software recorded thereon for at least one processor of a host processing device, a first portion of the executable software comprising:
-
instructions, for the at least one processor of the host processing device to which the portable machine-readable and machine writable storage medium is removably attached, to obtain information from the portable machine-readable and machine writable storage medium, the first portion of the executable software stored on the portable machine-readable and machine-writable storage medium being arranged to be executed directly by the at least one processor of the host processing device without installing the first portion of the executable software on the host processing device, wherein the obtained information includes at least one of a type of the portable machine-readable and machine writable storage medium, a brand of the portable machine-readable and machine writable storage medium, a manufacturer of the portable machine-readable and machine writable storage medium, or an identifier of the portable machine-readable and machine writable storage medium; instructions for determining at least one characteristic of the portable machine-readable and machine-writable storage medium based on the obtained type of the portable machine-readable and machine writable storage medium, brand of the portable machine-readable and machine writable storage medium, manufacturer of the portable machine-readable and machine writable storage medium, and/or identifier of the portable machine-readable and machine writable storage medium; instructions for the at least one processor of the host processing device to submit an unsigned data object to an embedded processing device of the portable machine-readable and machine-writable storage medium for signing of the data object with a private key that is inaccessible to the processing device by the embedded processing device of the portable machine-readable and machine-writable storage medium; instructions for the at least one processor of the host processing device to receive a signed copy of the data object from the embedded processing device of the portable machine-readable and machine-writable storage medium, in response to submitting the data object to the embedded processing device; instructions for the at least one processor of the host processing device to process the signed copy of the data object with a public key that is accessible to the host processing device; instructions for the at least one processor of the host processing device to compare the unsigned copy of the data object to the processed signed copy of the data object; and instructions for the at least one processor of the host processing device to selectively alter a functionality of a second portion of the executable software based on the determined at least one characteristic of the portable machine-readable and machine-writable storage medium and on the comparison of the unsigned copy of the data object to the processed signed copy of the data object. - View Dependent Claims (17, 18, 19, 20)
-
Specification