mac - 入力のメッセージ認証コードの計算
/usr/bin/mac -l
/usr/bin/mac [-v] -a algorithm [-k keyfile | -K key_label [-T token_spec]] [file]...
mac ユーティリティーは、指定のアルゴリズムを使用して、特定の 1 つ以上のファイルまたは stdin のメッセージ認証コード (MAC) を計算します。
複数のファイルが指定された場合、出力の各行は単一ファイルの MAC となります。
サポートしているオプションは、次のとおりです。
暗号化または復号化プロセスで使用するアルゴリズムの名前を指定します。詳細については、「使用法」の「アルゴリズム」を参照してください。注: 一般的な長さの MAC を生成するアルゴリズムはサポートされていません。
暗号化アルゴリズムのキー値を含むファイルを指定します。PKCS#11 仕様で規定されているように、各アルゴリズムには固有のキー素材要件があります。–k が指定されていない場合、mac は、getpassphrase(3C) を使用してキー素材の入力を要求します。
PKCS#11 トークン内で対称トークンキーのラベルを指定します。
システムで利用可能なアルゴリズムの一覧を表示します。この一覧は、暗号化フレームワークの構成によって変わります。キーサイズはビット単位で表示されます。
–K が指定されている場合に、デフォルトのソフトトークンオブジェクトストア以外の PKCS#11 トークンを指定します。
token_spec は次の形式になります。
token_name [:manuf_id [:serial_no]]
トークンラベルの末尾にスペースがある場合でも、このオプションではユーザーがスペースを入力する必要はありません。
トークン識別文字列はコロンで区切ります。いずれかの部分に文字としてコロン (:) を含める場合、そのコロンをバックスラッシュで (\) でエスケープする必要があります。コロン (:) がない場合、文字列全体が (最大 32 文字) がトークンラベルと見なされます。コロンが (:) 1 つだけある場合、文字列はトークンラベルと作成者となります。
詳細な情報を表示します。
サポートされているアルゴリズムは、–l オプションで表示されます。これらのアルゴリズムは、暗号化フレームワークによって提供されます。サポートされている各アルゴリズムは、もっともよく使用され、もっとも制限が少ない特定のアルゴリズムタイプの別名です。たとえば、md5_hmac は、CKM_MD5_HMAC の別名です。
これらの別名は –a オプションとともに使用され、大文字と小文字が区別されます。
–k オプションが暗号化および復号化タスクで使用されない場合、ユーザーはパスフレーズの入力を求められます。パスフレーズは、PKCS #5 で指定されている PBKDF2 アルゴリズムを使用して処理され、より安全なキーに変換されます。
次の例では、使用できるアルゴリムが一覧表示されます。
example$ mac -l Algorithm Keysize: Min Max ----------------------------------- sha1_hmac 8 512 md5_hmac 8 512 sha224_hmac 8 512 sha256_hmac 8 512 sha384_hmac 8 1024 sha512_hmac 8 1024使用例 2 メッセージ認証コードの取得
次の例では、ファイル用のメッセージ認証コードを取得します。
example$ mac -v -k mykey -a sha1_hmac /export/foo sha1_hmac (/export/foo) = 913ced311df10f1708d9848641ca8992f4718057使用例 3 トークンキー付きのメッセージ認証コードの取得
次の例では、ソフトトークンキーストア内で汎用トークンキー付きのメッセージ認証コードを取得します。汎用トークンキーは pktool(1) で生成できます。
example$ mac -v -a sha1_hmac -K my_generic_key \ -T "Sun Software PKCS#11 softtoken" /export/foo Enter pin for Sun Software PKCS#11 softtoken: sha1_hmac (/etc/foo) = c2ba5c38458c092a68940081240d22b670182968
次の終了ステータスが返されます。
正常終了。
エラーが発生しました。
属性についての詳細は、マニュアルページの attributes(7) を参照してください。
|
digest(1), pktool(1), getpassphrase(3C), libpkcs11(3LIB), attributes(7), pkcs11_softtoken(7), dd(8)