gpt4 book ai didi

c# - 如何使用 RFID 徽章和 PIN 码安全访问

转载 作者:太空狗 更新时间:2023-10-29 22:33:56 24 4
gpt4 key购买 nike

我有一个类似于门锁的场景,需要双因素身份验证才能获得访问权限:

  • 带有 GUID 的 RFID 徽章
  • 通过键盘输入的 4 位 PIN 密码。

我需要将这些安全地存储在 SQL Server 2008 中。我认为可以正常存储 GUID,但是应该采取什么方法来保护数据库和整个系统中的 PIN?

对于 4 位 PIN 码,典型的哈希/加盐方法是否足够?

保护此类系统的正确方法是什么?

编辑

更多信息...最终这个系统很可能需要比标准“门锁”更安全。用户将使用 RFID token 和 PIN 码进行身份验证。获得系统访问权限后,用户将有机会通过与其帐户关联的信用卡浏览和购买商品(使用第 3 方网关/保险库服务进行存储)。这会对系统产生什么影响?

编辑 2

此外,情况是这不是基于网络的应用程序。用户只能从专用工作站访问系统。然后,工作站将利用 Web 服务与后端系统/数据库进行通信。我怎样才能将其考虑在内?

我可以使用@Remus 在下面建议的系统吗,其中身份验证/解密都是 RFID 卡的功能?然后工作站将使用经过身份验证的用户 ID 与后端通信。有没有办法实现这样的系统?

最佳答案

通过将 PIN 存储在数据库中,徽章 + PIN 不起作用。 PINS 实际上是访问徽章加密模块本身的加密 key 。徽章存储私钥,使用从 PIN 派生的 key 加密。验证者有一个公钥并用随机数挑战徽章。徽章加密模块本身使用私钥(使用 PIN 在内部解密)对挑战随机数进行签名,并使用随机数签名进行响应。然后,身份验证器使用公钥验证签名,从而对用户(徽章持有者)进行身份验证。关键点是:

  • 使用公钥/私钥对、强大的 RSA 加密法建立加密身份验证
  • 通过拥有私钥来证明身份,私钥永远离开徽章加密模块
  • PIN 仅用于解密徽章的私钥。如果没有实际持有徽章,PIN 码就完全没用了

坦率地说,您提出的将 GUID 和 PIN 存储在数据库中的方案是一个笑话。

关于c# - 如何使用 RFID 徽章和 PIN 码安全访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7676992/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com