C#实现Base64处理加解密
using System;
using System.Text;
namespace Common
{
/// <summary>
/// 实现Base64加密解密
/// 作者:周公
/// 时间:2007
/// </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);
}
}
}
C#实现Base64处理加解密的更多相关文章
- base64/62 加解密的实现。
base64/62加解密代码下载地址: http://files.cnblogs.com/files/Kingfans/base64(62)加解密.zip base64: base62:
- 使用Apache commons-codec Base64实现加解密(转)
commons-codec是Apache下面的一个加解密开发包 官方地址为:http://commons.apache.org/codec/ 官方下载地址:http://commons.apache. ...
- vue中使用base64进行加解密
vue进行Base64加解密 背景 项目中需要对特殊字符进行处理,避免json和数据库的特殊字符(""等)冲突,刚好学了信息安全,干脆整个加解密,wkk.. 使用步骤 打开dos, ...
- jdk1.8以前不建议使用其自带的Base64来加解密
JDK1.8之前的base64是内部测试使用的代码,不建议生产环境使用,而且未来可能会移除, JDK1.8提供最新可以正式使用的Base64类, 不要使用JDK中自带的sun.misc.BASE64D ...
- 前端base64、baseurl加解密和RSA加解密
由于项目最近要进行安全测试,前端的用户和密码都是明文数据传送给后台那里,其实这样很很不安全的,容易泄露个人信息和密码.中间服务器的同事就提出,可以通过前端接收公钥,利用公钥对密码进行加密,把加密过密码 ...
- java基础/数据加解密(Mooc)
一.消息摘要算法 常用摘要算法: 以下 (HEX)内容:bc指Bouncy Castle | cc指:Apache commons Codec 1.消息摘要算法MD5及MD族(MD2,MD4) 消 ...
- iOS - (base64对字符串加解密)
今天公司让做支付系统,为了安全起见,需要对一些数据进行加密,然而我首想到的就是 base64 ,严格来说这不是一种加密方式,这只是将原有的一些字符串或者其它的一些文本进行一个转化而已,就是转化成数字, ...
- 1.Java 加解密技术系列之 BASE64
Java 加解密技术系列之 BASE64 序号 背景 正文 总结 序 这段时间,工作中 用到了 Java 的加解密技术,本着学习的态度,打算从这篇文章开始,详细的研究一番 Java 在加解密技术上有什 ...
- 讲讲网络模块中加解密那点儿事--AES+BASE64
本篇文章已授权微信公众号 dasuAndroidTv(大苏)独家发布 这次想来讲讲网络安全通信这一块,也就是网络层封装的那一套加密.解密,编码.解码的规则,不会很深入,但会大概将这一整块的讲一讲. 之 ...
随机推荐
- 阶段3 2.Spring_08.面向切面编程 AOP_1 AOP的概念
- 【疑难杂症】【Solved】maven-compiler-plugin 在 idea 下的问题
maven-compiler-plugin 这个插件在idea和eclipse里表现本质是一样的,但是我之前有个细节没注意到,导致我对此有误解.我之前一直以为只要配置了source和target,相应 ...
- java:Oracle(级联删除,左右内外交叉自然连接,子查询,all,any,in)
1.级联删除: -- 级联删除:裁员,公司倒闭 -- 级联删除(cascade),设置为null(setnull),放任不管(No action) -- cascade:(以一对多为例)如果删除多的一 ...
- Prometheus存储模型分析
Prometheus是时下最为流行的开源监控解决方案,我们可以很轻松地以Prometheus为核心快速构建一套包含监控指标的抓取,存储,查询以及告警的完整监控系统.单个的Prometheus实例就能实 ...
- LR接口测试案例(录制)
- python学习之生成器
4.6 生成器Generrator 生成器本质就是迭代器.python社区生成器与迭代器是一种. 生成器与迭代器的唯一区别:生成器是我们自己用python代码构建的 4.6.1生成器初识 py ...
- DN值
DN值(Digital Number )是遥感影像像元亮度值,记录的地物的灰度值.无单位,是一个整数值,值大小与传感器的辐射分辨率.地物发射率.大气透过率和散射率等有关. 从DN值计算大气顶的反射率使 ...
- 小程序图片预览 wx.previewImage
list: [ 'http://img5.imgtn.bdimg.com/it/u=3300305952,1328708913&fm=26&gp=0.jpg', 'http://i ...
- CF498B Name That Tune(动态规划dp)
CF498B 动态规划f[i][j]表示前i秒时间听了j首歌的概率,则有: \(f[i][j]=∑f[i-k][j-1]*(1-p_j)^{k-1}*p_j\) k枚举i秒前的每一秒,要求前i-1秒都 ...
- HDU 1069 Monkey and Banana (动态规划、上升子序列最大和)
Monkey and Banana Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...