Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-72696

Jenkins can not start on a TCK compliant JVM that does not have MD5 support

      Java17(actually JDK14 but 17 is the LTS) removed the mandatory requirement that MD5 needed to be a supported MessageDigest.

      If you attempt to start Jenkins on a JVM that does not have MD5 available it ends in a big mess.

      2024-02-09 15:02:43.444+0000 [id=25]    SEVERE  hudson.util.BootFailure#publish: Failed to initialize Jenkins
      java.security.NoSuchAlgorithmException: MD5 MessageDigest not available
              at java.base/sun.security.jca.GetInstance.getInstance(GetInstance.java:159)
              at java.base/java.security.MessageDigest.getInstance(MessageDigest.java:185)
              at hudson.Util.getMd5(Util.java:664)
              at hudson.Util.getDigestOf(Util.java:640)
      Caused: java.io.IOException: MD5 not installed
              at hudson.Util.getDigestOf(Util.java:648)
              at hudson.Util.getDigestOf(Util.java:670)
      Caused: java.lang.Error
              at hudson.Util.getDigestOf(Util.java:672)
              at jenkins.model.Jenkins.computeVersion(Jenkins.java:5556)
              at jenkins.model.Jenkins.<init>(Jenkins.java:926)
              at hudson.model.Hudson.<init>(Hudson.java:86)
              at hudson.model.Hudson.<init>(Hudson.java:82)
              at hudson.WebAppMain$3.run(WebAppMain.java:248)
      Caused: hudson.util.HudsonFailedToLoad
              at hudson.WebAppMain$3.run(WebAppMain.java:262)
      Exception in thread "Jenkins initialization thread" java.lang.Error: java.io.IOException: MD5 not installed
              at hudson.Util.getDigestOf(Util.java:672)
              at jenkins.model.Jenkins.computeVersion(Jenkins.java:5556)
              at jenkins.model.Jenkins.<init>(Jenkins.java:926)
              at hudson.model.Hudson.<init>(Hudson.java:86)
              at hudson.model.Hudson.<init>(Hudson.java:82)
              at hudson.WebAppMain$3.run(WebAppMain.java:248)
      Caused by: java.io.IOException: MD5 not installed
              at hudson.Util.getDigestOf(Util.java:648)
              at hudson.Util.getDigestOf(Util.java:670)
              ... 5 more
      Caused by: java.security.NoSuchAlgorithmException: MD5 MessageDigest not available
              at java.base/sun.security.jca.GetInstance.getInstance(GetInstance.java:159)
              at java.base/java.security.MessageDigest.getInstance(MessageDigest.java:185)
              at hudson.Util.getMd5(Util.java:664)
              at hudson.Util.getDigestOf(Util.java:640)
              ... 6 more
      

          [JENKINS-72696] Jenkins can not start on a TCK compliant JVM that does not have MD5 support

          James Nord created issue -
          James Nord made changes -
          Labels New: java17-compatibility
          James Nord made changes -
          Description Original: [Java17|https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/security/MessageDigest.html ](actually [JDK14|https://docs.oracle.com/en/java/javase/14/docs/api/java.base/java/security/MessageDigest.html] but 17 is the LTS) removed the mandatory requirement that `MD5` needed to be a supported {{MessageDigest}}.

          If you attempt to start Jenkins on a JVM that does not have MD5 available it ends in a big mess.

          {code}
          2024-02-09 15:02:43.444+0000 [id=25] SEVERE hudson.util.BootFailure#publish: Failed to initialize Jenkins
          java.security.NoSuchAlgorithmException: MD5 MessageDigest not available
                  at java.base/sun.security.jca.GetInstance.getInstance(GetInstance.java:159)
                  at java.base/java.security.MessageDigest.getInstance(MessageDigest.java:185)
                  at hudson.Util.getMd5(Util.java:664)
                  at hudson.Util.getDigestOf(Util.java:640)
          Caused: java.io.IOException: MD5 not installed
                  at hudson.Util.getDigestOf(Util.java:648)
                  at hudson.Util.getDigestOf(Util.java:670)
          Caused: java.lang.Error
                  at hudson.Util.getDigestOf(Util.java:672)
                  at jenkins.model.Jenkins.computeVersion(Jenkins.java:5556)
                  at jenkins.model.Jenkins.<init>(Jenkins.java:926)
                  at hudson.model.Hudson.<init>(Hudson.java:86)
                  at hudson.model.Hudson.<init>(Hudson.java:82)
                  at hudson.WebAppMain$3.run(WebAppMain.java:248)
          Caused: hudson.util.HudsonFailedToLoad
                  at hudson.WebAppMain$3.run(WebAppMain.java:262)
          Exception in thread "Jenkins initialization thread" java.lang.Error: java.io.IOException: MD5 not installed
                  at hudson.Util.getDigestOf(Util.java:672)
                  at jenkins.model.Jenkins.computeVersion(Jenkins.java:5556)
                  at jenkins.model.Jenkins.<init>(Jenkins.java:926)
                  at hudson.model.Hudson.<init>(Hudson.java:86)
                  at hudson.model.Hudson.<init>(Hudson.java:82)
                  at hudson.WebAppMain$3.run(WebAppMain.java:248)
          Caused by: java.io.IOException: MD5 not installed
                  at hudson.Util.getDigestOf(Util.java:648)
                  at hudson.Util.getDigestOf(Util.java:670)
                  ... 5 more
          Caused by: java.security.NoSuchAlgorithmException: MD5 MessageDigest not available
                  at java.base/sun.security.jca.GetInstance.getInstance(GetInstance.java:159)
                  at java.base/java.security.MessageDigest.getInstance(MessageDigest.java:185)
                  at hudson.Util.getMd5(Util.java:664)
                  at hudson.Util.getDigestOf(Util.java:640)
                  ... 6 more
          {code}
          New: [Java17|https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/security/MessageDigest.html ](actually [JDK14|https://docs.oracle.com/en/java/javase/14/docs/api/java.base/java/security/MessageDigest.html] but 17 is the LTS) removed the mandatory requirement that {{MD5}} needed to be a supported {{MessageDigest}}.

          If you attempt to start Jenkins on a JVM that does not have MD5 available it ends in a big mess.

          {code}
          2024-02-09 15:02:43.444+0000 [id=25] SEVERE hudson.util.BootFailure#publish: Failed to initialize Jenkins
          java.security.NoSuchAlgorithmException: MD5 MessageDigest not available
                  at java.base/sun.security.jca.GetInstance.getInstance(GetInstance.java:159)
                  at java.base/java.security.MessageDigest.getInstance(MessageDigest.java:185)
                  at hudson.Util.getMd5(Util.java:664)
                  at hudson.Util.getDigestOf(Util.java:640)
          Caused: java.io.IOException: MD5 not installed
                  at hudson.Util.getDigestOf(Util.java:648)
                  at hudson.Util.getDigestOf(Util.java:670)
          Caused: java.lang.Error
                  at hudson.Util.getDigestOf(Util.java:672)
                  at jenkins.model.Jenkins.computeVersion(Jenkins.java:5556)
                  at jenkins.model.Jenkins.<init>(Jenkins.java:926)
                  at hudson.model.Hudson.<init>(Hudson.java:86)
                  at hudson.model.Hudson.<init>(Hudson.java:82)
                  at hudson.WebAppMain$3.run(WebAppMain.java:248)
          Caused: hudson.util.HudsonFailedToLoad
                  at hudson.WebAppMain$3.run(WebAppMain.java:262)
          Exception in thread "Jenkins initialization thread" java.lang.Error: java.io.IOException: MD5 not installed
                  at hudson.Util.getDigestOf(Util.java:672)
                  at jenkins.model.Jenkins.computeVersion(Jenkins.java:5556)
                  at jenkins.model.Jenkins.<init>(Jenkins.java:926)
                  at hudson.model.Hudson.<init>(Hudson.java:86)
                  at hudson.model.Hudson.<init>(Hudson.java:82)
                  at hudson.WebAppMain$3.run(WebAppMain.java:248)
          Caused by: java.io.IOException: MD5 not installed
                  at hudson.Util.getDigestOf(Util.java:648)
                  at hudson.Util.getDigestOf(Util.java:670)
                  ... 5 more
          Caused by: java.security.NoSuchAlgorithmException: MD5 MessageDigest not available
                  at java.base/sun.security.jca.GetInstance.getInstance(GetInstance.java:159)
                  at java.base/java.security.MessageDigest.getInstance(MessageDigest.java:185)
                  at hudson.Util.getMd5(Util.java:664)
                  at hudson.Util.getDigestOf(Util.java:640)
                  ... 6 more
          {code}
          James Nord made changes -
          Summary Original: Jenknis can not start on a TCK compliant JVM that does not have MD5 supprt New: Jenkins can not start on a TCK compliant JVM that does not have MD5 support
          James Nord made changes -
          Labels Original: java17-compatibility New: java17-compatibility jdk jdk-17
          James Nord made changes -
          Priority Original: Critical [ 2 ] New: Major [ 3 ]

            Unassigned Unassigned
            teilo James Nord
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: