开源.NetCore通用工具库Xmtool使用连载 - 加密解密篇

开源,netcore,通用,工具,xmtool,使用,连载,加密,解密 · 浏览次数 : 154

小编点评

**加密解密类库** 该类库包含两个主要方法:**Base64编码解码**和**AES加密解密**。 **Base64编码解码** 该方法用于将字符串进行Base64编码并返回。默认的编码格式为UTF8。 **AES加密解密** 该方法用于对称加密方法(AES)进行解密。密钥必须与加密过程中的盐值相同。 **使用方法** ```csharp // Base64编码 string base64Str = Xmtool.Crypto().Base64Encode("https://www.cnblogs.com"); // AES加密 string password = "admin@123"; string encryptedPass = Xmtool.Crypto().AESEncode(password, "salt123"); // AES解密 string aesText = Xmtool.Crypto().AESDecode("aHR0cHM6Ly9naXRodWIuY29tL3NvZnR3YWl0ZXI=", "salt123"); ``` **注意** * 该类库只封装了 Base64 和 AES两种加密解密方法。 * 对于其他加密方法,请参阅其他类库的方法。

正文

【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使用连载 - 加密解密篇相似的内容:

开源.NetCore通用工具库Xmtool使用连载 - 加密解密篇

【Github源码】 《上一篇》详细介绍了Xmtool工具库中的正则表达式类库,今天我们继续为大家介绍其中的加密解密类库。 在开发过程中我们经常会遇到需要对数据进行加密和解密的需求,例如密码的加密、接口传输数据的加密等;当前类库中只封装了Base64、AES两种加密解密方法,因为C#提供了几乎我们能

开源.NetCore通用工具库Xmtool使用连载 - 散列算法篇

【Github源码】 《上一篇》详细介绍了Xmtool工具库中的加解密类库,今天我们继续为大家介绍其中的散列算法类库。 散列算法在某些特殊场景也可以当做加密方法使用;其特点是不可逆,同一内容每次散列值绝对一致,所以也可用作对数据内容是否被篡改的校验方法;或者其他需要唯一性编码的场景;本类库提供了MD

开源.NetCore通用工具库Xmtool使用连载 - 随机值篇

【Github源码】 《上一篇》 详细介绍了Xmtool工具库中的散列算法类库,今天我们继续为大家介绍其中的随机值类库。 基于系统提供的Random获取随机值方法已经足够简单和易用,本类库只对日常开发过程中最常用到的生成随机验证码方法进行了封装,后续发现其他有价值的常用随机值需求,会陆续添加到类库中

开源.NetCore通用工具库Xmtool使用连载 - 发送邮件篇

#### [【Github源码】](https://github.com/softwaiter/Xmtool) [《上一篇》](https://www.cnblogs.com/bcbr/p/17393628.html) 介绍了Xmtool工具库中的随机值类库,今天我们继续为大家介绍其中的邮件发送类库

开源.NetCore通用工具库Xmtool使用连载 - 发送短信篇

### [【Github源码】](https://github.com/softwaiter/Xmtool) [《上一篇》](https://www.cnblogs.com/bcbr/p/17421734.html) 介绍了Xmtool工具库中的发送邮件类库,今天我们继续为大家介绍其中的发送短信类库

开源.NetCore通用工具库Xmtool使用连载 - XML操作篇

### [【Github源码】](https://github.com/softwaiter/Xmtool) [《上一篇》](https://www.cnblogs.com/bcbr/p/17447376.html) 介绍了Xmtool工具库中的发送短信类库,今天我们继续为大家介绍其中的XML操作类

开源.NetCore通用工具库Xmtool使用连载 - HTTP请求篇

### [【Github源码】](https://github.com/softwaiter/Xmtool) [《上一篇》](https://www.cnblogs.com/bcbr/p/17608881.html) 介绍了Xmtool工具库中的XML操作类库,今天我们继续为大家介绍其中的HTTP请

开源.NetCore通用工具库Xmtool使用连载 - 图形验证码篇

### [【Github源码】](https://github.com/softwaiter/Xmtool) [《上一篇》](https://www.cnblogs.com/bcbr/p/17624230.html) 介绍了Xmtool工具库中的Web操作类库,今天我们继续为大家介绍其中的图形验证码

开源.NetCore通用工具库Xmtool使用连载 - 扩展动态对象篇

【Github源码】 《上一篇》 介绍了Xmtool工具库中的图形验证码类库,今天我们继续为大家介绍其中的扩展动态对象类库。 扩展动态对象是整个工具库中最重要的一个设计。在软件开发过程中,我们经常需要定义各种各样的数据对象;例如:用于参数传递的数据实体类、用于接口返回结果的Json对象等等。 //

MongoDB从入门到实战之.NET Core使用MongoDB开发ToDoList系统(8)-Ant Design Blazor前端框架搭建

前言 前面的章节我们介绍了一些值得推荐的Blazor UI组件库,通过该篇文章的组件库介绍最终我选用Ant Design Blazor这个UI框架作为ToDoList系统的前端框架。因为在之前的工作中有使用过Ant Design Vue、Ant Design Angular习惯并且喜欢Ant Des