(More thoughts about http://itch.io/post/10420)
It would probably be a better experience for most people if they can set their identity once in the app and never have to think about it again, rather than logging in manually to every server. Maybe you just setup a username and an avatar when you install the app and it's cached locally and it sends a copy to each server you connect to (and automatically updates it if it changed).
There should be a way for the server to know that it's you again and that it should let you log back in with your existing editing rights.
We also need some way to carry one's user settings across several projects and servers. And then, we need a way to save, restore and sync our settings from multiple places.
I don't know how/if we can do that in a way that's convenient for everyday users, without ending up with a centralized, if optional, authentication system.
There's the possibility of doing something like 1) the server sends a challenge key 2) the user has a private key that gets hashed with the challenge key + the server IP and returned to the server. 3) If it matches the value the server expected, then the user is authenticated.
Something to that effect, except we'd want to use a pre-built and tested cryptographic primitive that does everything for us so that we don't screw it up. But that doesn't fix the whole question of "where are my settings stored and how are they synchronized?"