public RESTJson CreateClientKeyPath() { RESTJson result = new RESTJson(); result.ErrMsg = ClientEncryptionHelper.GenerateKeys(); result.ErrCode = 1; return(result); }
public RESTJson GetClientEncryptionKey([FromBody] LoginInfo loginInfo) { RESTJson result = new RESTJson(); //非业务参数(如:时间戳等) HeadersInfo headersInfo = new HeadersInfo(); //根据非业务参数和业务参数拼接字符串并按照首字母排序 Dictionary <string, object> dic = new Dictionary <string, object>(); dic = SignHelper <HeadersInfo> .ObjConvertDic(dic, headersInfo); dic = SignHelper <LoginInfo> .ObjConvertDic(dic, loginInfo); string str = SignHelper <string> .DicSortToString(dic); //使用请求方的私钥进行加密生成签名 string sign = ClientEncryptionHelper.privateToSign(str); //判空 if (string.IsNullOrEmpty(sign)) { result.ErrMsg = "生成报文失败"; return(result); } //使用接收方的公钥进行加密生成加密报文 string message = ServerEncryptionHelper.PubKeyEncryption(str += '_' + sign); if (!string.IsNullOrEmpty(message)) { result.ErrCode = 1; result.ErrMsg = "生成报文成功"; result.Data = message; } return(result); }