数据加密与数据压缩后加密的效率

最近做一个数据库数据的导入导出的工具,在解决了数据导入的自动表排序问题后,客户要求对传输的数据加密和解密

1. 先测试了当前的数据大小变化和加密(RSA)耗费时间:

   常规导出的业务数据 在不加密的情况下才采用二进制存储大概300K左右

   加密后,采用二进制存储数据膨胀到了8M左右

   加密的时间稍微长了一下,正常导出需要几秒钟,现在多了几十秒。勉强可接受

2. 测试解密

   对8M的数据解密,解密进程就一直处于运行状态,等了十来分钟,强制终止执行。

考虑改进策略:

  1. 多线程改进,采用类似多线程下载的方式,将数据加密和解密分为多个数据块,采用多线程执行,然后将执行结果合并。

  2. 因为数据导出主要是文本数据,考虑压缩后加密,在解密的时候解密后再解压缩

目前采用的方法和效果

  因时间比较紧迫,且数据量不大,采用了单线程,数据压缩的方式。

  单线程加密压缩后的数据的时间也不长(目前的数据压缩后加密时间不超过10秒) 

  单线程解密压缩后的数据时间也在10-20秒左右,比之前未压缩的效果要好很多。不过可能安全性有所降低

  后续版本再考虑多线程加密和解密。

你可能感兴趣的:(数据加密与数据压缩后加密的效率)