Patent ID: 7873955

Claim:
A method, comprising: receiving a request for executing an original software program within a plurality of software programs on a first computer, the original software program comprising a first one or more references corresponding to one or more original calling names associated with the original interface, wherein a set of data is received from a second computer over a network at the first computer that includes the original interface, wherein the second computer authorizes modifications to the plurality of software programs being executed on the first computer, and wherein a new software program downloaded by the first computer remains unexecutable until the second computer authorizes the new software program using a checksum operation; and translating the original software program to obtain a translated software program, including replacing the first one or more references with a second one or more references corresponding to one or more translated calling names associated with a translated interface, wherein the one or more translated calling names are invalid for calling the original interface, and reverse translating the translated software program to obtain a reverse translated software program, the reverse translated software program not being executable as the original software program if the translated software program comprises additional references corresponding to the one or more original calling names prior to the reverse translation, and wherein at least a portion of the translated calling names are not mapped to a corresponding unique name in an original name space, and wherein a calling name space translation is larger than the original name space; and communicating enabling data to the first computer, wherein the first computer includes additional software that is unexecutable due to the translating activities, and wherein the enabling data is configured to be used by the first computer to enable the additional software to execute.