Patent ID: 7900046

Claim:
A computer implemented method for establishing mutual trust on a per-deployment basis between a first and second software modules implemented in at least one data processing system, comprising: executing, by at least one processing device, for a deployment an initial handshake between the first and second software modules wherein the first and second software modules identify themselves, wherein the second software module interacts with the first software module as part of the deployment, and wherein the second software module provides the first software module access to a password protected service and returns sensitive information from the service to the first software module; exchanging digital certificates between the first and second software modules, wherein the first and second software modules receive their digital certificates and respective public keys from at least one of a plurality of trusted certification authorities trusted by the first and second software modules, wherein the exchanging of the digital certificates establishes mutual trust between the first and second software modules for each deployment; and executing, by the at least one processing device, subsequent communications for the deployment between the first and second software modules with each of the first and second software modules encrypting their communications with the public key of the other of the first and second software modules in response to the exchanging of the digital certificates and the respective public keys, and wherein the second software module encrypts the sensitive information returned from the service with the public key of the first software module to return to the first software module.