Exemplo n.º 1
0
 public VaultStatus InitializeVault(VaultStatus vaultToInitialize, string password)
 {
     vaultToInitialize.VaultPassword = password;
     EncryptVault(vaultToInitialize);
     File.WriteAllText(vaultToInitialize.VaultFilePath, vaultToInitialize.EncryptedVault);
     vaultToInitialize.IsInitialized = true;
     return(vaultToInitialize);
 }
Exemplo n.º 2
0
        public VaultStatus DecryptVault(VaultStatus vaultToDecrypt, string password)
        {
            var decryptedVaultContents = AESThenHMAC.SimpleDecryptWithPassword(vaultToDecrypt.EncryptedVault, password);

            vaultToDecrypt.Vault         = JsonConvert.DeserializeObject <SecretVault>(decryptedVaultContents);
            vaultToDecrypt.VaultPassword = password;
            vaultToDecrypt.IsUnlocked    = true;
            return(vaultToDecrypt);
        }
Exemplo n.º 3
0
        public VaultStatus OpenVaultFile(string path)
        {
            var status = new VaultStatus();

            if (File.Exists(path))
            {
                var encryptedVault = File.ReadAllText(path);
                status.EncryptedVault = encryptedVault;
                status.IsInitialized  = true;
            }
            status.VaultFilePath = path;

            return(status);
        }
Exemplo n.º 4
0
        public void EncryptVault(VaultStatus vaultToSave)
        {
            var contentToEncrypt = JsonConvert.SerializeObject(vaultToSave.Vault);

            vaultToSave.EncryptedVault = AESThenHMAC.SimpleEncryptWithPassword(contentToEncrypt, vaultToSave.VaultPassword);
        }