使用ASP.Net中的客户端证书进行数字签名

我正在尝试使用私钥对信息进行数字签名。 我知道如何在.Net的桌面客户端应用程序中执行此操作,但我不确定如何在ASP.Net中执行此操作。 它将在使用IE8的Intranet上使用。 如果是通过ASP.Net完成的,我猜测当用户在访问站点时键入其证书passowrd(https,双向SSL)时,私钥不会发送到服务器,但我不确定。 如果无法访问服务器上的客户端私钥,那么如何在浏览器中签名呢? 我可以使用javascript吗?

编辑:我想首先要知道的是,如果可以在服务器上完成,还是必须在客户端上完成?

client-cert的私钥不会传输到服务器。

如果你真的想要/需要用client-cert签名那么你需要一个客户端组件… AFAIK这是不可能的javascript …有解决方案在那里使用Flash,Silverlight,Java小程序作为一部分做你要求的ASP.NET页面…

使纯粹在服务器端执行此操作成为可靠的安全标志(关于客户端证书)恕我直言。