Como os flags de uso do GPG são definidos na listagem de detalhes da chave?

49

Quando eu listo os detalhes de uma chave, recebo uma saída assim:

$ gpg --edit-key SOMEID
pub [..] created: [..] expires: [..]   usage:SC
[..]
sub [..] created: [..] expires: [..]   usage: E

Ou mesmo usage: SCA em outra chave (a parte da chave mestra).

O que significa essa abreviação no campo de uso?

Eu posso deduzir isso:

S -> for signing
E -> for encrypting

Mas e sobre C e A ?

E tem mais?

E onde procurar coisas assim?

    
por maxschlepzig 17.02.2012 / 23:18

4 respostas

48

Ok, o manual do gpg não parece mencionar essas abreviações. Assim, é preciso olhar para a fonte.

Por exemplo, em 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'

Do código, pode-se derivar a seguinte tabela:

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Constant              Character
───────────────────────────────
PUBKEY_USAGE_SIG      S
PUBKEY_USAGE_CERT     C
PUBKEY_USAGE_ENC      E
PUBKEY_USAGE_AUTH     A
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Assim, por exemplo, usage: SCA significa que a subchave pode ser usada para assinatura, para criar um certificado e para fins de autenticação.

    
por 18.02.2012 / 10:41
12

O layout da listagem --edit-key não está documentado (não que eu possa encontrar de qualquer maneira). As abreviaturas que você menciona, no entanto, estão em algum lugar nas páginas de informações ( info gpg ).

Eu pesquisei S: e descobri que realmente queria pesquisar usage: .

Em "Opções relacionadas à chave GPG":

4.2.1 How to change the configuration

These options are used to change the configuration and are usually found in the option file.

'--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.

Então, fazer gpg -k --list-options show-usage 1A3ABKEY mostrará algo assim:

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]

Mais algumas informações são encontradas em "Uso não assistido de GPG"

Key-Usage: 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'.

Portanto, embora não seja imediatamente aparente, as informações estão lá, em algum lugar, no seu sistema. Se man não ajudar, tente man -k e / ou info .

    
por 20.09.2015 / 15:34
5

Esses sinalizadores de chave são definidos na especificação do OpenPGP

5.2.3.21. Key Flags

(N octets of flags)

This subpacket contains a list of binary flags that hold information about a key. It is a string of octets, and an implementation MUST NOT assume a fixed size. This is so it can grow over time. If a list is shorter than an implementation expects, the unstated flags are considered to be zero. The defined flags are as follows:

   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.
    
por 22.02.2015 / 05:34
2

Enterrada na lista de discussão do GnuPG ...

What do the letters to the right of the words "usage" mean?
(S,C,A,E) I can only guess |S|ign, |E|ncrypt, ....

     

(S) ign: assina alguns dados (como um arquivo)
  (C) ertify: assine uma chave (isso é chamado de certificação)
  (A) unir-se: autenticar-se em um computador (por exemplo, fazer login)
  (E) ncrypt: criptografar dados

    
por 26.07.2017 / 13:28

Tags