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 ...
随机推荐
- linux md5 加密字符串和文件方法
linux md5 加密字符串和文件方法 MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改.MD5全称是报文摘要算法(Message-Digest Algorithm 5),此算法对任意 ...
- omnibus方式部署gitlab
omnibus方式部署gitlab Posted on 2015 年 1 月 10 日 4233 Views 这几天折腾搭建git服务器,选择了比较流行的gitlab,一开始就直奔一键安装脚本去了 ...
- linux环境开发私房菜
1,各种linux 平台GUI开发IDE环境 2,C/C++ 好的编译器 gcc/emcs;
- Oracle backgroup processes
PMON: Process Monitor 用自己主动注冊动态监听,处理异常进程. SMON: System Monitor 用于instance recovery. LCKn:仅使用于RAC数据库, ...
- DrawText的使用
DrawText函数简介 这个函数的作用非常easy,就是在指定的区域内输出格式化的文本. 函数原型: int DrawText( HDC hDC, LPCTSTR lpString, int nCo ...
- python单/双下划线使用
在Python编程中经常会遇到函数(function),方法(method)及属性(attribute)以下划线'_'作为前缀,这里做个总结. 主要存在四种情形: 1. object # public ...
- httpclient response 重定向
HTTPClient请求后,重定向后,获取重定向的URL. 方法一:重定向后获取URL import org.apache.http.HttpEntity; import org.apache.htt ...
- PHP性能如何实现全面优化?
性能是网站运行是否良好的关键因素, 网站的性能与效率影响着公司的运营成本及长远发展,编写出高质高效的代码是我们每个开发人员必备的素质,也是我们良好的职业素养. 如何优化PHP性能呢? 一.变量(重要) ...
- MIT6.828 虚拟地址转化为物理地址——二级分页
这个分页,主要是在mit6.828的lab2的背景下来说的. Mit6.828 Lab2:http://pdos.csail.mit.edu/6.828/2014/labs/lab2/ lab2主要讲 ...
- Nginx 拒绝指定IP访问
来源 : http://www.ttlsa.com/nginx/nginx-deny-ip-access/ 闲来无事,登陆服务器,发现有个IP不断的猜测路径.试图往服务器上传文件(木马).于是查看 ...