Tak ako Firefox či Thunderbird, aj LibreOffice používa knižnicu NSS a jej (formát pre) databázu certifikátov. Musí to byť databáza rovnaká, no nie nevyhnutne tá istá, ktorú používa Firefox.
Ak ale Firefox tak či tak máš, nastavuje sa to možno jednoduchšie.
1 Podpisovanie
V nastaveniach prehliadača vyber Súkromie a bezpečnosť → Bezpečnostné zariadenia. V okne sa objaví Správca bezpečnostných zariadení. Klikni na Načítať, vyplň ľubovoľný názov modulu (napr. eid) a cestu k PKCS#11 knižnici (pri použití eID klienta obvykle /usr/lib/eID_klient/libpkcs11_x64.so
)
V LibreOffice skontroluj, či Nástroje → Možnosti → Security → Certificate Path ukazuje na profil Firefoxu.
Podpisovanie by malo fungovať. Pri použití eID klienta na kódoch zadávaných v UI LibreOffice nezáleží, tie správne stačí zadať v UI eID klienta.
2 Overovanie
LibreOffice zatiaľ každý čerstvý bezchybný podpis (správne) vyhodnotí ako neplatný, pretože príslušný certifikát nevie overiť.
Koreňový certifikát pre kvalifikované podpisové certifikáty je tu:
https://eidrep1.disig.sk/svkeidaca2/cert/svkeidaca2.pem
Koreňový certifikát k certifikátom pre zdokonalený elektronický podpis je tu:
https://eidrep1.disig.sk/svkeidroot/cert/svkeidroot.pem
Aby LibreOffice podpisy občianskym preukazom považoval za platné, treba príslušné koreňové certifikáty pridať do databázy. Súbory stiahnuť a v nastaveniach Firefox zvoliť Súkromie a bezpečnosť → Zobraziť certifikáty…. V okne Správca certifikátov vybrať Autority → Importovať… oba certifikáty pridať. V zobrazenom okne pokojne označiť oba checkboxy (pre prvý certifikát by možno stačila druhá možnosť, pre druhý prvá)
Teraz už LibreOffice (nielen) čerstvé podpisy považuje za platné.
3 Vodu káže, víno pije
Mne sa zdieľanie databázy medzi Firefox a LibreOffice vôbec neosvedčilo. Okrem iného som mohol podpisovať, len ak Firefox vôbec nebežal. Preto som si vytvoril novú databázu certifikátov, ktorá slúži len LibreOffice.
Skontroluj, či máš balík libnss3-tools
a v novom prázdnom adresári spusti:
modutil -dbdir . -add eid -libfile /usr/lib/eID_klient/libpkcs11_x64.so
certutil -d . -A -i /path/to/svkeidroot.pem -t CT,c, -n "SVK eID Root CA"
certutil -d . -A -i /path/to/svkeidaca2.pem -t C,C, -n "SVK eID ACA2"
Potom na ten adresár nasmeruj Certificate Path v LibreOffice.
Deaktivácia zbytočného
Pretože používam len kvalifikovaný certifikát, slot s tým zdokonaleným rovno vypnem:
modutil -dbdir . -disable eid -slot "…; Sig_EP"
Posledný parameter (závisiaci od modelu čítačky) získam pomocou
modutil -dbdir . -list
4 Ani to víno nepije…
V skutočnosti na podpisovanie vôbec nepoužívam eID klienta, ale OpenSC. Ale to už je iný príbeh.