

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 에서 AES 키 래핑의 길이가 규정을 준수하지 않는 사용자 지정 IVs AWS CloudHSM
<a name="troubleshooting-aes-keys"></a>

이 문제 해결 항목은 애플리케이션에서 복구할 수 없는 래핑된 키를 생성하는지 확인하는 데 도움이 됩니다. 이 문제의 영향을 받는 경우 이 주제를 사용하여 문제를 해결하세요.

**Topics**
+ [코드에서 복구할 수 없는 래핑된 키가 생성되는지 확인하세요.](#troubleshooting-problem1)
+ [코드에서 복구할 수 없는 래핑된 키가 생성되는 경우 취해야 할 조치](#troubleshooting-problem2)

## 코드에서 복구할 수 없는 래핑된 키가 생성되는지 확인하세요.
<a name="troubleshooting-problem1"></a>

아래 조건을 *모두* 충족하는 경우에만 영향을 받습니다.


****  

| 조건 | 방법 | 
| --- | --- | 
|  애플리케이션은 PKCS \$111 라이브러리를 사용합니다.  |  PKCS \$111 라이브러리는 `/opt/cloudhsm/lib` 폴더에 `libpkcs11.so` 파일로 설치됩니다. C 언어로 작성된 애플리케이션은 일반적으로 PKCS \$111 라이브러리를 직접 사용하는 반면, Java로 작성된 애플리케이션은 Java 추상화 계층을 통해 라이브러리를 간접적으로 사용할 수 있습니다. 현재 Windows에서는 PKCS \$111 라이브러리를 사용할 수 없으므로 Windows를 사용하는 경우에는 영향을 받지 않습니다.  | 
|  애플리케이션은 특히 PKCS \$111 라이브러리 버전 3.0.0 을 사용합니다.  |   AWS CloudHSM 팀으로부터 이메일을 받은 경우 PKCS \$111 라이브러리 버전 3.0.0을 사용하고 있을 것입니다. 애플리케이션 인스턴스의 소프트웨어 버전을 확인하려면 다음 명령어를 사용하세요. <pre>rpm -qa | grep ^cloudhsm</pre>  | 
|  AES 키 래핑을 사용하여 키를 래핑합니다.  |  AES 키 래핑이란 AES 키를 사용하여 다른 키를 래핑하는 것을 의미합니다. 해당 메커니즘 이름은 입니다`CKM_AES_KEY_WRAP`. 함수와 함께 사용됩니다`C_WrapKey`. 초기화 벡터(IV) 를 사용하는 기타 AES 기반 래핑 메커니즘(예: `CKM_AES_GCM` 및` CKM_CLOUDHSM_AES_GCM`) 은 이 문제의 영향을 받지 않습니다. [함수 및 메커니즘에 대해 자세히 알아보십시오](pkcs11-mechanisms.md).  | 
|  AES 키 래핑을 호출할 때 사용자 지정 IV를 지정하는데 이 IV의 길이는 8보다 짧습니다.  |  AES 키 래핑은 일반적으로 다음과 같은 `CK_MECHANISM` 구조를 사용하여 초기화됩니다. `CK_MECHANISM mech = {CKM_AES_KEY_WRAP, IV_POINTER, IV_LENGTH};` 다음과 같은 경우에만 이 문제가 적용됩니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/cloudhsm/latest/userguide/troubleshooting-aes-keys.html)  | 

위의 모든 조건을 충족하지 못하면 지금 읽기를 중단할 수 있습니다. 래핑된 키는 제대로 래핑을 풀 수 있으며 이 문제는 영향을 받지 않습니다. 그렇지 않으면 [코드에서 복구할 수 없는 래핑된 키가 생성되는 경우 취해야 할 조치](#troubleshooting-problem2) 단원을 참조하세요.

## 코드에서 복구할 수 없는 래핑된 키가 생성되는 경우 취해야 할 조치
<a name="troubleshooting-problem2"></a>

다음 세 단계를 수행해야 합니다.

1.  **PKCS \$111 라이브러리를 최신 버전으로 즉시 업그레이드**
   + [Amazon Linux, CentOS 6 및 RHEL 6용 최신 PKCS \$111 라이브러리](client-upgrade.md)
   + [Amazon Linux 2, CentOS 7 및 RHEL 7용 최신 PKCS \$111 라이브러리](client-upgrade.md)
   + [Ubuntu 16.04 LTS용 최신 PKCS \$111 라이브러리](client-upgrade.md)

1. **표준 호환 IV를 사용하도록 소프트웨어 업데이트**

   샘플 코드를 따르고 NULL IV를 지정하기만 하면 HSM이 표준을 준수하는 기본 IV를 활용하도록 하는 것이 좋습니다. 또는 IV를 해당되는 `8`의 IV 길이를 가진 `0xA6A6A6A6A6A6A6A6`로 명시적으로 지정할 수도 있습니다. AES 키 래핑에는 다른 IV를 사용하지 않는 것이 좋으며, 향후 버전의 PKCS \$111 라이브러리에서는 AES 키 래핑을 위한 사용자 지정 IV를 명시적으로 비활성화할 예정입니다.

   IV를 올바르게 지정하는 샘플 코드는 GitHub의 [aes\$1wrapping.c](https://github.com/aws-samples/aws-cloudhsm-pkcs11-examples/blob/master/src/wrapping/aes_wrapping.c#L72)에 나와 있습니다.

1. **기존의 래핑된 키 식별 및 복구**

   PKCS \$111 라이브러리 버전 3.0.0을 사용하여 래핑한 모든 키를 식별한 다음, 이러한 키를 복구하는 데 필요한 지원을 받으려면 지원팀([https://aws.amazon.com/support](https://aws.amazon.com/support)) 에 문의해야 합니다.

**중요**  
이 문제는 PKCS \$111 라이브러리 버전 3.0.0으로 래핑된 키에만 영향을 미칩니다. PKCS \$111 라이브러리의 이전 버전(2.0.4 이하 패키지) 또는 이후 버전(3.0.1 이상 번호 패키지)을 사용하여 키를 래핑할 수 있습니다.