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

【Github源码】

《上一篇》详细介绍了Xmtool工具库中的加解密类库,今天我们继续为大家介绍其中的散列算法类库。

散列算法在某些特殊场景也可以当做加密方法使用;其特点是不可逆,同一内容每次散列值绝对一致,所以也可用作对数据内容是否被篡改的校验方法;或者其他需要唯一性编码的场景;本类库提供了MD5、SHA1、SHA256、SHA384、SHA512等常用散列算法。

类库方法对散列计算方法进行了简单封装,让用户可以一句话获得指定内容的散列值。

MD5散列算法

SHA1散列算法

SHA256散列算法

SHA384散列算法

SHA512散列算法

1. MD5散列算法

public string MD5(string text, string encoding = "utf-8")

说明:对传入的字符串进行MD5散列计算,并返回结算结果;编码格式默认为UTF8,可进行指定。

string md5Str = Xmtool.Hash().MD5("admin@123");
// TODO

2. SHA1散列算法

public string SHA1(string text, string encoding = "utf-8")

说明:对传入的字符串进行SHA1散列计算,并返回计算结果;编码格式默认为UTF8,可进行指定。

string sha1Str = Xmtool.Hash().SHA1("admin@123");
// TODO

3. SHA256散列算法

public string SHA256(string text, string encoding = "utf-8")

说明:对传入的字符串进行SHA256散列计算,并返回计算结果;编码格式默认为UTF8,可进行指定。

string sha256Str = Xmtool.Hash().SHA256("admin@123");
// TODO

4. SHA384散列算法

public string SHA384(string text, string encoding = "utf-8")

说明:对传入的字符串进行SHA384散列计算,并返回计算结果;编码格式默认为UTF8,可进行指定。

string sha384Str = Xmtool.Hash().SHA384("admin@123");
// TODO

5. SHA512散列算法

public string SHA512(string text, string encoding = "utf-8")

说明:对传入的字符串进行SHA512散列计算,并返回计算结果;编码格式默认为UTF8,可进行指定。

string sha512Str = Xmtool.Hash().SHA512("admin@123");
// TODO

【Github源码】

原文链接:https://www.cnblogs.com/bcbr/archive/2023/05/09/17384412.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:开源.NetCore通用工具库Xmtool使用连载 – 散列算法篇 - Python技术站

(0)
上一篇 2023年5月9日
下一篇 2023年5月9日

相关文章

  • C# Invoke,begininvoke的用法详解

    C#中的Invoke和BeginInvoke是两个非常重要的方法,它们可以在多线程程序开发中扮演重要的角色。 Invoke和BeginInvoke的作用 Invoke和BeginInvoke的作用都是在UI线程上执行一个委托,Invoke会使调用线程阻塞,而BeginInvoke则会立即返回并在UI线程上异步执行委托。 在WinForm应用程序中,由于涉及到…

    C# 2023年5月15日
    00
  • C#算法设计与分析详解

    C#算法设计与分析详解攻略 本文是面向C#开发者的一份算法教程。我们将介绍如何使用C#实现一些常用算法,并对这些算法的时间复杂度做出分析。 算法设计基础 在开始介绍具体的算法之前,我们先来了解一些算法设计的基础知识。 时间复杂度 时间复杂度是分析算法执行效率的一种方法。通常使用大O标记法来表示时间复杂度。例如,$O(1)$表示常数时间复杂度,$O(n)$表示…

    C# 2023年5月31日
    00
  • 树莓派ASP.NET环境配置过程详解

    树莓派ASP.NET环境配置过程详解 环境要求 在配置树莓派ASP.NET环境之前,确保你已经完成了以下前置条件: 已正确连接树莓派至网络 已在树莓派上安装了.NET Core runtime 确保树莓派上已安装curl及libunwind8包,如果尚未安装,请使用以下命令安装: sudo apt-get update sudo apt-get instal…

    C# 2023年6月3日
    00
  • C#数据类型转换(显式转型、隐式转型、强制转型)

    C#中的数据类型转换可以分为三种类型:显式转型、隐式转型和强制转型。 显式转型 显式转型是指将一个较大的数据类型转换为一个较小的数据类型。当进行显式转型时,需要用到强制转型(casting),通过使用强制转型运算符来指定要转换的数据类型。显式转型可能会导致数据出现精度损失或者数据溢出的情况。 下面是两个示例,分别演示了将 double 类型和 decimal…

    C# 2023年5月14日
    00
  • Visual Studio 2022 MAUI NU1105(NETSDK1005) 问题处理记录

    以下是关于“VisualStudio2022MAUINU1105(NETSDK1005)问题处理记录”的完整攻略: 1. 问题描述 在使用 Visual Studio 2022 开发 MAUI 应程序时,可能会遇到以下错误: NETSDK1005: Assets file ‘path.assets.json’ not found. 个错误通常发生在创建新的 …

    C# 2023年5月12日
    00
  • c# 使用线程对串口serialPort进行收发数据(四种)

    下面将给出“C# 使用线程对串口SerialPort进行收发数据(四种)”的详细攻略。 一、准备工作 在进行串口收发数据的处理前,需要进行一些准备工作: 引入System.IO.Ports命名空间; 创建SerialPort对象,配置串口参数; 确保串口已正常打开。 二、使用线程进行串口数据收发 1. 使用Thread类 使用Thread类可以使代码执行在一…

    C# 2023年6月7日
    00
  • 手把手教你如何基于C#制作一个网址检测工具

    手把手教你基于C#制作一个网址检测工具 简介 网址检测工具是一种用来检测网址是否可用的工具,可以帮助用户快速定位网站故障原因,提高用户的使用体验。该教程框架基于C#语言,本文将详细阐述如何基于C#制作一个网址检测工具。 准备工作 在开始之前,请先安装好 .NET环境,并下载安装 Visual Studio。 实现步骤 1. 创建项目 在 Visual Stu…

    C# 2023年6月6日
    00
  • c#泛型学习详解 创建线性链表

    C#泛型学习详解-创建线性链表 什么是泛型 在C#中,泛型是一种基于类型参数化的编程技术,它允许我们编写一个可以与任何类型一起工作的代码。使用泛型代码可以提高代码重用性和类型安全性。 什么是线性链表 线性链表是一种基本数据结构,由若干个数据节点构成,每个节点包含自己的数据或指向其他节点的引用。节点之间的关系是通过引用来体现的。具体的,我们可以用下列代码来表示…

    C# 2023年6月7日
    00
合作推广
合作推广
分享本页
返回顶部