当前位置: 技术问答>java相关
关于数字签名的几点疑问??另:csdn的数字签名帖子我都看过,不要介绍给我,我是诚心提问!!
来源: 互联网 发布时间:2015-06-07
本文导语: 我看了一本java tcp/ip应用开发指南,里面关于数字签名一掌我阅读后有几点疑问,现在说出来希望各位大哥给予解答 1.在运用policytool工具进行policy文件的修改后,有两种可以实现查看applet操作本地文件的方法,一是...
我看了一本java tcp/ip应用开发指南,里面关于数字签名一掌我阅读后有几点疑问,现在说出来希望各位大哥给予解答
1.在运用policytool工具进行policy文件的修改后,有两种可以实现查看applet操作本地文件的方法,一是用appletviewer -J-Djava.security.policy命令,这一点我可以实现。二是在java.security文件中添加policy.url.3=file:/f:/book/1/example/security,目前我所有java文件都是按照本书做的,但是再添加了这句话后没什么效果,系统提示还是access denied,不知为什么
2.在运用policytool工具后,用appletviewer命令可以查看对文件进行操作的applet文件了,不知道其他的jar,keytool,jarsigner等命令还有什么用??我感觉很疑惑!!!
1.在运用policytool工具进行policy文件的修改后,有两种可以实现查看applet操作本地文件的方法,一是用appletviewer -J-Djava.security.policy命令,这一点我可以实现。二是在java.security文件中添加policy.url.3=file:/f:/book/1/example/security,目前我所有java文件都是按照本书做的,但是再添加了这句话后没什么效果,系统提示还是access denied,不知为什么
2.在运用policytool工具后,用appletviewer命令可以查看对文件进行操作的applet文件了,不知道其他的jar,keytool,jarsigner等命令还有什么用??我感觉很疑惑!!!
|
和上面说的差不多,我强调的是:
1。你的确没有修改策略文件因为系统使用策略文件是java.policy
2。如果要使用自己的策略文件,如你所指的“policy.url.3=file:/f:/book/1/example/security”这其实没写完我估计应该是“policy.url.3=file:/f:/book/1/example/security/java.policy”应明确指出策略文件java.policy.
3.policytool是用来修改策略文件的;用policytool修改你自己的策略文件java.policy
4。jar, keytool, jarsigner是用来数字签名的,如果你现在只是在本机测试,先可以不管(我现在还是弄得不是很清楚,仍在看...)
至于像 huangzt() 所说内容,其实没必要再试了,因为我已经试过了,系统只会用jre中的策略文件。即可能会在c:program filesjavajre1.3.1libsecurity目录下
1。你的确没有修改策略文件因为系统使用策略文件是java.policy
2。如果要使用自己的策略文件,如你所指的“policy.url.3=file:/f:/book/1/example/security”这其实没写完我估计应该是“policy.url.3=file:/f:/book/1/example/security/java.policy”应明确指出策略文件java.policy.
3.policytool是用来修改策略文件的;用policytool修改你自己的策略文件java.policy
4。jar, keytool, jarsigner是用来数字签名的,如果你现在只是在本机测试,先可以不管(我现在还是弄得不是很清楚,仍在看...)
至于像 huangzt() 所说内容,其实没必要再试了,因为我已经试过了,系统只会用jre中的策略文件。即可能会在c:program filesjavajre1.3.1libsecurity目录下
|
你没有进行数字签名,只是修改了JAVA的安全策略文件,使你可以访问本地硬盘。
|
1.你打算添加的那句话是改变你的系统所采用的策略文件,而并非改变策略文件本身!所以你的安全策略也没有被改变,知道么!如果你想改变的话,你可以在(举例,因为我不知道你要加上什么策略):grant{... }的}前加上permission java.lang.RuntimePermission.LoadLibrary; 就可以了.具体问题具体解决.
2.不好意思,这个问题没有钻研过,无法回答
2.不好意思,这个问题没有钻研过,无法回答
|
这是因为,JDK与JRE都被装在系统上,两个目录不一样,运行时你并不知道哪个被运行了。
JDK :应修改如c:jdk1.3.1jrelibsecurity目录下的文件。
JRE :应修改如c:program filesjavajre1.3.1libsecurity中文件。
两个都改了再试,如果不通,请检查 file:/f:/book/1/example/security
JDK :应修改如c:jdk1.3.1jrelibsecurity目录下的文件。
JRE :应修改如c:program filesjavajre1.3.1libsecurity中文件。
两个都改了再试,如果不通,请检查 file:/f:/book/1/example/security