Shiro HashedCredentialsMatcher 认证匹配


Shiro 提供了用于加密密码和验证密码服务的 CredentialsMatcher 接口,而 HashedCredentialsMatcher 正是 CredentialsMatcher 的一个实现类。写项目的话,总归会用到用户密码的非对称加密,目前主流的非对称加密方式是 MD5 ,以及在 MD5 上的加盐处理,而 HashedCredentialsMatcher 也允许我们指定自己的算法和盐。本文将介绍 HashedCredentialsMatcher 的使用,以及对相关源码的进行解析,MD5 等加密知识请自行查阅。

HashedCredentialsMatcher 的使用
要使用 HashedCredentialsMatcher ,那么首先要进行配置。当然,前提是你已经引入了 Shiro 库。总共有三种配置方式:

XML 格式

<bean id="credentialsMatcher"
        class="org.apache.shiro.authc.credential.HashedCredentialsMatcher">
  		<!-- 加密方式 -->
        <property name="hashAlgorithmName" value="MD5" />
  		<!-- 加密次数 -->
        <property name="hashIterations" value="2" />
  		<!-- 存储散列后的密码是否为16进制 -->
        <property name="storedCredentialsHexEncoded" value="true" />
</bean>

  

原文地址:https://www.cnblogs.com/jtlgb/p/10509285.html