Secure+

Secure+ Overview - Connect:Direct for UNIX and Windows
The Secure Plus feature provides enhanced security for Sterling Connect:Direct.
It uses cryptography to secure data during transmission.
Cryptography provides information security as follows:
Authentication verifies that the entity on the other end of a communications
link is the intended recipient of a transmission.
Non-repudiation provides undeniable proof of origin of transmitted data.
Data integrity ensures that information is not altered during transmission.
Data confidentiality ensures that data remains private during transmission.
Secure+ does not support Non-repudiation.
Secure+ is supported on IBM zSeries, IBM iSeries, HP Non-Stop, AIX, HP, Linux and
Windows platforms.
Secure+ History
• Version1: Station-to-Station Protocol (STS) – Deprecated in Connect:Direct 5.2
 The STS protocol is a custom three-pass variation of the basic Diffie-Hellman protocol.
 Establishes encryption between two nodes with mutual entity authentication.
 Used Certicom Security Builder 2.0
• Version 2: Secure Sockets Protocol (SSLv3)
 Add support for the SSL V3 standard
 Used Certicom SSL-Plus and RSA B-SAFE Crypto-C.
• Version 3: Transport Layer Security 1.0 (TLSv1)
 Add support for the TLS V1 standard
 Used OpenSSL
• Versioning Ends - Secure+ bundled directly with platform installations
 CDU 3.8.00 - 4.1.00 and CDW 4.4.00 – 4.6.00
 OpenSSL is branded as the Sterling Crypto-C module and passes FIPS CMVP
• Connect:Direct v5.2
 CDU 4.2 and CDW 4.7
 Uses IBM Global Security Toolkit (GSKit) – FIPS validated
SSL Protocol Links
• TLS 1.2 RFC: handshake protocol
• https://tools.ietf.org/html/rfc5246
• SSL/TLS Wikipedia protocol
• https://en.wikipedia.org/wiki/Transport_Layer_Security
• SSL/TLS certificates
• https://en.wikipedia.org/wiki/X.509
• Certificate Revocation List (CRL)
• https://en.wikipedia.org/wiki/Certificate_revocation_list
• Online Certificate Status Protocol (OCSP)
• https://en.wikipedia.org/wiki/Online_Certificate_Status_Protocol
CMS Key Store
• GSKit supports either a PKCS12 or Certificate Management System (CMS) key store.
• The default Secure+ Key Store is CMS V4 and is named cdkeystore.kdb.
• The keystore is stored in the Server\Secure+\Certificates on Windows
• The Keystore is stored in the ndm/secure+/certificates directories on UNIX.
• The CMS Key Store is a single file that contains all of the certificates used by Secure+.
• In previous versions, a trusted root and key/identify certificates flat files could be configured per node, which is no
longer supported.
• CMS Key Store certificates are identified by a label (also called alias).
• The label name and of a certificate is unique within the key store, a recent changed: the public key is no longer required
to be unique
Certificate Signing Request Process
MyCorp Deployment
Secure+ Latest Features
• New Features
•
•
•
•
•
•
•
•
IBM Global Security Kit 8 (GSKit)
http://csrc.nist.gov/groups/STM/cmvp/documents/140-1/1401val2015.htm#2420
TLS 1.1, TLS 1.2 Protocols
Security Modes: SP800-131A, NSA Suite B
Cipher Suites
ECDSA Certificate Support
IBM CMS KeyStore
IBM Key Manager (GUI and CLI)
• Deprecated Features
• Sterling Crypto-C FIPS module (OpenSSL 0.9.7m)
• STS protocol (Certicom remediation)
• Diffie-Hellman Ephemeral Cipher Suites (TLS_DHE_RSA)
• PEM Key/Trusted Certificates
• Certificate Wizard
• OpenSSL CLI
IBM Global Security Kit 8 (GSKit)
• GSKit Replaces Sterling Crypto-C FIPS module (OpenSSL 0.9.7m)
IBM Global Security Kit 8 (GSKit)
• FIPS validated on Windows and all C:D UNIX platforms
• Gsk8apicmd – GSK specific command line utility for managing CMS KeyStore.
 Supports creating self signed ECDSA certificates
 IBM Key Manager now supports ECDSA certificates
 ftp://ftp.software.ibm.com/software/webserver/appserv/library/v80/GSK_CapiCmd_UserGuide.pdf
New Secure+ Protocols
• GSKit adds support for TLSv1.1 and TLSv1.2 Protocols
• TLS 1.1 major differences from TLS 1.0
• Implicit Initialization Vector (IV) is replaced with an explicit IV to protect against CBC attacks. (CBC Beast
Attack)
• TLS 1.2 major differences from TLS 1.1
• The MD5/SHA-1 combination in the pseudorandom function (PRF) has been replaced with cipher-suitespecified PRFs. The TLS 1.2 default is SHA256.
• Signature/Hash Algorithm extension added to Client/Server Hello.
• Removes deprecated IDEA and DES cipher suites.
Security Modes: FIPS 140-2
• FIPS 140-2 supported on Connect:Direct Windows all UNIX platforms.
• Low level crypto used by Strong password Encryption and Parmfile encryption is always FIPS enabled.
• FIPS mode is configurable, per-node for both Windows and UNIX SMGR and API sessions.
• FIPS mode is a prerequisite for SP800-131A and NSA Suite B modes and is implicitly enabled when these
new modes are enabled.
Security Modes: SP800-131A
• SP800-131A Security Modes
• A requirement originated by the National Institute of Standards and Technology (NIST) which requires
longer key lengths and stronger cryptography.
• A transition mode allows the gradual adoption of strict enforcement and was scheduled to be phased out by
the end of 2013.
• Secure+ supports both SP800-131A Transition and SP800-131A (Strict).
• Enables FIPS 140-2 mode
Security Modes: NSA Suite B
• NSA Suite B Security Modes
– Suite B cryptographic algorithms are specified by the National Institute of Standards and Technology (NIST)
and are used by NSA's Information Assurance Directorate in solutions approved for protecting National
Security Systems (NSS).
– Suite B includes cryptographic algorithms for encryption, key exchange, digital signature, and hashing.
– Secure+ supports both Suite B 128 and Suite B 192.
– Enables FIPS 140-2 mode
Security Modes: Protocols
• Protocols supported by security modes
Protocol
FIPS 140-2
SP800-131A
Transition
SP800-131A
Suite B 128
Suite B 192
SSL 3.0
TLS 1.0
X
X
TLS 1.1
X
X
TLS 1.2
X
X
X
X
X
Elliptical Curve Certificates
• GSKit supports Elliptical Curve based Public/Private Key Cryptography; Certificates, Asymmetric Encryption and
Digital Signatures over TLS.
• Elliptical Curve Certificate Names
• Standards for Efficient Cryptography Group (SECG)/RFC 4492
• OpenSSL uses SECG and ANSI names
EC Key Size in
bits
256
FIPS186-3 Curve Name
OpenSSL Name
P-256
prime256v1
RFC4492 Curve
Name
secp256r1
384
P-384
secp384r1
secp384r1
512
P-521
secp521r1
secp521r1
Certificate Signatures
• Certificate Signature Algorithms supported by security modes.
Signature
Algorithm
FIPS
SP800-131A
Transition
SP800-131A
Suite B 128
Suite B 192
MD5withRSA
SHA1withRSA
X
X
SHA224withRSA
X
X
X
SHA256withRSA
X
X
X
SHA384withRSA
X
X
X
SHA512withRSA
X
X
X
SHA1withECDSA
X
X
SHA224withECDSA
X
X
X
SHA256withECDSA
X
X
X
X
SHA384withECDSA
X
X
X
X
SHA512withECDSA
X
X
X
X
Certificate Key Lengths
• Certificate Key lengths supported by security modes
Certificate Type
RSA 512
RSA 768
RSA 1024
RSA 2048
RSA 4096
ECDSA 256
ECDSA 384
ECDSA 512
FIPS
SP800-131A
Transition
X
X
X
X
X
X
X
X
X
X
X
X
SP800-131A
X
X
X
X
X
Suite B 128
X
X
Suite B 192
X
Cipher Suites
• New Cipher Suites support Elliptical Curve Digital Signature Algorithm (ECDSA) key types.
• New Cipher Suites support Elliptical Curve Diffie-Hellman Ephemeral (ECDHE) key exchange which generates
temporary public/private key pairs used to create sessions keys during the TLS handshake. This feature is called
“forward secrecy” and reduces the exposer of the public/private key associated with the certificate.
• ECDHE key exchange is available for both ECDSA and RSA keys.
• Cipher Suites no longer supported by Windows/UNIX.
–
–
–
–
TLS_DHE_RSA_WITH_AES_256_CBC_SHA
TLS_DHE_RSA_WITH_AES_128_CBC_SHA
SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA
SSL_DHE_RSA_WITH_DES_CBC_SHA
Cipher Suites – ECDHE and ECDSA and RSA authentication
Cipher ID
Name
0x0C02C
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
0x0C024
TLS
1.2
TLS
1.1
TLS
1.0
SSL
3.0
FIPS14
0-2
SP800131A
Suite B
128
Suite B
192
X
X
X
X
X
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
X
X
X
0x0C00A
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
X
X
X
0x0C02B
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
X
X
X
0x0C023
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
X
X
X
0x0C009
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
X
X
X
0x0C007
TLS_ECDHE_ECDSA_WITH_RC4_128_SHA
X
0x0C008
TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA
X
X
X
0x0C006
TLS_ECDHE_ECDSA_WITH_NULL_SHA
X
0x0C030
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
X
X
X
0x0C028
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
X
X
X
0x0C014
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
X
X
X
0x0C02F
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
X
X
X
0x0C027
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
X
X
X
0x0C013
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
X
X
X
0x0C011
TLS_ECDHE_RSA_WITH_RC4_128_SHA
X
0x0C012
TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA
X
X
X
0x0C010
TLS_ECDHE_RSA_WITH_NULL_SHA
X
X
Cipher Suites - RSA KEA and RSA authentication
Cipher ID Name
TLS TLS TLS SSL FIPS1 SP8001.2 1.1 1.0 3.0 40-2
131A
0x0009D
TLS_RSA_WITH_AES_256_GCM_SHA384
X
X
X
0x0003D
TLS_RSA_WITH_AES_256_CBC_SHA256
X
X
X
0x00035
TLS_RSA_WITH_AES_256_CBC_SHA
X
X
X
0x0009C
TLS_RSA_WITH_AES_128_GCM_SHA256
X
X
X
0x0003C
TLS_RSA_WITH_AES_128_CBC_SHA256
X
X
X
0x0002F
TLS_RSA_WITH_AES_128_CBC_SHA
X
X
X
X
X
X
0x00005
TLS_RSA_WITH_RC4_128_SHA
X
X
X
X
0x00004
TLS_RSA_WITH_RC4_128_MD5
X
X
X
0x0000A
TLS_RSA_WITH_3DES_EDE_CBC_SHA
X
X
X
X
X
0x00009
TLS_RSA_WITH_DES_CBC_SHA
X
X
X
0x0003B
TLS_RSA_WITH_NULL_SHA256
X
0x00002
TLS_RSA_WITH_NULL_SHA
X
X
X
X
0x00001
TLS_RSA_WITH_NULL_MD5
X
X
X
X
X
X
X
Suite B Suite B
128
192
Secure+ Administrator Changes
• Main Menu Changes
• Added refresh to File menu – re-opens the Parmfiles to refresh changes made via Control Center and/or
Secure+ CLI.
• Moved Password Encryption From Edit to Key Management menu
• Added Configure Key Store to Key Management menu.
• Removed STS Import/Export from Key Management menu.
• Changed Help Topics to invoke online help via default browser.
Connect:Direct Statistics Updates
Secure+ Windows Menu Items
• CD Secure+ Admin Tool (SPAdmin)
• CD Secure+ CLI (SPCli)
• IBM Key Manager (iKeyman)
Secure+ Windows Installation Directory
Secure+ Windows Nodes Directory
•
•
•
•
•
•
•
•
Location: C:\Program Files (x86)\Sterling Commerce\Connect Direct v4.7.0\Server\Secure+\Nodes
cdspacf2 is the access control file used to decrypt each file in the nodes directory.
.keystore contains the passphrase and path the CMS KeyStore
.password enables/disables strong password encryption (SPE)
• Contains 3 previous SPE key values
.local provides defaults for remaining node types.
.client configures C:D API connection security.
.seaserver configures the Sterling External Auth Feature (SEAS)
cdudemo2 and jlyon-lt2 are node to node configurations.
• Required to exist in the C:D Netmap.