ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
マニュアルページセクション 1: ユーザーコマンド Oracle Solaris 11.1 Information Library (日本語) |
- バイナリへの署名
/usr/bin/elfsign sign [-v] -k private_key -c certificate_file -e elf_object [-F format] [file]...
/usr/bin/elfsign sign [-v] -c certificate_file -e elf_object -T token_label [-P pin_file] [-F format] [file]...
/usr/bin/elfsign verify [-c certificate_file] [-v] -e elf_object [file]...
/usr/bin/elfsign request -r certificate_request_file {-k private_key | -T token_label}
/usr/bin/elfsign list -f field -c certificate_file
/usr/bin/elfsign list -f field -e elf_object
1 つの証明書ファイルまたは署名された elf オブジェクトからの標準出力情報を一覧表示します。選択されたフィールドは 1 行に表示されます。指定されたフィールドが指定されたファイルに適用されない場合、コマンドは標準出力なしで終了します。このサブコマンドのこの出力は、スクリプトやほかのコマンドで使用されることを目的にしています。
秘密鍵と PKCS#10 証明書要求を生成します。Solaris 暗号化フレームワークで使用される PKCS#10 証明書要求。秘密鍵がトークンデバイスで作成される場合、elfsign は、そのトークンデバイスを更新するために必要な PIN の入力を求めます。証明書を取得するには、電子メールアドレス solaris-crypto-req_ww@oracle.com に PKCS#10 証明書要求を送信するべきです。
elfsign のユーザーは、Solaris 暗号化フレームワークで使用されるバイナリに署名する前に、まず証明書要求を生成して証明書を取得する必要があります。
指定された秘密鍵と証明書ファイルを使用して、elf オブジェクトに署名します。
既存の署名されたオブジェクトを検証します。-c が指定されていない場合は、指定された証明書を使用するか、または /etc/crypto/certs で適切な証明書を検索します。
サポートしているオプションは、次のとおりです。
PEM/PKCS#7 または ASN.1 BER 形式の X.509 証明書へのパスを指定します。
署名または検証されるオブジェクトへのパスを指定します。
-e オプションは、複数のオブジェクトを署名または検証するために複数回指定できます。
sign サブコマンドの場合は、署名の形式を指定します。有効な形式オプションは次のとおりです
デフォルト形式の Solaris 10 および更新。rsa_md5_sha1 形式は「廃止」です。
このリリースのデフォルト形式。
rsa_md5_sha1 以外の形式には、署名が適用された時間を示す、署名による情報タイムスタンプが含まれています。このタイムスタンプは暗号的に安全ではなく、また検証の一部としても使用されません。
list サブコマンドの場合は、出力にどのフィールドを表示するかを指定します。
証明書ファイルの有効なフィールド指定子は次のとおりです。
サブジェクト DN (識別名)
発行者 DN
elf オブジェクトの有効なフィールド指定子は次のとおりです。
署名の形式
オブジェクトを署名するために使用される証明書のサブジェクト DN
署名が適用された時間 (ロケールのデフォルト形式)
PKCS#11 トークンを使用していないときの秘密鍵ファイルの場所を指定します。このファイルは、Solaris 固有の形式の RSA 秘密鍵ファイルです。request サブコマンドとともに使用された場合、これは新しく生成された鍵の出力ファイルです。
-k オプションと -T オプションの両方を指定すると、エラーになります。
トークンデバイスにアクセスするための PIN を保持しているファイルを指定します。pin_file で PIN が指定されていない場合、elfsign は PIN の入力を求めます。
-T オプションを指定せずに -P オプションを指定すると、エラーになります。
PKCS#10 形式の証明書要求ファイルへのパスを指定します。
pktool によって提供された、秘密鍵を保持している PCKS#11 トークンデバイスのラベルを指定します。
-T オプションと -k オプションの両方を指定すると、エラーになります。
より詳細な情報を要求します。追加の出力には署名者と、署名形式に含まれている場合は、オブジェクトが署名された時間が含まれます。これは、安定した解析可能な出力ではありません。
次のオペランドを指定できます。
署名または検証される 1 つ以上の elf オブジェクト。-e オプションを使用して、またはほかのすべてのオプションのあとに、少なくとも 1 つの elf オブジェクトを指定する必要があります。
例 1 ファイル内の鍵/証明書を使用した ELF オブジェクトの署名
example$ elfsign sign -k myprivatekey -c mycert -e lib/libmylib.so.1
例 2 elf オブジェクトの署名の検証
example$ elfsign verify -c mycert -e lib/libmylib.so.1 elfsign: verification of lib/libmylib.so.1 passed
例 3 証明書要求の生成
example$ elfsign request -k mykey -r req.pkcs10 Enter Company Name / Stock Symbol or some other globally unique identifier. This will be the prefix of the Certificate DN: SUNW
例 4 オブジェクトに関する情報の判定
example$ elfsign list -f format -e lib/libmylib.so.1 rsa_md5_sha1 example$ elfsign list -f signer -e lib/libmylib.so.1 CN=VENDOR, OU=Software Development, O=Vendor Inc.
次の終了ステータスが返されます。
|
-c フラグが使用されていない場合に verify サブコマンドで検索されるディレクトリ。
属性についての詳細は、マニュアルページの attributes(5) を参照してください。
|
elfsign コマンドおよびサブコマンドは「確実」です。アプリケーションは elfsign の出力形式に依存すべきではありませんが、list サブコマンドの出力形式は「確実」です。
date(1), pktool(1), cryptoadm(1M), libpkcs11(3LIB), attributes(5)