using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace CommonLib {
public class Decryptions {
/// <summary>
/// Base64解密
/// </summary>
/// <param name="encode">解密采用的编码方式,注意:其与加密时采用的编码方式一致</param>
/// <param name="result">待解密的密文</param>
/// <returns></returns>
public static string DecodeBase64(Encoding encode, string result) {
var decode = string.Empty;
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);
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace CommonLib {
public class Encryptions { /// <summary>
/// Base64加密
/// </summary>
/// <param name="encode">加密采用的编码方式</param>
/// <param name="source">待加密的明文</param>
/// <returns></returns>
public static string EncodeBase64(Encoding encode, string source) {
var enStr = string.Empty;
byte[] bytes = encode.GetBytes(source);
try {
enStr = Convert.ToBase64String(bytes);
} catch {
enStr = source;
}
return enStr;
} /// <summary>
/// Base64加密,采用utf8编码方式加密
/// </summary>
/// <param name="source">待加密的明文</param>
/// <returns></returns>
public static string EncodeBase64(string source) {
return EncodeBase64(Encoding.UTF8, source);
} }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace CommonLib {
public class Mode {
/// <summary>
/// 获取所有支持的加密解密方式
/// </summary>
/// <returns></returns>
public static List<string> GetModeList() {
List<string> encriptTypeList = new List<string>() {
"默认","utf-8","utf-7","ascii","unicode","utf-32"
};
return encriptTypeList;
} /// <summary>
/// 根据字符串,获取加密解密方式
/// </summary>
/// <param name="mode"></param>
/// <returns></returns>
public static Encoding GetMode(string mode) {
Encoding m = Encoding.UTF8;
switch (mode) {
case "默认":
case "utf-8":
m = Encoding.UTF8;
break;
case "utf-7":
m = Encoding.UTF7;
break; case "ascii":
m = Encoding.ASCII;
break; case "unicode":
m = Encoding.Unicode;
break; case "utf-32":
m = Encoding.UTF32;
break;
default:
return m; }
return m;
}
}
}

Base64加密 解密的更多相关文章

  1. JS实现base64加密解密

    JS实现base64加密解密 转载自http://blog.csdn.net/fengzheng0306/archive/2006/04/25/676055.aspx 方法一: <HTML> ...

  2. 【代码笔记】iOS-3DES+Base64加密解密

    一,工程目录. 二,代码. RootViewController.m #import "RootViewController.h" #import "NSString+T ...

  3. 实现Base64加密解密

    using System; using System.Text;   namespace Common { /// <summary> /// 实现Base64加密解密 /// </ ...

  4. Java中使用BASE64加密&解密

    package com.bao.tools.encryption; import java.io.IOException; import org.junit.Test; import sun.misc ...

  5. Base64加密解密原理以及代码实现(VC++)

    Base64加密解密原理以及代码实现 转自:http://blog.csdn.net/jacky_dai/article/details/4698461 1. Base64使用A--Z,a--z,0- ...

  6. Java Base64 加密解密

    使用JDK的类 BASE64Decoder  BASE64Encoder package test; import sun.misc.BASE64Decoder; import sun.misc.BA ...

  7. php使用base64加密解密图片

    php使用base64加密解密图片的实例代码. 例子: <?php //文件名:base64.php $data="/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAB ...

  8. Base64加密解密

    /// <summary> /// 实现Base64加密解密 /// </summary> public sealed class Base64 { /// <summa ...

  9. password学3——Java BASE64加密解密

    Base64是网络上最常见的用于传输8Bit字节代码的编码方式之中的一个,大家能够查看RFC2045-RFC2049.上面有MIME的具体规范.Base64编码可用于在HTTP环境下传递较长的标识信息 ...

  10. .NET 实现Base-64加密解密处理

    .NET 实现Base-64加密解密处理 using System; using System.Collections.Generic; using System.Linq; using System ...

随机推荐

  1. Switch按钮

    使用CSS+HTML5修改原生checkbox为Switch Button .switch { width: 45px; height: 15px; position: relative; borde ...

  2. BZOJ3073 [Pa2011]Journeys[最短路—线段树优化建边]

    新技能get✔. 线段树优化建边主要是针对一类连续区间和连续区间之间建边的题,建边非常的优秀.. 这题中,每次要求$[l1,r1]$每一点向$[l2,r2]$每一点建无向边,然后单元最短路. 暴力建边 ...

  3. HTML table 边框双线变单线

    table{border-collapse:collapse;border-spacing:0;border-left:1px solid #888;border-top:1px solid #888 ...

  4. [Sping Boot] Build a REST CRUD API with Hibernate

    pom.xml: <dependencies> <dependency> <groupId>org.springframework.boot</groupId ...

  5. HDU 6070 - Dirt Ratio | 2017 Multi-University Training Contest 4

    比赛时会错题意+不知道怎么线段树维护分数- - 思路来自题解 /* HDU 6070 - Dirt Ratio [ 二分,线段树 ] | 2017 Multi-University Training ...

  6. 【AndroidStudio-添加RecyclerView包】 AndroidStudio添加v7包中的RecyclerView

    关于AndroidStudio如何添加v7包中的RecyclerView? 左侧Project视图,在External Libraries下找到appcompat-v7包 右击appcompat-v7 ...

  7. [Luogu] 子串

    https://www.luogu.org/problemnew/show/P2679 DP f(k,i,j)f(k,i,j)表示分了k段,用了第一个串中的前i个数字,已经构成了第二个串的前j个的方案 ...

  8. Qbxt 模拟赛 Day4 T2 gcd(矩阵乘法快速幂)

    /* 矩阵乘法+快速幂. 一开始迷之题意.. 这个gcd有个规律. a b b c=a*x+b(x为常数). 然后要使b+c最小的话. 那x就等于1咯. 那么问题转化为求 a b b a+b 就是斐波 ...

  9. 决策树算法的Python实现—基于金融场景实操

    决策树是最经常使用的数据挖掘算法,本次分享jacky带你深入浅出,走进决策树的世界 基本概念 决策树(Decision Tree) 它通过对训练样本的学习,并建立分类规则,然后依据分类规则,对新样本数 ...

  10. 微信小程序底层原理与运行机制类文章学习

    参考文档 小程序底层实现原理及一些思考 为了安全和管控, 双线程执行 Web Worker执行用户的代码; UI线程执行大部分的功能. 微信小程序架构原理 只通过mvvm模板语法动态改变页面, 不支持 ...