キーの詳細をリストすると、次のような出力が得られます。
$ gpg --edit-key SOMEID
pub [..] created: [..] expires: [..] usage:SC
[..]
sub [..] created: [..] expires: [..] usage: E
あるいは usage: SCA
別の鍵(マスター鍵部分)。
使用法フィールドのこれらの略語はどういう意味ですか?
私はそれを導き出すことができます:
S -> for signing
E -> for encrypting
しかし、C
とA
はどうですか?
そしてもっとありますか?
そして、このようなものをどこに見せるのですか?
わかりました、gpgマニュアルではこれらの略語について言及していないようです。したがって、ソースを確認する必要があります。
たとえば、Debian/Ubuntuの場合:
$ apt-get source gnupg2
$ cd gnupg2-2.0.17
$ cscope -bR
$ grep 'usage: %' . -r --exclude '*po*'
$ vim g10/keyedit.c
jump to usage: %
jump to definition of `usagestr_from_pk`
コードから次の表を導出できます。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 定数文字 ── ───────────────────────────── PUBKEY_USAGE_SIG S PUBKEY_USAGE_CERT C PUBKEY_USAGE_ENC E PUBKEY_USAGE_AUTH A ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
したがって、たとえば、usage: SCA
は、サブキーを署名、証明書の作成、認証の目的で使用できることを意味します。
--edit-key
リストのレイアウトは文書化されていません(とにかく見つけることができなかったわけではありません)。ただし、あなたが言及する略語は、情報ページ(info gpg
)のどこかにあります。
S:
を検索したところ、usage:
を実際に検索したいことがわかりました。
「GPGキー関連オプション」:
4.2.1構成を変更する方法
これらのオプションは、構成を変更するために使用され、通常はオプションファイルにあります。
'--list-options parameters' show-usage Show usage information for keys and subkeys in the standard key listing. This is a list of letters indicating the allowed usage for a key ('E'=encryption, 'S'=signing, 'C'=certification, 'A'=authentication). Defaults to no.
したがって、gpg -k --list-options show-usage 1A3ABKEY
を実行すると、次のように表示されます。
pub rsa4096/1A3ABKEY 2015-01-25 [SC]
uid [ultimate] Some Key
sub rsa4096/4B907KEY 2015-09-19 [S]
sub rsa4096/F9A41KET 2015-09-19 [E]
さらに詳しい情報は、「GPGの無人使用」にあります。
キー使用法:USAGE-LIST
Space or comma delimited list of key usages. Allowed values are 'encrypt', 'sign', and 'auth'. This is used to generate the key flags. Please make sure that the algorithm is capable of this usage. Note that OpenPGP requires that all primary keys are capable of certification, so no matter what usage is given here, the 'cert' flag will be on. If no 'Key-Usage' is specified and the 'Key-Type' is not 'default', all allowed usages for that particular algorithm are used; if it is not given but 'default' is used the usage will be 'sign'.
したがって、すぐにはわかりませんが、情報はシステムのどこかにあります。 man
が役に立たない場合は、man -k
やinfo
を試してください。
これらの主要なフラグは OpenPGP仕様 で定義されています
5.2.3.21。主なフラグ
(フラグのNオクテット)
このサブパケットには、キーに関する情報を保持するバイナリフラグのリストが含まれています。これはオクテットの文字列であり、実装は固定サイズを想定してはなりません。これは、時間の経過とともに大きくなる可能性があるためです。リストが実装で期待されているよりも短い場合、明記されていないフラグはゼロと見なされます。定義されているフラグは次のとおりです。
First octet: 0x01 - This key may be used to certify other keys. 0x02 - This key may be used to sign data. 0x04 - This key may be used to encrypt communications. 0x08 - This key may be used to encrypt storage. 0x10 - The private component of this key may have been split by a secret-sharing mechanism. 0x20 - This key may be used for authentication. 0x80 - The private component of this key may be in the possession of more than one person.
別の情報源は [〜#〜] details [〜#〜]GnuPGディストリビューション のファイルです。
セクション "フィールド12-主要機能" 状態
定義されている機能は次のとおりです。 e 暗号化 s 署名 c 認証 a 認証 ? 不明な機能 キーは、それらを任意の順序で組み合わせたものにすることができます。 これらの文字に加えて、主キーには大文字の バージョンの文字があり、 キー全体の使用可能な機能を示します。潜在的な文字「D」は、無効化されたキー。
GnuPGメーリングリスト ...
「使用法」の右側の文字はどういう意味ですか?
(S、C、A、E)推測できるのは| S | ign、| E | ncrypt、...だけです。(S)ign:一部のデータ(ファイルなど)に署名
(C)ertify:鍵に署名します(これは証明書と呼ばれます)
(A)uthenticate:コンピュータへの認証(たとえば、ログイン)
(E)ncrypt:データを暗号化