public void CreateCryptoConfigNoPrefixPath() { const string targetFile = Preparations.TestFolderPath + "CreateCryptoConfigNoPrefixPath.td"; const string mockFileName = "importantData.txt"; var key = CryptoRNG.GetRandomBytes(AesSizes.Key); var vaultFile = UserDataHeader.Create(mockFileName); var writer = new UserDataHeaderWriter(vaultFile); using (var stream = new FileStream(targetFile, FileMode.Create, FileAccess.Write)) { writer.WriteTo(stream, key); } UserDataHeader readUserDataHeader; using (var stream = new FileStream(targetFile, FileMode.Open, FileAccess.Read)) { readUserDataHeader = UserDataHeaderReader.ReadFrom(stream, key); } Assert.AreEqual(vaultFile.TargetPath, readUserDataHeader.TargetPath); Assert.AreEqual(vaultFile.TargetCipherIV, readUserDataHeader.TargetCipherIV); Assert.AreEqual(vaultFile.TargetAuthentication, readUserDataHeader.TargetAuthentication); Assert.AreEqual(vaultFile.IsUnlocked, readUserDataHeader.IsUnlocked); Assert.AreEqual(vaultFile.SecuredPlainName.PlainName, readUserDataHeader.SecuredPlainName.PlainName); }
private static void WriteItemHeader(Stream fileStream, Vault underlying, UserDataHeader userDataHeader) { var itemHeaderWriter = new UserDataHeaderWriter(userDataHeader); itemHeaderWriter.WriteTo(fileStream, underlying.Header.MasterPassword.Password); }