/// <summary> /// Загружаются настройки и запрашивается пароль. Для того, чтобы можно было спокойно использовать данные /// из этого модуля. /// </summary> public static void Initialize() { common_reg_string = "Software\\SafT\\RDPClient"; defaults_reg_string = common_reg_string + "\\Defaults"; RegistryKey secur = Registry.CurrentUser.OpenSubKey(common_reg_string); if (secur != null) { if (secur.GetValue("PasswordChanged").ToString() == "false") { MessageBox.Show("Пароль по умолчанию необходимо заменить!"); MyCryptoStat.ChangeCryptPassword(); } } LoadSettings_reg(); Check_storage(); AskPassword(); }
/// <summary> /// Функция запрашивает у пользователя пароль для расшифровки. Данный пароль используется для расшифровки /// паролей к серверам RDP. Поскольку этот пароль используется для шифрования всех паролей RDP, проверяется /// корректность введенного пароля. Тестируется расшифровка пароля пользователя по умолчанию /// </summary> public static void AskPassword() { SaftRDPClient.Askdialog passdialog = new SaftRDPClient.Askdialog(); enterp = passdialog.ShowDialogString(); string def_pass = MyCryptoStat.DecryptString(user_password, enterp); DialogResult dr = DialogResult.No; if (def_pass == "Trouble!!!") { while (def_pass == "Trouble!!!") { dr = MessageBox.Show("Введен неправильный пароль. \n Хотите ввести пароль снова?", "Введен неправильный пароль.", MessageBoxButtons.YesNo); if (dr != DialogResult.Yes) { Environment.Exit(-1); } else { enterp = passdialog.ShowDialogString(); def_pass = MyCryptoStat.DecryptString(user_password, enterp); } } } }