openssl-mac

openssl-mac

执行Message Authentication Code操作

概述

openssl mac [-help] [-cipher] [-digest] [-macopt] [-in filename] [-out filename] [-binary] [-provider name] [-provider-path path] [-propquery propq] mac_name

描述

计算输入文件的MAC

选项

  • -help

    Print a usage message.

  • -in filename

    读取输入的文件名,用于于计算MAC,或者默认为标准输入。如果文件名是’-‘,则使用标准输入。文件和标准输入应该是二进制格式。

  • -out filename

    用于输出的文件名, 或使用默认的standard output.

  • -binary

    输出的MAC是二进制格式。如果没有指定,则使用十六进制文本格式。

  • -cipher name

    为CMAC和GMAC指定密码算法。对于CMAC,它应该是一个CBC模式密码,例如AES-128-CBC。对于GMAC,它应该是一个GCM模式密码,例如AES-128-GCM。

  • -digest name

    为HMAC指定摘要算法。默认为SHA256。完整的列表可以使用命令openssl list -digest-algorithms查看。

  • -macopt nm:v

    传递选项给MAC算法。EVP_MAC实现文档中可以找到控制的全面列表。EVP_MAC_CTX_get_params()使用的常见参数名称有:

    • key:string

      指定字母数字字符串作为MAC key(仅使用可打印字符)。字符串长度必须符合MAC算法的任何限制。必须为每个MAC算法指定一个密钥。

    • hexkey:string

      使用16进制格式指定MAC key(每个字节两个十六进制数字)。密钥长度必须符合MAC算法的任何限制。必须为每个MAC算法指定一个密钥。

    • iv:string

      指定一个alphanumeric字符串作为GMAC的IV(仅包含可打印字符)。字符串长度必须符合MAC算法的任何限制。

    • hexiv:string

      用16进制形式指定GMAC的IV(每个字节两个十六进制数字)。

    • size:int

      为KMAC128或KMAC256指定输出长度。默认大小分别为32或64字节。

    • custom:string

      为KMAC128或KMAC256指定一个自定义字符串。默认值为空字符串””。

    • digest:string

      这个选项与-digest选项等效。

    • cipher:string

      这个选项与-cipher选项等效。

  • -provider name

  • -provider-path path

  • -propquery propq

    See “Provider Options” in openssl(1), provider(7), and property(7).

  • mac_name

    指定要使用的支持的MAC算法的名称。要查看支持的MAC列表,请使用命令openssl list -mac-algorithms。

注意

支持的MAC算法取决于构建OpenSSL时使用的选项。使用openssl list -mac-algorithms列出它们。
cipher与digest算法的组合通常是固定的

Views: 3

评论

发表回复