【发布时间】:2013-05-29 20:21:17
【问题描述】:
我如何能够确定密钥的加密(AES256 或 3DES 256)...因为两个密钥都是 32 个字符(每个字符 8 位 * 32 字符)=256 位并经过 Mime 编码。
例子
MQAyAEgAOgA5ADUAMwA3AD8AQgBFAD4A --->AES256 密钥
g1EOWGFb+JjCZ7BbH2RergtKUtDfXrNb --->3DES 密钥
AES 密钥是在 Openssl 中制作的,而 3DES 密钥是使用 Java 和以下 API 制作的。
javax.crypto.Cipher;
javax.crypto.KeyGenerator;
javax.crypto.SecretKey;
javax.crypto.SecretKeyFactory;
javax.crypto.spec.DESedeKeySpec;
javax.crypto.spec.IvParameterSpec;
【问题讨论】:
-
在这成为一个真正的问题之前,您还有很长的路要走。
-
您有一些数据,您需要知道它是加密的 AES 密钥还是加密的 3DES 密钥?你知道用的是什么加密算法吗?
-
@GregS 无论如何都会回答 :)
-
请注意,解码您的 AES 密钥(我认为是测试密钥)表明它不是随机生成的,因此使用起来不安全。
-
public static String newKey(){ return encode(RandomString(12)); }
标签: java encryption openssl aes 3des