zoukankan      html  css  js  c++  java
  • Spring Security密码加密工具类

    1. 添加Spring Security依赖

    <!--spring-security权限认证框架-->
    
    <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-security</artifactId>
    </dependency>

    2. 注入BCryptPasswordEncoder工具类Bean

    import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
    
    @EnableSwagger2
    @SpringBootApplication
    @MapperScan("com.hundsun.one.mapper")
    public class OneApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(OneApplication.class, args);
        }
    
        /**
         * Spring Security权限认证框架 封装的密码加密工具类
         *
         * @return
         */
        @Bean
        public BCryptPasswordEncoder getBCryptPasswordEncoder(){
            return new BCryptPasswordEncoder();
        }
    }

    3. 生成密文及密文验证

    @SpringBootTest
    class OneApplicationTests {
    
        // spring security权限认证框架 封装的密码加密工具类
        @Autowired
        private BCryptPasswordEncoder pwdEncoder;
    
        @Test
        void xxx(){
            // 生成密文
            String encode = pwdEncoder.encode("123456");
            System.out.println("encode = " + encode);
            // 生成密文
            String encode1 = pwdEncoder.encode("123456");
            System.out.println("encode1 = " + encode1);
            // 验证密文
            boolean b = pwdEncoder.matches("123456", encode);
            System.out.println("b = " + b);
            // 验证密文
            boolean b1 = pwdEncoder.matches("123456", encode1);
            System.out.println("b1 = " + b1);
        }
    }

    4. 控制台打印结果

    // 两次输入的明文都是123456,生成的密文却是不相同的
    // 两次密文验证的结果都是true
    
    encode = $2a$10$tKbmm6laeGZ2mDcn3EdP0OUy3OlWbN15.sJnFpcUSG1yoBYLGUfye
    encode1 = $2a$10$51KayjetdJpMsWoomauz0OAp8ipaO6UOeSHCm01CW1I3gIkYyCr/.
    b = true
    b1 = true
  • 相关阅读:
    重写对象的compareTo方法
    java基础之----hbase
    java基础之----innodb存储引擎
    java基础之----mysql存储结构
    fastjson jsonArrsy 转 list ,list 转 jsonArray
    java基础之----elasticsearch(Java客服端搜索实例)
    java基础之----elasticsearch
    java基础之----RabbitMQ
    java基础之----kafka
    java基础之----zookeeper
  • 原文地址:https://www.cnblogs.com/w1440199392/p/15201246.html
Copyright © 2011-2022 走看看