Your SlideShare is downloading. ×
ID-kaardist 100%
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

ID-kaardist 100%

3,302
views

Published on

Kuidas kasutada ID-kaardil olevaid võtmeid erineva tarkvaraga

Kuidas kasutada ID-kaardil olevaid võtmeid erineva tarkvaraga

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
3,302
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
16
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. ID-kaardist 100% Tartu 2009 Martin Paljak / martin.paljak.pri.ee 1
  • 2. ID-kaart ja selle infrastruktuur on kõige odavam ja kõige turvalisem kohe kasutatav vahend Eesti IT lahenduste turvamisel. 2
  • 3. Kes? • Vabavaralise kiipkaarditarkvara torkija aastast 2003 • OpenSC - OSS Eesti ID-kaardi draiver • Pinpadi tugi OSS softis • Võib sõimata, et mõnel platvormil kaart nii niglalt töötab või tänada, et mõnel üldse töötab. 3
  • 4. Millest jutt? • “Mida peaks iga (ID-kaardi) tarkvara arendaja teadma ID-kaardi tarkvara komponentidest” • Mis on ID-kaardil • Kuidas kaardil olev jõuab rakendustesse • Mida tuntud ja vähemtuntud rakendused teevad • Kuidas (vähemtuntud) tarkvara ID-kaardiga räägib 4
  • 5. Mis on kaardil • Isikuandmete fail (ebahuvitav) • 2x kaardil genereeritud 1024b RSA salajast võtit “2346267345273468354127346981236459182213847619283469183764596723817263871623871263871638612387615” • 2x X509 sertifikaati, Sertifitseerimiskeskusest Võti “Martin Paljak, 38207162722, martin.paljak@eesti.ee” • 2x PIN koodi (4/5..12 märki) • 1x PUK kood (8..12 märki) 5
  • 6. ID-kaardiga saab ... 6
  • 7. ID-kaardiga saab ... • Brauseriga panka/e-riiki logida (SSL/TLS) 6
  • 8. ID-kaardiga saab ... • Brauseriga panka/e-riiki logida (SSL/TLS) • Dokumente ja makseid allkirjastada 6
  • 9. ID-kaardiga saab ... • Brauseriga panka/e-riiki logida (SSL/TLS) • Dokumente ja makseid allkirjastada • Arvutisse logida 6
  • 10. ID-kaardiga saab ... • Brauseriga panka/e-riiki logida (SSL/TLS) • Dokumente ja makseid allkirjastada • Arvutisse logida • ... 6
  • 11. ID-kaardiga saab ... • Brauseriga panka/e-riiki logida (SSL/TLS) • Dokumente ja makseid allkirjastada • Arvutisse logida • ... • OpenSSH 6
  • 12. ID-kaardiga saab ... • Brauseriga panka/e-riiki logida (SSL/TLS) • Dokumente ja makseid allkirjastada • Arvutisse logida • ... • OpenSSH • OpenVPN 6
  • 13. ID-kaardiga saab ... • Brauseriga panka/e-riiki logida (SSL/TLS) • Dokumente ja makseid allkirjastada • Arvutisse logida • ... • OpenSSH • OpenVPN • GnuPGP 6
  • 14. “ID-kaardil olevaid RSA võtmeid on mõninga vaevaga võimalik kasutada paljudes rakendustes, mis tegelevad RSA võtmetega ja sellega parandada süsteemi turvalisust” 7
  • 15. “Kuidas jõuab RSA allkiri rakendusse?” 8
  • 16. OpenSSL OpenVPN OpenSSH Veebis allkirjastamise pluginad Outlook DigiDoc client NSS Internet Explorer FirefoxThunderbird CryptoAPI PKCS#11 Keychain CDSA Rakenduste krüptoliides Tokend OpenSC BaseCSP minidriver ID-kaardi draiver PC/SC CT-API OpenCT Kaardilugeja raamistik Kaardilugeja draiver PCMCI CCID USB Kaardilugeja ID-kaart 9
  • 17. ID-kaardi tarkvara on ... • Komponendid (platvormi) krüptoliidestele • CryptoAPI, PKCS#11, Tokend/CDSA • Custom rakendustarkvara • ID-kaardi utiliit, DigiDoc client, DigiDoc crypto • Custom veebilehitseja pluginad • Digiallkirjastamiseks 10
  • 18. Kust saab • https://id.eesti.ee/trac - uus ja roosa; ametlik OSS • http://installer.id.ee - vana ja kärav; ametlik • http://ideelabor.ee/id-kaart - vana ja alternatiivne, OSS 11
  • 19. Windows Firefox Explorer Plugin Plugin Thunderbird DigiDoc Outlook Utiliit PKCS#11 CryptoAPI OpenSC BaseCSP minidraiver cardlib CT-API PC/SC CCID IFDHandler Reader Reader 12
  • 20. Linux Firefox Thunderbird Plugin DigiDoc Utiliit PKCS#11 Cardlib OpenSC CT-API OpenCT PC/SC CT-API CCID IFDHandler Reader Reader Reader Reader 13
  • 21. Mac OS X Firefox Safari Plugin Plugin Thunderbird DigiDoc Mail.app Utiliit CDSA PKCS#11 Securityd Cardlib OpenSC Tokend PC/SC CCID IFDHandler Reader Reader 14
  • 22. Tähelepanekuid • Windows ja Mac püüavad pakkuda kõrgemaid API-sid • Ainus universaalne API on PKCS#11 • Iga veebilehe omanik võib enda allkirjastamise plugina välja mõelda 15
  • 23. Tähelepanekud 2 • Jalgratast pole mõtet leiutada, kasutada on krüpteteegid ja API-d • Mitte kõikide teekide autorid pole mõelnud kiipkaardiga suhtlemisele (OpenSSL) 16
  • 24. “Milleks ja kuidas tarkvara ID-kaarti kasutab?” 17
  • 25. Brauserid 18
  • 26. 19
  • 27. • Standard: autentimisvõtit SSL/TLS ühenduse autentimisel • Kehtib kogu brauseris realiseeritud X509 ja PKI kupatus 19
  • 28. • Standard: autentimisvõtit SSL/TLS ühenduse autentimisel • Kehtib kogu brauseris realiseeritud X509 ja PKI kupatus • Custom: allkirjavõtit (mingi dokumendi) räsi allkirjastamiseks. • Tehniline vidin allkirja kätte saamiseks veebilehe kaudu 19
  • 29. • Internet Explorer: CryptoAPI • Firefox: PKCS#11 • Safari: CDSA/Keychain • Google Chrome: CryptoAPI ja ... ? • Opera: tutkit 20
  • 30. Meilikliendid 21
  • 31. • Standard: S/MIME kaudu e-mailide krüpteerimisel ja signeerimisel autentimisvõtmega • See EI OLE digiallkiri • Standard: SSL/TLS IMAP/POP3 jaoks • Kah standard?: PGP abil e-mailide krüpteerimist ja signeerimist autentimisvõtmega 22
  • 32. • Outlook: CryptoAPI • Thunderbird: PKCS#11 • Mail.app: CDSA/Keychain • PGP pluginad: tutkit 23
  • 33. SSH: Windows • PuttySC PKCS#11 liidesega klient • PuttySC “SSH agent” ja WinSCP • http://www.risacher.org/putty-cac/putty.exe • http://www.risacher.org/putty-cac/pageant.exe • http://winscp.net/download/winscp425.exe 24
  • 34. putty.exe 25
  • 35. 26
  • 36. 27
  • 37. SSH võtme lisamine $ echo “ssh-rsa AAAX....” >> ~/.ssh/authorized_keys2 • kaks > märki • ~/.ssh kataloogil õigused 700! • authorized_keys2 faili lõpus newline! 28
  • 38. 29
  • 39. 30
  • 40. pageant.exe 31
  • 41. 32
  • 42. winscp.exe 33
  • 43. 34
  • 44. 34
  • 45. 34
  • 46. 35
  • 47. 36
  • 48. SSH: Linux (Ubuntu) • PKCS#11 patch OpenSSH jaoks • Originaal http://www.openssh.org • Patch: http://sites.google.com/site/alonbarlev/openssh-pkcs11 • Combo: http://martin.paljak.pri.ee/download/openssh-pkcs11.tar.gz 37
  • 49. Paigaldamine: $ sudo apt-get install libpkcs11-helper1-dev libssl-dev build-essential $ wget http://martin.paljak.pri.ee/download/openssh-pkcs11.tar.gz $ tar xzvf openssh-pkcs11.tar.gz $ ./configure --with-pkcs11 && make && sudo make install ### OpenSSH konfimisel on palju teisi võtmeid samuti 38
  • 50. Kasutamine $ ssh -# /usr/lib/onepin-opensc-pkcs11.so martin@paljak.pri.ee $ ssh-keygen -K /usr/lib/onepin-opensc-pkcs11.so $ ssh-add -K /usr/lib/onepin-opensc-pkcs11.so -I ‘XX’ 39
  • 51. Avaliku võtme lugemine $ ssh-keygen -K /usr/lib/onepin-opensc-pkcs11.so | grep ssh-rsa $ pkcs15-tool --read-ssh-key 1 | tail -1 40
  • 52. Tähelepanekud • SSH protokoll ei ole SSL • SSH ei sõltu sertifikaatidest vaid ligipääsust privaatvõtmele • Kõik näited tehtud aegunud kaartidega 41
  • 53. SSH kokkuvõtteks • Serveris lubada ainult RSA võtmetega autentimine • RSAAuthentication yes PasswordAuthentication no • “SSH on vaese mehe VPN” • tunnelid, SOCKS proxy • Võtmed ei lähe jalutama ja ligipääsu annad inimesele, mitte võtmele 42
  • 54. PKCS#11 moodulid • C:WINDOWSsystem32onepin-opensc-pkcs11.dll • /usr/lib/onepin-opensc-pkcs11.so • /Library/OpenSC/lib/onepin-opensc-pkcs11.so 43
  • 55. TrueCrypt • http://www.truecrypt.com • “TrueCrypt supports PKCS#11 tokens” • PKCS#11 pole liides mälupulgale 44
  • 56. Ära krüpti ID-kaardiga • Kui kaarti ei saa kasutada, ei saa andmetele ligi • Krüptimiseks kasutada varundatavaid võtmeid 45
  • 57. OpenVPN • OpenVPN toetab PKCS#11 mooduleid • Võimalusi on väga palju. • $ openvpn --show-pkcs11-ids /usr/lib/onepin-opensc-pkcs11.so 46
  • 58. Veel tarkvara • engine_pkcs11 - võimalik oelmasolev OpenSSL tarkvara panna kasutama ID- kaardi võtmeid väikese vaevaga • pam_pkcs11 - võimalik ligipääsu Linux masinatele kontrollida ID-kaardi võtmetega • gnupg-pkcs11-scd - võimalik PKCS#11 kaudu kasutada ID-kaardi võtmeid GnuPG PGP lahenduses 47
  • 59. Stunnel • http://www.stunnel.org • Üldine SSL/TLS tunneldaja • engine_pkcs11 + stunnel = ID-kaardiga tunnelid 48
  • 60. Veel tarkvara 2 • GnuTLS - PKCS#11 toega teek. • cURL - ID-kaardi toega; arendajatele • Hea allikas: http://sites.google.com/site/alonbarlev/open-source • Alon Bar-Lev, OpenSC dev 49
  • 61. reklaam: OpenID.ee • Võimalik kasutajaid identifitseerida ja autentida ID-kaardi ja mobiil-ID kaudu ilma HTTPS-ita, ilma paroolideta. • 80/20 reegel: kapakohila koerafoorum ja veel 80% veebidest ei vaja HTTPS-i ega jaksa realiseerida mID tuge • OpenID tugi paljudes veebilahendustes kohe olemas: Wordpress, Drupal, Joomla jne 50
  • 62. Küsimusi? • On veel tarkvara, mis võiks kasutada ID- kaarti? 51
  • 63. Aitäh! 52

×