EzIdentity MFA-TechnicalWriteup
EzIdentity MFA-TechnicalWriteup
EzIdentity MFA-TechnicalWriteup
This document is CONFIDENTIAL and a TRADE SECRET of EZMCOM INC. Sunnyvale, California, USA. The receipt or possession of this document does not convey any rights
to reproduce or disclose its contents, use, or sell anything that it may describe, in whole or in part, without the specific written consent of EZMCOM Inc. Any reproduction
of this document without the express written consent of EZMCOM Inc. may subject you/your organization to civil and/or criminal prosecution.
Table of Contents
1.0 Introduction ................................................................
................................................................................................
.................................................................
................................. 4
1.1 Scope of document................................
document................................................................
................................ ................................................................
................................ ..................................
................................ .. 4
2.2.3 Description...................................................................................................... 7
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 2
List of Figures
Figure 3-4: Set Token Import Key – Save the Token credentials import key ........................... 12
Figure 3-6: Import Token – Select the Hardware OTP Token Type ......................................... 14
List of Tables
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 3
1.0 Introduction
EzIdentity™ is a versatile authentication platform that provides a centralized set of
services across multiple service channels and business units. Supporting a variety of
authentication methods, EzIdentity™ is highly scalable and easy-to-integrate. Business
units can select the type of authentication (such as Public Key Infrastructure (PKI)
credentials, Software or Hardware based One-Time Password (OTP) — or SMS/ TAC
based authentication or mix of chosen modes of authentication.
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 4
2.0 OTP Generation
This section describes the various security algorithms and standards implemented for
generation and verification. Triple DES encryption (112-bit key is used for encryption for
To produce a dynamic password (and since secrets are static) the OTP-Token needs to
feed its crypto-engine with both internal clock time and secrets. The time duration that
defines how often a new dynamic password is generated. This is the TIME STEP which
In a perfect world, the EzIdentity™ server and OTP-Token time are perfectly
synchronized. The server just has to deal with the current Time Step – any other
dynamic password would be rejected. But our real world is not perfect. The OTP needs a
certain amount of time to reach the server for verification based on the average user’s
speed of OTP Token operation and the internet or network latency for OTP to reach the
EzIdentity™ server for verification. To address this challenge, EzIdentity™ Time Drift
Management consists of accepting more than one dynamic password during a given
N = 3 and Time Step = 32 seconds, the OTP validity period termed now onwards as
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 5
2.2 Software | SMS OTP Token
For the software based and SMS OTP Tokens, EzIdentity™ supports OATH HOTP (RFC
verification. Triple DES encryption (112-bit key is used for encryption for the Token
credentials. This section introduces first the context around an algorithm that generates
one-time password values on HMAC and, thus, is named the HMAC-Based One-Time
-- the base function to compute an HMAC-SHA-1 value and the truncation method to
If s is a string, then s[i] denotes its i-th bit. We start numbering the bits at 0, so s =
Let StToNum (String to Number) denote the function that as input a string s returns the
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 6
Symbol Represents
validator (server).
K Shared secret between client and server; each HOTP generator has
2.2.3 Description
The HOTP algorithm is used for generating One Time Passwords. Each such password is
associated with an expiry time. A new OTP is generated based on an increasing counter
value and a static symmetric key associated only with the user. In order to create the
HOTP value, we will use the HMAC-SHA-1 algorithm, as defined in RFC 2104.
As the output of the HMAC-SHA-1 calculation is 160 bits, we must truncate this value
HOTP(K,C) = Truncate(HMAC-SHA-1(K,C))
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 7
Where - Truncate represents the function that converts an HMAC-SHA-1 value into an
The Key (K), the Counter (C), and Data values are hashed high-order byte first. The
HOTP values generated by the HOTP generator are treated as big endian.
string
0...2^{31}-1
0...10^{Digit}-1
The Truncate function performs Step 2 and Step 3, i.e., the dynamic truncation and then
the reduction modulo 10^Digit. The purpose of the dynamic offset truncation technique
result.
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 8
DT(String) // String = String[0]...String[19]
Let P = String[OffSet]...String[OffSet+3]
The reason for masking the most significant bit of P is to avoid confusion about signed
differently, and masking out the signed bit removes all ambiguity.
Implementations MUST extract a 6-digit code at a minimum and possibly 7 and 8-digit
The following paragraph is an example of using this technique for Digit = 6, i.e., that a
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 9
3.0 OTP Token Credential Security
3.1 Token Key Management
This section explains the aspects of security and secret key protection measures in the
EzIdentity™ platform. To enable authentication, one pre-requisite is to import the Token
Secret files purchased / procured from EZMCOM. Please contact EZMCOM Sales
Department for further information about the Token Secret files.
Sample contents of a Software Token and a Hardware Token file is as illustrated below:
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 10
Each such Token file contains the Secret Key associated with the Software or Hardware
Token. These secrets are always encrypted using industry standard symmetric
encryption algorithms such as Triple DES/ AES. An unauthorized exposure of this file
does not compromise the Token Secrets as they are only seen in their encrypted form
within the file.
EzIdentity™ provides two separate web based portals for a dual-controlled key
management of the Tokens:
• Operator Portal: This portal allows import of the Token files by users/ operators
of EzIdentity™
• Administration Portal: This portal allows initialization of the “Token import key”
prior to upload of the Token files in the Operator portal.
Each portal may have its own access control and disparate set of users. The “Token
import key” must be initialized into EzIdentity™ before uploading the Token files from
the Operator portal. Not doing so will result in a failure while uploading the Token files.
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 11
NOTE: Please refer to section 4.0 EzIdentity™ - Role based access control on Page 16 for
Enter your login credentials to get access to the Security Administration portal as per
the deployment – Either your AD/ LDAP/ Database credentials or as initialized during
system deployment.
3. Click Configure
Configure Group.
Group Select “Token Settings” from the settings from the navigation
menu and select “VASCO DPX key” from the drop down menu as per choice of Token
being uploaded.
Figure 3-4: Set Token Import Key – Save the Token credentials import key
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 12
The Save Configurations option is displayed, allowing you to enter the “Token Import
Key”.
Key” Refer to the out-of-band communication PIN mailer/ E-mail to obtain the key for
the batch of Token files to be imported. The Save Configuration button allows you to
save the “Token import key” and prepare the EzIdentity™ system to allow the import and
upload of the Software/ Hardware token files on the computer. Importing the Token files
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 13
NOTE: Please refer to section 4.0 EzIdentity™ - Role based access control on Page 16 for
The Browse options are displayed, allowing you to locate the token secret file on the
computer. Your tokens will be available in a one of more supported format file (e.g.
SOFT_TOKEN_SECRETS.xml or HARDWARE_CR_TOKEN_SECRET.dpx). These files will
contain tokens shared secret information along with serial numbers that gets imported
in EzIdentity.
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 14
4. Browse to the Token file(s) and click of Upload.
6. Confirm that the tokens were imported successfully by checking the displayed
status. You can also check the upload status of tokens in Inventory.
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 15
4.0 EzIdentity™
EzIdentity™ - Role based access
control
EzIdentity™ provides a granular, role based access control to its operator, administration
portals. The following access matrix establishes the various levels and roles based
Assign Token ∎ ∎
Un-assign Token ∎ ∎
HelpDesk ∎ ∎
Activate, Synchronize, Unlock, Lock, Lost, Resend activation code
Inventory view ∎ ∎
Import Token ∎ ∎
Reports ∎ ∎
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 16
Assign and Manage Operator users ∎
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 17
5.0 Data Store security
The above sections explain the dual control approach of uploading the token files. In
this section, the security of the Token secrets within the data store of EzIdentity™ is
explained.
Token File – Triple DES Triple DES uses a "key bundle" which comprises three DES keys, K1, K2
Secret and K3, each of 56 bits (excluding parity bits). The encryption algorithm
Encryption is:
ciphertext = EK3(DK2(EK1(plaintext)))
i.e., DES encrypt with K1, DES decrypt with K2, then DES encrypt with K3.
plaintext = DK1(EK2(DK3(ciphertext)))
I.e., decrypt with K3, encrypt with K2, then decrypt with K1.
Data store – Public Key Public key encryption — a message encrypted with a recipient's
Token secret Encryption
public key cannot be decrypted by anyone except a possessor
encryption
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 18
Scope Algorithm Algorithm description
PKCS#1 of the matching private key -- presumably, this will be the
owner of that key and the person associated with the public
key used. This is used for confidentiality.
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 19
6.0 Network and Systems
Systems access control
security
The communication between EzIdentity™ and other systems (e.g. Internet Banking
application, SMS Gateway) in the deployment is regulated with Transport Layer Security
(TLS/ SSL) utilizing the industry standard 128-bit SSL/ TLS over 1024-bit RSA key pairs.
The communication is also regulated with appropriate firewall rules of allowing access
from trusted servers (IP addresses and Ports) within the secure segment of deployment.
Access to any external data store – viz. Database is access controlled by providing
specific user credentials (schema) that allow EzIdentity™ need-basis and limited access.
The overall Physical, Network and access control security specifications are established
prior to a deployment to eliminate any possible breach of security and exposure.
Your input is an important factor in future revisions of this publication. Please let us know your
opinion.
Product:
Product EzIdentity™ Authentication Platform
Document:
Document Security and Technical Overview
Please send your feedback to:
to [email protected]
If you find errors or have general suggestions for improvement, please indicate the chapter, section,
and page number.
If you would like a reply, please include your name, company, email address, and telephone number.
Important:
Important If you have problems with the software, please contact your EZMCOM representative.
Security and Technical Overview 2008-2009 EZMCOM, Inc. All rights reserved. Page 20