|Hacker实例:自动按YubiKeys( 二 )


本文插图
【|Hacker实例:自动按YubiKeys】

步进电机将电脉冲转换为机械旋转 , 而D1 Mini具有用于发送电脉冲的引脚 。
|Hacker实例:自动按YubiKeys
本文插图

但是步进电机会旋转 , 通常只需要沿直线方向戳一下即可 。 因此搜索了''28BYJ-48'' , 发现了这一点:28BYJ-48 Motor Halter 。
|Hacker实例:自动按YubiKeys
本文插图

这将齿轮连接到电动机 , 该齿轮可以前后引导长齿条 。 要向YubiKey推一个长的塑料东西 , 它看起来就像一根手指 。 在Fusion 360中打开了这两个模型 , 并使用了一种称为'' smooshing''的高级CAD技术 , 结果就是:
|Hacker实例:自动按YubiKeys
本文插图

接下来 , 导出了污损的STL , 并在Prusament PLA Lipstick Red将其用3D打印出来了 。 然后 , 用塑料手指触摸了YubiKey , 结果没有按照预期成功触发工作 。 但是用桌上的金属螺丝测试 , 可以成功触发YubiKey , 立即发出OTP 。
知道原因后Bertrand对该塑料Fingle进行了改造:用虎钳将其固定在办公桌上 , 并在其中钻了一个小孔 , 然后将金属螺钉拧入其中 , 然后将其与YubiKey碰触 , 结果还是不行!
|Hacker实例:自动按YubiKeys
本文插图

后来他发现将金属螺钉触摸到Yubikey时 , 它只是将电荷从身体传输到金属螺钉 , 然后将其传输到YubiKey上的电容式触摸传感器 。 那么 , 如何欺骗电容式触摸传感器以为它是真正的手指呢?
据猜想电容式触摸传感器的工作方式是它们通过测量人体对地面的电容 , 因此 , 如果直接将传感器连接到地面 , 它会认为其真正导电或至少对人体足够导电手指要介于两者之间 。 因此 , 拿了一根绝缘电线 , 稍微拧开金属螺钉 , 将其缠绕在螺钉上 , 然后再次拧紧 。 然后 , 将另一端连接到D1 Mini板上的GND端口 , 将其触摸到YubiKey , 然后它起作用了!
现在 , 步进电机的驱动器板已经连接到D1 Mini上的5V和GND , 所以可能需要剥开GND线 , 然后将其同时连接到驱动器板和螺钉上 。 后来将金属丝的一端从步进电机的金属本体(假设金属本体的外壳已接地)和塑料外壳之间的金属螺钉上楔入即可 。
|Hacker实例:自动按YubiKeys
本文插图

一旦确认手指会触发YubiKey , 就需要一种将YubiKey安装在手指附近的方法 , 因此使用了数字卡尺来测量USB-C扩展电缆的尺寸 , 并在Fusion 360中设计了一个支架 。
|Hacker实例:自动按YubiKeys
本文插图

USB-C扩展电缆将插入左侧的孔中 , 而电动机将安装在右侧 。
此时 , 必须将步进电机驱动器板连接到D1 Mini 。 这可以通过将一些接头焊接到D1 Mini上 , 然后在它们之间连接一些跨接线来完成 。
|Hacker实例:自动按YubiKeys
本文插图

|Hacker实例:自动按YubiKeys
本文插图

将步进电机放入外壳并将所有零件拧在一起后:
|Hacker实例:自动按YubiKeys
本文插图

软件设计
该系统软件部分更加简单 。 可以使用Arduino IDE对D1 Mini进行编程 。 首先 , 进入''首选项'' , 然后package_esp8266com_index.json 添加 。 然后 , 当您进入板管理器时 , 可以安装esp8266包括LOLIN(WEMOS)D1 R2&mini板在内的软件包 , 应在''工具''下选择该软件包 。


推荐阅读