日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

.net aes加密视频等文件

發布時間:2024/8/24 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 .net aes加密视频等文件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

公司學習平臺在app端下載下來的視頻需要加密

隨查找資料參考一些寫法

寫了aes的加密方法

記錄防止忘記

using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Security.Cryptography; using System.Text; using System.Threading.Tasks;namespace ConsoleApplication1 {class Class1{private const string SKey = "_?73^?dVT3st5har3";private const string SaltKey = "!2S@LT&KT3st5har3EY";private const int Iterations = 1042; // Recommendation is >= 1000static byte[] GetBytes(string str){var bytes = new byte[str.Length * sizeof(char)];Buffer.BlockCopy(str.ToCharArray(), 0, bytes, 0, bytes.Length);return bytes;}static string GenerateKey(){// Create an instance of Symetric Algorithm. Key and IV is generated automatically.DESCryptoServiceProvider desCrypto = (DESCryptoServiceProvider)DESCryptoServiceProvider.Create();// Use the Automatically generated key for Encryption. return ASCIIEncoding.ASCII.GetString(desCrypto.Key);}public static void EncryptFile(string srcFilename, string destFilename){var aes = new AesManaged();aes.BlockSize = 128;aes.KeySize = 256;var salt = GetBytes(SaltKey);var key = new Rfc2898DeriveBytes(SKey, salt, Iterations);aes.Key = key.GetBytes(aes.KeySize / 8);aes.IV = key.GetBytes(aes.BlockSize / 8);aes.Mode = CipherMode.CBC;ICryptoTransform transform = aes.CreateEncryptor(aes.Key, aes.IV);using (var dest = new FileStream(destFilename, FileMode.CreateNew, FileAccess.Write, FileShare.None)){using (var cryptoStream = new CryptoStream(dest, transform, CryptoStreamMode.Write)){using (var source = new FileStream(srcFilename, FileMode.Open, FileAccess.Read, FileShare.Read)){source.CopyTo(cryptoStream);}}}}public static void DecryptFile(string srcFilename, string destFilename){var aes = new AesManaged();aes.BlockSize = 128;aes.KeySize = 256;var salt = GetBytes(SaltKey);var key = new Rfc2898DeriveBytes(SKey, salt, Iterations);aes.Key = key.GetBytes(aes.KeySize / 8);aes.IV = key.GetBytes(aes.BlockSize / 8);aes.Mode = CipherMode.CBC;ICryptoTransform transform = aes.CreateDecryptor(aes.Key, aes.IV);using (var dest = new FileStream(destFilename, FileMode.CreateNew, FileAccess.Write, FileShare.None)){using (var cryptoStream = new CryptoStream(dest, transform, CryptoStreamMode.Write)){try{using (var source = new FileStream(srcFilename, FileMode.Open, FileAccess.Read, FileShare.Read)){source.CopyTo(cryptoStream);}}catch (CryptographicException exception){throw new ApplicationException("Decryption failed.", exception);}}}}} }

運行

?

static void Main(string[] args){// Class1.EncryptFile(@"C:\kc_Page_2.mp4", @"C:\kc_Page_3.mp4");//Class1.DecryptFile(@"C:\kc_Page_3.mp4", @"C:\kc_Page_4.mp4");Class1.EncryptFile(@"C:\1.docx", @"C:\2.docx");Class1.DecryptFile(@"C:\2.docx", @"C:\3.docx");}

?

轉載于:https://www.cnblogs.com/zhang888/p/4178501.html

總結

以上是生活随笔為你收集整理的.net aes加密视频等文件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。