Szafir SDK Web Module¶
Szafir SDK Web Module to rozwiązanie dla integratorów, którzy chcą używać komponentów Szafir SDK na stronach www. Umożliwia ono za pomocą jednego zestawu komponentów użycie kryptografii KIR, zarówno w przeglądarkach obsługujących technologię Java Applets (Internet Explorer 11) oraz w postaci dedykowanego rozszerzenia dla przeglądarek Google Chrome, Edge (Chromium), Opera i Firefox >52, które już nie obsługują apletów javy.
SzafirHost¶
Struktura plików¶
SzafirHost - pliki
.
├── auto-install.xml
├── intel64
│ └── libpkcs11wrapper.jnilib
├── SzafirHost.jar
├── SzafirHost.sh
└── Uninstaller
└── uninstaller.jar
Wersja java¶
Java wersja
java -version
openjdk version "1.8.0_452"
OpenJDK Runtime Environment (build 1.8.0_452-8u452-ga~us1-0ubuntu1~24.10-b09)
OpenJDK 64-Bit Server VM (build 25.452-b09, mixed mode)
Uruchomienie¶
Różne paramtry uruchomienia
java -Dserver.port=9191 -Dserver.address=127.0.0.1 -Dlogging.level.root=DEBUG -jar SzafirHost.jar
:{"command":"open","status":"OK","result":"VERSION:1.0.15"}
Uruchomienie os Ubuntu¶
Kliknięcie w Load Szafir¶
webconsole.log
MOD.js : OK -> Chrome Extension Present szafirsdk-module.js:108:12
CNT.js : HWND_loadSzafir
```
### Powtórne kliknięcie w `Load Szafir`
```js title='webconsole.log'
MOD.js : busy...!!!
Uruchomienie os Windows 10¶
webconsole.log
Wersja Szafir Host: 1.0.15
SzafirSDK thread INIT
Java Version: 21.0.7
ENV[SZAFIR_HOST_OPTS]: <empty>
SchemaFactory: com.sun.org.apache.xerces.internal.jaxp.validation.XMLSchemaFactory
SzafirSDK thread RUN
Browser communication thread RUN [2025/06/05 09:59:32]EXT->HOST MESSAGE: load, REQ LEN = 332SzafirSDK.runCommand(command: load) -> BEGIN
Wersja bibliotek javascript: 2.0.10
Konfiguracja:
-> debug: true
-> document_base_url: https://szafir.dev.mescal.pl/webmodule/
-> sdk_location_url: https://szafir.dev.mescal.pl/webmodule/sdk_builds/build/
-> versions_file: versions.xml
-> versions_file_url: https://szafir.dev.mescal.pl/webmodule/sdk_builds/build/versions.xml
-> document_dependencies_folder: somewhere
-> series_authorization: true
SET PROXY by system detect using search type: DEFAULT
PROXY.PlatformUtil: Detecting platform. Name is: Windows 10
PROXY.PlatformUtil: Detected Windows platform: Windows 10
PROXY.PlatformUtil: Detected Browser is InternetExplorer
PROXY.ProxySearch: Using default search priority: Proxy search: com.github.markusbernhardt.proxy.search.java.JavaProxySearchStrategy@573e59b3 com.github.markusbernhardt.proxy.search.browser.ie.IEProxySearchStrategy@3d2b3372 com.github.markusbernhardt.proxy.search.desktop.DesktopProxySearchStrategy@3a1bcb18 com.github.markusbernhardt.proxy.search.env.EnvProxySearchStrategy@7a955378
PROXY.ProxySearch: Executing search strategies to find proxy selector
PROXY.JavaProxySearchStrategy: Using settings from Java System Properties
PROXY.ProxySearch: No proxy found for java. Trying next one.
PROXY.IEProxySearchStrategy: Detecting IE proxy settings
PROXY.IEProxySearchStrategy: Autodetecting script URL.
PROXY.WinHttpHelpers: Windows function WinHttpDetectAutoProxyConfigUrl returned error : 12180
PROXY.IEProxySearchStrategy: Autodetecting script URL did not return valid pacUrl. Use autoConfigUrl from IE proxy config: null
PROXY.IEProxySearchStrategy: The pacUrl for IE is not available: null
PROXY.ProxySearch: No proxy found for IE. Trying next one.
PROXY.PlatformUtil: Detecting platform. Name is: Windows 10
PROXY.PlatformUtil: Detected Windows platform: Windows 10
PROXY.PlatformUtil: Detecting platform. Name is: Windows 10
PROXY.PlatformUtil: Detected Windows platform: Windows 10
PROXY.PlatformUtil: Detected Windows desktop
PROXY.DesktopProxySearchStrategy: Detecting system settings.
PROXY.DesktopProxySearchStrategy: We are running on Windows.
PROXY.WinProxySearchStrategy: Detecting Windows proxy settings
PROXY.ProxySearch: No proxy found for desktop. Trying next one.
PROXY.EnvProxySearchStrategy: Inspecting environment variables.
PROXY.ProxySearch: No proxy found for env. Trying next one.
Architektura maszyny wirtualnej JAVY: x64 (64 bit)
Odczytuję plik z wersjami: https://szafir.dev.mescal.pl/webmodule/sdk_builds/build/versions.xml
java.io.FileNotFoundException: https://szafir.dev.mescal.pl/webmodule/sdk_builds/build/versions.xml
at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:486)
at java.base/sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:2070)
at java.base/sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:2065)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:571)
at java.base/sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:2064)
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1634)
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1614)
at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:223)
at pl.kir.sdkloader.SdkLoader.downloadFile(SdkLoader.java:117)
at pl.kir.sdkloader.SdkLoader.readVersionsXml(SdkLoader.java:138)
at pl.kir.sdkloader.SdkLoader.installComponents(SdkLoader.java:175)
at pl.kir.szafirhost.SzafirSDKThread.loadSzafir(SzafirSDKThread.java:285)
at pl.kir.szafirhost.SzafirSDKThread.runCommand(SzafirSDKThread.java:144)
at pl.kir.szafirhost.SzafirSDKThread.run(SzafirSDKThread.java:102)
Caused by: java.io.FileNotFoundException: https://szafir.dev.mescal.pl/webmodule/sdk_builds/build/versions.xml
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:2009)
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1614)
at java.base/sun.net.www.protocol.http.HttpURLConnection.getHeaderField(HttpURLConnection.java:3250)
at java.base/java.net.URLConnection.getHeaderFieldLong(URLConnection.java:649)
at java.base/java.net.URLConnection.getContentLengthLong(URLConnection.java:511)
at java.base/java.net.URLConnection.getContentLength(URLConnection.java:495)
at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getContentLength(HttpsURLConnectionImpl.java:367)
at pl.kir.sdkloader.SdkLoader.downloadFile(SdkLoader.java:106)
... 5 more
SzafirSDK.runCommand(command: load) -> ENDHOST->EXT MESSAGE: load[ ERROR ]
Struktura plików projektu¶
.
├── changelog.txt
├── example-index.html
├── example-styles.css
├── favicon.ico
├── index.html
├── Instrukcja_Szafir_SDK_Web_Module.pdf
├── jquery-2.2.4.min.js
├── jquery-3.6.0.min.js
├── maketasklist_files
│ ├── MakeTaskList_eDeklaracja_sign.xml
│ ├── MakeTaskList_PKCS7_verify.xml
│ ├── MakeTaskList_XAdES-BES_verify.xml
│ ├── MakeTastList_Base64_PKCS7_sign.xml
│ ├── MakeTastList_Base64_XAdES-BES_sign.xml
│ ├── MakeTastList_Base64_XAdES-T_sign.xml
│ └── __options_list.json
├── require.js
├── sdk_builds
│ └── build
├── settings_files
│ ├── __options_list.json
│ ├── settings_cryptoproviders_AnyCertificate.xml
│ ├── settings_cryptoproviders_AnyNonQCertificate.xml
│ ├── settings_cryptoproviders_AnyQCertificate.xml
│ ├── settings_cryptoproviders_p12.xml
│ ├── settings_cryptoproviders_SHA256.xml
│ ├── settings_cryptoproviders_SHA384.xml
│ ├── settings_cryptoproviders_SHA512.xml
│ ├── settings_cryptoproviders_unizeto.xml
│ ├── settings_cryptoproviders_wszystkie_centra.xml
│ └── settings_cryptoproviders.xml
├── signed_files
│ ├── data.xml.XAdES
│ ├── eDEKLARACJA_sign_1.xml.XAdES
│ ├── __options_list.json
│ ├── XAdES-BES_sign_1.png.XAdES
│ └── XAdES-T_sign_1.png.XAdES
├── szafirsdk_web
│ ├── szafirsdk-error-noextension.html
│ ├── szafirsdk-error-nohostapp.html
│ ├── szafirsdk-module.js
│ └── szafirsdk-styles.css
└── tasklist_files
├── __options_list.json
├── TaskList_eDeklaracja_EncodeToBase64_sign.xml
├── TaskList_eDeklaracja_sign.xml
├── TaskList_eDeklaracja_XAdES-T_sign.xml
├── TaskList_PAdES_sign.xml
└── TaskList_XAdES-BES_verify.xml

