Time-based one-time password (TOTP)
· 8 min read
全称 Time-Based One-Time Password 即基于时间的一次性密码,TOTP 属于 OTP 的一种实现方式,基于当前时间与密钥计算的动态密码,通常每 30s 刷新一次。
生 成 TOTP 无需网络,前提是当前时间是准确的。服务方与本地生成的 TOTP 相同,则说明校验通过。
真神 —— C++是世界上最牛逼的语言,没有之一。
View All Tags全称 Time-Based One-Time Password 即基于时间的一次性密码,TOTP 属于 OTP 的一种实现方式,基于当前时间与密钥计算的动态密码,通常每 30s 刷新一次。
生 成 TOTP 无需网络,前提是当前时间是准确的。服务方与本地生成的 TOTP 相同,则说明校验通过。
本质上 Electron 调用原生 API 的逻辑就是 Node 环境对原生 API 的调用,与 Electron 没有根本上的联系,Electron 只是提供了运行 Nodejs 的环境,并没有引入特殊机制。
所以问题可以简化为如何在 Nodejs 环境中调用原生 API。这里探索两种方案:
费了好大的功夫, 在 WIKI 上磕磕绊绊的大概看懂了什么是 CRC。
所以实现的步骤无非就是按字节逐个进行异或计算,例如 CRC-8 就是 CRC 位宽为 8,生成多项式编码为 9 位,就是按照 9 位逐个计算
那么如果提前提前准备一个涵盖所有编码结果的预算表,就能快速的遍历,而这个预算表的长度则为 2^10 - 1