

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

# 클라이언트 SDK 3을 사용하여 Jarsigner에서 AWS CloudHSM 키 스토어 사용
<a name="using_keystore_jarsigner"></a>

Jarsigner는 하드웨어 보안 모듈(HSM)에 안전하게 저장된 키를 사용하여 JAR 파일에 서명하기 위해 널리 사용되는 명령줄 유틸리티입니다. Jarsigner에 대한 전체 자습서는 AWS CloudHSM 설명서의 범위를 벗어납니다. 이 섹션에서는 AWS CloudHSM 키 스토어를 통해 신뢰의 루트 AWS CloudHSM 로를 사용하여 서명에 서명하고 확인하는 데 사용해야 하는 Jarsigner 파라미터에 대해 설명합니다.

# Jarsigner를 사용하여 AWS CloudHSM 키 및 인증서 설정
<a name="jarsigner_set_up_certificates"></a>

Jarsigner로 AWS CloudHSM JAR 파일에 서명하려면 먼저 다음 단계를 설정하거나 완료해야 합니다.

1. [AWS CloudHSM 키 스토어 사전 조건](keystore-prerequisites.md)의 지침을 따릅니다.

1. 현재 서버 또는 클라이언트 인스턴스의 키 스토어에 저장해야 하는 서명 AWS CloudHSM 키와 관련 인증서 및 인증서 체인을 설정합니다. 에서 키를 생성한 AWS CloudHSM 다음 연결된 메타데이터를 AWS CloudHSM 키 스토어로 가져옵니다. [AWS CloudHSM 키 스토어에 기존 키 등록](register-pre-existing-keys-with-keystore.md)의 코드 샘플을 사용하여 메타데이터를 키 스토어로 가져옵니다. keytool을 사용하여 키와 인증서를 설정하려면 [keytool을 사용하여 새 AWS CloudHSM 키 생성](create_key_keytool.md) 단원을 참조하십시오. 여러 클라이언트 인스턴스를 사용하여 JAR에 서명하는 경우 키를 만들고 인증서 체인을 가져옵니다. 그런 다음 결과 키 스토어 파일을 각 클라이언트 인스턴스에 복사합니다. 새 키를 자주 생성하는 경우 인증서를 각 클라이언트 인스턴스에 개별적으로 가져오는 것이 더 쉬울 수 있습니다.

1. 전체 인증서 체인이 검증 가능해야 합니다. 인증서 체인을 검증하려면 CA 인증서와 중간 인증서를 AWS CloudHSM 키 스토어에 추가해야 할 수 있습니다. Java 코드를 [사용하여 인증서 체인을 확인하는 방법에 대한 지침은 AWS CloudHSM 및 Jarsigner를 사용하여 JAR 파일 서명](jarsigner_sign_jar_using_hsm_jarsigner.md)의 코드 조각을 참조하세요. 원하는 경우 keytool을 사용하여 인증서를 가져올 수 있습니다. keytool 사용에 대한 지침은 [Keytool을 사용하여 중간 및 루트 인증서를 AWS CloudHSM 키 스토어로 가져오기](import_cert_using_keytool.md)를 참조하세요.

# AWS CloudHSM 및 Jarsigner를 사용하여 JAR 파일 서명
<a name="jarsigner_sign_jar_using_hsm_jarsigner"></a>

다음 명령을 사용하여 AWS CloudHSM 및 jarsigner를 사용하여 JAR 파일에 서명합니다.

```
jarsigner -keystore example_keystore.store \
        -signedjar signthisclass_signed.jar \
        -sigalg sha512withrsa \
        -storetype CloudHSM \
        -J-classpath '-J/opt/cloudhsm/java/*:/usr/lib/jvm/java-1.8.0/lib/tools.jar' \
        -J-Djava.library.path=/opt/cloudhsm/lib \
        signthisclass.jar <key pair label>
```

서명된 JAR을 검증하려면 다음 명령을 사용합니다.

```
jarsigner -verify \
        -keystore example_keystore.store \
        -sigalg sha512withrsa \
        -storetype CloudHSM \
        -J-classpath '-J/opt/cloudhsm/java/*:/usr/lib/jvm/java-1.8.0/lib/tools.jar' \
        -J-Djava.library.path=/opt/cloudhsm/lib \
        signthisclass_signed.jar <key pair label>
```