【发布时间】:2011-01-14 04:44:39
【问题描述】:
.net 中是否有使用客户端 SSL 私钥对 HTTPS 请求进行数字签名的内置程序?此外,是否有内置程序可以根据 SSL 证书验证数字签名?还是我必须自己动手?还是有第三方库?
我要签名的数据是普通的 HTTP 表单请求。例如,我提供此地址以扣除卡的余额:
https://myserver/deduction
客户端将向该地址发布一个 HTTP 表单,其中包含 card=1234567890123456、currency=1、amount=1000 等数据。这些数据是我希望我的客户端签署的数据。
我需要对请求进行数字签名,因为客户操纵金钱,所以我想确保请求确实来自客户,并且没有人篡改请求的内容。
我也在考虑使用SSL客户端证书,但它只能提供机密性和身份验证,不能提供数据完整性。
【问题讨论】:
-
使用 X509Certificate2 和 RSACryptoServiceProvider 应该可以解决问题。您能否解释一下您要加密的数据类型。
-
@Lars 我为我的问题添加了更多解释
-
为什么不让您的网络服务器 IIS 来处理 ssl 加密?
-
@Pauli 实际上我的问题是关于数字签名,而不是加密
-
啊,现在我明白了...有点像使用证书签名进行身份验证?
标签: .net ssl https digital-signature