C#Base64加密
using System;
using System.Collections.Generic;
using System.Text;
using System.Security.Cryptography;
using System.IO;
namespace Business
{
    /// <summary>
    /// 加密类
    /// </summary>
    public class EncryptDes
    {
        /// <summary>
        /// 解密连接字符串
        /// </summary>
        /// <param name="strInput">连接字符串</param>
        /// <returns>解密后的连接字符串</returns>
        public string Decrypt(string strInput)
        {
            bool bolSuccess = false;
strInput = strInput.Trim();
string strResult;
            string strKey = "31415926";
            string strIV = "31415926";
byte[] bytKey = System.Text.Encoding.GetEncoding("utf-8").GetBytes(strKey);
            byte[] bytIV = System.Text.Encoding.GetEncoding("utf-8").GetBytes(strIV);
if ((strInput.Length > 0))
            {
                try
                {
                    DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();
                    byte[] bytData = Convert.FromBase64String(strInput);
                    MemoryStream ms = new MemoryStream(bytData);
                    CryptoStream cs = new CryptoStream(ms, cryptoProvider.CreateDecryptor(bytKey, bytIV), CryptoStreamMode.Read);
                    StreamReader sr = new StreamReader(cs);
                    strResult = sr.ReadToEnd();
                    bolSuccess = true;
}
                catch (Exception ex)
                {
                    strResult = strInput;
                }
            }
            else
            {
                strResult = "";
            }
            return strResult;
        }
/// <summary>
        /// 加密连接字符串
        /// </summary>
        /// <param name="strInput">连接字符串</param>
        /// <returns>加密后的连接字符串</returns>
        public string Encrypt(string strInput)
        {
            bool bolSuccess = false;
strInput = strInput.Trim();
string strResult;
string strKey = "31415926";
            string strIV = "31415926";
byte[] bytKey = System.Text.Encoding.GetEncoding("utf-8").GetBytes(strKey);
            byte[] bytIV = System.Text.Encoding.GetEncoding("utf-8").GetBytes(strIV);
            if ((strInput.Length > 0))
            {
                try
                {
                    DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();
                    MemoryStream ms = new MemoryStream();
                    CryptoStream cs = new CryptoStream(ms, cryptoProvider.CreateEncryptor(bytKey, bytIV), CryptoStreamMode.Write);
StreamWriter sw = new StreamWriter(cs);
sw.Write(strInput);
                    sw.Flush();
                    cs.FlushFinalBlock();
                    ms.Flush();
                    strResult = Convert.ToBase64String(ms.GetBuffer(), 0, Convert.ToInt32(ms.Length));
                    bolSuccess = true;
                }
                catch (Exception ex)
                {
                    strResult = strInput;
                }
            }
            else
            {
                strResult = "";
            }
            return strResult;
        }
    }
}
C#Base64加密的更多相关文章
- android Base64 加密
		一 Base64加密 import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.OutputStre ... 
- Js中 md5 sha1  base64 加密
		js的3中加密方式: .sha1加密,加密性高 调用: var sha = hex_sha1(str); .base64加密 调用: var b = new Base64(); var str = b ... 
- js base64加密,后台解密
		这是为了解决页面发送post请求,传输密码,在页面的控制台可以看到密码的明文,所以先用base64把要传输的密码转换为非明文,然后在后台解密处理. base64encode.js // base64加 ... 
- (iOS)Base64加密和DES加密、以及JAVA和iOS中DES加密统一性问题
		我们在项目中为了安全方面的考虑,通常情况下会选择一种加密方式对需要安全性的文本进行加密,而Base64加密和DES64加密是常用的加密算法.我记得我在前一个项目中使用的就是这两种加密算法的结合:Bas ... 
- Base64加密工具-iBlogs
		简易的Base64加密工具开发步骤 1.编写Java测试桩 import java.io.BufferedReader; import java.io.IOException; import java ... 
- JS实现base64加密解密
		JS实现base64加密解密 转载自http://blog.csdn.net/fengzheng0306/archive/2006/04/25/676055.aspx 方法一: <HTML> ... 
- 【代码笔记】iOS-3DES+Base64加密解密
		一,工程目录. 二,代码. RootViewController.m #import "RootViewController.h" #import "NSString+T ... 
- 实现Base64加密解密
		using System; using System.Text; namespace Common { /// <summary> /// 实现Base64加密解密 /// </ ... 
- IOS 杂笔-10(Base64 加密)
		base64加密是可逆的,因此并不是很安全,在一些注重安全的地方很少用到,但是在普通传输中可以使用. 切忌,base64加密是不安全的. // // ViewController.m // CX-Ba ... 
- MD5加密,Base64加密/解密,AES加密/解密
		1.从github上下载GTMBase64-master和AESCrypt-ObjC-master导入工程,如下图所示. 2.使用前的配置及注意事项: (1) 在build phases中的GTMBa ... 
随机推荐
- Android studio 安装,JDK 出错解决方案
			在安装android studio 的时候,会报一个错误: --------------------------- Error launching Android Studio ----------- ... 
- hdu 5578 Friendship of Frog(multiset的应用)
			Problem Description N frogs . Two frogs are friends if they come from the same country. The closest ... 
- VS2010+Visual Assist X
			以前一直用VC++6.0,配一个VA,感觉也挺好用的.今天安装了VS2010,感觉还是有点不适应.然后安装了一个 Visual Assist X,主要是VS2010下破解VA有点小麻烦,中途也出现了一 ... 
- Android不规则瀑布流照片墙的实现+LruCache算法
			watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZnJhbmNpc3NoaQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQk ... 
- 1005 Number Sequence(HDU)
			题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1005 Number Sequence Time Limit: 2000/1000 MS (Java/O ... 
- linux新建磁盘并分区
			先在虚拟机上添加一块硬盘. 查看磁盘分区:sdb还没有分配 新建一个100M的分区:再查看,发现新建成功了. 再查看fdisk -l ******ext4格式不支持.就使用了ext2进行格式化了. m ... 
- 生成php所需要的APNS Service pem证书的步骤
			1.登录到 iPhone Developer Connection Portal 并点击 App IDs 2.创建一个不使用通配符的 App ID .通配符 ID 不能用于推送通知服务.例如,我们的i ... 
- Swift  函数和类
			函数: func sayHello(personName:String,z:Int)->{ return "hello"+personName+z } print(sayHe ... 
- Flink Program Guide (1) -- 基本API概念(Basic API Concepts -- For Java)
			false false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.MsoNormalTable {mso-style-n ... 
- binwalk windows安装和使用方法
			binwalk是一个文件的分析工具,旨在协助研究人员对文件进行分析,提取及逆向工程.简单易用,完全自动化脚本,并通过自定义签名,提取规则和插件模块,还重要一点的是可以轻松地扩展. 以上是binwalk ... 
