c#中base64加密解密

using System;
using System.Text;
 
namespace Common
{
/// <summary>
/// 实现Base64加密解密
/// </summary>
public sealed class Base64
{
/// <summary>
/// Base64加密
/// </summary>
/// <param name="codeName">加密采用的编码方式</param>
/// <param name="source">待加密的明文</param>
/// <returns></returns>
public static string EncodeBase64(Encoding encode, string source)
{
byte[] bytes = encode.GetBytes(source);
try
{
encode = Convert.ToBase64String(bytes);
}
catch
{
encode = source;
}
return encode;
}
 
/// <summary>
/// Base64加密,采用utf8编码方式加密
/// </summary>
/// <param name="source">待加密的明文</param>
/// <returns>加密后的字符串</returns>
public static string EncodeBase64(string source)
{
return EncodeBase64(Encoding.UTF8, source);
}
 
/// <summary>
/// Base64解密
/// </summary>
/// <param name="codeName">解密采用的编码方式,注意和加密时采用的方式一致</param>
/// <param name="result">待解密的密文</param>
/// <returns>解密后的字符串</returns>
public static string DecodeBase64(Encoding encode, string result)
{
string decode = "";
byte[] bytes = Convert.FromBase64String(result);
try
{
decode = encode.GetString(bytes);
}
catch
{
decode = result;
}
return decode;
}
 
/// <summary>
/// Base64解密,采用utf8编码方式解密
/// </summary>
/// <param name="result">待解密的密文</param>
/// <returns>解密后的字符串</returns>
public static string DecodeBase64(string result)
{
return DecodeBase64(Encoding.UTF8, result);
}
}
}
更多相关文章
  • 微信JS-SDK是微信公众平台面向网页开发者提供的基于微信内的网页开发工具包.通过使用微信JS-SDK,网页开发者可借助微信高效地使用拍照.选图.语音.位置等手机系统的能力,同时可以直接使用微信分享.扫一扫.卡券.支付等微信特有的能力,为微信用户提供更优质的网页体验. 本文以介绍了分享接口里的“发送 ...
  • 作者:苹果 来自:http://www.apple317.com/TaynniBlog/ 其实这是在微软的Technet中心的脚本方面的一个系统,只是最近要搞这个东西 所以拿出来和大家一起学习了,,首先呢,你要准备好二个小工具,这二个小工具,是在微软 Quoted from Unkown:Scrip ...
  • 经过一年的培育,智能路由器市场正在迎来一场变革.在极路由.小米路由.果壳路由等先行者进入后,今年起TP-Link.磊科.360.优酷等传统企业和互联网公司才逐渐陆续登场,通过并购.合作的方式推陈出新,试图抢占这个离家庭用户最近的平台入口,巨头们的圈地运动才刚刚开始.黄牛不接招,市场待成熟从去年整个市 ...
  • 目录: 一. 新浪的布局特点 二. 内容细节的特点 三. 其中相关的一些基础技术点 1. 常见布局方法 2. 布局要点 3. Debugger误区 4.列表 5.字体颜色 6.CSS选择符 7.CSS图片 10. CSS半透明 文章背景:这是一次内部交流会的PPT,通过文字的方式记录下来,分享给更多 ...
  • 一,名词解释    PostScript字体: 按 PostScript 页面描述语言 (PDL) 规则定义的字体,并且只能在 PostScript 兼容的打印机上打印. 二,打开Launchpad>字体册.如下图,右侧会显示字体的PostScript名称.         参考资料: < ...
  • 基本操作: 在考生文件夹下,"samp1.mdb"数据库文件中已建立三个关联表对象(名为"职工表"."物品表"和"销售业绩表").一个窗体对象(名为"fTest")和一个宏对象(名为"mTe ...
一周排行
  • 风雨集  青春的瞬间 整理好行装,骑上我那辆孤单的摩托车. 带着平静的心情,我又踏上了回家的路. 风吹乱了我的头发. 我不想再去理会这些. 苍茫的大道上. 我加大油门,一路上风驰电掣. 把走过的路都扔在了身后,没有任 ...
  • 先说一下:不是attrib 的那种! 大家都知道autorun.inf免疫的原理吧.这里我也说略略说一下,方便新手学习下. 其中用到了1个指令是 mkdir:意思是建立文件夹.不明白的可以命令行下输入:mkdir / ...
  • [javascript] <script type="text/javascript">  function clickIE4(){          if (event.button ...
  • oracle pl/sql编程ddl语句分支循环判断  单引号里再有单引号 用两个单引号表示     endif连接一起的    利用loop end loop进行循环 类似于汇编这个循环相当于 do while  ...
  • 视频:专访中国移动研究院院长黄晓庆 易网科技讯 10月12日消息,中国移动研究院院长黄晓庆今天在"ICT中国2010高层论坛"现场接受易网科技专访时表示,中国移动目前已经开始规划规划OPhone  ...
  • 采用SSL, SSH安全协议建立网络通信安全通道技术已经非常成熟,得到广泛应用.比如安全电子商务,网上购物等应用通常按如下方法在客户端与服务网站之间跑SSL安全协议:服务网站提供多方认证的PKI公钥证书供客户端下载检 ...
  • 中文题,题意就不多说了,讲讲思路吧,先根据题意构图,与普通最短路不同的是这一题加了一个Rank,每个点都有一个Rank,题目要求最短路径上的点的Rank的最大差值在 M范围内,Dijkstra判断条件时加上Rank约 ...
  • 代码:     Collection c = new ArrayList();     c.add("hello");     c.add("world");     c.ad ...
  • 关键词:MotionEvent,模拟按键,模拟点击事件,主动弹出输入法,弹出软键盘. 欢迎转载并说明转自:http://blog.csdn.net/aminfo/article/details/7887964   一 ...
  • 很多情况下会用到cmd命令提示符的,尤其是要以管理员的身份进入cmd,其实在Win8系统下以管理员身份进入cmd也很简单 在很多时候,我们都还是需要用cmd命令提示符的,尤其是要以管理员的身份进入cmd.但在Win8 ...