opensc: eid interoperability through open source software

55
eID interoperability through open source software Martin Paljak OpenSC Project www.opensc-project.org

Upload: martin-paljak

Post on 10-Jul-2015

2.773 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: OpenSC: eID interoperability through open source software

eID interoperability through open source software

Martin PaljakOpenSC Projectwww.opensc-project.org

Page 2: OpenSC: eID interoperability through open source software

Quick background check

• Dealing with Estonian eID (1st generation) since 2003

• Involved with OpenID (“OpenID for Estonians, OpenID.ee”)

• Open source security/crypto/smart cards/identity software

• Maintainer/lead developer of OpenSC Project since 2010

• All opinions expressed are my own

Page 3: OpenSC: eID interoperability through open source software

Agenda

• What is OpenSC

• Problems observed from earth

• Why open source matters

• How OpenSC can help

Page 4: OpenSC: eID interoperability through open source software

OpenSC

Page 5: OpenSC: eID interoperability through open source software

OpenSC

• Open source software (middleware) for cryptographic smart cards

• Developed by independent team of international volunteers

Page 6: OpenSC: eID interoperability through open source software

OpenSC

• Open source software (middleware) for cryptographic smart cards

• Developed by independent team of international volunteers

• Provides standard interfaces for software developers and applications to access cryptographic capabilities of smart cards

• Standards are published or defined by market

Page 7: OpenSC: eID interoperability through open source software

OpenSC

• Open source software (middleware) for cryptographic smart cards

• Developed by independent team of international volunteers

• Provides standard interfaces for software developers and applications to access cryptographic capabilities of smart cards

• Standards are published or defined by market

• Cross platform (Windows, Mac OS X, Linux/Unix)

• PKCS#11, CryptoAPI (minidriver), Tokend/CDSA

Page 8: OpenSC: eID interoperability through open source software

OpenSC

• Open source software (middleware) for cryptographic smart cards

• Developed by independent team of international volunteers

• Provides standard interfaces for software developers and applications to access cryptographic capabilities of smart cards

• Standards are published or defined by market

• Cross platform (Windows, Mac OS X, Linux/Unix)

• PKCS#11, CryptoAPI (minidriver), Tokend/CDSA

• PKCS#15 (ISO7816-15, IAS-ECC, PIV, EstEID, ...)

• Card personalization tools

Page 9: OpenSC: eID interoperability through open source software

OpenSC

• Open source software (middleware) for cryptographic smart cards

• Developed by independent team of international volunteers

• Provides standard interfaces for software developers and applications to access cryptographic capabilities of smart cards

• Standards are published or defined by market

• Cross platform (Windows, Mac OS X, Linux/Unix)

• PKCS#11, CryptoAPI (minidriver), Tokend/CDSA

• PKCS#15 (ISO7816-15, IAS-ECC, PIV, EstEID, ...)

• Card personalization tools

• “OpenSC has become the defacto open source smartcard provider”

Page 10: OpenSC: eID interoperability through open source software

OpenSC enables applications!

Page 11: OpenSC: eID interoperability through open source software

OpenSC enables applications!

• Firefox - HTTPS authentication• Thunderbird - S/MIME signatures and encryption• Google Chrome - HTTPS authentication• E-voting - vote signing and authentication• OpenSSH - authentication • Safari - HTTPS authentication• Mail.app - S/MIME signatures and encryption• Outlook - S/MIME signatures and encryption• Open(Libre)Office - digital signatures• Internet Explorer - HTTPS authentication• Adobe Acrobat - digital signatures• OpenVPN - authentication• Putty - authentication• WinSCP - authentication

Page 12: OpenSC: eID interoperability through open source software

Real life applications, right now.

Page 13: OpenSC: eID interoperability through open source software

OpenSC supports*

• Estonian eID

• Finnish eID

• Spanish eID*

• Belgian eID

• Portuguese eID

• Italian eID

• IAS-ECC*

• PIV/CAC

• Latvian eID*

* - work in progress or other but-s or limitations

Page 14: OpenSC: eID interoperability through open source software

• Initiation & execution

• Trust

• Sustainability

• Interoperability

• Innovation

Problems with eID software projects

Page 15: OpenSC: eID interoperability through open source software

Regulators endorse execution, incl. open source.

Page 16: OpenSC: eID interoperability through open source software

Initiation & execution

Page 17: OpenSC: eID interoperability through open source software

Initiation & execution

• Reduced platform availability

Page 18: OpenSC: eID interoperability through open source software

Initiation & execution

• Reduced platform availability

• Linux (read: non-Windows)

Page 19: OpenSC: eID interoperability through open source software

Initiation & execution

• Reduced platform availability

• Linux (read: non-Windows)

• YourFavoriteStrangeLinuxDistroOnStrongARM. Or Amiga.

Page 20: OpenSC: eID interoperability through open source software

Initiation & execution

• Reduced platform availability

• Linux (read: non-Windows)

• YourFavoriteStrangeLinuxDistroOnStrongARM. Or Amiga.

• Licensing (OpenSC LGPL)

Page 21: OpenSC: eID interoperability through open source software

Initiation & execution

• Reduced platform availability

• Linux (read: non-Windows)

• YourFavoriteStrangeLinuxDistroOnStrongARM. Or Amiga.

• Licensing (OpenSC LGPL)

• Belgium

Page 22: OpenSC: eID interoperability through open source software

Initiation & execution

• Reduced platform availability

• Linux (read: non-Windows)

• YourFavoriteStrangeLinuxDistroOnStrongARM. Or Amiga.

• Licensing (OpenSC LGPL)

• Belgium

• Spain

Page 23: OpenSC: eID interoperability through open source software

Initiation & execution

• Reduced platform availability

• Linux (read: non-Windows)

• YourFavoriteStrangeLinuxDistroOnStrongARM. Or Amiga.

• Licensing (OpenSC LGPL)

• Belgium

• Spain

• Portugal

Page 24: OpenSC: eID interoperability through open source software

Initiation & execution

• Reduced platform availability

• Linux (read: non-Windows)

• YourFavoriteStrangeLinuxDistroOnStrongARM. Or Amiga.

• Licensing (OpenSC LGPL)

• Belgium

• Spain

• Portugal

• Latvia

Page 25: OpenSC: eID interoperability through open source software

Initiation & execution

• Reduced platform availability

• Linux (read: non-Windows)

• YourFavoriteStrangeLinuxDistroOnStrongARM. Or Amiga.

• Licensing (OpenSC LGPL)

• Belgium

• Spain

• Portugal

• Latvia

• Commercial vs public interest. Cost

Page 26: OpenSC: eID interoperability through open source software

Initiation & execution

• Reduced platform availability

• Linux (read: non-Windows)

• YourFavoriteStrangeLinuxDistroOnStrongARM. Or Amiga.

• Licensing (OpenSC LGPL)

• Belgium

• Spain

• Portugal

• Latvia

• Commercial vs public interest. Cost

• Client software is complex and interweaved. Cost

Page 27: OpenSC: eID interoperability through open source software

Initiation & execution

• Reduced platform availability

• Linux (read: non-Windows)

• YourFavoriteStrangeLinuxDistroOnStrongARM. Or Amiga.

• Licensing (OpenSC LGPL)

• Belgium

• Spain

• Portugal

• Latvia

• Commercial vs public interest. Cost

• Client software is complex and interweaved. Cost

• Keeping up with software changes is challenging

Page 28: OpenSC: eID interoperability through open source software

Initiation & execution

• Reduced platform availability

• Linux (read: non-Windows)

• YourFavoriteStrangeLinuxDistroOnStrongARM. Or Amiga.

• Licensing (OpenSC LGPL)

• Belgium

• Spain

• Portugal

• Latvia

• Commercial vs public interest. Cost

• Client software is complex and interweaved. Cost

• Keeping up with software changes is challenging

• 1st iteration tends to “fail”

Page 29: OpenSC: eID interoperability through open source software

Trust

Page 30: OpenSC: eID interoperability through open source software

Trust

• STOP ABUSING THIS WORD!

Page 31: OpenSC: eID interoperability through open source software

Trust

• STOP ABUSING THIS WORD!

• Opaque systems call for tinfoil hats

Page 32: OpenSC: eID interoperability through open source software

Trust

• STOP ABUSING THIS WORD!

• Opaque systems call for tinfoil hats

• “How do I know that the software does not sign a transaction for 10000€?”

Page 33: OpenSC: eID interoperability through open source software

Trust

• STOP ABUSING THIS WORD!

• Opaque systems call for tinfoil hats

• “How do I know that the software does not sign a transaction for 10000€?”

• Trust is essential for successful widespread adoption

Page 34: OpenSC: eID interoperability through open source software

Trust

• STOP ABUSING THIS WORD!

• Opaque systems call for tinfoil hats

• “How do I know that the software does not sign a transaction for 10000€?”

• Trust is essential for successful widespread adoption

• Does not always mean “cryptographically assured”

Page 35: OpenSC: eID interoperability through open source software

Trust

• STOP ABUSING THIS WORD!

• Opaque systems call for tinfoil hats

• “How do I know that the software does not sign a transaction for 10000€?”

• Trust is essential for successful widespread adoption

• Does not always mean “cryptographically assured”

• Who will be the first to publish on-card application?

Page 36: OpenSC: eID interoperability through open source software

Trust

• STOP ABUSING THIS WORD!

• Opaque systems call for tinfoil hats

• “How do I know that the software does not sign a transaction for 10000€?”

• Trust is essential for successful widespread adoption

• Does not always mean “cryptographically assured”

• Who will be the first to publish on-card application?

• Ergo I’m no cloud believer

Page 37: OpenSC: eID interoperability through open source software

Sustainability Interoperability

Page 38: OpenSC: eID interoperability through open source software

Sustainability

Page 39: OpenSC: eID interoperability through open source software

Sustainability

• Silos

Page 40: OpenSC: eID interoperability through open source software

Sustainability

• Silos

• 27x same mistakes? Probably.

Page 41: OpenSC: eID interoperability through open source software

Sustainability

• Silos

• 27x same mistakes? Probably.

• eID is infrastructure. “Estache” (“Seto”) the Estonian Apache?

Page 42: OpenSC: eID interoperability through open source software

Sustainability

• Silos

• 27x same mistakes? Probably.

• eID is infrastructure. “Estache” (“Seto”) the Estonian Apache?

• University computer class = 27x “Elbonian card software”?

Page 43: OpenSC: eID interoperability through open source software

Sustainability

• Silos

• 27x same mistakes? Probably.

• eID is infrastructure. “Estache” (“Seto”) the Estonian Apache?

• University computer class = 27x “Elbonian card software”?

• (PKI smart cards) eID is no CSS or HTML5

Page 44: OpenSC: eID interoperability through open source software

Sustainability

• Silos

• 27x same mistakes? Probably.

• eID is infrastructure. “Estache” (“Seto”) the Estonian Apache?

• University computer class = 27x “Elbonian card software”?

• (PKI smart cards) eID is no CSS or HTML5

• Niche market, requires specific skills

Page 45: OpenSC: eID interoperability through open source software

Sustainability

• Silos

• 27x same mistakes? Probably.

• eID is infrastructure. “Estache” (“Seto”) the Estonian Apache?

• University computer class = 27x “Elbonian card software”?

• (PKI smart cards) eID is no CSS or HTML5

• Niche market, requires specific skills

• Cost

Page 46: OpenSC: eID interoperability through open source software

Sustainability

• Silos

• 27x same mistakes? Probably.

• eID is infrastructure. “Estache” (“Seto”) the Estonian Apache?

• University computer class = 27x “Elbonian card software”?

• (PKI smart cards) eID is no CSS or HTML5

• Niche market, requires specific skills

• Cost

• A plant only grows if you water it

Page 47: OpenSC: eID interoperability through open source software

Innovation

Page 48: OpenSC: eID interoperability through open source software

Innovation

• Commodity vs niche product

• Easily available, interchangeable

Page 49: OpenSC: eID interoperability through open source software

Innovation

• Commodity vs niche product

• Easily available, interchangeable

• P2P vs platform

• SAML vs OpenID

Page 50: OpenSC: eID interoperability through open source software

Innovation

• Commodity vs niche product

• Easily available, interchangeable

• P2P vs platform

• SAML vs OpenID

• eID must be ubiquitous to succeed

• Make awkward uses easy to implement

Page 51: OpenSC: eID interoperability through open source software

Innovation

• Commodity vs niche product

• Easily available, interchangeable

• P2P vs platform

• SAML vs OpenID

• eID must be ubiquitous to succeed

• Make awkward uses easy to implement

• Does open source lead the innovation or jog behind the cool guys?

Page 52: OpenSC: eID interoperability through open source software

Innovation

• Commodity vs niche product

• Easily available, interchangeable

• P2P vs platform

• SAML vs OpenID

• eID must be ubiquitous to succeed

• Make awkward uses easy to implement

• Does open source lead the innovation or jog behind the cool guys?

• Import vs export

Page 53: OpenSC: eID interoperability through open source software

Innovation

• Commodity vs niche product

• Easily available, interchangeable

• P2P vs platform

• SAML vs OpenID

• eID must be ubiquitous to succeed

• Make awkward uses easy to implement

• Does open source lead the innovation or jog behind the cool guys?

• Import vs export

• Fibonacci innovation?

Page 54: OpenSC: eID interoperability through open source software

How can OpenSC help?

• Grassroots community of specialists from different countries

• Share knowledge and experiences

• No politics. “Show me the solution that works”

• Joint lobby group to collaborate with other (open source) projects

• Make Firefox (close to 1/3 of the market) to fix their bugs

• A reference implementation

• Provide a common framework and platform for collaboration, interoperability and innovation

Page 55: OpenSC: eID interoperability through open source software

Thank you!

Questions?

opensc-project.org

@MartinPaljak.net