A method for assuring that a client device is authorized to receive information from a system, the system and the client device being in bi-directional communication over a network, the method comprising: reading a network address of said client device on said network; reading a predetermined piece of information from said client device pertaining to a hardware component incorporated in said client device; using a cryptographic program to receive said network address and said predetermined piece of information as inputs, and to compute therefrom a registration identification hash code for said client device; and wherein said registration ID hash code is not stored on said client device after said registration ID hash code is sent to said system; using said client device to supply said registration ID hash code to said system when making a call to said system over said network; using the system to provide the client device with a client-side key that is used by the client to digitally sign said registration ID hash code; and causing said system to generate a digital certificate having a component that is used by said system to validate a digital signature of said registration ID hash code that is provided by said client device to said system in future communications. for each subsequent call by said client device to said system, causing said client device to re-obtain said network address and said pre-determined piece of information as said inputs to said registration ID hash code, and to re-generate said registration ID hash code and to re-transmit said registration ID hash code to said system signing said registration ID hash code with said client-side key; and further comprising using said client device to supply a pre-determined user name together with said registration ID hash code to said system. reading a network address of said client device on said network; reading a predetermined piece of information from said client device pertaining to a hardware component incorporated in said client device; using a cryptographic program to receive said network address and said predetermined piece of information as inputs, and to compute therefrom a registration identification hash code for said client device; and wherein said registration ID hash code is not stored on said client device after said registration ID hash code is sent to said system; using said client device to supply said registration ID hash code to said system when making a call to said system over said network; using the system to provide the client device with a client-side key that is used by the client to digitally sign said registration ID hash code; and causing said system to generate a digital certificate having a component that is used by said system to validate a digital signature of said registration ID hash code that is provided by said client device to said system in future communications. for each subsequent call by said client device to said system, causing said client device to re-obtain said network address and said pre-determined piece of information as said inputs to said registration ID hash code, and to re-generate said registration ID hash code and to re-transmit said registration ID hash code to said system signing said registration ID hash code with said client-side key; and further comprising using said client device to supply a pre-determined user name together with said registration ID hash code to said system.