Base64加密 解密

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加密 解密的更多相关文章
- 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加密解密 /// </ ...
- Java中使用BASE64加密&解密
package com.bao.tools.encryption; import java.io.IOException; import org.junit.Test; import sun.misc ...
- Base64加密解密原理以及代码实现(VC++)
Base64加密解密原理以及代码实现 转自:http://blog.csdn.net/jacky_dai/article/details/4698461 1. Base64使用A--Z,a--z,0- ...
- Java Base64 加密解密
使用JDK的类 BASE64Decoder BASE64Encoder package test; import sun.misc.BASE64Decoder; import sun.misc.BA ...
- php使用base64加密解密图片
php使用base64加密解密图片的实例代码. 例子: <?php //文件名:base64.php $data="/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAB ...
- Base64加密解密
/// <summary> /// 实现Base64加密解密 /// </summary> public sealed class Base64 { /// <summa ...
- password学3——Java BASE64加密解密
Base64是网络上最常见的用于传输8Bit字节代码的编码方式之中的一个,大家能够查看RFC2045-RFC2049.上面有MIME的具体规范.Base64编码可用于在HTTP环境下传递较长的标识信息 ...
- .NET 实现Base-64加密解密处理
.NET 实现Base-64加密解密处理 using System; using System.Collections.Generic; using System.Linq; using System ...
随机推荐
- Java&Selenium Web自动化测试框架理念
一.自动化测试含义 在自动化测试领域内流传着一个说法:单元测试才是自动化测试的核心,在自动化测试里,无论框架何等完美都不可能脱离单元测试,单元测试将会是自动化测试里最小的单位,把它看作单位一,若干个单 ...
- python+Appium自动化:元素等待时间
元素等待时间 为什么要设置等待时间呢?主要是因为界面加载时,为了防止元素还未出现影响后续的操作. 主要有三种方式:强制(线性)等待.隐式等待.显式等待 适用于appium和selenium 强制(线性 ...
- python 中的匿名函数lamda和functools模块
为什么 要把匿名函数和functools模块写在一起? 因为 lamda函数和functools模块都是对函数一种增强或者是简化. 匿名函数: 为了解决那些功能很简单的需求而设计一次性的需求函数 #& ...
- django缓存--缓存加数据库型
4.缓存+数据库Session 数据库用于做持久化,缓存用于提高效率 a. 配置 settings.py SESSION_ENGINE = 'django.contrib.sessio ...
- vue cli 3.x 配置使用 sourceMap
项目使用vue cli 3.x搭建,没有了配置文件,如何更方便的查找到对应的scss文件,配置项目支持sourceMap方式? 分二步走: 1.项目根目录(不是src目录,不要搞错了)添加vue.co ...
- P5057 [CQOI2006]简单题 前缀异或差分/树状数组
好思路,好思路... 思路:前缀异或差分 提交:1次 题解:区间修改,单点查询,树状数组,如思路$qwq$ #include<cstdio> #include<iostream> ...
- bbs项目---表关系
表关系 用户表个人博客表点赞表文章表文章描述表文章和标签多对多关系表评论表分类表标签表 表关系设计示例收集: 1 https://bbs.csdn.net/topics/390260474 2 上图博 ...
- tqdm如何在pandas里面使用
原文: https://segmentfault.com/a/1190000016059726 当然,首先我们得载入模块,在notebook中使用tqdm带的基于Js显示的进度条前,请务必检查是否安装 ...
- 数据结构实验之链表四:有序链表的归并(SDUT 2119)
#include <bits/stdc++.h> using namespace std; struct node { int data; struct node *next; }; st ...
- c 判断一个字符是否为空格
#include <stdio.h> #include <wctype.h> int main () { wchar_t c; ; wchar_t str[] = L" ...