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

Exception during certificate validation "IOException: DerInputStream.getLength(): lengthTag=127, too big."

    XMLWordPrintable

    Details

    • Similar Issues:

      Description

      Once I fix JENKINS-41946 with https://github.com/jenkinsci/credentials-plugin/pull/82 .

      The certificate is properly saved (the cert details are displayed) but, when I go back to the update screen, I get an "IOException: DerInputStream.getLength(): lengthTag=127, too big"

      Could not load keystore
      java.io.IOException: DerInputStream.getLength(): lengthTag=127, too big.
      	at sun.security.util.DerInputStream.getLength(DerInputStream.java:561)
      	at sun.security.util.DerValue.init(DerValue.java:365)
      	at sun.security.util.DerValue.<init>(DerValue.java:320)
      	at sun.security.pkcs12.PKCS12KeyStore.engineLoad(PKCS12KeyStore.java:1914)
      	at java.security.KeyStore.load(KeyStore.java:1445)
      	at com.cloudbees.plugins.credentials.impl.CertificateCredentialsImpl$KeyStoreSourceDescriptor.validateCertificateKeystore(CertificateCredentialsImpl.java:311)
      	at com.cloudbees.plugins.credentials.impl.CertificateCredentialsImpl$UploadedKeyStoreSource$DescriptorImpl.doCheckUploadedKeystore(CertificateCredentialsImpl.java:643)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:324)
      	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:167)
      	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:100)
      	at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:124)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
      	at org.kohsuke.stapler.MetaClass$5.doDispatch(MetaClass.java:233)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649)
      	at org.kohsuke.stapler.Stapler.service(Stapler.java:238)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
      	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
      	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135)
      	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:126)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
      	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:80)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
      	at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
      	at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
      	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
      	at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
      	at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
      	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
      	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:553)
      	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
      	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
      	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
      	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
      	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
      	at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
      	at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
      	at org.eclipse.jetty.server.Server.handle(Server.java:499)
      	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
      	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
      	at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
      	at java.lang.Thread.run(Thread.java:745)
      

        Attachments

          Activity

          Hide
          cleclerc Cyrille Le Clerc added a comment -

          cc Stephen Connolly James Nord
          ref CJP-6364

          Show
          cleclerc Cyrille Le Clerc added a comment - cc Stephen Connolly James Nord ref CJP-6364
          Show
          cleclerc Cyrille Le Clerc added a comment - https://github.com/jenkinsci/credentials-plugin/blob/6750b736bfc32b193f02384702ace0154402ef01/src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/UploadedKeyStoreSource/Upload/complete.jelly#L44-L44 upload?Jenkins-Crumb=68c2b08…:20 Uncaught TypeError: oldInput.onblur is not a function at upload?Jenkins-Crumb=68c2b08…:20
          Hide
          cleclerc Cyrille Le Clerc added a comment - - edited

          problem is that the "upload form" inject the base64 of the keystore when it seems that doCheckUploadedKeystore() expects a SecretBytes.toString()

          Base64 of test.pfx

          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
          

          base64(keystore.file) of the uploaded file: https://github.com/jenkinsci/credentials-plugin/blob/53711322f8236867232ba8a8771ad38e3f4c10e1/src/main/java/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl.java#L736-L736

          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
          

          Secret.fromString((base64(keystore.file)))

          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
          

          SecretBytes.fromBytes(keystore.file):

          {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}
          

          Value in the javascript script of the upload window https://github.com/jenkinsci/credentials-plugin/blob/6750b736bfc32b193f02384702ace0154402ef01/src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/UploadedKeyStoreSource/Upload/complete.jelly#L41-L41

          MIIGegIBAzCCBkAGCSqGSIb3DQEHAaCCBjEEggYtMIIGKTCCAw8GCSqGSIb3DQEHBqCCAwAwggL8AgEAMIIC9QYJKoZIhvcNAQcBMBwGCiqGSIb3DQEMAQYwDgQIlyBLvtXN5nACAggAgIICyEwxMBP/+B4slNrMNsiCwGVRCsAlbtz83hBEClpinxnYDe4BBMaDfRRRnZlWDToEOsmTkoRTJikkfFGkmhFTZO9yAz4/xgy8BoPv/uw2G1IbHu+PXSvJpOob0Xf9Y7F1EmnZ6h7IZ2Yws/qoMDiCnPds5rB4dnrrpoFzYx1dWl3yOV+G/lguOdZCmaaOLNEux0JcX/hQvK067AS7Gw0V4KMxaHQNPX4kKQrPO7+1C6hUyF1BEppjuO9zjy4LymkkNPJHvrHarkgfxrFcnIaYRQrwGNKqp2zxcbGbY29f02CIpeap14ULo6anbX/HHxc5L2TS8F1ybz/TvF/HhKT+Y3BRe61Q/81xQeAqEVwWSMJkUIXtNsRVLwkHEhr1dnnoilmZxLe7zBEf8vLoCKlH9BYKIziSmhRBBupUyTnxVZwtJ7Sx8VbzkjVbgtzmWECBrLUk5iU1oTmM7O842FoDW2uyvAR4p8nBxTHihrCG+5rDl6Vhu/d9zG98F+DK52c1locZak+tF9fN5CDHLqtUoL8tzNhHeETS8zoVJbHkoeT/gMesfUusDaj9NgTzmxN8KOZLUavJWE1GlSmVnbGrYQkrJkNNfqiwdfydrR/u16sx0VGgKsueOFVy1MMoALeMycgjX4akq1zPY5WAtCd7fg8TAaUVFiy+sQrBqR7qleCjPdCrC820FdxguzbBwxn8UEmLY3lsuAhsQi2pVQ7AT9fNFAEVwb4B/DtvZP3gYRm6MCT6ngYjU+JRa9SeZzmCgIjphWxDQm66VvZ7nxaKU+3NTATqyb...5dtjmKD31ktyY4tbVDIR+c1mlfO3cz+TBWreyxiPDM+RZ6ZtGE5ltEnkKUPEBygdrBNenhylWkDwOBS0nhQxk2Ly8CjR7ilxt92NznjX6xiwbUCGfcM3VWaz4DYj0dpJ696vyMI0jB4JNZHK3y3mer+LEmXDfz/R+RTDsVo/ynE/LF00OliSijdafRt5q1u7zhYpzOfPRddj0Ycj2q8c2wuuCW5PGYyOg7/RvlY+CuBoS+Id8cj+JQm3XHpmixm4M3KGBcV2rkIIIn5kb3EVxXTdWstY37rGOXnEwooxltjy34UF9TKv7US27048Bj1YGvc8zIJzOdGQOV8WyYta30JMTQ/u7/kTc9NSBWS5PI8VQu2rKcmr2V+MQzC+VvsWUNcLqgUIogYo3vfvVJmH/eskVHT/xLbmqrjPqTtHUokYDPvhvsAOwm8zJ3hUyXnNQ9xt9kokZ5Y+cpYOueDnKK4+6bRUEailFuW0YiSx7kcr1Njb12v/VPm/P2gwzvtQfUj4CyGto90InOKIxHSkZzOlNzA58BioWOXm1dGTdEqhJExoACmKD3Hi/vWZNdLO5qLqvR2cdxcpKSmCh9wzfA8BwcmVlKGOrLRAqqlIWcRAb3QHQfKj8pIt8voZvV76+wxfUDUpk3pP9PDdz5Ae3QP2v2Z0aTaHKjLNxulbHRCwW+MSE+wOJWhIbA9bICNO7VwbrYKVNTrHjkNh2whUBwgsE2Msa0Htgs6HgbWeMbDdNUnic+9kGCPCY/nQCnqWxh6fE21notHEQZvjnn1v0zEK7DCTFp/ejWuq/3FcHIViRoRJJvlbBjKb+zKfTlTN2jgL7Hqq6V/n0xPjAXBgkqhkiG9w0BCRQxCh4IAG4AbwBuAGUwIwYJKoZIhvcNAQkVMRYEFFwJgioig3q9dDV6xo6vEGdZryR5MDEwITAJBgUrDgMCGgUABBS5aqOqUR6kIld8peywddkZ7aqH2gQIzGwG2EFFsJ4CAggA
          

          Data stored in JENKINS_HOME/credentials.xml

          <com.cloudbees.plugins.credentials.impl.CertificateCredentialsImpl>
            <scope>GLOBAL</scope>
            <id>my-certificate</id>
            <description>my-certificate</description>
            <keyStoreSource class="com.cloudbees.plugins.credentials.impl.CertificateCredentialsImpl$UploadedKeyStoreSource">
              <uploadedKeystoreBytes>{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}</uploadedKeystoreBytes>
            </keyStoreSource>
            <password>graYYTrNmqQeM64cUEtPVBcT1BsfFEnFkod/yqir+Yw=</password>
          </com.cloudbees.plugins.credentials.impl.CertificateCredentialsImpl>
          

          Data displayed in the web form when clicking on the "update" button CertificateCredentialsImpl/UploadedKeyStoreSource/config.jelly for test.pfx

          {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}
          
          java.io.IOException: Illegal char in base64 code.
              at com.trilead.ssh2.crypto.Base64.decode(Base64.java:107)
              at hudson.util.Secret.decrypt(Secret.java:150)
              at hudson.util.Secret.fromString(Secret.java:200)
              at com.cloudbees.plugins.credentials.impl.CertificateCredentialsImpl$UploadedKeyStoreSource$DescriptorImpl.doCheckUploadedKeystore(CertificateCredentialsImpl.java:652)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.lang.reflect.Method.invoke(Method.java:498)
              at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:324)
              at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:167)
              at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:100)
              at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:124)
              at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
              at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
              at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
              at org.kohsuke.stapler.MetaClass$5.doDispatch(MetaClass.java:233)
              at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
              at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
              at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
              at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649)
              at org.kohsuke.stapler.Stapler.service(Stapler.java:238)
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
              at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
              at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135)
              at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:126)
              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
              at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:80)
              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
              at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
              at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)
              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
              at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
              at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
              at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
              at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93)
              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
              at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
              at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
              at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
              at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)
              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
              at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
              at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)
              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
              at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
              at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
              at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
              at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:553)
              at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
              at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
              at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
              at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
              at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
              at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
              at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
              at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
              at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
              at org.eclipse.jetty.server.Server.handle(Server.java:499)
              at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
              at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
              at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
              at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
              at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
              at java.lang.Thread.run(Thread.java:745)
          

          https://github.com/jenkinsci/credentials-plugin/blob/6750b736bfc32b193f02384702ace0154402ef01/src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/UploadedKeyStoreSource/config.jelly#L30-L30

          Show
          cleclerc Cyrille Le Clerc added a comment - - edited problem is that the "upload form" inject the base64 of the keystore when it seems that doCheckUploadedKeystore() expects a SecretBytes.toString() Base64 of test.pfx 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 base64(keystore.file) of the uploaded file: https://github.com/jenkinsci/credentials-plugin/blob/53711322f8236867232ba8a8771ad38e3f4c10e1/src/main/java/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl.java#L736-L736 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 Secret.fromString((base64(keystore.file))) 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 SecretBytes.fromBytes(keystore.file): {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} Value in the javascript script of the upload window https://github.com/jenkinsci/credentials-plugin/blob/6750b736bfc32b193f02384702ace0154402ef01/src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/UploadedKeyStoreSource/Upload/complete.jelly#L41-L41 MIIGegIBAzCCBkAGCSqGSIb3DQEHAaCCBjEEggYtMIIGKTCCAw8GCSqGSIb3DQEHBqCCAwAwggL8AgEAMIIC9QYJKoZIhvcNAQcBMBwGCiqGSIb3DQEMAQYwDgQIlyBLvtXN5nACAggAgIICyEwxMBP/+B4slNrMNsiCwGVRCsAlbtz83hBEClpinxnYDe4BBMaDfRRRnZlWDToEOsmTkoRTJikkfFGkmhFTZO9yAz4/xgy8BoPv/uw2G1IbHu+PXSvJpOob0Xf9Y7F1EmnZ6h7IZ2Yws/qoMDiCnPds5rB4dnrrpoFzYx1dWl3yOV+G/lguOdZCmaaOLNEux0JcX/hQvK067AS7Gw0V4KMxaHQNPX4kKQrPO7+1C6hUyF1BEppjuO9zjy4LymkkNPJHvrHarkgfxrFcnIaYRQrwGNKqp2zxcbGbY29f02CIpeap14ULo6anbX/HHxc5L2TS8F1ybz/TvF/HhKT+Y3BRe61Q/81xQeAqEVwWSMJkUIXtNsRVLwkHEhr1dnnoilmZxLe7zBEf8vLoCKlH9BYKIziSmhRBBupUyTnxVZwtJ7Sx8VbzkjVbgtzmWECBrLUk5iU1oTmM7O842FoDW2uyvAR4p8nBxTHihrCG+5rDl6Vhu/d9zG98F+DK52c1locZak+tF9fN5CDHLqtUoL8tzNhHeETS8zoVJbHkoeT/gMesfUusDaj9NgTzmxN8KOZLUavJWE1GlSmVnbGrYQkrJkNNfqiwdfydrR/u16sx0VGgKsueOFVy1MMoALeMycgjX4akq1zPY5WAtCd7fg8TAaUVFiy+sQrBqR7qleCjPdCrC820FdxguzbBwxn8UEmLY3lsuAhsQi2pVQ7AT9fNFAEVwb4B/DtvZP3gYRm6MCT6ngYjU+JRa9SeZzmCgIjphWxDQm66VvZ7nxaKU+3NTATqyb...5dtjmKD31ktyY4tbVDIR+c1mlfO3cz+TBWreyxiPDM+RZ6ZtGE5ltEnkKUPEBygdrBNenhylWkDwOBS0nhQxk2Ly8CjR7ilxt92NznjX6xiwbUCGfcM3VWaz4DYj0dpJ696vyMI0jB4JNZHK3y3mer+LEmXDfz/R+RTDsVo/ynE/LF00OliSijdafRt5q1u7zhYpzOfPRddj0Ycj2q8c2wuuCW5PGYyOg7/RvlY+CuBoS+Id8cj+JQm3XHpmixm4M3KGBcV2rkIIIn5kb3EVxXTdWstY37rGOXnEwooxltjy34UF9TKv7US27048Bj1YGvc8zIJzOdGQOV8WyYta30JMTQ/u7/kTc9NSBWS5PI8VQu2rKcmr2V+MQzC+VvsWUNcLqgUIogYo3vfvVJmH/eskVHT/xLbmqrjPqTtHUokYDPvhvsAOwm8zJ3hUyXnNQ9xt9kokZ5Y+cpYOueDnKK4+6bRUEailFuW0YiSx7kcr1Njb12v/VPm/P2gwzvtQfUj4CyGto90InOKIxHSkZzOlNzA58BioWOXm1dGTdEqhJExoACmKD3Hi/vWZNdLO5qLqvR2cdxcpKSmCh9wzfA8BwcmVlKGOrLRAqqlIWcRAb3QHQfKj8pIt8voZvV76+wxfUDUpk3pP9PDdz5Ae3QP2v2Z0aTaHKjLNxulbHRCwW+MSE+wOJWhIbA9bICNO7VwbrYKVNTrHjkNh2whUBwgsE2Msa0Htgs6HgbWeMbDdNUnic+9kGCPCY/nQCnqWxh6fE21notHEQZvjnn1v0zEK7DCTFp/ejWuq/3FcHIViRoRJJvlbBjKb+zKfTlTN2jgL7Hqq6V/n0xPjAXBgkqhkiG9w0BCRQxCh4IAG4AbwBuAGUwIwYJKoZIhvcNAQkVMRYEFFwJgioig3q9dDV6xo6vEGdZryR5MDEwITAJBgUrDgMCGgUABBS5aqOqUR6kIld8peywddkZ7aqH2gQIzGwG2EFFsJ4CAggA Data stored in JENKINS_HOME/credentials.xml <com.cloudbees.plugins.credentials.impl.CertificateCredentialsImpl> <scope> GLOBAL </scope> <id> my-certificate </id> <description> my-certificate </description> <keyStoreSource class= "com.cloudbees.plugins.credentials.impl.CertificateCredentialsImpl$UploadedKeyStoreSource" > <uploadedKeystoreBytes> {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} </uploadedKeystoreBytes> </keyStoreSource> <password> graYYTrNmqQeM64cUEtPVBcT1BsfFEnFkod/yqir+Yw= </password> </com.cloudbees.plugins.credentials.impl.CertificateCredentialsImpl> Data displayed in the web form when clicking on the "update" button CertificateCredentialsImpl/UploadedKeyStoreSource/config.jelly for test.pfx {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} java.io.IOException: Illegal char in base64 code. at com.trilead.ssh2.crypto.Base64.decode(Base64.java:107) at hudson.util.Secret.decrypt(Secret.java:150) at hudson.util.Secret.fromString(Secret.java:200) at com.cloudbees.plugins.credentials.impl.CertificateCredentialsImpl$UploadedKeyStoreSource$DescriptorImpl.doCheckUploadedKeystore(CertificateCredentialsImpl.java:652) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:324) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:167) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:100) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:124) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) at org.kohsuke.stapler.MetaClass$5.doDispatch(MetaClass.java:233) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649) at org.kohsuke.stapler.Stapler.service(Stapler.java:238) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:126) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:80) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:553) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) at org.eclipse.jetty.server.Server.handle(Server.java:499) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) at java.lang.Thread.run(Thread.java:745) https://github.com/jenkinsci/credentials-plugin/blob/6750b736bfc32b193f02384702ace0154402ef01/src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/UploadedKeyStoreSource/config.jelly#L30-L30
          Show
          cleclerc Cyrille Le Clerc added a comment - Stephen Connolly see https://github.com/jenkinsci/credentials-plugin/pull/83
          Hide
          scm_issue_link SCM/JIRA link daemon added a comment -

          Code changed in jenkins
          User: Cyrille Le Clerc
          Path:
          src/main/java/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl.java
          http://jenkins-ci.org/commit/credentials-plugin/70d44d2624fecd27089cab3735365891f20f2a3b
          Log:
          JENKINS-41952 mismatch on the encoding of the keystore: sometimes as “Secret(base64(keystore))” and sometimes as “new SecretBytes(keystore).toString()”

          Show
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Cyrille Le Clerc Path: src/main/java/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl.java http://jenkins-ci.org/commit/credentials-plugin/70d44d2624fecd27089cab3735365891f20f2a3b Log: JENKINS-41952 mismatch on the encoding of the keystore: sometimes as “Secret(base64(keystore))” and sometimes as “new SecretBytes(keystore).toString()”
          Hide
          scm_issue_link SCM/JIRA link daemon added a comment -

          Code changed in jenkins
          User: Stephen Connolly
          Path:
          src/main/java/com/cloudbees/plugins/credentials/SecretBytes.java
          src/main/java/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl.java
          http://jenkins-ci.org/commit/credentials-plugin/cc0cd3a8474339963b6648b1ba8acb9308ba56d2
          Log:
          Merge pull request #83 from cyrille-leclerc/JENKINS-41952

          JENKINS-41952 mismatch on the encoding of the keystore: sometimes as `Secret(base64(keystore))` and sometimes as `new SecretBytes(keystore).toString()`

          Compare: https://github.com/jenkinsci/credentials-plugin/compare/72aef0dbf92e...cc0cd3a84743

          Show
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Stephen Connolly Path: src/main/java/com/cloudbees/plugins/credentials/SecretBytes.java src/main/java/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl.java http://jenkins-ci.org/commit/credentials-plugin/cc0cd3a8474339963b6648b1ba8acb9308ba56d2 Log: Merge pull request #83 from cyrille-leclerc/ JENKINS-41952 JENKINS-41952 mismatch on the encoding of the keystore: sometimes as `Secret(base64(keystore))` and sometimes as `new SecretBytes(keystore).toString()` Compare: https://github.com/jenkinsci/credentials-plugin/compare/72aef0dbf92e...cc0cd3a84743

            People

            Assignee:
            stephenconnolly Stephen Connolly
            Reporter:
            cleclerc Cyrille Le Clerc
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: