尘缘丶 发表于 2021-7-8 15:50

C#RSA+AES加密文件如何保证安全性

本帖最后由 尘缘丶 于 2021-7-9 10:44 编辑


网上看大佬们的文章说AES加密文件,然后RSA加密AES的秘钥
可是如何写才能保证AES秘钥不被反编译或者其它方式弄到秘钥
RSA加密大文件夹效率太低了,好像只能完整加密不支持部分加密
朋友说想加密后备份文件,防止被窃取机密

流云 发表于 2021-7-8 16:09

rsa和aes都是块加密
你可以只加密一部分数据
而aes的key最大也才32个字节
用rsa加密32字节的数据 能慢到哪去

另外 大数据加密可以先压缩 然后aes加密压缩后的某一部分数据 再rsa加密aes的key
比如压缩后文件头指定长度的数据使用aes加密后替换 之类的 不用非要加密整个文件的

山顶的一棵草 发表于 2021-7-8 16:17

用RAR 加密即可。

destiny_03 发表于 2021-7-8 16:19

只能想办法给程序上壳上反调试才行吧?不然在clr的方法里下断很容易就拿到密钥了。

尘缘丶 发表于 2021-7-8 16:31

流云 发表于 2021-7-8 16:09
rsa和aes都是块加密
你可以只加密一部分数据
而aes的key最大也才32个字节


使用aes加密文件的时候需要程序解密rsa或者在程序写入明文秘钥的话都会被大佬弄出来吧

流云 发表于 2021-7-8 16:35

他又不清楚你备份数据的结构
他怎么解
比如你备份文件A
加密过程是 压缩-AES压缩后的前128字节并替换-然后保存
此时 别人拿到你的备份文件 他并不清楚你文件被破坏过 或者你破坏了哪一部分
具体的规则你要自己设计一个 记在脑子里

夜泉 发表于 2021-7-8 16:35

效率问题可以分段加密
要想防止不被小白逆向,最好就是加密核心算法混淆,然后虚拟化,最后再混淆,就行了

尘缘丶 发表于 2021-7-8 16:38

流云 发表于 2021-7-8 16:35
他又不清楚你备份数据的结构
他怎么解
比如你备份文件A


这倒是,只不过害怕连加密程序也给拿到了。。

流云 发表于 2021-7-8 16:41

那无解的
不管多厉害的锁
你钥匙都被偷了设计锁有啥用

尘缘丶 发表于 2021-7-8 16:42

夜泉 发表于 2021-7-8 16:35
效率问题可以分段加密
要想防止不被小白逆向,最好就是加密核心算法混淆,然后虚拟化,最后再混淆,就行了

如果rsa可以加密文件头部的部分就好了,比如5m之后就不加密了
页: [1] 2
查看完整版本: C#RSA+AES加密文件如何保证安全性