You can't protect your account here. Don't even try, but you can cry.
Now that this is said, what you can do is protect spring lobby/zkl/website from compromising your overall security, ie. your other accounts.
So my advice on selecting a password for this totally insecure protocol is:
1) don't use the same password anywhere else (obvious, but useful reminder)
2) don't use the same password generation rules that you use anywhere else (unless you use "pwgen -s" or similar)
3) why not pick a very bad password and have fun with it? its not so often that you can be careless when picking a password (because a strong password wouldn't protect you)
Showing the password in cleartext (instead of bullet/asterisks) is something that should be fixed, even if protocol and website are vulnerable. Maybe there should just be a simple fix that allows zkl to never persist password and request it everytime (when it is started, or when it connects). It won't fix all the protocol/website brokenage, but for some use cases it may help.
RSA doesn't help in any way to help secure storage of the password. Unless you encrypt the secret key and request a password. In which case, symmetric encryption would be just as good. But since you would be asking for a password, why go through that extra hoop and not request the lobby password instead of the password to unlock the lobby password...
quote: err theres no email feild for the loby |
The
was none.
http://springrts.com/dl/LobbyProtocol/ProtocolDescription.html#REGISTER:clienthttp://springrts.com/dl/LobbyProtocol/ProtocolDescription.html#CHANGEEMAIL:clientI'm too frightened to check whether clients and server have been updated to handle it. Reading code may be bad for your health.
quote: we cannot make password-changing application |
Me not understand.
http://springrts.com/dl/LobbyProtocol/ProtocolDescription.html#CHANGEPASSWORD:clientquote: Saving a salted md5 (or whatever other hash) would be completely sufficient, wouldn't it? |
No.
Salt only helps to prevent precomputed/rainbow tables. When properly implemented.
(Salted) md5 is supposedly one-way (stop laughing). Server is expecting an unsalted md5 hash from client. So, saving a salted md5 wouldn't work. Unless you really want to troll and use md5 as an obfuscation mechanism and use rainbow tables lookup to actually reverse the saved password, then hash it again before sending it to server.
You could store the unsalted hash. The real secret is not the password anyway, its the hash itself. So you would be saving the real secret in cleartext. It looks more gibberish, but its still the unencrypted secret, which is the only thing required to login. Actually, we can consider that the "cleartext" password is actually an obfuscated version of the real secret (the hash). So enjoy, there is obfuscation built-in!
Now, if protocol had specified a salt (or salting mechanism), it would have prevented leet haxxors from using publicly available precomputed rainbow tables. Yay.