using System;
using System.IO;
using System.Data;
using System.Text;
using System.Diagnostics;
using System.Security;
using System.Security.Cryptography;
/*
* .Net框架由于拥有CLR提供的丰富库支持,只需很少的代码即可实现先前使用C等旧式语言很难实现的加密算法。本类实现一些常用机密算法,供参考。其中MD5算法返回Int的ToString字串。返回数字字母型结果的算法参见之前Blog文章
*/
namespace 档案数字化加工
{
///
/// 类名:HashEncrypt
/// 作用:对传入的字符串进行Hash运算,返回通过Hash算法加密过的字串。
/// 属性:[无]
/// 构造函数额参数:
/// IsReturnNum:是否返回为加密后字符的Byte代码
/// IsCaseSensitive:是否区分大小写。
/// 方法:此类提供MD5,SHA1,SHA256,SHA512等四种算法,加密字串的长度依次增大。
///
public class HashEncrypt
{
//private string strIN;
private bool isReturnNum;
private bool isCaseSensitive;
///
/// 类初始化,此类提供MD5,SHA1,SHA256,SHA512等四种算法,加密字串的长度依次增大。
///
/// 是否区分大小写
/// 是否返回为加密后字符的Byte代码
public HashEncrypt(bool IsCaseSensitive, bool IsReturnNum)
{
this.isReturnNum = IsReturn