Ero sivun ”SCS” versioiden välillä

Kohteesta DigiWiki
Siirry navigaatioon Siirry hakuun
Rivi 1: Rivi 1:
 
[[Tiedosto:Scs.png|right|400px|thumb|SCS-tapahtuman viestit.]]
 
[[Tiedosto:Scs.png|right|400px|thumb|SCS-tapahtuman viestit.]]
'''Signature Creation Service''' (''SCS'') on [[Digivirasto]]n kehittämä ja tuottama.
+
'''Signature Creation Service''' (''SCS'') on [[Digivirasto]]n kehittämä ja tuottama allekirjoitusratkaisu jossa päätelaitteessa allekirjoitetaan web-palvelussa sijaitseva sisältö.
  
Allekirjoitustapahtumassa SCS tukeutuu käyttäjän päätelaitteessa väliohjelmiston (''eng middleware'') kautta saatavilla olevaan varmenteisiin, tarjoaa niistä listan käyttäjälle ja allekirjoittaa tapahtuman käyttäjän valinnan ja syöttämän tunnusluvun jälkeen.
+
Allekirjoitustapahtumassa SCS käyttää käyttäjän päätelaitteessa väliohjelmiston (''eng middleware'') kautta saatavilla olevia henkilökortin varmenteita, tarjoaa niistä listan käyttäjälle ja allekirjoittaa tapahtuman käyttäjän valinnan ja syöttämän tunnusluvun jälkeen.
  
SCS on oma ohjelmointirajapinta jonka tuki on toteutettava väliohjelmistossa toimiakseen. Nykyisellään tuli sille löytyy [[DigiSign Client]] ja [[SecMaker]] Net iD ohjelmistosta.
+
SCS on oma ohjelmointirajapinta jonka tuki on toteutettava väliohjelmistossa toimiakseen. Nykyisellään tuki sille löytyy [[DigiSign Client]] ja [[SecMaker]] Net iD ohjelmistosta.
  
Yksinkertaisimmillaan kyseessä on siis JSON rajapinta http protokollan ylitse paikalliseen porttiin. Eli tuota pystyy kokeilemaan menemällä selaimella osoitteeseen https://localhost:53952/ jolloin saat sieltä sivun jossa pystyy käyttämään erilaisia testejä jne.  Itse json rajapinta tukee kahta operaatiota eli '''version''' ja '''sign''' operaatiot. Jos haluaa käyttää rajapintaa ilman https:ää, niin porttinumero on 53951.  
+
Tekninen toteutus on JSON-muotoa käyttävä rajapinta HTTP-yhteystavalla paikalliseen porttiin. Rajapintaa voi kokeilla avaamalla selaimella osoitteen https://localhost:53952/ jolloin aukeaa sivu jossa pystyy käyttämään erilaisia testejä jne.  Itse json rajapinta tukee kahta operaatiota eli '''version''' ja '''sign''' operaatiot. Jos haluaa käyttää rajapintaa ilman salausta (https) niin porttinumero on 53951.
  
 
Version operaatio toimii hyvin yksinkertaisesti urli https://localhost:53952/version palauttaa:
 
Version operaatio toimii hyvin yksinkertaisesti urli https://localhost:53952/version palauttaa:

Versio 26. heinäkuuta 2021 kello 07.54

SCS-tapahtuman viestit.

Signature Creation Service (SCS) on Digiviraston kehittämä ja tuottama allekirjoitusratkaisu jossa päätelaitteessa allekirjoitetaan web-palvelussa sijaitseva sisältö.

Allekirjoitustapahtumassa SCS käyttää käyttäjän päätelaitteessa väliohjelmiston (eng middleware) kautta saatavilla olevia henkilökortin varmenteita, tarjoaa niistä listan käyttäjälle ja allekirjoittaa tapahtuman käyttäjän valinnan ja syöttämän tunnusluvun jälkeen.

SCS on oma ohjelmointirajapinta jonka tuki on toteutettava väliohjelmistossa toimiakseen. Nykyisellään tuki sille löytyy DigiSign Client ja SecMaker Net iD ohjelmistosta.

Tekninen toteutus on JSON-muotoa käyttävä rajapinta HTTP-yhteystavalla paikalliseen porttiin. Rajapintaa voi kokeilla avaamalla selaimella osoitteen https://localhost:53952/ jolloin aukeaa sivu jossa pystyy käyttämään erilaisia testejä jne. Itse json rajapinta tukee kahta operaatiota eli version ja sign operaatiot. Jos haluaa käyttää rajapintaa ilman salausta (https) niin porttinumero on 53951.

Version operaatio toimii hyvin yksinkertaisesti urli https://localhost:53952/version palauttaa:

{ "version": "1.1", 
  "httpMethods": "GET, POST", 
  "contentTypes": "data, digest", 
  "signatureTypes": "signature,cms,cms-pades", 
  "selectorAvailable": true, 
  "hashAlgorithms": "SHA1, SHA224, SHA256, SHA384, SHA512"
}

Varsinainen allekirjoitus operaatio on hieman monimutkaisempi, eli sinne https://localhost:53952/sign pitää lähettää seuraavan tapainen json:

{ "version": "1.1",
  "selector": { 
     "keyusages": [ "digitalsignature" ]
  },
  "signatureType": "signature",
  "hashAlgorithm": "SHA256",
  "contentType": "data",
  "content: "xxxx"
}

Missä tuo xxxx on base64 encoodattu merkkijono, joka siis allekirjoitetaan. Tuossa data versiossa tuon pitää olla muotoa jossa alussa on urli ja sen perässä vähintään 64-merkkiä pitkä digest.

Ja vastauksena tulee:

{ "version": "1.1", 
  "signatureAlgorithm": "SHA256withRSA", 
  "signatureType": "signature", 
  "signature": "Dsf...3SMLF==", 
  "chain": [
    "MII...8=",
    "MII...Y=",
    "MII...m" ], 
  "status": "ok", 
  "reasonCode": "200", 
  "reasonText": "Signature generated"
}

Missä tuo signature kenttä sisältää sen allekirjoituksen ja chain sisältää varmenneketjun allekirjoittajasta juurivarmenteeseen.

Katso myös

Aiheesta muualla