Hitachi Unified Storage Encryption Module FIPS 140-2 Non-Proprietary Cryptographic Module Security Policy Version: 2.3 Date: August 18, 2014 Copyright Hitachi, 2013 Version 2.3 Page 1 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). Table of Contents 1 Introduction .................................................................................................................. 4 1.1 Hardware and Physical Cryptographic Boundary.........................................................................5 1.2 Firmware and Logical Cryptographic Boundary ...........................................................................6 1.3 Mode of Operation.......................................................................................................................6 2 Cryptographic Functionality ........................................................................................... 7 2.1 Critical Security Parameters .........................................................................................................8 3 Roles, Authentication and Services ................................................................................ 9 3.1 Assumption of Roles .....................................................................................................................9 3.2 Authentication Methods ..............................................................................................................9 3.3 Services.......................................................................................................................................10 4 Self-tests ..................................................................................................................... 13 5 Physical Security Policy ................................................................................................ 14 6 Operational Environment ............................................................................................ 14 7 Mitigation of Other Attacks Policy................................................................................ 14 8 Security Rules and Guidance ........................................................................................ 15 8.1 Crypto Officer Guidance .............................................................................................................15 8.2 User Guidance ............................................................................................................................16 9 Design Assurance Policy ............................................................................................... 17 9.1 Configuration Management Overview .......................................................................................17 9.2 Installation, Initialization, and start-up Overview ......................................................................17 9.3 Secure Delivery and Operation Overview ..................................................................................17 10 References and Definitions .......................................................................................... 18 Copyright Hitachi, 2013 Version 2.3 Page 2 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). List of Tables Table 1 – Cryptographic Module Configurations .......................................................................................... 4 Table 2 – Security Level of Security Requirements ....................................................................................... 4 Table 3 – Ports and Interfaces ...................................................................................................................... 5 Table 4 – Approved and CAVP Validated Cryptographic Functions .............................................................. 7 Table 5 – Non-Approved but Allowed Cryptographic Functions .................................................................. 7 Table 6 – Non-Allowed Cryptographic Functions ......................................................................................... 7 Table 7 – Critical Security Parameters (CSPs) ............................................................................................... 8 Table 8 – Roles Description ........................................................................................................................... 9 Table 9 – Authentication Description ......................................................................................................... 10 Table 10 – Authenticated Services.............................................................................................................. 10 Table 11 – Unauthenticated Services ......................................................................................................... 10 Table 12 – CSP Access Rights within Services ............................................................................................. 12 Table 13 – Power Up Self-tests ................................................................................................................... 13 Table 14 – Conditional Self-tests ................................................................................................................ 13 Table 15 – References ................................................................................................................................. 18 Table 16 – Acronyms and Definitions ......................................................................................................... 18 List of Figures Figure 1 – Module ......................................................................................................................................... 5 Figure 2 – Module Block Diagram ................................................................................................................. 6 Copyright Hitachi, 2013 Version 2.3 Page 3 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). 1 Introduction This non-proprietary document defines the Security Policy for the Hitachi Unified Storage Encryption Module, hereafter denoted the Module. The Module is 6 Gb/s SAS I/O Module with Encryption. The module provides high speed data at rest encryption for Hitachi storage. The Module meets FIPS 140-2 overall Level 1 requirements. Table 1 – Cryptographic Module Configurations Module HW P/N and Version FW Version 1 Hitachi Unified Storage Encryption Module DW-F700-BS6GE 02.09.22.00 The Module is intended for use by US Federal agencies and other markets that require FIPS 140-2 validated SAS I/O module used for Hitachi storage system with data at rest encryption feature. The Module is a multi-chip embedded embodiment; the cryptographic boundary is drawn at the module’s board and interfaces and includes all components within that boundary. The FIPS 140-2 security levels for the Module are as follows: Table 2 – Security Level of Security Requirements Security Requirement Security Level Cryptographic Module Specification 1 Cryptographic Module Ports and Interfaces 1 Roles, Services, and Authentication 2 Finite State Model 1 Physical Security 1 Operational Environment N/A Cryptographic Key Management 1 EMI/EMC 1 Self-Tests 1 Design Assurance 2 Mitigation of Other Attacks N/A Overall 1 Copyright Hitachi, 2013 Version 2.3 Page 4 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). 1.1 Hardware and Physical Cryptographic Boundary The physical form of the Module is depicted in Figure 1; the physical boundary of the cryptographic module is the same as the physical boundary depicted in Figure 1. Major components of the module are module board, micro processor, non-volatile memories and interfaces. The Module relies on Hitachi storage as input/output devices. Figure 1 – Module Table 3 – Ports and Interfaces Port Description Logical Interface Type Main edge - PCI-express: plaintext input/output, module control data - Power input, module status data output - Control in - Hot-Line: module control data input, module status data - Data in output - Data out - I2C: module control data input - Status out - Power: 12V power input Sub edge - SAS: cipher text input/output - Data in - Data out LED - LED: module status output - Status out Copyright Hitachi, 2013 Version 2.3 Page 5 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). 1.2 Firmware and Logical Cryptographic Boundary Figure 2 depicts the Module operational environment. Cryptographic Boundary Main edge LED PCI-express HDD SAS Data In, Data out, Cache Data in, Data out PCI-express, Control In, Status out HDD SAS Micro processor Data in, Data out … Flash memory HDD Host driver Power circuit SEEPROM Sub edge Figure 2 – Module Block Diagram Black bold line shows the cryptographic boundary. The micro processor is responsible for processing IOs to HDDs as well as encrypting/decrypting IOs where applicable. Firmware images are stored in the flash memory. They are loaded to the micro processor when the module power up. All functions and system initialization are performed by the micro processor, which is contained within the cryptographic boundary of the module. CSPs are stored in flash memory or SEEPROM. 1.3 Mode of Operation The module has two modes of operation: FIPS-approved mode and non-approved mode. Basically, the module operates in FIPS-approved mode. Only when HMAC-SHA-1, HMAC-SHA-224, HMAC-SHA-384 or HMAC-SHA-512 was used, the cryptographic module works in non-approved mode. When HMAC-SHA- 256 or the other algorithms such as AES was used, the module remains in FIPS-approved mode. Copyright Hitachi, 2013 Version 2.3 Page 6 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). 2 Cryptographic Functionality The Module implements the FIPS Approved and Non-Approved but Allowed cryptographic functions listed in the tables below. Table 4 – Approved and CAVP Validated Cryptographic Functions Algorithm Description Cert # AES [SP 800-38A] #2787 Functions: Encryption, Decryption Modes: ECB Key sizes: 256 bits XTS-AES mode [SP 800-38E] #2787 Functions: Encryption, Decryption Key sizes: 256 bits SHA [FIPS 180-4] #2344 Functions: Calculation of HMAC SHA sizes: SHA-256 HMAC [FIPS 198-1] #1748 Functions: MAC generation SHA sizes: SHA-256 Table 5 – Non-Approved but Allowed Cryptographic Functions Algorithm Description AES Key [IG D.9] and [AES Key Wrap Specification, Nov 2001] Wrap/Unwrap AES (Cert. #2787, key wrapping; key establishment methodology provides 256 bits of encryption strength) Table 6 – Non-Allowed Cryptographic Functions Algorithm Description SHA [FIPS 180-4] Functions: Calculation of HMAC SHA sizes: SHA-1, SHA-224, SHA-384, SHA-512 HMAC [FIPS 198-1] Functions: MAC generation SHA sizes: SHA-1, SHA-224, SHA-384, SHA-512 Copyright Hitachi, 2013 Version 2.3 Page 7 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). 2.1 Critical Security Parameters All CSPs used by the Module are described in this section. All usage of these CSPs by the Module (including all CSP lifecycle states) is described in the services detailed in Section 3. Table 7 – Critical Security Parameters (CSPs) CSP Description / Usage KEKini 256-bit factory-set key used to unwrap KEK. KEK wrapped with KEKini is entered to the module. KEK 256-bit key used to unwrap DEKs and operator keys. DEKs and operator keys wrapped with KEK are entered to the module. DEK Two 256-bit keys used for XTS-AES encryption/decryption. Operator Key 256-bit key used to unwrap operator certificate. HMAC Key 256-bit key used for authenticating firmware loaded from host. Copyright Hitachi, 2013 Version 2.3 Page 8 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). 3 Roles, Authentication and Services 3.1 Assumption of Roles The module supports two distinct operator roles, User and Cryptographic Officer (CO). The cryptographic module enforces the separation of roles using one authentication is allowed per module reset. Re-authentication is enforced when changing roles. Each operator must be assigned to a single role. Concurrent operators are NOT supported. An operator must log out before another operator can log in. Table 8 lists all operator roles supported by the module. The Module does not support a maintenance role and bypass capability. The Module does not support concurrent operators. After the module powers off or chip reset, all the data stored in internal memory (RAM), including previously authenticated operators, are cleared. All CSPs are protected through APIs and logic developed for the sole purpose of integration into specific Hitachi host platforms. Only Hitachi-authored drivers can access cryptographic APIs. Further, the module functionally does not allow keys to be disclosed, modified, or substituted in FIPS mode of operation. Table 8 – Roles Description Role ID Role Description Authentication Type Authentication Data CO Cryptographic Officer – The role assumed Role-based Operator certificate to perform cryptographic initialization or management functions. User User – The role assumed to perform Role-based Operator certificate general security services, including cryptographic operations and other approved security functions. 3.2 Authentication Methods Operator Certificate Authentication Method An operator is assigned to a 256-bit unique key, it called “operator key”. The operator key is stored together with its role and identity string in non-volatile memory. The key is used to authenticate the operator when it logs in. It is the role and the identity string from the certificate that distinguishes each operator. An operator also owns a unique operator certificate that consists of a role and an identity string, which is wrapped by the operator key using the procedure outlined by the NIST AES Key Wrap specification. Therefore the probability that a random attempt will succeed or a false acceptance depend on operator key. When the operator wants to log in, they send the certificate to the controller. The controller unwraps the certificate using the preloaded operator key. If the unwrap is successful and if the role and the identity string from the certificate both match the ones stored in the module, the operator authentication passes. The cryptographic services within the role are then activated. Authentication requires less than 7.5ms (actual measured value). Copyright Hitachi, 2013 Version 2.3 Page 9 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). Table 9 – Authentication Description Authentication Method Probability Justification Operator Certificate 1/2^256 8000/2^256 Authentication Method Since authentication requires less The probability that a random than 7.5ms, in a worst case attempt will succeed or a false scenario, the module can acceptance will occur depends on perform 8000 per minute. 256-bit operator key. Therefore, Therefore, the probability that the probability is 1/2^256, which multiple attacks within a given is less than 1/1,000,000. minute will be successful is 8000/2^256, which is less than 1/100,000. 3.3 Services All services implemented by the Module are listed in the tables below. Each service description also describes all usage of CSPs by the service. Table 10 – Authenticated Services Service Description CO U Configure Configures parameters X X Operator Management Adds an operator’s role, an identity string and an operator X X key, updates the operator key and deletes one or all operators and operator keys Logout Operator logout of the module X X Execute encryption tests Execute encryption tests for diagnostic purposes X Decrypt Decrypts data using XTS-AES X Encrypt Encrypts data using XTS-AES X DEK Management Updates and invalidates DEKs X X KEK Management Updates and invalidates KEKs X X HMAC Key Management Sets and invalidates the HMAC key X X Firmware Update Updates the firmware X X Table 11 – Unauthenticated Services Service Description Module Reset Reset the module (Self-test) Login Authenticates operators Copyright Hitachi, 2013 Version 2.3 Page 10 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). Service Description Get Current Operator Get the operator’s role and an identity string of the current operator Get Configuration Get controller configuration parameters Show Status Show module status with LEDs or bits in a status register Copyright Hitachi, 2013 Version 2.3 Page 11 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). Table 12 defines the relationship between access to CSPs and the different module services. The modes of access shown in the table are defined as:  G = Generate: The module generates the CSP.  R = Read: The module reads the CSP. The read access is typically performed before the module uses the CSP.  E = Execute: The module executes using the CSP.  W = Write: The module writes the CSP. The write access is typically performed after a CSP is imported into the module, when the module generates a CSP, or when the module overwrites an existing CSP.  Z = Zeroize: The module zeroizes the CSP. Table 12 – CSP Access Rights within Services CSPs Service Operator KEKini KEK DEK HMAC Key Key Configure Operator Management E W/Z Logout E Execute encryption test Decrypt E Encrypt E DEK Management E W/Z KEK Management E/W/Z E/W/Z HMAC Key E W/Z Management Firmware Update E Module Reset (Self-test) Login E Get Current Operator Get Configuration Show Status Copyright Hitachi, 2013 Version 2.3 Page 12 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). 4 Self-tests Each time the Module is powered up it tests that the cryptographic algorithms still operate correctly and that sensitive data have not been damaged. Power up self-tests are available on demand by power cycling or resetting the module. On power up or reset, the Module performs the self tests described in Table 13 below. All KATs must be completed successfully prior to any other use of cryptography by the Module. If one of the KATs fails, the Module enters the fatal error state. Self-tests do not require any intervention or input from the operator. Power up self-tests are automatically executed when the controller is powered up. Table 13 – Power Up Self-tests Test Target Description Firmware 32 bit CRC performed over all code in Flash memory. Integrity AES KATs: Encryption, Decryption Modes: ECB Key sizes: 256 bits HMAC KATs: Verification SHA sizes: SHA-1, SHA-224, SHA-256, SHA-384, SHA-512 XTS-AES mode KATs: Encryption, Decryption Key sizes: 256 bits AES Key Wrap KATs: Wrap, Unwrap Key sizes: 256 bits As the firmware is being externally sent to the controller, the firmware images are authenticated using the HMAC authentication technique. Both a firmware image and the HMAC key are fed into the SHA engine, together with the proper SHA algorithm, the calculated HMAC digest is compared with the one embedded in the firmware image. If they don't equal, the firmware authentication fails and the Module indicate the state. Conditional self tests are automatically performed when an applicable security function or operation is invoked. As the encryption test execute command is sent to the controller, the module executes Cryptographic Algorithm tests or HMAC test. The Cryptographic Algorithm tests have positive test cases and negative ones. For a positive test case, the test passes if the result matches the known answer. For a negative test case, the result is expected to mismatch the known answer. For the HMAC test, the module feeds the message and the HMAC key input from the host into the SHA engine, and returns the digest to the host. The command for Execute encryption test will change hardware configuration when running the Cryptographic Algorithm tests or HMAC test. Therefore use it only for diagnostic purposes. To return to normal mode operations, execute a Module reset. Table 14 – Conditional Self-tests Test Target Description Firmware Load HMAC authentication performed when firmware is loaded. Copyright Hitachi, 2013 Version 2.3 Page 13 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). Test Target Description Encryption Cryptographic Algorithm tests or HMAC test performed by command only when no Engine Diagnosis active IOMBs. 5 Physical Security Policy The module is a multi-chip embedded cryptographic module and conforms to Level 1 requirements for physical security. The cryptographic module consists of production-grade components. 6 Operational Environment The Module is designated as a limited operational environment under the FIPS 140-2 definitions. The Module includes a firmware load service to support necessary updates. New firmware versions within the scope of this validation must be validated through the FIPS 140-2 CMVP. Any other firmware loaded into this module is out of the scope of this validation and require a separate FIPS 140-2 validation. 7 Mitigation of Other Attacks Policy The module does not mitigate other attacks. Copyright Hitachi, 2013 Version 2.3 Page 14 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). 8 Security Rules and Guidance The Module design corresponds to the Module security rules. This section documents the security rules enforced by the cryptographic module to implement the security requirements of this FIPS 140-2 Level 1 module. 1. The module shall provide two distinct operator roles: User and Cryptographic Officer. 2. The module shall provide role-based authentication. 3. The module shall clear previous authentications on power cycle. 4. When the module has not been placed in a valid role, the operator shall not have access to any cryptographic services shown in Table 10. 5. The operator shall be capable of commanding the module to perform the power up self-tests by cycling power or resetting the module. 6. Power up self-tests do not require any operator action. 7. Data output shall be inhibited during self-tests, zeroization, and error states. 8. Status information does not contain CSPs or sensitive data that if misused could lead to a compromise of the module. 9. There are no restrictions on which keys or CSPs are zeroized by the zeroization service. 10. The module does not support concurrent operators. 11. The module does not support a maintenance interface or role. 12. The module does not support manual key entry. 13. The module does not have any external input/output devices used for entry/output of data. 14. The module does not enter or output plaintext CSPs. 15. The module does not support the update of the logical serial number or vendor ID. 8.1 Crypto Officer Guidance The Crypto Officer must configure and enforce the following initialization procedures in order to operate in FIPS approved mode of operation: 1. Verify that the name and part number of module is DW-F700-BS6GE. 2. Verify that the firmware version of module is 02.09.22.00. 3. Enable the encryption feature. 4. Configure encryption environmental settings. When the step mentioned above is completed, one KEK and two Operator Keys have been input into the module. See [User Guide] Chapter 2 for detail of initialization procedures. Copyright Hitachi, 2013 Version 2.3 Page 15 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). Otherwise, no specific commands or settings are required to place the module in FIPS-approved mode of operation. 8.2 User Guidance The User must configure and enforce the following initialization procedures in order to operate in FIPS approved mode of operation: 1. Enable data encryption on the parity group. 2. Format the Volumes at the parity-group level. See [User Guide] Chapter 4 for detail of initialization procedures. Copyright Hitachi, 2013 Version 2.3 Page 16 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). 9 Design Assurance Policy 9.1 Configuration Management Overview Programs and documents are managed using a proprietary web-base configuration management system (Electric Stock System). Documents for validation and hardware components are managed by revision management by a proprietary ledger. 9.2 Installation, Initialization, and start-up Overview The procedure is described in section 8.1. 9.3 Secure Delivery and Operation Overview The module shipped to customers from the factory or the distribution centers. The module is delivered by the contracted carrier and unpacked by the contacted service personnel on site, and its contents are confirmed by the personnel. Copyright Hitachi, 2013 Version 2.3 Page 17 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision). 10 References and Definitions The following standards are referred to in this Security Policy. Table 15 – References Abbreviation Full Specification Name [FIPS140-2] Security Requirements for Cryptographic Modules, May 25, 2001 [SP800-131A] Transitions: Recommendation for Transitioning the Use of Cryptographic Algorithms and Key Lengths, January 2011 [SP800-38A] Recommendation for Block Cipher Modes of Operation Methods and Techniques, 2001 Edition [FIPS 198-1] The Keyed-Hash Message Authentication Code(HMAC), July 2008 [SP800-38E] Recommendation for Block Cipher Modes of Operation: The XTS-AES Mode for Confidentiality on Storage Devices, January 2010 [IG D.9] Implementation Guidance for FIPS PUB 140-2 and the Cryptographic Module Validation Program, FIPS 140-2 Annex D – Approved Key Establishment Techniques, D.9 Key Transport Methods, July 25, 2013 [AES Key Wrap AES Key Wrap Specification, November 16, 2001. Specification, Nov 2001] [User Guide] Hitachi Unified Storage VM Block Module - Hitachi Encryption License Key User Guide Table 16 – Acronyms and Definitions Acronym Definition AES Advanced Encryption Standard CRC Cyclic Redundancy Check CSP Critical Security Parameter DEK Data Encryption Key FIPS Federal Information Processing Standard HMAC Hash-based Message Authentication Code KAT Known Answer Test KEK Key Encryption Key NIST National Institute of Standards and Technology Copyright Hitachi, 2013 Version 2.3 Page 18 of 18 Hitachi Public Material – May be reproduced only in its original entirety (without revision).