晚上日常发布,无奈将应用发挂十几分钟,复盘一下,聊聊一下一些感悟。 晚上发布是一个渠道应用,主要作用为是去支付机构端进行银行卡扣款。 由于这个过程需要报文信息需啊哟在互联网中传输,所以需要进行相应的加签处理。 这里的银行卡等敏感信息需要采用 AES 加密,由于用于加密的私钥长度大于128位,JDK 自带的加密类将会抛出 java.security.InvalidKeyException: Illegal key size 从而导致加密失败。 加密工具类内部吃掉该异常,返回一个空字符串。然后我们上送给支付机构后,对方返回解密失败,从而导致此次交易失败。 解决办法很简单,更换如下目录的这两个 jar 包 local_policy.jar, US_export_policy.jar 。 ${java_home}/jre/lib/security 参考如下:https://blog.csdn.net/wangjunjun2008/article/details/50847426 解决办法 上面说过只要更换这两个 jar 包就可以就解决问题,但是生产环境技术人员是没有权限,只能通过邮件审批,.... 一不小心又把应用发挂了,复盘一下这十几分钟的黑暗时刻 小黑黑的碎碎念