md5加密


md5加密


今天学习了md5加密,这里简单分享一下!

第一步:创建一个maven工程,这里我用的是eclipse

md5加密_第1张图片


第二步:导包,由于是maven工程,那么我们直接引用maven坐标

md5加密_第2张图片

pom.xml配置文件如下:


  4.0.0
  com.hd
  shiro
  0.0.1-SNAPSHOT
  war
  
 
   

   org.apache.shiro
   shiro-all
   1.3.0

 

  
 
   
     
        maven-compiler-plugin
        2.3.2
       
          1.7
          1.7
       

     

     
        maven-war-plugin
        2.2
       
          3.0
          false
       

     

       
            org.apache.tomcat.maven  
            tomcat7-maven-plugin  
             
                8089  
                /
                UTF-8
           
 
       

   
 
 



第三步:创建一个普通java类,继承抽象类如下,并且复写验证与授权这两个方法:


md5加密_第3张图片


第四步:这里只做验证的加密

定义任意字符串,然后实例化md5Hash()对象,我们可以看到有好几个构造函数可以选,这里我们先用最简单的

md5加密_第4张图片


完整的验证代码是这样的:


md5加密_第5张图片


第五步:创建一个file文件,应该需要注意命名规则吧


md5加密_第6张图片


ini配置信息如下:



注意关系:

md5加密_第7张图片


具体代码一并附上:

#定义凭证匹配器



credentialsMatcher=org.apache.shiro.authc.credential.HashedCredentialsMatcher
#散列算法
credentialsMatcher.hashAlgorithmName=md5
#散列次数
credentialsMatcher.hashIterations=1


b=com.hd.customerrealm.CustomerRealm
b.credentialsMatcher=$credentialsMatcher
securityManager.realms=$b


测试:


md5加密_第8张图片


代码一并附上:


public static void main(String[] args) {
//解析ini文件
Factory factory = 
new IniSecurityManagerFactory("classpath:shiro-realm.ini");
//获取SecurityManager
SecurityManager securityManager = factory.getInstance();
//将SecurityManager配置到运行环境中
SecurityUtils.setSecurityManager(securityManager);
//获取subject实例对象
Subject subject = SecurityUtils.getSubject();
//获取token口令
UsernamePasswordToken token = new UsernamePasswordToken("zhang", "hhh");
//模拟登录
subject.login(token);
//验证
boolean flag = subject.isAuthenticated();
System.out.println(flag);
}


那么,主方法运行:很抱歉异常了,它告诉我们找不到jar包...


md5加密_第9张图片


加上maven坐标,保存一下...


md5加密_第10张图片


代码附上:




   commons-logging
   commons-logging
   1.2


再跑一下:


md5加密_第11张图片


上面那一长串就是加密后的代码。

另外我们都知道md5是单向解密,无法逆转的。

以上.......完结....


你可能感兴趣的:(md5加密)