如何设置可区分不同密钥的密码

如何设置可区分不同密钥的密码

shift我可以以选择多个键中的哪个键(例如左键而不是右键)很重要的方式更改我的短语/短语(的设置)吗?

我是否可以更进一步,要求特定的击键顺序及其组合,即使在(纽约)文本程序中键入密码短语(例如在输入期间删除文本)时结果不可见?

答案1

DopeGhoti 的答案(不!)是正确的,只要我们谈论的是标准软件,这意味着将密码短语作为一行文本读取,您可以以任何您想要的方式键入(甚至纠正拼写错误),直到您点击进入。

也就是说,从技术上来说,区分左移/右移键是可能的,这一点很xev容易证明。因此,只要键盘本身根据按下的键发送不同的键码,您就可以使用它 - 如果您不厌其烦地创建自己的包装器来读取各个击键而不是文本。

更进一步,您甚至可以添加诸如必须以特定节奏输入密码之类的内容。有点像一些旧游戏曾经有的作弊代码。您甚至可以使用真正的游戏控制器来输入这些......

所以(是的!)几乎一切皆有可能,但您必须开发一个提供此类功能的程序,并使其将您所需的输入转换为文本表示或散列,然后可以将其用作密码。接下来的问题是让用户有现实的机会重复生成相同的表示/散列。

因此,如果您确实决定将密码短语输入变成节奏游戏,那么应该留有一定的余地。使用常规键盘按两次 Shift(不输入字母)不会造成任何损害,您的软件将如何处理此类错误输入?


无论如何,只要努力,就有可能。那么更大的问题是这样做是否有任何意义。无论如何,区分左/右 Shift 键只会增加 1 位熵。看起来不是很有用。

一般来说,密码包装器并非闻所未闻,例如,它是为了支持专用硬件(例如集成 yubikey 质询响应)。两因素身份验证、高熵密码短语可能值得。

答案2

否。两个Shift键(假设您的键盘通过键盘输入输入文本时,两个 Shift 键(这绝对不能保证)执行完全相同的操作(尽管有像重新映射RShiftCompose或类似的奢侈想法,但它不再是一个Shift键)。 Ana与 an 不同A,但无法区分ARShift-创建的字符与由-A发送到输入的字符,或者实际上与通过从剪贴板粘贴发送的字符或在按住(的同时在数字键盘上输入 Unicode 或 ASCII 代码发送的字符) 进行区分。在某些配置中),或发送文本输入的无数可能的方式中的任何一种。一旦输入了, an就是an 。LShiftAAltAAAA

答案3

不适用于密码,因为它只是一个字节序列。

至于密码,那么如果你重新编写密码认证系统(或者只是添加一个模块)。但是,您可能会破坏一些东西(例如 sudo 以及您或我不考虑的其他东西)。计算机可以读取密钥代码并测量时间,但标准密码系统仅存储测试字符串。它可以进行调整,但请参阅下一段。

您正在考虑违反安全的第一条规则:“安全设备必须对攻击者来说很难,而对合法用户来说必须容易。”这似乎给合法用户带来了困难,而给攻击者增加了很少的困难。

话虽如此,它可能是一个很好的锻炼器,即使实际上它会降低安全性。一位朋友曾经编写了一个登录系统,该系统只是测量他按下空格键的速度(多年后,我意识到这是一个生物识别系统)。

相关内容