关于“DES”加密的紧急求救

QiuHj 2003-09-25 08:22:50
在Java 1.4 中的3DES 加密算法 "DESede" 的密钥长度是24个字节,而在一般的POS及相关的应用中按照人民银行认可的3 DES 算法的密钥长度是16个字节的。
是不是在 Java 1.4 中包含的JCE 1.2 中的 DESede 算法可以设置密钥长度,还是人民银行认可的3DES算法和Java 1.4 中的DESede 算法不一样。
如果是不一样的,那里可以下载到人民银行认可的3 DES 算法(16个字节)的JAVA实现的源代码。
如果是一样的, 则请问如何设置 Java 1.4 中包含的JCE 1.2 中的 DESede 算法的密钥长度。

万分感谢
...全文
44 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
QiuHj 2003-09-26
  • 打赏
  • 举报
回复
在JAVA 下载用
//生成密钥
KeyGenerator kg = KeyGenerator.getInstance("DESede");
SecureRandom _sr = new SecureRandom();
kg.init(112,_sr); //只有112,168 两种选择

SecretKey dk = kg.generateKey();
//填充密钥
byte [] _key= dk.getEncoded(); //_key 是24个字节
可是无论是112还是168 在"DESede"模式下载随机生成的密钥都是24个字节?是不是每个字节的有效BIT数不一样。
devilmoon_xp 2003-09-26
  • 打赏
  • 举报
回复
up
zlfh 2003-09-26
  • 打赏
  • 举报
回复
SecretKeySpec skeySpec=new SecretKeySpec(rawKey,"DES");//byte[] rawKey 密匙

我想应该不相同的。我有pos消费机的des密匙算法(C的)。
QiuHj 2003-09-26
  • 打赏
  • 举报
回复
高手快出现!
QiuHj 2003-09-26
  • 打赏
  • 举报
回复
zlfh(千江月) 要不你发一个3DES的例子给我看看 C也可以
qhj@163.net

谢谢
QiuHj 2003-09-26
  • 打赏
  • 举报
回复
我试图用如下方法填充1个16字节的密钥128位DESede 加密器
SecretKeySpec sks = new SecretKeySpec(key,0,16,"DESede");
//SecretKeySpec sks = new SecretKeySpec(key,0,24,"DESede"); 这样不会抛出异常
Cipher c1_Encrypt = Cipher.getInstance("DESede");
c1_Encrypt.init(Cipher.ENCRYPT_MODE, sks);
结果抛出异常 Invalid key length。
是不是在JCE 下的,"DESede"算法只能是24个字节的密钥。可是文档说密钥可以是112bit和168bit两种情况



caiyi0903 2003-09-25
  • 打赏
  • 举报
回复
up
SecureCRT and SecureFX v7.3.3 x86 x64 build 779 注册破解正式版 2015年3月31日官方正式更新发布! 附带了注册机和注册说明,亲测可用 SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件。SecureCRT支持SSH,同时支持Telnet和rlogin协议。SecureCRT是一款用于连接运行包括Windows、UNIX和VMS的理想工具。通过使用内含的VCP命令行程序可以进行加密文件的传输。有流行CRTTelnet客户机的所有特点,包括:自动注册、对不同主机保持不同的特性、打印功能、颜色设置、可变屏幕尺寸、用户定义的键位图和优良的VT100,VT102,VT220和ANSI竞争.能从命令行中运行或从浏览器中运行.其它特点包括文本手稿、易于使用的工具条、用户的键位图编辑器、可定制的ANSI颜色等.SecureCRT的SSH协议支持DES,3DES和RC4密码和密码与RSA鉴别。 SecureFX 支持三种文件传输协议:FTP、SFTP 和 FTP over SSH2。它可以提供安全文件传输。无论您连接的是任何一种操作系统的服务器,它都能提供安全的传输服务。它主要用于Linux操作系统如redhat, ubuntu的客户端文件传输程序,您可以选择利用SFTP通过加密的SSH2实现安全传输,也可以利用FTP进行标准传输。该客户端具有Explorer风格的界面,易于使用,同时提供强大的自动化能力,可以实现自动化的安全文件传输。

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧