我正在为我的网络安全课程实施基于时间的OTP(TOTP)。上次我做演讲时,我的老师问我:“如果要通过生成QR码然后让客户端(软令牌)对其进行扫描来共享密钥,您如何确定其安全性?”他的意思是从数据库获取密钥,然后使其二维码安全的过程?如果第三方有权访问该网页,那么?第三方无需扫描代码就能知道密钥吗?
他的问题让我很困惑。
答案 0 :(得分:0)
最有可能的问题是生成QR码,而不是真正涉及共享密钥本身的安全性(关于共享密钥的传输,您无能为力-您必须以某种方式共享它)。 关于QR生成的注意事项-不要使用外部服务(例如Google图表)来生成QR代码,而必须使用最少的外部库来完成-理想情况下,纯粹是在客户端。 这是一个示例https://github.com/token2/totp-toolset-local