We did RSA sign an applet (developed by using jdk 1.3) and the applet works
well on different operating systems
with Netscape 4.7 and IE 5.01 (depends if available on operation system).
On our Windows 95 Plattform (ver 9.50b / OSR2 / IE 3.0), the applet failes
to run cause of the fact that the signature is not verified (the grand
dialog does not appear, not with netscape 4.7 and also not with ie 3.0), so
the result is a security exception by trying to get local file access...
(policies, signature and so on are correct, working on all other
systems... ).
So i studied some documents (java.sun.com, some other java resources) and
also the sun jre faq and found in the document
(<http://java.sun.com/products/plugin/1.3/docs/nsobjsigning.html>) the
following information:
Windows 95 original retail edition -> IE 3.0 or higher: Supported ->
Netscape Navigoator: Supported only if IE is installed
Windows 95 OSR2 -> IE 3.0 or higher: Supported -> Netscape Navigoator:
Supported
Ok, we have Win95 Osr2, ie 3.0, netscape navigator 4.7 and jre (1.3.0-C)
installed, so it should work.
The only way to make the applet run correctly on this configuration/OS was
to upgrade from ie 3.0 to ie 5.01 ... the problem is that this is not a
working solution for our environment, we are not allowed to change the
browser versions.
Do you have any suggestions how to solve this problem without updating from
IE 3.0 to IE 5.01 ? (maybe installation of microsoft crypto api 2.0 or
higher will help, but where to get a stand alone version of that ? (hmmm
hehehe maybe from microsoft... did not find it there... :( )
This "Information/Help Request" i send you via my home account (yup, also
work on that problem in my spare time), can you reply (if you have any
suggestion/tip for me) to ha...@grz.at please.
Sincerely
Oliver Hable
Security / Software Engineering
Genossenschafts-Rechenzentrum Linz GmbH.
Goethestr. 80
4021 Linz
URL: <http://www.grz.at>
email: ha...@grz.at
PGP Public Key - request it :)
-- parts of console information
Java(TM) Plug-In: Version 1.3.0-C
Verwendung der JRE-Version 1.3.0 Java HotSpot(TM) Client VM
Proxy-Konfiguration:Kein Proxy ##proxy konfiguration -> no proxy
java.vm.version = 1.3.0-C
java.vm.vendor = Sun Microsystems Inc.
java.vendor.url = <http://java.sun.com/>
path.separator = ;
java.vm.name = Java HotSpot(TM) Client VM
file.encoding.pkg = sun.io
javaplugin.version = 1.3.0-C
java.vm.specification.name = Java Virtual Machine Specification
java.runtime.version = 1.3.0-C
java.awt.graphicsenv = sun.awt.Win32GraphicsEnvironment
os.arch = x86
java.io.tmpdir = ***********
line.separator =
java.vm.specification.vendor = Sun Microsystems Inc.
java.awt.fonts =
os.name = Windows 95 ## 950b - ie3.0
java.specification.name = Java Platform API Specification
java.class.version = 47.0
os.version = 4.0
user.home = ********
user.timezone =
java.awt.printerjob = sun.awt.windows.WPrinterJob
trustProxy = true
file.encoding = Cp1252
java.specification.version = 1.3
javaplugin.trace = true
user.name = wrzdvo
java.class.path = *****
java.vm.specification.version = 1.0
java.home = *******
java.specification.vendor = Sun Microsystems Inc.
user.language = de
awt.toolkit = sun.awt.windows.WToolkit
java.vm.info = mixed mode
java.version = 1.3.0
java.ext.dirs = *****
sun.boot.class.path = ********
java.vendor = Sun Microsystems Inc.
file.separator = \
java.vendor.url.bug = <http://java.sun.com/cgi-bin/bugreport.cgi>
sun.cpu.endian = little
sun.io.unicode.encoding = UnicodeLittle
user.region = DE
sun.cpu.isalist = pentium i486 i386
JAR cache enabled.
Read the Cache option Tag...:Browser
## so i guess the signature is not verified, did not get correct access
permissions...:(
java.lang.ExceptionInInitializerError: java.security.AccessControlException:
access denied (java.util.PropertyPermission java.io.tmpdir read)
at java.security.AccessControlContext.checkPermission(Unknown Source)
at java.security.AccessController.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkPropertyAccess(Unknown Source)
at java.lang.System.getProperty(Unknown Source)
at **.****.***.Storage$1.run(Storage.java:68)
at java.security.AccessController.doPrivileged(Native Method)
at **.****.***.Storage.<clinit>(Storage.java:65)
at **.****.***.getServerInformation(Foo.java:487)
at **.****.***.Foo.init(Foo.java:159)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)