TOTP is an open standard and the mobile app is open source:
http://tools.ietf.org/html/draft-mraihi-totp-timebased-03
http://code.google.com/p/google-authenticator/
(Disclaimer: I worked on this.)
TOTP is an open standard and the mobile app is open source:
http://tools.ietf.org/html/draft-mraihi-totp-timebased-03
http://code.google.com/p/google-authenticator/
(Disclaimer: I worked on this.)
Is anyone doing that?
I really like using the authenticator on my phone and would love to see other web applications support it.
But I am curious, why isn't the authenticator itself password protected?
Also, fyi, while I understand how to use application specific passwords, I have no good understanding of what they do, how they work, why they are safe or why I only have to enter them once. So they are confusing to me.
The obvious risk of this model is what happens if an untrusted client steals that password.
Since you haven't given it your actual Google password It can still access your data, but it can't change your password (you have to enter your main Google password to do that) or change other critical settings, and if the application is misbehaving all you have to do is click revoke, and its gone.
You only have to enter them once because most clients nowadays provide a 'Remember my Password' functionality. Google assumes you will use this, so only need to enter your password once. If the password is forgotten you just generate a new one.
You only have to enter them once because most clients nowadays provide a 'Remember my Password' functionality. Google assumes you will use this, so only need to enter your password once
Is this really true? Because the documentation for the one time auth doesn't indicate anything like that.
So I am confused as to what is happening in the background on Google's side.
My pseudo-model is that their password acceptance library looks for a correctly identified two factor authentication OR a one time password out of the user's one time password table.
But then I don't understand why these one time auths are one time! If someone finds my phone, or accesses one of my other net accounts that was authorized by my one time auth, they completely win until I can get back to google's page to revoke them.
And related, I don't understand why the authenticator can't generate these one time passwords -- MANY TIMES THAT WOULD BE A LOT MORE CONVENIENT than having to go to the specific page on the web.
And also related: why is there no pin or password for the authenticator?
These are just questions I have -- I'd love to read a page or two that discusses these issues -- I think having a good model of how and why it works as it does would help me secure my data.
There's no such thing as a "one time password". There are "Application Specific passwords" which work exactly like your regular password except that they limit access to critical account settings and can be created/disabled at will. If someone obtains one of your Application Specific passwords then they can use it to log in and access your data until you revoke that password but they cannot change your real password and deny you access to your own account.
Ah. I think this is the key I hadn't understood till now. Thank you.
Some people call the code generated by the authenticator a one-time password, because it can't be reused.
Good to see it can be implemented outside of Google products.
Edit: of course, this is just another implementation of the TOTP method. It does not use Google's infrastructure to send you SMS / voice calls containing the code.