Apple/macOS
Applen macOS käyttöjärjestelmästä on useita eri versioita, viimeisin niistä on Monterey. macOS käyttää Keychain Access-ohjelmaa varmennevarastona jossa aiemmin Tokend-rajapintaa käytettäessä näkyivät myös henkilökortin varmenteet. Uudemmat versiot macOS-versiot käyttävät CryptoTokenKit-rajapintaa (CTK) ja varmenteet eivät enää näy Keychain Access ohjelmassa.
KeyChain ongelmasta seuraa, ettei mm Applen oma Safari-selain tai sähköpostiohjelma näe käyttäjän kortilla olevia varmenteita. Ongelmaa pystyi aiemmin kiertämään asentamalla vapaan lisenssin OpenSC-väliohjelmiston, mutta se ei enää toimi 2017 alusta myönnettyjen, eli G3 sukupolven korttien kanssa koska sieltä puuttuu uuden Oberthur-kortin ajuri.
Etäyhteyttä käytettäessä (VNC ikkunointi, ssh pääteyhteys) macOS ei rajoita paikallisten varmennekorttien käsittelyä paikallisiin istuntoihin kuten Windows tekee tietoturvasyistä.
Sisällysluettelo
Historia
Mac OS X Lion 10.7 -10.12[1] henkilökorttien tuki ollut tuettuna Tokend-rajapinnalla. Siitä tehtiin avointa lähdekoodia ja se siirrettiin macosforge- ja github kehitysportaaleihin. Kehittäjät ilmeisesti olleet OpenSC-projektin aktiiveja.
Mac OS X Sierra 10.12 - High Sierra 10.13 CryptoTokenKit-rajapinnan (CTK) käyttöönotto.
macOS Mojave Keyring toimii, käyttäjä-varmenne-pairing toimii.
macOS Catalina 10.15.0 Tokend poistettu, ainoastaan CryptoTokenKit tuettu.
macOS Big Sur 11.2.2 samat CTK-ongelmat jatkuvat. sc_auth komento, keyring eivät toimi oletetusti.
macOS Monterey 12.0.1 DigiSign 4.2.0b näyttäisi toimivan Firefoxin kanssa, CTK- ja Keyring- ja Safari ongelmat jatkuvat.
Kortinlukijat
Toimii:
- Gemalto (was Gemplus) GemPC Twin SmartCard Reader (usb: 08e6:3437)
Ei toimi:
- OmniKey AG CardMan 3021 / 3121 (usb: 076b:3021)
Asennus
Henkilökortin käyttö vaatii väliohjelmiston asennuksen. Koska nykyisellään Digiviraston ohjelmisto ei toimi, ainoaksi vaihtoehdoksi jää asentaa avoimen lähdekoodin OpenSC.
Digisign Client
Digiviraston webistä on poistettu siellä aiemmin ollut ei toimi Safari 12 version kanssa varoitus (2021-11-07), mutta siitä huolimatta Safari ei tunnu toimivan kuten ennenkään.
Firefoxin turvaväline-asetuksiin ladattava PKCS11 kirjaston polku on:
/Library/mPolluxDigiSign/libcryptoki.dylib
OpenSC
Osalle tarvittavia ohjelmia ei ole saatavilla Applen .dmg levykuvaa ja/tai natiivia .pkg pakettia. Asentamalla ns Home Brew pakettienhallintaohjelmiston, ohjelmien asennuksen ja päivittäminen helpottuu huomattavasti. Sen asennusohjeet löytyvät omilta sivuiltaan.
Komentotulkki-ikkunassa:
% sudo brew install opensc
Asennuksen jälkeen voi kokeilla näkeekö OpenSC kortinlukijan:
% opensc-tool -l # Detected readers (pcsc) Nr. Card Features Name 0 No Gemalto PC Twin Reader
Ja toimivatko varmenteiden listaaminen:
% pkcs15-tool -c Using reader with a card: Gemalto PC Twin Reader X.509 Certificate [todentamis- ja salausvarmenne] Object Flags : [0x00] Authority : no Path : 3f004331 ID : 45 Access Rules : read:<always>; Encoded serial : 02 04 3BC409C1 X.509 Certificate [allekirjoitusvarmenne] Object Flags : [0x00] . . .
Ongelmanratkaisut
- Finder -> Applications -> Utilities -> System Information.app listaa järjestelmän tietoja.
- Hardware -> Card Reader osiossa näkyy älykortinlukijat.
- Software -> SmartCards osiossa näkyy ajurien ja prosessien tietoja (Tokend/CryptoTokenKit). Samat tiedot näkyvät komennolla:
% system_profiler SPSmartCardsDataType
- CryptoTokenKit palvelun tila:
% sudo launchctl print system/com.apple.ctkd | grep state state = running
- Listaa älykortit:
% security list-smartcards No smartcards found.
- Listaa varmenteet:
% security smartcards token -l
- Vanhan Tokend aktivointi on mahdollista Mojavessa jos sitä jostain syystä tarvitsisi (SmartCardServices-legacy):
% sudo defaults write /Library/Preferences/com.apple.security.smartcard Legacy -bool true
Mojavea uudemmissa versioissa Tokend on kokonaan poistettu.
- Safari ei toimi henkilökortin kanssa Catalinassa ja uudemmissa, ennen vuoden 2017 alkua myönnetyillä korteilla asentamalla OpenSC ongelma korjaantuu. Muuten Firefoxin käyttö DigSign PKCS11-pluginin kanssa on ainoa vaihtoehto.
- SmartCard pairing failed Cannot pair SmartCard with the current user. The operation couldn't be completed. (OSStatus error -67808 - RSA signature verification failed, no match). Korjaus ongelmaan on poistaa Digiviraston Digisign Client ohjelmapaketti, asentaa OpenSC ja uudelleenkäynnistää kone. Sen jälkeen käyttäjätilin ja varmenteen paritus onnistuu ja jopa Safari-selain toimii tunnistusvarmenteella.
Katso myös
Aiheesta muualla
- Ludovic Rousseau - smartcards and macOS
- github.com/kenh/keychain-pkcs11 tarjoaa pkcs#11 rajapinnan älykorteilta ja keychain-varastosta.