知识大全 哈希(不可逆)加密通用类库函数

Posted 字节

篇首语:知识是珍贵的宝石,文化的宝石放出的光辉。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 哈希(不可逆)加密通用类库函数相关的知识,希望对你有一定的参考价值。

  using System;  using System IO;  using System Security Cryptography;    namespace Common    /// <summary>  ///Copyright (C) kwklover(邝伟科)  ///File name:Hasher cs  ///Author:邝伟科 Version: Date: 年 月 日  ///Description:哈希(不可逆)加密通用类库函数  /// </summary>  public class Hasher    private byte[] _HashKey; //哈希密钥存储变量  private string _HashText; //待加密的字符串  public Hasher()    //  // TODO: 在此处添加构造函数逻辑  //      /// <summary>  /// 哈希密钥  /// </summary>  public byte[] HashKey    set    _HashKey=value;    get    return _HashKey;        /// <summary>  /// 需要产生加密哈希的字符串  /// </summary>  public string HashText    set    _HashText=value;    get    return _HashText;        /// <summary>  /// 使用HMACSHA 类产生长度为 字节的哈希序列 需提供相应的密钥 接受任何大小的密钥   /// </summary>  /// <returns></returns>  public string HMACSHA Hasher()    byte[] HmacKey=HashKey;  byte[] HmacData=System Text Encoding UTF GetBytes(HashText);    HMACSHA Hmac = new HMACSHA (HmacKey);    CryptoStream cs = new CryptoStream(Stream Null Hmac CryptoStreamMode Write);  cs Write(HmacData HmacData Length);  cs Close();    byte[] Result=Hmac Hash;    return Convert ToBase String(Result); //返回长度为 字节字符串      /// <summary>  /// 使用MACTripleDES类产生长度为 字节的哈希序列 需提供相应的密钥 密钥长度可为 或 字节的密钥   /// </summary>  /// <returns></returns>  public string MACTripleDESHasher()    byte[] MacKey=HashKey;  byte[] MacData=System Text Encoding UTF GetBytes(HashText);    MACTripleDES Mac=new MACTripleDES(MacKey);    byte[] Result=Mac ComputeHash(MacData);    return Convert ToBase String(Result); //返回长度为 字节字符串      /// <summary>  /// 使用MD CryptoServiceProvider类产生哈希值 不需要提供密钥   /// </summary>  /// <returns></returns>  public string MD Hasher()    byte[] MD Data=System Text Encoding UTF GetBytes(HashText);    MD Md =new MD CryptoServiceProvider();    byte[] Result=Md ComputeHash(MD Data);    return Convert ToBase String(Result); //返回长度为 字节字符串      /// <summary>  /// 使用SHA Managed类产生长度为 位哈希值 不需要提供密钥   /// </summary>  /// <returns></returns>  public string SHA ManagedHasher()    byte[] SHA Data=System Text Encoding UTF GetBytes(HashText);    SHA Managed Sha =new SHA Managed();    byte[] Result=Sha ComputeHash(SHA Data);    return Convert ToBase String(Result); //返回长度为 字节的字符串      /// <summary>  /// 使用SHA Managed类产生长度为 位哈希值 不需要提供密钥   /// </summary>  /// <returns></returns>  public string SHA ManagedHasher()    byte[] SHA Data=System Text Encoding UTF GetBytes(HashText);    SHA Managed Sha =new SHA Managed();    byte[] Result=Sha ComputeHash(SHA Data);    return Convert ToBase String(Result); //返回长度为 字节的字符串      /// <summary>  /// 使用SHA Managed类产生长度为 位哈希值 不需要提供密钥   /// </summary>  /// <returns></returns>  public string SHA ManagedHasher()    byte[] SHA Data=System Text Encoding UTF GetBytes(HashText);    SHA Managed Sha =new SHA Managed();    byte[] Result=Sha ComputeHash(SHA Data);    return Convert ToBase String(Result); //返回长度为 字节的字符串      /// <summary>  /// 使用SHA Managed类产生长度为 位哈希值 不需要提供密钥   /// </summary>  /// <returns></returns>  public string SHA ManagedHasher()    byte[] SHA Data=System Text Encoding UTF GetBytes(HashText);    SHA Managed Sha =new SHA Managed();    byte[] Result=Sha ComputeHash(SHA Data);    return Convert ToBase String(Result); //返回长度为 字节的字符串       cha138/Article/program/Java/hx/201311/26461

相关参考