[Standards-JIG] Re: Re: JEP-0077: In-Band Registration

Ian Paterson ian.paterson at clientside.co.uk
Mon Jul 17 23:27:36 UTC 2006


>>That way, even if a hacker gains
>> control of my machine, they'll have only the hash -- which makes it
>> trivial for the hacker to log into my Jabber account of course, but at
>> least the hacker won't be able to discover the plaintext (which I might
>> have used for other accounts or whatever).
>
> Again, this only works if you're the only one doing it. If all jabber 
> servers do it, I can hack all your jabber acount. If email people start 
> doing it, I can get your email. I think at one point in the edigest thread 
> someone even came with the idea that by that time you can just start 
> hashing it twice (!)

It doesn't matter if all clients use exactly the same trick for all servers 
as long as the JID (and "xmpp:") are used as a salt.

The client I develop offers users the option to convert their plain password 
to SHA256(JID+plainPassword) immediately after they type it. If this option 
is specified then the resulting hash is always used instead of a plaintext 
password (for creating accounts, login etc). The feature is 100% transparent 
to servers.

Clearly users cannot use the option for existing accounts unless the server 
allows them to change the password.

The client has a feature that copies the 64-hex-char hash so the user may 
paste it into the password field of another client that does not support the 
password hash option.

Piotr Szturmaj is not the only one thinking this is a worthwhile security 
measure (see the paper Peter highlighted: 
http://crypto.stanford.edu/PwdHash/pwdhash.pdf). And as Piotr pointed out, 
even clients that use SASL login require users to supply a password. If 
several clients provided a *standard* optional way of hashing the password, 
then it would be much easier for people to use multiple clients with 
enhanced security.

- Ian




More information about the Standards mailing list