OpenSerbianEID / ePorezi

ePorezi application mod to run on MacOS/Linux
30 stars 6 forks source link

PKCS11 module #5

Open nikola-jasek opened 2 years ago

nikola-jasek commented 2 years ago
postal@postal:~/Downloads/ePorezi.app/Contents/Resources/Java
 > java -jar ePorezi.jar
OS info: linux
Gtk-Message: 04:24:35.544: Failed to load module "canberra-gtk-module"
java.lang.ClassNotFoundException: com.apple.eawt.Application
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
    at java.base/java.lang.Class.forName0(Native Method)
    at java.base/java.lang.Class.forName(Class.java:315)
    at com.itsinbox.smartbox.OSXAppleEventHelper.setOpenURIAppleEventHandler(SmartBox.java:61)
    at com.itsinbox.smartbox.SmartBox.main(SmartBox.java:112)
CertBody: MUP/PKS (CardEdge PKCS11)
Trying PKCS11 module path /usr/lib/libnstpkcs11.so
Loading PKCS11 module: name=CardEdge
library=/usr/lib/libnstpkcs11.so
Exception in thread "Thread-2" java.lang.NoSuchMethodError: 'void sun.security.pkcs11.SunPKCS11.<init>(java.io.InputStream)'
    at com.itsinbox.smartbox.model.PKCS11Card.loadKeyStore(PKCS11Card.java:71)
    at com.itsinbox.smartbox.gui.LoginFrame.loadKeyStore(LoginFrame.java:540)
    at com.itsinbox.smartbox.gui.LoginFrame.access$900(LoginFrame.java:60)
    at com.itsinbox.smartbox.gui.LoginFrame$9.run(LoginFrame.java:356)
Server version: 1.2.2
Application version: 1.2.2

Pozdrav, problem je uglavnom u PKCS11 modulu ... probao sam da uradim symlink ka ln -s /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so /usr/lib/libnstpkcs11.so nadajuci se da ce to biti dovoljno... nije xD.

Bez symlinka:

postal@postal:~/Downloads/ePorezi.app/Contents/Resources/Java
 > java -jar ePorezi.jar
OS info: linux
Gtk-Message: 04:31:41.643: Failed to load module "canberra-gtk-module"
java.lang.ClassNotFoundException: com.apple.eawt.Application
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
    at java.base/java.lang.Class.forName0(Native Method)
    at java.base/java.lang.Class.forName(Class.java:315)
    at com.itsinbox.smartbox.OSXAppleEventHelper.setOpenURIAppleEventHandler(SmartBox.java:61)
    at com.itsinbox.smartbox.SmartBox.main(SmartBox.java:112)
CertBody: MUP/PKS (CardEdge PKCS11)
Server version: 1.2.2
Application version: 1.2.2
Trying PKCS11 module path /usr/lib/libnstpkcs11.so
PKCS11 module not found!
Error java.security.KeyStoreException: PKCS11 module not found!

Takodje sam probao sa openjdk-11/17. Inace pokrece se super.

nikola-jasek commented 2 years ago

Update: libnstpkcs11.so je u samom repo-u ovde tako da to nije problem ... ostaje exception samo java.lang.NoSuchMethodError: 'void sun.security.pkcs11.SunPKCS11

najdanovicivan commented 2 years ago

Koju verziju jave koristite

Mora se koristiti Java 8 jer ih sun.security biblioteke nema u novijim verzijama Jave

najdanovicivan commented 1 year ago

Problem je sa linuxom - libnstpkcs11.so je x86 32 bitni library tako da na 64bit linuxu nece raditi. Morala bi da se koristi 32bit Java ali to nikad nisam probao da uradim u praksi. Trebalo bi prvo da se baci pogled na https://wiki.debian.org/Multiarch/HOWTO