如何在命令行输入密码时显示击键

如何在命令行输入密码时显示击键

我的笔记本电脑的键盘出现故障,某些按键有时可以使用,有时则不能。当我在 GUI 上输入密码时,我意识到按下的键不起作用,因为我可以通过查看密码字段中类似于 ****** 的内容来计算击键次数。这让我有机会重新按下该键,直到它起作用(这可能意味着按 1-3 次)。这同样适用于输入普通文本。

然而,当在命令行中输入密码时(su例如,使用 ),我只在按 Enter 并收到消息后才意识到某些键不起作用Authentication failure

有安全的处理方法吗?仅以纯文本形式输入密码并复制并粘贴,似乎并非如此。

答案1

您可以设置sudo并使用它来代替su.

sudo 允许你设置pwfeedback选项,这将执行您想要的操作。

答案2

不,可能不会。必须修改程序才能在每次按键时输出点或星号。这是额外的代码(禁用回显要容易得多)。有些人认为这是令人厌恶的,因为它使密码的长度可见,所以我也不会在补丁被接受上投入太多钱。


在笔记本电脑上本地输入密码可能无法但这很危险,因为如果你的笔记本电脑遭到入侵,键盘记录器可能是第一个安装的东西,当你在 SSH 中输入密码时,攻击者无论如何都会获取你的密码。不是输入密码,这样就可以了可见的不过,在屏幕上以纯文本显示是明智的。

您是否考虑过使用密码管理器?它们的工作原理通常是让您将密码粘贴到需要密码的应用程序中,因此您只需键入管理器的主密码,带有 GUI 的密码管理器可能会显示这些点。

另一种可能性是更改所有密码,以便他们不需要任何损坏的密钥。如果只有几个键被卡住,并且您通过使密码稍微长一点来弥补它,那么这应该不会太糟糕。


无论如何,即使出于其他原因,使用损坏的键盘最终也可能会变得非常烦人,所以我会考虑将其清洁/修复/更换。

相关内容