我们将 Gemalto MFA 遥控器与 AWS 配合使用。我们当然知道提供给 AWS 的遥控器序列号;我推测该序列号构成了“密钥”,而 TOTP 算法会从该种子生成基于时间的代码。我很好奇该硬件设备是否可以通过使用相同种子和 TOTP 算法的软件中的虚拟设备复制。是否存在可以这样做的应用程序或服务?
答案1
不,这是不可能的——如果可以提取其密钥,那么任何此类设备都会存在很大的弱点。
但是,如果您只是切换到使用虚拟设备(应用程序),当您设置它时,您将获得用于初始化设备的密钥(作为一串字符或二维码)...您可以使用它来初始化任意数量的虚拟设备,只要它们的时钟正确,它们就会同时显示相同的代码,因为时间固定在 Unix 纪元(不是必需的,但在这种情况下是这样的)。
这种做法的优点和风险超出了本文的讨论范围,但从技术上讲,这是可行的。