53 lines
1.5 KiB
C#
53 lines
1.5 KiB
C#
using System;
|
|
namespace Zhaizj.Framework {
|
|
|
|
/// <summary>
|
|
/// 封装了常用 hash 算法
|
|
/// </summary>
|
|
public interface IHashTool {
|
|
|
|
/// <summary>
|
|
/// 根据指定的 hash 算法,加密字符串(比如密码)
|
|
/// </summary>
|
|
/// <param name="pwd">需要 hash 的字符串</param>
|
|
/// <param name="ht">hash 算法类型</param>
|
|
/// <returns></returns>
|
|
String Get( String pwd, HashType ht );
|
|
|
|
|
|
/// <summary>
|
|
/// 根据 hash 算法和指定的 salt,加密字符串
|
|
/// </summary>
|
|
/// <param name="pwd"></param>
|
|
/// <param name="salt">指定的 salt</param>
|
|
/// <param name="ht">hash 算法类型</param>
|
|
/// <returns></returns>
|
|
String GetBySalt( String pwd, String salt, HashType ht );
|
|
|
|
/// <summary>
|
|
/// 获取随机密码(由英文字母和数字构成)
|
|
/// </summary>
|
|
/// <param name="passwordLength">密码长度</param>
|
|
/// <returns></returns>
|
|
String GetRandomPassword( int passwordLength );
|
|
|
|
|
|
/// <summary>
|
|
/// 获取随机密码(由英文字母和数字构成)
|
|
/// </summary>
|
|
/// <param name="passwordLength">密码长度</param>
|
|
/// <param name="isLower">结果是否小写</param>
|
|
/// <returns></returns>
|
|
String GetRandomPassword( int passwordLength, Boolean isLower );
|
|
|
|
/// <summary>
|
|
/// 根据指定长度获取salt
|
|
/// </summary>
|
|
/// <param name="size">salt的长度</param>
|
|
/// <returns></returns>
|
|
String GetSalt( int size );
|
|
|
|
}
|
|
|
|
}
|