标签: opensnsl

  • 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