ste*_*776 5 .net c# sql-server security sql-server-2008
我有一个类似于门锁的场景,需要双因素身份验证才能获得访问权限:
我需要在SQL Server 2008中安全地存储它们.我认为可以正常存储GUID,但是应该采取什么方法来保护数据库和整个系统中的PIN?
一个典型的哈希/盐方法是否足以支持4位数PIN?
保护这类系统的正确方法是什么?
编辑
更多信息......最终,这个系统最有可能需要比标准的"门锁"更安全.用户将使用RFID令牌和PIN码进行身份验证.在获得对系统的访问权限之后,用户将有机会通过链接到其帐户的信用卡浏览和购买项目(使用第三方网关/保险库服务进行存储).这对系统有什么影响?
编辑2
此外,案例是这不是一个基于Web的应用程序.用户只能从专用工作站访问系统.然后,工作站将利用Web服务与后端系统/ DB进行通信.如何将其纳入混合?
我可以使用@Remus建议的系统,其中认证/解密都是RFID卡的功能吗?然后,工作站将使用经过身份验证的用户ID与后端进行通信.有没有办法实现这样的系统?
通过在数据库中存储PIN,徽章+ PIN不起作用.PINS实际上是用于访问徽章加密模块本身的加密密钥.徽章存储私钥,使用从PIN派生的密钥加密.身份验证者拥有公钥并使用随机数来挑战徽章.徽章加密模块本身使用私钥(使用PIN在内部解密)对挑战随机数进行签名,并使用随机数签名进行响应.然后,验证者使用公钥验证签名,从而验证用户(徽章持有者).关键点是:
坦率地说,你建议的方案,存储在数据库中的GUID和PIN是一个笑话.
| 归档时间: |
|
| 查看次数: |
1368 次 |
| 最近记录: |