Information Security Stack Exchange is a question and answer site for information security professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I try to search articles on the internet in this category, but no result. In generally we use authentication of the user against the system. So, we want to authenticate the user before he\she use our system. Example an ATM machine, we must authenticate the user before he take out money from the machine(authentication of the user against the system).

I read somewhere that exist authentication of the "system against the user" and I am curious, which cases we use this kind of authentication?

share|improve this question
In SSL the server certificate authenticates the server, so the user knows he's talking to the server he wants to talk to. – CodesInChaos Feb 10 '13 at 10:28
thank you this is a good example :D – flatronka Feb 10 '13 at 10:35
this is can be also the mechanism when the server securely store our passwords, instead of share with 3rd systems. – flatronka Feb 10 '13 at 16:08
up vote 1 down vote accepted

Mutual authentication is the normal rule; otherwise, you can have problems such as man in the middle attacks.

Consider what happens with a Web server with SSL. The browser first connects to the server, and the server sends its certificate. This certificate and the related cryptographic operations demonstrate to the client that it talks to the "right" server; e.g. it talks to a server which is really "". The browser conveys that information to the user by displaying the famous green padlock icon, and abstaining from showing scary popups with read flashing warnings. Then, the user types his login and password, which are sent to the server (within the SSL tunnel).

The server certificate is really "authentication of the system against the user", while the user password is used for "authentication of the user against the system". Both are important. Imagine what could happen if there was no server certificate: the user would believe that it contacted the genuine "" server, but in fact his data packets were hijacked by a nasty evildoer who operates a rogue WiFi access point. So the user is really talking to the attacker's server -- and when he types his password, the password goes to the attacker's server. Which is, as you imagine, a problem.

So mutual authentication really happens all the time.

share|improve this answer

Like all questions of authentication, it's a question of trust.

Authentication is essentially someone proving they are who they say they are - we most often do this by providing a shared secret, a password. i.e. when an unknown user connects to your trusted server, they identify themselves and provide the secret. The server trusts the user is who they say they are, because they know the secret.

You see this in the other direction whenever a user connects to a server they don't necessarily trust, such as their bank (they want a higher level of assurance) displaying their bank account #; something a third party wouldn't know. You get this to a lesser degree whenever you log in and see your name, or avatar or whatever up on the screen - it engenders a feeling of trust, though it's much less formalised than "I trust that password is correct".

You get the full formal exchange of trust whenever you log into something that uses multi-factor authentication - if I login with my username and password, the server now trusts me, if I enter the key on my RSA token, or the number I got in an SMS, I now trust the server in return.

share|improve this answer
thanks for your answer, this is good viewpoint – flatronka Feb 11 '13 at 12:02

Server authentication may help against phishing. For example, if you're going to and you're lead to the phishing site, both with valid server certificates for their URL (server is authenticated as and respectively, so we only know that the site corresponds to the URL, which most people overlook).

A petname system (documented here and here) can be set in place, so that the user upon registration associates the target web site with a petname (either a string of text, a recognizable picture or a sound). This petname is presented the user upon accessing the site. If the petname cannot be found, the user will be alarmed and should check the URL. If the URL is correctly entered, the site is safe.

Edit: note AJ Henderson's comment below.

share|improve this answer
thanks for your answer, I never heard before the petname system, but it's look interesting. – flatronka Feb 11 '13 at 12:03
I think it is important to clarify that such a system would have to be used locally and redefined on each computer that the user accesses the site on. If it is stored server side, it can simply be picked up by the phishing site. – AJ Henderson Feb 11 '13 at 14:27
You are absolutely correct, I should have mentioned that. – Henning Klevjer Feb 11 '13 at 19:21

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.