Ero sivun ”HST” versioiden välillä
Siirry navigaatioon
Siirry hakuun
p
→Arkkitehtuuri
p (→Laitteet) |
p (→Arkkitehtuuri) |
||
Rivi 29: | Rivi 29: | ||
Sovellusohjelma tarvitsee ohjelmointirajapinnan (API) pystyäkseen keskustelemaan älykortin kanssa. RSA Laboratories on määritellyt C-ohjelmointirajapinnan niin sanotuille kryptograafisille tokeneille nimeltä ''[http://www.cryptsoft.com/pkcs11doc/v230/ PKCS#11]''. Se on 11. osa RSA Laboratoriesin sarjassa Public Key Cryptography Standards ja tunnetaan myös lempinimellä ''Cryptoki'' (väännös sanoista Cryptographic Token Interface). Cryptoki on tyypillisesti toteutettu ns. pluginina (.so-tiedosto). Useampi sovellus voi käyttää Cryptoki-rajapintaa rinnakkain; kirjaston tehtävänä on synkronoida pääsy yksittäiselle tokenille. Cryptoki pystyy myös hallitsemaan useampaa järjestelmään liitettyä tokenia. OpenSC-ohjelmisto sisältää Cryptoki-toteutuksen jaettuna kirjastona nimellä opensc-pkcs11.so. | Sovellusohjelma tarvitsee ohjelmointirajapinnan (API) pystyäkseen keskustelemaan älykortin kanssa. RSA Laboratories on määritellyt C-ohjelmointirajapinnan niin sanotuille kryptograafisille tokeneille nimeltä ''[http://www.cryptsoft.com/pkcs11doc/v230/ PKCS#11]''. Se on 11. osa RSA Laboratoriesin sarjassa Public Key Cryptography Standards ja tunnetaan myös lempinimellä ''Cryptoki'' (väännös sanoista Cryptographic Token Interface). Cryptoki on tyypillisesti toteutettu ns. pluginina (.so-tiedosto). Useampi sovellus voi käyttää Cryptoki-rajapintaa rinnakkain; kirjaston tehtävänä on synkronoida pääsy yksittäiselle tokenille. Cryptoki pystyy myös hallitsemaan useampaa järjestelmään liitettyä tokenia. OpenSC-ohjelmisto sisältää Cryptoki-toteutuksen jaettuna kirjastona nimellä opensc-pkcs11.so. | ||
PKCS#11-kirjaston ja lukijan välille tarvitaan vielä ns. middleware, josta on avoimena lähdekoodina kaksi vaihtoehtoista toteutusta: ''PCSC-lite'' ja ''OpenCT'' | PKCS#11-kirjaston ja lukijan välille tarvitaan vielä ns. middleware, josta on avoimena lähdekoodina kaksi vaihtoehtoista toteutusta: ''PCSC-lite'' ja ''OpenCT''. | ||
OpenCT on OpenSC:n kehittäjien kehittämä "liima" ylemmän tason Cryptoki-kirjaston ja laitteiston välillä. OpenCT on suoraviivaisempi vaihtoehto PC/SC:lle. Se pystyy käsittelemään lukijoita suoraan, kun taas PC/SC (PCSC-lite) tarvitsee erikseen vielä lukijalle ajurin. USB-lukijoilla käytetään ''CCID''-ajuria. Toisaalta OpenCT ei toteuta PC/SC-rajapintaa, joten sitä ei voi käyttää jos sovellus on kirjoitettu käyttämään PC/SC-rajapintaa. Nykyään sen kehitys on pysähtynyt ja siten laitteisto- ja yhteisötuki on heikentynyt. | '''PC/SC''' (Personal Computer/Smart Card) on alunperin Microsoftilta tullut aloite, joka määrittelee yhtenäisen, laitteistosta riippumattoman, rajapinnan älykorteille. PC/SC:n ja Cryptokin erona on, että PC/SC määrittelee alemman tason rajapinnan älykorteille yleensä, kun taas Cryptoki määrittelee rajapinnan julkisen avaimen cryptotokeneille, jotka eivät välttämättä ole edes toteutettu älykortteina. | ||
'''OpenCT''' on OpenSC:n kehittäjien kehittämä "liima" ylemmän tason Cryptoki-kirjaston ja laitteiston välillä. OpenCT on suoraviivaisempi vaihtoehto PC/SC:lle. Se pystyy käsittelemään lukijoita suoraan, kun taas PC/SC (PCSC-lite) tarvitsee erikseen vielä lukijalle ajurin. USB-lukijoilla käytetään ''CCID''-ajuria. Toisaalta OpenCT ei toteuta PC/SC-rajapintaa, joten sitä ei voi käyttää jos sovellus on kirjoitettu käyttämään PC/SC-rajapintaa. Nykyään sen kehitys on pysähtynyt ja siten laitteisto- ja yhteisötuki on heikentynyt. | |||
Alla on esitetty kaavioina yllä mainitut kaksi ohjelmistovaihtoehtoa: | Alla on esitetty kaavioina yllä mainitut kaksi ohjelmistovaihtoehtoa: |