问题描述
Common\00mpCryptoPassword\00Ljava/lang/String;\00
ConstantValue\00 \00KHETD645%3DJD$%(?!%*)5\00<init>\00()V\00Code
我正在使用 org.jasypt.encryption.pbe.StandardPBEStringEncryptor
。我刚刚检查了我的编码类,发现它的字节码在课堂上显示了我的加密密码 KHETD645%3DJD$%(?!%*)5
。我真的开始担心我所有数据的安全性。如果有人破解我的课程,那么我的数据会怎样。为什么java类没有将字符串名称mpCryptoPassword
和值KHETD645%3DJD$%(?!%*)5
转换为字节码?
解决方法
所以您的代码中有一个字符串常量,其中包含用于加密的密码?如果是这样,字符串常量不会转换为字节码,因为没有什么可转换的。是数据。这就是为什么为了安全而使用硬编码的字符串常量很容易破解的原因。