System and method for interapplication communications
AssigneeAOL Inc.
InventorTerry N. Hayes
Life of this patent
Estimating the term…
Abstract
A first executable program on a computer system is enabled to exchange communications with a second executable program on the computer system by determining that the first executable program requests to exchange information with the second executable program, using the second executable program to challenge the first executable program for a digital certificate, and using the second executable program to exchange information with the first executable program when the digital certificate is verified.
Claims25
A computer-implemented method, comprising:
- determining a validity of a digital certificate associated with a first executable program;
- obtaining a portion of a license agreement associated with a second executable program;
- when the digital certificate is valid, generating an instruction to provide a challenge to the first executable program, the challenge instructing the first executable program to encrypt the obtained portion of the license agreement provided by the second executable program;
- receiving a response to the challenge from the first executable program, the response comprising the encrypted portion of the license agreement and a digital signature applied to the encrypted portion of the license agreement;
- decrypting, using at least one processor, the received response using a public key associated with the digital certificate to generate a decrypted portion of the license agreement;
- and
- determining, using the at least one processor, whether that the obtained portion of the license agreement corresponds to the decrypted portion of the license agreement;
- and
- when the decrypted portion of the license agreement corresponds to the obtained portion of the license agreement, enabling communications with the first executable program in a manner consistent with the license agreement, and enabling the first executable program to access one or more functions of the second executable program in accordance with the license agreement.
A computer system, comprising:
- a processing system comprising one or more processors;
- and
- a memory comprising one or more tangible computer-readable media,
- wherein the memory includes instructions that, when executed by the processing system, cause the processing system to perform operations comprising:
- determining a validity of a digital certificate associated with a first executable program;
- obtaining a portion of a license agreement associated with a second executable program;
- when the digital certificate is valid, generating an instruction to provide a challenge to the first executable program, the challenge instructing the first executable program to encrypt the obtained portion of the license agreement provided by the second executable program;
- receiving a response to the challenge from the first executable program, the response comprising the encrypted portion of the license agreement and a digital signature applied to the encrypted portion of the license agreement;
- decrypting the received response using a public key associated with the digital certificate to generate a decrypted portion of the license agreement;
- and
- determining whether the obtained portion of the license agreement corresponds to the decrypted portion of the license agreement;
- and
- when the decrypted portion of the license agreement corresponds to the obtained portion of the license agreement, enabling communications with the first executable program in a manner consistent with the license agreement, and enabling the first executable program to access one or more functions of the second executable program in accordance with the license agreement.
A tangible, non-transitory computer-readable medium storing instructions that, when executed by at least one processor, cause the at least one processor to perform a method, comprising:
- determining a validity of a digital certificate associated with a first executable program;
- obtaining a portion of a license agreement associated with a second executable program;
- when the digital certificate is valid, generating an instruction to provide a challenge to the first executable program, the challenge instructing the first executable program to encrypt the obtained portion of the license agreement provided by the second executable program;
- receiving a response to the challenge from the first executable program, the response comprising the encrypted portion of the license agreement and a digital signature applied to the encrypted portion of the license agreement;
- decrypting the received response using a public key associated with the digital certificate to generate a decrypted portion of the license agreement;
- and
- determining whether the obtained portion of the license agreement corresponds to the decrypted portion of the license agreement;
- and
- when the obtained portion of the license agreement corresponds to the decrypted portion of the license agreement, enabling communications with the first executable program in a manner consistent with the license agreement, and enabling the first executable program to access one or more functions of the second executable program in accordance with the license agreement.
Dependencies are inferred from the claim text.