导航:首页 > 文档加密 > 基于可信对象的加密解密系统

基于可信对象的加密解密系统

发布时间: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盘只读或禁止使用。

阅读全文

与基于可信对象的加密解密系统相关的资料

热点内容
ev3编程模块 浏览:269
程序员脖子痛如何缓解 浏览:529
java加密aes对称加密算法 浏览:595
格式工厂视频压缩方法 浏览:475
编译后的函数和原始函数如何对应 浏览:621
阐述邮件加密解密过程 浏览:400
敲沙子声控解压 浏览:54
计算机教室用什么服务器 浏览:800
华为畅享9怎么设置短信加密 浏览:285
中国现代编译器 浏览:850
如何得到app专栏 浏览:453
魔兽世界日本服务器什么职业多 浏览:729
表格加密怎么设置只读模式打开 浏览:884
哪个app可以不用花呗分期 浏览:861
SSL是对称加密吗 浏览:46
捷途app钥匙怎么用 浏览:960
享省油app怎么在加油站使用 浏览:250
crc算法的实现c语言 浏览:187
风光摄影pdf 浏览:938
头部按摩器可以缓解压力吗 浏览:652