我认为用'encfsctl passwd path/to/encrypted‘更改密码会更改所有文件名。但没起作用。知道为什么吗?
我知道了,所以密码被正确地更改了:
Enter current Encfs password
EncFS Password:
Enter new Encfs password
New Encfs Password:
Verify Encfs Password:
Volume Key successfully updated.发布于 2012-07-01 05:53:11
数据加密系统(通常)不使用密码直接加密数据。这样做的问题是,当密码被更改时,所有的数据都需要重新加密,这是一个非常密集的过程。(它还防止支持多个密码。)相反,在初始化系统时生成一个随机密钥,并使用该随机密钥对数据进行加密。然后用密码加密随机密钥并将其存储在磁盘上。为了解密数据,密码首先用于解密随机密钥,然后使用随机密钥对数据进行解密。更改密码只需重新加密这个随机密钥,而不是所有数据.
encfs手册提到:
用户必须提供用于(间接)加密文件名和文件内容的密码。
这意味着它使用了这个方案。
发布于 2014-10-07 03:19:40
在EncFS中,文件名和数据具有不同的初始化向量。这将防止攻击者加密数据(或文件名)并将其与cypthertext进行比较。
正如默认答案中提到的,密码实际上只用于加密密钥。密钥用于对数据进行加密。因此,假设您更改了密码,则可以重新加密容器中的所有数据。例如:像这样(如果包含解密文件的容器是~/dec/ )
cd ~/dec/
mkdir _copy
cp -a ./ ./_copy/
mv ./_copy/* ./https://serverfault.com/questions/403820
复制相似问题