Given final block not properly padded. Such issues can arise if a bad key is used during decryption.
时间: 2023-09-27 18:09:49 浏览: 212
解决delphi XE 访问Mysql时DBX Error的梦幻组合
"Given final block not properly padded. Such issues can arise if a bad key is used during decryption"报错是因为解密时使用了错误的密钥。在AES解密过程中,需要使用与加密过程中相同的密钥来正确解密数据。
根据引用中的代码,每次生成的SecretKey可以不同。这是因为在JDK17中,KeyGenerator生成SecretKey的方式不同于之前的版本。JDK17中的KeyGenerator使用了更安全的随机数生成方法,每次生成的密钥都会不同。而在JDK8中,使用的是基于密码种子生成随机数序列,只要种子相同,生成的密钥就相同。
为了确保数据的安全性,每次使用KeyGenerator生成SecretKey是一个好的做法。这样可以避免密钥泄露或被猜测的风险。双方约定使用同样的密钥也是可以的,但需要保证密钥的安全性和保密性。如果密钥被泄露或被破解,加密的数据将会暴露在风险中。因此,使用KeyGenerator生成密钥可以增加数据的安全性。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [“Given final block not properly padded. Such issues can arise if a bad key is used during“错误解决](https://blog.csdn.net/u012660464/article/details/128341544)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [升级到JDK17,AES解密失败:Given final block not ... Such issues can arise if a bad key is used d](https://blog.csdn.net/libai245/article/details/130300658)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文