Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-4953126

Signature timestamps in signed jar files break forward compatibility

XMLWordPrintable

    • 11
    • generic
    • generic
    • Verified

        JRE releases prior to Tiger (J2SE 1.5) cannot parse the signature timestamps
        present in the signature block file generated by the jarsigner tool in Tiger.

        The trace below shows the jarsigner tool in JRE 1.4.2 failing to recognize
        a signed and timestamped jar file which was previously generated using the
        jarsigner tool in Tiger.


        % jarsigner -J-version
        java version "1.4.2_01"
        Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_01-b06)
        Java HotSpot(TM) Client VM (build 1.4.2_01-b06, mixed mode)


        % jarsigner -J-Djava.security.debug=jar -keystore mykeystore -storepass test123 -certs -verify -verbose signed-ts-count.jar
        jar: beginEntry META-INF/MANIFEST.MF
        jar: done with meta!
        jar: nothing to verify!
        jar: beginEntry META-INF/MANIFEST.MF
        jar: beginEntry META-INF/VINNIE.SF
        jar: processEntry: processing block
        jar: beginEntry META-INF/VINNIE.DSA
        jar: processEntry: processing block
        jar: processEntry caught: sun.security.pkcs.ParsingException: Unable to parse the encoded bytes
        jar: done with meta!
        jar: nothing to verify!

                 222 Wed Nov 12 15:45:04 GMT 2003 META-INF/MANIFEST.MF
                 349 Wed Nov 12 15:45:08 GMT 2003 META-INF/VINNIE.SF
                4021 Wed Nov 12 15:45:08 GMT 2003 META-INF/VINNIE.DSA
                   0 Thu Oct 16 10:57:28 BST 2003 META-INF/
                   0 Thu Oct 16 10:56:04 BST 2003 xxx/
                   0 Thu Oct 16 10:56:04 BST 2003 xxx/yyy/
                   0 Thu Oct 16 10:56:24 BST 2003 xxx/yyy/zzz/
         m 511 Thu Oct 16 10:55:22 BST 2003 xxx/yyy/zzz/Count.java
         m 1014 Thu Oct 16 10:56:24 BST 2003 xxx/yyy/zzz/Count.class

          s = signature was verified
          m = entry is listed in manifest
          k = at least one certificate was found in keystore
          i = at least one certificate was found in identity scope

        jar is unsigned. (signatures missing or not parsable)

              vinnie Vincent Ryan
              vinnie Vincent Ryan
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved:
                Imported:
                Indexed: