能否用libfido2适配Thetis品牌FIDO令牌?适配问题求助
问题背景与求助
原本有一段基于WinHello与Thetis品牌FIDO令牌通信的C++代码运行正常,因需求需替换为非WinHello的库,故选用并编译了libfido2。
适配过程中的修改
- 修改了
fido_hid_manifest()中的设备识别判断条件://if (is_fido(d) == false) if (wcscmp(d->product_string, L"FIDO2 Security Key") != 0)
修改后设备可被识别,输出日志如下:
run_manifest: found 1 hid device fido_tx: dev=000002A60511C050, cmd=0x86 fido_tx: buf=000002A60511C050, len=8 0000: 5a ab b6 54 5c 5d 7e 23 tx: tx_preamble fido_dev_open_tx: fido_tx
遇到的错误
执行fido_dev_open(dev, path);时出现错误,追踪发现问题出在以下代码段:
if ((sent = tx_preamble(d, cmd, buf, count, ms)) == 0) { fido_log_debug("%s: tx_preamble", __func__); return (-1); }
设备路径为:
\\?\HID#VID_1EA8&PID_FC25&MI_00#7&29aed109&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\KBD
求助问题
- libfido2是否支持YubiKey以外的FIDO令牌?
- 需修改哪些部分才能适配Thetis令牌?
内容的提问来源于stack exchange,提问作者VOLVO
相关产品推荐
相关产品推荐

