Пример #1
0
        public static bool Check(string signature, string timestamp, string nonce, string Token, string encodingAESKey)
        {
            var sign = "";

            WXBizMsgCrypt.GenarateSinature(Token, timestamp, nonce, encodingAESKey, ref sign);
            return(sign.Equals(signature));
        }
Пример #2
0
        /// <summary>
        /// 获取签名
        /// </summary>
        /// <param name="token"></param>
        /// <param name="timeStamp"></param>
        /// <param name="nonce"></param>
        /// <param name="msgEncrypt"></param>
        /// <returns></returns>
        public static string GenarateSinature(string token, string timeStamp, string nonce, string msgEncrypt)
        {
            string msgSignature = null;
            var    result       = WXBizMsgCrypt.GenarateSinature(token, timeStamp, nonce, msgEncrypt, ref msgSignature);

            return(result == 0 ? msgSignature : result.ToString());
        }
Пример #3
0
        /// <summary>
        /// 加密消息
        /// </summary>
        /// <param name="wxcpt"></param>
        /// <param name="token"></param>
        /// <param name="encryptMsg"></param>
        /// <returns></returns>
        public int EncryptMessage(WXBizMsgCrypt wxcpt, string token, out string encryptMsg)
        {
            encryptMsg = string.Empty;
            var    serializeMessage = this.AsXmlString();
            string timeSpan         = DateTime.Now.Subtract(dateInit).TotalSeconds.ToString();
            string replyMsg         = serializeMessage;
            string msgSignature     = string.Empty;
            string nonce            = DateTime.Now.Ticks.ToString();
            int    encryptResult    = wxcpt.EncryptMsg(replyMsg, timeSpan, nonce, ref encryptMsg);

            if (encryptResult != 0)
            {
                return(encryptResult);
            }
            int genSinatureResult = WXBizMsgCrypt.GenarateSinature(token, timeSpan, nonce, encryptMsg, ref msgSignature);

            return(genSinatureResult);
        }