首页
技术博客
PHP教程
数据库技术
前端开发
HTML5
Nginx
php论坛
新用户注册
|
会员登录
PHP教程
技术博客
编程问答
PNG素材
编程语言
前端技术
Android
PHP教程
HTML5教程
数据库
Linux技术
Nginx技术
PHP安全
WebSerer
职场攻略
JavaScript
开放平台
业界资讯
大话程序猿
登录
极速注册
取消
热门标签 | HotTags
timezone
object
python
perl
heatmap
node.js
httpclient
audio
httprequest
frameworks
runtime
web
future
callback
default
expression
dockerfile
uri
nodejs
ascii
search
email
bit
bash
typescript
cookie
bitmap
python3
testing
string
netty
hashtable
dll
schema
actionscrip
keyword
php7
bytecode
export
input
int
command
match
sum
plugins
install
window
controller
instance
format
eval
copy
main
stream
text
hash
iostream
random
golang
fetch
range
filter
subset
md5
case
hashset
regex
cpython
java
go
buffer
blob
io
php
shell
less
c语言
lua
php5
当前位置:
开发笔记
>
编程语言
> 正文
微信小程序java解密报异常Keylengthnot128/192/256bits
作者:楼_市早班车_954 | 来源:互联网 | 2023-06-14 19:25
异常12345678org.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$InvalidKeyOrParametersExce
异常
1
2
3
4
5
6
7
8
org.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher$InvalidKeyOrParametersException: Key length not 128/192/256 bits.
at org.bouncycastle.jcajce.provider.symmetric.util.BaseBlockCipher.engineInit(Unknown Source)
at javax.crypto.Cipher.implInit(Cipher.java:806)
at javax.crypto.Cipher.chooseProvider(Cipher.java:864)
at javax.crypto.Cipher.init(Cipher.java:1396)
at javax.crypto.Cipher.init(Cipher.java:1327)
at com.cust.wechat.utils.AesCbcUtil.decrypt(AesCbcUtil.java:62)
at com.cust.wechat.utils.AesCbcUtil.main(AesCbcUtil.java:117)
代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
public static void main(String[] args) throws Exception
{
//这个会报异常
String sessiOnKey= "o-kJW4_3AVXz5s96JgUkcBE4M3LA";
String encryptedData = "JDIIqASgtHXbNkolc7j0cV4f3bakhZMj/Z2gbxJtCCFmzJmbZeUXKujEb4DEAhfrHH90qhVMpKTB+SAAjdicjT7waWtgexWfipIgZS2FREJvMmdNsp/ahhtn68joAhZze458X0YFQ4i01/Y5UFr1XktllN7C+LSb5zVqOzPGG20zER5TtB1XaZig1PmOF4CqO3A7ZV7nUnr0itIDhSXPZhQqJCNwd93EKyi7lVnCBSOF6Fqb3Wp6na3KrKP1lON1UV5g8DDZRJFOpsvVMMP6KNdy8Sf5DTn9PE7+XcZ2yVwiIPBihsA0iPMlv3jhOnzhuEtz7M4+02f0V1MNS31kZuvQb0NnwGGwRb8JrlTF1c70InLMUvgRG66gFE7otx7v/aHvrv02MitbjgL5Lg76O8Og6Tm1/gFkQaPoz4F1AQ+SNTnjgRYSFHwT2AQXusG2hJ678r8+kcUTR1tPRSrc+zBxNoEA3SPNgDZEFE557FI=";
String iv = "dqNtltSAZGV9Q+O9Hh8mLg==";
//这个不会报异常
String sessionKey1 = "tiihtNczf5v6AKRyjwEUhQ==";
String encryptedData1 = "CiyLU1Aw2KjvrjMdj8YKliAjtP4gsMZMQmRzooG2xrDcvSnxIMXFufNstNGTyaGS9uT5geRa0W4oTOb1WT7fJlAC+oNPdbB+3hVbJSRgv+4lGOETKUQz6OYStslQ142dNCuabNPGBzlooOmB231qMM85d2/fV6ChevvXvQP8Hkue1poOFtnEtpyxVLW1zAo6/1Xx1COxFvrc2d7UL/lmHInNlxuacJXwu0fjpXfz/YqYzBIBzD6WUfTIF9GRHpOn/Hz7saL8xz+W//FRAUid1OksQaQx4CMs8LOddcQhULW4ucetDf96JcR3g0gfRK4PC7E/r7Z6xNrXd2UIeorGj5Ef7b1pJAYB6Y5anaHqZ9J6nKEBvB4DnNLIVWSgARns/8wR2SiRS7MNACwTyrGvt9ts8p12PKFdlqYTopNHR1Vf7XjfhQlVsAJdNiKdYmYVoKlaRv85IfVunYzO0IKXsyl7JCUjCpoG20f0a04COwfneQAGGwd5oa+T8yO5hzuyDb/XcxxmK01EpqOyuxINew==";
String iv1 = "r7BXXKkLb8qrSNn05n0qiA==";
System.out.println(AesCbcUtil.decrypt(encryptedData1, sessionKey1, iv1, "UTF-8"));
}
public static String decrypt(String data, String key, String iv, String encodingFormat) throws Exception
{
//initialize();
//被加密的数据
byte[] dataByte = Base64.decodeBase64(data);
//加密秘钥
byte[] keyByte = Base64.decodeBase64(key);
//偏移量
byte[] ivByte = Base64.decodeBase64(iv);
try
{
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS7Padding");
SecretKeySpec spec = new SecretKeySpec(keyByte, "AES");
//生成iv
AlgorithmParameters parameters = AlgorithmParameters.getInstance("AES");
parameters.init(new IvParameterSpec(ivByte));
// 初始化
cipher.init(Cipher.DECRYPT_MODE, spec, parameters);
byte[] resultByte = cipher.doFinal(dataByte);
if (null != resultByte && resultByte.length > 0)
{
String result = new String(resultByte, encodingFormat);
return result;
}
return null;
}
catch (NoSuchAlgorithmException e)
{
e.printStackTrace();
}
catch (NoSuchPaddingException e)
{
e.printStackTrace();
}
catch (InvalidParameterSpecException e)
{
e.printStackTrace();
}
catch (InvalidKeyException e)
{
e.printStackTrace();
}
catch (InvalidAlgorithmParameterException e)
{
e.printStackTrace();
}
catch (IllegalBlockSizeException e)
{
e.printStackTrace();
}
catch (BadPaddingException e)
{
e.printStackTrace();
}
catch (UnsupportedEncodingException e)
{
e.printStackTrace();
}
return null;
}
微信
小程序
java
key
bit
cas
ide
ci
io
写下你的评论吧 !
吐个槽吧,看都看了
会员登录
|
用户注册
推荐阅读
object
Oracle seg,V$TEMPSEG_USAGE与Oracle排序的关系及使用方法
本文介绍了Oracle seg,V$TEMPSEG_USAGE与Oracle排序之间的关系,V$TEMPSEG_USAGE是V_$SORT_USAGE的同义词,通过查询dba_objects和dba_synonyms视图可以了解到它们的详细信息。同时,还探讨了V$TEMPSEG_USAGE的使用方法。 ...
[详细]
蜡笔小新 2023-12-12 17:57:15
object
RouterOS 5.16软路由安装图解教程
本文介绍了如何安装RouterOS 5.16软路由系统,包括系统要求、安装步骤和登录方式。同时提供了详细的图解教程,方便读者进行操作。 ...
[详细]
蜡笔小新 2023-12-12 10:22:22
string
Hibernate延迟加载深入分析-集合属性的延迟加载策略
本文深入分析了Hibernate延迟加载的机制,特别是集合属性的延迟加载策略。通过延迟加载,可以降低系统的内存开销,提高Hibernate的运行性能。对于集合属性,推荐使用延迟加载策略,即在系统需要使用集合属性时才从数据库装载关联的数据,避免一次加载所有集合属性导致性能下降。 ...
[详细]
蜡笔小新 2023-12-10 14:26:13
web
Java消息队列Spring整合ActiveMq我是小强zz
1、概述首先和大家一起回顾一下Java消息服务,在我之前的博客《Java消息队列-JMS概述》中,我为大家分析了:然后在另一篇博客《Java消息队列-ActiveMq实战》中 ...
[详细]
蜡笔小新 2023-10-17 10:34:08
string
org.apache.activemq.util.ByteArrayInputStream.
()方法的使用及代码示例
本文整理了Java中org.apache.activemq.util.ByteArrayInputStream.<init>()方法的一些代码示例,展示了 ...
[详细]
蜡笔小新 2023-10-16 17:47:56
bit
C#生成随机数的三种方法及其问题分析
本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ...
[详细]
蜡笔小新 2023-12-14 14:15:30
string
Spring特性实现接口多类的动态调用详解
本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ...
[详细]
蜡笔小新 2023-12-14 03:24:19
string
关于cuowu类的错误提示和使用AdjustmentListener的问题
本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ...
[详细]
蜡笔小新 2023-12-13 22:09:56
string
通过Go SDK(Amazon S3)从Bucket生成Torrent - Generate Torrent from Bucket via Go SDK (Amazon S3)
Imtryingtofigureoutawaytogeneratetorrentfilesfromabucket,usingtheAWSSDKforGo.我正 ...
[详细]
蜡笔小新 2023-12-12 14:13:01
string
GreenDAO快速入门
前言之前在自己做项目的时候,用到了GreenDAO数据库,其实对于数据库辅助工具库从OrmLite,到litePal再到GreenDAO,总是在不停的切换,但是没有真正去了解他们的 ...
[详细]
蜡笔小新 2023-12-11 12:31:00
web
Asp.net Mvc Framework 七 (Filter及其执行顺序) 的应用示例
本文介绍了在Asp.net Mvc中应用Filter功能进行登录判断、用户权限控制、输出缓存、防盗链、防蜘蛛、本地化设置等操作的示例,并解释了Filter的执行顺序。通过示例代码,详细说明了如何使用Filter来实现这些功能。 ...
[详细]
蜡笔小新 2023-12-10 19:32:05
web
MySQL数据库锁机制及其应用(数据库锁的概念)
本文介绍了MySQL数据库锁机制及其应用。数据库锁是计算机协调多个进程或线程并发访问某一资源的机制,在数据库中,数据是一种供许多用户共享的资源,如何保证数据并发访问的一致性和有效性是数据库必须解决的问题。MySQL的锁机制相对简单,不同的存储引擎支持不同的锁机制,主要包括表级锁、行级锁和页面锁。本文详细介绍了MySQL表级锁的锁模式和特点,以及行级锁和页面锁的特点和应用场景。同时还讨论了锁冲突对数据库并发访问性能的影响。 ...
[详细]
蜡笔小新 2023-12-10 15:54:07
bit
指示|厂家_UDS协议
篇首语:本文由编程笔记#小编为大家整理,主要介绍了UDS协议相关的知识,希望对你有一定的参考价值。UDS的第二类诊断服务,数据传输 ...
[详细]
蜡笔小新 2023-10-17 20:19:57
uri
awseks和awsssoRBAC身份验证问题
我创建了一个新的AWSSSO(使用内部IDP作为身份源,因此不使用ActiveDirectory)。我能够登录AWSCLI、AWSGUI,但 ...
[详细]
蜡笔小新 2023-10-17 17:18:41
string
php session_id 生成规则,php中session_id()函数详细介绍,会话id生成过程及session id长度...
php中session_id()函数原型及说明session_id()函数说明:stringsession_id([string$id])session_id()可以用来获取设置当 ...
[详细]
蜡笔小新 2023-10-14 14:09:19
楼_市早班车_954
这个家伙很懒,什么也没留下!
Tags | 热门标签
timezone
object
python
perl
heatmap
node.js
httpclient
audio
httprequest
frameworks
runtime
web
future
callback
default
expression
dockerfile
uri
nodejs
ascii
search
email
bit
bash
typescript
cookie
bitmap
python3
testing
string
RankList | 热门文章
1
电子书号是什么?电子书号是正规书号吗?电子书号怎么查询验证真假?
2
分治练习
3
OceanBase 技术征文大赛第二期正式开启!快来释放你的原力!
4
SOCKS代理的常见误区
5
百度网盘怎么去除手机联系人?去除手机联系人的操作方法介绍
6
MM应用商场下载失败怎么办?MM商场下载失败怎么解决?
7
爬虫抓取问题
8
进制转换详解(二进制、八进制、十进制、十六进制)
9
SQL Server 2012 手动安装帮助文档+排错
10
连续7年领跑!在华为云桌面,藏了一盘数字办公的大棋
11
全局变量 该如何存放?
12
win10系统"打开或关闭系统图标"网络开关灰色的问题解决
13
酷炫UI!最新开源的Vue3.2移动电商实战(源码+文档分享)
14
es head
15
抖音透明头像,是怎样弄的?头像设置灰色
PHP1.CN | 中国最专业的PHP中文社区 |
DevBox开发工具箱
|
json解析格式化
|
PHP资讯
|
PHP教程
|
数据库技术
|
服务器技术
|
前端开发技术
|
PHP框架
|
开发工具
|
在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved |
京公网安备 11010802041100号
|
京ICP备19059560号-4
| PHP1.CN 第一PHP社区 版权所有