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

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

發布時間: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盤只讀或禁止使用。

閱讀全文

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

熱點內容
安卓手機圖片文件夾加鎖 瀏覽:776
steam提示音在哪個文件夾 瀏覽:337
項目開發全程實錄pdf 瀏覽:530
單片機reset 瀏覽:595
pdf怎麼是英文 瀏覽:969
旗雲2壓縮機保險 瀏覽:374
做程序員壓力大嗎表情包 瀏覽:312
pdf下拉 瀏覽:371
php去掉小數後面的0 瀏覽:954
阿里備案買什麼伺服器 瀏覽:261
網路驅動下載到哪個文件夾 瀏覽:481
達內程序員培訓西安 瀏覽:505
人保送車主惠app上怎麼年檢 瀏覽:604
android手機開機密碼 瀏覽:480
linux查看某個進程命令 瀏覽:529
閑置的騰訊雲伺服器 瀏覽:438
rar壓縮包mac 瀏覽:628
php混淆加密工具 瀏覽:582
java把數字拆分 瀏覽:464
如何下載svn伺服器舊版本 瀏覽:560