1. A method in which a program uses a cryptographic web service remotely over a communications network, comprising: at program computing equipment on which the program is implemented, calling a local cryptographic function from the program; in response to calling the local cryptographic function, calling a remote cryptographic function at the cryptographic web service that corresponds to the called local cryptographic function by sending information from a web services interface at the program computing equipment to a web services interface at the cryptographic web service over the communications network based on an address of the cryptographic web service and a function definition for the called remote cryptographic function that are supplied to the program computing equipment from a web services registry in a web services description language file, wherein the information includes at least one data parameter; at the cryptographic web service, determining based on configuration information and authentication information stored within the cryptographic web service, whether external authentication is required before obtaining a key locally; in response to determining that external authentication is required, before obtaining the key locally, passing authentication credentials of the program to an external authentication service for the external authentication; after passing the authentication credentials of the program to the external authentication service for external authentication, receiving a response from the external authentication service to determine a status of the external authentication; in response to determining the status of the external authentication as failing external authentication, generating an error entry in a log within the cryptographic web service; at the cryptographic web service, obtaining the key locally in response to determining that external authentication is not required; at the cryptographic web service, producing results for the called remote cryptographic function using a cryptographic engine, wherein the results are produced by the cryptographic engine using the locally obtained key, wherein the remote cryptographic function comprises encrypting the at least one data parameter to produce encrypted data; and at the program computing equipment, receiving the results for the called remote cryptographic function from the cryptographic web service, wherein the results include the encrypted data.