public static string TryBase64HashFromFile(this FileInfo file) { try { return(file.Base64HashFromFile()); } catch { return(null); } }
public void EncryptDecryptLargeFile_ShouldWork() { var fileInfo = new FileInfo("largetestfile.fi"); using (var ws = fileInfo.OpenWrite()) { for (int i = 0; i < 1024 * 3; i++) //3Gb --> 1Mb per round { ws.Write(Symetric.GetRandomBytes(1024 * 1024 * 8)); } } var crypted = fileInfo.EncryptFile("passs", false, KeySize.Highest_256); var decrypted = crypted.DecryptFile("passs", true); var result = fileInfo.Base64HashFromFile() == decrypted.Base64HashFromFile(); fileInfo.Delete(); decrypted.Delete(); result.Should().BeTrue(); }