【问题标题】:How can i access to smartcard from ASP.NET site?如何从 ASP.NET 站点访问智能卡?
【发布时间】:2010-06-09 14:10:39
【问题描述】:

我需要与来自 ASP.NET 站点的智能卡通信。我已经创建了一个 dll(使用 Winscard.dll 和 MCSCM.dll,即 SCM Micro Reader 的 dll),它可以在 Windows 上与读卡器一起使用,但我无法将它与 ASP.NET 一起使用。该项目将仅在 IE 上运行,我必须避免使用 Javascript。

感谢您的帮助。

【问题讨论】:

  • 我试图创建一个由页面加载的 WindowsForm 控件,它可以工作,但我无法获得与 CardReader 交互的安全权限。

标签: c# asp.net smartcard smartcard-reader


【解决方案1】:

我在 8 年前遇到过这个问题,但当时我们称之为 ASP

问题在于 ASP 代码在远程服务器上运行,而您的智能卡读卡器是本地硬件

我如何解决它是一个小型客户端应用程序,它定期轮询智能卡读卡器以进行卡插入/移除。如果插入了一张卡片,它就会调用一个网络服务来提醒服务器,服务器会根据卡片和一些随机数创建一个唯一的密钥。然后它要求用户输入一个与卡号和随机数相关的 PIN。

这意味着它需要特定的卡和不可重复的号码。我很确定我使用 SSL 来加密网络服务消息,这当然是系统中最脆弱的部分

我就是这样做的。 SCM 技术支持人员非常乐于助人,而且英语说得很好,可能值得给他们点赞

【讨论】:

    【解决方案2】:

    我找到了解决方案。我加载了一个创建 activeXobject 的 Javascript 并使用我安装在客户端上的 dll。像这样的:

    <script language="javascript">
    
       function Run() 
           {
               var x = new ActiveXObject("ASC.SC");
               txtRd.value = x.AutoRead();
           } 
    </script>
    

    感谢您的帮助。

    【讨论】:

      【解决方案3】:

      我的公司为此目的制作了一个商业插件。

      它包括 IE 和 firefox/chrome 支持,并提供一种脚本语言来编写控制智能卡的简单服务器端脚本。它还包括与浏览器交互的功能(例如将从智能卡读取的值放入网页上的字段中,或导航到不同的网页)。

      网上有很多演示,你可以用看看它是否符合你的要求:https://cardboss.cometway.com

      【讨论】:

        【解决方案4】:

        如果您尝试使用智能卡进行身份验证,您应该使用我的同事编写的Smartcard Authentication Module。它非常安全,应该可以解决问题。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2016-07-31
          • 2011-02-18
          • 2021-06-05
          • 1970-01-01
          • 2022-01-12
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多