AIX

 View Only

AIX 72 TL5: Logical Volume Encryption

By Xiaohan Qin posted Mon November 23, 2020 01:21 PM

  

With the backdrop of growing needs to protect business as well as personal data, AIX 7.2 TL 5 adds a new data at rest encryption capability at the logical volume level. Host side data at rest encryption solution has two major advantages over the solutions provided on the storage side: 1) the data owner controls the encryption keys and 2) The data transmitted over the network (Fiber Channel or Ethernet) are encrypted and protected. These characteristics are particularly important for virtual servers hosted in the cloud environment, such as PowerVS.

 

Previously AIX users may employ EFS (Encrypted File System) for encryption at the file system level. The EFS solution provides the flexibility of selective file encryption. It manages the data encryption key at the file level and the protection of the data encryption key per each user. The fine granular control of encryption might be necessary and advantageous a decade ago due to the significant overhead of crypto operations. However, the EFS per user key protection scheme adds complexity to system management and impacts applications in some cases. And in the era of pervasive encryption, the paradigm has shifted away from selective encryption.

 

AIX logical volume encryption allows the user to enable encryption per logical volume. Figure 1 below shows the solution architecture. The yellow boxes in the diagram comprise of typical I/O stack and existing kernel crypto library (pkcs11). The LVM driver, LVM commands, and the pkcs11 library are enhanced to support the LV encryption feature.  The boxes in burned orange color identify the new components, which includes a pseudo encryption device driver, hdcrypt, and new utilities for encrypted LV status and key management, etc.

LV encryption arcthitecture



There is tight interaction between the hdcrypt driver and LVM driver. For an encryption enabled logical volume, the hdcrypt driver intercepts the IOs directed to logical volume. For write operations, it encrypts the data then pushes it down to the LVM layer. For read operations, the hdcrypt driver sets up the IO complete function to be called back for decryption when the data is returned from the device.  Note that IOs may originate at different layer of the IO stack. If a file system is mounted on an encrypted logical volume, all the data on the file system will be stored encrypted. With encryption performed at the logical volume layer, it is possible to support encryption for dump device and paging device (future enhancement), which is not feasible via EFS. 

 

Regarding crypto key management, the LV encryption creates one data encryption key per logical volume. The data encryption key is protected by wrapping keys (up to 6), to be stored separately from the data storage devices. Four types of wrapping key protection methods are supported: paraphrase, key file, cryptographic key server and PKS (Platform Key Store).

 

The Platform Key Store, aka PKS, is a new PowerVM feature which provides a small secure storage space to LPAR for storing key materials or other objects (see Chris Engel's PowerVM  blog on PKS).  The feature is added to P9 systems via system firmware FW950 and HMC 9.2.950 (Fall 2020). Figure 2 show a screenshot of LPAR properties “Advanced Settings” from HMC 9.2.95 connected to a P9 system with firmware level FW950. “KeyStore Size” can be used to disable/enable PKS and set the PKS size.

HMC LPAR property screenshot

The LV encryption feature introduces utility hdcryptmgr to manage all aspects related to encrypted LVs, including display of logical volume and volume encryption information, authentication control (initializing, adding, deleting authentication methods, etc.), management of PKS storage, and change of logical volume type from un-encrypted to encrypted and  vice versa. The utility and its help messages are built in a hierarchical and self-explanatory manner, a style widely adopted in the open source software, aiming to lower the learning curve of the new function. Detailed document of hdcryptmgr can be found here

hdcryptmgr utility

For the key server method, utility keysvrmgr can be used for managing Object Data Manager (ODM) entries associated with key server information such as the key server host name or ip address, the connection port, and certification location. Please see keysvrmgr  for further information.

 

Performance wise, Power processor has built-in crypto instructions to speed up the AES and other cryptographic algorithms since Power 8. The AIX kernel crypto library (pkcs11) has been updated to leverage the crypto acceleration instructions for the LV encryption algorithm (AES-XTS). Please see Xinya Wang's blog  Power in-core crypto acceleration for AIX on how to enable the hardware crypto acceleration.  

The following file sets are needed by the AIX logical volume encryption. Note that the new file sets are not installed automatically if one migrates from AIX 7.1 or updates from an older AIX 7.2 TL (prior to 7.2.5) to AIX 7.2 TL5. Manual installation is required.  However, for a fresh AIX 7.2.5 installation, the two new file sets will be installed by default.

 

  • bos.hdcrypt         new
  • bos.kmip_client   new
  • bos.rte.lvm          update
  • security.acf.        update
  • openssl.base


IMPORTANT NOTICE: If your code level is between 7200-05-00 (bos.hdcrypt 7.2.5.0) and 7200-05-03-2136. (bos.hdcrypt 7.2.5.101), please make sure to install APAR IJ35178, especially if you plan on using (hardware) in-core crypto acceleration.

For further information, please see relevant topics in the AIX knowledge center: 

https://www.ibm.com/support/knowledgecenter/ssw_aix_72/devicemanagement/encrypting_lv.html

https://www.ibm.com/support/knowledgecenter/ssw_aix_72/security/lv_encryption.html

https://www.ibm.com/support/knowledgecenter/ssw_aix_72/h_commands/hdcryptmgr.html

https://www.ibm.com/support/knowledgecenter/ssw_aix_72/k_commands/keysvrmgr.html

 

and the PKS topics in the PowerVM knowledge center.

 

https://www.ibm.com/support/knowledgecenter/POWER9/p9hat/p9hat_pkeystore.htm

https://www.ibm.com/support/knowledgecenter/9009-41G/p9efd/p9efd_lpar_general_advanced_settings.htm

0 comments
96 views

Permalink