Как передать криптопоток или memorysteam непосредственно в тег видео в HTML5 для воспроизведения видео
Я хочу воспроизводить зашифрованное видео в моем веб-приложении asp.net, но я не хочу, чтобы все видео расшифровывалось и сохранялось во временной папке для воспроизведения видео, а есть ли какой-нибудь способ с помощью потока памяти или криптопотока воспроизвести видео непосредственно в html5 видео плеер я скопировал свой код здесь
public void Encrypt1(string inputFile, string outputFile, string salt)
{
AesManaged aesManaged = new AesManaged();
byte[] bytes = new UTF8Encoding().GetBytes(salt);
Rfc2898DeriveBytes rfc2898DeriveBytes = new Rfc2898DeriveBytes(salt, bytes);
aesManaged.Padding = PaddingMode.PKCS7;
aesManaged.Key = rfc2898DeriveBytes.GetBytes(16);
aesManaged.IV = rfc2898DeriveBytes.GetBytes(16);
using (FileStream fileStream = new FileStream(outputFile, FileMode.Create))
{
using (CryptoStream cryptoStream = new CryptoStream((Stream) fileStream, aesManaged.CreateEncryptor(), CryptoStreamMode.Write))
{
new FileStream(inputFile, FileMode.Open).CopyTo((Stream) cryptoStream);
cryptoStream.FlushFinalBlock();
}
}
}
}
public void DecryptMe(string inputFile, string outputFile, string salt)
{
AesManaged aesManaged = new AesManaged();
byte[] bytes = new UTF8Encoding().GetBytes(salt);
Rfc2898DeriveBytes rfc2898DeriveBytes = new Rfc2898DeriveBytes(salt, bytes);
aesManaged.Padding = PaddingMode.PKCS7;
aesManaged.Key = rfc2898DeriveBytes.GetBytes(16);
aesManaged.IV = rfc2898DeriveBytes.GetBytes(16);
using (FileStream fileStream = new FileStream(outputFile, FileMode.Create))
{
using (CryptoStream cryptoStream = new CryptoStream((Stream)fileStream, aesManaged.CreateDecryptor(), CryptoStreamMode.Write))
{
new FileStream(inputFile, FileMode.Open).CopyTo((Stream)cryptoStream);
cryptoStream.FlushFinalBlock();
}
}
}