Ejemplo n.º 1
0
        private async void btnImportPasswords_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog
            {
                Title            = "Import Passwords",
                DefaultExt       = "kvf",
                Filter           = "KeysVault files (*.kvf)|*.kvf|All files (*.*)|*.*",
                FilterIndex      = 1,
                CheckPathExists  = true,
                RestoreDirectory = true
            };

            if (ofd.ShowDialog() == DialogResult.OK)
            {
                List <Password> importedPasswords = await KeyVaultService.Instance().ImportPasswordsAsync(ofd.FileName);

                if (importedPasswords != null)
                {
                    if (Messenger.Confirm("The file contains " + importedPasswords.Count + " passwords. Are you sure you want to import these passwords to your account?"))
                    {
                        try
                        {
                            await PasswordsService.Instance().SaveNewPasswordsAsync(localSettings, CryptoService.Instance().DecryptPasswords(localSettings.Master, importedPasswords));
                        }
                        catch
                        {
                            Messenger.Show("Unable to import passwords. Either these passwords were encrypted with a different Master Password than yours or you changed your Master Password.", "Error");
                        }
                        localPasswords = await PasswordsService.Instance().GetAllPasswordsAsync(localSettings);

                        ShowPasswords(localPasswords);
                    }
                }
            }
        }
Ejemplo n.º 2
0
        private async void btnExportPasswords_Click(object sender, EventArgs e)
        {
            SaveFileDialog sfd = new SaveFileDialog
            {
                Title            = "Export Passwords",
                DefaultExt       = "kvf",
                Filter           = "KeysVault files (*.kvf)|*.kvf|All files (*.*)|*.*",
                FilterIndex      = 1,
                CheckPathExists  = true,
                RestoreDirectory = true
            };

            if (sfd.ShowDialog() == DialogResult.OK)
            {
                if (await KeyVaultService.Instance().ExportPasswordsAsync(CryptoService.Instance().EncryptPasswords(localSettings.Master, localPasswords), sfd.FileName))
                {
                    Messenger.Show("Passwords exported to " + sfd.FileName + " file.", "Info");
                }
            }
        }