Creates a cryptographic identity for an agent.
This method is called by Cougaar core services before
an agent is initialized.
If the agent already has a cryptographic identity, the
method returns immediately. If the agent does not have
a cryptographic key, or if no key is valid, a new key
is created.
This service provider will call checkPermission() to
make sure that only known entities will call the service.
If the 'id' parameter is not null, the cryptographic service
attempts to install keys from an agent that was previously
running on a remote node. The 'id' parameter should be the
TransferableIdentity object that was returned on the original
host when transferTo() was called.
The TransferableIdentity should then have been sent to the
new host when the agent was moved.
Parameters: id - the identity of an agent that was moved from another node. exception: PendingRequestException - the certificate authoritydid not sign the request immediately. The same requestshould be sent again later exception: IdentityDeniedException - the certificiate authorityrefused to sign the key |