導航:首頁 > 文檔加密 > 基於可信對象的加密解密系統

基於可信對象的加密解密系統

發布時間:2023-06-11 23:55:04

『壹』 面向對象基礎知識之文件加密解密

文件加密解密是開發中經常用到的一個功能點,常見於客戶端項目,需要對配置數據、參數設置、數據字典等需要隱匿,來增強客戶端的安全性。

本章我們介紹兩種常見文件加密解密方法

1.自定義加密解密函數,思路是文件轉成Byte[],對byte元素使用對稱加密演算法對齊加密。加密後的byte[]轉成base64。解密文件使用base64加密的byte[]解密即可生成原文件。

2.使用 System.Security.Cryptography. RijndaelManaged,這種加密需要提供32位密碼和16位向量密碼

//加密

string pwd = "" ; //32位,密碼

string ivpwd = "gjhdjfhdjdkdssad" ; //16位,向量密碼

RijndaelManaged aes = new RijndaelManaged();

byte [] pwdBytes = System.Text.Encoding.UTF8.GetBytes(pwd);

aes.Key = pwdBytes;

aes.IV = Encoding.UTF8.GetBytes(ivpwd);

aes.Mode = CipherMode.CBC;

aes.Padding = PaddingMode.PKCS7;

byte [] readFileByte = ReadByte(filePath);

ICryptoTransform transform = aes.CreateEncryptor();

byte [] fielBuffer = transform.TransformFinalBlock(readFileByte, 0, readFileByte.Length); //注意這里返回的是加密後的byte[]

//解密

RijndaelManaged aes = new RijndaelManaged();

byte [] pwdBytes = System.Text.Encoding.UTF8.GetBytes(pwd);

aes.Key = pwdBytes;

aes.IV = Encoding.UTF8.GetBytes(ivpwd);

aes.Mode = CipherMode.CBC;

aes.Padding = PaddingMode.PKCS7;

byte [] readFileByte = ReadByte(filePath);

ICryptoTransform transform = aes.CreateDecryptor();

//注意這里返回的是解密後的byte[]

byte [] fielBuffer = transform.TransformFinalBlock(readFileByte, 0, readFileByte.Length);

加密方式越復雜需要的計算量越大,速度相應會變慢;加密方式需要結合項目來做選擇。客戶端項目對於數據保密性較強建議使用RSA和 RijndaelManaged 混合加密。

『貳』 公司內部的數據文件如何防止泄露

1,員工入職時 簽訂保密協議,為員工普及相關法律的知識。也為日後維權做好鋪墊。
2,內部實時獎懲制,互相監督。一個文件盡量多個人同時負責等等。
3,安裝域之盾軟體 開啟透明加密功能,用戶使用基本無感,不影響用戶日常的操作行為。
4,開啟軟體的外發審核功能,一切的外發行為都需要審核 包括 qq 微信 郵箱 網盤等等。如果不審核即為非法外發,那麼發出去的文件就都是亂碼。。
5,對常用U盤 設置u盤白名單,設置陌生U盤只讀或禁止使用。

閱讀全文

與基於可信對象的加密解密系統相關的資料

熱點內容
美國疾控發防疫命令 瀏覽:139
用固定循環編程可以 瀏覽:879
硅膠壓縮比測試 瀏覽:800
vc命令行編譯c 瀏覽:674
php用戶登錄界面 瀏覽:82
安卓車載導航如何卸載自帶軟體 瀏覽:714
階乘的編程c 瀏覽:415
java視頻教程達內 瀏覽:825
單片機應該怎麼學 瀏覽:420
空氣壓縮機品牌名稱 瀏覽:346
word文檔部分內容加密 瀏覽:62
壓解壓軟體 瀏覽:935
java設置excel格式 瀏覽:957
單片機鎖存器地址怎麼看 瀏覽:576
手機硬體編程 瀏覽:835
如何去除你看文件夾時間 瀏覽:442
兩個加數的和的編程 瀏覽:796
51單片機lcd顯示 瀏覽:585
hacmp命令 瀏覽:621
安卓游戲機都有什麼 瀏覽:75