Oprogramowanie do szyfrowania plików

Udostępniliśmy do pobrania program do podpisywania i szyfrowania plików.

Jest to aplikacja GUI, z komponentem uruchamianym z linii poleceń. Do jej uruchomienia wymagana jest Java w wersji 1.8 lub wyższej.

Wykorzystanie w systemie testowym

Aplikacja ma zaszyty w binarce certyfikat do szyfrowania dla systemu produkcyjnego.

Aby aplikacja szyfrowała z wykorzystaniem certyfikatu z systemu testowego należy:

  1. Pobrać certyfikat do szyfrowania dla systemu testowego.
  2. Skopiować ten certyfikat do katalogu w którym znajduje się binarka aplikacji.
  3. Zmienić nazwę certyfikat z GIIF-TEST-2019.crt na GIIF.crt.

Korzystanie z linii poleceń

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
ksm@ksm-7530:~/tmp/SecureFile2$ java -jar SecureFile2.exe --help
Usage: <main class> [options] [command] [command options]
Options:
--help
Show usage.
Default: false
Commands:
signEncrypt Sign and encrypt files.
Usage: signEncrypt [options] Files to sign and encrypt.
Options:
--force, -f
Overwrite encrypted file.
Default: false
--outputFolder, -o
Folder to move encrypted file to.
--recipient, -c
Encryption certificate in PEM or DER format.
--suffix
Suffix to add to encrypted file.
Default: .enc

Przykład użycia

Zaszyfruj plik i zapisz do (wcześniej utworzonego) katalogu encrypted.

1
2
3
4
java -jar SecureFile2.exe signEncrypt \
--outputFolder encrypted/ \
--recipient GIIF.crt \
~/Downloads/wymiana_export_0000000000_Transakcja_testowa.xml

Wykonanie tego polecenia otworzy graficzne okno do podpisu. Po zakończeniu podpisywania zaszyfrowany plik zostanie umieszczony w katalogu encrypted.

Użycie programu w systemie Linux

1
2
3
4
5
6
7
8
9
10
mkdir -p ~/tmp/SecureFile2/encrypted
cd ~/tmp/SecureFile2
curl -o SecureFile2.exe https://test.giif.mofnet.gov.pl/oprogramowanie/SecureFile2.exe
curl -o GIIF.crt https://test.giif.mofnet.gov.pl/pki/GIIF-TEST-2019.crt
curl -o szafir-sdk-settings.xml https://test.giif.mofnet.gov.pl/szafir/settings/settings-linux.xml
java -jar SecureFile.exe
java -jar SecureFile2.exe signEncrypt \
--outputFolder encrypted/ \
--recipient GIIF.crt \
_nazwa_pliku_do_zaszyfrowania_

Linie 3-5 pobierają program i certyfikat do systemu testowego.

Kluczowa jest linia 5, która pobiera plik ustawień biblioteki Szafir SDK w wersji dla systemu Linux. W końcowej części pliku szafir-sdk-settings.xml znajduje się sekcja CryptoProviders, a w niej wskazane są położenia bibliotek PKCS#11 do obsługi kart kryptograficznych. Domyślnie skonfigurowana jest obsługa kart wystawianych przez Certum, których używają programiści z MF. W tej sekcji można dodać kolejne tagi HardwareProvider a w nich w tagu URI wskazać bibliotekę PKCS#11. Jeżeli biblioteka nie leży w ścieżce przeszukiwania bibliotek (ldconfig -v 2>/dev/null | grep -v ^$'\t'), to należy podać pełną scieżkę do niej jako URI, np: file:///opt/proCertumSmartSign/libSimplySignPKCS11.so.

Linia 6 pokazuje jak wywołać GUI. Linia 7-10 jak użyć trybu linii poleceń.