public void Test() { string password = "******"; string sourcePassword = StringChiper.Encrypt("87e898AA"); Console.WriteLine("encrypted password: {0}", sourcePassword); string decriptedPassword = StringChiper.Decrypt(sourcePassword); Console.WriteLine("decripted password: {0}", decriptedPassword); }
private OperationResponse LoginViaServer(LoginOperationRequest operation) { string password = StringChiper.Decrypt(operation.encryptedPassword); LoginAuth loginAuth = new LoginAuth(operation.login, password); DbUserLogin user = application.GetUser(loginAuth); string platform = GetPlatform(operation); LoginOperationResponse response = null; if (user == null) { response = new LoginOperationResponse { facebookId = operation.facebookId, GameRefId = string.Empty, Login = operation.login, method = (byte)LoginMethod.server, returnCode = (int)LoginReturnCode.UserNotFound, vkontakteId = operation.vkontakteId, deviceId = string.Empty }; } else { response = new LoginOperationResponse { facebookId = user.facebookId, GameRefId = user.gameRef, Login = user.login, method = (byte)LoginMethod.server, returnCode = (int)LoginReturnCode.Ok, vkontakteId = user.vkontakteId, deviceId = string.Empty }; AddUserToCollection(user, platform); } return(new OperationResponse(operation.OperationRequest.OperationCode, response)); }
public override OperationResponse Handle(OperationRequest request, SendParameters sendParameters) { RegisterUserRequest operation = new RegisterUserRequest(peer.Protocol, request); if (!operation.IsValid) { return(new OperationResponse(request.OperationCode) { ReturnCode = (short)ReturnCode.InvalidOperationParameter, DebugMessage = operation.GetErrorMessage() }); } operation.Prepare(); if (!mLoginUtils.IsLoginLengthValid(operation.login)) { RegisterUserResponse responseObject = new RegisterUserResponse { login = operation.login, gameRef = string.Empty, returnCode = (int)LoginReturnCode.LoginVeryShort }; return(new OperationResponse(request.OperationCode, responseObject)); } string password = StringChiper.Decrypt(operation.encryptedPassword); if (!mLoginUtils.IsPasswordLengthValid(password)) { RegisterUserResponse responseObject = new RegisterUserResponse { login = operation.login, gameRef = string.Empty, returnCode = (int)LoginReturnCode.PasswordVeryShort }; return(new OperationResponse(request.OperationCode, responseObject)); } if (!mLoginUtils.IsLoginCharactersValid(operation.login)) { RegisterUserResponse responseObject = new RegisterUserResponse { login = operation.login, gameRef = string.Empty, returnCode = (int)LoginReturnCode.LoginHasInvalidCharacters }; return(new OperationResponse(request.OperationCode, responseObject)); } if (!mLoginUtils.IsPasswordCharactersValid(password)) { RegisterUserResponse responseObject = new RegisterUserResponse { login = operation.login, gameRef = string.Empty, returnCode = (int)LoginReturnCode.PasswordHasInvalidCharacters }; return(new OperationResponse(request.OperationCode, responseObject)); } var emailChecker = new RegexUtilities(); if (!emailChecker.IsValidEmail(operation.email)) { RegisterUserResponse responseObject = new RegisterUserResponse { login = operation.login, gameRef = string.Empty, returnCode = (int)LoginReturnCode.EmailInvalid }; return(new OperationResponse(request.OperationCode, responseObject)); } var database = application.DbUserLogins; if (database.ExistsUser(new LoginId(operation.login))) { RegisterUserResponse responseObject = new RegisterUserResponse { login = operation.login, gameRef = string.Empty, returnCode = (int)LoginReturnCode.UserWithSameLoginAlreadyExists }; return(new OperationResponse(request.OperationCode, responseObject)); } var emailUser = database.GetUser(new Email(operation.email)); if (emailUser != null) { RegisterUserResponse responseObject = new RegisterUserResponse { login = operation.login, gameRef = string.Empty, returnCode = (int)LoginReturnCode.UserWithSuchEmailAlreadyExists }; return(new OperationResponse(request.OperationCode, responseObject)); } LoginReturnCode code = LoginReturnCode.Ok; LoginAuth loginAuth = new LoginAuth(operation.login, password); Email email = new Email(operation.email); FacebookId fbId = new FacebookId(operation.facebookId); VkontakteId vkId = new VkontakteId(operation.vkontakteId); var dbUser = database.CreateUser(loginAuth, email, fbId, vkId); FullUserAuth fullAuth = new FullUserAuth(loginAuth.login, dbUser.gameRef, fbId.value, vkId.value, string.Empty); string platform = string.Empty; if (operation.platform != null) { platform = operation.platform; } (peer as LoginClientPeer).SetLogin(new LoginId(loginAuth.login)); application.LogedInUsers.OnUserLoggedIn(fullAuth, peer as LoginClientPeer); application.stats.OnUserLoggedIn(fullAuth, platform); if (code != LoginReturnCode.Ok) { RegisterUserResponse responseObject = new RegisterUserResponse { login = operation.login, gameRef = string.Empty, returnCode = (int)code }; return(new OperationResponse(request.OperationCode, responseObject)); } RegisterUserResponse successResponseObject = new RegisterUserResponse { gameRef = dbUser.gameRef, login = dbUser.login, returnCode = (int)code }; return(new OperationResponse(request.OperationCode, successResponseObject)); }