CRL.Business.OnlinePay.Company.Lianlian.YinTongUtil.checkSignMD5 C# (CSharp) Метод

checkSignMD5() приватный статический Метод

private static checkSignMD5 ( string>.SortedDictionary sParaTemp, String md5_key ) : bool
sParaTemp string>.SortedDictionary
md5_key String
Результат bool
        private static bool checkSignMD5(SortedDictionary<string, string> sParaTemp, String md5_key)
        {
            string oid_partner;
            sParaTemp.TryGetValue ("sign_type", out oid_partner);
            Console.WriteLine("进入商户[" + oid_partner + "]MD5签名验证");

            if (sParaTemp == null)
            {
                return false;
            }
            String sign;
            if (!sParaTemp.TryGetValue ("sign", out sign))
            {
                return false;
            }

            // 生成签名原串
            String sign_src = genSignData(sParaTemp);
            Console.WriteLine("商户[" + oid_partner + "]待签名原串"
                + sign_src);
            Console.WriteLine("商户[" + oid_partner + "]签名串"
                + sign);

            sign_src += "&key=" + md5_key;
            try
            {
                if (sign.Equals(Md5Algorithm.getInstance().md5Digest(
                    Encoding.UTF8.GetBytes (sign_src))))
                {
                    Console.WriteLine("商户[" + oid_partner
                        + "]MD5签名验证通过");
                    return true;
                } else
                {
                    Console.WriteLine("商户[" + oid_partner
                        + "]MD5签名验证未通过");
                    return false;
                }
            } catch (Exception e)
            {
                Console.WriteLine("商户[" + oid_partner
                    + "]MD5签名验证异常" + e.Message);
                return false;
            }
        }