WebUSB 闪存驱动器序列号

WebUSB Flash Drive Serial Number

所以我想在我的网站上使用闪存驱动器作为 2FA 的选项(使用设备序列号)。我正在使用 WebUSB,但闪存驱动器不会出现在设备选择中 window。我看到网络 USB 不能 read/write 文件,所以 它甚至可以看到闪存驱动器吗?

如果有帮助,这是我的代码:

console.log("test");
 usbLookup.addEventListener('click', function() {
 navigator.usb.requestDevice({ filters: [{ }] })
.then(device => {
  console.log(device.serialNumber);      
 
})
.catch(error => { console.log(error); });
});
<iframe allowpaymentrequest allow='usb'></iframe>

<a id="usbLookup">Get Serial</a>

在某些平台上,WebUSB 看不到闪存驱动器,因为它是如何实现的。

一般来说,这是一个糟糕的第二因素,因为序列号很容易被猜到和伪造。我建议改用 WebAuthn API,它提供对来自多个供应商的真正安全令牌的支持。