Hi Zed, I had this idea recently which might somehow be related to yours (or complement it, to be more precise).
I was thinking about making various password managers (KeePassX, etc.) work better with web sites and about
storing your passwords on your mobile device and use this device to easily log into services (for example
when you're away from your PC). So the idea was basically this:
- show me a 2d barcode (QR-code, datamatrix, whatever) on your Sign-in page;
- I scan this code with my mobile phone application (or simply use desktop application that takes a screenshot);
- this application (password manager) makes a request to your service and authenticates me (using SRP);
- your Sign-in page uses AJAX in the background to check if I'm already authenticated;
- if the auth process was finished - I'm redirected to login-only area of your site;
So this 2d barcode would contain some kind of nonce that would uniquely identify current Sign-in
page (we obviously can't use cookies because we're using different channels).
This whole idea could also make sign-up process much more simple (you could, for example,
encode password requirements for your site, and my password manager would automatically
generate the password according to these requirements, and would sign me up and record
credentials in itself).
Just an idea. I'm not sure if it's viable at all (there might be some hard-to-overcome security issues),
it would be nice if you let me know what you think about it.