예제 #1
0
        /// <summary>
        /// 发送 byte[] 数据,可选择加密或明文发送
        /// </summary>
        /// <param name="PostUri"></param>
        /// <param name="pui">待加密的内容</param>
        /// <param name="IsEncryptoSend">是否加密发送</param>
        /// <param name="enableKeyIV">是否允许DES的加密算法Key,IV使用一致的</param>
        /// <returns>WebResponse</returns>
        public static WebResponse Send(string PostUri, PostUserInfo pui, bool IsEncryptoSend, bool enableKeyIV)
        {
            byte[] bufferContent = SerializationManager.SerializeBin(pui);
            string str           = Convert.ToBase64String(bufferContent);

            if (IsEncryptoSend)
            {
                string publicKey = FileHelper.ReadFile(FunctionHelper.GetRealFile(FunctionHelper.GetAppSettings("publicKey")));

                string desKey = StringHelper.RandomSTR(8);
                string desIV  = desKey;

                string rsaDes = "";


                string encryptContent = cs.EncryptString(bufferContent, publicKey, desKey, desIV, out rsaDes);

                Hashtable ht = new Hashtable();
                ht.Add("CS_DESSTRING", rsaDes);

                return(cs.Send(PostUri, encryptContent, ht));
            }
            else
            {
                return(cs.Send(PostUri, str));
            }
        }
예제 #2
0
        /// <summary>
        /// 发送 byte[] 数据,可选择加密或明文发送
        /// </summary>
        /// <param name="PostUri"></param>
        /// <param name="Content">待加密的内容</param>
        /// <param name="IsEncryptoSend">是否加密发送</param>
        /// <param name="enableKeyIV">是否允许DES的加密算法Key,IV使用一致的</param>
        /// <returns>WebResponse</returns>
        public static WebResponse Send(string PostUri, string Content, bool IsEncryptoSend, bool enableKeyIV)
        {
            if (IsEncryptoSend)
            {
                string publicKey = FileHelper.ReadFile(FunctionHelper.GetRealFile(FunctionHelper.GetAppSettings("publicKey")));

                string desKey = StringHelper.RandomSTR(8);
                string desIV  = desKey;

                string rsaDes = "";

                string encryptContent = cs.EncryptString(Content, publicKey, desKey, desIV, out rsaDes);

                Hashtable ht = new Hashtable();
                ht.Add("CS_DESSTRING", rsaDes);

                return(cs.Send(PostUri, encryptContent, ht));
            }
            else
            {
                return(cs.Send(PostUri, Content));
            }
        }