Asp.net web api 安全web api,我的公钥/私钥工作流。如何合并对称密钥?
看起来保护ASP.NET Web API的解决方案非常分散,所以我决定推出自己的公钥/私钥加密方案。请看一下我的工作流程,并帮助我回答一个我最后一直坚持的问题。(同样,它特定于.NET4.0WebAPI框架)Asp.net web api 安全web api,我的公钥/私钥工作流。如何合并对称密钥?,asp.net-web-api,Asp.net Web Api,看起来保护ASP.NET Web API的解决方案非常分散,所以我决定推出自己的公钥/私钥加密方案。请看一下我的工作流程,并帮助我回答一个我最后一直坚持的问题。(同样,它特定于.NET4.0WebAPI框架) 用户在我的Web MVC 4.0网站上注册 一旦注册,我的网站做4件事 a) 为此用户生成RSA服务器公钥 b) 。为该用户生成RSA服务器私钥 c) 。为此用户生成RSA客户端公钥 d) 。为此用户生成RSA客户端私钥 我将此用户帐户的所有4个密钥保存在数据库中,并为用户提供服务器公钥(
编辑:如果您看到此工作流中存在缺陷,请务必让我知道!非常感谢 请不要推出自己的方案。加密是很难得到正确的,即使是由专家。一个非常细微的错误可以完全消除方案提供的所有安全性。只需看看过去几年中针对SSL/TLS的攻击就可以得到一些示例 您提到了“WebAPI”,但不清楚您使用的是什么协议。如果您使用的是SOAP,请使用“Web安全性”(WS),这是为SOAP定义的。如果您通过HTTP(ex-REST)进行通信,请使用HTTPS。如果您通过连接的通道进行通信,请使用TLS或SSH 编辑:每 ASP.NET Web API是一个使构建HTTP变得容易的框架 服务覆盖范围广泛的客户端,包括浏览器和 移动设备。ASP.NET Web API是构建Web应用程序的理想平台 NET框架上的RESTful应用程序
这意味着您可能希望使用HTTPS。您可能希望在不需要域/用户身份验证的情况下进行安全身份验证,所以您希望服务器客户端证书交换,对吗?如果您只需要加密的通信量(您无论如何都应该在exchange中使用加密的通信量),ATK是正确的,但对于实际将其用作身份验证,本文非常有用: