private async void logInActions(object parameter) { var passwordVar = parameter as PasswordBox; Administrator a = new Administrator(); a.email = AdminUsername; string passwordRaw = passwordVar.Password; var data = Encoding.UTF8.GetBytes(passwordRaw); byte[] hash; using (SHA512 sha = new SHA512Managed()) { hash = sha.ComputeHash(data); } string hashString = Encoding.Default.GetString(hash); hashString = stringToHex(hashString); hashString = hashString.ToLower(); Console.WriteLine(hashString); AdminPassword = passwordVar.Password; a.password = hashString; if (Repository.loginAdministrator(a)) { Thread.Sleep(1500); Administrator currenAdministrator = AdministratorRepository.getAdministratorByEmail(a.email); Settings.Default.remindUser = currenAdministrator.Id; Settings.Default.currentTab = -1; Settings.Default.Save(); Console.WriteLine("Login OK"); Application.Current.Dispatcher.Invoke((Action) delegate { MainWindow main = new MainWindow(); main.Show(); Application.Current.Windows[0]?.Close(); }); } else { MessageBox.Show("Incorrect email/password"); //DialogOpen = true; Progress = "HIDDEN"; Opacity = 1; PanelEnabled = true; } }