Asiakirjojen ilmainen digitaalinen allekirjoittaminen Linuxissa – mahdotonta?

Last modified on 24. heinäkuuta 2026 • 4 min read • 742 words
Koko juttu alkoi siitä, kun yritin allekirjoittaa LibreOffice-asiakirjan.
Asiakirjojen ilmainen digitaalinen allekirjoittaminen Linuxissa – mahdotonta?
Kuva Michael Jeltsch
Koko juttu alkoi, kun yritin allekirjoittaa LibreOffice-asiakirjan. Jos internetin tietoja on uskominen, asiakirjojen allekirjoittaminen on sisäänrakennettu LibreOfficeen. En ole vieläkään löytänyt ketään, joka olisi onnistunut allekirjoittamaan LibreOffice-asiakirjan digitaalisesti. Tämä kokemus osoittaa, että Edward Snowdenista  huolimatta useimmat ihmiset eivät välitä aktiivisesti turvallisuudesta ja yksityisyydestä. Debian poisti scdaemonin gnupg2-paketista, ja kuten tavallista, tämän korjaaminen vaatii komentorivin ninjan taitoja. Scdaemon tarjoaa älykorttituen (jota minulla ei ole, mutta ilman scdaemonia Kleopatra-avainhallinta kieltäytyy toimimasta). Käytän Ubuntu 18.04:n oletusasennusta, ja asiakirjan allekirjoittaminen oli melkoinen seikkailu. Itse asiassa minulla ei vieläkään ole tyydyttävää tapaa tehdä tätä. Miten sen sitten tekeekin, jokin ei ole kohdallaan. Ubuntu 19.10 on korjannut ainakin avainhallinnan käynnistämisen LibreOfficesta, ja voin käynnistää SeaHorsen asiakirjan allekirjoitusvalintaikkunasta, mutta minulla ei vieläkään ole aavistustakaan, miten saisin GPG-avaimeni näkyviin LibreOfficessa. Onko kukaan selvittänyt tätä? Kunnes joku näyttää minulle, miten allekirjoitetaan LibreOfficella, käytän erittäin hyvää, mutta omaa ohjelmistoa PDFStudio  GPG-avainten tuomiseen ja PDF-tiedostojen allekirjoittamiseen.Allekirjoituspalvelut (DocuSign, HelloSign) Mitä siis teet, jos sinun täytyy allekirjoittaa esimerkiksi PDF-tiedosto, mutta sinulla ei ole keinoja tai et halua tilata jotakin asiakirjojen allekirjoitukseen tarkoitettua varmennepalvelua, kuten DocuSign  ? Jopa DocuSignin edullisimmalla paketilla yksi digitaalinen allekirjoitus maksaa 2 dollaria. DocuSign tarjoaa 30 päivän ilmaisen kokeilujakson, mutta en tiedä, pysyvätkö kokeilujakson aikana luomasi varmenteet voimassa kokeilujakson päättymisen jälkeen. HelloSignilla ( https://www.hellosign.com  , nykyisin DropBoxin omistama ) on myös ilmainen taso (jolla voi allekirjoittaa 3 asiakirjaa kuukaudessa), ja allekirjoituksen yhteydessä se upottaa näkymättömän allekirjoituksen (joka oli jostain oudosta syystä pätemätön, kun testasin sitä, vaikka HelloSign onkin Adoben hyväksyttyjen luotettavien palveluntarjoajien listalla).Itse allekirjoitetut, CAcert ja StartSSL Teknisesti voit luoda omia allekirjoituksia (itse allekirjoitettuja varmenteita), mutta jos tällaisia PDF-tiedostoja katsellaan Acrobat Readerilla, allekirjoitus merkitään virheelliseksi ja itse allekirjoittaminen ilmoitetaan. Aikaisemmin oli olemasshttp://www.cacert.org/ -sertifikaatteja, mutta tietääkseni kaikki selaimet ovat poistaneet CAcert-sertifikaatit, ja sama pätee todennäköisesti myös Acrobatiin. StartSSL jakoi aiemmin ilmaisia sertifikaatteja, mutta niitä ei enää ole (niiden oma turvallisuus oli vakavasti kyseenalainen).PDF-katseluohjelmien tukiMielenkiintoista on, että monet PDF-katseluohjelmat jättävät allekirjoituksen joka tapauksessa huomiotta (esim. Firefoxin sisäänrakennettu PDF-katseluohjelma ei näytä mitään). Toiset PDF-katseluohjelmat näyttävät allekirjoituksen, mutta EIVÄT ilmoita, että sitä ei pidetä luotettavana (esim. Chrome-selaimen PDF-katseluohjelma ja Ubuntun oletuskatseluohjelma Evince). Koska et voi tietää, mitä katseluohjelmaa vastaanottaja käyttää allekirjoitetun PDF-tiedostosi näyttämiseen, olet joka tapauksessa hankalassa tilanteessa (vaikka tilaisitkin asiakirjojen allekirjoituspalvelun). Letsencrypt Allekirjoituksen luotettavuuden lisäämiseksi voi käyttää Letsencrypt  -varmennetta allekirjoittamiseen. Tämä allekirjoitus todistaa, että asiakirjan laatija hallinnoi tiettyä verkkosivustoa (minun tapauksessani jeltsch.org). Se on enemmän kuin itse allekirjoitettu varmenne (ja jos verkkosivusto on luotettava, tämä on kiistatta myös enemmän kuin DocuSign-tilauksen ostaminen), mutta Adobe ei luota uudelleen käytettyyn Letsencrypt-varmenteeseen, koska Letsencrypt-hanke ei tietenkään ole koskaan ollut tarkoitettu asiakirjojen allekirjoittamiseen (“Allekirjoittajan identiteettiä ei tunneta, koska sitä ei ole lisätty luotettujen varmenteiden luetteloon eikä mikään sen vanhemmista varmenteista ole luotettu varmenne”). Tällaisen varmenteen enimmäisvoimassaoloaika on kuitenkin 3 kuukautta, minkä jälkeen se menettää voimassaolonsa. Sitä voidaan edelleen käyttää, mutta se näkyy voimattomana, koska se on vanhentunut (tai ei ole vielä voimassa).Kuinka käyttää Let’s Encrypt -varmennetta väärinEnsinnäkin tarvitset verkkopalvelimen, joka käyttää Let’s Encrypt -varmenteita verkkosivuston identiteetin todentamiseen. Tämä ei kuulu tämän blogikirjoituksen aihepiiriin, mutta aiheesta löytyy useita hyviä oppaita (esim. Let’s Encryptin omilta sivuilta  tai Digital Oceanilta  ). Kun olet hankkinut Let’s Encrypt -varmenteesi, voit ”käyttää niitä väärin” asiakirjojen allekirjoittamiseen seuraavasti: Koska Let’s Encrypt vaatii varmenteen uusimista kolmen kuukauden välein, samaan hakemistoon kertyy paljon fullchain.pem- ja privkey.pem-tiedostoja, jotka on numeroitu. Haluat tietysti käyttää uusinta (ainoa voimassa oleva) varmennetta ja ehkä haluat uusia Let’s Encrypt -varmenteen välittömästi ennen sen viemistä asiakirjojen allekirjoittamista varten: certbot --apache --force-renewal -n -d jeltsch.org tai jos haluat uusia kaikki varmenteet: certbot --apache --force-renewal Jos päätät uusia kaikki varmenteet, certbot yrittää myöntää yhden varmenteen kaikille palvelimellasi oleville verkkotunnuksille (tätä mahdollisuutta ei ollut Let’s Encrypt -ekosysteemin alkuvaiheessa, mutta se otettiin käyttöön myöhemmin). Jos palvelimesi palvelee useampaa kuin yhtä verkkotunnusta, sinun on määritettävä manuaalisesti se verkkotunnus, jolle haluat varmenteen. Lisätietoja certbot-skriptin käytöstä löytyy osoitteesta https://certbot.eff.org/docs/using.html#certbot-komennotT  ämä komento muuntaa varmenteet PKCS#12-tiedostoksi:openssl pkcs12 -export -out signing_certificat.p12 -in /etc/letsencrypt/archive/website-name/fullchain1.pem -inkey /etc/letsencrypt/archive/website-name/privkey1.pemPKCS#12-tiedosto tallentaa varmenteen ja yksityisen avaimen yhteen salattuun tiedostoon (tiedostotunniste .p12). Siksi komento pyytää sinulta salasanalauseen, joka sinun on ehdottomasti muistettava, jotta voit käyttää varmennetta. Sen jälkeen voit siirtää p12-tiedoston pöytätietokoneellesi ja käyttää sitä PDF-tiedostojen allekirjoittamiseen.AikaleimauspalvelimetJos PDF-sovelluksesi pyytää aikaleimauspalvelinta, voit käyttää jotakin ilmaispalveluista, kuten ca.signFiles.com/TSAServer.aspx tai http://zeitstempel.dfn.de  . Adobe Acrobat ei kuitenkaan luota myöskään näihin aikaleimauspalveluihin.Tässä ovat komennot itseallekirjoitetun varmenteen luomiseen (ohjelma pyytää (väliaikaista) salasanaa; keksi vain jotain ja muista se, tarvitset sitä toisessa vaiheessa):openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 3650Muuntaminen allekirjoitussertifikaatiksi (ohjelma pyytää ensin edellä mainittua väliaikaista salasanaa ja sitten lopullista salasanaa, jonka sinun on muistettava sertifikaatin käyttämiseksi:openssl pkcs12 -export -out signing_certificat.p12 -in cert.pem -inkey key.pem