Below I've copied our FAQ answer about this from our Indiegogo campaign. The short answer is that as a paranoid security engineer, Google and Github are the only readily-available global authentication mechanisms that I trust. That said, we are interested in adding other options.
The only information transmitted to Google or Github is the fact that you logged into a server. The only information transmitted out of Google or Github to your Sandstorm server is your user ID and display name, which are only used for authentication. Your Sandstorm server does not transmit any of this information back to us.
We use Google Groups because it's easy to set up, it works (sort of), and I have experience with it. Once we have a good mailing list app on Sandstorm we'll move to that.
Let me know if you have any other questions.
Why do I have to log in through Google or Github?
In short, because we actually think this is the most secure option we can provide right now, though we want to do better eventually.
Passwords have a lot of problems. People choose bad passwords. People -- even smart people -- are often fooled by well-crafted phishing attacks. And, of course, people regularly forget their passwords. In order to deal with these threats, we believe that any password-based login system for Sandstorm must, at the very least, support two-factor authentication and be backed by a human security team who can respond to hijackings. There must also be an automated password reset mechanism which must be well-designed and monitored to avoid attacks. Unfortunately, we don't have these things yet. Moreover, we don't believe that building a secure password login system is the best use of our time at this early stage.
Another problem with password login is that it makes federation more complicated. When you federate with your friend's server, how does it authenticate you? Not by password, obviously. Perhaps by OpenID or OAuth, but that is again a thing we would need to implement.
For now, by relying on Google and Github for login, we get top-notch security and straightforward federated authentication with very little work. This lets us stay focused on our core product. (We could add Twitter, Facebook, etc. login as well, but we are worried about people forgetting which one they used and ending up with multiple accounts.)
But we don't want things to stay this way forever. Eventually we'd like to support decentralized login mechanisms, like OpenID and cryptographic (PGP/GPG) login. These are stretch goals for us (see the "Goals" section, above), but of course we'll be happy to look at pull requests. :)