使用jasypt加密解密

相關工具版本如下:

  Spring Boot    2.1.11.RELEASE

  Gradle            4.8

1、在build.gradle導入Jar

implementation 'com.github.ulisesbocchio:jasypt-spring-boot-starter:1.18'

2、在application.properties配置鹽值

jasypt.encryptor.password=yanzhi

3、使用測試類進行對字符串"nihao"加密

@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = HtmlFsApplication.class)
public class JasyptTest {

    @Autowired
    private StringEncryptor encryptor;

    @Test
    public void testJasypt(){
        System.out.println("加密 = " + encryptor.encrypt("nihao"));
    }
}

  測試結果:

4、對上面的字符串進行解密

@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = HtmlFsApplication.class)
public class JasyptTest {

    @Autowired
    private StringEncryptor encryptor;

    @Test
    public void testJasypt(){
        System.out.println("加密 = " + encryptor.encrypt("nihao"));
        System.out.println("解密 = " + encryptor.decrypt("boGqVtoLsxpmU3hhcHpLYQ=="));
    }
}

  測試結果:

5、注意

  jasypt多用於對配置文件進行加密,只需要對明文的主機/賬戶/密碼進行加密,然後拿着加密後的結果寫在配置文件,如下:

  程序運行時會自動解析。

  另外,對同一字符串每次執行加密後的結果不一樣!!!但是隻要鹽值不變,對任意加密結果解密都是一個!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章