Cryptographic API v12.80 Guide
Introduction
This guide describes the following toolkits, supplied by Entrust Security to help developers write applications that use nShield modules:
-
nShield PKCS #11 library
-
Microsoft CryptoAPI (MSCAPI)
-
Microsoft Cryptography API: Next Generation (CNG)
-
nCipherKM JCA/JCE cryptographic service provider.
These tool kits, like the application plug-ins supplied by Entrust, use the Security World paradigm for key storage. For an introduction to Security Worlds, see the User Guide.
Read this guide if …
Read this guide if you want to build an application that uses an nShield key‑management module to accelerate cryptographic operations and protect cryptographic keys through a standard interface rather than the full nCore API.
This guide assumes that you are familiar with the concept of the Security World, described in the User Guide. It is intended for experienced programmers and assumes that you are familiar with the following documentation:
-
The nCore Developer Tutorial, which describes how to write applications using an nShield module
-
The nCore API Documentation (supplied as HTML), which describes the nCore API.
Model numbers
Model numbering conventions are used to distinguish different nShield hardware security devices. In the table below, n represents any single digit integer.
Model number | Used for |
---|---|
NH2047 |
nShield Connect 6000 |
NH2040 |
nShield Connect 1500 |
NH2033 |
nShield Connect 500 |
NH2068 |
nShield Connect 6000+ |
NH2061 |
nShield Connect 1500+ |
NH2054 |
nShield Connect 500+ |
NH2075-B |
nShield Connect XC Base |
NH2075-M |
nShield Connect XC Medium |
NH2075-H |
nShield Connect XC High |
NH2082 |
nShield Connect XC SCAP |
NH2089-B |
nShield Connect XC Base - Serial Console |
NH2089-M |
nShield Connect XC Mid - Serial Console |
NH2089-H |
nShield Connect XC High - Serial Console |
NH3003-B |
Connect CLX Base - Serial Console |
NH3003-M |
Connect CLX Mid - Serial Console |
NH3003-H |
Connect CLX High - Serial Console |
nC2021E-000, NCE2023E-000 |
nToken PCIe |
nC3nnnE-nnn, nC4nnnE-nnn |
nShield Solo PCIe |
nC30n5E-nnn, nC40n5E-nnn |
nShield Solo XC PCIe |
nC30nnU-10, nC40nnU-10 |
nShield Edge |
Security World Software default directories
The default locations for Security World Software and program data directories on English-language systems are summarized in the following table:
Directory Name | Environment Variable | Windows Server 2012 R2 x64 | Linux |
---|---|---|---|
nShield Installation |
|
|
|
Key Management Data |
|
|
|
Dynamic Feature Certificates |
|
|
|
Static Feature Certificates |
|
|
|
Log Files |
|
|
|
By default, the Windows %NFAST_KMDATA% directories are hidden directories. To see these directories and their contents, you must enable the display of hidden files and directories in the View settings of the Folder Options. |
Dynamic feature certificates must be stored in the directory stated above. The directory shown for static feature certificates is an example location. You can store those certificates in any directory and provide the appropriate path when using the Feature Enable Tool. However, you must not store static feature certificates in the dynamic features certificates directory. For more information about feature certificates, see the User Guide for your HSM. |
The absolute paths to the Security World Software installation directory and program data directories on Windows platforms are stored in the indicated nShield environment variables at the time of installation. If you are unsure of the location of any of these directories, check the path set in the environment variable.
The instructions in this guide refer to the locations of the software installation and program data directories by their names (for example, Key Management Data) or:
-
For Windows, nShield environment variable names enclosed with percent signs (for example,
%NFAST_KMDATA%
). -
For Linux, absolute paths (for example,
/opt/nfast/kmdata/
).
NFAST_KMDATA
cannot be a symbolic link.
If the software has been installed into a non-default location:
-
For Windows, ensure that the associated nShield environment variables are re-set with the correct paths for your installation
-
For Linux, you must create a symbolic link from
/opt/nfast/
to the directory where the software is actually installed; for more information about creating symbolic links, see your operating system’s documentation.
With previous versions of Security World Software for Windows platforms, the Key Management Data directory was located by default in C:\nfast\kmdata , the Feature Certificates directory was located by default in C:\nfast\fem , and the Log Files directory was located by default in C:\nfast\log .
|
Utility help options
Unless noted, all the executable utilities provided in the bin
subdirectory of your nShield installation have the following standard help options:
-h
|--help
displays help for the utility
-v
|--version
displays the version number of the utility
-u
|--usage
displays a brief usage summary for the utility.
Further information
This guide forms one part of the information and support provided by Entrust. You can find additional documentation in the documentation
directory of the installation media for your product.
The nCore API Documentation is supplied as HTML files installed in the following locations:
-
Windows:
-
API reference for host:
%NFAST_HOME%\document\ncore\html\index.html
-
API reference for SEE:
%NFAST_HOME%\document\csddoc\html\index.html
-
-
Linux:
-
API reference for host:
/opt/nfast/document/ncore/html/index.html
-
API reference for SEE:
/opt/nfast/document/csddoc/html/index.html
-
The Java Generic Stub classes, nCipherKM JCA/JCE provider classes, and Java Key Management classes are supplied with HTML documentation in standard Javadoc format, which is installed in the appropriate nfast\java
or nfast/java
directory when you install these classes.
Release notes containing the latest information about your product are available in the release
directory of your installation media.
We strongly recommend familiarizing yourself with the information provided in the release notes before using any hardware and software related to your product. |
Security advisories
If Entrust becomes aware of a security issue affecting nShield HSMs, Entrust will publish a security advisory to customers. The security advisory will describe the issue and provide recommended actions. In some circumstances the advisory may recommend you upgrade the nShield firmware and or nShield Connect image file. In this situation you will need to re-present a quorum of administrator smart cards to the HSM to reload a Security World. As such, deployment and maintenance of your HSMs should consider the procedures and actions required to upgrade devices in the field.
The Remote Administration feature supports remote firmware upgrade of nShield Solo and nShield Connects and remote ACS card presentation. |
We recommend that you monitor the Announcements & Security Notices section on Entrust nShield Support, https://nshieldsupport.entrust.com, where any announcement of nShield Security Advisories will be made.
Contacting Entrust nShield Support
To obtain support for your product, contact Entrust nShield Support, https://nshieldsupport.entrust.com.