我想增加暴力破解我的全盘加密所需的时间。我在 Ubuntu 上,并在安装时使用 Luks 加密。我读到过我将使用以下命令来实现每 10 秒只能输入一个密码,
$ sudo cryptsetup luksChangeKey --iter-time 10000 <device>
我要用“/boot”替换“device”吗?不确定我是否需要对启动分区、主分区还是两者执行此操作。
答案1
任何试图暴力破解您加密磁盘的人都会在他们的计算机上对您的磁盘头进行攻击。您的操作系统上的系统参数将毫无意义。
编辑
每U. Windl 的评论我看得更仔细了。然而,我上面的原始陈述仍然是正确的,时间迭代是不是系统参数正如我从名字中错误地假设的那样。
时间迭代根本不是时间,它看起来迭代次数以我认为奇怪的方式使用时间来定义。它不是固定的迭代次数,而是在定义的毫秒内在该特定机器上可能进行的迭代次数,如下所示时间迭代。所以是的时间迭代参数是时间,但它会导致不同的迭代计数作为特定机器的速度的函数。
我发现Linux 博客 – Mönchmeyer 博士非常有帮助。
我觉得这篇文章中有几段很有趣的引言:
...正是主密钥的计算导致了巨大的延迟时间。AES 解密本身并不是启动延迟时间的主要来源...
这表明暴力密码猜测速度变慢了,但原始密钥猜测不会受到影响。实际上,原始密钥猜测无论如何都是无望的。
...还应该考虑到,物理控制了加密磁盘的攻击者会尝试在比您的机器快得多的机器上破解 LUKS 密码。因此,每秒进行几千万次 PBKDF2 迭代是完全可能的 - 这意味着每秒进行多次密码尝试。...
再次感谢U·温德尔以便踢得更远。
答案2
您将在加密分区上运行此命令。这通常不包括,/boot
因为系统需要加载代码来查找和解密您的 LUKS 分区。
要查找系统上所有 LUKS 加密的分区:
sudo fdisk -l |grep ^/dev/ |grep -Eo '^\S+' |xargs --max-args=1 -d '\n' -I DEV bash -c 'sudo cryptsetup isLuks DEV && echo DEV'
请注意,cryptsetup
手册页说使用--iter-time
“会相应地减慢所有后续 luksOpen 操作的速度。”换句话说,即使您输入了正确的密码,您也必须等待 10 秒钟才能解锁分区。另外,我相信 10 秒是为你的系统,因此使用更快和/或多台计算机将能够更快地破解您的密码。
确保使用强密码!
答案3
要找出/boot
对应的 LUKS 设备,请尝试mount | grep /boot
,然后使用cat /etc/crypttab
和进行验证blkid <your_device>
。输出应类似于:
/dev/sys/boot: UUID="f3aabb69-d3ca-41cf-87cf-b19585f2c123" TYPE="crypto_LUKS"
另请参阅我对该问题的评论。
答案4
看来我误解了我想要做的事情。如果这只会增加我自己机器上的使用时间,那么这真的没有什么意义。感谢大家提供的宝贵信息。如果加密模块中内置了这样的功能,那么超时时间将适用于任何安装了加密驱动器的机器,那就太好了。例如:无论驱动器放入什么设备,超时时间为 10 秒或 15 秒。如果有人的密码很长(他们应该有),那么我认为这不会带来任何不便,只会导致驱动器进一步变硬。