Muutokset

Siirry navigaatioon Siirry hakuun

Tekniikka/Allekirjoitus

1 314 merkkiä lisätty, 12. helmikuuta 2022 kello 15.40
ei muokkausyhteenvetoa
'''Allekirjoitettaessa digitaalisesti''' tulee käsitellä kaksi asiaa:* missä allekirjoitus tapahtuu vaihtoehtoisesti:
** '''laitteessa''' joka on täysin käyttäjän hallussa (tietokone, tablet)
** '''palvelussa''' (web-palvelu, palveluväylä)
* allekirjoituksen muoto
* mihin allekirjoitus tallentuu
Koska palvelu lähettää allekirjoituspyynnön käyttäjälle, ei ole takeita siitä, että kyseinen palvelu olisi rakennettu vastaanottamaan käyttäjän haluamaa allekirjoitettavaa sisältöä - koska tyypilllisesti web-palvelut ovat räätälöityjä. Voisi siis hyvin olla, että yksittäisen palvelun allekirjoitukset liittyäisivät vain palvelun omaan sisältöön.
'''Käyttäjällä tulee olla luottamus kolmatta osapuolta kohtaan''', koska allekirjoitus tapahtuu aina palvelussa. Allekirjoitettava sisältö paljastuu palvelun omistajalle ja ylläpidolle. Tämä saattaa vähentää mielenkiintoa allekirjoittaa digitaalisesti jos sisältö on luottamuksellista tai arkaluontoista.
Edelläolevista ongelmista johtuen ei ole ihme, että suomalaisella henkilökortilla ei ole sen olemassaolon aikana vuodesta 1999 lähtien tehty digitaalisia allekirjoituksia mPollux ''DigiSign''-ohjelmistolla sen nimestä huolimatta. Tähän saattaa tulla muutos Suomen ja Viron aloittaessa yhteistyön digitalisaatiossa, jonka yhteydessä virolaiseen [[qDigiDoc]]-ohjelmaan (versio 3.10 ja uudemmat) lisättiin tuki Suomen henkilökortille.
Digitaalinen allekirjoittaminen ei käytännön syistä vastaa teknisesti täysin perinteistä käsin tehtyä allekirjoitusta jossa allekirjoitus tehdään itse paperiin jossa asiakirja on, vaan allekirjoitus tehdään sisällön yksilöllisestä ''[[tiiviste|tiivisteestä]]'' (''eng hash'') joka edustaa sisältöä. Lakiteknisesti on sama, allekirjoitetaanko koko asiakirjan sisältö vai sitä edustava yksilöllinen tiiviste.
Vuodesta 2002 lähtien Digitaalisessa allekirjoituksessa on oleellista:* miten allekirjoitus tehdään* missä muodossa se on ollut käytössä eri teknisiä toteutuksia ja niitä on korvattu uudemmilla esimerkiksi ympäröivien ohjelmointirajapintojen ([[Middleware|middleware]], sovellukset) muuttuessa. Pluginit jotka aiemmin käyttivät Netscape rajapinta ([[NPAPI]], ''Netscape Plugin Application Programming Interface'') rajapintaa, on vaihdettu uudempiin jotka käyttävät Googlen kehittämää Chrome selain-API/rajapintaa.miten se tallennetaan
Eri WWW== Web-selaimien selaimen allekirjoitusratkaisuja:==
'''MPollux DigiSign Client''' Vuodesta 2002 lähtien on ollut käytössä eri teknisiä toteutuksia ja niitä on korvattu uudemmilla esimerkiksi ympäröivien ohjelmointirajapintojen ([[VäestörekisterikeskusMiddleware|Väestörekisterikeskuksen]] tarjoama C-kirjasto joka tukee Microsoftin [[Minidriver]] ja [[CNGmiddleware]] rajapintoja eikä toimi Applen Mac OSX, iOS tai Linux -käyttöjärjestelmissäsovellukset) muuttuessa. Microsoftin käyttöjärjestelmissä itse allekirjoitusta ei tehdä erillisellä käyttöliittymällä vaan ratkaisu toteuttaa WWWWeb-palvelimen työasemaan ja kyseistä allekirjoitustapaa toteuttava Webselaimen yhteydessä allekirjoitustapahtuma jakautuu kahteen osa-palvelu lähettää allekirjoituspyynnön httpalueeseen://localhost:xxx URL:lla paikalliseen työasemaan josta tulee HTTP-protokollalla allekirjoitus-hash vastauksena. Mitä allekirjoituksella tehdään, olisi Web-palvelun tarjoajan asia. Toteutustapa on vähintäänkin erikoinen eikä se ole ilmeisesti missään tuotantokäytössä.*[[Tekniikka/MPollux DigiSign Client]] palvelimen pyyntöön allekirjoittaa sisällön tiiviste * päätelaitteen tapaan käsitellä varmenteita ja tehdä allekirjoitus
Pluginit jotka aiemmin käyttivät Netscape rajapinta ([[NPAPI]], ''Netscape Plugin Application Programming Interface'') rajapintaa, on vaihdettu uudempiin jotka käyttävät Googlen kehittämää Chrome selain-API/rajapintaa.
 '''SCS''' (''Signature Creation Service'', [[SCS]]) on [[Väestörekisterikeskus|VästörekisterikeskuksenDigivirasto]] n kehittämä, [[eIDAS]] luottopalveluiden mukainen HTML5-sivuihin tarkoitettu allekirjoituspalvelu allekirjoitustoteutus joka on toteutettu javascriptilläkäyttää henkilökortin tukiohjelmistoa. Tuki SCS-tyyppiselle allekirjoittamiselle löytyy [[mPollux DigiSign Client]] , [[Google/Android|Android]]-mobiililaitteista ja [[SecMaker]] Net iD ohjelmistosta.(käyttää Microsoftin [[Minidriver]] ja [[CNG]] ?)
* [[SCS]]
'''npesteid''' on RIA:n kehittämä, alkuperäistä Netscape-ohjelmointirajapintaa (NPAPI) käyttävä ja Javascript-rajapinnan tarjoava plugin Firefox ja Internet Explorer selaimille. Plugin näkyy selaimessa ''Firefox Token Signing'' nimellä ja sen tiedostonimi on ''npesteid-firefox-plugin.so''. Plugin on korvattu Googlen Chrome-selaimen rajapintaa käyttävällä versiolla 2016-2017 vuosina.  '''chrome-token-signing''', [[Riigi Infosüsteemi Amet|RIA]]:n kehittämä ja ylläpitämäChromen [[WebExtensionsAPI]] -Javascript-rajapintaa (tuettu useissa selaimissa) käyttävä Chrome, Firefox ja Internet Explorer selaimille. Plugin on nykyään laajassa käytössäVirossa.*https://github.com/open-eid/chrome-token-signing/wiki
'''Web-eID''' kehitteillä oleva, hwcrypton syrjäyttävä javascript-ohjelmointirajapinta ohjelmointirajapinnan tarjoava plugin joka toteuttaa W3C:n [[WebCryptoAPI]]-määritykset.
* [[Web-eID]]
== Tiedostomuodot Muodot ==
Osa allekirjoitusmäärityksistä on pelkkää tekstiä joka tulee tallentaa johonkin (sähköpostin osa, tietokannan solu), osa määrittelee tiedostomuodon jonka voi käsitellä perinteisesti (tallentaa levylle, siirtää liitteenä tai eri tiedostonsiirtoyhteyskäytännöillä, FTP, HTTP, SSH, jne):  * [[XAdESASiC]] johon virolainen [[DigiDoc]] -allekirjoitussäiliö perustuu. [[W3CqDigiDoc|qDigiDoc4]] ja ETSI:n määritykset XML:n allekirjoitusta varten-versio käyttää suoraan ASiC-E-formaattia (Extended).* [[ASiCETSI]] johon virolainen [[DigiDocAdES]]-allekirjoitussäiliö perustuu.format family:** [[CAdES]] [[IETF]]:n (?) [[CMS]]-viestiformaattien laajennokset allekirjoitusta varten.** [[JAdES]] JSON muodon allekirjotukset** [[PAdES]] PDF -laajennokset allekirjoitusta varten.** [[XAdES]] [[W3C]] ja ETSI:n määritykset XML:n allekirjoitusta varten.
* [[S/MIME]] SMTP-muotoisten sähköpostien liitemuotoinen allekirjoitusmuoto.
* [[PGP]] SMTP-muotoisten sähköpostien allekirjoitusmuoto.
* [[PKCS 7|PKCS#7]] [[RSA Security]] yrityksen kehittämä allekirjoitusmuoto.
 
== Kysymyksiä ja vastauksia ==
* Voiko samalla tunnusluvun syötöllä allekirjoittaa useamman kerran koodissa? Jos käyttäjä allekirjoittaa nipun tapahtumia (maksuja/sopimuksia/jne) - tuleeko jokaiselle kysyä tunnusluku erikseen?
 
== Kritiikkiä ==
* Käyttäjän oikeusturvan kannalta on tärkeää, että hän tietää ja voi olla varma mitä asiakirjoja allekirjoittaessa ja mihin mahdollisesti sitoutuu. Koska allekirjoitus on kaksivaiheinen (tiivisteen laskenta, allekirjoitus), eikä tiiviste ole selkokielinen - muodostuu riski, että käyttäjä allekirjoittaa muuta sisältöä mitä luulee allekirjoittavansa koska allekirjoitettava tiiviste on vaihtunut jossakin vaiheessa. Riski on käytännössä marginaalinen, mutta se on suurempi jos käytetyt ohjelmistot ovat palvelussa eikä käyttäjän hallussa olevassa omassa laitteessa.
== Katso myös ==
* [[Allekirjoitus]]
* [[Allekirjoitus/Tavat]]
* [[Allekirjoitus/Muodot]]
[[Luokka:Allekirjoitus‏‎]]
[[Luokka:Tekniikka|A]]

Navigointivalikko