The principals involved in the Secure RPC authentication system are users, clients, servers, and the authentication server. Secure RPC should be transparent to the user. The user supplies his password once and is authenticated for server usage based on the original password. The client acts on behalf of the user for the protocol exchanges. Servers provide the requested services and require that users be authenticated before providing the services. The authentication server provides the public and private keys to servers and clients.