007-000997-008 PayShield 10K Console Guide V1.8a Rev A
007-000997-008 PayShield 10K Console Guide V1.8a Rev A
007-000997-008 PayShield 10K Console Guide V1.8a Rev A
com
payShield® 10K
Console Guide
007-000997-008
payShield 10K Console Guide
All information herein is either public information or is the property of and owned solely by Thales DIS
France S.A. and/or its subsidiaries or affiliates who shall have and keep the sole right to file patent
applications or any other kind of intellectual property protection in connection with such information.
Nothing herein shall be construed as implying or granting to you any rights, by license, grant or
otherwise, under any intellectual and/or industrial property rights of or concerning any of Thales DIS
France S.A. and any of its subsidiaries and affiliates (collectively referred to herein after as “Thales”)
information.
This document can be used for informational, non-commercial, internal and personal use only provided
that:
• The copyright notice below, the confidentiality and proprietary legend and this full warning notice
appear in all copies.
• This document shall not be posted on any network computer or broadcast in any media and no
modification of any part of this document shall be made.
Use for any other purpose is expressly prohibited and may result in severe civil and criminal liabilities.
The information contained in this document is provided "AS IS" without any warranty of any kind.
Unless otherwise expressly agreed in writing, Thales makes no warranty as to the value or accuracy of
information contained herein.
The document could include technical inaccuracies or typographical errors. Changes are periodically
added to the information herein. Furthermore, Thales reserves the right to make any change or
improvement in the specifications data, information, and the like described herein, at any time.
Thales hereby disclaims all warranties and conditions with regard to the information contained herein,
including all implied warranties of merchantability, fitness for a particular purpose, title and non-
infringement. In no event shall Thales be liable, whether in contract, tort or otherwise, for any indirect,
special or consequential damages or any damages whatsoever including but not limited to damages
resulting from loss of use, data, profits, revenues, or customers, arising out of or in connection with the
use or performance of information contained in this document.
Thales does not and shall not warrant that this product will be resistant to all possible attacks and shall
not incur, and disclaims, any liability in this respect. Even if each product is compliant with current
security standards in force on the date of their design, security mechanisms' resistance necessarily
evolves according to the state of the art in security and notably under the emergence of new attacks.
Under no circumstances, shall Thales be held liable for any third party actions and in particular in case
of any successful attack against systems or equipment incorporating Thales products. Thales disclaims
any liability with respect to security for direct, indirect, incidental or consequential damages that result
from any use of its products. It is further stressed that independent testing and verification by the
person using the product is particularly encouraged, especially in any application in which defective,
incorrect or insecure functioning could result in damage to persons or property, denial of service or loss
of privacy.
Copyright © 2018-2023 Thales Group. All rights reserved. Thales and the Thales logo are trademarks
and service marks of Thales and/or its subsidiaries and affiliates and are registered in certain countries.
All other trademarks and service marks, whether registered or not in specific countries, are the
properties of their respective owners.
Follow this link to find the End User Licensing Agreement: https://cpl.thalesgroup.com/legal
Contents
Contents ........................................................................................................................................................ 3
1 Introduction ............................................................................................................................................ 5
1 Introduction
This guide contains all the details for the payShield 10K Console Commands. Thales recommends that
payShield Manager is used to manage payShield 10K however the Console Commands are still provided as an
alternative. The Console Commands can be accessed via the Console connected directly to payShield 10K, or
by using the Virtual Console in payShield Manager. When using the Virtual Console, please note that several
Console Commands are not available.
The Console Commands are listed alphabetically in Section 2 and by function in Section 3 for easy reference.
4 Configuration Commands
The payShield 10K provides the following console commands to support configuration operations:
Command: RESET
Function: Returns the HSM to the state it was in when it was shipped from the factory,
so that it can be securely taken out of service – e.g. for return to Thales for
repair.
Any configuration changes (including port settings) that the customer has
applied will be reversed, and any customer data and logs will be erased.
If the HSM is to be returned (e.g. after it has been repaired), a record of all
the settings should be made before using this command such that the
settings can be re-applied after the HSM's return.
This command also reports whether the HSM is currently configured as it left
the factory.
Notes: This utility cannot reset firmware or licenses installed on the HSM.
Therefore, after use of this facility, the HSM will still have the most recently
installed firmware and license – which may be different from the firmware
and license when the HSM was shipped from the factory.
At the end of the reset process, the payShield 10K will automatically
perform a restart. If the console does not display correctly after this, the
payShield 10K should be restarted manually. Turn the unit off and then back
on.
Secure>
Command: UPLOAD
Function: With this command, you can upload new software and new licenses from the
console.
Notes: The software /license must be provided on a suitable USB memory stick inserted
into the USB-A socket on the rear of the payShield 10K.
Secure>
Secure>
Command: CONFIGCMDS
Function: To view the list of enabled host and console commands, and (if in secure
state) to enable or disable host and console commands. All available
commands are disabled by default.
Commands are enabled or disabled using the following syntax:
[+ or -] [C or H] [<Command Code>]
+ indicates that the specified command should be enabled.
- indicates that the specified command should be disabled.
C indicates that <Command Code> is a Console command.
H indicates that <Command Code> is a Host command.
<Command Code> is the command code to be enabled or disabled, and may
contain the wildcard character '*'. If the first character is '*', then the second
character is absent, and this matches all command codes of the specified
type. If the second character is '*', then this matches all command codes of
the specified type starting with the given first character.
Authorization: The HSM must be in the secure state to enable/disable host and console
commands. The current status of enablement of host and console commands
can be viewed in any state.
Example 1: This example demonstrates the use of the CONFIGCMDS console command
to view the list of enabled host and console commands.
Online>
Example 2: This example demonstrates the use of the CONFIGCMDS console command
to enable one console command (DE) and disable one host command (A4).
Secure>
Example 3: This example demonstrates the use of the CONFIGCMDS console command
using the wildcard character '*' to disable all non-core host commands, and
then enable just those host commands beginning with 'A'.
Secure>
Command: CONFIGPB
Function: To view the list of enabled PIN block formats, and (if in secure state) to
enable or disable individual PIN block formats.
Authorization: The HSM must be in the secure state to enable/disable PIN block formats.
The current status of PIN Block format enablement can be viewed in any
state.
Example 1: This example demonstrates the use of the CONFIGPB console command to
view the list of enabled PIN block formats.
Online>
Example 2: This example demonstrates the use of the CONFIGPB console command to
enable the use of HSM PIN Block format 03.
Secure>
Function: To set the security configuration of the HSM and some processing parameters.
CS converts all lower-case alpha values to upper case for display purposes,
except for the Card issuer Password. Operation is menu-driven, as shown in
the examples. The security settings can optionally be saved to a smartcard.
Authorization: The HSM must be in the secure state to run this command.
Inputs: PIN length [4-12]: a one or two-digit number in the range 4 to 12.
Echo [oN/ofF]: N or F
Atalla ZMK variant support [oN/ofF]: N or F
Transaction key scheme: Racal, Australian or None? [R/A/N]: R or A or N
User storage key length [S/D/T/V]: S, D, T, or V
Display general information on payShield Manager Landing page? [Y/N]: Y or
N
Default LMK identifier [0-x]: Integer between 0 and x
Management LMK identifier [0-x] : Integer between 0 and x
Whether to erase the installed LMKs to enable the following settings to be
changed.
Select clear PINs? [Y/N]: Y or N
Enable ZMK translate command? [Y/N]: Y or N
Enable X9.17 for import? [Y/N]: Y or N
Enable X9.17 for export? [Y/N]: Y or N
Solicitation batch size [1-1024]: a one to four-digit number, range 1 to 1024.
Single/double length ZMKs [S/D]: S or D
Decimalization table Encrypted/Plaintext [E/P]: E
Enable Decimalization Table Checks? [Y/N]: Y or N
PIN encryption algorithm [A/B]: A or B
Use deprecated proprietary format (Tag J) when using PIN Blocks under AES
Key Block LMK [Y/N]: Y or N
Whether to use the default Card Issuer password or to enter a different value
(of 8 alphanumeric printable characters).
Authorized State required when importing DES key under RSA key? [Y/N]: Y
or N
Minimum HMAC verification length in bytes [5-64]: number, range 5-64
Enable PKCS#11 import and export for HMAC keys? [Y/N]: Y or N
Enable ANSI X9.17 import and export for HMAC keys? [Y/N]: Y or N
Enable ZEK/TEK encryption of ASCII data or Binary data or None? [A/B/N]: A
or B or N
Restrict Key Check Values to 6 hex chars? [Y/N]: Y or N
Return PIN length in PIN translation response? [Y/N]: Y or N
Enable multiple authorized activities? [Y/N]: Y or N
Allow persistent authorized activities [Y/N]: Y or N
Enable support for variable length PIN offset? [Y/N]: Y or N
Enable weak PIN checking? [Y/N]: Y or N
Enable PIN Block format 34 as output format for PIN translations to ZPK?
[Y/N]: Y or N
Enable translation of account number for LMK encrypted PINs [Y/N]: Y or N.
Use HSM clock for date/time validation? [Y/N]: Y or N
Additional padding to disguise key length? [Y/N] : Y or N
Key export and import in trusted format only? [Y/N] : Y or N
Protect MULTOS cipher data checksums? [Y/N] : Y or N
Enable Key Scheme Tag 'X' (X9.17) for storing keys under LMK? [Y/N] : Y or
N
Enable use of Tokens in PIN Translation? [Y/N]: Y or N
Enable use of Tokens in PIN Verification? [Y/N]: Y or N
Enable PIN translation to BDK encryption? [Y/N]: Y or N
Ensure LMK Identifier in command corresponds with host port? [Y/N]: Y or N
Ignore LMK ID in Key Block Header? [Y/N]: Y or N
Enable import and export of RSA Private keys? [Y/N]: Y or N
Prevent Single-DES keys masquerading as double or triple-length key? [Y/N]:
Y or N
Disable Single-DES? [Y/N]: Y or N
Card/password authorization (local) [C/P]: C or P (Card or Password).
Restrict PIN block usage for PCI HSM compliance? [Y/N]: Y or N.
Enforce key type 002 separation for PCI HSM compliance [Y/N]: Y or N.
Enforce Authorization Time Limit? [Y/N]: Y or N.
Enforce Multiple Key Components? [Y/N]: Y or N.
Enforce PCI HSMv3 Key Equivalence for Key Wrapping? [Y/N]: Y or N.
Enforce minimum key strength of 1024-bits for RSA signature verification?
[Y/N]: Y or N.
Enforce minimum key strength of 2048-bits for RSA and ECC? [Y/N]: Y or N.
Save SECURITY settings to smartcard? [Y/N]: Y or N
Notes: For software versions which have been PCI HSM certified, in order to be PCI
HSM compliant a number of security settings must have specific values as
follows:
o Disable Single-DES? – must be “Y”
o Card/password authorization (local) – must be "C"
o Restrict PIN block usage for PCI HSM compliance – must be "Y"
o Enforce key type 002 separation for PCI HSM compliance –must be "Y"
o Enforce Authorization Time Limit – must be "Y"
o Enforce Multiple Key Components – must be "Y"
o Enforce PCI HSMv3 Key Equivalence for Key Wrapping – must be “Y”
o Enforce minimum key strength of 1024-bits for RSA signature verification –
must be “Y”
o Enforce minimum key strength of 2048-bits for RSA – must be “Y”
Once all of these settings are at the PCI HSM compliant value, they cannot
be changed unless the RESET command is used.
If the value of the setting "Enforce key type 002 separation for PCI HSM
compliance" is "Y", then:
o Key Type Table 2 is in effect. If the setting has a value of "N", then the
HSM is not being operated in a PCI HSM compliant manner and Key
Type Table 1 is in effect.
o The following Host commands are disabled: AA, AE, FC, FE, FG, HC,
KA, OE
“Prevent single-DES keys masquerading as double or triple-length key?”
must be “Y”
Secure> CS <Return>
PIN Length [4-12]: 8 <Return>
Echo [oN/ofF]: N <Return>
Atalla ZMK variant support [oN/ofF]: F <Return>
Transaction Key Scheme: Racal, Australian or None [R/A/N]: N
<Return>
User storage key length [S/D/T/V](SINGLE): <Return>
Display general information on payShield Manager Landing page?
[Y/N]: Y <Return>
Default LMK identifier [0-4](0): <Return>
Management LMK identifier [0-4](0): <Return>
Example 2: Settings affecting PCI HSM compliance do not have compliant values. The user wishes
to use the default card issuer password.
Secure> CS <Return>
[Y/N](NO): <Return>
Use HSM clock for date/time validation? [Y/N](YES): <Return>
Additional padding to disguise key length? [Y/N](NO): <Return>
Key export and import in trusted format only? [Y/N](NO): <Return>
Protect MULTOS cipher data checksums? [Y/N](YES): <Return>
Enable Key Scheme Tag 'X' (X9.17) for storing keys under LMK?
[Y/N](NO): <Return>
Enable use of Tokens in PIN Translation? [Y/N](NO): <Return>
Enable use of Tokens in PIN Verification? [Y/N](NO): <Return>
Enable PIN translation to BDK encryption? [Y/N](YES): <Return>
Ensure LMK Identifier in command corresponds with host port?
[Y/N](NO): <Return>
Ignore LMK ID in Key Block Header? [Y/N](NO): <Return>
Enable import and export of RSA Private keys? [Y/N](NO): <Return>
Example 3: Final setting affecting PCI HSM compliance is about to be set to compliant value. The
user is specifying a different card issuer software.
Secure> CS <Return>
Secure>
Example 4: All settings affecting PCI HSM compliance have compliant values
Secure> CS <Return>
The following settings are all PCI HSM compliant and cannot be
changed.
Prevent single-DES keys masquerading as double or triple-length
key: YES
Single-DES: DISABLED
Card/password authorization (local): C
Restrict PIN block usage for PCI HSM Compliance: YES
Enforce key type separation for PCI HSM compliance: YES
Enforce Authorization Time Limit: YES
Enforce Multiple Key Components: YES
Enforce PCI HSMv3 Key Equivalence for Key Wrapping: YES
Enforce minimum key strength of 1024-bits for RSA signature
verification: YES
Enforce minimum key strength of 2048-bits for RSA: YES
Function: Reports the security configuration of the HSM and some processing
parameters, plus the LMK check value.
Inputs: None.
Errors: None.
Notes: Where the software has been PCI HSM certified, in order to be PCI HSM
compliant a number of security settings must have specific values as
follows:
o Disable Single-DES? – must be “Y”
o Card/password authorization (local) – must be "C"
o Restrict PIN block usage for PCI HSM compliance – must be "Y"
o Enforce key type 002 separation for PCI HSM compliance –must be "Y"
o Enforce Authorization Time Limit – must be "Y"
o Enforce Multiple Key Components – must be "Y"
o Enforce PCI HSMv3 Key Equivalence for Key Wrapping – must be “Y”
o Enforce minimum key strength of 1024-bits for RSA signature
verification – must be “Y”
o Enforce minimum key strength of 2048-bits for RSA – must be “Y”
Once all of these settings are at the PCI HSM compliant value, they cannot
be changed unless the RESET command is used.
Example 1: Settings affecting PCI HSM compliance do not all have compliant values
Online> QS <Return>
PIN length: 04
Encrypted PIN length: 05
Echo: OFF
Atalla ZMK variant support: OFF
Transaction key support: NONE
User storage key length: SINGLE
Display general information on payShield Manager Landing Page:
NO
Default LMK identifier: 00
Management LMK identifier: 00
Authorized state required when importing DES key under RSA key:
YES
Minimum HMAC length in bytes: 10
Enable PKCS#11 import and export for HMAC keys: NO
Enable ANSI X9.17 import and export for HMAC keys: NO
Enable ZEK/TEK encryption of ASCII data or Binary data or None:
NONE
Restrict key check values to 6 hex chars: YES
Return PIN length in PIN translation response: YES
Enable multiple authorized activities: YES
Allow persistent authorized activities: NO
Enable variable length PIN offset: NO
Enable weak PIN checking: NO
Enable PIN block Format 34 as output format for PIN
translations to ZPK: NO
Enable translation of account number for LMK encrypted PINs: NO
NOTE: The following settings are not all PCI HSM compliant.
Prevent single-DES keys masquerading as double or triple-length
keys: YES
Single-DES: DISABLED
Card/password authorization (local): C
Restrict PIN block usage for PCI HSM Compliance: NO
Enforce key type 002 separation for PCI HSM compliance: NO
Enforce Authorization Time Limit: YES
Enforce Multiple Key Components: YES
Enforce PCI HSMv3 Key Equivalence for Key Wrapping: YES
Enforce minimum key strength of 1024-bits for RSA signature
verification: YES
Enforce minimum key strength of 2048-bits for RSA: YES
Online>
PIN length: 04
Encrypted PIN length: 05
Echo: OFF
Atalla ZMK variant support: OFF
Transaction key support: NONE
User storage key length: SINGLE
Display general information on payShield Manager Landing Page:
NO
Default LMK identifier: 00
Management LMK identifier: 00
Select clear PINs: NO
Enable ZMK translate command: NO
Enable X9.17 for import: NO
Enable X9.17 for export: NO
Solicitation batch size: 1024
ZMK length: DOUBLE
Decimalization tables: ENCRYPTED
Decimalization table checks: ENABLED
PIN encryption algorithm: A
Use deprecated proprietary format (Tag J) when using PIN Blocks
under AES Key Block LMK: NO
Authorized state required when importing DES key under RSA key:
YES
Minimum HMAC length in bytes: 10
Enable PKCS#11 import and export for HMAC keys: NO
Enable ANSI X9.17 import and export for HMAC keys: NO
Enable ZEK/TEK encryption of ASCII data or Binary data or None:
NONE
Restrict key check values to 6 hex chars: YES
Return PIN length in PIN translation response: YES
Enable multiple authorized activities: YES
Allow persistent authorized activities: NO
Enable variable length PIN offset: NO
Enable weak PIN checking: NO
Enable PIN block Format 34 as output format for PIN
translations to ZPK: NO
Enable translation of account number for LMK encrypted PINs: NO
The following settings are all PCI HSM compliant and cannot be
changed:
Prevent single-DES keys masquerading as double or triple-length
keys: YES
Single-DES: DISABLED
Card/password authorization (local): C
Restrict PIN block usage for PCI HSM Compliance: YES
Enforce key type 002 separation for PCI HSM compliance: YES
Enforce Authorization Time Limit: YES
Enforce Multiple Key Components: YES
Enforce PCI HSMv3 Key Equivalence for Key Wrapping: YES
Enforce minimum key strength of 1024-bits for RSA signature
verification: YES
Enforce minimum key strength of 2048-bits for RSA: YES
Online>
Authorization: The HSM must be in the offline or secure state to run this command.
If settings relating to Secure Host Communications (TLS) or Access
Control Lists are to be changed, the payShield 10K must be in Secure
state.
Inputs: The options are menu driven and the inputs vary depending on the
communication mode selected. See examples below.
o Unit Address:
Valid Range: 0-255; Default=0
The unit address for this control unit.
Outputs: None.
Notes: To achieve maximum throughput on the HSM, the TCP/IP and FICON
interfaces need to be driven with multiple connections (or threads).
Optimum performance is normally achieved with 4 - 8 connections
(depending on the HSM performance model and the commands being
processed). Running with only a single thread can significantly reduce the
throughput of the HSM, and means that you will not be able to reach the
rated throughput for the machine.
It is recommended that the Host Ethernet Ports, the Management Ethernet
Port, and the Auxiliary Ethernet Port are all on different IP subnets from each
other.
Where dual Ethernet host ports are in use, 2 different IP addresses at the
Host computer must be used to drive the 2 ports on the HSM.
The use of TLS v1.2 is supported on the payShield 10K:
o TLS traffic can be supported at the same time as non-TLS traffic.
o The specified number of connections are shared between TLS and
non-TLS traffic.
o The HSM can be forced to accept only TLS traffic by setting the UDP
and TCP options to "N".
For regular TCP communications (not protected by TLS), a Well-Known Port
Address is defined (default value 1500).
For TLS communications, a Well-Known Port Address is defined (default
value 2500).
Errors: None.
Secure> CH <Return>
Interface Number 1:
IP Configuration Method? [D]HCP or [S]tatic (DHCP): S
<Return>
Enter IP Address (10.0.0.20): 10.0.0.20 <Return>
Enter subnet mask (255.255.255.0): <Return>
Enter Default Gateway Address (10.0.0.1): <Return>
SPEED OPTIONS:
0 Autoselect
1 10baseT full-duplex
2 100baseT full-duplex
3 1000baseT full-duplex
Interface Number 2:
IP Configuration Method? [D]HCP or [S]tatic (DHCP): S
Enter IP Address (169.254.254.1): 10.0.0.21
Enter subnet mask (255.255.255.0):
Enter Default Gateway Address (169.254.254.1): 10.0.0.1
SPEED OPTIONS:
0 Autoselect
1 10baseT full-duplex
2 100baseT full-duplex
3 1000baseT full-duplex
Secure>
Secure> CH <Return>
SPEED OPTIONS:
0 Autoselect
1 10baseT full-duplex
2 100baseT full-duplex
3 1000baseT full-duplex
Secure>
Secure> CH <Return>
SPEED OPTIONS:
0 Autoselect
1 10baseT full-duplex
2 100baseT full-duplex
3 1000baseT full-duplex
Secure>
Secure> CH <Return>
Secure>
Inputs: None.
Errors: None.
Example 1: In this example, Ethernet communications using TCP/IP and TLS are
selected – all types of traffic are allowed. The IP addresses are set up as
static, manually-entered addresses. Access Control Lists are to be used,
and will be set up using the CONFIGACL console command.
Online> QH <Return>
Interface Number: 1
IP Configuration Method: static
IP address: 192.168.200.36
Subnet mask: 255.255.255.0
Default Gateway: 192.168.200.3
MAC address: 00:d0:fa:04:27:62
Port speed: 1000baseT full-duplex
Interface Number: 2
IP Configuration Method: static
IP address: 192.168.202.110
Subnet mask: 255.255.255.0
Default Gateway: 192.168.202.3
MAC address: 00:d0:fa:04:27:63
Port speed: 1000baseT full-duplex
Online>
Example 2: In this example, Ethernet communications using TCP/IP and TLS are
selected - but UDP, and unprotected TCP traffic is not allowed (i.e. all traffic
must be TLS protected). The IP address is set up as a dynamic address to
be obtained from a DHCP server. Access Control Lists are not being used.
Only one host port has been configured.
Online> QH <Return>
Interface Number: 1
IP Configuration Method: DHCP
Network Name: HSM1-Host-1
IP address: 192.168.200.36
Subnet mask: 255.255.255.0
Default Gateway: 192.168.200.3
MAC address: 00:d0:fa:04:3b:4a
Example 3: In this example, the host interface has been configured for FICON
communications
Online> QH <Return>
Online>
Command: CONFIGACL
Function: To display and amend the Access Control Lists (ACLs) for the HSM's host
ports. When ACL checking is enabled using the CH console command,
traffic from hosts is accepted only where the host's IP address is included in
one of the ACL entries set up using this command.
Notes: This command sets up the IP addresses and ranges that will be used
when checking traffic against the ACL, but the use of ACLs must be
enabled in the CH console command before the ACLs configured in this
command are applied.
If the CH console command enables ACL checking but no ACL entries
have been configured using CONFIGACL, then all host traffic will be
blocked.
ACLs apply only to Ethernet (including TLS) host traffic. They have no
effect when FICON host communications are being used.
Example 1: In this example, only one host interface has been configured in the CH
command. There are no existing ACL entries. The user sets up a single
address ACL entry, then adds a mask ACL entry, then adds a range ACL
entry, and finally deletes the single address ACL entry.
3) 10.10.40.0 to 10.10.40.255
(Mask:255.255.255.0)
Secure>
Example 2: In this example, both host interfaces have been configured in the CH
command. The user simply views the existing ACL for host interface 2, and
then exits.
Interface 1: 10.10.100.216
Interface 2: 10.10.101.216
Secure>
Function: To select and configure a connection to a printer attached to the HSM via a
USB port. The HSM is compatible with most printers via its USB interfaces:
A serial printer may be connected using a USB-to-serial converter cable
available from Thales
A parallel printer may be connected using a USB-to-parallel converter cable
available from Thales
The new settings come into effect immediately after the command has
completed.
Notes: A printer must be connected to the HSM before the CP command is invoked.
Example 1: This example demonstrates the configuration of a printer attached to the HSM via a USB-to-
serial cable.
Offline> CP <Return>
BAUD RATES
1. 1200
2. 2400
3. 4800
4. 9600 (current value)
5. 19200
6. 38400
7. 57600
8. 115200
Device baud rate (ENTER for no change): 8 <Return>
DATA BITS
1. 5
2. 6
3. 7
4. 8 (current value)
Device data bits (ENTER for no change): <Return>
STOP BITS
1. 1 (current value)
2. 2
Device stop bits (ENTER for no change): <Return>
PARITY
1. none (current value)
2. odd
3. even
Device parity (ENTER for no change): <Return>
Flow Control
1. none
2. software (current value)
3. hardware
Printer flow_ctl (ENTER for no change): <Return>
Offline>
Example 2: This example demonstrates the configuration of a printer attached to the HSM via a USB-to-
parallel cable.
Offline> CP <Return>
Offline>
Example 3: This example demonstrates the configuration of a printer attached to the HSM via a native USB
cable.
Offline> CP <Return>
Offline>
Example 1: This example demonstrates viewing the configuration of a printer attached to the HSM via a
USB-to-serial cable.
Online> QP <Return>
Online>
Example 2: This example demonstrates viewing the configuration of a printer attached to the HSM via a
USB-to-parallel cable.
Online> QP <Return>
Online>
Example 3: This example demonstrates viewing the configuration of a printer attached to the HSM via a
native USB cable.
Online> QP <Return>
Delay: 0 milliseconds
Print test page? [Y/N]: N <Return>
Online>
Function: To configure the Management port, which is an Ethernet port used only for
management of the HSM. If connection to the host is via Ethernet then the
Ethernet host port is used for that purpose. The Management Ethernet port is
used to update the HSM's internal software, updating licensing information,
and for enabling management of a HSM via the payShield Manager.
The new settings come into effect a few seconds after the command has
completed.
It is recommended that the Host Ethernet Ports, the Management Ethernet
Port, and the Auxiliary Ethernet Port are all on different IP subnets from each
other.
Authorization: The HSM must be in the offline or secure state to run this command.
Outputs: None.
Errors: None.
Example 1: In this example, the management port has its IP address set up manually.
Offline> CM <Return>
SPEED OPTIONS:
0 Autoselect
1 10BaseT half-duplex
2 10BaseT full-duplex
3 100BaseTX half-duplex
4 100BaseTX full-duplex
5 1000BaseT half-duplex
6 1000BaseT full-duplex
Offline>
Example 2: In this example, the management port has its IP address set up automatically
by a DHCP server.
Secure> CM <Return>
SPEED OPTIONS:
0 Autoselect
1 10BaseT half-duplex
2 10BaseT full-duplex
3 100BaseTX half-duplex
4 100BaseTX full-duplex
5 1000BaseT half-duplex
6 1000BaseT full-duplex
Secure>
Inputs: None.
Errors: None.
Example 1: In this example, the management port has its IP address set up manually.
Online> QM <Return>
Online>
Example 2: In this example, the management port has its IP address set up automatically
by a DHCP server.
Online> QM <Return>
Online>
Function: To configure the Auxiliary port, which is an Ethernet port currently used only
for transmission of SNMP traffic from the HSM.
The new settings come into effect a few seconds after the command has
completed.
It is recommended that the Host Ethernet Ports, the Management Ethernet
Port, and the Auxiliary Ethernet Port are all on different IP subnets from each
other.
Authorization: The HSM must be in the offline or secure state to run this command.
Outputs: None.
Errors: None.
Example 1: In this example, the auxiliary port has its IP address set up manually.
Offline> CA <Return>
SPEED OPTIONS:
0 Autoselect
1 10BaseT half-duplex
2 10BaseT full-duplex
3 100BaseTX half-duplex
4 100BaseTX full-duplex
5 1000BaseT half-duplex
6 1000BaseT full-duplex
Offline>
Example 2: In this example, the auxiliary port has its IP address set up automatically by a
DHCP server.
Secure> CA <Return>
SPEED OPTIONS:
0 Autoselect
1 10BaseT half-duplex
2 10BaseT full-duplex
3 100BaseTX half-duplex
4 100BaseTX full-duplex
5 1000BaseT half-duplex
6 1000BaseT full-duplex
Secure>
Inputs: None.
Outputs: IP address.
Network name, if DHCP configured.
Subnet mask.
Default gateway.
MAC address.
Ethernet speed setting.
Errors: None.
Example 1: In this example, the auxiliary port has its IP address set up manually.
Online> QA <Return>
Online>
Example 2: In this example, the auxiliary port has its IP address set up automatically by a
DHCP server.
Online> QA <Return>
Online>
Function: To enable or disable the motion alarm. The temperature alarm is permanently
enabled. The HSM alarm circuitry typically needs to be turned off if the HSM
is to be moved. The alarm should be turned on while the HSM is in service or
being stored. The alarm setting can optionally be saved to a smartcard.
Authorization: The HSM must be in the secure state to run this command.
Outputs: None.
Example 1: In this example, the setting is being made to a less secure setting.
Secure> CL <Return>
Secure>
Example 2: In this example, the setting is being made to a more secure setting.
Secure> CL <Return>
Secure>
Inputs: None.
Errors: None.
Online>
Function: To display the current setting of the period over which utilization statistics is to
be collected when Instantaneous Utilization Data is requested. This command
also allows the setting to be amended (in Offline/Secure states only).
Authorization: The HSM does not require any authorization to run this command.
Inputs: Amended value for Instantaneous Utilization Period. (It is suggested that the
period should not be set to less than 10 seconds, as data collected over very
short periods will not be indicative of actual activity.)
Online>
Offline>
Function: To suspend or resume the collection of Utilization Data and the incrementing
of the count of seconds over which the data is being collected. This allows
data collection to be suspended if, for example, the HSM is taken out of
service or temporarily re-purposed. It ensures that cps rates are not diluted by
averaging command volumes over the total elapsed time, but only over the
time that data is being collected
Authorization: The HSM does not require any authorization to run this command.
Offline>
Function: To suspend or resume the collection of Health Check counts. This allows
data collection to be suspended if, for example, data is not required.
Authorization: The HSM does not require any authorization to run this command.
Offline>
Authorization: The HSM does not require any authorization to run this command.
V3 Users:
None
0. Management Port
1. Auxiliary Port
Secure>
Authorization: The HSM does not require any authorization to run this command.
The HSM must be in Secure state.
Secure>
Authorization: The HSM does not require any authorization to run this command.
The HSM must be in Secure state.
Secure>
Command: TRAP
Authorization: The HSM does not require any authorization to run this command.
Offline>
Offline>
Command: TRAPADD
Secure>
Command: TRAPDEL
Secure>
Command: QMAC
Host 1: 3c:fd:fe:ee:62:b0
Host 2: 3c:fd:fe:ee:62:b1
Management: 3c:fd:fe:ee:62:b2
Auxiliary: 3c:fd:fe:ee:62:b3
Secure>
Authorization: If the Fraud Detection settings are to be edited, the HSM must be:
in the offline or secure state to run this command, and
either in the Authorized State, or the activity audit.console must be
authorized, using the Authorizing Officer cards of the Management
LMK.
Outputs: None.
Errors: Not Authorized - the HSM is not authorized to perform this operation.
Invalid Entry - the value entered is invalid.
Notes: If any of the limits set by this command are exceeded, an entry will be
made in the Audit Log, and console command A7 must be used to re-
enable PIN verification.
Setting the HSM reaction to Logging only and the limits to zero will
result in Fraud Detection not being recorded in the Health Check data.
(The term "Logging" as used in the screen prompt refers to logging in
the Health Check data, not in the Audit Log.)
Offline-AUTH>
Authorization: The HSM must be in the offline state to run this command. The HSM must be
either in the Authorized State, or the activity audit.console must be
authorized, using the Authorizing Officer cards of the Management LMK.
Inputs: None.
Outputs: None.
Errors: Not Authorized - the HSM is not authorized to perform this operation.
Command only allowed from offline.
PIN Verification is not currently disabled
6 Diagnostic Commands
The payShield 10K provides the following console commands to support diagnostic operations:
Command: DT
Authorization: The HSM does not require any authorization for this command.
Inputs: Optional qualifiers to modify scope and detail of output. Options are:
all run all the commands (default option)
verbose be verbose in the output
battery run the battery diagnostics
des run the DES diagnostics
health run the health check diagnostics
aes run the AES KAT
ecdsa run the ECDSA KAT
md5 run the MD5 KAT
mem run the memory diagnostics
psu run the power supply diagnostics
rng run the random number generator diagnostics
rsa run the RSA KAT
rtc run the real-time clock diagnostics
scr run the smart card reader diagnostics
sha run the SHA KAT
temp run the temperature diagnostics
fans run the fans diagnostics
volt run the voltage diagnostics
Note that the multiple options can be combined (e.g." dt temp verbose"; "dt
volt rsa")
Note that whilst the command code ("dt") is not case sensitive, the options
listed above are.
Errors: None.
Notes: The diagnostics are run automatically on a daily basis at the time specified
using the ST Console command.
Battery: OK
AES: OK
DES: OK
ECDSA: OK
HMAC: OK
MD5: OK
Memory: OK
Power Supply: OK
RNG: OK
RSA: OK
Real-Time Clock: OK
SHA: OK
SCR: OK
Temperature: OK
Fans: OK
Voltages: OK
TCP Server: Up
UDP Server: Up
FICON Server: Not Enabled
Local/Remote Manager Server: Up
Host Ethernet Link 1: Up
Host Ethernet Link 2: Up
Host FICON Link: Not Enabled
Unit Tampered?: No
Fraud limits exceeded?: No
PIN attack limit exceeded?: No
Diagnostics complete
Offline>
Battery: OK
Voltage: 3500 mV
HSM will enter tamper state if voltage drops below
2500 mV
Max=46.3C 115.3F)
Sensor 2 : 38.6C 101.5F (Min=36.6C 97.9F
Max=40.4C 104.7F)
Sensor 3 : 35.2C 95.4F (Min=33.1C 91.6F
Max=36.6C 36.6F)
Fans: OK
Fan 1: 8000 RPM (target: 8000 RPM)
Fan 2: 7868 RPM (target: 8000 RPM)
Voltages: OK
TCP Server: Up
UDP Server: Up
FICON Server: Not Enabled
Local/Remote Manager Server: Up
Host Ethernet Link 1: Up
Host Ethernet Link 2: Up
Host FICON Link: Not Enabled
Unit Tampered?: No
Fraud limits exceeded?: No
PIN attack limit exceeded?: No
Diagnostics complete
Online>
Function: To display details of the software release number, revision number and build
number.
Authorization: The HSM does not require any authorization to run this command.
Inputs: None.
Outputs: Software revision numbers, serial numbers, license details and FIPS algorithm
information.
Errors: None.
Notes: The software revision reported by the VR command will have one of the following
forms:
xxxx-10xx – this indicates that this software has been PCI HSM certified
and that the appropriate security settings have been set (e.g. by using the
CS Console command) to the required values.
xxxx-00xx – this indicates that either:
o this version of software is not PCI HSM certified, or
o this version of software is PCI HSM certified but one or more of the
appropriate security settings have not been set (e.g. by using the
CS Console command) to the required values.
Example: Software which has not been configured to be PCI HSM compliant.
Secure>vr
Fan #1:
Serial number: FM01441900758
Fan #2:
Serial number: FM01441900757
Premium Package:
- Premium Key Management
- Magnetic Stripe Issuing
- Magnetic Stripe Transaction Processing
- EMV Chip, Contactless & Mobile Issuing
- EMV Transaction Processing
- User Authentication
- Data Protection
Optional Licenses:
- Legacy Commands
- LMKx20
- Remote payShield Manager
- Visa DSP
Secure>
Function: To display a list of enabled host and console commands. Commands listed in the
output are licensed AND enabled. Commands omitted from the output are either not
licensed, or not enabled. Console command CONFIGCMDS can be used to
enable/disable individual commands.
GETCMDS can optionally generate a hash (message digest) over the set of enabled
commands, thus providing a simple mechanism to verify that two (or more) HSMs
have the same set of commands enabled.
Note: Some of the commands listed may require additional license options enabled.
Authorization: The HSM does not require any authorization to run this command.
Inputs: [-hl]
Switch Description
<blank> Display a list of all host & console commands that are
implemented AND licensed AND enabled.
-h Display a hash of the host & console commands that are
implemented AND licensed AND enabled.
(The hash is affected by enabling/disabling commands using
the CONFIGCMDS console command.)
-l Display a list of all host & console commands that are
implemented AND licensed.
(This list is not affected by enabling/disabling commands using
the CONFIGCMDS console command.)
Errors: None.
A0 A2 A4 A6 A8 AA AC AE AG AI AK AM AO AQ AS
AU AW AY B0 B2 B8 BA BC BE BG BI BK BM BQ BS
BU BW BY C0 C2 C4 C6 C8 CA CC CE CG CI CK CM
CO CQ CS CU CW CY D0 D2 D4 D6 D8 DA DC DE DG
DI DK DM DO DQ DS DU DW DY E0 E2 E4 E6 E8 EA
EC EE EG EI EK EM EO EQ ES EU EW EY F0 F2 F4
F6 F8 FA FC FE FG FI FK FM FO FQ FS FU FW FY
G0 G2 G4 G6 G8 GA GC GE GG GI GK GM GO GQ GS
GU GW GY H0 H2 H4 H6 H8 HA HC HE HG HI HK HM
HO HQ HS HU HW HY I0 I2 I4 I6 I8 IA IC IE IG
II IK IM IO IQ IU IW IY J0 J2 J4 J6 J8 JA JC
JE JG JI JK JO JS JU JW JY K0 K2 K8 KA KC KE
KG KI KK KM KO KQ KS KU KW KY L0 L2 L4 L6 L8
LA LC LE LG LI LK LM LO LQ LS LU LW LY M0 M2
M4 M6 M8 MA MC ME MG MI MK MM MO MQ MS MU MW
MY N0 NC NE NG NI NK NO NY OA OC OE OI OK OU
OW P0 P2 P4 P6 P8 PA PC PE PG PI PK PM PO PQ
PS PU PW PY Q0 Q2 Q4 Q6 Q8 QA QC QE QI QK QM
QO QQ QS QU QW QY R2 R4 R6 R8 RA RC RE RG RI
RK RM RO RQ RS RU RW RY SY T0 T2 T4 T6 TA U0
U2 U4 U6 U8 V0 V2 V4 V6 V8 W0 W2 W4 W6 W8 X0
X2 X4 X6 X8 XK XM XO XQ XS XU XW Y0 Y2 Y4 Y6
Y8 Z0 ZA ZE ZK ZM ZU
List of available Console commands:
A A5 A6 A7 AUDITLOG AUDITOPTIONS
C CA CH CK CL CLEARERR
CLEARAUDIT CM CO CONFIGACL CONFIGCMDS
CONFIGPB
CP CS CV DC DM DO
DT EC ED EJECT ERRLOG FC
FK GC GETCMDS GETTIME GK GS
GT HEALTHENABLE HEALTHSTATS IK IV KD
KE KG KK KM KN KT
LK LO LN MI N NP
NETSTAT PING PV QA QH QL
QM QP QS R RC RESET
RS SD SE SETTIME SG SI
SK SL SP SNMP SNMPADD SNMPDEL
SS ST SV T TD TRAP
TRAPADD TRAPDEL TRACERT UPLOAD UTILCFG UTILENABLE
UTILSTATS V VA VC VR VT
XA XD XE XH XI XK
XR XT XX XY XZ $
Function: The HSM records details about network activity on both its Management and Host
Ethernet ports for diagnostic and security purposes. As a diagnostic aid, it can
provide useful information when configuring the unit. If reviewed periodically, it can
also provide evidence of unexpected network activity, which may require further
investigation.
The HSM collects information about each 'endpoint' that communicates with it. The
information recorded will depend on the particular protocol that was used to send the
packet.
Authorization: The HSM does not require any authorization to run this command.
Inputs: Syntax:
netstat [-vWeenNcCF] [<Af>] –r
netstat {-V|--version|-h|--help}
netstat [-vWnNcaeol] [<Socket> ...]
netstat { [-vWeenNac] -i | [-cWnNe] -M | -s }
Options:
-r, --route display routing table
ESTABLISHED
The socket has an established connection.
SYN_SENT
The socket is actively attempting to establish a connection.
SYN_RECV
A connection request has been received from the network.
FIN_WAIT1
The socket is closed, and the connection is shutting down.
FIN_WAIT2
Connection is closed, and the socket is waiting for a shutdown from the
remote end.
TIME_WAIT
The socket is waiting after close to handle packets still in the network.
CLOSED
The socket is not being used.
CLOSE_WAIT
The remote end has shut down, waiting for the socket to close.
LAST_ACK
The remote end has shut down, and the socket is closed. Waiting for
acknowledgement.
LISTEN
The socket is listening for incoming connections.
CLOSING
Both sockets are shut down but we still don't have all our data sent.
UNKNOWN
The state of the socket is unknown
Offline>
Function: To test the specified network node, and the route to it.
Authorization: The HSM does not require any authorization to run this command.
Inputs: Syntax:
ping [-q] [-c count] [-I interface] [-p pattern]
[-s packetsize] [-t ttl] [-w maxwait] host
Options:
-c count Stop after sending (and receiving) this many
ECHO_RESPONSE packets.
-I interface The interface that PING is to be sent from.
interface Value HSM Port
h1 Host Port #1
h2 Host Port #2
m Management Port (default)
-p pattern Fill out the packet with this many "padding" bytes
(maximum is 16). You should find this useful for
diagnosing data-dependent problems in a network. For
example, -p ff causes the sent packet to be filled with
ones.
-q Be quiet: display nothing except for the summary lines at
start-up time and when finished.
-s packetsize Send this many data bytes. The default is 56, which
translates into 64 ICMP data bytes when combined with
the 8 bytes of ICMP header data.
-t ttl Use the specified time-to-live. It represents how many
hops the packet can go through before being discarded
(when it reaches 0). The default is 255.
-w maxwait Specify a timeout, in seconds, before ping exits
regardless of how many packets have been sent or
received.
Offline>
Function: To view the path taken from the HSM to the specified address.
Authorization: The HSM does not require any authorization to run this command.
Inputs: Syntax:
tracert [-dFlInr] [-f first_ttl]
[-g gateway] [-i interface] [-m max_ttl] [-p port]
[-q nqueries] [-s src_addr] [-t tos] [-w wait_time]
host [packetsize]
Options:
-d Turn on socket-level debugging.
-F Set the "don't fragment" bit.
-f first_ttl Set the initial time-to-live used in the first outgoing
probe packet.
-g gateway Specify a loose source route gateway (8 maximum).
-I Use ICMP ECHO instead of UDP datagrams.
-i interface interface Value HSM Port
h1 Host Port #1
h2 Host Port #2
m Management Port
(default)
Offline>
Function: To display Utilization Data at the Console. Options to print the data to an
HSM-attached printer and to reset accumulated data to zero.
Authorization: The HSM does not require any authorization to run this command.
Notes: Utilization statistics are also reset when new software is installed on the
HSM.
The precise meaning of a HSM loading range identified below as, for
example, "10-20%" is "from exactly 10% to just under 20%".
Statistics are provided irrespective of which host interface the commands
are received over.
Note that the number of seconds displayed is not necessarily the number of
seconds between the start and end times: rather, it is the number of seconds
during this period when data collection was enabled using the UTILENABLE
command and the HSM was online.
HSM Loading:
0-10%: 56,789
10-20%: 24,109
20-30%: 21,445
30-40%: 12,382
40-50%: 3,288
50-60%: 2,917
60-70%: 2,123
70-80%: 403
80-90%: 0
90-100%: 0
100%: 0
A4 99 2.11
A6 342 7.28
A8 408 8.68
AA 141 3.00
AC 135 2.87
AE 84 1.79
AG 66 1.40
AS 18 0.38
AU 94 2.00
AW 94 2.00
AY 94 2.00
B0 50 1.06
BA 14 0.30
BC 34 0.72
BE 42 0.89
BG 5 0.11
BI 11 0.23
BK 128 2.72
Online>
Function: To display Health Check counts at the Console. Options to print the data to a
HSM-attached printer and to reset accumulated data to zero.
Authorization: The HSM does not require any authorization to run this command to view the
data.
The HSM must be in Offline/Secure Authorized state (or the activity
diagnostics must be authorized) for the Management LMK to reset the
Health Check Counts
Notes: Accumulated health check counts are also reset when new software is
installed on the HSM.
If collection of health check data has been suspended at any time, the
counts relating to Fraud Detection (i.e. failed PIN verifications and PIN
Attacks) will not represent the values of those counts which will be used
by the HSM to trigger return of Error 39 or deletion of LMKs.
Offline-AUTH>
Function: To check the operation of the FICON Host interface board (if fitted) and
optical transceivers.
Authorization: The HSM does not require any authorization to run this command.
Inputs: None
Example 1: When this command is entered without parameters, the system displays
usage for the command.
StartCU() with:
Identifier: S0000000001G
DeviceName: /dev/luminex/lucdrv0
Image: 0
ControlUnitType: 0000
ModelNumber: extloop
Starting DeviceAddress: 0
Endig DeviceAddress: 0
mihMinutes: 0
Set Speed to extloop
Set Speed to extloop
/dev/luminex/lucdrv0 Now Online
/dev/luminex/lucdrv1 Now Online
terminating...
/dev/luminex/lucdrv0 Now Offline
/dev/luminex/lucdrv1 Now Offline
Set Speed to 0
Set Speed to 0
10 packets sent, 10 packets received, 0% loss
Secure>
Example 2: This example uses the output from Example 1, which runs
the loopback test:
StartCU() with:
Identifier: S0000000001G
DeviceName: /dev/luminex/lucdrv0
Image: 0
ControlUnitType: 0000
ModelNumber: extloop
Starting DeviceAddress: 0
Endig DeviceAddress: 0
mihMinutes: 0
Set Speed to extloop
Set Speed to extloop
/dev/luminex/lucdrv0 Now Online
/dev/luminex/lucdrv1 Now Online
terminating...
/dev/luminex/lucdrv0 Now Offline
/dev/luminex/lucdrv1 Now Offline
Set Speed to 0
Set Speed to 0
10 packets sent, 10 packets received, 0% loss
Secure>
Attribute Description
Old/New LMK The check value of the 'old' or 'new' LMK held in Key Change Storage.
Check Value
Use the console command VT (View LMK Table) to view the contents of the HSM's LMK table (but not the
actual LMK values).
When creating a Variant LMK or a 3DES Key Block LMK, this command
generates the data for a single LMK component card.
When creating an AES Key Block LMK, this command generates the data for
all the required number of LMK component cards.
Authorization: The HSM must be in the secure state to run this command.
Errors: Card not formatted – use the FC command to format the card.
Not a LMK card –card is not formatted for LMK or key storage.
Warning – card not blank. Proceed? [Y/N] – LMK card is not blank.
Overwrite LMK set? [Y/N] – card already contains an LMK component.
Smartcard error; command/return: 0003 – invalid PIN is entered.
Invalid PIN; re-enter – a PIN of less than 4 or greater than 8 is entered.
Example 1: This example generates a triple-length Variant LMK component set, and
(Triple-length writes the components to a smartcard.
Variant LMK)
Secure> GK <Return>
Variant scheme or key block scheme? [V/K]: V <Return>
Enter algorithm type [2=2DES, 3=3DES]: 3 <Return>
Secure>
Example 2: This example generates a double-length variant LMK component set, and
(Double-length writes the components to a smartcard.
Variant LMK)
Secure> GK <Return>
Variant scheme or key block scheme? [V/K]: V <Return>
Enter algorithm type [2=2DES, 3=3DES]: 2 <Return>
Secure>
Example 3: This example generates a 3DES key block LMK component, and writes the
(Triple-length component to a smartcard.
3DES Key Block
LMK)
Secure> GK <Return>
Variant scheme or key block scheme? [V/K]: K <Return>
Enter algorithm type [D=DES,A=AES]: D
Key status? [L/T]: L <Return>
LMK component set [1-9]: 1 <Return>
Insert blank card and enter PIN: ******** <Return>
Writing keys...
Checking keys...
Device write complete, check: ZZZZZZ
Secure>
Example 4: This example generates a set of AES key block LMK components, and writes
(AES Key Block each component to a smartcard.
LMK)
Secure> GK <Return>
Variant scheme or key block scheme? [V/K]: K <Return>
Enter algorithm type [D=DES,A=AES]: A <Return>
Enter the number of components to generate: [2-9]: 5
<Return>
Enter the number of components required to reconstitute
the LMK: [2-5]: 2 <Return>
Key status? [L/T]: L <Return>
Secure>
Authorization: The HSM must be in the secure state to run this command.
Inputs: Confirm remote access (if already commissioned for remote access using
the payShield Manager)
LMK Identifier: 2 numeric digits.
Optional comments
Smartcards (RLMKs are supported) with LMK components.
PINs for the Smartcards or passwords. The PIN must be entered within 60
seconds.
Whether to make this LMK the Default/Management LMK - see Notes
below.
Notes: For PCI HSM compliance, PINs and smartcards must be used to
authenticate the Security Officers.
Use of this command will always create an entry in the Audit Log.
If there is not already a Default and/or Management LMK installed (i.e. the
LMK IDs identified in the security settings as being the default and
management LMKs are empty), you will be asked if you wish to make this
new LMK the Default/Management LMK.
An error is returned if an attempt is made to load an LMK with a single
component where:
o The LMK is not a test LMK, and
o The security setting to enforce multiple key components has
been set to YES.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Load failed check comparison - card is blank.
Not a LMK card - card is not formatted for LMK or key storage.
Card not formatted - card is not formatted.
Smartcard error; command/return: 0003 - invalid PIN is entered.
Invalid PIN; re-enter - a PIN of less than 5 or greater than 8 digits is
entered.
Invalid key – a standard Thales test key cannot be given live status.
Incompatible key status – the components have different status ("live" or
"test").
Invalid key - Multiple key components required – an attempt has been
made to load an LMK (other than a test LMK) using a single component
when the security setting to enforce multiple components has been set to
YES.
Example 1: This example loads a double-length Variant LMK from smartcards and
(Double-length installs it in the HSM. There is already Default and Management LMKs
Variant LMK)
installed.
Secure> LK <Return>
Enter LMK id: 00 <Return>
Enter comments: Live LMK for ABC Bank <Return>
LMK in selected location must be erased before
proceeding
Erase LMK? Y <Return>
Load LMK from components or shares
Insert card and press ENTER: <Return>
Enter PIN: ******** <Return>
Check: AAAAAA
Load more components? [Y/N]: Y <Return>
Example 2: This example loads a triple-length Variant LMK from smartcards and installs
(Triple-length it in the HSM. There are already Default and Management LMKs installed.
Variant LMK)
Secure> LK <Return>
Enter LMK id: 01 <Return>
Enter comments: Process System One <Return>
LMK in selected location must be erased before
proceeding
Erase LMK? Y <Return>
Load LMK from components or shares
Insert card and press ENTER: <Return>
Enter PIN: ******** <Return>
Check: AAAAAA
Load more components? [Y/N]: Y <Return>
Example 4: In this example, the security setting requiring use of multiple components
(Double- or triple- has been set to YES, but the user has attempted to load a non-Test LMK
length Variant
using only one component.
LMK)
Secure> LK <Return>
Enter LMK id [0-4]: 0 <Return>
Enter comments: <Return>
Load LMK from components or shares
Insert card and press ENTER: <Return>
Enter PIN: ******** <Return>
Check: AAAAAA
Load more components? [Y/N]: N <Return>
LMK Check: ZZZZZZ
Invalid key - Multiple key components required
Secure>
Example 5: This example loads a 3DES key block LMK from smartcards and installs it in
(3DES Key Block the HSM. There is already Default and Management LMKs installed.
LMK)
Secure> LK <Return>
Enter LMK id: 01 <Return>
Enter comments: Live LMK for XYZ Bank <Return>
LMK in selected location must be erased before
proceeding
Erase LMK? Y <Return>
Load LMK from components or shares
Insert card and press ENTER: <Return>
Enter PIN: ******** <Return>
Check: AAAAAA
Load more components? [Y/N]: Y <Return>
Example 6: This example loads an AES key block LMK from smartcards and installs it in
(AES Key Block the HSM. There is already Default and Management LMKs installed.
LMK)
Secure> LK <Return>
Enter LMK id: 02 <Return>
Enter comments: Live LMK for XYZ Bank <Return>
LMK in selected location must be erased before
proceeding
Erase LMK? Y <Return>
Load LMK from components or shares
Insert card and press ENTER: <Return>
PIN: ******** <Return>
Check: AAAAAA
Example 7: This example loads an AES key block LMK from smartcards and installs it in
(AES Key Block the HSM. There is no Default or Management LMK already installed.
LMK - no Default
or Management
LMK already Secure> LK <Return>
installed.) Enter LMK id: 02 <Return>
Enter comments: Live LMK for XYZ Bank <Return>
Function: To load an old LMK component set into Key Change Storage for use in
translations from old to new keys. Note that the current LMK must be installed
before an "old" LMK can be installed. Also note that it is possible to install a
Variant LMK as the "old" LMK, and with a Key Block LMK as the "new" LMK.
Authorization: The HSM must be in the secure state to run this command. Additionally, the
HSM must be either in the Authorized State, or the activity admin.console
must be authorized, using the Authorizing Officer cards of the specified LMK.
Notes: For PCI HSM compliance, PINs and smartcards must be used to
authenticate the Security Officers.
Use of this command will always create an entry in the Audit Log.
It is not permitted to load a Key Block LMK into the "old" LMK slot of a Variant
LMK.
It is not permitted to load an AES Key Block LMK into the "old" LMK slot of a
3DES Key Block LMK.
If multiple LMKs are loaded on the HSM, each can have a corresponding
old LMK. The ID of the LMK being processed is defined in the command
input.
Example 1: This example loads a double-length Variant LMK from smartcards and installs
(Double-length it as 'old' LMK 00.
Variant LMK)
Secure-AUTH> LO <Return>
Enter LMK id: 00 <Return>
Enter comments: Old LMK for ABC Bank <Return>
Load old LMK from components or shares
Insert card and press ENTER: <Return>
Enter PIN: ******** <Return>
Check: AAAAAA
Load more components? [Y/N]: Y <Return>
Example 2: This example loads a triple-length Variant LMK from smartcards and installs it
(Triple-length as 'old' LMK 00.
Variant LMK)
Secure-AUTH> LO <Return>
Enter LMK id: 00 <Return>
Enter comments: Old LMK for Process System One <Return>
Load old LMK from components or shares
Insert card and press ENTER: <Return>
Enter PIN: ******** <Return>
Check: AAAAAA
Load more components? [Y/N]: Y <Return>
Example 3: This example attempts to load a non-Test LMK using a single component
(Double- or triple- when the security setting to enforce multiple components has been set to
length Variant
YES.
LMK)
Secure-AUTH> LO <Return>
Enter LMK id: 00 <Return>
Enter comments: Old LMK for ABC Bank <Return>
Load old LMK from components or shares
Insert card and press ENTER: <Return>
Enter PIN: ******** <Return>
Check: AAAAAA
Load more components? [Y/N]: N <Return>
Check: AAAAAA
Invalid key - Multiple key components required
Secure-AUTH>
Example 4: This example loads a 3DES key block LMK from smartcards and installs it as
(3DES Key Block 'old' LMK 01.
LMK)
Secure-AUTH> LO <Return>
Enter LMK id: 01 <Return>
Enter comments: Old LMK for XYZ Bank <Return>
Load old LMK from components or shares
Insert card and press ENTER: <Return>
Enter PIN: ******** <Return>
Check: AAAAAA
Load more components? [Y/N]: Y <Return>
been loaded and the HSM displays the LMK Check value,
ensure that this is the expected value.
Example 5: This example loads an AES key block LMK from smartcards and installs it as
(AES Key Block 'old' LMK 02.
LMK)
Secure-AUTH> LO <Return>
Enter LMK id: 02 <Return>
Enter comments: Old LMK for XYZ Bank <Return>
Load old LMK from components or shares
Function: To load a new LMK component set into Key Change Storage for use in
translations from the current LMK to a "new" LMK. Note that the current LMK
must be installed before a "new" LMK can be installed. Also note that it is
possible to install a Key Block LMK as the "new" LMK, with a Variant LMK as
the current LMK.
Authorization: The HSM must be in the secure state to run this command. Additionally, the
HSM must be either in the Authorized State, or the activity admin.console
must be authorized, using the Authorizing Officer cards of the specified LMK.
Notes: For PCI HSM compliance, PINs and smartcards must be used to
authenticate the Security Officers.
Use of this command will always create an entry in the Audit Log.
It is not permitted to load a Variant LMK into the "new" LMK slot of a Key
Block LMK.
It is not permitted to load a 3DES Key Block LMK into the "new" LMK slot of
an AES Key Block LMK.
If multiple LMKs are loaded on the HSM, each can have a corresponding
'new' LMK. The ID of the LMK being processed is defined in the command
input.
Example 1: This example loads a double-length Variant LMK from smartcards and installs
(Double-length it as 'new' LMK 00.
Variant LMK)
Secure-AUTH> LN <Return>
Enter LMK id: 00 <Return>
Enter comments: New LMK for ABC Bank <Return>
Load new LMK from components or shares
Insert card and press ENTER: <Return>
Enter PIN: ******** <Return>
Check: AAAAAA
Load more components? [Y/N]: Y <Return>
Example 2: This example loads a triple-length Variant LMK from smartcards and installs it
(Triple-length as 'new' LMK 00.
Variant LMK)
Secure-AUTH> LN <Return>
Enter LMK id: 00 <Return>
Enter comments: New LMK for Process System One <Return>
Load new LMK from components or shares
Insert card and press ENTER: <Return>
Enter PIN: ******** <Return>
Check: AAAAAA
Load more components? [Y/N]: Y <Return>
Example 3: This example attempts to load a non-Test LMK using a single component
(Double- or triple- when the security setting to enforce multiple components has been set to
length Variant
YES.
LMK)
Secure-AUTH> LN <Return>
Enter LMK id: 00 <Return>
Enter comments: New LMK for ABC Bank <Return>
Load new LMK from components. Or shares
Insert card and press ENTER: <Return>
Enter PIN: ******** <Return>
Check: AAAAAA
Load more components? [Y/N]: N <Return>
Check: AAAAAA
Invalid key - Multiple key components required
Secure-AUTH>
Example 4: This example loads a 3DES key block LMK from smartcards and installs it as
(3DES Key Block 'new' LMK 01.
LMK)
Secure-AUTH> LN <Return>
Enter LMK id: 01 <Return>
Enter comments: New LMK for XYZ Bank <Return>
Load new LMK from components or shares
Insert card and press ENTER: <Return>
Enter PIN: ******** <Return>
Check: AAAAAA
Load more components? [Y/N]: Y <Return>
been loaded and the HSM displays the LMK Check value,
ensure that this is the expected value.
Example 5: This example loads an AES key block LMK from smartcards and installs it as
(AES Key Block 'new' LMK 02.
LMK)
Secure-AUTH> LN <Return>
Enter LMK id: 02 <Return>
Enter comments: New LMK for XYZ Bank <Return>
Load new LMK from components or shares
Insert card and press ENTER: <Return>
Enter PIN: ******** <Return>
Check: AAAAAA
Function: To confirm that the check value is identical to the value that was recorded
when the LMK set was installed.
For Variant LMKs, the length of the displayed check value is determined by the
CS (Configure Security) setting "Restrict Key Check Value to 6 hex chars".
For Key Block LMKs, the length of the displayed check value is always 6 hex
digits.
Authorization: The HSM does not require any authorization to run this command.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Authorization: The HSM must be in the secure state to run this command.
Function: To delete a selected LMK and (if loaded) the LMK in the corresponding
location in key change storage.
Authorization: The HSM must be in the secure state to run this command. Additionally, the
HSM must be either in the Authorized State, or the activity admin.console
must be authorized, using the Authorizing Officer cards of the specified LMK.
Outputs: Display of relevant entry from LMK table and the key change storage table.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Command only allowed from Secure-Authorized - the HSM is not in Secure
State, or the HSM is not authorized to perform this operation, or both.
LMK id xx is the Default and Management LMK ID – the default and
Management LMKs cannot be deleted.
Notes: LMKs which are the Default or Management LMK cannot be deleted. The
Default and Management LMK must be re-assigned to a new LMK before
the desired LMK can be deleted. (The LMK ID of the Management and
default LMKs can be viewed by running the QS command.)
Secure>
Function: To delete a selected LMK from key change storage. This command may only
be used if an LMK is loaded in the corresponding location in main LMK
memory.
Authorization: The HSM must be in the secure state to run this command.
Outputs: Display of relevant entry from the key change storage table.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Secure>
Function: To display the LMK table and the corresponding table for key change storage.
Authorization: The HSM does not require any authorization to run this command.
Inputs: None.
Errors: None.
Example 1: The HSM is configured for single authorized state, but has not been authorized:
Secure> VT <Return>
LMK table:
ID Authorized Scheme Algorithm Status Check Comments
00 No Variant 3DES(2key) Test 268604 test
variant
Secure>
Example 2: The HSM is configured for single authorized state, and both host and console
commands are authorized for LMK 01:
Secure> VT <Return>
LMK table:
Secure>
Example 3: The HSM is configured for single authorized state, and only host commands
are authorized for LMK 01 (console command authorization has automatically
expired after 12 hours):
Secure> VT <Return>
LMK table:
Secure>
Example 4: The HSM is configured for multiple authorized activities. Output shows how
many host and console commands are authorized for each LMK:
Online-AUTH> VT <Return>
LMK table:
ID Authorized Scheme Algorithm Status Check Comments
00 Yes(0H,1C) Variant 3DES(3key) Live 726135 test variant
02 Yes(1H,0C) KeyBlock AES-256 Test 6620CA Mngmnt LMK
Key change storage table:
ID Old/New Scheme Algorithm Status Check Comments
00 New KeyBlock 3DES(3key) Live 331873 test variant 2
02 New KeyBlock AES-256 Test 9D04A0 New mngmnt LMK
Online-AUTH>
Function: To generate one of the standard Thales Test LMKs, and write the
component(s) to smartcard(s).
The payShield 10K supports four different types of LMK:
2DES Variant LMK
3DES Variant LMK
3DES Key Block LMK
AES Key Block LMK
All three DES-based Test LMKs can be stored on a single smartcard; the
AES Test LMK requires two smartcards.
Note: This command simply generates a smart card with the known and
documented test LMK stored on it. The command does not generate a new
test LMK.
Authorization: The HSM does not require any authorization to run this command.
Errors: Card not formatted – use the FC command to format the card.
Not a LMK card –card is not formatted for LMK or key storage.
Warning – card not blank. Proceed? [Y/N] – LMK card is not blank.
Overwrite LMK set? [Y/N] – card already contains an LMK component.
Invalid selection.
Invalid PIN.
Example 1: This example writes the standard 2DES Variant Thales Test LMK to a single
smartcard:
Online> GT <Return>
Online>
Example 2: This example writes the two components of the standard AES Key Block Thales
Test LMK to two separate smartcards:
Online> GT <Return>
Online>
8 Operational Commands
8.1 Authorization Commands
The payShield 10K needs to be authorized for certain commands to be executed - usually those involving clear
text data.
There are two methods of authorizing the HSM – using:
a single Authorized State;
multiple Authorized Activities.
Note: The console command CS (Configure Security) setting "Enable multiple authorized activities" determines
which method is to be used; by default, multiple Authorized Activities are used.
If the HSM needs to be placed in Authorized State using the Authorizing Officer cards (or passwords)
corresponding to a particular LMK, then the command will only be authorized for that particular LMK identifier.
For example, if the "FK" console command ("Form Key from Components") is authorized using the passwords
corresponding to the LMK with identifier "00", then only keys encrypted using LMK "00" may be formed using
the command.
It is possible to authorize the HSM using multiple Authorizing Officer cards (or passwords), so that the HSM may
be simultaneously authorized for different LMKs.
Note: For PCI HSM compliance, PINs and smartcards must be used to authenticate the Security Officers:
passwords must not be used.
The payShield 10K provides the following console commands to support the authorization of the HSM:
Authorization: The HSM does not require any authorization to run this command.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Card not formatted - card is not formatted.
Not an LMK card - card is not formatted for LMK or key storage.
Smartcard error; command/return: 0003 - invalid PIN is entered.
Invalid PIN; re-enter - a PIN of less than 5 or greater than 8 digits is entered.
Data invalid; please re-enter - the password is an invalid length.
Online> A <Return>
Enter LMK id [0-4]: 1 <Return>
First Officer:
Online-AUTH>
Authorization: The HSM does not require any authorization to run this command.
Notes: This command is only available when the console command CS (Configure
Security) setting "Enable multiple authorized activities [Y/N]" is set to "N".
Use of this command will always cause an entry to be made in the Audit
Log.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Authorization: The HSM does not require any authorization to run this command.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Card not formatted - card is not formatted.
Not a LMK card - card is not formatted for LMK or key storage.
Smartcard error; command/return: 0003 - invalid PIN is entered.
Invalid PIN; re-enter - a PIN of less than 4 or greater than 8 is entered.
Data invalid; please re-enter: the password is an invalid length.
Note: When omitting the sub-category, but including the interface, there
should be two delimiters "." between them:
Example: export..host allows export of any (valid) key using a host
command.
The option to make an authorization persistent (i.e. to survive across a re-
boot of the HSM) is only available for Host commands and where the
authorization is also permanent.
First Officer:
Insert Card for Security Officer and enter the PIN:
******** <Return>
Second Officer:
Insert Card for Security Officer and enter the PIN:
******** <Return>
Online-AUTH>
Example 2: This example authorizes activities via the command line, with no time limits
(Variant or Key specified.
Block LMK)
Online> A gene comp genp i e p au ad di m comm<Return>
admin..console:720
admin..host
audit..console:720
audit..host
command..console:720
command..host
component..console:720
component..host
diagnostic..console:720
diagnostic..host
export..console:720
export..host
generate..console:720
generate..host
genprint..console:720
genprint..host
import..console:720
import..host
misc..console:720
misc..host
pin..console:720
pin..host
First officer:
Insert card and enter PIN: ******** <Return>
Second officer:
Insert card and enter PIN: ******** <Return>
Online-AUTH>
Example 3: This example authorizes three activities additional Example 1 via the menu.
(Variant LMK)
Online-AUTH> A <Return>
Enter LMK id [0-9]: 00 <Return>
The following activities are authorized for LMK id 00:
pin.mailer
List of authorizable activities:
generate genprint component import
export pin audit admin
diagnostic misc command
Select category: generate <Return>
000 100 200 001
002 400 003 006
008 009 109 209
309 409 509 709
00a 00b rsa
Select sub-category, or <RETURN> for all: 000 <Return>
host console
Select interface, or <RETURN> for all: C <Return>
Enter time limit for generate.000.console, or <RETURN>
for permanent: 60 <Return>
First Officer
Insert Card for Security Officer and enter the PIN: ****
<Return>
Second Officer
Insert Card for Security Officer and enter the PIN: ****
<Return>
Online-AUTH>
Example 4: This example authorizes three activities additional to Example 1 via the
(Variant LMK) command line, including time limits.
admin:240
export.001.host:persistent
generate.000.console:60
First Officer:
Insert Card for Security Officer and enter the PIN: ****
<Return>
Second Officer:
Insert Card for Security Officer and enter the PIN: ****
<Return>
Online-AUTH>
Example 5: This example authorizes a single activity via the command line.
(Variant or Key
Block LMK) Online> A pin.clear <Return>
Enter LMK id [0-9]: 01 <Return>
pin.clear.console:720
pin.clear.host
First Officer:
Insert Card for Security Officer and enter the PIN: ****
<Return>
Second Officer:
Insert Card for Security Officer and enter the PIN: ****
<Return>
Online-AUTH>
Example 6: This example authorizes an additional three activities via the menu.
(Key Block LMK)
Online-AUTH> A <Return>
Enter LMK id [0-9]: 01 <Return>
The following activities are authorized for LMK id 01:
pin.clear
List of authorizable activities:
generate genprint component import
export pin audit admin
diagnostic misc command
Select category: export <Return>
01 B0 C0 11
12 13 D0 21
22 E0 E1 E2
E3 E4 E5 E6
31 32 K0 51
52 M0 M1 M2
M3 M4 M5 61
62 63 64 65
P0 71 72 73
V0 V1 V2
Select sub-category, or <RETURN> for all: 72 <Return>
host console
Select interface, or <RETURN> for all: C <Return>
Enter time limit for export.72.console, or <RETURN> for
permanent: 60 <Return>
First Officer
Insert Card for Security Officer and enter the PIN: ****
<Return>
Second Officer
Insert Card for Security Officer and enter the PIN: ****
<Return>
Online-AUTH>
Example 7: This example authorizes an additional three activities via the command line.
(Key Block LMK)
Online-AUTH> a exp.001.con:60 admin:240 misc..console
<Return>
Enter LMK id [0-1]: 01 <Return>
admin:240
export.001.console:60
misc..console:720
First Officer:
Insert Card for Security Officer and enter the PIN: ****
<Return>
Second Officer:
Insert Card for Security Officer and enter the PIN: ****
<Return>
Online-AUTH>
Authorization: The HSM does not require any authorization to run this command.
Notes: This command is only available when the console command CS (Configure
Security) setting "Enable multiple authorized activities [Y/N]" is set to "Y".
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Invalid input.
Notes: Use of this command will always cause an entry to be made in the Audit
Log.
Note: This example assumes that the activities in the Authorize Activity
command Example 1 (above) are active.
Example 2: This example cancels an existing activity via the command line.
(Variant or Key
Block LMK) Online-AUTH> C pin.mailer <Return>
Enter LMK id [0-1]: 00 <Return>
No activities are authorized for LMK id 00.
Online>
Note: This example assumes that the activities in the Authorize Activity
command Example 2 (above) are active.
Note: This example assumes that the activities in the Authorize Activity
command Example 3 (above) are active.
Example 4: This example cancels an existing activity via the command line.
(Variant LMK)
Online-AUTH> C gene.000.c admin <Return>
Enter LMK id [0-9]: 00 <Return>
The hollowing activities are authorized for LMK id 00.
export.001.host
pin.mailer
Online-AUTH>
Example 5: This example cancels an existing activity via the command line.
(Variant or Key
Block LMK) Online-AUTH> C pin.clear <Return>
Enter LMK id [0-9]: 01 <Return>
No activities are authorized for LMK id 01.
Online>
Note: This example assumes that the activities in the Authorize Activity
command Example 5 (above) are active.
Authorization: The HSM does not require any authorization to run this command.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Example 1: This example applies when multiple authorized activities has been enabled..
(Multiple
authorized Online-AUTH> VA <Return>
activities Enter LMK id: 00 <Return>
enabled) The following activities are authorized for LMK id 00:
admin:240 (228 mins remaining)
export.001.host:persistent
generate.000.console:60 (48 mins remaining)
Online-AUTH>
Note: This example assumes the activities in the Authorize Activity command
Example 4 (above) were authorized 12 minutes ago.
Example 2: This example applies when multiple authorized activities has not been
(Multiple enabled..
authorized
activities Online-AUTH> VA <Return>
disabled) Enter LMK id [0-9]: 0 <Return>
LMK id 00 is authorized.
Console authorization expires in 716 minute(s).
Online-AUTH>
Note: This example assumes that authorized state was enabled 4 minutes
ago.
Authorization: The HSM does not require any authorization to run this command.
Inputs: None.
Outputs: A listing of the errors in the error log, or text message: "Error log is empty".
Errors: None.
Example 2: In this example, there are three errors in the error log.
Offline>
Authorization: The HSM must be in the secure state to run this command.
Inputs: None.
Errors: None.
Authorization: The HSM does not require any authorization to run this command.
Inputs: None.
Notes: Certain items are always recorded in the Audit Log, irrespective of the
selections made using AUDITOPTIONS.
These are:
o Serial numbers of smartcards used to authenticate users at the HSM
or to payShield Manager.
o Authorization of activities
o Cancellation of authorization.
o Key and component entry at the Console or payShield Manager.
When key and component entry are forcibly logged in this way, the log
entry indicates successful completion of the action.
The user can, as in earlier versions of software, use AUDITOPTIONS to
specify that the key and component entry commands are logged: this will
normally result in 2 entries in the audit log – one resulting from the
AUDITOPTIONS setting indicating that the command was initiated, and the
forcible logging indicating the successful completion of the command. If the
command does not complete successfully (e.g. because it was cancelled
by the user) then there will be no forcible logging, but the entry indicating
the command was initiated will still be there if the command was specified
in AUDITOPTIONS.
The Audit Log is displayed with the most recent entries shown first.
Errors: None.
Offline>
Authorization: The HSM must be in the secure state to run this command. Additionally, the
HSM must be either in the Authorized State, or the activity audit.console
must be authorized, using the Authorizing Officer cards of the Management
LMK.
Inputs: None.
Errors: Command only allowed from Secure-Authorized - the HSM is not in Secure
State, or the HSM is not authorized to perform this operation, or both.
Secure-AUTH>
Authorization: The HSM must be in the secure state to use this command to change the
items to be audited. Additionally, the HSM must be either in the Authorized
State, or the activity audit.console must be authorized, using the Authorizing
Officer cards of the Management LMK.
The current list of items being audited can be viewed in online state.
Notes: Certain operations are always recorded in the Audit Log, irrespective of the
selections made using AUDITOPTIONS.
the command was initiated will still be there if the command was specified
in AUDITOPTIONS.
Audit Error Responses to Host Commands: this setting allows any
relevant error responses to Host commands to be logged. In this context,
"relevant" means error responses which may indicate situations that
require investigation by the payShield 10K Administrators or Security
Officers. The use of this setting will therefore not log non-00 error
responses which are purely for information or which indicate "business as
usual" (e.g. a customer entering an incorrect PIN at a terminal).
Auditing items (such as heavily used Host commands) which result in a
high rate of update to the Audit Log will impact negatively on performance
of the HSM.
After completing the AUDITOPTIONS command, a reboot of the HSM may
be required in order to activate the new settings.
Errors: Command only allowed from Offline-Authorized - the HSM is not in Offline
(or Secure) State, or the HSM is not authorized to perform this operation, or
both.
Invalid Entry - the value entered is invalid.
Card not formatted to save/retrieve HSM settings - Attempt with another
card? [Y/N]
Command: SETTIME
Function: To set the system time and date used by the HSM.
Authorization: The HSM must be in the secure state to run this command. Additionally, the
HSM must be either in the Authorized State, or the activity admin.console
must be authorized, using the Authorizing Officer cards of the Management
LMK.
Setting the date or time back may prevent the payShield Manager from allowing a user to login. Care must
be taken when changing the date back such that it is not earlier than the creation date/time of any of the
smartcards that will be used to access the HSM.
Authorization: The HSM does not require any authorization to run this command.
Inputs: None.
Errors: None.
Function: Reports the time of day when the daily automatic self-tests required for PCI
HSM compliance will be run, and allows this time to be changed.
Authorization: The HSM does not require any authorization to run this command.
Outputs: None
Errors: None.
Secure>
Function: To save the Alarm, Host Port, Security, Audit, Command, and PIN Block settings to a
smartcard (RACCs are supported).
Authorization: The HSM must be in the secure state to run this command. Additionally, the HSM must
be either in the Authorized State, or the activity admin.console must be authorized,
using the Authorizing Officer cards of the Management LMK.
Outputs: Confirmation messages that Alarm, Host, Security, Audit, Command, and PIN Block
settings are saved.
Function: To read the Alarm, Host Port, Security, Audit, Command, and PIN Block settings from
a smartcard. The user is then prompted to use these to overwrite the existing HSM
settings. If the settings on the smartcard were saved using a configuration command
(CL, CH, CS and AUDITOPTIONS), then only those settings are overwritten.
Authorization: The HSM must be in the secure state to run this command. Additionally, the HSM
must be either in the Authorized State, or the activity admin.console must be
authorized, using the Authorizing Officer cards of the Management LMK.
Outputs: The Alarm, Host, Security, Audit, Command, and PIN Block settings stored on the
smartcard are listed.
PIN length: 04
Old encrypted PIN length: 05
Echo: OFF
Atalla ZMK variant support: OFF
Transaction key support: AUSTRALIAN
User storage key length: SINGLE
Select clear PINs: NO
Enable ZMK translate command: NO
Enable X9.17 for import: YES
Enable X9.17 for export: YES
Solicitation batch size: 1024
Single-DES: ENABLED
Prevent single-DES keys from masquerading as double or triple-
length keys: NO
ZMK length: DOUBLE
Decimalization tables: PLAINTEXT
Decimalization table checks enabled: YES
PIN encryption algorithm: A
Authorized state required when importing DES key under RSA key:
YES
Minimum HMAC length in bytes: 10
Enable PKCS#11 import and export for HMAC keys: NO
Enable ANSI X9.17 import and export for HMAC keys: NO
Enable ZEK/TEK encryption of ASCII data or Binary data or None:
BINARY
Restrict key check values to 6 hex chars : YES
Return PIN length in PIN translation response: YES
Enable multiple authorized activities: YES
Enable variable length PIN offset: NO
Enable weak PIN checking: NO
Enable PIN block format 34 as output format for PIN
translations to ZPK: NO
Enable PIN block account number translations: NO
Default LMK identifier: 00
Management LMK identifier: 00
Use HSM clock for date/time validation: YES
Additional padding to disguise key length: NO
Key export and import in trusted format only: NO
Secure-AUTH>
Function: To generate a 3DES/AES key component and display it in plain and encrypted
forms.
Variant LMK Key Block LMK
Authorization: The HSM must be in the Authorized The HSM must be in the Authorized State, or the
State, or the activity activity component.{key}.console must be
component.{key}.console must be authorized, where 'key' is the key usage code of
authorized, where 'key' is the key the key component being generated.
type code of the key component
being generated.
Notes: To generate an AES key component requires the command to use an AES
Key Block LMK.
When generating key components encrypted by a Key Block LMK, the
"Component Number" field stored within the component's key block header
can be used to help identify individual components. Note, however, that this
field is not examined or used by the HSM's FK command when forming a key
from these components.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Invalid key type; re-enter - the key type is invalid. See the Key Type Table in
the payShield 10K Host Programmer's Manual.
Invalid key scheme for key length - the Key Scheme is inappropriate for Key
length.
Invalid key scheme - an invalid key scheme is entered.
Internal failure 12: function aborted - the contents of LMK storage have been
corrupted or erased. Do not continue. Inform the Security Department.
Various key block field errors – the value entered is invalid, or incompatible
with previously entered values.
Example 1: This example generates a double length DES key component in plaintext & encrypted form.
(Variant LMK)
Online-AUTH> GC <Return>
Enter LMK id: 00 <Return>
Enter key length [1,2,3]: 2 <Return>
Enter key type: 001 <Return>
Enter key scheme: U <Return>
Clear Component: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
Encrypted Component: UYYYY YYYY YYYY YYYY YYYY YYYY YYYY YYYY
Key check value: ZZZZZZ
Online-AUTH>
Example 2: This example generates a double length DES key component in plaintext & encrypted form.
(3DES Key Block
LMK) Online-AUTH> GC <Return>
Enter LMK id: 01 <Return>
Enter key length [1,2,3]: 2 <Return>
Enter key scheme: S <Return>
Enter key usage: P0 <Return>
Enter mode of use: N <Return>
Enter component number [1-9]: 2 <Return>
Enter exportability: E <Return>
Enter optional blocks? [Y/N]: N <Return>
Clear component: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
Encrypted component: S YYYYYYYY……YYYYYY
Key check value: ZZZZZZ
Online-AUTH>
Example 3: This example generates a double length DES key component in plaintext & encrypted form.
(AES Key Block
LMK) Online-AUTH> GC <Return>
Enter LMK id: 02 <Return>
Enter algorithm type [D=DES, A=AES]: D <Return>
Enter key length [1,2,3]: 2 <Return>
Enter key scheme: S <Return>
Enter key usage: P0 <Return>
Enter mode of use: N <Return>
Enter component number [1-9]: 2 <Return>
Enter exportability: E <Return>
Enter optional blocks? [Y/N]: N <Return>
Clear component: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
Encrypted component: S YYYYYYYY……YYYYYY
Key check value: ZZZZZZ
Online-AUTH>
Example 4: This example generates a 128-bit AES key component in plaintext & encrypted form.
(AES Key Block
LMK) Online-AUTH> GC <Return>
Enter LMK id: 02 <Return>
Enter algorithm type [D=DES, A=AES]: A <Return>
Enter key length [128,192,256]: 128 <Return>
Enter key scheme: S <Return>
Enter key usage: K0 <Return>
Enter mode of use: N <Return>
Enter component number [1-9]: 2 <Return>
Enter exportability: E <Return>
Enter optional blocks? [Y/N]: N <Return>
Clear component: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
Encrypted component: S YYYYYYYY……YYYYYY
Key check value: ZZZZZZ
Online-AUTH>
Notes To generate an AES key requires the command to use an AES Key Block
LMK.
If multiple copies of a smartcard are required, these must be created when
running the GS console command. It is not possible to duplicate these
smartcards once the GS console command has completed.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Invalid PIN; re-enter - a PIN of less than 4 or greater than 8 is entered.
Smartcard error; command/return: 0003 - invalid PIN is entered.
Warning - card not blank. Proceed? [Y/N] - the smartcard entered is not
blank.
Example 1: This example writes two double length DES key components to two
(Variant LMK) smartcards, and encrypts the formed key.
Online-AUTH> GS <Return>
Enter LMK id: 00 <Return>
Enter key length [1,2,3]: 1 <Return>
Enter key type: 001 <Return>
Enter key scheme: 0 <Return>
Enter number of components [2-3]: 2 <Return>
Insert card 1 and enter PIN: ******** <Return>
Make additional copies? [Y/N]: N <Return>
Insert card 2 and enter PIN: ******** <Return>
Make additional copies? [Y/N]: N <Return>
Encrypted key: YYYY YYYY YYYY YYYY
Key check value: ZZZZZZ
Online-AUTH>
Example 2: This example generates and writes two double length 3DES key
(3DES Key Block components to two smartcards, and encrypts the formed key.
LMK)
Online-AUTH> GS <Return>
Enter LMK id: 01 <Return>
Enter key length [1,2,3]: 2 <Return>
Enter key scheme: S <Return>
Enter number of components [2-3]: 2 <Return>
Enter key usage: P0 <Return>
Enter mode of use: N <Return>
Enter key version number: 00 <Return>
Enter exportability: E <Return>
Enter optional blocks? [Y/N]: Y <Return>
Enter optional block identifier: 00 <Return>
Enter optional block data: L <Return>
Enter more optional blocks? [Y/N]: N <Return>
Insert card 1 and enter PIN: ******** <Return>
Make additional copies? [Y/N]: N <Return>
Insert card 2 and enter PIN: ******** <Return>
Make additional copies? [Y/N]: N <Return>
Encrypted key: S YYYYYYYY……YYYYYY
Key check value: ZZZZZZ
Online-AUTH>
Example 3: This example generates and writes two double length 3DES key
(AES Key Block components to two smartcards, and encrypts the formed key.
LMK)
Online-AUTH> GS <Return>
Enter LMK id: 02 <Return>
Enter algorithm [3DES/AES]: 3 <Return>
Enter key length [1,2,3]: 2 <Return>
Enter key scheme: S <Return>
Enter number of components [2-3]: 2 <Return>
Enter key usage: P0 <Return>
Enter mode of use: N <Return>
Enter key version number: 00 <Return>
Enter exportability: E <Return>
Enter optional blocks? [Y/N]: Y <Return>
Enter optional block identifier: 00 <Return>
Enter optional block data: L <Return>
Enter more optional blocks? [Y/N]: N <Return>
Insert card 1 and enter PIN: ******** <Return>
Make additional copies? [Y/N]: N <Return>
Insert card 2 and enter PIN: ******** <Return>
Make additional copies? [Y/N]: N <Return>
Encrypted key: S YYYYYYYY……YYYYYY
Key check value: ZZZZZZ
Online-AUTH>
Example 4: This example generates and writes two128-bit AES key components to two
(AES Key Block smartcards, and encrypts the formed key.
LMK)
Online-AUTH> GS <Return>
Enter LMK id: 02 <Return>
Enter algorithm [3DES/AES]: A <Return>
Enter key length [128,192,256]: 128 <Return>
Enter key scheme: S <Return>
Enter number of components [2-3]: 2 <Return>
Enter key usage: P0 <Return>
Enter mode of use: N <Return>
Function: To encrypt a clear text 3DES/AES key component and display the result at
the console.
If a 3DES key component does not have odd parity, odd parity will be forced
before encryption by the selected LMK.
Variant LMK Key Block LMK
Authorization: The HSM must be in the Authorized The HSM must be in the Authorized
State, or the activity State, or the activity
component.{key}.console must be component.{key}.console must be
authorized, where 'key' is the key authorized, where 'key' is the key
type code of the component being usage code of the component being
encrypted. encrypted.
Notes To encrypt an AES key component requires the command to use an AES
Key Block LMK.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Data invalid; please re-enter - the input data does not contain 16 or 32 or
48 hexadecimal characters. Re-enter the correct number of hexadecimal
characters.
Invalid key type; re-enter - the key type is invalid. See the Key Type Table
in the Host Programmer's Manual.
Invalid key scheme - an invalid key scheme is entered.
Example 1: This example encrypts a plaintext double length DES key component.
(Variant LMK)
Online-AUTH> EC <Return>
Enter LMK id: 00 <Return>
Enter key type: 001 <Return>
Enter key Scheme: U <Return>
Enter component: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
<Return>
Encrypted component: U YYYY YYYY YYYY YYYY YYYY YYYY
YYYY YYYY
Key check value: ZZZZZZ
Online-AUTH>
Example 2: This example encrypts a plaintext double length DES key component.
(3DES Key Block
LMK) Online-AUTH> EC <Return>
Enter LMK id: 01 <Return>
Enter component length [1,2,3]: 2 <Return>
Enter key scheme: S <Return>
Enter key usage: P0 <Return>
Enter mode of use: N <Return>
Enter component number [1-9]: 2 <Return>
Enter exportability: E <Return>
Enter optional blocks? [Y/N]: Y <Return>
Enter optional block identifier: 00 <Return>
Enter optional block data: L <Return>
Enter more optional blocks? [Y/N]: N <Return>
Enter component: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
<Return>
Encrypted component: S YYYYYYYY……YYYYYY
Key check value: ZZZZZZ
Online-AUTH>
Example 3: This example encrypts a plaintext double length DES key component.
(AES Key Block
LMK) Online-AUTH> EC <Return>
Enter LMK id: 02 <Return>
Enter algorithm [3DES/AES]: 3 <Return>
Enter component length [1,2,3]: 2 <Return>
Enter key scheme: S <Return>
Enter key usage: D0 <Return>
Enter mode of use: N <Return>
Enter component number [1-9]: 2 <Return>
Enter exportability: E <Return>
Enter optional blocks? [Y/N]: Y <Return>
Enter optional block identifier: 00 <Return>
Enter optional block data: L <Return>
Enter more optional blocks? [Y/N]: N <Return>
Enter component: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
<Return>
Encrypted component: S YYYYYYYY……YYYYYY
Key check value: ZZZZZZ
Online-AUTH>
Function: To build a 3DES/AES key from components. If clear 3DES key components
are used, they will not be checked for parity, but odd parity will be forced on
the final key before encryption under the selected LMK.
Variant LMK Key Block LMK
Authorization: The HSM must be in the The HSM must be in the Authorized
Authorized State, or the activity State, or the activity
component.{key}.console must component.{key}.console must be
be authorized, where 'key' is the authorized, where 'key' is the key usage
key type code of the key being code of the key being formed.
formed.
Notes: To form an AES key requires the command to use an AES Key Block LMK.
PINs must be entered within 60 seconds of being requested.
When using key components encrypted by a Key Block LMK, the FK
command ignores the "Component Number" field stored within each
component key block.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Incompatible header values - the field values are incompatible between
components.
Incompatible key status optional blocks - there is a mismatch between the
values contained in one or more key status optional blocks.
Command only allowed from Authorized - the HSM is not authorized to
perform this operation.
Invalid key scheme - an invalid key scheme is entered.
Invalid key type; re-enter - the key type is invalid. See the Key Type Table
in the Host Programmer's Manual.
Key all zero - the key is invalid.
Invalid entry - an invalid number of components has been entered.
Data invalid; please re-enter - the amount of input data is incorrect. Re-
enter the correct number of hexadecimal characters.
Invalid PIN; re-enter - a PIN of less than 4 or greater than 8 is entered.
Smartcard error; command/return: 0003 - invalid PIN is entered.
No component card - no key component on the provided smartcard.
Not a LMK card - card is not formatted for LMK or key storage.
Card not formatted - card is not formatted.
Internal failure 12: function aborted - the contents of LMK storage have
been corrupted or erased. Do not continue. Inform the Security Department.
Various key block field errors – the value entered is invalid, or incompatible
with previously entered values.
Encrypted key: U YYYY YYYY YYYY YYYY YYYY YYYY YYYY YYYY
Key check value: ZZZZZZ
Online-AUTH>
Encrypted key: U YYYY YYYY YYYY YYYY YYYY YYYY YYYY YYYY
Key check value: ZZZZZZ
Online-AUTH>
Encrypted key: U YYYY YYYY YYYY YYYY YYYY YYYY YYYY YYYY
Key check value: ZZZZZZ
Online-AUTH>
Example 4: The security settings require that multiple components are used to form keys,
(Variant LMK) but the user attempts to form a key from one component.
Online-AUTH> FK <Return>
Enter LMK id: 00 <Return>
Enter key length[1,2,3]: 2 <Return>
Enter key type: 002 <Return>
Enter key scheme: U <Return>
Component type [X,H,E,S,T]: E <Return>
Enter number of components (2-9): 1 <Return>
Invalid Entry
Enter number of components (2-9): 2 <Return>
Encrypted key: U YYYY YYYY YYYY YYYY YYYY YYYY YYYY YYYY
Key check value: ZZZZZZ
Online-AUTH>
Example 5: This example forms a single length DES key from plaintext components.
(3DES Key Block
LMK) Online-AUTH> FK <Return>
Enter LMK id: 01 <Return>
Enter key length [1,2,3]: 1 <Return>
Enter key scheme: S <Return>
Component type [X,H,E,S,T]: X <Return>
Enter number of components [1-9]: 2 <Return>
Enter key usage: P0 <Return>
Enter mode of use: N <Return>
Enter key version number: 99 <Return>
Enter exportability: E <Return>
Enter optional blocks? [Y/N]: N <Return>
Example 6: This example forms a double length 3DES key from components on a
(3DES Key Block smartcard.
LMK)
Online-AUTH> FK <Return>
Enter LMK id: 01 <Return>
Enter Key Length[1,2,3]: 2 <Return>
Enter key scheme: S <Return>
Component type [X,H,E,S,T]: S <Return>
Enter number of components (1-9): 2 <Return>
Example 7: This example forms a double length 3DES key from plaintext components.
(AES Key Block
LMK) Online-AUTH> FK <Return>
Enter LMK id: 02 <Return>
Enter algorithm [3DES/AES]: 3 <Return>
Enter key length [1,2,3]: 2 <Return>
Enter key scheme: S <Return>
Component type [X,H,E,S,T]: X <Return>
Enter number of components [1-9]: 2 <Return>
Enter key usage: P0 <Return>
Enter mode of use: N <Return>
Enter key version number: 99 <Return>
Example 8: This example forms a 128-bit AES key from components on a smartcard.
(AES Key Block
LMK) Online-AUTH> FK <Return>
Enter LMK id: 02 <Return>
Enter algorithm [3DES/AES]: A <Return>
Enter key length [128,192,256]: 128 <Return>
Enter key scheme: S <Return>
Component type [X,E,S]: S <Return>
Enter number of components [1-9]: 2 <Return>
Enter key version number: 00 <Return>
Enter optional blocks? [Y/N]: N <Return>
Example 8: This example forms a 128-bit AES key from encrypted components.
(AES Key Block
LMK) Online-AUTH> FK <Return>
Enter LMK id: 02 <Return>
Enter algorithm [3DES/AES]: A <Return>
Enter key length [128,192,256]: 128 <Return>
Enter key scheme: S <Return>
Component type [X,E,S]: E <Return>
Enter number of components [1-9]: 3 <Return>
Enter key version number: 00 <Return>
Enter optional blocks? [Y/N]: Y <Return>
Enter optional block identifier: 03 <Return>
Enter optional block data: 2005:12:21:00 <Return>
Enter more optional blocks? [Y/N]: Y <Return>
Enter optional block identifier: 04 <Return>
Enter optional block data: 2007:12:21:00 <Return>
Enter more optional blocks? [Y/N]: N <Return>
Variant LMK
Authorization: Determined by KTT(G&E)
Activity: generate.{key}.console and
export.{key}.console
Command: KG
Function: To generate a random 3DES/AES key and return it encrypted under the LMK
and optionally under a ZMK (for transmission to another party).
Outputs: Key encrypted under an Key Block containing the key encrypted
appropriate variant of the selected under the selected LMK.
LMK. Key/Key Block encrypted under the
Key/Key Block encrypted under ZMK (if exporting).
the ZMK (if exporting). Key Check Value.
Key Check Value.
Notes: To generate an AES key or to use an AES ZMK requires the command to
use an AES Key Block LMK.
For security reasons, when using a Key Block LMK, this command will not
support the export of a DEK (Key Usage = "D0" or "21") to variant or X9.17
format.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Must be in Authorized State or Activity not authorized - the key type
provided requires the HSM to be in Authorized State.
Data invalid; please re-enter - the encrypted ZMK does not contain the
correct characters, or the key check value does not contain 6 hexadecimal
characters. Re-enter the correct number of hexadecimal characters.
Key parity error; please re-enter - the ZMK does not have odd parity on
each byte. Re-enter the encrypted ZMK and check for typographic errors.
Invalid key scheme for key length - the Key scheme is inappropriate for Key
length.
Invalid key scheme - the key scheme is invalid.
Invalid key type; re-enter - the key type is invalid. See the Key Type Table
the Host Programmer's Manual.
Internal failure 12: function aborted - the contents of LMK storage have
been corrupted or erased. Do not continue. Inform the Security Department.
Various key block field errors – the value entered is invalid, or incompatible
with previously entered values.
Example 2: This example generates a new double length DES key, and exports it to
(Variant LMK) X9.17 format.
Online-AUTH> KG <Return>
Enter LMK id: 00 <Return>
Enter key length [1,2,3]: 2 <Return>
Enter key type: 002 <Return>
Enter key scheme (LMK): U <Return>
Example 3: This example generates a new double length DES key, and exports it to TR-
(Variant LMK) 31 format.
Online-AUTH> KG <Return>
Enter LMK id: 00 <Return>
Enter key length [1,2,3]: 2 <Return>
Enter key type: 001 <Return>
Enter key scheme (LMK): U <Return>
Enter key scheme (ZMK): R <Return>
Enter ZMK: U XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
<Return>
Enter key usage: P0 <Return>
Enter mode of use: N <Return>
Enter key version number: 44 <Return>
Enter exportability: N <Return>
Enter optional blocks? [Y/N]: N <Return>
Enter TR-31 optional blocks? [Y/N]: Y <Return>
Enter TR-31 optional block identifier: TS <Return>
Enter optional block data: 2022-09-26T16:06:00Z <Return>
Enter more TR-31 optional blocks? [Y/N]: Y <Return>
Enter TR-31 optional block identifier: KC <Return>
The KCV is inserted into TR-31 optional block data
automatically.
Enter more TR-31 optional blocks? [Y/N]: Y <Return>
Enter TR-31 optional block identifier: KP <Return>
The KCV is inserted into TR-31 optional block data
automatically.
Enter more TR-31 optional blocks? [Y/N]: Y <Return>
Enter TR-31 optional block identifier: 00 <Return>
Enter optional block data: ABCD4 <Return>
Enter more TR-31 optional blocks? [Y/N]: Y <Return>
Enter TR-31 optional block identifier: 99 <Return>
Enter optional block data: 123456EF <Return>
Enter more TR-31 optional blocks? [Y/N]: N <Return>
Key under LMK: U YYYY YYYY YYYY YYYY YYYY YYYY YYYY YYYY
Key under ZMK: R YYYYYYYY……YYYYYY
Key check value: ZZZZZZ
Online-AUTH>
Example 4: This example generates a new double length DES key, and exports it to
(3DES Key Block X9.17 format.
LMK)
Online-AUTH> KG <Return>
Enter LMK id: 01 <Return>
Enter key length [1,2,3]: 2 <Return>
Enter key scheme (LMK): S <Return>
Enter key scheme (ZMK): X <Return>
Enter ZMK: S XXXXXXXX……XXXXXX <Return>
Enter key usage: P0 <Return>
Enter mode of use: N <Return>
Enter key version number: 22 <Return>
Example 5: This example generates a new double length DES key, and exports it to TR-31
(3DES Key Block format.
LMK)
Online> KG <Return>
Enter LMK id: 01 <Return>
Enter key length [1,2,3]: 2 <Return>
Enter key scheme (LMK): S <Return>
Enter key scheme (ZMK): R <Return>
Enter ZMK: S XXXXXXXX……XXXXXX <Return>
Enter key usage: 72 <Return>
Enter mode of use: N <Return>
Enter key version number: 33 <Return>
Enter exportability: E <Return>
Enter optional blocks? [Y/N]: Y <Return>
Enter optional block identifier: 03 <Return>
Enter optional block data: 2005:12:21:00 <Return>
Enter more optional blocks? [Y/N]: Y <Return>
Enter optional block identifier: 04 <Return>
Enter optional block data: 2007:12:21:00 <Return>
Enter more optional blocks? [Y/N]: N <Return>
Enter exportability field for exported key block: <Return>
Enter TR-31 optional blocks? [Y/N]: Y <Return>
Enter TR-31 optional block identifier: KS <Return>
Enter optional block data: 0E11111111 <Return>
Enter more TR-31 optional blocks? [Y/N]: Y <Return>
Enter TR-31 optional block identifier: TS <Return>
Enter optional block data: 2022-09-26T16:06:00Z <Return>
Enter more TR-31 optional blocks? [Y/N]: Y <Return>
Enter TR-31 optional block identifier: IK <Return>
Enter optional block data: 112233445566778 <Return>
Enter more TR-31 optional blocks? [Y/N]: Y <Return>
Enter TR-31 optional block identifier: KC <Return>
The KCV is inserted into TR-31 optional block data
automatically.
Enter more TR-31 optional blocks? [Y/N]: Y <Return>
Enter TR-31 optional block identifier: KP <Return>
The KCV is inserted into TR-31 optional block data
automatically.
Enter more TR-31 optional blocks? [Y/N]: Y <Return>
Enter TR-31 optional block identifier: KV <Return>
Enter optional block data: 1 <Return>
Enter more TR-31 optional blocks? [Y/N]: Y <Return>
Enter TR-31 optional block identifier: 00 <Return>
Enter optional block data: ABCD4 <Return>
Enter more TR-31 optional blocks? [Y/N]: Y <Return>
Enter TR-31 optional block identifier: 99 <Return>
Enter optional block data: 123456EF <Return>
Enter more TR-31 optional blocks? [Y/N]: N <Return>
Authorization: The HSM must either be in the Authorized State, or the activity
command.ik.console must be authorized.
Notes: To import an AES key or to use an AES ZMK requires the command to
use an AES Key Block LMK.
For security reasons, when using a Key Block LMK, this command will not
support the import of a DEK (Key Usage = "D0" or "21") from variant or
X9.17 format.
Use of this command will always create an entry in the Audit Log.
If the option "Enforce Atalla variant match to Thales key type" is set to YES
in the CS console command, the following matchings between Atalla
variant and Thales variant key types will be enforced:
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Must be in Authorized State or Activity not authorized - the key type
provided requires the HSM to be in Authorized State.
Data invalid; please re-enter - the encrypted ZMK does not contain the
correct characters, or the key check value does not contain 6 hexadecimal
characters. Re-enter the correct number of hexadecimal characters.
Key parity error; re-enter key - the parity of the ZMK is not odd.
Warning: key parity corrected - the parity of the key encrypted under the
ZMK is not odd.
Invalid key scheme - the key scheme is invalid.
Invalid key type; re-enter - the key type is invalid. See the Key Type Table
in the Host Programmer's Manual.
Internal failure 12: function aborted - the contents of LMK storage have
been corrupted or erased. Do not continue. Inform the Security
Department.
Various key block field errors – the value entered is invalid, or incompatible
with previously entered values.
<Return>
Enter key: X XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
<Return>
Encrypted key: U YYYY YYYY YYYY YYYY YYYY YYYY YYYY YYYY
Key check value: ZZZZZZ
Example 4: This example imports a key from TR-31 format. Note that a new (more
(3DES Key Block restrictive) value for the imported key block's Key Usage field is entered
LMK) during the import process.
Online> IK <Return>
Enter LMK id: 01 <Return>
Enter key scheme (LMK): S <Return>
Enter ZMK: S XXXXXXXX……XXXXXX <Return>
Enter key: R XXXXXXXX……XXXXXX <Return>
Enter modified key usage: 72 <Return>
Enter optional blocks? [Y/N]: Y <Return>
Enter optional block identifier: 03 <Return>
Enter optional block data: 2005:12:21:00 <Return>
Enter more optional blocks? [Y/N]: Y <Return>
Enter optional block identifier: 04 <Return>
Enter optional block data: 2007:12:21:00 <Return>
Enter more optional blocks? [Y/N]: N <Return>
Key under LMK: S YYYYYYYY……YYYYYY
Key check value: ZZZZZZ
Online>
Example 5: This example imports a key from Thales Key Block format.
(3DES or AES Key
Block LMK) Online> IK <Return>
Enter LMK id: 01 <Return>
Enter key scheme (LMK): S <Return>
Enter ZMK: S XXXXXXXX……XXXXXX <Return>
Enter key: S XXXXXXXX……XXXXXX <Return>
Key under LMK: S YYYYYYYY……YYYYYY
Key check value: ZZZZZZ
Online>
Variant LMK
Authorization: Determined by KTT(E)
Activity: export.{key}.console
Command: KE
Function: To translate a 3DES/AES key from encryption under the specified LMK to
encryption under a ZMK.
Variant LMK Key Block LMK
Authorization: This command examines the The authorization requirement for this
'Export' flag of the given key type command depends on the type of
within the Key Type Table to export being requested:
determine whether authorization is
required. If required, the HSM must Exported key
Authorization
either be in the Authorized State, or scheme
the activity export.{key}.console 'S' (Thales Key None
must be authorized, where 'key' is Block)
the key type code of the key being 'R' (TR-31 Key None
exported. Block)
'U', 'T' (Variant) Required
'Z', 'X', 'Y' (X9.17) Required
Outputs: Key/Key Block encrypted under Key/Key Block encrypted under the
the ZMK. ZMK.
Key Check Value. Key Check Value.
Notes: To export an AES key or to use an AES ZMK requires the command to use
an AES Key Block LMK.
For security reasons, when using a Key Block LMK, this command will not
support the export of a DEK (Key Usage = "D0" or "21") to variant or X9.17
format.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Must be in Authorized State or Activity not authorized - the key type
provided requires the HSM to be in Authorized State.
Data invalid; please re-enter - the encrypted ZMK or key does not contain
16 or 32 hex or 1 alpha + 32 hex or 1 alpha + 48 hex. Re-enter the correct
number of hexadecimal characters.
Key parity error; re-enter key - the ZMK or key does not have odd parity on
each byte. Re-enter the key and check for typographic errors.
Invalid key scheme - the key scheme is invalid.
Invalid key type; re-enter - the key type is invalid. See the Key Type Table
the payShield 10K Host Programmer's Manual.
Internal failure 12: function aborted - the contents of LMK storage have
been corrupted or erased. Do not continue. Inform the Security
Department.
Various key block field errors – the value entered is invalid, or incompatible
with previously entered values.
Online-AUTH>
Variant LMK
Authorization: Required if 6 digits
Activity: generate.{key}.console
Command: CK
Function: To generate a key check value (KCV) for a 3DES/AES key encrypted under a
specified LMK.
Variant LMK Key Block LMK
Authorization: This command only requires The HSM does not require any
authorization when calculating authorization to run this command.
either 8 or 16 digit Key Check Note: Key Check Values of key blocks
Values. If required, the HSM must are always 6-digits in length.
either be in the Authorized State, or
the activity
generate.{key}.console must be
authorized, where 'key' is the key
type of the key being used.
Regardless of the authorization
requirement, this command
examines the 'Generate' flag of the
given key type within the Key Type
Table to determine whether the
check value can be calculated.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Incompatible LMK schemes - the LMK schemes are different.
Data invalid; please re-enter - incorrect number of characters.
Key parity error; re-enter key - the entered key does not have odd parity
on each byte. Re-enter the complete line (key and Key-Type code) and
check for typographic errors.
Invalid key type; re-enter - the key type is invalid. See the Key Type Table
in the payShield 10K Host Programmer's Manual.
Internal failure 12: function aborted - the contents of LMK storage have
been corrupted or erased. Do not continue. Inform the Security
Department.
Various key block field errors – the value entered is invalid, or
incompatible with previously entered values.
Function: To set the value of the KMC sequence number held within the HSM protected
memory.
Authorization: The HSM must be in the Offline state to run this command. Additionally, the
HSM must be either in the Authorized State, or the activity misc.console must
be authorized.
Outputs: None.
Command: EA
Function: To move a (KEK)ZMK from encryption under LMK Pair 4 – 5 to encryption under LMK Pair 4 – 5
variant 3 or 4.
Notes: This command is used to support the functionality provided for the Australian AS2805
standards.
Input: KEK (ZMK) encrypted under LMK pair 4 – 5: 32 Hex or 1 Alpha + 32 Hex or 1 Alpha + 48 Hex.
KEY PARITY ERROR – The KEK (ZMK) does not have odd parity.
KEY CHECK VALUE FAILURE – The Key Check Value does not match the key.
MASTER KEY PARITY ERROR – The contents of LMK storage have been corrupted or erased.
Do not continue – inform the Security Department.
Example:
Online–AUTH> EA <Return>
Enter ZMK: U AAAA AAAA AAAA AAAA BBBB BBBB BBBB BBBB <Return>
Enter Key check value: XXXXXX <Return>
Enter KEK type (R/S): R <Return>
Key Scheme: U <Return>
KEKr : U CCCC CCCC CCCC CCCC DDDD DDDD DDDD DDDD
Online–AUTH>
Authorization: The HSM must be either in the Authorized State, or the activity misc.console
must be authorized, using the Authorizing Officer cards of the relevant LMK.
Inputs: LMK identifier: indicates the LMK to use when decrypting the supplied
CVK(s).
Encrypted CVK
Primary account number (PAN) for the card: up to 19 decimal digits.
Card Expiry date: 4 decimal digits.
Service code: 3 decimal digits.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Command only allowed from Authorized - the HSM is not authorized to
perform this operation.
Data invalid; please re-enter - possibly incorrect key length. Could also be
incorrect PAN, card expiry date, or service code length or non-decimal PAN,
card expiry date or service code.
Key parity error; please re-enter - the parity of the key entered is not odd.
Internal failure 12: function aborted - the contents of LMK storage have
been corrupted or erased. Do not continue. Inform the Security Department.
Various key block field errors – the value entered is invalid, or incompatible
with previously entered values.
Notes: Use of this command will always create an entry in the Audit Log.
Example 1: This example generates a CVV using a CVK pair encrypted in variant format.
(Variant LMK)
Online-AUTH> CV <Return>
Enter LMK id: 00 <Return>
Enter key A: XXXX XXXX XXXX XXXX <Return>
Enter key B: XXXX XXXX XXXX XXXX <Return>
Enter PAN: 1234567812345678 <Return>
Enter expiry date: 0694 <Return>
Enter service code: 123 <Return>
CVV: 321
Online-AUTH>
Example 2: This example generates a CVV using a double length CVK in variant format.
(Variant LMK)
Online-AUTH> CV <Return>
Enter LMK id: 00 <Return>
Enter key A: U XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
<Return>
Enter PAN: 1234567812345678 <Return>
Enter expiry date: 0694 <Return>
Enter service code: 123 <Return>
CVV: 321
Online-AUTH>
Example 3: This example generates a CVV using a CVK in key block format.
(Key Block LMK)
Online-AUTH> CV <Return>
Enter LMK id: 01 <Return>
Enter key block: S XXXXXXXX……XXXXXX <Return>
Enter PAN: 1234567812345678 <Return>
Enter expiry date: 0694 <Return>
Enter service code: 123 <Return>
CVV: 321
Online-AUTH>
Authorization: The HSM must be either in the Authorized State, or the activity misc.console
must be authorized, using the Authorizing Officer cards of the relevant LMK.
Inputs: LMK identifier: indicates the LMK to use when decrypting the supplied
PVK(s).
Encrypted PVK.
The PVV data block comprising:
o The 11 right-most digits of the account number (excluding check digit):
11 decimal digits.
o The PIN verification key indicator (PVKI): 1 decimal digit.
o The 4 left-most digits of the clear PIN: 4 decimal digits.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Command only allowed from Authorized - the HSM is not authorized to
perform this operation.
Data invalid; please re-enter - the PVK A, PVK B or the PVV data block field
is not 16 characters long. Re-enter the correct number of characters.
Key parity error; please re-enter - the PVK A or PVK B does not have odd
parity on each byte. Re-enter the encrypted PVK A or PVK B and check for
typographic errors.
Internal failure 12: function aborted - the contents of LMK storage have been
corrupted or erased. Do not continue. Inform the Security Department.
Various key block field errors – the value entered is invalid, or incompatible
with previously entered values.
Notes: The completion of this activity will always be entered in the audit log
irrespective of the AUDITOPTIONS settings,
Example 1: This example generates a PVV using a PVK pair in variant format.
(Variant LMK)
Online-AUTH> PV <Return>
Enter LMK id: 00 <Return>
Enter key A: XXXX XXXX XXXX XXXX <Return>
Enter key B: XXXX XXXX XXXX XXXX <Return>
Enter PVV data block: XXXXXXXXXXX N NNNN <Return>
PVV: NNNN
Online-AUTH>
Example 2: This example generates a PVV using a double length PVK in variant format.
(Variant LMK)
Online-AUTH> PV <Return>
Enter LMK id: 00 <Return>
Enter key A: U XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
<Return>
Enter PVV data block: XXXXXXXXXXX N NNNN <Return>
PVV: NNNN
Online-AUTH>
Example 3: This example generates a PVV using a PVK in key block format.
(Key Block LMK)
Online-AUTH> PV <Return>
Enter LMK id: 01 <Return>
Enter key block: S XXXXXXXX……XXXXXX <Return>
Enter PVV data block: XXXXXXXXXXX N NNNN <Return>
PVV: NNNN
Online-AUTH>
Function: To load the Diebold table into user storage in the HSM.
Authorization: The HSM must be online and must be either in the Authorized State, or the
activity misc.console must be authorized, using the Authorizing Officer cards
of the relevant LMK.
Inputs: LMK identifier: indicates the LMK to use when encrypting the supplied
values.
Location in user storage at which to store the Diebold table. See notes
below.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Command only allowed from Online-Authorized - the HSM is not online, or
the HSM is not authorized to perform this operation, or both.
Invalid index - the specified location in user storage is out of range. Enter a
valid value.
Data invalid; please re-enter - the entered index is not 3 hexadecimal
characters long, or a table entry is not 16 hexadecimal characters long. Re-
enter the correct number of hexadecimal characters.
Invalid table: duplicate or missing values - some of the data entered is not a
valid entry for a Diebold table. Check the table and re-enter the data,
checking for typographic errors.
Internal failure 12: function aborted - the contents of LMK storage have
been corrupted or erased. Do not continue. Inform the Security Department.
Example: The security setting "User storage key length" has a fixed length value.
Online-AUTH> R <Return>
Enter LMK id: 00 <Return>
Enter index (000 – FE0): XXX <Return>
Now enter table, 16 hex digits/line
Line 01: XXXX XXXX XXXX XXXX <Return>
XXXX XXXX XXXX XXXX OK? [Y/N] Y <Return>
Line 02:
…
…
Line 32: XXXX XXXX XXXX XXXX <Return>
XXXX XXXX XXXX XXXX OK? [Y/N] Y <Return>
Note: The result of the "R" command gives no indication as to the LMK scheme or LMK identifier
used in the command. When this value is used with other (host) commands, the user must ensure
that the correct LMK is specified in the command.
Function: To encrypt a 16 digit decimalization table for use with host commands using
IBM 3624 PIN Generation & Verification.
Authorization: The HSM must be either in the Authorized State, or the activity misc.console
must be authorized, using the Authorizing Officer cards of the relevant LMK.
Inputs: LMK identifier: indicates the LMK to use when encrypting the decimalization
table.
Decimalization table. 16 decimal digits that specify the mapping between
hexadecimal & decimal numbers.
The HSM by default checks that the decimalization table contains at least 8
different digits, with no digit repeated more than 4 times. This feature may
be disabled using the Configure Security parameter "Enable decimalization
table check". Disabling of this feature is not recommended.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Not Authorized - the HSM is not authorized to perform this operation.
Decimalization table invalid - the decimalization table is not all decimal or
does not contain at least 8 different digits with no digit repeated more than 4
times.
Master Key Parity Error - the contents of the HSM storage have been
corrupted or erased. Do not continue. Inform the security department.
Example: This example encrypts a decimalization table using a Variant LMK (same
(Variant or 3DES applies with 3DES Key Block LMK).
Key Block LMK)
Online–AUTH> ED <Return>
Enter LMK id: 00 <Return>
Enter decimalization table: 0123456789012345 <Return>
Encrypted decimalization table: XXXX XXXX XXXX XXXX
Online–AUTH>
Note: The result of the "ED" command gives no indication as to the LMK scheme or LMK identifier
used in the command. When this value is used with other (host) commands, the user must ensure
that the correct LMK is specified in the command.
Authorization: The HSM must be either in the Authorized State, or the activity misc.console
must be authorized, using the Authorizing Officer cards of the relevant LMK.
Inputs: LMK identifier: indicates the LMK to use when translating the decimalization
table.
Encrypted Decimalization table. This is the result of encrypting a
decimalization table using the ED command. The size of the encrypted
decimalization table depends on the LMK used to encrypt it: for DES-based
Variant and 3DES Key Block LMKs, the size is 16 hex digits. For AES Key
Block LMKs, the size is 32 hex digits.
The HSM by default checks that the decimalization table contains at least 8
different digits, with no digit repeated more than 4 times. This feature may
be disabled using the Configure Security parameter "Enable decimalization
table check". Disabling of this feature is not recommended.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Not Authorized - the HSM is not authorized to perform this operation.
Decimalization Table Invalid - decimalization table not all
decimal or does not contain at least 8 different digits with no digit repeated
more than 4 times.
Master Key Parity Error - the contents of the HSM storage have been
corrupted or erased. Do not continue. Inform the security department.
No LMK in Key Change Storage - Key Change storage is empty.
Note: The result of the "TD" command gives no indication as to the LMK scheme or LMK identifier
used in the command. When this value is used with other (host) commands, the user must ensure
that the correct LMK is specified in the command.
Authorization: The HSM must be either in the Authorized State, or the activity misc.console
must be authorized, using the Authorizing Officer cards of the relevant LMK.
Inputs: LMK identifier: indicates the LMK to use when generating the MAC.
8 byte IPB represented as 16 hex ASCII characters.
Errors: Invalid LMK identifier - no LMK loaded or entered identifier out of range.
Command only allowed from Authorized - the HSM is not authorized to
perform this operation.
IPB is not 8 bytes. Please re-enter - the validation of the IPB failed.
Warning: Less than 16 '1'bits in IPB - the IPB contains less than 16 '1' bits.
Note: The result of the "MI" command gives no indication as to the LMK scheme or LMK identifier
used in the command. When this value is used with other (host) commands, the user must ensure
that the correct LMK is specified in the command.
Note: DO NOT REPEATEDLY ENTER INVALID PINS. A LEGACY SMARTCARD "LOCKS" AFTER
EIGHT SUCCESSIVE INVALID PINS HAVE BEEN ENTERED. LEGACY SMARTCARDS
CAN BE "UNLOCKED" BY REFORMATTING, WHICH DELETES THE ENTIRE CONTENTS
OF THE CARD. NEW SMARTCARDS USED BY THE PAYSHIELD MANAGER LOCK AFTER
FIVE SUCCESSIVE INVALID PINS HAVE BEEN ENTERED. THEY MAY BE UNLOCKED BY
RECOMMISSIOING THEM.
Authorization: The HSM does not require any authorization to run this command.
Errors: Invalid PIN; re-enter - the PIN entered is fewer than 5 or greater than 8
digits.
PINs did not agree - the new PINs entered for the card did not match each
other.
Invalid input. Entry must be in numeric format - non numeric value is
entered for time or date.
Authorization: The HSM must be in the offline or secure state to run this command.
Function: To verify the key component or share held on a smartcard. The HSM reads
the key component from the smartcard, computes the check value, compares
this with the check value stored on the card and displays the result.
Authorization: The HSM does not require any authorization to run this command.
Scheme: Variant
Check: 012345.
Compare with card: Pass.
Online>
If a smartcard is defective or cannot be successfully verified, replace it. Copy a verified smartcard
(from the same set of components) onto a replacement.
Function: To select a new PIN for a smartcard (RACCs and RLMKs are supported)
without changing any of the other details stored on the card.
The old PIN must be submitted before a change is effected and the new PIN
must be supplied correctly at two consecutive prompts.
Authorization: The HSM does not require any authorization to run this command.
Authorization: The HSM does not require any authorization to run this command.
Inputs: None.
Authorization: The HSM does not require any authorization to run this command.
Inputs: None.
Outputs: None.
Errors: None.
Function: To encrypt and decrypt the given data block with the given single-length key.
Authorization: The HSM does not require any authorization to run this command.
Errors: Data invalid; please re-enter - the entered data does not comprise 16
hexadecimal characters. Re-enter the correct number of hexadecimal
characters.
Function: To encrypt and decrypt the given data block with the given double-length key.
Authorization: The HSM does not require any authorization to run this command.
Errors: Data invalid; please re-enter - the entered data does not comprise 32
hexadecimal characters. Re-enter the correct number of hexadecimal
characters.
Function: To encrypt and decrypt the given data block with the given triple-length key.
Authorization: The HSM does not require any authorization to run this command.
Errors: Data invalid; please re-enter - Re-enter the correct number of hexadecimal
characters.
Note that the HSM's private key, the certified public key and the Domain Authority self-signed public key
certificate are recovered by use of the HSM Master Key (HRK) if a tamper attempt has occurred.
Inputs: None
Outputs: None
Secure>
Function: To decommission the HSM by deleting the payShield Managers keys and
groups.
Inputs: None
Outputs: None
Secure>
Inputs: None
Outputs: None
Choice ID Type
1 ABC321 restricted
2 XYZ123 restricted
Which RACC do you want to remove? 1 <Return>
Secure>
Inputs: None
Outputs: None
Secure>
Function: Generates the Customer Trust Authority and stores them on smartcards.
Inputs: Country
State
Locality
Organization
Organizational Unit
Common Name
Email
Number of private shares
Number of shares needed to recover private key
Outputs: None
Function: Defines a RACC as either a left or right key in the whitelist on the HSM.
Outputs: None
Secure>
Inputs: None
Outputs: None
Secure>
In order to transfer a Variant LMK you will be required to fully reassemble the
LMK (bring all the components together). Then, the fully formed Variant LMK
is split among shares onto the pre-commissioned payShield Manager RLMK
cards.
For Key Block LMKs, they are not stored as components on non-payShield
Manager smart cards, but as shares. However, you must bring a quorum of
share holders together, reconstitute the LMK, and then split it among shares
onto the pre-commissioned payShield Manager RLMK cards.
Outputs: None
Check: 268604
Load more components? [Y/N]: N <Return>
Secure>
Inputs: None
Outputs: None
Secure>
Function: To show the state of the HSM Management commissioning and whitelist.
Inputs: None
Example 1: Note: The following contains sample output, e.g., Issue to: TES LC.
Online> XY <Return>
Authorized RACCs : 4
Serial Number Certificate
Number RACC Type
7307001132072979 BF9BBAA7525818AA Left
7307001145072979 392FDA0DD7B25CBA Left
7307001152072979 DBD139588ED7A17C Right
7307001265072979 223386DBE9391015 Right
Online>
Inputs: None
Outputs: None
Secure>
Function: To generate (or use the existing) HSM's public/private key pair for use with
secure host communications, and extract the public key in the form of a
Certificate Signing Request (“.CSR”).
The private key is stored in tamper protected memory. It is backed up
internally using the HSM Master Key (HRK) – see command SK for details.
Authorization: The HSM must be in the secure state to run this command.
Inputs: Certificate fields (Country, State, Locality, Org Name, Org Unit Name,
Common Name, E-mail Address).
Key Type (RSA, ECDSA)
Filename when saving to USB memory stick
Notes: If the HSM's public/private key pair has already been created, then SG will
use the existing key pair. If a new key pair is required, use the SD console
command to delete the private key.
The HRK must be installed (using the SK console command) prior to using
this command.
The exported file will automatically have the extension “.CSR”.
The size of RSA keys used is 2048-bits.
The size of ECDSA keys used is either 256-bits, 384-bits or 521-bits (user
selectable).
The client must use the same RSA/ECDSA key type as is included in the
HSM's CSR.
A maximum certificate chain length of 6 is supported.
The required format for the USB memory stick is FAT32. The Operating
System used in the payShield 10K supports most types of USB memory
stick, but may not have the drivers for some of the newer types. If difficulties
are experienced when trying to read from or write to a USB device, an
alternative memory stick should be used.
Example 1: This example demonstrates the use of the SG console command to generate a 521-bit
ECDSA public/private key pair and output a certificate signing request.
Secure> SG <Return>
Please enter the Subject Information for the Certificate Request:
Secure>
Example 2: This example demonstrates the use of the SG console command to generate a 2048-bit
RSA public/private key pair and output a certificate signing request.
Secure> SG <Return>
Please enter the Subject Information for the Certificate Request:
Secure>
Function: To import a certificate for storage inside the HSM for use with secure host
communications.
The certificate may be one of the following:
HSM certificate
Client certificate
Sub-CA certificate (for either HSM or client)
Root-CA certificate (for either HSM or client)
Authorization: The HSM must be in the secure state to run this command.
Notes: The HSM's public/private key pair must be installed (using the SG console
command) prior to using this command.
The file(s) to be imported must have the extension ".CRT".
A maximum certificate chain length of 6 is supported.
The required format for the USB memory stick is FAT32. The Operating
System used in the payShield 10K supports most types of USB memory
stick, but may not have the drivers for some of the newer types. If difficulties
are experienced when trying to read from or write to a USB device, an
alternative memory stick should be used.
Example 1: This example demonstrates the use of the SI console command to import the root CA
certificate (that signed the HSM's certificate) into the HSM.
Secure> SI <Return>
Select File
1 – HSM-0001.crt
2 – BankXYZRootCA.crt
3 - Client.crt
4 - ClientRootCA.crt
File: 2 <Return>
Secure>
Example 2: This example demonstrates the use of the SI console command to import the HSM's
(now signed) certificate back into the HSM.
(Note that the root CA certificate has already been installed (see Example 1), and so the
HSM indicates that the "Chain of Trust" is complete.
Secure> SI <Return>
Select File
1 – HSM-0001.crt
2 - BankXYZRootCA.crt
3 - Client.crt
4 - ClientRootCA.crt
File: 1 <Return>
Secure>
Function: To export the HSM certificate's chain of trust (i.e. the chain of certificates
required to authenticate the HSM's certificate, up to and including the root CA
certificate).
Authorization: The HSM must be in the secure state to run this command.
Notes: The HSM's public/private key pair must be installed (using the SG console
command) prior to using this command.
The exported file will automatically have the extension ".CRT".
A maximum certificate chain length of 6 is supported.
The required format for the USB memory stick is FAT32. The Operating
System used in the payShield 10K supports most types of USB memory stick,
but may not have the drivers for some of the newer types. If difficulties are
experienced when trying to read from or write to a USB device, an alternative
memory stick should be used.
Example 1: This example demonstrates the use of the SE console command to export the HSM
certificate's chain of trust (in this case, just the root CA certificate) to a USB memory
stick.
Secure> SE <Return>
Bank XYZ
-----BEGIN CERTIFICATE-----
MIID+TCCAuGgAwIBAgIJAJyPxxP6oxAQMA0GCSqGSIb3DQEBBQUAMIGyMQswCQYD
VQQGEwJVSzEYMBYGA1UECBMPQnVja2luZ2hhbXNoaXJlMRUwEwYDVQQHEwxMb25n
IENyZW5kb24xDzANBgNVBAoTBlRoYWxlczEMMAoGA1UECxMDUE1HMR4wHAYDVQQD
ExVwYXlTaGllbGQgQ2VydGlmaWNhdGUxMzAxBgkqhkiG9w0BCQEWJGphbWVzLnRv
cmp1c3NlbkB0aGFsZXMtZXNlY3VyaXR5LmNvbTAeFw0xMzA1MDkxMDU5MjJaFw0y
MzA1MDcxMDU5MjJaMIGyMQswCQYDVQQGEwJVSzEYMBYGA1UECBMPQnVja2luZ2hh
bXNoaXJlMRUwEwYDVQQHEwxMb25nIENyZW5kb24xDzANBgNVBAoTBlRoYWxlczEM
MAoGA1UECxMDUE1HMR4wHAYDVQQDExVwYXlTaGllbGQgQ2VydGlmaWNhdGUxMzAx
BgkqhkiG9w0BCQEWJGphbWVzLnRvcmp1c3NlbkB0aGFsZXMtZXNlY3VyaXR5LmNv
bTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANTFR+dFeafMZsMwgeOK
vWxjmaUOP6z5mK+qeD4wYvNP5cv1GVqKoMFTNkJL+jeBSyo39IR0T4AoalroUb6F
yi76nmv0VVqFgPWIS92bRBozGp8dZU09aJQGCuOIjEvKuUtddWrpp0ClFEnTXXsx
LpfjTal5vSl+D9lazkMiFxdi7OUQyf6CiVuoch7bq0A4nmcjSlPyE/b3FpJn6zul
S+/DvRo4N4wJBHkZftAyPHZUYaV84perRG4CRbirFUfpRH1kVC+P6Gal/KMKWlzE
kKJOIxZqtaU973/AD4CV2QZtMurFC9m9p84uOW2SinMeKEdolVTFgVo+h3KjFHM/
yVsCAwEAAaMQMA4wDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAoHEN
1QyqWSTXkhtAnu+F3gy/Qs/wYLszaYYlBUSQasjN866SzRC/jVtYT6UYabvOke5B
9Z4KNsICkRtmgdYpic0kjK40RjUdw4QZu4jC+EM4eY8HTa7fSaH1nxrkPAEUwNKZ
o3Re+3jQeIx6gi5rnLf/FZ1cEP1fySh0hzuSo2xSIY/hwUWhlZJYZKBu3wzfHG1d
GB7D4xU4jUTvkKJQDuCHUdSrf+cMstN9dkrhYNNw49L9tYrD0ZzlPM3rVXD28uAL
Wt+CPOtsjIixNRl8vZmEVJDWJaRibCcfrTeDBs4O3hmAgx/Mdv5FX/NSjhZZO15m
X4FkYiQv2CJb7J/vAw==
-----END CERTIFICATE-----
Secure>
Function: To view the list of currently installed certificates (for use with secure host
communications). Individual certificates can be displayed in full.
Outputs: The HSM's public/private key pair must be installed (using the SG console
command) prior to using this command.
Prompts, as above
List of currently installed certificates.
Status of HSM's private key – installed or not installed
HSM Certificate installed – maximum of 1 certificate
Client Certificate(s) installed – maximum of 10 certificates
CA Certificate(s) installed – maximum of 10 certificates
Chain of trust validity – for the HSM's certificate chain
Contents of selected certificate.
A maximum certificate chain length of 6 is supported.
Example 1: This example demonstrates the use of the SV console command to view the list of
currently installed certificates, and to display the contents of the HSM's certificate.
Secure> SV <Return>
CA Certificate(s) installed:
3 - Issued to: Applications, Issued by: Applications
Validity : May 7 09:24:10 2013 GMT to May 5 09:24:10
2023 GMT
Unique ID: C14FF9DE78FB441A - D221289A (Root)
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 8273 (0x2051)
Signature Algorithm: sha1WithRSAEncryption
Issuer: C=UK, ST=Greater London, L=London, O=Bank XYZ,
OU=RootCA, CN=Bank XYZ/[email protected]
Validity
Not Before: May 21 15:05:51 2013 GMT
Not After : May 21 15:05:51 2014 GMT
Subject: C=UK, ST=Greater London, O=Bank XYZ,
OU=Operations, CN=HSM-0002/[email protected]
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (2048 bit)
Modulus:
00:aa:31:e6:90:46:fe:e9:26:8b:93:39:5a:8c:be:
…
3d:39:2b:d7:06:47:04:6a:54:d2:12:4e:ac:9a:a3:
5b:49
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Basic Constraints:
CA:FALSE
X509v3 Key Usage:
Online>
Function: To delete a currently installed certificate or private key (for use with secure host
communications).
Authorization: The HSM must be in the secure state to run this command.
Example 1: This example demonstrates the use of the SD console command to remove a client
certificate from the HSM.
Secure> SD <Return>
HSM Private Key installed: Yes
CA Certificate(s) installed:
3 - Issued to: Applications, Issued by: Applications
Validity : May 7 09:24:10 2013 GMT to May 5
09:24:10 2023 GMT
Unique ID: C14FF9DE78FB441A - D221289A (Root)
Function: To generate a new HSM Recovery Key (HRK). Once installed, the HRK will be
used to back-up secret key material inside the HSM into persistent memory (a
process known as key synchronization).
The following secret key material is backed-up in this process:
Secure Host Communications key material:
o HSM's private key
Remote Management key material:
o HSM's private key
o HSM's public key certificate
o CA public key certificate
Authorization: The HSM must be in the secure state to run this command.
Notes: The HRK replaces the RMK (used in previous versions of software).
Example 1: This example demonstrates the use of the SK console command to generate
an HRK.
Secure> SK <Return>
Authorization: The HSM must be in the secure state to run this command.
Notes: The HRK replaces the RMK (used in previous versions of software).
Example 1: This example demonstrates the use of the SP console command change
administrator #1's HRK passphrase.
Secure> SP <Return>
Secure>
Function: To restore the HRK (and also the secret key material backed-up by the HRK)
in the event of erasure of tamper protected memory.
Authorization: The HSM must be in the secure state to run this command.
Notes: The HRK replaces the RMK (used in previous versions of software).
Example 1: This example demonstrates the use of the SL console command to generate
an HRK.
Secure> SL <Return>
Secure>
Function: To generate the components of a KMD Transport Key (KTK), and store the
components on smartcards.
Authorization: None
Example 1: This example demonstrates the use of the KM console command to generate
two KTK components on smartcards.
Secure> KM <Return>
1 copies made
Insert blank card and enter PIN: ****** <Return>
Writing keys...
Checking keys...
Device write complete, check: ZZZZZZ
1 copies made
Secure>
Authorization: None
Example 1: This example demonstrates the use of the KN console command to install a
KTK in KTK Id 01, using two smartcards.
Secure> KN <Return>
Enter KTK id [00-19]: 01 <Return>
Enter comments: KTK for KMD in secure room <Return>
KTK in selected location must be erased before
proceeding.
Erase KTK? [Y/N]: Y <Return>
Secure>
Authorization: None
Inputs: None
Example 1: This example demonstrates the use of the KT console command to display
the list of all KTKs currently installed in the HSM.
Online> KT <Return>
KTK table:
ID Scheme Algorithm Check Comments
01 Variant 3DES(2key) 292489 KTK for KMD in secure
room
03 Variant 3DES(2key) 549235 KTK for 2nd KMD
Online>
Function: To translate a key from encryption under a KTK to encryption under an LMK.
Authorization: The HSM must either be in the Authorized State, or the activity
command.kk.console must be authorized.
Example 1: This example demonstrates the use of the KK console command to import a
double-length DES ZMK (key type 000) from encryption under KTK Id 01 to
encryption under LMK Id 02.
Online-AUTH> KK <Return>
LMK encrypted key: U YYYY YYYY YYYY YYYY YYYY YYYY YYYY
YYYY
Key check value: ZZZZZZ
Online-AUTH>
Authorization: None
Example 1: This example demonstrates the use of the KD console command to delete a
previously installed KTK (KTK Id 01) from the HSM.
Secure> KD <Return>
Enter KTK id: 01 <Return>
Secure>
A6 X
BC X
BE X
BK X
BY X
CG X
CK X X
CM X
CO X
CQ X
CU X
DA X X
DC X
DE X
DU X X
EA X X
EC X
EE X
EG X
EI X
F0 X
F2 X
FA X
FU X
G2 X
G4 X
GO X
KO X
P0 X
PG X
PY X
QQ X
QS X
QU X
QW X
XM X
XK X
ZU X
https://supportportal.thalesgroup.com/csm