`
liu_shui8
  • 浏览: 68032 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

使用jasypt加密properties文件密码

阅读更多
package example;
import org.jasypt.util.text.BasicTextEncryptor;
/**
 * 加密解密类
 * @author Administrator
 *
 */
public class PasswordEncryptorTest {
    public static void main(String[] args) {
        //加密 
        BasicTextEncryptor textEncryptor = new BasicTextEncryptor(); 
        textEncryptor.setPassword("root");
        String newPassword = textEncryptor.encrypt("123456");
        System.out.println(newPassword);
//        解密 
        BasicTextEncryptor textEncryptor2 = new BasicTextEncryptor(); 
        textEncryptor2.setPassword("root"); 
        String oldPassword = textEncryptor2.decrypt(newPassword);   
        System.out.println(oldPassword);
    }
}


spring配置文件

 <bean id="environmentVariablesConfiguration"
  class="org.jasypt.encryption.pbe.config.EnvironmentStringPBEConfig">
  <property name="algorithm" value="PBEWithMD5AndDES" />
  <property name="password" value="root" />
 </bean>
 <bean id="configurationEncryptor"
  class="org.jasypt.encryption.pbe.StandardPBEStringEncryptor">
  <property name="config" ref="environmentVariablesConfiguration" />
 </bean>
 <bean id="propertyConfigurer"
  class="org.jasypt.spring.properties.EncryptablePropertyPlaceholderConfigurer">
  <constructor-arg ref="configurationEncryptor" />
  <property name="locations">
   <list>
    <value>/WEB-INF/app-config/jdbc.properties</value>
   </list>
  </property>
  <property name="fileEncoding" value="utf-8" />
 </bean>


jdbc.properties
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/flyhigher?useUnicode=true&characterEncoding=utf-8
jdbc.username=root
jdbc.password=ENC(ssTkzys6BnDAh8JabCprCw==)
hibernate.dialect=org.hibernate.dialect.MySQLDialect
分享到:
评论
2 楼 liu_shui8 2010-05-07  
JUNNIHAO 写道
StandardPBEStringEncryptor se = new StandardPBEStringEncryptor();
    se.setPassword("root");
    String ss = se.decrypt("ssTkzys6BnDAh8JabCprCw==");
    System.out.println(ss);
这个语句就可以输出你的密码,很容易破解。我想不明白这样有什么用呢?

如果你在一个上市公司工作,会有一位叫SOX老头来检查你的应用,是不允许密码以明文形式出现的!
应了那句古话:锁,不是用来防小人的!
1 楼 JUNNIHAO 2010-05-05  
StandardPBEStringEncryptor se = new StandardPBEStringEncryptor();
    se.setPassword("root");
    String ss = se.decrypt("ssTkzys6BnDAh8JabCprCw==");
    System.out.println(ss);
这个语句就可以输出你的密码,很容易破解。我想不明白这样有什么用呢?

相关推荐

    配置文件内容加密jasypt demo

    在Spring Boot中,我们可以利用jasypt来加密配置文件(如application.properties或application.yml)中的敏感数据,确保即使配置文件被泄露,也无法直接获取到原始的明文信息。 首先,我们需要在项目中引入jasypt的...

    jasypt加密解密工具含源码有界面

    首先,在`pom.xml`或`build.gradle`中添加依赖,然后在`application.properties`中设置加密密码,并使用`@Value`注解注入加密过的配置项。 ```properties # application.properties jasypt.encryptor.password=my-...

    SpringBoot 集成 Jasypt 对数据库加密以及踩坑

    SpringBoot 集成 Jasypt 对数据库加密是一个非常重要的安全机制,通过对数据库密码的加密,可以保护数据库的安全,防止未经授权的访问。在本文中,我们将介绍如何在 SpringBoot 项目中集成 Jasypt 对数据库进行加密...

    使用jasypt-1.5加密Spring的db属性文件

    使用jasypt-1.5可以对db.properties文件进行加密,例如`datasource.password=ENC(G6N718UuyPE5bHyWKyuLQSm02auQPUtm)`。 8. 加密db.xml文件 使用jasypt-1.5可以对db.xml文件进行加密,例如`...

    Springboot+PBEWITHHMACSHA512ANDAES-128配置文件密码加密

    通过以上步骤,你的Spring Boot应用就能使用PBEWITHHMACSHA512ANDAES-128加密策略,有效保护配置文件中的密码和其他敏感信息。这个过程虽然涉及多个步骤,但能显著提高应用的安全性,防止因数据泄露带来的潜在风险。...

    使用jasypt-1.5加密Spring的db属性文件[归类].pdf

    本文将详细介绍如何使用jasypt-1.5对Spring框架中的`db.properties`文件进行加密。 #### 二、jasypt简介 jasypt(Java Simple Yet Powerful Text Encryption Library)是一款开源的、轻量级的文本加密库,它能够为...

    JASYPT实现项部部署配置文件加密

    以下将详细讲解JASYPT的使用以及如何在项目部署配置文件中应用加密技术。 JASYPT是一个强大的Java加密库,提供了一种简单且直观的方式来加密和解密数据。它的主要目标是简化Java应用程序中的加密操作,使得开发者...

    数据库密码配置加密操作步骤.doc

    数据库密码配置加密操作步骤 Spring Boot 中数据库账号密码加密操作是指在 Spring Boot ...数据库密码配置加密操作是保护数据库账号密码的重要手段,通过使用 Jasypt 或 Druid 等加密库,可以有效地保护敏感信息。

    基于Jasypt对SpringBoot配置文件加密

    使用Jasypt对SpringBoot配置文件进行加密,可以有效保护配置文件中的敏感信息不被非法获取。 首先,需要在项目的pom.xml文件中加入Jasypt的依赖项。根据所提供的文件内容,可以发现引用了一个特定版本的Jasypt ...

    java简单加密包(jasypt-1.8-dist.zip)

    JASYPT还支持在配置文件中使用加密的值,例如在Spring框架的应用中,你可以直接在properties或yaml文件中使用加密的数据库连接字符串或其他敏感信息。这样,即使配置文件被泄露,攻击者也无法直接读取到明文信息,...

    jasypt-1.7.1.jar.zip 下载

    - **应用配置文件**:在分布式系统中,通过jasypt加密配置文件中的密钥,提高系统的安全性。 - **用户密码存储**:可以使用jasypt对用户密码进行加密存储,保证用户信息安全。 6. **注意事项** - 加密强度的选择...

    jasypt-spring-boot使用说明

    在Spring Boot的application.properties或application.yml文件中,我们可以使用加密后的密码。使用`ENC()`前缀包围加密值,如: ```properties spring.datasource.password=ENC(someEncryptedValue) ``` 六、自动...

    jasypt API Docs 1.9 (CHM格式)

    Jasypt 1.4的新特征包括:加密属性文件(encryptable properties files)、Spring Framework集成、加密Hibernate数据源配置、新的命令行工具、URL加密的Apache wicket集成以及升级文档。 根据Jasypt文档,该技术可...

    基于java的加密包 Jasypt.zip

    - 密码策略:Jasypt使用密码(或称为“盐”)来增强加密过程。选择强密码并确保其随机性是提高加密安全性的重要步骤。 - 集成测试:在生产环境中部署加密功能后,应进行集成测试以确保加密和解密过程的正确性。 ...

    Javajasypt解决SpringBoot项目application配置文件数据库密码上传git暴露问题解决演示代码

    在Spring Boot项目中,Jasypt可以与Spring的属性配置机制无缝集成,允许我们加密配置文件中的密码,只在运行时通过一个解密密钥进行解密。 以下是使用Jasypt解决Spring Boot项目配置文件中数据库密码暴露问题的步骤...

    Java加密包 Jasypt.7z

    2. **与现有代码集成**:Jasypt能够无缝地集成到现有的Java项目中,支持Spring框架,并且可以与各种配置文件(如XML、Properties)一起工作,使得敏感数据如密码、数据库连接字符串等得到保护。 3. **可插拔加密...

    web应用数据库密码加密

    为了保护这些敏感信息,我们可以使用密码加密技术。Spring Boot提供了`jasypt-spring-boot-starter`这个库,它允许我们将密码加密后写入配置文件,运行时再解密。 2. **集成Jasypt** 首先,我们需要将Jasypt的依赖...

    Spring数据库连接等配置加密

    例如,我们可以使用AES(Advanced Encryption Standard)算法,先将原始密码加密,然后在`dbconfig.properties`中存储加密后的值: ```properties jdbc.password=encrypted_value ``` 接下来,我们需要在`spring-...

    Springboot项目对数据库用户名密码实现加密过程解析

    本文详细介绍了如何在Springboot项目中实现数据库用户名密码的加密过程,包括使用jasypt库对密码进行加密、配置加密后的密码密文到Spring Boot配置文件中,以及设置加密的秘钥环境变量。希望本文能够对大家的学习和...

    jasypt-spring-boot-starter 3.0.5依赖的pom及jar

    在实际使用中,开发者需要在自己的POM文件中添加jasypt-spring-boot-starter的依赖,然后在配置文件(如application.properties或application.yml)中声明加密的属性,并指定相应的密钥。这样,Spring Boot在启动时...

Global site tag (gtag.js) - Google Analytics