windows - java klager over at indlæse pkcs dll fra softhsm

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg forsøger at bruge softhsm til mit projekt ved hjælp af java 1,8-64bit.


Jeg prøver med m første prøve java klasse givet her Tilslutning til SoftHSM java kode


Jeg kunne installere softhsm softhsm2-windows installer. [8]


Og også i stand til at skabe token usng softhsm-util.exe værktøj.


men når jeg forsøger at køre java-koden, får jeg det


            Exception in thread "main" java.security.ProviderException: Initialization failed
                at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:376)
                at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:103)
                at SoftHSM.main(SoftHSM.java:44)
            Caused by: java.io.IOException: The specified module could not be found.
            Z:/SOFTHSM\_INSTALL/lib/softhsm2-x64.dll
                at sun.security.pkcs11.wrapper.PKCS11.connect(Native Method)
                at sun.security.pkcs11.wrapper.PKCS11.<init>(PKCS11.java:138)
                at sun.security.pkcs11.wrapper.PKCS11.getInstance(PKCS11.java:151)
                at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:313)
                ... 2 more


Selv om filen er tilgængelig på rette sted som nævnt i undtagelse.


Hjælp venligst med at løse dette problem.


Opdateret System Visual C ++ installeret:


Visual C ++ i min pc Vind 10 [9]

Bedste reference


TLDR : Hvis du vil bruge softhsm2-x64.dll fra din JAVA-applikation, skal du installere 64-bit version af Visual C ++ Redistributable til Visual Studio 2015. [10]





Detaljeret svar : Du installerede SoftHSM ved hjælp af SoftHSM2 installer til MS Windows. [11]


Alle eksekverbare filer og biblioteker, der er til stede i denne pakke (inklusive softhsm2-util.exe) er 32-biters forventning til softhsm2-x64.dll, hvilket er 64-bit.


Alle eksekverbare filer og biblioteker, der er til stede i denne pakke (inklusive softhsm2-util.exe) afhænger af 32-bit version af Visual C ++, der kan distribueres til Visual Studio 2015, forventer softhsm2-x64.dll, hvilket afhænger af 64-bit version af Visual C ++, der kan omfordeles til visuel Studio 2015.


README.md på projektwebstedet siger: [12]



  Disse pakker indeholder både 32-bit og 64-bit versioner af PKCS # 11
  bibliotek og kræver både 32-bit og 64-bit version af Visual C ++
  Kan omfordeles til Visual Studio 2015 at blive installeret på målet
  system. [13]



README.txt vises efter installationen siger: [14]



  Denne pakke indeholder både 32-bit og 64-bit build af SoftHSM 2.2.0
  statisk forbundet med OpenSSL 1.1.0d. Det kræver både 32-bit og
  64-bit version af Visual C ++ Redistributable til Visual Studio 2015
  at blive installeret på målsystemet. Disse kan downloades fra:

  
  http://www.microsoft.com/en-us/download/details.aspx?id=48145[15]



Mit råd: installer både 32-bit og 64-bit version af Visual C ++ Redistributable til Visual Studio 2015.