如何安全的加密传输大文件数据

在日常对数据处理的过程中,数据加密已经时很常见的问题了,一般的数据加密有哪些呢:RSA、MD5、AES、Base64等;

RSA:

是公开**系统的代表;

安全性:建立在具有大素数因子的合数,其因子分解困难这一法则之上;

处理速度慢;

**管理:加解密过程中不必网络传输保密的**;**管理优于AES算法;

RSA加解密速度慢,不适合大量数据文件加密;

AES:

Rijndael算法是新一代的高级加密标准,运行时不需计算机有非常高的处理能力和大的内存;

操作可以很容易的抵御时间和空间的攻击,在不同的运行环境下始终保持良好的性能;

AES**长度:最长只有256bit,可用软件和硬件实现高速处理;

**管理:要求在通信前对**进行秘密分配,解密的私钥必须通过网络传送至加密数据接收方;

AES加密速度很快;

md5:

md5加密不可逆,所以它的安全度比较高,不管多大的字符串,它都能生成32位字符串,

md5加密速度非常快;

Base64:

不是加密算法,只是用来编码字节数组,形成字符串的,并提供了解码功能。

在针对平时不需要解密的一般用MD5就好,一般安全性不太高的用Base64就好,安全性又要求,并且需要快的就用AES,安全性非常高的就用RSA,

今天我们要解决的问题是‘如何安全的加密传输大文件数据’;这边首先是一个安全性要求很高的,那就需要用RSA,这边又是大文件,如果用RSA性能上可能有问题,文件需要是可以解密的,MD5肯定就不行,用AES加密可逆,但是AES加密是基于**的,如果**泄露,安全性也得不到保障,这个时候怎么办呢。

我们可以选用RAS+AES,如下图:

如何安全的加密传输大文件数据

我们可以在客户端随机生成一个AES秘钥,通过RSA加密,然后在通过随机的秘钥将文件通过AES加密。