javax.crypto.AEADBadTagException: Tag mismatch 的解决办法

问题概述

关于这个问题,博主是在微信支付开发与配置过程中遇到的,在使用工具 “ CertificateDownloader-1.1.jar ” 生成平台证书时,报:“ javax.crypto.AEADBadTagException: Tag mismatch! ” ,提示标签不匹配,

如下图:

具体错误信息:

javax.crypto.AEADBadTagException: Tag mismatch!
        at com.sun.crypto.provider.GaloisCounterMode.decryptFinal(GaloisCounterMode.java:578)
        at com.sun.crypto.provider.CipherCore.finalNoPadding(CipherCore.java:1049)
        at com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:985)
        at com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:847)
        at com.sun.crypto.provider.AESCipher.engineDoFinal(AESCipher.java:446)
        at javax.crypto.Cipher.doFinal(Cipher.java:2164)
        at com.wechat.pay.contrib.apache.httpclient.util.AesUtil.decryptToString(AesUtil.java:38)
        at com.elias.CertificateDownloader.decryptAndValidate(CertificateDownloader.java:118)
        at com.elias.CertificateDownloader.downloadCertificate(CertificateDownloader.java:103)
        at com.elias.CertificateDownloader.run(CertificateDownloader.java:67)
        at picocli.CommandLine.executeUserObject(CommandLine.java:1729)
        at picocli.CommandLine.access$900(CommandLine.java:145)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2101)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2068)
        at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1928)
        at picocli.CommandLine.parseWithHandlers(CommandLine.java:2282)
        at picocli.CommandLine.run(CommandLine.java:2740)
        at picocli.CommandLine.run(CommandLine.java:2677)
        at com.elias.CertificateDownloader.main(CertificateDownloader.java:155)

解决办法

根据错误信息提示,“ 标签不匹配! ”,

根据提示初步判断为商户号的密码或者商户号序列号错误导致的,

通过比对,果然是商户号密钥写错了,

在通过工具 CertificateDownloader-1.1.jar 生成平台证书时,“--key”或者“-k”的参数值为商户号的API v3密钥,

而博主这边写成商户号序列号了,把“--key”的参数值修改为API v3后就可以正常通过工具生成商户平台证书了!!!

修正后,正确生成商户平台证书,如下图:

结论

1、商户号密钥错误,“--key”或者“-k”参数值错误,一定要正确的 API v3密钥;
2、商户号错误,“--mchid”或者“-m”参数值错误,一定要正确的商户号;
3、商户私钥错误,“--privatekey”或者“-f”私钥文件路径或文件错误或传输过程中损坏,一定要正确的商户私钥文件,文件路径也要正确(注意大小写);
4、商户证书序列号错误,“--serialno”或者“-s”参数值错误,一定要正确的商户证书序列号;
5、等等。。。;


好了,关于 javax.crypto.AEADBadTagException: Tag mismatch! 的解决办法 就写到这儿了,如果还有什么疑问或遇到什么问题欢迎扫码提问,也可以给我留言哦,我会一一详细的解答的。 
歇后语:“ 共同学习,共同进步 ”,也希望大家多多关注CSND的IT社区。


作       者:华    仔
联系作者:who.seek.me@java98k.vip
来        源:CSDN (Chinese Software Developer Network)
原        文:https://blog.csdn.net/Hello_World_QWP/article/details/123209026
版权声明:本文为博主原创文章,请在转载时务必注明博文出处!
### 部署 Stable Diffusion 的准备工作 为了成功部署 Stable Diffusion,在本地环境中需完成几个关键准备事项。确保安装了 Python 和 Git 工具,因为这些对于获取源码和管理依赖项至关重要。 #### 安装必要的软件包和支持库 建议创建一个新的虚拟环境来隔离项目的依赖关系。这可以通过 Anaconda 或者 venv 实现: ```bash conda create -n sd python=3.9 conda activate sd ``` 或者使用 `venv`: ```bash python -m venv sd-env source sd-env/bin/activate # Unix or macOS sd-env\Scripts\activate # Windows ``` ### 下载预训练模型 Stable Diffusion 要求有预先训练好的模型权重文件以便能够正常工作。可以从官方资源或者其他可信赖的地方获得这些权重文件[^2]。 ### 获取并配置项目代码 接着要做的就是把最新的 Stable Diffusion WebUI 版本拉取下来。在命令行工具里执行如下指令可以实现这一点;这里假设目标路径为桌面下的特定位置[^3]: ```bash git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git ~/Desktop/stable-diffusion-webui cd ~/Desktop/stable-diffusion-webui ``` ### 设置 GPU 支持 (如果适用) 当打算利用 NVIDIA 显卡加速推理速度时,则需要确认 PyTorch 及 CUDA 是否已经正确设置好。下面这段简单的测试脚本可以帮助验证这一情况[^4]: ```python import torch print(f"Torch version: {torch.__version__}") if torch.cuda.is_available(): print("CUDA is available!") else: print("No CUDA detected.") ``` 一旦上述步骤都顺利完成之后,就可以按照具体文档中的指导进一步操作,比如调整参数、启动服务端口等等。整个过程中遇到任何疑问都可以查阅相关资料或社区支持寻求帮助。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值