Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux中的击键动力学_Linux_Authentication_Biometrics - Fatal编程技术网

Linux中的击键动力学

Linux中的击键动力学,linux,authentication,biometrics,Linux,Authentication,Biometrics,我正在考虑为Linux实现一个击键动力学(根据键入模式对用户进行身份验证)应用程序。在我看来,我有两种选择: 扩展Linux登录以支持击键动态 创建一个桌面锁程序,该程序“锁定”屏幕,并且只能由具有特定打字模式的打字员解锁 备选方案1是否可行?Windows支持通过msgina.dll扩展登录过程,Linux是否支持类似的功能 对于Altenactive 2,是否可以禁用鼠标和键盘?嘿,Linux是开源的,您可以做任何您想做的事情:-) 很可能您不需要修改内核。例如,终端登录由login程序控制

我正在考虑为Linux实现一个击键动力学(根据键入模式对用户进行身份验证)应用程序。在我看来,我有两种选择:

  • 扩展Linux登录以支持击键动态
  • 创建一个桌面锁程序,该程序“锁定”屏幕,并且只能由具有特定打字模式的打字员解锁
  • 备选方案1是否可行?Windows支持通过msgina.dll扩展登录过程,Linux是否支持类似的功能


    对于Altenactive 2,是否可以禁用鼠标和键盘?

    嘿,Linux是开源的,您可以做任何您想做的事情:-)

    很可能您不需要修改内核。例如,终端登录由
    login
    程序控制。更改源代码并重建它肯定会允许您做您需要做的事情,尽管我不知道这有多困难:-)

    图形登录由窗口管理器负责,因此要更改的程序取决于您使用的窗口管理器


    编辑:再想一想,我不确定
    login
    是否执行得足够早,以捕捉击键动态。此外,这有点冒险,因为如果您的登录版本失败,可能会使登录和修复问题变得困难。您可能需要查看
    getty
    并了解它如何调用
    login
    。如果您在图形界面中执行此操作,可能会更容易,因为您可以始终使用文本终端来解决任何问题

    libpam具有插件功能。所以是的,完全有可能,就像著名的msgina:)

    锁定屏幕是相当敏感的-谁负责?窗口管理器、X服务器、会话管理器、屏幕保护程序进程、


    我担心不同的桌面环境(Gnome,KDE…)可能会有不同的意见。虽然现在,我很肯定他们都会共享某种FreeDesktop dbus接口来协调这类功能。

    正确的方法可能是通过PAM身份验证模块。查看此处的模块编写器指南:


    基本上,您可以将模块添加到PAM堆栈中,让它进行击键分析,然后将成功或失败传递给系统。这使您可以将其与控制台登录过程集成,甚至可以在启用PAM的情况下与SSH集成。我不太确定它如何与KDM或GDM等图形登录一起工作。我知道你可以使用PAM模块,但是当然,交互是通过GUI文本框完成的。

    假设这不仅仅是一个玩具(换句话说,如果你计划分发的话),请确保在出现问题时考虑如何绕过键入模式分析。随着时间的推移,我的打字模式可能会有很大的变化,因为我的手腕问题时不时会爆发。当他们这样做时,我的打字可能会发生显著的变化。如果我的输入从早到晚都有所变化,我也不会感到太惊讶,因为我或多或少有些疲劳和/或咖啡因。

    哦,实际上我在问是否有一些方法可以不用从源代码编译linux,比如windows有msgina.dll。我们希望它是人们可以下载到他们的linux PC并安装的东西这就是他说的如果你获取程序“登录”的源代码,你可以修改它来做你想做的,然后编译它并作为下载/安装提供。你实现了什么吗?