首页 > 其他分享 >开源.NetCore通用工具库Xmtool使用连载 - 加密解密篇

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

时间:2023-08-19 12:32:05浏览次数:48  
标签:编码 AES 加密 string NetCore Base64 解密 开源 Xmtool

【Github源码】

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

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

Base64编码解码

Base64编码

Base64解码

AES加密解密

AES加密

AES解密

<br/>

一、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源码】

标签:编码,AES,加密,string,NetCore,Base64,解密,开源,Xmtool
From: https://blog.51cto.com/u_16229237/7148597

相关文章

  • 知识付费系统开源,兔知云课堂与其他平台对比
    在当今数字时代,知识付费已经成为许多人探索创业机会和共享专业知识的热门方式。然而,当您考虑出售课程时,选择适合的小程序变得尤为关键。如今市场上有许多选择,但不仅要考虑管理费用,更要考虑工具的可靠性和易用性。兔知云课堂,作为一款低成本的音视频课程点播系统,为您提供了私域场......
  • 开源数据库Mysql_DBA运维实战 (总结)
    开源数据库Mysql_DBA运维实战(总结)SQL语句都包含哪些类型DDLDCLDMLDQLYum安装MySQL的配置文件配置文件:/etc/my.cnf日志目录:/var/log/mysqld.log错误日志:/var/log/mysql/error.logMySQL的主从切换查看主从复制状态停止主数据库的写入操作记录当前二级制日志文件和位置更新从数据库......
  • 云原生之使用Docker部署开源Leanote蚂蚁笔记
    (云原生之使用Docker部署开源Leanote蚂蚁笔记)一、Leanote蚂蚁笔记介绍1.Leanote简介Leanote蚂蚁笔记是一款云笔记工具,蚂蚁笔记(又名LeaNote)就是一款国产开源的私有云笔记软件。它支持普通格式笔记、Markdown语法、专业数学公式编辑、和思维脑图,常见的笔记相关功能它都拥有,同时......
  • Meta即将推出开源代码生成平台Code Llama,挑战OpenAI和google
    您的关注是对我最大的支持......
  • Google开源了可视化编程框架Visual Blocks for ML
    VisualBlocksforML是一个由Google开发的开源可视化编程框架。它使你能够在易于使用的无代码图形编辑器中创建ML管道。为了运行VisualBlocksforML。需要确保你的GPU是可以工作的。剩下的就是clone代码,然后运行,下面我们做一个简单的介绍:VisualBlocksforML是运行在支持jav......
  • C#程序配置读写例子 - 开源研究系列文章
            今天讲讲关于C#的配置文件读写的例子。        对于应用程序的配置文件,以前都是用的ini文件进行读写的,这个与现在的json类似,都是键值对应的,这次介绍的是基于XML的序列化和反序列化的读写例子。对于ini文件,操作系统已经提供了API的操作函数,但是这个ini......
  • C#系统锁屏事件例子 - 开源研究系列文章
          今天有个网友问了个关于操作系统锁屏的问题。      我们知道,操作系统是基于消息和事件处理的,所以我们只要找到该操作系统锁屏和解屏的那个事件,然后在事件里进行处理即可。下面是例子介绍。1、项目目录;下面是项目目录:      2、函数介......
  • 开源.NetCore通用工具库Xmtool使用连载 - 正则表达式篇
    【Github源码】《上一篇》详细介绍了Xmtool工具库中的日期时间类库,今天我们继续为大家介绍其中的正则表达式类库。在日常的软件开发过程中,每个人都会或多或少的遇到各种各样需要校验数据格式的需求,有些格式是和具体业务逻辑相关;而有些格式是业界标准,在任何系统和功能中都一致通用......
  • 关于云原生开源开发者沙龙「微服务X消息队列专场」的延期通知
    作者:微服务X消息队列各位报名参会的同学,大家好:非常感谢大家对本期云原生开源开发者沙龙「微服务X消息队列专场」的关注与支持。因故原定于8月12日(周六)举办的沙龙延期举行。具体时间和举办地点如下:阿里云云原生开源开发者沙龙微服务X消息队列专场深圳站,推迟于8月27日(......
  • C#程序变量统一管理例子 - 开源研究系列文章
            今天讲讲关于C#应用程序中使用到的变量的统一管理的代码例子。        我们知道,在C#里使用变量,除了private私有变量外,程序中使用到的公共变量就需要进行统一的存放和管理。这里笔者使用到的公共变量管理库划分为:1)窗体;2)路径;3)对象;所以笔者对这几个库进行......