Red Hat Training

A Red Hat training course is available for RHEL 8

9.3. 신뢰할 수 있는 키로 작업

keyctl 유틸리티를 사용하여 신뢰할 수 있는 키를 생성, 내보내기, 로드 및 업데이트할 수 있습니다.

사전 요구 사항

참고

Red Hat Enterprise Linux 8은 TPM 1.2 및 TPM 2.0을 모두 지원합니다. TPM 1.2를 사용하는 경우 1단계를 건너뜁니다.

절차

  1. 다음 유틸리티 중 하나를 사용하여 영구 처리(예: 81000001 )가 있는 SHA-256 기본 스토리지 키로 2048비트 RSA 키를 생성합니다.

    1. tss2 패키지를 사용하여 다음을 수행합니다.

      # TPM_DEVICE=/dev/tpm0 tsscreateprimary -hi o -st
      Handle 80000000
      # TPM_DEVICE=/dev/tpm0 tssevictcontrol -hi o -ho 80000000 -hp 81000001
    2. tpm2-tools 패키지를 사용하여 다음을 수행합니다.

      # tpm2_createprimary --key-algorithm=rsa2048 --key-context=key.ctxt
      name-alg:
        value: sha256
        raw: 0xb
      …
      sym-keybits: 128
      rsa: xxxxxx…
      
      # tpm2_evictcontrol -c key.ctxt 0x81000001
      persistentHandle: 0x81000001
      action: persisted
  2. 신뢰할 수 있는 키를 생성합니다.

    1. keyctl 구문으로 TPM 2.0을 사용하면 trusted < NAME > "new < KEY_LENGTH > keyhandle= <PERSISTENT-HANDLE > [options]" < KEYRING > . 이 예에서 영구 처리는 81000001 입니다.

      # keyctl add trusted kmk "new 32 keyhandle=0x81000001" @u
      642500861

      이 명령은 32 바이트(256비트) 길이로 kmk 라는 신뢰할 수 있는 키를 생성하여 사용자 인증 키(@u)에 배치합니다. 키는 32~128바이트(256비트에서 1024비트)의 길이를 가질 수 있습니다.

    2. keyctl 구문으로 TPM 1.2를 사용하면 신뢰할 수 있는 < NAME > "new <KEY_LENGTH>" <KEYRING > :

      # keyctl add trusted kmk "new 32" @u
  3. 커널 인증 키의 현재 구조를 나열합니다.

    # keyctl show
    Session Keyring
           -3 --alswrv    500   500  keyring: ses 97833714 --alswrv 500 -1 \ keyring: uid.1000 642500861 --alswrv 500 500 \ trusted: kmk
  4. 신뢰할 수 있는 키의 일련 번호를 사용하여 사용자 공간 Blob으로 키를 내보냅니다.

    # keyctl pipe 642500861 > kmk.blob

    명령은 pipe 하위 명령과 kmk 의 일련 번호를 사용합니다.

  5. 사용자 공간 Blob에서 신뢰할 수 있는 키를 로드합니다.

    # keyctl add trusted kmk "load `cat kmk.blob`" @u
    268728824
  6. TPM-sealed 신뢰할 수 있는 키(kmk)를 사용하는 안전한 암호화된 키를 만듭니다. 다음 구문을 따르십시오. keyctl add encrypted <NAME> "new [FORMAT] <KEY_TYPE>:<PRI Cryostat_KEY_NAME> <KEY_LENGTH>" <KEYRING > :

    # keyctl add encrypted encr-key "new trusted:kmk 32" @u
    159771175