HSM 감사 로그 해석 - AWS CloudHSM

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

HSM 감사 로그 해석

HSM 감사 로그의 이벤트에는 표준 필드가 있습니다. 일부 이벤트 유형에는 이벤트에 대한 유용한 정보를 캡처하는 추가 필드가 있습니다. 예를 들어, 사용자 로그인 및 사용자 관리 이벤트에는 사용자 이름과 해당 사용자의 사용자 유형이 포함되어 있습니다. 키 관리 명령에는 key handle이 포함되어 있습니다.

일부 필드는 특별히 중요한 정보를 제공합니다. Opcode는 기록되는 관리 명령을 식별합니다. Sequence No는 로그 스트림의 이벤트를 식별하고 해당 이벤트가 기록된 순서를 나타냅니다.

예를 들어, 다음 예제 이벤트는 HSM에 대한 로그 스트림의 두 번째 이벤트(Sequence No: 0x1)입니다. 이 이벤트는 스타트업 루틴의 일부인 암호 암호화 키를 생성하는 HSM을 보여 줍니다.

Time: 12/19/17 21:01:17.140812, usecs:1513717277140812 Sequence No : 0x1 Reboot counter : 0xe8 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_GEN_PSWD_ENC_KEY (0x1d) Session Handle : 0x1004001 Response : 0:HSM Return: SUCCESS Log type : MINIMAL_LOG_ENTRY (0)

다음 필드는 감사 로그의 모든 AWS CloudHSM 이벤트에 공통적으로 사용됩니다.

Time

이벤트가 발생한 시간으로 UTC 시간대로 설정됩니다. 시간은 마이크로초의 Unix 시간과 사람이 읽을 수 있는 시간으로 표시됩니다.

재부팅 카운터

HSM 하드웨어가 재부팅될 때 증가하는 32비트의 영구 서수 카운터입니다.

로그 스트림의 모든 이벤트는 재부팅 카운터 값이 동일합니다. 재부팅 카운터는 동일한 클러스터에 있는 여러 HSM 인스턴스 간에 다를 수 있으므로 로그 스크림에 대해 고유하지 않을 수 있습니다.

시퀀스 번호

각 로그 이벤트에 대해 증가하는 64비트 서수 카운터입니다. 각 로그 스트림에 있는 첫 번째 이벤트의 시퀀스 번호는 0x0입니다. Sequence No 값에는 간격이 없어야 합니다. 시퀀스 번호는 로그 스트림 내에서만 고유합니다.

명령 유형

명령 범주를 나타내는 16진수 값입니다. AWS CloudHSM 로그 스트림의 명령에는 CN_MGMT_CMD(0x0) 또는 CN_CERT_AUTH_CMD(0x9)의 유형이 있습니다.

Opcode

실행된 관리 명령을 식별합니다. AWS CloudHSM 감사 로그의 Opcode 값 목록은 을 참조하십시오HSM 감사 로그 참조.

세션 핸들

명령이 실행되고 이벤트가 기록된 세션을 식별합니다.

응답

관리 명령에 대한 응답을 기록합니다. SUCCESSERROR 값에 대해 Response 필드를 검색할 수 있습니다.

로그 유형

명령을 기록한 AWS CloudHSM 로그의 로그 유형을 나타냅니다.

  • MINIMAL_LOG_ENTRY (0)

  • MGMT_KEY_DETAILS_LOG (1)

  • MGMT_USER_DETAILS_LOG (2)

  • GENERIC_LOG

감사 로그 이벤트 예제

로그 스트림의 이벤트는 생성부터 삭제까지의 HSM 기록을 기록합니다. 로그를 통해 HSM의 수명 주기를 검토하고 해당 작업에 대한 통찰을 얻을 수 있습니다. 이벤트를 해석할 때 관리 명령이나 작업을 나타내는 Opcode 및 이벤트 순서를 나타내는 Sequence No를 기록해 두십시오.

예제: 클러스터의 첫 번째 HSM 초기화

각 클러스터의 첫 번째 HSM에 대한 감사 로그 스트림은 클러스터의 다른 HSM에 대한 로그 스트림과 매우 다릅니다. 각 클러스터의 첫 번째 HSM에 대한 감사 로그는 생성 및 초기화를 기록합니다. 백업에서 생성되는 클러스터의 추가 HSM 로그는 로그인 이벤트로 시작합니다.

중요

다음 초기화 항목은 CloudHSM 감사 로깅 기능 출시 (2018년 8월 30일) 이전에 초기화된 클러스터의 CloudWatch 로그에 표시되지 않습니다. 자세한 내용은 문서 기록을 참조하십시오.

다음 예제 이벤트는 클러스터의 첫 번째 HSM에 대한 로그 스트림에 나타납니다. 로그의 첫 번째 이벤트인 Sequence No 0x0 이벤트는 HSM(CN_INIT_TOKEN)을 초기화하는 명령을 나타냅니다. 응답은 명령이 성공했음을 나타냅니다(Response : 0: HSM Return: SUCCESS).

Time: 12/19/17 21:01:16.962174, usecs:1513717276962174 Sequence No : 0x0 Reboot counter : 0xe8 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_INIT_TOKEN (0x1) Session Handle : 0x1004001 Response : 0:HSM Return: SUCCESS Log type : MINIMAL_LOG_ENTRY (0)

이 예제 로그 스트림의 두 번째 이벤트(Sequence No 0x1)는 HSM에서 사용되는 암호 암호화 키를 생성하는 명령(CN_GEN_PSWD_ENC_KEY)을 기록합니다.

이는 각 클러스터의 첫 번째 HSM에 대한 일반적인 스타트업 시퀀스입니다. 동일한 클러스터에 있는 후속 HSM은 첫 번째의 복제본이므로 동일한 암호 암호화 키를 사용합니다.

Time: 12/19/17 21:01:17.140812, usecs:1513717277140812 Sequence No : 0x1 Reboot counter : 0xe8 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_GEN_PSWD_ENC_KEY (0x1d) Session Handle : 0x1004001 Response : 0:HSM Return: SUCCESS Log type : MINIMAL_LOG_ENTRY (0)

이 예제 로그 스트림(Sequence No 0x2)의 세 번째 이벤트는 AWS CloudHSM 서비스인 AU(Appliance User)의 생성입니다. HSM 사용자와 관련된 이벤트에는 사용자 이름과 사용자 유형에 대한 추가 필드가 포함되어 있습니다.

Time: 12/19/17 21:01:17.174902, usecs:1513717277174902 Sequence No : 0x2 Reboot counter : 0xe8 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_CREATE_APPLIANCE_USER (0xfc) Session Handle : 0x1004001 Response : 0:HSM Return: SUCCESS Log type : MGMT_USER_DETAILS_LOG (2) User Name : app_user User Type : CN_APPLIANCE_USER (5)

이 예제 로그 스트림의 네 번째 이벤트(Sequence No 0x3)는 HSM의 초기화를 완료하는 CN_INIT_DONE 이벤트를 기록합니다.

Time: 12/19/17 21:01:17.298914, usecs:1513717277298914 Sequence No : 0x3 Reboot counter : 0xe8 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_INIT_DONE (0x95) Session Handle : 0x1004001 Response : 0:HSM Return: SUCCESS Log type : MINIMAL_LOG_ENTRY (0)

스타트업 시퀀스에서 나머지 이벤트를 따를 수 있습니다. 이 이벤트에는 여러 가지 로그인 및 로그아웃 이벤트와 KEK(키 암호화 키) 생성이 포함될 수 있습니다. 다음 이벤트는 PRECO(Precrypto Officer)의 암호를 변경하는 명령을 기록합니다. 이 명령은 클러스터를 활성화합니다.

Time: 12/13/17 23:04:33.846554, usecs:1513206273846554 Sequence No: 0x1d Reboot counter: 0xe8 Command Type(hex): CN_MGMT_CMD (0x0) Opcode: CN_CHANGE_PSWD (0x9) Session Handle: 0x2010003 Response: 0:HSM Return: SUCCESS Log type: MGMT_USER_DETAILS_LOG (2) User Name: admin User Type: CN_CRYPTO_PRE_OFFICER (6)

로그인 및 로그아웃 이벤트

감사 로그를 해석할 때 HSM에 대한 사용자의 로그인 및 로그아웃을 기록하는 이벤트를 기록해 두십시오. 이러한 이벤트를 통해 로그인 및 로그아웃 명령 간의 시퀀스에 나타나는 관리 명령에 대한 책임이 있는 사용자를 결정할 수 있습니다.

예를 들어, 이 로그 항목은 이름이 admin인 Crypto Officer의 로그인을 기록합니다. 0x0의 시퀀스 번호는 이 로그 스트림에서 첫 번째 이벤트임을 나타냅니다.

사용자가 HSM에 로그인할 때 클러스터의 다른 HSM도 사용자의 로그인 이벤트를 기록합니다. 최초 로그인 이벤트 직후 클러스터에 있는 다른 HSM의 로그 스트림에서 해당 로그인 이벤트를 찾을 수 있습니다.

Time: 01/16/18 01:48:49.824999, usecs:1516067329824999 Sequence No : 0x0 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_LOGIN (0xd) Session Handle : 0x7014006 Response : 0:HSM Return: SUCCESS Log type : MGMT_USER_DETAILS_LOG (2) User Name : admin User Type : CN_CRYPTO_OFFICER (2)

다음 예제 이벤트는 admin CO(Crypto Officer) 로그아웃을 기록합니다. 시퀀스 번호 0x2는 이 항목이 로그 스트림의 세 번째 이벤트임을 나타냅니다.

로그인한 사용자가 로그아웃하지 않고 세션을 닫으면 로그 스트림이 CN_APP_FINALIZE를 포함하거나 CN_LOGOUT 이벤트 대신 세션 이벤트(CN_SESSION_CLOSE)를 닫습니다. 로그인 이벤트와 달리 이 로그아웃 이벤트는 일반적으로 명령을 실행하는 HSM에 의해서만 기록됩니다.

Time: 01/16/18 01:49:55.993404, usecs:1516067395993404 Sequence No : 0x2 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_LOGOUT (0xe) Session Handle : 0x7014000 Response : 0:HSM Return: SUCCESS Log type : MGMT_USER_DETAILS_LOG (2) User Name : admin User Type : CN_CRYPTO_OFFICER (2)

사용자 이름이 잘못되어 로그인 시도가 실패하면 HSM이 로그인 명령에 제공된 사용자 이름과 유형을 사용하여 CN_LOGIN 이벤트를 기록합니다. 사용자 이름이 없다고 설명하는 오류 메시지 157이 응답에 표시됩니다.

Time: 01/24/18 17:41:39.037255, usecs:1516815699037255 Sequence No : 0x4 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_LOGIN (0xd) Session Handle : 0xc008002 Response : 157:HSM Error: user isn't initialized or user with this name doesn't exist Log type : MGMT_USER_DETAILS_LOG (2) User Name : ExampleUser User Type : CN_CRYPTO_USER (1)

암호가 잘못되어 로그인 시도가 실패하면 HSM이 로그인 명령에 제공된 사용자 이름과 유형을 사용하여 CN_LOGIN 이벤트를 기록합니다. RET_USER_LOGIN_FAILURE 오류 코드와 함께 오류 메시지가 응답에 표시됩니다.

Time: 01/24/18 17:44:25.013218, usecs:1516815865013218 Sequence No : 0x5 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_LOGIN (0xd) Session Handle : 0xc008002 Response : 163:HSM Error: RET_USER_LOGIN_FAILURE Log type : MGMT_USER_DETAILS_LOG (2) User Name : testuser User Type : CN_CRYPTO_USER (1)

예제: 사용자 생성 및 삭제

이 예제에서는 CO(Crypto Officer)가 사용자를 생성하고 삭제할 때 기록되는 로그 이벤트를 보여 줍니다.

첫 번째 이벤트는 HSM에 로그인하는 CO를 나타내는 admin을 기록합니다. 시퀀스 번호 0x0은 이 항목이 로그 스트림의 첫 번째 이벤트임을 나타냅니다. 로그인한 사용자의 이름과 유형이 이벤트에 포함됩니다.

Time: 01/16/18 01:48:49.824999, usecs:1516067329824999 Sequence No : 0x0 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_LOGIN (0xd) Session Handle : 0x7014006 Response : 0:HSM Return: SUCCESS Log type : MGMT_USER_DETAILS_LOG (2) User Name : admin User Type : CN_CRYPTO_OFFICER (2)

로그 스트림의 다음 이벤트(시퀀스 0x1)가 새 CU(Crypto User)를 만드는 CO를 기록합니다. 새 사용자의 이름과 유형이 이벤트에 포함됩니다.

Time: 01/16/18 01:49:39.437708, usecs:1516067379437708 Sequence No : 0x1 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_CREATE_USER (0x3) Session Handle : 0x7014006 Response : 0:HSM Return: SUCCESS Log type : MGMT_USER_DETAILS_LOG (2) User Name : bob User Type : CN_CRYPTO_USER (1)

그런 다음 CO가 또 다른 CO(Crypto Officer)인 alice를 생성합니다. 시퀀스 번호는 이 작업이 이전 작업에 곧장 이어진다는 것을 나타냅니다.

Time: 01/16/18 01:49:55.993404, usecs:1516067395993404 Sequence No : 0x2 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_CREATE_CO (0x4) Session Handle : 0x7014007 Response : 0:HSM Return: SUCCESS Log type : MGMT_USER_DETAILS_LOG (2) User Name : alice User Type : CN_CRYPTO_OFFICER (2)

나중에 이름이 admin인 CO가 로그인하여 이름이 alice인 CO(Crypto Officer)를 삭제합니다. HSM가 CN_DELETE_USER 이벤트를 기록합니다. 삭제된 사용자의 이름과 유형이 이벤트에 포함됩니다.

Time: 01/23/18 19:58:23.451420, usecs:1516737503451420 Sequence No : 0xb Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_DELETE_USER (0xa1) Session Handle : 0x7014007 Response : 0:HSM Return: SUCCESS Log type : MGMT_USER_DETAILS_LOG (2) User Name : alice User Type : CN_CRYPTO_OFFICER (2)

예제: 키 페어 생성 및 삭제

이 예제에서는 키 페어를 생성하고 삭제할 때 HSM 감사에 기록되는 이벤트를 보여 줍니다.

다음 이벤트는 HSM에 로그인하는 crypto_user라는 CU(Crypto User)를 기록합니다.

Time: 12/13/17 23:09:04.648952, usecs:1513206544648952 Sequence No: 0x28 Reboot counter: 0xe8 Command Type(hex): CN_MGMT_CMD (0x0) Opcode: CN_LOGIN (0xd) Session Handle: 0x2014005 Response: 0:HSM Return: SUCCESS Log type: MGMT_USER_DETAILS_LOG (2) User Name: crypto_user User Type: CN_CRYPTO_USER (1)

그런 다음 CU가 키 페어(CN_GENERATE_KEY_PAIR)를 생성합니다. 프라이빗 키에는 키 핸들 131079이 있습니다. 퍼블릭 키에는 키 핸들 131078이 있습니다.

Time: 12/13/17 23:09:04.761594, usecs:1513206544761594 Sequence No: 0x29 Reboot counter: 0xe8 Command Type(hex): CN_MGMT_CMD (0x0) Opcode: CN_GENERATE_KEY_PAIR (0x19) Session Handle: 0x2014004 Response: 0:HSM Return: SUCCESS Log type: MGMT_KEY_DETAILS_LOG (1) Priv/Secret Key Handle: 131079 Public Key Handle: 131078

CU가 키 페어를 즉시 삭제합니다. CN_DESTROY_OBJECT 이벤트가 퍼블릭 키(131078)의 삭제를 기록합니다.

Time: 12/13/17 23:09:04.813977, usecs:1513206544813977 Sequence No: 0x2a Reboot counter: 0xe8 Command Type(hex): CN_MGMT_CMD (0x0) Opcode: CN_DESTROY_OBJECT (0x11) Session Handle: 0x2014004 Response: 0:HSM Return: SUCCESS Log type: MGMT_KEY_DETAILS_LOG (1) Priv/Secret Key Handle: 131078 Public Key Handle: 0

그런 다음 두 번째 CN_DESTROY_OBJECT 이벤트가 프라이빗 키(131079)의 삭제를 기록합니다.

Time: 12/13/17 23:09:04.815530, usecs:1513206544815530 Sequence No: 0x2b Reboot counter: 0xe8 Command Type(hex): CN_MGMT_CMD (0x0) Opcode: CN_DESTROY_OBJECT (0x11) Session Handle: 0x2014004 Response: 0:HSM Return: SUCCESS Log type: MGMT_KEY_DETAILS_LOG (1) Priv/Secret Key Handle: 131079 Public Key Handle: 0

마지막으로 CU가 로그아웃합니다.

Time: 12/13/17 23:09:04.817222, usecs:1513206544817222 Sequence No: 0x2c Reboot counter: 0xe8 Command Type(hex): CN_MGMT_CMD (0x0) Opcode: CN_LOGOUT (0xe) Session Handle: 0x2014004 Response: 0:HSM Return: SUCCESS Log type: MGMT_USER_DETAILS_LOG (2) User Name: crypto_user User Type: CN_CRYPTO_USER (1)

예제: 키 생성 및 동기화

이 예제에서는 HSM이 여러 개인 클러스터에서 키를 생성할 경우의 효과를 보여 줍니다. 키는 HSM 하나에 생성되고 마스킹 처리된 객체로 이 HSM에서 추출되며, 마스킹 처리된 객체로 다른 HSM에 삽입됩니다.

참고

클라이언트 도구가 키 동기화에 실패할 수 있습니다. 또는 지정된 수의 HSM에만 키를 동기화하는 min_srv 파라미터가 명령에 포함될 수 있습니다. 어느 경우든 AWS CloudHSM 서비스는 키를 클러스터의 다른 HSM과 동기화합니다. HSM은 클라이언트 측 관리 명령만 로그에 기록하므로 서버 측 동기화는 HSM 로그에 기록되지 않습니다.

명령을 수신하고 실행하는 HSM의 로그 스트림을 먼저 고려하십시오. 로그 스트림은 HSM ID hsm-abcde123456을 따라 명명되지만 HSM ID는 로그 이벤트에 표시되지 않습니다.

먼저 testuser CU(Crypto User)가 hsm-abcde123456 HSM에 로그인합니다.

Time: 01/24/18 00:39:23.172777, usecs:1516754363172777 Sequence No : 0x0 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_LOGIN (0xd) Session Handle : 0xc008002 Response : 0:HSM Return: SUCCESS Log type : MGMT_USER_DETAILS_LOG (2) User Name : testuser User Type : CN_CRYPTO_USER (1)

CU는 exSymKey명령을 실행하여 대칭 키를 생성합니다. hsm-abcde123456 HSM은 키 핸들이 262152인 키 핸들로 대칭 키를 생성합니다. HSM이 로그에 CN_GENERATE_KEY 이벤트를 기록합니다.

Time: 01/24/18 00:39:30.328334, usecs:1516754370328334 Sequence No : 0x1 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_GENERATE_KEY (0x17) Session Handle : 0xc008004 Response : 0:HSM Return: SUCCESS Log type : MGMT_KEY_DETAILS_LOG (1) Priv/Secret Key Handle : 262152 Public Key Handle : 0

hsm-abcde123456의 로그 스트림에 있는 다음 이벤트가 키 동기화 프로세스의 첫 단계를 기록합니다. 새 키(키 핸들 262152)가 마스킹 처리된 객체로 HSM에서 추출됩니다.

Time: 01/24/18 00:39:30.330956, usecs:1516754370330956 Sequence No : 0x2 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_EXTRACT_MASKED_OBJECT_USER (0xf0) Session Handle : 0xc008004 Response : 0:HSM Return: SUCCESS Log type : MGMT_KEY_DETAILS_LOG (1) Priv/Secret Key Handle : 262152 Public Key Handle : 0

이제 같은 클러스터에 있는 또 다른 HSM인 HSM hsm-zyxwv987654의 로그 스트림을 고려해 보십시오. 이 로그 스트림에는 testuser CU의 로그인 이벤트도 포함됩니다. 시간 값은 사용자가 hsm-abcde123456 HSM에 로그인한 직후 이 이벤트가 발생한다는 것을 보여 줍니다.

Time: 01/24/18 00:39:23.199740, usecs:1516754363199740 Sequence No : 0xd Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_LOGIN (0xd) Session Handle : 0x7004004 Response : 0:HSM Return: SUCCESS Log type : MGMT_USER_DETAILS_LOG (2) User Name : testuser User Type : CN_CRYPTO_USER (1)

이 HSM의 이 로그 스트림에는 CN_GENERATE_KEY 이벤트가 없지만 이 HSM에 대한 키 동기화를 기록하는 이벤트는 있습니다. CN_INSERT_MASKED_OBJECT_USER 이벤트는 키 262152의 수신을 마스킹 처리된 객체로 기록합니다. 이제 클러스터의 두 HSM에 모두 262152 키가 있습니다.

Time: 01/24/18 00:39:30.408950, usecs:1516754370408950 Sequence No : 0xe Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_INSERT_MASKED_OBJECT_USER (0xf1) Session Handle : 0x7004003 Response : 0:HSM Return: SUCCESS Log type : MGMT_KEY_DETAILS_LOG (1) Priv/Secret Key Handle : 262152 Public Key Handle : 0

CU 사용자가 로그아웃할 때 명령을 수신한 HSM의 로그 스트림에만 이 CN_LOGOUT 이벤트가 나타납니다.

예제: 키 내보내기

이 예제에서는 CU(Crypto User)가 HSM이 여러 개인 클러스터에서 키를 내보낼 때 기록되는 감사 로그 이벤트를 보여 줍니다.

다음 이벤트는 key_mgmt_util에 로그인하는 CU(testuser)를 기록합니다.

Time: 01/24/18 19:42:22.695884, usecs:1516822942695884 Sequence No : 0x26 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_LOGIN (0xd) Session Handle : 0x7004004 Response : 0:HSM Return: SUCCESS Log type : MGMT_USER_DETAILS_LOG (2) User Name : testuser User Type : CN_CRYPTO_USER (1)

CU는 exSymKey명령을 실행하여 256비트 7 AES 키인 키를 내보냅니다. 명령에서 HSM의 256 비트 AES 키인 6키가 래핑 키로 사용됩니다.

명령을 수신하는 HSM이 내보낼 키인 7 키의 CN_WRAP_KEY 이벤트를 기록합니다.

Time: 01/24/18 19:51:12.860123, usecs:1516823472860123 Sequence No : 0x27 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_WRAP_KEY (0x1a) Session Handle : 0x7004003 Response : 0:HSM Return: SUCCESS Log type : MGMT_KEY_DETAILS_LOG (1) Priv/Secret Key Handle : 7 Public Key Handle : 0

그런 다음 HSM이 래핑 키인 키 6에 대해 CN_NIST_AES_WRAP 이벤트를 기록합니다. 키는 래핑되고 곧장 언래핑되지만 HSM은 한 가지 이벤트만 기록합니다.

Time: 01/24/18 19:51:12.905257, usecs:1516823472905257 Sequence No : 0x28 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_NIST_AES_WRAP (0x1e) Session Handle : 0x7004003 Response : 0:HSM Return: SUCCESS Log type : MGMT_KEY_DETAILS_LOG (1) Priv/Secret Key Handle : 6 Public Key Handle : 0

exSymKey 명령은 내보낸 키를 파일에 쓰지만 HSM에서 키를 변경하지는 않습니다. 그 결과, 클러스터에 있는 다른 HSM의 로그에는 해당하는 이벤트가 없습니다.

예제: 키 가져오기

이 예제에서는 클러스터의 HSM으로 키를 가져올 때 기록되는 감사 로그 이벤트를 보여 줍니다. 이 예제에서 암호화 사용자 (CU) 는 imSymKey명령을 사용하여 AES 키를 HSM으로 가져옵니다. 6 키가 래핑 키로 명령에 사용됩니다.

명령을 수신하는 HSM이 먼저 래핑 키인 6 키의 CN_NIST_AES_WRAP 이벤트를 기록합니다.

Time: 01/24/18 19:58:23.170518, usecs:1516823903170518 Sequence No : 0x29 Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_NIST_AES_WRAP (0x1e) Session Handle : 0x7004003 Response : 0:HSM Return: SUCCESS Log type : MGMT_KEY_DETAILS_LOG (1) Priv/Secret Key Handle : 6 Public Key Handle : 0

그런 다음 HSM은 가져오기 작업을 나타내는 CN_UNWRAP_KEY 이벤트를 기록합니다. 가져온 키에 키 핸들 11이 할당됩니다.

Time: 01/24/18 19:58:23.200711, usecs:1516823903200711 Sequence No : 0x2a Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_UNWRAP_KEY (0x1b) Session Handle : 0x7004003 Response : 0:HSM Return: SUCCESS Log type : MGMT_KEY_DETAILS_LOG (1) Priv/Secret Key Handle : 11 Public Key Handle : 0

새로운 키를 생성하거나 가져오면 클라이언트 도구가 자동으로 클러스터의 다른 HSM에 새 키를 동기화하려고 시도합니다. 이 경우 HSM은 HSM에서 11 키가 마스킹 처리된 객체로 추출될 때 CN_EXTRACT_MASKED_OBJECT_USER 이벤트를 기록합니다.

Time: 01/24/18 19:58:23.203350, usecs:1516823903203350 Sequence No : 0x2b Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_EXTRACT_MASKED_OBJECT_USER (0xf0) Session Handle : 0x7004003 Response : 0:HSM Return: SUCCESS Log type : MGMT_KEY_DETAILS_LOG (1) Priv/Secret Key Handle : 11 Public Key Handle : 0

새로 가져온 키의 도착이 클러스터에 있는 다른 HSM의 로그 스트림에 반영됩니다.

예를 들어 이 이벤트는 같은 클러스터에 있는 다른 HSM의 로그 스트림에 기록되었습니다. 이 CN_INSERT_MASKED_OBJECT_USER 이벤트는 11 키를 나타내는 마스킹 처리된 객체의 도착을 기록합니다.

Time: 01/24/18 19:58:23.286793, usecs:1516823903286793 Sequence No : 0xb Reboot counter : 0x107 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_INSERT_MASKED_OBJECT_USER (0xf1) Session Handle : 0xc008004 Response : 0:HSM Return: SUCCESS Log type : MGMT_KEY_DETAILS_LOG (1) Priv/Secret Key Handle : 11 Public Key Handle : 0

예제: 키 공유 및 공유 해제

이 예제에서는 CU(Crypto User)가 다른 Crypto User와 ECC 프라이빗 키를 공유하거나 공유 해제할 때 기록되는 감사 로그 이벤트를 보여줍니다. CU는 shareKey 명령을 사용하고 키 핸들, 사용자 ID 및 값 1을 제공하여 키를 공유하고 값 0을 제공하여 키를 공유 해제합니다.

다음 예제에서는 명령을 수신하는 HSM이 공유 작업을 나타내는 CM_SHARE_OBJECT 이벤트를 기록합니다.

Time: 02/08/19 19:35:39.480168, usecs:1549654539480168 Sequence No : 0x3f Reboot counter : 0x38 Command Type(hex) : CN_MGMT_CMD (0x0) Opcode : CN_SHARE_OBJECT (0x12) Session Handle : 0x3014007 Response : 0:HSM Return: SUCCESS Log type : UNKNOWN_LOG_TYPE (5)