Provided by: tpm2-tools_2.1.0-1build1_amd64 bug

NAME

       tpm2_hmac -  performs an HMAC on the supplied data using the indicated hash algorithm. The
       caller shall provide proper authorization for use of handle.

SYNOPSIS

       tpm2_hmac[      COMMON      OPTIONS      ]      [       TCTI       OPTIONS       ]       [
       --keyHandle|--keyContext|--pwdk|--halg|--infile|--outfile|--passwdInHex| ]

       performs an HMAC on the supplied data using the indicated hash algorithm. The caller shall
       provide proper authorization for use of handle.

DESCRIPTION

       tpm2_hmac performs an HMAC on the supplied data using the indicated  hash  algorithm.  The
       caller shall provide proper authorization for use of handle.

OPTIONS

       -k ,--keyHandle
              handle for the symmetric signing key providing  the HMAC key

       -c ,--keyContext
              filename of the key context used for the  operation

       -P ,--pwdk
              the keyHandle's password, optional

       -g ,--halg
              algorithm  for the hash being computed  0x0004 TPM_ALG_SHA1   0x000B TPM_ALG_SHA256
              0x000C TPM_ALG_SHA384   0x000D TPM_ALG_SHA512   0x0012 TPM_ALG_SM3_256

       -I ,--infile
              file containning the data to be HMACed

       -o ,--outfile
              file record the HMAC result

       -X ,--passwdInHex
              passwords given by any options are hex format.

       [COMMON OPTIONS ]
              This collection of options are common to many programs and provide information that
              many users may expect.

       -h, --help
              Display a manual describing the tool and its usage.

       -v, --version
              Display version information for this tool.

       -V, --verbose
              Increase the information that the tool prints to the console during its execution.

       [TCTI OPTIONS ]
              This collection of options are used to configure the varous TCTI modules available.

       -T, --tcti
              Select  the TCTI used for communication with the next component down the TSS stack.
              In most configurations this will be the TPM but it could be a simulator  or  proxy.
              Supported TCTIs are or “device” or “socket” .

       -d, --device-file
              Specify the TPM device file for use by the device TCTI. The default is /dev/tpm0.

       -R, --socket-address
              Specify  the  domain  name  or  IP  address used by the socket TCTI. The default is
              127.0.0.1.

       -p, --socket-port
              Specify the port number used by the socket TCTI. The default is 2321.

       ENVIRONMENT: TCTI
              This collection of environment variables that may be used to configure  the  varous
              TCTI  modules  available.   The  values  passed  through  these  variables  can  be
              overridden on a per-command basis using the available command line options.

       TPM2TOOLS_TCTI_NAME
              Select the TCTI used for communication with the next component down the TSS  stack.
              In  most  configurations this will be the TPM but it could be a simulator or proxy.
              See 'OPTIONS' section for the names of supported TCTIs.

       TPM2TOOLS_DEVICE_FILE
              Specify the TPM device file for use by the device TCTI.

       TPM2TOOLS_SOCKET_ADDRESS
              Specify the domain name or IP address used by the socket TCTI.

       TPM2TOOLS_SOCKET_PORT
              Specify the port number used by the socket TCTI.

EXAMPLES

       tpm2_hmac

              tpm2_hmac  -k 0x81010002 -P abc123 -g 0x004 -I <inputFilename> -o <hmacFilename>
              tpm2_hmac  -c key.context -P abc123 -g 0x004 -I <inputFilename> -o <hmacFilename>
              tpm2_hmac  -k 0x81010002 -P 123abc -X -g 0x004 -I <inputFilename> -o <hmacFilename>