CSFramework.WebApiV3.Data Sign – 接口数据加密(签名)
WebApi接口的数字签名用于接口数据安全以及用户认证防篡改。防篡改,顾名思义就是防止有人恶意篡改请求数据以达到恶意攻击的目的。
基本原理:将请求的数据加上ApiKey(公钥)、SecreKey(私钥),按规则组织成一个特殊的字符串,通过加密算法生成一个加密的摘要(sign),
然后将该摘要及公钥同时作为请求的参数一起传递给WebApi服务器。服务端接收到请求,将请求的数据与私钥重新拼接并加密成一个字符串(sign),匹配客户端的sign与服务端的sign是否一致。
参考:HttpPost接口签名参数
WebApi框架支持两种签名与认证方式。
MD加密签名
通过MD5加密算法对Api接口的参数进行加密,生成摘要(sign)。
SHA256加密签名
通过SHA256加密算法对Api接口的参数进行加密,生成摘要(sign)。
客户端签名
客户端调用webapi接口,需要对接口参数进行加密。
string sign = DataSignProvider.Current.Sign(str);//当前签名策略(加密策略)
服务端签名
服务端接受到请求,需要对数据进行验签(Verify Signature),确保数据有效性以及没有被篡改。
参考:VerifySignAttribute.cs
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
WebApi-NETCore-V3 C/S框架网