1 A “lightweight” Crypto Library fo supporting a new Advanced Grid Authentication Process with Smart Card R. Barbera 1,2, V. Ciaschini 3, A. Falzone 4.

Slides:



Advertisements
Similar presentations
Smart Certificates: Extending X.509 for Secure Attribute Service on the Web October 1999 Joon S. Park, Ph.D. Center for Computer High Assurance Systems.
Advertisements

Digital Certificate Installation & User Guide For Class-2 Certificates.
Authenticating Users. Objectives Explain why authentication is a critical aspect of network security Explain why firewalls authenticate and how they identify.
Digital Certificate Installation & User Guide For Class-2 Certificates.
Chapter 17: WEB COMPONENTS
Digital Certificate Installation & User Guide For Class-2 Certificates.
A l a d d i n. c o m eToken NG-OTP Combined PKI - OTP Authentication Solution November, 2008.
Grid Security. Typical Grid Scenario Users Resources.
E-science grid facility for Europe and Latin America A Data Access Policy based on VOMS attributes in the Secure Storage Service Diego Scardaci.
eToken PKI Client Overview
Kerberos and PKI Cooperation Daniel Kouřil, Luděk Matyska, Michal Procházka Masaryk University AFS & Kerberos Best Practices Workshop 2006.
SKS – Secure Key Store KeyGen2 –Token Provisioning Protocol Executive Level Presentation.
16.1 © 2004 Pearson Education, Inc. Exam Planning, Implementing, and Maintaining a Microsoft® Windows® Server 2003 Active Directory Infrastructure.
FIT3105 Smart card based authentication and identity management Lecture 4.
About PKI Key Stores Dartmouth College PKI Lab. Key Store Defined Protected “vault” to hold user’s private key with their copy of their x.509 certificate.
Securing Data Storage Protecting Data at Rest Advanced Systems Group Dell Computer Asia Ltd.
ISA 3200 NETWORK SECURITY Chapter 10: Authenticating Users.
FIREWALLS & NETWORK SECURITY with Intrusion Detection and VPNs, 2 nd ed. 10 Authenticating Users By Whitman, Mattord, & Austin© 2008 Course Technology.
TrustPort Public Key Infrastructure. Keep It Secure Table of contents  Security of electronic communications  Using asymmetric cryptography.
Public Key Infrastructure from the Most Trusted Name in e-Security.
Masud Hasan Secure Project 1. Secure It uses Digital Certificate combined with S/MIME capable clients to digitally sign and.
Sorting Out Digital Certificates Bill blog.codingoutloud.com ··· Boston Azure ··· 13·Dec·2012 ···
DB2 (Express C Edition) Installation and Using a Database
Linux Operations and Administration
Riccardo Bruno INFN.CT Sevilla, Sep 2007 The GENIUS Grid portal.
DIRAC Web User Interface A.Casajus (Universitat de Barcelona) M.Sapunov (CPPM Marseille) On behalf of the LHCb DIRAC Team.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) Grid Engine Riccardo Rotondo
© NeoAccel, Inc. TWO FACTOR AUTHENTICATION Corporate Presentation.
Authenticating Users Chapter 6. Learning Objectives Understand why authentication is a critical aspect of network security Describe why firewalls authenticate.
INFSO-RI Enabling Grids for E-sciencE The GENIUS Grid portal Tony Calanducci INFN Catania - Italy First Latin American Workshop.
Java Security Pingping Ma Nov 2 nd, Overview Platform Security Cryptography Authentication and Access Control Public Key Infrastructure (PKI)
GILDA testbed GILDA Certification Authority GILDA Certification Authority User Support and Training Services in IGI IGI Site Administrators IGI Users IGI.
E-science grid facility for Europe and Latin America E2GRIS1 Raúl Priego Martínez – CETA-CIEMAT (Spain)‏ Itacuruça (Brazil), 2-15 November.
Introduction to Public Key Infrastructure January 2004 CSG Meeting Jim Jokl.
Computer Networking From LANs to WANs: Hardware, Software, and Security Chapter 13 FTP and Telnet.
Guide to MCSE , Second Edition, Enhanced1 The Windows XP Security Model User must logon with: Valid user ID Password User receives access token Access.
The gLite API – PART I Giuseppe LA ROCCA INFN Catania Master Class for Life Science, 4-6 May 2010 Singapore.
Secure hardware tokens David Groep DutchGrid CA. DutchGrid CA requirements Need for automated clients –from the bioinformatics domain (NBIC BioRange/BioAssist)
Secure hardware tokens David Groep DutchGrid CA. DutchGrid CA requirements Need for automated clients –from the bioinformatics domain (NBIC BioRange/BioAssist)
Development of e-Science Application Portal on GAP WeiLong Ueng Academia Sinica Grid Computing
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Grid2Win : gLite for Microsoft Windows Roberto.
EGI-InSPIRE RI EGI-InSPIRE RI A new “lightweight” Crypto Library for supporting an Advanced Grid Authentication Process.
EGI-InSPIRE RI EGI-InSPIRE RI User Support in IGI: Related Tools and Services in Italy EGI Technical Forum
INFSO-RI Enabling Grids for E-sciencE VOMS & MyProxy interaction Emidio Giorgio INFN NA4 Generic Applications Meeting 10 January.
Directory Services CS5493/7493. Directory Services Directory services represent a technological breakthrough by integrating into a single management tool:
EGI-InSPIRE RI Grid Training for Power Users EGI-InSPIRE N G I A E G I S Grid Training for Power Users Institute of Physics Belgrade.
Tutorial on "GRID Computing“ EMBnet Conference 2008 CNR - ITB Authenticated Grid access with robot certificates Giuseppe LA ROCCA INFN.
Tutorial on Science Gateways, Roma, Catania Science Gateway Framework Motivations, architecture, features Riccardo Rotondo.
Active Directory Domain Services (AD DS). Identity and Access (IDA) – An IDA infrastructure should: Store information about users, groups, computers and.
Consorzio COMETA - Progetto PI2S2 UNIONE EUROPEA Grid2Win : gLite for Microsoft Windows Elisa Ingrà - INFN.
REST API to develop application for mobile devices Mario Torrisi Dipartimento di Fisica e Astronomia – Università degli Studi.
Consorzio COMETA - Progetto PI2S2 UNIONE EUROPEA The GENIUS Grid Portal and robot certificates Giuseppe LA ROCCA
Antonio Fuentes RedIRIS Barcelona, 15 Abril 2008 The GENIUS Grid portal.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) gLite Grid Introduction Salma Saber Electronic.
Scuola Grid INFN, Trieste, 1-12 Dic Managing Confidential Data in the gLite Middleware – The Secure Storage.
Co-ordination & Harmonisation of Advanced e-Infrastructures for Research and Education Data Sharing Grant.
Operations Management Board 19th Dec. 2013
Authentication, Authorisation and Security
Giuseppe LA ROCCA INFN - Catania, Italy
How to connect your DG to EDGeS? Zoltán Farkas, MTA SZTAKI
Grid Security.
Outline What does the OS protect? Authentication for operating systems
Riccardo Rotondo INFN Catania – Italy
Grid Security Jinny Chien Academia Sinica Grid Computing.
Installation & User Guide
Outline What does the OS protect? Authentication for operating systems
Elisa Ingrà – Consortium GARR
Public Key Infrastructure from the Most Trusted Name in e-Security
Grid Engine Riccardo Rotondo
Grid Engine Diego Scardaci (INFN – Catania)
Presentation transcript:

1 A “lightweight” Crypto Library fo supporting a new Advanced Grid Authentication Process with Smart Card R. Barbera 1,2, V. Ciaschini 3, A. Falzone 4 and G. La Rocca 1 (1) National Institute of Nuclear Physics, Division of Catania, Italy (2) Department of Physics and Astronomy of the University of Catania, Italy (3) National Institute of Nuclear Physics, Division of Bologna, Italy (4) Nice srl, Italy International Workshop on Science Gateways (IWSG10) Sept. 2010, Acicastello, Italy

2 Grid Security: the current state-of-the-art; Introduction to smart card; –Why do we use smart card in Grid ? –Installation and Configuration; –The Aladdin eToken PRO smart card; –The NIKHEF solution; –The extended XML/Java EnginFrame framework. The “lightweight” crypto library; –Browsing the smart card; –Creating a VOMS proxy certificate; –Video. Summary and Conclusions; References. Outline

3 The existing Grid middleware, and in particular gLite, rely on the adoption of a Public Key Infrastructure (PKI); –User’s credentials (public and private keys) must be available on each User Interface server which is used to access the Grid infrastructure (e.g.: under $HOME/.globus/ ). Exposing the certificate’s private key on multiple UIs is considered a security weakness; –Non-authorized users may be subjected to possible fraudulent use (e.g.: the system administrator). There is a total lack of support for other authentication mechanisms; –Smart cards with their hardware characteristics can improve the security and avoid abuse. The current state-of-the-art

4 Smart cards are usually tamper-resistant devices that can be easily connected to a laptop and used to store private keys. –They have been introduced to protect the private credentials. In order to access private objects stored into the smart card, a user PIN is requested. –An additional protection is given to private keys and secret keys which are marked as ” sensitive ” or ” non- extractable ”. Sensitive keys cannot be revealed in plain text off the token; Non-extractable keys cannot be revealed off the token when encrypted. Smart Cards

5 In this work the features of the Aladdin eToken PRO 32Kb smart cards has been exploited. Smart Cards and Grid Since 2008, INFN CA uses this kind of smart cards to store grid certificates (in particular robot certificates ). The Aladdin eToken smart card can support several certificates: –A first prototype of the GENIUS Grid Portal ( using certificate to generate an user’s proxy and track what the user is doing in grid resources has been successfully designed ( See: A Grid Portal with Robot Certificates for Bioinformatics Phylogenetic Analyses – Concurrency and Computation: Practice and Experience, Special Issue IWPLS’09 )

6 Robot certificates in a nutshell Robot certificates have been introduced to allow users, who are not familiar with deal personal certificates and don’t belong to any VOs, to experience the Grid paradigm for research activity and reduce the initial barriers. –They are extremely useful, for instance, to automate grid service monitoring, data processing production, distributed data collection systems, etc.; –Basically, these certificates can be used to identify a person responsible for an unattended service or process acting as client and/or server.

7 The extended XML/Java EnginFrame framework 1. ask for a service 2. create a proxy with the robot certificate User 5. get the results 3. execute action 2’,3’. track user Admin 6/7. query for accounting data L&B 4. get output

8 The User Tracking System (1/2)

9 The User Tracking System (2/2)

10 Installation & Configuration (1/3) Before installing PKI Client 4.55, PCSC-lite, PCSC-lite-lib and CCID packages must be installed in your system –Maybe you can find these packages in your repo. These packages have dependencies between each other. –Start the daemon: /etc/init.d/pcscd start The eToken PKI Client includes all the necessary files and drivers to support eToken management. –It also includes the eToken Properties configuration tool, which enables easy user management of the eToken password and name. –Install: rpm –ivh pkiclient-full i386.rpm

11 Installation & Configuration (2/3) The Mkproxy-rhel4.tar.gz tarball contains all the required binaries for RHEL4 compatible platforms. Mkproxy-rhel4.tar.gz After unpacking the tarball, copy over the files to their respective locations: cp -rp etoken/bin/* /usr/local/bin cp -rp etoken/lib/* /usr/local/lib cp -rp etoken/etc/openssl.cnf /usr/local/etc

12 Installation & Configuration (3/3) Edit the /usr/local/mkproxy script and change the PKCS11_MOD enviroment variable The mkproxy script has been tested on: mkproxy –Windows XP (using cygwin) / Vista / 7 –Linux Fedora Core 5, 8, 9, 11, 12 –Linux CentOS 4, 5 –Scientific Linux 4 and 5 –Linux OpenSuse 10.1, 11.0, 11.1 –MacOS X 10.5 and higher

13 Administrating your eToken Before to start initialize your token, set the administrator password and upload your certificate To access the graphics Quick Function Menu right-click the eToken icon in the system tray or from Start -> Programs -> eToken -> eToken Properties

14 Browsing the smart card $ pkcs11-tool --module=/usr/lib/libeTPkcs11.so -L Available slots: Slot 0 AKS ifdh token label: eToken token manuf: Aladdin Ltd. token model: eToken token flags: rng, login required, PIN initialized, token initialized, other flags=0x200 serial num : 001c33f9 Slot 1 (empty) Slot 2 (empty) Slot 3 (empty) [..] Slot 16 (empty)

15 If you have installed a single grid certificate on your eToken you can now generate a grid proxy by issuing the command mkproxy --label=”Robot:MrBayes” Starting Aladdin eToken PRO proxy generation Found X.509 certificate on eToken: label: (eTCAPI) Robot:MrBayes – Giuseppe La Rocca's GILDA ID id: d d d d Your identity: /C=IT/O=GILDA/L=INFN Catania/CN=Robot:Genius – Giuseppe La Rocca Generating a 512 bit RSA private key writing new private key to 'proxykey.D17633' engine "pkcs11" set. Signature ok subject=/C=IT/O=GILDA/L=INFN Catania/CN=Robot:Genius – Giuseppe La Rocca/CN=proxy Getting CA Private Key PKCS#11 token PIN: Your proxy is valid until: Sun Feb 24 03:58:09 CEST Add VOMS extentions running the command : voms-proxy-init --noregen -voms Creating grid proxies with mkproxy

16 Supported APIs The following APIs are supported in the Linux version of eToken PKI Client 4.55: –Microsoft CryptoAPICryptoAPI –The Cryptographic Token Interface PKCS#11

17 The Cryptographic Token Interface Standard (PKCS#11) Java support a set of native interfaces to interact with cryptographic tokens (e.g.: hardware cryptographic accelerators and smart cards). It defines sixty prototypes for functions (referred to as cryptoki library) that together can be used to perform a wide range of cryptographic mechanisms, including: –digital signatures ; –public key ciphers ; –symmetric key cipher ; –hash functions ; –etc. The Sun PKCS#11 provider is supported on Solaris SPARC platforms (32-bit and 64-bit Java VM) and on x86 compatible platforms ( Solaris, Linux and Windows OS). It is not supported, however, on 64-bit AMD64 and Itanium platforms.

18 The “lightweight” crypto library (1/4) The new “lightweight” crypto library has been designed and developed considering the native PKCS#11 cryptographic, the Bouncy Castle and the Cog-jGlobus (ver 1.8.0) APIs.

19 The “lightweight” crypto library (2/4) The Bouncy Castle Provider has been used to generate a self-signed certificate // Generate the Proxy Certificate structure. X509V3CertificateGenerator certGen = new X509V3CertificateGenerator(); // Set the serial Number for the certificate. certGen.setSerialNumber(sn); // Set the validity of the certificate. certGen.setNotBefore(firstDate); certGen.setNotAfter(lastDate); // Set the public key for the certificate. certGen.setPublicKey(pair.getPublic()); // Set the Issuer distinguished name. certGen.setIssuerDN(cert.getSubjectX500Principal()); // Set the signature of the new certificate. certGen.setSignatureAlgorithm(cert.getSigAlgName()); // Set the subject. certGen.setSubjectDN(new X500Principal (proxyDN)); // Generate the new certificate. X509Certificate cert = certGen.generate(privateKey);

20 The “lightweight” crypto library (3/4) The Cog-jGlobus APIs have been used to set up a GSI connection with the VOMS server of the given VO in order to add the VOMS Attributes Certificate (AC) to the original proxy certificate.

21 The “lightweight” crypto library (4/4) Extract the AC from the payload and create a VOMS proxy Start video

22 A real use case… The high customizable features of Liferay portal has been combined with the EnginFrame 2010 framework in order to have a new e-Collaboration environment designed to make scientific researcher easy access grid services; R. Rotondo, R. Barbera, G. La Rocca, A. Falzone, P. Maggi and N. Venuti. Conjugating science gateways and grid portals into e-collaboration environments: the Liferay and GENIUS/EnginFrame use case. Proceedings of the 2010 TeraGrid conference, Pittsburgh, Pennsylvania – ISBN: ,

23 Conclusions The Java SE platform provides developers with a large set of security APIs, algorithms, tools and protocols. We have extended the PKCS#11 cryptographic library together with the Bouncy Castle and Cog-jGlobus Java APIs to implement a new security solution for the gLite Grid middleware. The solution described in this paper can be used by users, applications, Grid portals and/or Science Gateways to generate VOMS proxies starting from the credentials stored into an eToken smart card.

24 References & Links