java web start 的高人请进!(有关签名的问题)

bankcoder 2003-10-15 05:35:18
现在我也在做关于jws相关的东西。现在遇到了一些问题,无从下手,在网上找到的资料也很有限,所以来这里求助于大家。

我的情况是这样的,我现在接手了以前的一个系统。这个系统就是基于java web start的。服务端是linux,客户端通过java web start将服务端的程序下载下来,然后进行操作。我的整个系统是能够正常运行的。只是由于我们的需要,现要更改相关服务器的ip地址。先简单说一下程序的情况,客户端通过jws把程序download下去后,通过其下载的jar文件里properties文件中的jws服务器和数据库服务器地址指向来连接相应的服务程序。现在我要修改的就是jws服务器和数据库服务器地址。然而这个地址是在一个进行了数字签名的jar文件中(整个程序的jar文件都有数字签名,不过敢肯定是没有用购买的认证,应该是自己做的签名)。由于前面的人并没有留下任何资料,所以现在我无法在修改jar文件后再完成和以前一样的签名。

我曾做过以下两个试验:
1.把所有的签名的jar解开,然后把签名信息全部去掉,然后再打包。最后在jws下载文件的时候报错说“签名是无效的”,并不让我继续下载。

2.我自己重新做了jar的签名,但签名信息肯定和以前是不一样的。由于我没有找到那个假设的负责验证签名的文件。所以在jws下载文件的时候报错说“jnlp文件中的jar资源签名证书不一致”。

我由于现在还没有把java这个数字签名中的验证签名信息这一流程搞得很清楚,所以现在有些无从下手得感觉。不过我还是有点疑问,既然jar文件做了签名,那至少也因该有一个负责验证签名的文件。而且这个文件因该在client。而我client的文件都是从server上down的。那我的这个假设的文件一般都放在server的哪里呢?后缀名是什么呢?(我的server是linux系统,用apache做webserver,通过jnlp文件来下载)。

我想我现在的关键是要找到那个验证我数字签名的那个文件,对吗?

大家能给我一点建议吗?谢谢!
...全文
278 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
bankcoder 2003-10-16
  • 打赏
  • 举报
回复
那现在有没有什么办法可以修改呢?
我想如果有一个验证签名的文件,我把这个文件替换掉,这样可行吗?只是我现在还没有找到这样的文件。
pxboy 2003-10-16
  • 打赏
  • 举报
回复
如果签名文件可以改的话还要签名做什么?
bankcoder 2003-10-16
  • 打赏
  • 举报
回复
但是我觉得我把服务器上的jar全部重新打包签名,那总应该有一个验证我的签名有效的文件(也就是说验证我新做的这个keystore是有效的)。
是不是应该有这样一个文件呢?这个文件又该放在哪里呢?
pxboy 2003-10-15
  • 打赏
  • 举报
回复

将com目录下的所有文件打包为MYJAR.jar
D:\jdk141_02\bin\jar.exe -cvf MYJAR.jar com/

生成签名文件MYKEY.keystore,别名MYJARKEY,这里需要一些个人信息
D:\jdk141_02\bin\keytool.exe -genkey -alias MYJARKEY -keystore MYKEY.keystore

将MYJAR.jar文件用MYKEY.keystore签名
D:\jdk141_02\bin\jarsigner.exe -keystore MYKEY.keystore MYJAR.jar MYJARKEY
pxboy 2003-10-15
  • 打赏
  • 举报
回复
你可以重新签名啊,


将com目录下的所有文件打包为MYJAR.jar
D:\jdk141_02\bin\jar.exe -cvf MYJAR.jar com/

生成签名文件MYKEY.keystore,别名MYJARKEY,这里需要一些个人信息
D:\jdk141_02\bin\keytool.exe -genkey -alias MYJARKEY -keystore MYKEY.keystore

将MYJAR.jar文件用MYKEY.keystore签名
D:\jdk141_02\bin\j

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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