public static Credential GetCredential(string username)
        {
            var cm = new Credential {
                Target = username
            };

            cm.Load();
            string decryptedPass;

            using (var dm = new DecryptionMethods())
            {
                decryptedPass = dm.DecryptString(Convert.FromBase64String(cm.Password));
            }

            cm.Password = decryptedPass;
            return(cm);
        }
        public static bool ValidateUser(string username)
        {
            var cm = new Credential {
                Target = username
            };

            if (!cm.Load())
            {
                return(false);
            }
            string decryptedPass;

            using (var dm = new DecryptionMethods())
            {
                decryptedPass = dm.DecryptString(Convert.FromBase64String(cm.Password));
            }
            return(IsValidUser(cm.Username, decryptedPass));
        }
        public static bool SetCredentials(
            string target, string username, string password)
        {
            if (!IsValidUser(username, password))
            {
                return(false);
            }

            string encryptedPass;

            using (var dm = new DecryptionMethods())
            {
                encryptedPass = Convert.ToBase64String(dm.EncryptString(password));
            }
            return(new Credential {
                Target = target, Username = username,
                Password = encryptedPass, PersistanceType = PersistanceType.LocalComputer
            }.Save());
        }