在Windows XP下,我看到一些使用USB设备保护计算机的商业软件。也就是说,屏幕保护程序像往常一样在一段时间后激活。但要停用,您不仅需要密码短语,还需要插入USB设备。该设备包含证书,必须在停用屏幕保护程序之前进行验证。
我正在寻找一些用Python实现这种功能的方法。我在Ubuntu软件中心搜索过,并且BlueProximity是最贴近我目的的软件,但仍然不同。该软件监控某个蓝牙设备,它的存在用于定期模拟用户活动,以避免屏幕保护程序的激活。
当然我可以做一个类似的程序,定期检查某个USB磁盘的存在并验证其包含的证书,如果一切正常,请将屏幕保护程序作为一些用户活动,否则锁定屏幕。
然而,这不是立竿见影的。假设有人偷了我的密码来解锁屏幕保护程序,而不是USB磁盘,那么他可以解锁屏幕。并且在至少一分钟内,屏幕应该再次锁定。即使我的程序有一个相当短的检查周期 - 比如0.1秒,在一个锁定和另一个锁定之间存在从0.1秒和慢慢衰落时间成本(通常接近1s)的间隔。
那么有没有更好的解决方案,例如我的程序可以告诉屏幕保护程序拒绝以任何方式解锁的一些API?