百科问答小站 logo
百科问答小站 font logo



如何评价加密软件VeraCrypt? 第1页

  

user avatar   bei-ji-85 网友的相关建议: 
      

我移植过trueCrypt到嵌入式平台上,还做过基于trueCrypt+国密(SM)的内核驱动。VeraCrypt是一个不错的加密软件,基于trueCrypt的后续版本。

VeraCrypt的最大特点是跨平台,Windows、Linux、MacOS都有对应的版本,甚至一些小众的系统,比如FreeBSD上,都有支持,并且衍生了一些非GPL的版本(tcplay),可以说商业上使用也很方便。目前很难看到一个能跨多个平台的加密软件。

其它回答里提到的VeraCrypt的一些“缺点”其实算不上缺点。

1. 太臃肿。这是因为VeraCrypt的功能多,它甚至可以加密启动盘,我估计很多人都没用过这个功能。VeraCrypt有很多简化的版本,比如Linux上的tcplay就是一个极简的,兼容VeraCrypt的加密工具。如果动手能力前,完全可以基于VeraCrypt修改一个简化版本。

2. 速度慢。这种说法是不太正确的,VeraCrypt家族的加密解密速度并不慢,翻代码就知道了,VeraCrypt会根据CPU的核心数来创建多线程的加密解密线程池,它的速度完全取决于选取的加密算法(通常是AES)。如果用内置的算法,可能会存在编译优化不够好的问题,但这些算法的代码是公开的。相比于闭源的汇编级别的加密算法优化,这种开源的实现相对安全。同样的,如果动手能力强,把AES算法库替换成优化过的,速度肯定很快。

3. 不够安全。VeraCrypt不缓存密钥,对于这个安全性的问题,建议去研究一下代码,VeraCrypt使用的是两级密钥,用户的密钥只用于解开第二级密钥,所以用户密码并不在内存中。内存在释放的时候也做过清理。下面就是VeraCrypt的擦除缓存的代码:

       #define burn(mem,size) do { volatile char *burnm = (volatile char *)(mem); int burnc = size; while (burnc--) *burnm++ = 0; } while (0)     void Buffer::Erase ()     {         if (DataSize > 0)             burn (DataPtr, DataSize);     }     

VeraCrypt的最大特点是可以创建隐藏的加密卷,理论上说,你可以把隐藏的加密卷放到磁盘的任意一个角落里,别人如果不知道密钥的话,甚至无法发现这个隐藏数据区,可能会当做垃圾数据处理。

当年trueCrypt突然放弃维护的时候,就有阴谋论说,是因为恐怖分子使用trueCrypt传递数据,CIA也没办法解开,最后给开发者施压停止了trueCrypt的开发。

所以,如果你的数据要跨平台加密访问,那么VeraCrypt是一个不错的选择。




  

相关话题

  太极助手搜了常用付费软件无结果,为何说它是盗版渠道? 
  Windows 有哪些强烈不建议装的软件? 
  如何评价 Steam 上的软件 Wallpaper Engine? 
  普通个人电脑能做到的最酷炫的事是什么? 
  学术论文中的图表一般用什么软件来画?哪个最专业? 
  学术论文中的图表一般用什么软件来画?哪个最专业? 
  在Ubuntu 上有什么必装的实用软件? 
  谁能用通俗的语言解释一下什么是 RPC 框架? 
  为什么说「动态类型一时爽,代码重构火葬场」? 
  有没有免费的可以编辑PDF的软件? 

前一个讨论
mmap 内存映射,是越过了操作系统,直接通过内存访问文件吗?
下一个讨论
为什么不将打印机设计成插入电脑后自动安装驱动呢?





© 2024-11-09 - tinynew.org. All Rights Reserved.
© 2024-11-09 - tinynew.org. 保留所有权利