public bool TryLogin( string email, string password, out string loginToken )
{
loginToken = null;
if ( Path.GetInvalidFileNameChars().Any( c => email.Contains( c ) ) )
return false;
var data = LoadUserData( email );
if ( data == null )
return false;
var encrypted = EncryptPassword( password );
if ( data.Password != encrypted )
return false;
loginToken = CreateLoginToken( (Guid) data.UserID, email );
return true;
}