SpringBoot+ENC实现密钥加密及使用原理
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.encryption.Encryptors;
import org.springframework.security.encryption.TextEncryptor;
@Configuration
public class EncryptionConfig {
@Value("${security.encryption.key}")
private String key;
@Bean
public TextEncryptor textEncryptor() {
// 使用ENC库创建一个TextEncryptor
// 这里使用了Encryptors工厂方法提供的简单加密方式,实际项目中可以使用更安全的加密方式
return Encryptors.text(key, "");
}
}
这段代码定义了一个配置类EncryptionConfig
,它使用Spring的@Configuration
注解标注该类作为一个配置类。通过@Value
注解注入了一个外部配置的加密密钥。然后,它定义了一个Bean方法textEncryptor
,该方法使用提供的密钥创建了一个TextEncryptor
实例,可以用于加密文本。在实际应用中,可以通过依赖注入来获取TextEncryptor
实例,并在服务层使用它进行数据加密和解密。
评论已关闭