1、CheckPassword /PasswordScale 函数来检验密码的强度
这组函数用于检查密码的强度,CheckPassword 会返回一个评定的强度级别,如果级别较低,则应提示用户更改密码,以适应强度要求。如:
if CheckPassword(APassword) in [pslLowest,pslLower] then begin ShowMessage('您的密码过于简单,很不安全,请重新设置复杂一点的密码。'); Exit; end;
而 PasswordScale 会对密码的复杂度返回一个评分,这个评分代表函数认为密码破解的难度。
我们看一下声明:
TPasswordStrongLevel = (pslLowest, pslLower, pslNormal, pslHigher, pslHighest); ///<summary>计算指定内容的密码强度</summary> ///<param name="S">密码</param> ///<returns>返回一个>=0的密码强度值</returns> function PasswordScale(const S: QStringW): Integer; ///<summary>将指定的密码强度系数转换为强度等级</summary> ///<param name="AScale">通过PasswordScale得到的强度等级</param> ///<returns>返回转换后的强度等级</returns> function CheckPassword(const AScale: Integer): TPasswordStrongLevel; overload; ///<summary>计算指定内容的密码的强度等级</summary> ///<param name="S">密码</param> ///<returns>返回计算得到的强度等级</returns> function CheckPassword(const S: QStringW): TPasswordStrongLevel; overload;
再具体的用法我就不再此缀述了,只需要传递参数,检查返回值而已。
2、StringReplaceW 的一个重载,用来替换一个字符串中的部分字符为指定的字符,这里常用来掩盖部分敏感内容。
首先看下函数声明:
/// <summary>替换指定范围内的字符为指定的字符</summary> /// <param name="AChar">占位字符</param> /// <param name="AFrom">开始位置,从0开始</param> /// <param name="ACount">替换数量</param> /// <returns>返回替换后的字符串</returns> function StringReplaceW(const S: QStringW; const AChar: QCharW; AFrom, ACount: Integer): QStringW; overload;
用法也很简单,比如我们要将 18690023511 中间的 9002 替换成 **** ,则直接调用:
S:=StringReplaceW('18690023511','*',3,4);
即可,同样,如果 ACount 大于剩余的字符数量,则后续的内容全部会被替换为占位字符。