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

keytool does not export sun.security.mscapi

XMLWordPrintable

    • b21
    • x86_64
    • windows_10

      ADDITIONAL SYSTEM INFORMATION :
      openjdk-13_windows-x64_bin on Win 10

      A DESCRIPTION OF THE PROBLEM :
      Using openjdk-13_windows-x64_bin on Win 10
      When running keytool and SunMSCAPI their is a module bug.

      >keytool -list -keystore NONE -storetype Windows-MY -providerClass sun.security.mscapi.SunMSCAPI -v
      keytool error: java.lang.Exception: Provider "sun.security.mscapi.SunMSCAPI" not found
      java.lang.Exception: Provider "sun.security.mscapi.SunMSCAPI" not found
              at java.base/sun.security.tools.keytool.Main.doCommands(Main.java:815)
              at java.base/sun.security.tools.keytool.Main.run(Main.java:397)
              at java.base/sun.security.tools.keytool.Main.main(Main.java:390)
      Caused by: java.lang.IllegalAccessException: class sun.security.tools.KeyStoreUtil (in module java.base) cannot access class sun.security.mscapi.SunMSCAPI (in module jdk.crypto.mscapi) because module jdk.crypto.mscapi does not export sun.security.mscapi to module java.base
              at java.base/jdk.internal.reflect.Reflection.newIllegalAccessException(Reflection.java:361)
              at java.base/java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:591)
              at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
              at java.base/sun.security.tools.KeyStoreUtil.loadProviderByClass(KeyStoreUtil.java:320)
              at java.base/sun.security.tools.keytool.Main.doCommands(Main.java:805)
              ... 2 more

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      >keytool -list -keystore NONE -storetype Windows-MY -providerClass sun.security.mscapi.SunMSCAPI -v

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      List all certificates in windows cert store
      ACTUAL -
      keytool error: java.lang.Exception: Provider "sun.security.mscapi.SunMSCAPI" not found
      java.lang.Exception: Provider "sun.security.mscapi.SunMSCAPI" not found
              at java.base/sun.security.tools.keytool.Main.doCommands(Main.java:815)
              at java.base/sun.security.tools.keytool.Main.run(Main.java:397)
              at java.base/sun.security.tools.keytool.Main.main(Main.java:390)
      Caused by: java.lang.IllegalAccessException: class sun.security.tools.KeyStoreUtil (in module java.base) cannot access class sun.security.mscapi.SunMSCAPI (in module jdk.crypto.mscapi) because module jdk.crypto.mscapi does not export sun.security.mscapi to module java.base
              at java.base/jdk.internal.reflect.Reflection.newIllegalAccessException(Reflection.java:361)
              at java.base/java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:591)
              at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
              at java.base/sun.security.tools.KeyStoreUtil.loadProviderByClass(KeyStoreUtil.java:320)
              at java.base/sun.security.tools.keytool.Main.doCommands(Main.java:805)
              ... 2 more

      FREQUENCY : always


            weijun Weijun Wang
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: