【Github源码】

《上一篇》详细介绍了Xmtool工具库中的正则表达式类库,今天我们继续为大家介绍其中的加密解密类库。

在开发过程中我们经常会遇到需要对数据进行加密和解密的需求,例如密码的加密、接口传输数据的加密等;当前类库中只封装了Base64、AES两种加密解密方法,因为C#提供了几乎我们能想到的所有加解密方法,且使用也很简单,故没有进行过多的封装;另外,严格来说,Base64不能算是加密解密方法,只是编码解码的一种,不过为了避免定义过多的类库使用中不方便,因此放在加密解密同一个类库中。

Base64编码解码

Base64编码

Base64解码

AES加密解密

AES加密

AES解密

一、Base64编码解码

1. Base64编码

public string Base64Encode(string text, string encoding = “utf-8”)

说明:对传入字符串text进行Base64编码并返回,默认字符串编码格式为UTF8。

string base64Str = Xmtool.Crypto().Base64Encode("https://www.cnblogs.com");
// TODO

2. Base64解码

public string Base64Decode(string base64Text, string encoding = “utf-8”)

说明:对经过Base64编码的字符串text进行解码,返回解码后的明文内容,默认解码编码格式为UTF8。

string url = Xmtool.Crypto().Base64Decode("aHR0cHM6Ly9naXRodWIuY29tL3NvZnR3YWl0ZXI=");
// TODO

二、AES加密解密

1. AES加密

public string AESEncode(string text, string key, string encoding = “utf-8”)

说明:AES对称加密方法,key为加密的盐值,encoding为加密字符串的编码格式,默认为UTF8。

string password = "admin@123";
string encryptedPass = Xmtool.Crypto().AESEncode(password, "salt123");
// TODO

2. AES解密

public string AESDecode(string aesText, string key, string encoding = “utf-8”)

说明:AES解密方法,解密时需使用和加密时相同的key和encoding编码格式。

string password = Xmtool.Crypto().AESDecode("vi3G7kR7r5GaLglLOGGtzw==", "salt123");
// TODO

【Github源码】

开源.NetCore通用工具库Xmtool使用连载 - 加密解密篇的更多相关文章

  1. 【ADO.NET基础-数据加密】第一篇(加密解密篇)

    可以采用下面的函数实现密码的加密 public static string EncryptString(string str) { //密文 string key = "www"; ...

  2. 最好的.NET开源免费ZIP库DotNetZip(.NET组件介绍之三)

    在项目开发中,除了对数据的展示更多的就是对文件的相关操作,例如文件的创建和删除,以及文件的压缩和解压.文件压缩的好处有很多,主要就是在文件传输的方面,文件压缩的好处就不需要赘述,因为无论是开发者,还是 ...

  3. iOS、mac开源项目及库汇总

    原文地址:http://blog.csdn.net/qq_26359763/article/details/51076499    iOS每日一记------------之 中级完美大整理 iOS.m ...

  4. Android开源项目及库搜集

    TimLiu-Android 自己总结的Android开源项目及库. github排名 https://github.com/trending,github搜索:https://github.com/ ...

  5. 你真的了解字典(Dictionary)吗? C# Memory Cache 踩坑记录 .net 泛型 结构化CSS设计思维 WinForm POST上传与后台接收 高效实用的.NET开源项目 .net 笔试面试总结(3) .net 笔试面试总结(2) 依赖注入 C# RSA 加密 C#与Java AES 加密解密

    你真的了解字典(Dictionary)吗?   从一道亲身经历的面试题说起 半年前,我参加我现在所在公司的面试,面试官给了一道题,说有一个Y形的链表,知道起始节点,找出交叉节点.为了便于描述,我把上面 ...

  6. 值得推荐的C/C++开源框架和库

    值得推荐的C/C++开源框架和库  转自:http://www.cnblogs.com/lidabo/p/5514155.html   - 1. Webbench Webbench是一个在Linux下 ...

  7. 值得学习的C语言开源项目和库

    收集一些C/C++相关的源码,如有更高效的库,请提醒我 补充上去 C/C++相关交流Q群 1414577 - 1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具. ...

  8. 转载一篇c++开源框架和库

    值得学习的C语言开源项目 -1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具.它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性 ...

  9. Android 开源项目及库汇总(2)

    Android 开源项目及库汇总(2) ListenToCode 2.7 2018.10.10 15:43 字数 8527 阅读 1001评论 0喜欢 29 地图 百度地图– Android百度地图 ...

  10. Win10 UWP开发系列——开源控件库:UWPCommunityToolkit

    在开发应用的过程中,不可避免的会使用第三方类库.之前用过一个WinRTXamlToolkit.UWP,现在微软官方发布了一个新的开源控件库—— UWPCommunityToolkit 项目代码托管在G ...

随机推荐

  1. 如何在Windows 10上使用VS2019 编译C

    一.安装VS 2019 首先VS官网上下载免费的VS2019 community.我们的目的是在Windows上使用该软件编译C,如下图所示,把使用C++的桌面开发打上勾 二.创建.C 项目 1.打开 ...

  2. VUE安装环境及项目创建

    Vue环境安装配置 安装git工具,便于在wind电脑上操作命令行,自行在网上下载安装,(可以不安装)使用cmd. 安装node,检查node安装是否成功,在git工具中输入node -v(如果成功的 ...

  3. Python笔记(5)——if 语句一:条件测试(Python编程:从入门到实践)

    每条if语句的核心都是一个值为True或False的表达式.Python根据条件测试的值为True还是False来决定是否执行if语句中的代码.如果条件测试的值为True,Python就执行紧跟在if ...

  4. Q:windows系统如何开机启动批处理脚本

    方法1 1.win+r输入gpedit.msc进入本地策略管理器 2.点击windows设置下的脚本(启动/关机),然后双击启动. 3.点击添加,然后点击浏览,选择批处理文件然后点击确定. 方法2 也 ...

  5. 阿里云centos7 磁盘挂载

    适用于多磁盘的情况 1. 查看本地所有磁盘 fdisk -l 2.格式化磁盘系统 mkfs.ext3 /dev/vdb  (/dev/vdb  为未挂载的磁盘路径) 2.创建挂载点 mkdir /ho ...

  6. redis为什么是单核单线程

    1)以前一直有个误区,以为:高性能服务器 一定是多线程来实现的 原因很简单因为误区二导致的:多线程 一定比 单线程 效率高,其实不然! 在说这个事前希望大家都能对 CPU . 内存 . 硬盘的速度都有 ...

  7. ORACLE 去重

    -----------------------------------------------------------------------------模拟数据------------------- ...

  8. .Netcore webApi 注入socket 与客户端交互

    模拟服务端 private string TcpServiceControl(string value) { // 1.按照模拟工具上看 先new一个tcp服务 Socket serverSocket ...

  9. docker中的gitlab数据备份、迁移和升级

    前期准备 数据备份 记录gitlab运行命令: docker run -itd --name gitlab \ --hostname gitlab.suniot.cn \ -p 443:443 -p ...

  10. 字符集编码cp936、ANSI、UNICODE、UTF-8、GB2312、GBK、GB18030、DBCS、UCS

    一直对字符的各种编码方式懵懵懂懂,什么ANSI.UNICODE.UTF-8.GB2312.GBK.DBCS.UCS--是不是看的很晕,假如您细细的阅读本文你一定可以清晰的理解他们.Let's go!  ...